Intervals #
In any preorder α
, we define intervals (which on each side can be either infinite, open, or
closed) using the following naming conventions:
i
: infiniteo
: openc
: closed
Each interval has the name I
+ letter for left side + letter for right side. For instance,
Ioc a b
denotes the inverval (a, b]
.
This file contains these definitions, and basic facts on inclusion, intersection, difference of
intervals (where the precise statements may depend on the properties of the order, in particular
for some statements it should be linear_order
or densely_ordered
).
TODO: This is just the beginning; a lot of rules are missing
In a no_top_order
, the intervals Ioi
are nonempty.
In a no_bot_order
, the intervals Iio
are nonempty.
Unions of adjacent intervals #
Two infinite intervals #
A finite and an infinite interval #
An infinite and a finite interval #
Two finite intervals, I?o
and Ic?
#
Two finite intervals, I?c
and Io?
#
Two finite intervals with a common point #
Closed intervals in α × β
#
Lemmas about membership of arithmetic operations #
inv_mem_Ixx_iff
, sub_mem_Ixx_iff
add_mem_Ixx_iff_left
add_mem_Ixx_iff_right
sub_mem_Ixx_iff_left
sub_mem_Ixx_iff_right
Order isomorphism between Iic (⊤ : α)
and α
when α
has a top element
Equations
- order_iso.Iic_top = {to_equiv := {to_fun := (equiv.subtype_univ_equiv order_iso.Iic_top._proof_1).to_fun, inv_fun := (equiv.subtype_univ_equiv order_iso.Iic_top._proof_1).inv_fun, left_inv := _, right_inv := _}, map_rel_iff' := _}
Order isomorphism between Ici (⊥ : α)
and α
when α
has a bottom element
Equations
- order_iso.Ici_bot = {to_equiv := {to_fun := (equiv.subtype_univ_equiv order_iso.Ici_bot._proof_1).to_fun, inv_fun := (equiv.subtype_univ_equiv order_iso.Ici_bot._proof_1).inv_fun, left_inv := _, right_inv := _}, map_rel_iff' := _}