]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/ocaml/cic_disambiguation/logic_notation.ml
- added some type shorthands
[helm.git] / helm / ocaml / cic_disambiguation / logic_notation.ml
index a19361b32e7264717b96e5f5fc185353d50fff99..073e2cdf34d1dad8b99eabd82adfc2f577945102 100644 (file)
@@ -47,6 +47,10 @@ EXTEND
 END
 
 let _ =
+    (* TODO cut-and-pasted code: here, in arit_notation.ml and
+     * disambiguateChoices.ml *)
+  let const s = Cic.Const (s, []) in
+  let mutind s = Cic.MutInd (s, 0, []) in
   DisambiguateChoices.add_symbol_choice "eq"
     ("leibnitz's equality",
      (fun interp _ args ->
@@ -57,6 +61,13 @@ let _ =
        in
        Cic.Appl [
          Cic.MutInd (HelmLibraryObjects.Logic.eq_URI, 0, []);
-           Cic.Implicit; t1; t2
-       ]))
+           Cic.Implicit (Some `Type); t1; t2
+      ]));
+  DisambiguateChoices.add_binary_op "and" "logical and"
+    (mutind HelmLibraryObjects.Logic.and_URI);
+  DisambiguateChoices.add_binary_op "or" "logical or"
+    (mutind HelmLibraryObjects.Logic.or_URI);
+  DisambiguateChoices.add_unary_op "not" "logical not"
+    (const HelmLibraryObjects.Logic.not_URI);
 
+(* vim:set encoding=utf8: *)