X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=ocaml%2Fproblems.ml;h=9ff47787f995e34bf7222d6d495dc7c1ba7a9da9;hb=065c617277eb43a75b5a38936700da4e91bd889c;hp=0678a13e697df9a78fc50bd9bb65ce96ed3d08e1;hpb=1398932771b9914e73cbef512195305ae60af8a5;p=fireball-separation.git diff --git a/ocaml/problems.ml b/ocaml/problems.ml index 0678a13..9ff4778 100644 --- a/ocaml/problems.ml +++ b/ocaml/problems.ml @@ -17,25 +17,15 @@ open Util;; *) -let assert_separable x = - match solve x with - | `Separable _ -> () - | `Unseparable s -> - failwith ("assert_separable: unseparable because: " ^ s ^ ".") -;; - -let assert_unseparable x = - match solve x with - | `Unseparable _ -> () - | `Separable _ -> - failwith ("assert_unseparable: separable.") -;; - +(* assert_depends solves the problem, and checks if the result was expected *) let assert_depends x = - let c = String.sub (Lambda4.label_of_problem x) 0 1 in - if c = "!" then assert_separable x - else if c = "?" then assert_unseparable x - else (solve x; ()) + let c = String.sub (label_of_problem x) 0 1 in + match solve x with + | `Unseparable s when c = "!" -> + failwith ("assert_depends: unseparable because: " ^ s ^ ".") + | `Separable _ when c = "?" -> + failwith ("assert_depends: separable.") + | _ -> () ;; (* TODO *) @@ -44,6 +34,6 @@ let assert_depends x = if Array.length Sys.argv = 1 then failwith "no command line args. Please use e.g. ./a.out problems/*" else Array.iteri (fun i filename -> if i > 0 then - List.iter (assert_depends ++ Lambda4.tmp) (Parser.from_file filename) + List.iter (assert_depends ++ problem_of) (Parser.from_file filename) ) Sys.argv ;;