X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;ds=sidebyside;f=matita%2Fmatita%2Flib%2Fbasics%2Fcore_notation.ma;h=904adcd52f2fff140dd65eadb6e0945a219c4237;hb=85a42e4a2a4c62818b6a98eff545e58ceb8770a4;hp=cdb49737164e1264fc8f67bf74f683f107abda6d;hpb=53452958508001e7af3090695b619fe92135fb9e;p=helm.git diff --git a/matita/matita/lib/basics/core_notation.ma b/matita/matita/lib/basics/core_notation.ma index cdb497371..904adcd52 100644 --- a/matita/matita/lib/basics/core_notation.ma +++ b/matita/matita/lib/basics/core_notation.ma @@ -52,6 +52,37 @@ notation > "\Sigma list1 ident x sep , opt (: T). term 19 Px" @{ ${ fold right @{$Px} rec acc @{'sigma (λ${ident x}.$acc)} } } }. +notation "hvbox(« term 19 a, break term 19 b»)" +with precedence 90 for @{ 'dp $a $b }. + +(* dependent pairs (i.e. Sigma with predicate in Type[0]) ********************) + +notation < "hvbox(𝚺 ident i : ty break . p)" + left associative with precedence 20 +for @{'dpair (\lambda ${ident i} : $ty. $p) }. + +notation < "hvbox(𝚺 ident i break . p)" + with precedence 20 +for @{'dpair (\lambda ${ident i}. $p) }. + +(* +notation < "hvbox(𝚺 ident i opt (: ty) break . p)" + right associative with precedence 20 +for @{ 'dpair ${default + @{\lambda ${ident i} : $ty. $p} + @{\lambda ${ident i} . $p}}}. +*) + +notation > "𝚺 list1 ident x sep , opt (: T). term 19 Px" + with precedence 20 + for ${ default + @{ ${ fold right @{$Px} rec acc @{'dpair (λ${ident x}:$T.$acc)} } } + @{ ${ fold right @{$Px} rec acc @{'dpair (λ${ident x}.$acc)} } } + }. + +notation "hvbox(❬ term 19 a, break term 19 b❭)" +with precedence 90 for @{ 'mk_DPair $a $b }. + (* equality, conguence ******************************************************) notation > "hvbox(a break = b)" @@ -144,23 +175,23 @@ notation "hvbox(a break \ndivides b)" for @{ 'ndivides $a $b }. notation "hvbox(a break + b)" - left associative with precedence 50 + left associative with precedence 55 for @{ 'plus $a $b }. notation "hvbox(a break - b)" - left associative with precedence 50 + left associative with precedence 55 for @{ 'minus $a $b }. notation "hvbox(a break * b)" - left associative with precedence 55 + left associative with precedence 60 for @{ 'times $a $b }. notation "hvbox(a break \middot b)" - left associative with precedence 55 + left associative with precedence 60 for @{ 'middot $a $b }. notation "hvbox(a break \mod b)" - left associative with precedence 55 + left associative with precedence 60 for @{ 'module $a $b }. notation < "a \frac b" @@ -168,14 +199,14 @@ notation < "a \frac b" for @{ 'divide $a $b }. notation "a \over b" - left associative with precedence 55 + left associative with precedence 60 for @{ 'divide $a $b }. notation "hvbox(a break / b)" - left associative with precedence 55 + left associative with precedence 60 for @{ 'divide $a $b }. -notation "- term 60 a" with precedence 60 +notation "- term 65 a" with precedence 65 for @{ 'uminus $a }. notation "a !" @@ -183,7 +214,7 @@ notation "a !" for @{ 'fact $a }. notation "\sqrt a" - non associative with precedence 60 + non associative with precedence 65 for @{ 'sqrt $a }. notation "hvbox(a break \lor b)" @@ -233,10 +264,10 @@ 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 55 +notation "hvbox(a break ∩ b)" left associative with precedence 60 for @{ 'intersects $a $b }. (* \cap *) -notation "hvbox(a break ∪ b)" left associative with precedence 50 +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}. @@ -248,17 +279,17 @@ notation "hvbox(a break # b)" non associative with precedence 45 for @{ 'apart $a $b}. notation "hvbox(a break \circ b)" - left associative with precedence 55 + left associative with precedence 60 for @{ 'compose $a $b }. -notation < "↓ \ensp a" with precedence 55 for @{ 'downarrow $a }. -notation > "↓ a" with precedence 55 for @{ 'downarrow $a }. +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 55 for @{ 'fintersects $U $V }. +notation "hvbox(U break ↓ V)" non associative with precedence 60 for @{ 'fintersects $U $V }. -notation "↑a" with precedence 55 for @{ 'uparrow $a }. +notation "↑a" with precedence 60 for @{ 'uparrow $a }. -notation "hvbox(a break ↑ b)" with precedence 55 for @{ 'funion $a $b }. +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}. @@ -280,8 +311,8 @@ notation "\ee" with precedence 90 for @{ 'neutral }. (* ⅇ *) notation > "x ⊩ y" with precedence 45 for @{'Vdash2 $x $y ?}. notation > "x ⊩⎽ term 90 c y" with precedence 45 for @{'Vdash2 $x $y $c}. notation "x (⊩ \sub term 90 c) y" with precedence 45 for @{'Vdash2 $x $y $c}. -notation > "⊩ " with precedence 60 for @{'Vdash ?}. -notation "(⊩ \sub term 90 c) " with precedence 60 for @{'Vdash $c}. +notation > "⊩ " with precedence 65 for @{'Vdash ?}. +notation "(⊩ \sub term 90 c) " with precedence 65 for @{'Vdash $c}. notation < "maction (mstyle color #ff0000 (­…­)) (t)" -non associative with precedence 90 for @{'hide $t}. \ No newline at end of file +non associative with precedence 90 for @{'hide $t}.