[add quickcheck test about lgg/match compatibility
Helmut Grohne <grohne@cs.uni-bonn.de>**20150518132934
 Ignore-this: 98796c75cd6caaa43a40bea8143db85e
] hunk ./src/Tests.hs 269
+lggMatches :: (AUnify t, Pretty t, Term t, Unify t) => t -> t -> t -> QC.Property
+lggMatches _witness t1 t2 =
+    case  runContext (fmap Just (lgg [t1, t2])
+          `safeCatchErrorC` const (return Nothing)) of
+        Nothing  -> QC.discard
+        Just t12 -> runContext ((do
+                s1 <- match t1 t12
+                let t1' = apply s1 t12
+                s2 <- match t2 t12
+                let t2' = apply s2 t12
+                return (QC.property (t1' `equal` t1 && t2' `equal` t2)))
+            `safeCatchErrorC` (error . ("match of lgg failed: "++)))
+
hunk ./src/Tests.hs 290
-    testProperty "MatchingTExps: apply (match a b) b == a" (uncurry (matchApplyUnforgiving texpWitness) . getMatchingTExps)
+    testProperty "MatchingTExps: apply (match a b) b == a" (uncurry (matchApplyUnforgiving texpWitness) . getMatchingTExps),
+    testProperty "Types: lgg matches" (lggMatches typeWitness),
+    testProperty "Exprs: lgg matches" (uncurry (lggMatches undefined) . getUniformTExps)