summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Nominal/Support.lean9
1 files changed, 9 insertions, 0 deletions
diff --git a/Nominal/Support.lean b/Nominal/Support.lean
index d8058e0..0df541c 100644
--- a/Nominal/Support.lean
+++ b/Nominal/Support.lean
@@ -33,6 +33,15 @@ def fix (A : Set X) : Set (FPerm 𝔸) :=
def HasSupport (x : X) (S : Set 𝔸) : Prop :=
fix 𝔸 S ⊆ fix' 𝔸 x
+/-- fix is antitone: If S ⊆ T, then fix S ⊇ fix T. -/
+lemma fix_antitone {X : Type} [PermSet 𝔸 X] {S T : Set X} : S ⊆ T → PermSet.fix 𝔸 T ⊆ PermSet.fix 𝔸 S := by
+ intro hsub π hπ x hx
+ exact hπ x (hsub hx)
+
+/-- If π fixes S ∪ T, it fixes both S and T. -/
+lemma fix_union {X : Type} [PermSet 𝔸 X] {S T : Set X} : PermSet.fix 𝔸 (S ∪ T) ⊆ PermSet.fix 𝔸 S ∩ PermSet.fix 𝔸 T := by
+ apply Set.subset_inter <;> all_goals simp [fix_antitone]
+
/-- Alternative definition with fix 𝔸 S unfolded. -/
lemma support_iff {x : X} {S : Set 𝔸} : HasSupport 𝔸 x S ↔ ∀ (π : FPerm 𝔸), (∀ x ∈ S, π x = x) → π ∈ fix' 𝔸 x := by
simp [HasSupport, fix, fix']