]> matita.cs.unibo.it Git - helm.git/commitdiff
update in ground
authorFerruccio Guidi <ferruccio.guidi@unibo.it>
Wed, 8 Jun 2022 18:27:49 +0000 (20:27 +0200)
committerFerruccio Guidi <ferruccio.guidi@unibo.it>
Wed, 8 Jun 2022 18:27:49 +0000 (20:27 +0200)
* subset overlap

matita/matita/contribs/lambdadelta/ground/lib/subset_overlap.ma [new file with mode: 0644]
matita/matita/contribs/lambdadelta/ground/notation/relations/between_3.ma [new file with mode: 0644]
matita/matita/contribs/lambdadelta/ground/notation/relations/not_between_3.ma [new file with mode: 0644]

diff --git a/matita/matita/contribs/lambdadelta/ground/lib/subset_overlap.ma b/matita/matita/contribs/lambdadelta/ground/lib/subset_overlap.ma
new file mode 100644 (file)
index 0000000..3ca30d5
--- /dev/null
@@ -0,0 +1,36 @@
+(**************************************************************************)
+(*       ___                                                              *)
+(*      ||M||                                                             *)
+(*      ||A||       A project by Andrea Asperti                           *)
+(*      ||T||                                                             *)
+(*      ||I||       Developers:                                           *)
+(*      ||T||         The HELM team.                                      *)
+(*      ||A||         http://helm.cs.unibo.it                             *)
+(*      \   /                                                             *)
+(*       \ /        This file is distributed under the terms of the       *)
+(*        v         GNU General Public License Version 2                  *)
+(*                                                                        *)
+(**************************************************************************)
+
+include "ground/lib/subset.ma".
+include "ground/notation/relations/between_3.ma".
+include "ground/notation/relations/not_between_3.ma".
+
+(* OVERLAP FOR SUBSETS ******************************************************)
+
+definition subset_ol (A): relation2 (𝒫❨A❩) (𝒫❨A❩) ≝
+           λu1,u2. ∃∃p. p ϵ u1 & p ϵ u2.
+
+interpretation
+  "overlap (subset)"
+  'Between A u1 u2 = (subset_ol A u1 u2).
+
+interpretation
+  "negated overlap (subset)"
+  'NotBetween A u1 u2 = (negation (subset_ol A u1 u2)).
+
+(* Basic constructions ******************************************************)
+
+lemma subset_ol_i (A) (u1) (u2) (a):
+       a ϵ u1 → a ϵ u2 → u1 ≬{A} u2.
+/2 width=3 by ex2_intro/ qed.
diff --git a/matita/matita/contribs/lambdadelta/ground/notation/relations/between_3.ma b/matita/matita/contribs/lambdadelta/ground/notation/relations/between_3.ma
new file mode 100644 (file)
index 0000000..9d61d3b
--- /dev/null
@@ -0,0 +1,27 @@
+(**************************************************************************)
+(*       ___                                                              *)
+(*      ||M||                                                             *)
+(*      ||A||       A project by Andrea Asperti                           *)
+(*      ||T||                                                             *)
+(*      ||I||       Developers:                                           *)
+(*      ||T||         The HELM team.                                      *)
+(*      ||A||         http://helm.cs.unibo.it                             *)
+(*      \   /                                                             *)
+(*       \ /        This file is distributed under the terms of the       *)
+(*        v         GNU General Public License Version 2                  *)
+(*                                                                        *)
+(**************************************************************************)
+
+(* GROUND NOTATION **********************************************************)
+
+notation < "hvbox( a ≬ break term 46 u )"
+  non associative with precedence 45
+  for @{ 'Between $S $a $u }.
+
+notation > "hvbox( a ≬ break term 46 u )"
+  non associative with precedence 45
+  for @{ 'Between ? $a $u }.
+
+notation > "hvbox( a ≬{ break term 46 S } break term 46 u )"
+  non associative with precedence 45
+  for @{ 'Between $S $a $u }.
diff --git a/matita/matita/contribs/lambdadelta/ground/notation/relations/not_between_3.ma b/matita/matita/contribs/lambdadelta/ground/notation/relations/not_between_3.ma
new file mode 100644 (file)
index 0000000..81b3247
--- /dev/null
@@ -0,0 +1,27 @@
+(**************************************************************************)
+(*       ___                                                              *)
+(*      ||M||                                                             *)
+(*      ||A||       A project by Andrea Asperti                           *)
+(*      ||T||                                                             *)
+(*      ||I||       Developers:                                           *)
+(*      ||T||         The HELM team.                                      *)
+(*      ||A||         http://helm.cs.unibo.it                             *)
+(*      \   /                                                             *)
+(*       \ /        This file is distributed under the terms of the       *)
+(*        v         GNU General Public License Version 2                  *)
+(*                                                                        *)
+(**************************************************************************)
+
+(* GROUND NOTATION **********************************************************)
+
+notation < "hvbox( a ⧸≬ break term 46 u )"
+  non associative with precedence 45
+  for @{ 'NotBetween $S $a $u }.
+
+notation > "hvbox( a ⧸≬ break term 46 u )"
+  non associative with precedence 45
+  for @{ 'NotBetween ? $a $u }.
+
+notation > "hvbox( a ⧸≬{ break term 46 S } break term 46 u )"
+  non associative with precedence 45
+  for @{ 'NotBetween $S $a $u }.