mathlib icon indicating copy to clipboard operation
mathlib copied to clipboard

Follow-ups from `free_algebra`, `exterior_algebra`, `tensor_algebra`, `clifford_algebra`, `universal_enveloping_algebra`

Open Vierkantor opened this issue 5 years ago • 2 comments

In the later PRs (#4297, #4430) for this series of definitions, I had suggestions that would apply equally to the previous files in the series (#4077, #4079, #4041). These should be fixed in one PR across 5 files:

ι_comp_lift: shouldn't this be lift_comp_ι to match the order of the symbols?

lift_unique: What do you think about adding a simp lemma turning (ring_quot.mk_alg_hom R (rel R M)) ((foo_algebra.ι R) x into ι R x, so that we can delete the last refl?

There is a lot of rw ← lift_unique, can this become its own lemma, and/or consolidate it with lift_comp_ι?

  • [ ] free_algebra.lean
  • [ ] exterior_algebra.lean
  • [ ] tensor_algebra.lean
  • [ ] clifford_algebra.lean

hom_ext is not optimal as an @[ext] lemma, it should be @[ext] lemma hom_ext' : f.to_linear_map (ι R x) = g.to_linear_map (ι R x) → f = g

lift's docstring is a long sentence, how about "If f : M →ₗ[R] A satisfies cond : ∀ m : M, f m * f m = Q m, it factors as lift Q f cond \circ ι Q. In other words, lift Q f cond is the canonical lift of f : : M →ₗ[R] A to clifford_algebra Q →ₐ[R] A."

Since lift_ι_apply is essentially lift_comp_ι without the ext, wouldn't it be nicer if lift_ι_apply was defined first and ι_comp_lift := by { ext, apply lift_ι_apply }?

comp_ι_square_zero and comp_ι_square_scalar don't really match the statement:

Vierkantor avatar Oct 14 '20 11:10 Vierkantor

cc @adamtopaz (tensor_algebra) and @semorrison (free_algebra) also.

https://github.com/leanprover-community/mathlib/blob/master/src/algebra/lie/universal_enveloping.lean is likely also subject to many of these suggestions, cc @ocfnash. I've edited the issue to include these too.

eric-wieser avatar Oct 14 '20 11:10 eric-wieser

hom_ext is not optimal as an @[ext] lemma, it should be @[ext] lemma hom_ext' : f.to_linear_map (ι R x) = g.to_linear_map (ι R x) → f = g

This goes against the direction in #5200, which chooses these .comp lemmas so that a different ext lemma can be appended.

eric-wieser avatar Dec 08 '20 13:12 eric-wieser