@{ ${ 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)"
non associative with precedence 45
for @{ 'congruent $n $m $p }.
-(* other notations **********************************************************)
+(* pairs, projections *******************************************************)
notation "hvbox(\langle term 19 a, break term 19 b\rangle)"
with precedence 90 for @{ 'pair $a $b}.
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 }.
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 }.
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 }.
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 }.
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 }.
non associative with precedence 45
for @{ 'ndivides $a $b }.
+(* arithmetics **************************************************************)
+
notation "hvbox(a break + b)"
left associative with precedence 55
for @{ 'plus $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 }.
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 }.
+(* other notations **********************************************************)
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}.