-\r
-(* TEMPORARY TESTING FACILITY BELOW HERE *)\r
-\r
-let acaso l =\r
- let n = Random.int (List.length l) in\r
- List.nth l n\r
-;;\r
-\r
-let acaso2 l1 l2 =\r
- let n1 = List.length l1 in\r
- let n = Random.int (n1 + List.length l2) in\r
- if n >= n1 then List.nth l2 (n - n1) else List.nth l1 n\r
-;;\r
-\r
-let gen n vars =\r
- let rec aux n inerts lams =\r
- if n = 0 then List.hd inerts, List.hd (Util.sort_uniq (List.tl inerts))\r
- else let inerts, lams = if Random.int 2 = 0\r
- then inerts, ("(" ^ acaso vars ^ ". " ^ acaso2 inerts lams ^ ")") :: lams\r
- else ("(" ^ acaso inerts ^ " " ^ acaso2 inerts lams^ ")") :: inerts, lams\r
- in aux (n-1) inerts lams\r
- in aux (2*n) vars []\r
-;;\r
-\r
-let f () =\r
- let complex = 200 in\r
- let vars = ["x"; "y"; "z"; "v" ; "w"; "a"; "b"; "c"] in\r
- gen complex vars\r
-\r
- let rec repeat f n =\r
- prerr_endline "\n########################### NEW TEST ###########################";\r
- f () ;\r
- if n > 0 then repeat f (n-1)\r
- ;;\r
-\r
-\r
-let main () =\r
- Random.self_init ();\r
- repeat (fun _ ->\r
- let div, conv = f () in\r
- auto (problem_of div conv)\r
- ) 100;\r
-;;\r
-\r
-(* main ();; *)\r