equal
deleted
inserted
replaced
34 |
34 |
35 |
35 |
36 (* build simpset and conversion from program *) |
36 (* build simpset and conversion from program *) |
37 |
37 |
38 fun add_stmt (Code_Thingol.Fun (_, ((_, eqs), some_cong))) ss = |
38 fun add_stmt (Code_Thingol.Fun (_, ((_, eqs), some_cong))) ss = |
39 ss addsimps (map_filter (fst o snd)) eqs addcongs (the_list some_cong) |
39 ss addsimps (map_filter (fst o snd)) eqs |
|
40 |> fold Simplifier.add_cong (the_list some_cong) |
40 | add_stmt (Code_Thingol.Classinst (_, (_, (classparam_instances, _)))) ss = |
41 | add_stmt (Code_Thingol.Classinst (_, (_, (classparam_instances, _)))) ss = |
41 ss addsimps (map (fst o snd) classparam_instances) |
42 ss addsimps (map (fst o snd) classparam_instances) |
42 | add_stmt _ ss = ss; |
43 | add_stmt _ ss = ss; |
43 |
44 |
44 val add_program = Graph.fold (add_stmt o fst o snd); |
45 val add_program = Graph.fold (add_stmt o fst o snd); |