src/HOL/Tools/Quickcheck/PNF_Narrowing_Engine.hs
changeset 47090 6b53d954255b
parent 46758 4106258260b3
child 49193 0067d83414c8
equal deleted inserted replaced
47088:eba1cea4eef6 47090:6b53d954255b
   299 checkOf :: Generated_Code.Property -> [Generated_Code.Narrowing_term] -> Bool
   299 checkOf :: Generated_Code.Property -> [Generated_Code.Narrowing_term] -> Bool
   300 checkOf (Generated_Code.Property b) = (\[] -> b)
   300 checkOf (Generated_Code.Property b) = (\[] -> b)
   301 checkOf (Generated_Code.Universal _ f _) = (\(t : ts) -> checkOf (f t) ts)
   301 checkOf (Generated_Code.Universal _ f _) = (\(t : ts) -> checkOf (f t) ts)
   302 checkOf (Generated_Code.Existential _ f _) = (\(t : ts) -> checkOf (f t) ts)
   302 checkOf (Generated_Code.Existential _ f _) = (\(t : ts) -> checkOf (f t) ts)
   303 
   303 
   304 dummy = Generated_Code.Var [] (Generated_Code.SumOfProd [[]])
   304 dummy = Generated_Code.Narrowing_variable [] (Generated_Code.Narrowing_sum_of_products [[]])
   305 
   305 
   306 treeOf :: Int -> Generated_Code.Property -> QuantTree
   306 treeOf :: Int -> Generated_Code.Property -> QuantTree
   307 treeOf n (Generated_Code.Property _) = Node uneval
   307 treeOf n (Generated_Code.Property _) = Node uneval
   308 treeOf n (Generated_Code.Universal ty f _)  = VarNode UniversalQ uneval [n] ty (treeOf (n + 1) (f dummy)) 
   308 treeOf n (Generated_Code.Universal ty f _)  = VarNode UniversalQ uneval [n] ty (treeOf (n + 1) (f dummy)) 
   309 treeOf n (Generated_Code.Existential ty f _) = VarNode ExistentialQ uneval [n] ty (treeOf (n + 1) (f dummy))
   309 treeOf n (Generated_Code.Existential ty f _) = VarNode ExistentialQ uneval [n] ty (treeOf (n + 1) (f dummy))