Co-Heyting boundary #
THIS FILE IS SYNCHRONIZED WITH MATHLIB4. Any changes to this file require a corresponding PR to mathlib4.
The boundary of an element of a co-Heyting algebra is the intersection of its Heyting negation with itself. The boundary in the co-Heyting algebra of closed sets coincides with the topological boundary.
Main declarations #
coheyting.boundary
: Co-Heyting boundary.coheyting.boundary a = a ⊓ ¬a
Notation #
∂ a
is notation for coheyting.boundary a
in locale heyting
.
The boundary of an element of a co-Heyting algebra is the intersection of its Heyting negation
with itself. Note that this is always ⊥
for a boolean algebra.
Equations
- coheyting.boundary a = a ⊓ ¬a
theorem
coheyting.inf_hnot_self
{α : Type u_1}
[coheyting_algebra α]
(a : α) :
a ⊓ ¬a = coheyting.boundary a
theorem
coheyting.boundary_le
{α : Type u_1}
[coheyting_algebra α]
{a : α} :
coheyting.boundary a ≤ a
theorem
coheyting.boundary_le_hnot
{α : Type u_1}
[coheyting_algebra α]
{a : α} :
coheyting.boundary a ≤ ¬a
@[simp]
@[simp]
@[simp]
theorem
coheyting.boundary_hnot_hnot
{α : Type u_1}
[coheyting_algebra α]
(a : α) :
coheyting.boundary (¬¬a) = coheyting.boundary (¬a)
@[simp]
theorem
coheyting.boundary_inf
{α : Type u_1}
[coheyting_algebra α]
(a b : α) :
coheyting.boundary (a ⊓ b) = coheyting.boundary a ⊓ b ⊔ a ⊓ coheyting.boundary b
Leibniz rule for the co-Heyting boundary.
theorem
coheyting.boundary_inf_le
{α : Type u_1}
[coheyting_algebra α]
{a b : α} :
coheyting.boundary (a ⊓ b) ≤ coheyting.boundary a ⊔ coheyting.boundary b
theorem
coheyting.boundary_sup_le
{α : Type u_1}
[coheyting_algebra α]
{a b : α} :
coheyting.boundary (a ⊔ b) ≤ coheyting.boundary a ⊔ coheyting.boundary b
theorem
coheyting.boundary_le_boundary_sup_sup_boundary_inf_left
{α : Type u_1}
[coheyting_algebra α]
{a b : α} :
coheyting.boundary a ≤ coheyting.boundary (a ⊔ b) ⊔ coheyting.boundary (a ⊓ b)
theorem
coheyting.boundary_le_boundary_sup_sup_boundary_inf_right
{α : Type u_1}
[coheyting_algebra α]
{a b : α} :
coheyting.boundary b ≤ coheyting.boundary (a ⊔ b) ⊔ coheyting.boundary (a ⊓ b)
theorem
coheyting.boundary_sup_sup_boundary_inf
{α : Type u_1}
[coheyting_algebra α]
(a b : α) :
coheyting.boundary (a ⊔ b) ⊔ coheyting.boundary (a ⊓ b) = coheyting.boundary a ⊔ coheyting.boundary b
@[simp]
theorem
coheyting.hnot_hnot_sup_boundary
{α : Type u_1}
[coheyting_algebra α]
(a : α) :
¬¬a ⊔ coheyting.boundary a = a
@[simp]