Note about deprecated files #
This file is deprecated, and is no longer imported by anything in mathlib other than other deprecated files, and test files. You should not need to import it.
Unbundled algebra classes #
These classes were part of an incomplete refactor described here on the github Wiki. However a subset of them are widely used in mathlib3, and it has been tricky to clean this up as this file was in core Lean 3.
@[deprecated "No deprecation message was provided." (since := "2024-07-30")]
IsTotalPreorder X r
means that the binary relation r
on X
is total and a preorder.
Instances
@[instance 100]
instance
isTotalPreorder_isPreorder
(α : Sort u)
(r : α → α → Prop)
[s : IsTotalPreorder α r]
:
IsPreorder α r
Every total pre-order is a pre-order.
@[deprecated "No deprecation message was provided." (since := "2024-07-30")]
IsIncompTrans X lt
means that for lt
a binary relation on X
, the incomparable relation
fun a b => ¬ lt a b ∧ ¬ lt b a
is transitive.
Instances
@[deprecated "No deprecation message was provided." (since := "2024-07-30"), instance 100]
instance
instIsIncompTransOfIsStrictWeakOrder
(α : Sort u)
(lt : α → α → Prop)
[IsStrictWeakOrder α lt]
:
IsIncompTrans α lt
@[deprecated "No deprecation message was provided." (since := "2024-07-30")]
Equations
- StrictWeakOrder.Equiv a b = (¬r a b ∧ ¬r b a)
Instances For
@[deprecated "No deprecation message was provided." (since := "2024-07-30")]
theorem
StrictWeakOrder.esymm
{α : Sort u}
{r : α → α → Prop}
{a b : α}
:
StrictWeakOrder.Equiv a b → StrictWeakOrder.Equiv b a
@[deprecated "No deprecation message was provided." (since := "2024-07-30")]
theorem
StrictWeakOrder.not_lt_of_equiv
{α : Sort u}
{r : α → α → Prop}
{a b : α}
:
StrictWeakOrder.Equiv a b → ¬r a b
@[deprecated "No deprecation message was provided." (since := "2024-07-30")]
theorem
StrictWeakOrder.not_lt_of_equiv'
{α : Sort u}
{r : α → α → Prop}
{a b : α}
:
StrictWeakOrder.Equiv a b → ¬r b a
@[deprecated "No deprecation message was provided." (since := "2024-07-30")]
@[deprecated "No deprecation message was provided." (since := "2024-07-30")]
theorem
StrictWeakOrder.etrans
{α : Sort u}
{r : α → α → Prop}
[IsStrictWeakOrder α r]
{a b c : α}
:
StrictWeakOrder.Equiv a b → StrictWeakOrder.Equiv b c → StrictWeakOrder.Equiv a c
@[deprecated "No deprecation message was provided." (since := "2024-07-30")]
The equivalence relation induced by lt
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[deprecated "No deprecation message was provided." (since := "2024-07-30")]
theorem
isStrictWeakOrder_of_isTotalPreorder
{α : Sort u}
{le lt : α → α → Prop}
[DecidableRel le]
[IsTotalPreorder α le]
(h : ∀ (a b : α), lt a b ↔ ¬le b a)
:
IsStrictWeakOrder α lt
@[deprecated "No deprecation message was provided." (since := "2024-07-30")]
instance
instIsTotalPreorderLe
{α : Type u_1}
[LinearOrder α]
:
IsTotalPreorder α fun (x1 x2 : α) => x1 ≤ x2
@[deprecated "No deprecation message was provided." (since := "2024-07-30")]
instance
isStrictWeakOrder_of_linearOrder
{α : Type u_1}
[LinearOrder α]
:
IsStrictWeakOrder α fun (x1 x2 : α) => x1 < x2
@[deprecated "No deprecation message was provided." (since := "2024-07-30")]
theorem
lt_of_lt_of_incomp
{α : Sort u}
{lt : α → α → Prop}
[IsStrictWeakOrder α lt]
[DecidableRel lt]
{a b c : α}
:
@[deprecated "No deprecation message was provided." (since := "2024-07-30")]
theorem
lt_of_incomp_of_lt
{α : Sort u}
{lt : α → α → Prop}
[IsStrictWeakOrder α lt]
[DecidableRel lt]
{a b c : α}
:
@[deprecated "No deprecation message was provided." (since := "2024-07-30")]
@[deprecated "No deprecation message was provided." (since := "2024-07-30")]
theorem
eq_of_eqv_lt
{α : Sort u}
{lt : α → α → Prop}
[IsTrichotomous α lt]
{a b : α}
:
StrictWeakOrder.Equiv a b → a = b
@[deprecated "No deprecation message was provided." (since := "2024-07-30")]
theorem
eqv_lt_iff_eq
{α : Sort u}
{lt : α → α → Prop}
[IsTrichotomous α lt]
[IsIrrefl α lt]
(a b : α)
:
StrictWeakOrder.Equiv a b ↔ a = b