Advertisement
Guest User

Untitled

a guest
Mar 11th, 2019
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
OCaml 0.33 KB | None | 0 0
  1. let simplify eq = match eq with
  2. | {f = Implication(x1, y1); g = Implication(x2, y2)} -> {f = x1; g = x2}::[{f = y1; g = y2}]
  3. | {f = Atomic(x); g = Atomic(y)} -> if (x = y) then [] else [eq]
  4. | {f = Implication(x, y); g = Atomic(z)} -> [{f = eq.g; g = eq.f}]
  5. | _ -> [eq]
  6. ;;
  7.  
  8. let solve_impl eqs = List.flatten (List.map simplify eqs);;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement