Skip to content

[Merged by Bors] - feat(Geometry/Euclidean/Altitude): map and restrict lemmas#32021

Closed
jsm28 wants to merge 33 commits intoleanprover-community:masterfrom
jsm28:altitude_map
Closed

[Merged by Bors] - feat(Geometry/Euclidean/Altitude): map and restrict lemmas#32021
jsm28 wants to merge 33 commits intoleanprover-community:masterfrom
jsm28:altitude_map

Conversation

@jsm28
Copy link
Copy Markdown
Contributor

@jsm28 jsm28 commented Nov 23, 2025

Add lemmas about altitude, altitudeFoot and height for simplices mapped under an affine isometry or restricted to an affine subspace.

Moves:

  • Submodule.map_orthogonal -> Submodule.map_orthogonal_equiv

Open in Gitpod

…_direction_map`

Add an instance that affine maps send finite-dimensional subspaces to
finite-dimensional subspaces.
…f_injective`

Add a lemma

```lean
lemma comap_map_eq_of_injective (f : P₁ →ᵃ[k] P₂) (hf : Function.Injective f)
    (s : AffineSubspace k P₁) : (s.map f).comap f = s :=
```

deduced from a `GaloisCoinsertion` as is done for such a lemma for
some other subobject types.
Add the lemma

```lean
lemma map_vectorSpan (s : Set P₁) : (vectorSpan k s).map f.linear = vectorSpan k (f '' s) := by
```

analogous to `map_span` which we have for `affineSpan`.
Add lemmas about mapping `orthogonalProjection`, `reflection` and `orthogonalProjectionSpan` under an affine isometry, and in particular mapping from a subspace to the full space.
Add lemmas about `altitude`, `altitudeFoot` and `height` for simplices mapped under an affine isometry or restricted to an affine subspace.
@jsm28 jsm28 added the t-euclidean-geometry Affine and axiomatic geometry label Nov 23, 2025
@github-actions
Copy link
Copy Markdown

github-actions bot commented Nov 23, 2025

PR summary bb55063693

Import changes for modified files

No significant changes to the import graph

Import changes for all files
Files Import difference

Declarations diff

+ AffineMap.map_vectorSpan
+ altitudeFoot_map
+ altitudeFoot_restrict
+ altitude_map
+ altitude_restrict_eq_comap_subtype
+ height_map
+ height_restrict
+ map_altitude_restrict
+ map_orthogonal_equiv

You can run this locally as follows
## summary with just the declaration names:
./scripts/declarations_diff.sh <optional_commit>

## more verbose report:
./scripts/declarations_diff.sh long <optional_commit>

The doc-module for script/declarations_diff.sh contains some details about this script.


No changes to technical debt.

You can run this locally as

./scripts/technical-debt-metrics.sh pr_summary
  • The relative value is the weighted sum of the differences with weight given by the inverse of the current value of the statistic.
  • The absolute value is the relative value divided by the total sum of the inverses of the current values (i.e. the weighted average of the differences).

@mathlib4-dependent-issues-bot mathlib4-dependent-issues-bot added the blocked-by-other-PR This PR depends on another PR (this label is automatically managed by a bot) label Nov 23, 2025
@mathlib4-merge-conflict-bot
Copy link
Copy Markdown
Collaborator

This pull request has conflicts, please merge master and resolve them.

@mathlib4-merge-conflict-bot mathlib4-merge-conflict-bot added the merge-conflict The PR has a merge conflict with master, and needs manual merging. (this label is managed by a bot) label Nov 28, 2025
@github-actions github-actions bot removed the merge-conflict The PR has a merge conflict with master, and needs manual merging. (this label is managed by a bot) label Nov 28, 2025
@mathlib4-merge-conflict-bot mathlib4-merge-conflict-bot added the merge-conflict The PR has a merge conflict with master, and needs manual merging. (this label is managed by a bot) label Dec 11, 2025
@mathlib4-merge-conflict-bot
Copy link
Copy Markdown
Collaborator

This pull request has conflicts, please merge master and resolve them.

@github-actions github-actions bot removed the merge-conflict The PR has a merge conflict with master, and needs manual merging. (this label is managed by a bot) label Dec 11, 2025
@mathlib4-dependent-issues-bot mathlib4-dependent-issues-bot removed the blocked-by-other-PR This PR depends on another PR (this label is automatically managed by a bot) label Dec 19, 2025
Copy link
Copy Markdown
Member

@eric-wieser eric-wieser left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

bors d+

Please check you're happy with the new lemma and deprecation I added before merging

@mathlib-bors
Copy link
Copy Markdown
Contributor

mathlib-bors bot commented Jan 21, 2026

✌️ jsm28 can now approve this pull request. To approve and merge a pull request, simply reply with bors r+. More detailed instructions are available here.

@ghost ghost added the delegated This pull request has been delegated to the PR author (or occasionally another non-maintainer). label Jan 21, 2026
@jsm28
Copy link
Copy Markdown
Contributor Author

jsm28 commented Jan 21, 2026

bors r+

mathlib-bors bot pushed a commit that referenced this pull request Jan 21, 2026
Add lemmas about `altitude`, `altitudeFoot` and `height` for simplices mapped under an affine isometry or restricted to an affine subspace.

Moves:
- `Submodule.map_orthogonal` -> `Submodule.map_orthogonal_equiv`

Co-authored-by: Eric Wieser <[email protected]>
@mathlib-bors
Copy link
Copy Markdown
Contributor

mathlib-bors bot commented Jan 21, 2026

Pull request successfully merged into master.

Build succeeded:

@mathlib-bors mathlib-bors bot changed the title feat(Geometry/Euclidean/Altitude): map and restrict lemmas [Merged by Bors] - feat(Geometry/Euclidean/Altitude): map and restrict lemmas Jan 21, 2026
@mathlib-bors mathlib-bors bot closed this Jan 21, 2026
@jsm28 jsm28 deleted the altitude_map branch January 21, 2026 01:19
goliath-klein pushed a commit to PrParadoxy/mathlib4 that referenced this pull request Jan 24, 2026
…rover-community#32021)

Add lemmas about `altitude`, `altitudeFoot` and `height` for simplices mapped under an affine isometry or restricted to an affine subspace.

Moves:
- `Submodule.map_orthogonal` -> `Submodule.map_orthogonal_equiv`

Co-authored-by: Eric Wieser <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

delegated This pull request has been delegated to the PR author (or occasionally another non-maintainer). t-euclidean-geometry Affine and axiomatic geometry

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants