X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=matita%2Fmatita%2Flib%2Fbasics%2Fcore_notation.ma;h=54bfd22d512e7917f7102f9c5f7ee165f2695e0c;hb=dbc57c92512c04b3fd88f8289bb8dbe99b2f90e0;hp=904adcd52f2fff140dd65eadb6e0945a219c4237;hpb=eaaea3c18083de3e442e939768ff450d3b093911;p=helm.git diff --git a/matita/matita/lib/basics/core_notation.ma b/matita/matita/lib/basics/core_notation.ma index 904adcd52..54bfd22d5 100644 --- a/matita/matita/lib/basics/core_notation.ma +++ b/matita/matita/lib/basics/core_notation.ma @@ -27,6 +27,14 @@ notation > "\exists list1 ident x sep , opt (: T). term 19 Px" @{ ${ fold right @{$Px} rec acc @{'exists (λ${ident x}.$acc)} } } }. +notation > "hvbox(∃∃ ident x0 break . term 19 P0 break & term 19 P1)" + non associative with precedence 20 + for @{ 'exists2 (λ${ident x0}.$P0) (λ${ident x0}.$P1) }. + +notation < "hvbox(∃∃ ident x0 break . term 19 P0 break & term 19 P1)" + non associative with precedence 20 + for @{ 'exists2 (λ${ident x0}:$T0.$P0) (λ${ident x0}:$T0.$P1) }. + (* sigma ********************************************************************) notation < "hvbox(\Sigma ident i : ty break . p)" @@ -101,10 +109,7 @@ notation < "hvbox(term 46 n break ≅ \sub p term 46 m)" non associative with precedence 45 for @{ 'congruent $n $m $p }. -(* other notations **********************************************************) - -notation "hvbox(\langle term 19 a, break term 19 b\rangle)" -with precedence 90 for @{ 'pair $a $b}. +(* pairs, projections *******************************************************) notation "hvbox(x break \times y)" with precedence 70 for @{ 'product $x $y}. @@ -118,6 +123,8 @@ notation < "\snd \nbsp term 90 x \nbsp term 90 y" with precedence 69 for @{'pi2b notation > "\fst" with precedence 90 for @{'pi1}. notation > "\snd" with precedence 90 for @{'pi2}. +(* implication **************************************************************) + notation "hvbox(a break \to b)" right associative with precedence 20 for @{ \forall $_:$a.$b }. @@ -126,6 +133,8 @@ notation < "hvbox(a break \to b)" right associative with precedence 20 for @{ \Pi $_:$a.$b }. +(* orders *******************************************************************) + notation "hvbox(a break \leq b)" non associative with precedence 45 for @{ 'leq $a $b }. @@ -142,6 +151,8 @@ notation "hvbox(a break \gt b)" non associative with precedence 45 for @{ 'gt $a $b }. +(* negated equality *********************************************************) + notation > "hvbox(a break \neq b)" non associative with precedence 45 for @{ 'neq ? $a $b }. @@ -150,6 +161,8 @@ notation < "hvbox(a break maction (\neq) (\neq\sub t) b)" non associative with precedence 45 for @{ 'neq $t $a $b }. +(* negated orders ***********************************************************) + notation "hvbox(a break \nleq b)" non associative with precedence 45 for @{ 'nleq $a $b }. @@ -166,6 +179,8 @@ notation "hvbox(a break \ngtr b)" non associative with precedence 45 for @{ 'ngtr $a $b }. +(* divides, negated divides *************************************************) + notation "hvbox(a break \divides b)" non associative with precedence 45 for @{ 'divides $a $b }. @@ -174,6 +189,8 @@ notation "hvbox(a break \ndivides b)" non associative with precedence 45 for @{ 'ndivides $a $b }. +(* arithmetics **************************************************************) + notation "hvbox(a break + b)" left associative with precedence 55 for @{ 'plus $a $b }. @@ -209,14 +226,12 @@ for @{ 'divide $a $b }. notation "- term 65 a" with precedence 65 for @{ 'uminus $a }. -notation "a !" - non associative with precedence 80 -for @{ 'fact $a }. - notation "\sqrt a" non associative with precedence 65 for @{ 'sqrt $a }. +(* logical connectives ******************************************************) + notation "hvbox(a break \lor b)" left associative with precedence 30 for @{ 'or $a $b }. @@ -237,66 +252,30 @@ notation "hvbox(a break \leftrightarrow b)" left associative with precedence 25 for @{ 'iff $a $b }. +(* subsets ******************************************************************) notation "hvbox(\Omega \sup term 90 A)" non associative with precedence 90 for @{ 'powerset $A }. + notation > "hvbox(\Omega ^ term 90 A)" non associative with precedence 90 for @{ 'powerset $A }. -notation < "hvbox({ ident i | term 19 p })" with precedence 90 -for @{ 'subset (\lambda ${ident i} : $nonexistent . $p)}. - -notation > "hvbox({ ident i | term 19 p })" with precedence 90 -for @{ 'subset (\lambda ${ident i}. $p)}. - -notation < "hvbox({ ident i ∈ s | term 19 p })" with precedence 90 -for @{ 'comprehension $s (\lambda ${ident i} : $nonexistent . $p)}. - -notation > "hvbox({ ident i ∈ s | term 19 p })" with precedence 90 -for @{ 'comprehension $s (\lambda ${ident i}. $p)}. - notation "hvbox(a break ∈ b)" non associative with precedence 45 for @{ 'mem $a $b }. +notation "hvbox(a break ∉ b)" non associative with precedence 45 +for @{ 'notmem $a $b }. + notation "hvbox(a break ≬ b)" non associative with precedence 45 for @{ 'overlaps $a $b }. (* \between *) -notation "hvbox(a break ⊆ b)" non associative with precedence 45 -for @{ 'subseteq $a $b }. (* \subseteq *) - notation "hvbox(a break ∩ b)" left associative with precedence 60 for @{ 'intersects $a $b }. (* \cap *) notation "hvbox(a break ∪ b)" left associative with precedence 55 for @{ 'union $a $b }. (* \cup *) -notation "hvbox({ term 19 a })" with precedence 90 for @{ 'singl $a}. - -notation "hvbox(a break \approx b)" non associative with precedence 45 - for @{ 'napart $a $b}. - -notation "hvbox(a break # b)" non associative with precedence 45 - for @{ 'apart $a $b}. - -notation "hvbox(a break \circ b)" - left associative with precedence 60 -for @{ 'compose $a $b }. - -notation < "↓ \ensp a" with precedence 60 for @{ 'downarrow $a }. -notation > "↓ a" with precedence 60 for @{ 'downarrow $a }. - -notation "hvbox(U break ↓ V)" non associative with precedence 60 for @{ 'fintersects $U $V }. - -notation "↑a" with precedence 60 for @{ 'uparrow $a }. - -notation "hvbox(a break ↑ b)" with precedence 60 for @{ 'funion $a $b }. - -notation < "term 76 a \sup term 90 b" non associative with precedence 75 for @{ 'exp $a $b}. -notation > "a \sup term 90 b" non associative with precedence 75 for @{ 'exp $a $b}. -notation > "a ^ term 90 b" non associative with precedence 75 for @{ 'exp $a $b}. -notation "s \sup (-1)" non associative with precedence 75 for @{ 'invert $s }. -notation > "s ^ (-1)" non associative with precedence 75 for @{ 'invert $s }. -notation < "s \sup (-1) x" non associative with precedence 90 for @{ 'invert_appl $s $x}. +(* other notations **********************************************************) notation "| term 19 C |" with precedence 70 for @{ 'card $C }.