LeanAide GPT-4 documentation

Module: Mathlib.Order.Grade






GradeMinOrder.isMin_grade

theorem GradeMinOrder.isMin_grade : โˆ€ {๐•† : Type u_5} {ฮฑ : Type u_6} [inst : Preorder ๐•†] [inst_1 : Preorder ฮฑ] [self : GradeMinOrder ๐•† ฮฑ] โฆƒa : ฮฑโฆ„, IsMin a โ†’ IsMin (GradeOrder.grade a)

The theorem `GradeMinOrder.isMin_grade` states that for any partially ordered types ๐•† and ฮฑ, given an instance of the `GradeMinOrder` structure, if a value `a` of type ฮฑ is a minimal element, then the grade of 'a' is also a minimal element. In simpler terms, if 'a' is a minimal element in its context, then the grade of 'a' (calculated using the `GradeOrder.grade` function) is also minimal in its own context.

More concisely: If `(ฮฑ, โ‰ค)` is a partially ordered type with a given instance of `GradeMinOrder`, and `a` is a minimal element of type ฮฑ, then the grade of `a` is a minimal element in the grade order.

CovBy.grade

theorem CovBy.grade : โˆ€ (๐•† : Type u_1) {ฮฑ : Type u_3} [inst : Preorder ๐•†] [inst_1 : Preorder ฮฑ] [inst_2 : GradeOrder ๐•† ฮฑ] {a b : ฮฑ}, a โ‹– b โ†’ grade ๐•† a โ‹– grade ๐•† b

The theorem `CovBy.grade` states that for any types `๐•†` and `ฮฑ` that have preorder structures, and any `a` and `b` of type `ฮฑ`, if `a` is covered by `b` (denoted as `a โ‹– b`), then the grade of `a` is also covered by the grade of `b` (denoted as `grade ๐•† a โ‹– grade ๐•† b`). Here, the grade of an element in a graded order can be thought of as the number of elements you need to go down by to get to the bottom (`โŠฅ`). This theorem therefore asserts a preservation of the covering relation under the grade function in this structure.

More concisely: For any preordered types `๐•†` and `ฮฑ`, if `a โ‹– b` holds in `ฮฑ` then `grade ๐•† a โ‹– grade ๐•† b` holds in `๐•†`.

GradeBoundedOrder.isMax_grade

theorem GradeBoundedOrder.isMax_grade : โˆ€ {๐•† : Type u_5} {ฮฑ : Type u_6} [inst : Preorder ๐•†] [inst_1 : Preorder ฮฑ] [self : GradeBoundedOrder ๐•† ฮฑ] โฆƒa : ฮฑโฆ„, IsMax a โ†’ IsMax (GradeOrder.grade a)

The theorem `GradeBoundedOrder.isMax_grade` states that for all types `๐•†` and `ฮฑ`, where `๐•†` and `ฮฑ` are pre-ordered and `๐•†` is a grade bounded order of `ฮฑ`, if `a` is a maximal element in `ฮฑ`, then the grade of `a` is also a maximal element in `๐•†`. This means that no other element in `ฮฑ` has a grade in `๐•†` that is strictly greater than the grade of `a`.

More concisely: For any pre-ordered type `ฮฑ` with a grade bounded order `๐•†`, if `a` is a maximal element in `ฮฑ`, then the grade of `a` is a maximal element in `๐•†`. In other words, no element in `ฮฑ` has a greater grade in `๐•†`.

GradeOrder.grade_strictMono

theorem GradeOrder.grade_strictMono : โˆ€ {๐•† : Type u_5} {ฮฑ : Type u_6} [inst : Preorder ๐•†] [inst_1 : Preorder ฮฑ] [self : GradeOrder ๐•† ฮฑ], StrictMono GradeOrder.grade

The theorem `GradeOrder.grade_strictMono` states that for any types `๐•†` and `ฮฑ` that are preordered, if `GradeOrder` is defined on `๐•†` and `ฮฑ`, then the `grade` function which maps elements from type `ฮฑ` to `๐•†` is strictly monotonic. In other words, for any two elements `a` and `b` in `ฮฑ` where `a < b`, we always have `grade(a) < grade(b)`.

More concisely: For any preordered types `๐•†` and `ฮฑ` with defined `GradeOrder`, the grade function `grade : ฮฑ โ†’ ๐•†` is strictly monotonic, i.e., `grade(a) < grade(b)` for all `a < b` in `ฮฑ`.

GradeMaxOrder.isMax_grade

theorem GradeMaxOrder.isMax_grade : โˆ€ {๐•† : Type u_5} {ฮฑ : Type u_6} [inst : Preorder ๐•†] [inst_1 : Preorder ฮฑ] [self : GradeMaxOrder ๐•† ฮฑ] โฆƒa : ฮฑโฆ„, IsMax a โ†’ IsMax (GradeOrder.grade a)

The theorem `GradeMaxOrder.isMax_grade` states that for any types `๐•†` and `ฮฑ` having a preorder relation and a `GradeMaxOrder` relation, if `a` is a maximal element in the set of `ฮฑ` (i.e., no element in `ฮฑ` is strictly greater than `a`), then the grade of `a` (obtained through the `GradeOrder.grade` function) is also a maximal element in the set of `๐•†`. This theorem essentially describes a preservation of maximality under the grading function in the context of preordered sets.

More concisely: If `a` is a maximal element in a preordered set `(ฮฑ, โ‰ค)` with a `GradeMaxOrder`, then the grade of `a` (obtained through the `GradeOrder.grade` function) is a maximal element in the preorder `(๐•†, โ‰ค)`.

IsMin.grade

theorem IsMin.grade : โˆ€ (๐•† : Type u_1) {ฮฑ : Type u_3} [inst : Preorder ฮฑ] [inst_1 : Preorder ๐•†] [inst_2 : GradeMinOrder ๐•† ฮฑ] {a : ฮฑ}, IsMin a โ†’ IsMin (grade ๐•† a)

This theorem states that for any types `๐•†` and `ฮฑ`, where `ฮฑ` is a preorder and `๐•†` is a preorder, and under the condition that `๐•†` and `ฮฑ` have a grade-minimal order, if `a` is a minimal element in `ฮฑ`, then the grade of `a` is also a minimal element in `๐•†`. In simpler terms, if `a` is the smallest element according to the order defined for `ฮฑ`, then the number of steps you would need to go down to get to the bottom of the order for `๐•†` is also the smallest possible.

More concisely: If `ฮฑ` is a preordered type with a grade-minimal order and `a` is a minimal element in `ฮฑ`, then the grade of `a` is a minimal element in the preorder `๐•†` on types.

IsMax.grade

theorem IsMax.grade : โˆ€ (๐•† : Type u_1) {ฮฑ : Type u_3} [inst : Preorder ฮฑ] [inst_1 : Preorder ๐•†] [inst_2 : GradeMaxOrder ๐•† ฮฑ] {a : ฮฑ}, IsMax a โ†’ IsMax (grade ๐•† a)

The theorem `IsMax.grade` states that for any type `๐•†`, for any type `ฮฑ` that is a preordered set, and for any instance of `GradeMaxOrder` relating `๐•†` and `ฮฑ`, if a given element `a` of type `ฮฑ` is a maximal element (i.e., no other element in `ฮฑ` is strictly greater than `a`), then the grade (which, by analogy, is the number of elements one needs to descend to reach the minimal element) of `a` is also a maximal element.

More concisely: If `ฮฑ` is a preordered set over type `๐•†` with maximal element `a`, then the grade of `a` is a maximal element among the grades of elements in `ฮฑ`.

GradeOrder.covBy_grade

theorem GradeOrder.covBy_grade : โˆ€ {๐•† : Type u_5} {ฮฑ : Type u_6} [inst : Preorder ๐•†] [inst_1 : Preorder ฮฑ] [self : GradeOrder ๐•† ฮฑ] โฆƒa b : ฮฑโฆ„, a โ‹– b โ†’ GradeOrder.grade a โ‹– GradeOrder.grade b

The theorem `GradeOrder.covBy_grade` states that for any types `๐•†` and `ฮฑ` endowed with a preorder structure, and an instance `GradeOrder ๐•† ฮฑ`, if an element `a` of type `ฮฑ` is covered by another element `b` of type `ฮฑ` (denoted `a โ‹– b`), then the grade of `a` is also covered by the grade of `b` (denoted `GradeOrder.grade a โ‹– GradeOrder.grade b`). In other words, the grading function `GradeOrder.grade` preserves the cover relation.

More concisely: For any type endowed with a preorder structure and a GradeOrder instance, if an element is covered by another element, then the grades of the elements have a cover relation.

grade_strictMono

theorem grade_strictMono : โˆ€ {๐•† : Type u_1} {ฮฑ : Type u_3} [inst : Preorder ๐•†] [inst_1 : Preorder ฮฑ] [inst_2 : GradeOrder ๐•† ฮฑ], StrictMono (grade ๐•†)

The theorem `grade_strictMono` states that for any types `๐•†` and `ฮฑ`, with `๐•†` and `ฮฑ` being preordered and `๐•†` being a graded order over `ฮฑ`, the `grade` function, which assigns to each element of `ฮฑ` its grade in `๐•†`, is strictly monotone. This means that if `a` and `b` are elements of `ฮฑ` and `a < b`, then `grade ๐•† a < grade ๐•† b`. In other words, if one element in `ฮฑ` is less than another, its grade, i.e., the number of elements you need to go down by to get to the bottom, is also less.

More concisely: For any preordered type `ฮฑ` with a graded order `๐•†`, the grade function strictly increases along `<`-chains in `ฮฑ`.