X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Focaml%2Fmathql_interpreter%2Fselect.ml;h=c25ea26254fb9efaa45709efb7818d62a1bf5d71;hb=69ecdb3f3ec94440f1736b5e0247f2ced2e5b2c6;hp=4b2c264027b69651637bc2fb92b1c89cf20d8dd4;hpb=7f510b2df638258669d6539861a3f06ed5fab773;p=helm.git diff --git a/helm/ocaml/mathql_interpreter/select.ml b/helm/ocaml/mathql_interpreter/select.ml index 4b2c26402..c25ea2625 100644 --- a/helm/ocaml/mathql_interpreter/select.ml +++ b/helm/ocaml/mathql_interpreter/select.ml @@ -20,14 +20,14 @@ * MA 02111-1307, USA. * * For details, see the HELM World-Wide-Web page, - * http://cs.unibo.it/helm/. + * http://www.cs.unibo.it/helm/. *) (* * implementazione del comando SELECT *) -open Mathql;; +open MathQL;; open Func;; open Utility;; @@ -48,10 +48,10 @@ let stringeval env = | MQFunc (f, rvar) -> let {S.uri = uri} = List.assoc rvar env in apply_func f uri - | MQRVar rvar -> + | MQStringRVar rvar -> let {S.uri = uri} = List.assoc rvar env in uri - | MQSVar svar -> + | MQStringSVar svar -> let (_,{S.attributes = attributes}) = List.hd env in List.assoc svar attributes | MQMConclusion -> @@ -92,7 +92,12 @@ let rec is_good env = in let ul1 = set_of_result (None,!execute env q1) in let ul2 = set_of_result (None,!execute env q2) in -prerr_endline ("MQSETEQUAL(" ^ string_of_int (List.length (!execute env q1)) ^ ">" ^ string_of_int (List.length ul1) ^ "," ^ string_of_int (List.length (!execute env q2)) ^ ">" ^ string_of_int (List.length ul2) ^ ")") ; flush stderr ; + print_endline ("MQSETEQUAL(" ^ + string_of_int (List.length (!execute env q1)) ^ ">" ^ + string_of_int (List.length ul1) ^ "," ^ + string_of_int (List.length (!execute env q2)) ^ ">" ^ + string_of_int (List.length ul2) ^ ")") ; + flush stdout ; (try List.fold_left2 (fun b uri1 uri2 -> b && uri1=uri2) true ul1 ul2 with @@ -110,7 +115,12 @@ prerr_endline ("MQSETEQUAL(" ^ string_of_int (List.length (!execute env q1)) ^ " in let ul1 = set_of_result (None,!execute env q1) in let ul2 = set_of_result (None,!execute env q2) in -prerr_endline ("MQSUBSET(" ^ string_of_int (List.length (!execute env q1)) ^ ">" ^ string_of_int (List.length ul1) ^ "," ^ string_of_int (List.length (!execute env q2)) ^ ">" ^ string_of_int (List.length ul2) ^ ")") ; flush stderr ; + print_endline ("MQSUBSET(" ^ + string_of_int (List.length (!execute env q1)) ^ ">" ^ + string_of_int (List.length ul1) ^ "," ^ + string_of_int (List.length (!execute env q2)) ^ ">" ^ + string_of_int (List.length ul2) ^ ")") ; + flush stdout ; let rec is_subset s1 s2 = match s1,s2 with [],_ -> true