]> matita.cs.unibo.it Git - helm.git/commitdiff
added \neqt macro
authorStefano Zacchiroli <zack@upsilon.cc>
Fri, 5 Sep 2003 16:22:09 +0000 (16:22 +0000)
committerStefano Zacchiroli <zack@upsilon.cc>
Fri, 5 Sep 2003 16:22:09 +0000 (16:22 +0000)
helm/gTopLevel/dictionary-cic.xml
helm/ocaml/tex_cic_textual_parser/texCicTextualLexer.mll
helm/ocaml/tex_cic_textual_parser/texCicTextualParser.mly

index 9b5441679b600252919d15bf561408ab957f6837..1d63dac83f7ac09b86a6c80f7b63104220689137 100644 (file)
@@ -35,5 +35,6 @@
   <entry name="Type" class="i" val="Type"/>
 
   <entry name="eqt"  class="o" val="="/>
+  <entry name="neqt" class="o" val="&#x2260;"/>
 
 </dictionary>
index 06bbab076ec8c3b501d30dfa3e49d196a29b6c82..f6eda1ac8f8f26cd4a53a16e7c187ead58769e29 100644 (file)
@@ -114,6 +114,7 @@ rule token =
   | "\\pi"      { PROD }
   | "\\forall"  { PROD }
   | "\\eqt"     { EQT }
+  | "\\neqt"    { NEQT }
   | ':'         { COLON }
   | '.'         { DOT }
   | "\\to"      { ARROW }
index 709e23f18a65dd6207426d56068065c03701accf..500565823d20a328166fd06dda7e2222d4860777 100644 (file)
 %token LETIN FIX COFIX SEMICOLON LCURLY RCURLY CASE ARROW LBRACKET RBRACKET EOF
 %token DOLLAR
 %token RPLUS RMINUS RTIMES RDIV
-%token PLUS MINUS TIMES EQT EQ
+%token PLUS MINUS TIMES EQT EQ NEQT
 %right ARROW
-%nonassoc EQ EQT
+%nonassoc EQ EQT NEQT
 %left PLUS MINUS RPLUS RMINUS
 %left TIMES RTIMES RDIV
 %start main
@@ -323,6 +323,22 @@ expr2:
           (mk_expr2 interp)
          ]
    }
+ | expr2 NEQT expr2
+   { let dom1,mk_expr1 = $1 in
+     let dom2,mk_expr2 = $3 in
+     let dom3,mk_expr3 = mk_implicit () in
+      let dom = union dom1 (union dom2 dom3) in
+       dom, function interp ->
+        Cic.Appl [
+         Cic.Const (UriManager.uri_of_string "cic:/Coq/Init/Logic/not.con",[]);
+         Cic.Appl
+          [Cic.MutInd
+            (UriManager.uri_of_string "cic:/Coq/Init/Logic_Type/eqT.ind",0,[]) ;
+           (mk_expr3 interp) ;
+           (mk_expr1 interp) ;
+           (mk_expr2 interp)
+          ]]
+   }
  | expr2 EQ expr2
    { let dom1,mk_expr1 = $1 in
      let dom2,mk_expr2 = $3 in