Commit 2021-03-04 21:18 744e79c1
View on Github →feat(algebra/ordered_*, */sub{monoid,group,ring,semiring,field,algebra}): pullback of ordered algebraic structures under an injective map (#6489)
Prove that the following 14 order typeclasses can be pulled back via an injective map (function.injective.*), and use them to attach 30 new instances to sub-objects:
ordered_comm_monoid(and the impliedordered_add_comm_monoid)submonoid.to_ordered_comm_monoidsubmodule.to_ordered_add_comm_monoid
ordered_comm_group(and the impliedordered_add_comm_group)subgroup.to_ordered_comm_groupsubmodule.to_ordered_add_comm_group
ordered_cancel_comm_monoid(and the impliedordered_cancel_add_comm_monoid)submonoid.to_ordered_cancel_comm_monoidsubmodule.to_ordered_cancel_add_comm_monoid
linear_ordered_cancel_comm_monoid(and the impliedlinear_ordered_cancel_add_comm_monoid)submonoid.to_linear_ordered_cancel_comm_monoidsubmodule.to_linear_ordered_cancel_add_comm_monoid
linear_ordered_comm_monoid_with_zero- (no suitable subobject exists for monoid_with_zero)
linear_ordered_comm_group(and the impliedlinear_ordered_add_comm_group)subgroup.to_linear_ordered_comm_groupsubmodule.to_linear_ordered_add_comm_group
ordered_semiringsubsemiring.to_ordered_semiringsubalgebra.to_ordered_semiring
ordered_comm_semiringsubsemiring.to_ordered_comm_semiringsubalgebra.to_ordered_comm_semiring
ordered_ringsubring.to_ordered_ringsubalgebra.to_ordered_ring
ordered_comm_ringsubring.to_ordered_comm_ringsubalgebra.to_ordered_comm_ring
linear_ordered_semiringsubring.to_linear_ordered_semiringsubalgebra.to_linear_ordered_semiring
linear_ordered_ringsubring.to_linear_ordered_ringsubalgebra.to_linear_ordered_ring
linear_ordered_comm_ringsubring.to_linear_ordered_comm_ringsubalgebra.to_linear_ordered_comm_ring
linear_ordered_fieldsubfield.to_linear_ordered_fieldZulip: https://leanprover.zulipchat.com/#narrow/stream/113489-new-members/topic/rings.20from.20subtype