Polyhedral cones #
...
def
Submodule.IsLineOrBot
{R : Type u_7}
[Semiring R]
{M : Type u_8}
[AddCommMonoid M]
[Module R M]
(S : Submodule R M)
:
Equations
- S.IsLineOrBot = ∃ (x : M), Submodule.span R {x} = S
Instances For
structure
Submodule.LineOrBot
(R : Type u_7)
[Semiring R]
(M : Type u_8)
[AddCommMonoid M]
[Module R M]
extends Submodule R M :
Type u_8
- isPreLine : self.IsLineOrBot
Instances For
instance
Submodule.LineOrBot.instCoe
{R : Type u_7}
[Semiring R]
{M : Type u_8}
[AddCommMonoid M]
[Module R M]
:
Equations
def
Submodule.LineOrBot.of_isLineOrBot
{R : Type u_7}
[Semiring R]
{M : Type u_8}
[AddCommMonoid M]
[Module R M]
{S : Submodule R M}
(hS : S.IsLineOrBot)
:
LineOrBot R M
Equations
- Submodule.LineOrBot.of_isLineOrBot hS = { toSubmodule := S, isPreLine := hS }
Instances For
theorem
Submodule.LineOrBot.toSubmodule_injective
{R : Type u_7}
[Semiring R]
{M : Type u_8}
[AddCommMonoid M]
[Module R M]
:
instance
Submodule.LineOrBot.instSetLike
{R : Type u_7}
[Semiring R]
{M : Type u_8}
[AddCommMonoid M]
[Module R M]
:
Equations
- Submodule.LineOrBot.instSetLike = { coe := fun (C : Submodule.LineOrBot R M) => ↑C.toSubmodule, coe_injective' := ⋯ }
@[simp]
theorem
Submodule.LineOrBot.coe_toSubmodule
{R : Type u_7}
[Semiring R]
{M : Type u_8}
[AddCommMonoid M]
[Module R M]
(C : LineOrBot R M)
:
structure
Submodule.Line
(R : Type u_7)
[Semiring R]
(M : Type u_8)
[AddCommMonoid M]
[Module R M]
extends Submodule R M :
Type u_8
- isLine : self.IsLine
Instances For
instance
Submodule.Line.instCoe
{R : Type u_7}
[Semiring R]
{M : Type u_8}
[AddCommMonoid M]
[Module R M]
:
Equations
def
Submodule.Line.of_isLine
{R : Type u_7}
[Semiring R]
{M : Type u_8}
[AddCommMonoid M]
[Module R M]
{S : Submodule R M}
(hS : S.IsLine)
:
Line R M
Equations
- Submodule.Line.of_isLine hS = { toSubmodule := S, isLine := hS }
Instances For
theorem
Submodule.Line.toSubmodule_injective
{R : Type u_7}
[Semiring R]
{M : Type u_8}
[AddCommMonoid M]
[Module R M]
:
instance
Submodule.Line.instSetLike
{R : Type u_7}
[Semiring R]
{M : Type u_8}
[AddCommMonoid M]
[Module R M]
:
Equations
- Submodule.Line.instSetLike = { coe := fun (C : Submodule.Line R M) => ↑C.toSubmodule, coe_injective' := ⋯ }
@[simp]
theorem
Submodule.Line.coe_toSubmodule
{R : Type u_7}
[Semiring R]
{M : Type u_8}
[AddCommMonoid M]
[Module R M]
(C : Line R M)
: