Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ConvexSet_base: Add affine_hull, affine_hull_projection, an_affine_basis #31993

Closed
mkoeppe opened this issue Jun 16, 2021 · 39 comments
Closed

ConvexSet_base: Add affine_hull, affine_hull_projection, an_affine_basis #31993

mkoeppe opened this issue Jun 16, 2021 · 39 comments

Comments

@mkoeppe
Copy link
Contributor

mkoeppe commented Jun 16, 2021

We generalize an_affine_basis, affine_hull, affine_hull_projection, and AffineHullProjectionData (from #27366) from Polyhedron_base to ConvexSet_base.

To provide the default implementation of affine_hull_projection, this ticket also adds the Polyhedron_base methods linear_transformation and translation to the ConvexSet_base ABC, as well as dilation for completeness.

Depends on #31963
Depends on #32013

CC: @kliem

Component: geometry

Author: Matthias Koeppe

Branch/Commit: b909bdd

Reviewer: Jonathan Kliem

Issue created by migration from https://trac.sagemath.org/ticket/31993

@mkoeppe mkoeppe added this to the sage-9.4 milestone Jun 16, 2021
@mkoeppe
Copy link
Contributor Author

mkoeppe commented Jul 8, 2021

Dependencies: #31963

@mkoeppe
Copy link
Contributor Author

mkoeppe commented Jul 9, 2021

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 9, 2021

Commit: 0226965

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 9, 2021

Branch pushed to git repo; I updated commit sha1. New commits:

2a96f18sage.geometry: Import cached_method from a more specific module
0226965WIP ConvexSet_base.affine_hull_projection

@mkoeppe
Copy link
Contributor Author

mkoeppe commented Jul 9, 2021

comment:4

ConvexRationalPolyhedralCone.solid_restriction is similar to affine_hull_projection

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 10, 2021

Branch pushed to git repo; I updated commit sha1. New commits:

23b08cdRelativeInterior.an_affine_basis: New; relax _test_affine_basis to accept closure points

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 10, 2021

Changed commit from 0226965 to 23b08cd

@mkoeppe
Copy link
Contributor Author

mkoeppe commented Jul 10, 2021

comment:6

Replying to @mkoeppe:

ConvexRationalPolyhedralCone.solid_restriction is similar to affine_hull_projection

... best taken care of in #30172, which adds a cone ABC

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 10, 2021

Branch pushed to git repo; I updated commit sha1. New commits:

0e2965fPolyhedron.affine_hull_projection: Refactor as ConvexSet_base.affine_hull_projection and Polyhedron._affine_hull_projection

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 10, 2021

Changed commit from 23b08cd to 0e2965f

@mkoeppe
Copy link
Contributor Author

mkoeppe commented Jul 10, 2021

Author: Matthias Koeppe

@mkoeppe

This comment has been minimized.

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 11, 2021

Changed commit from 0e2965f to 837b7f5

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 11, 2021

Branch pushed to git repo; I updated commit sha1. New commits:

837b7f5RelativeInterior.{dilation,linear_transformation,translation}: New

@mkoeppe

This comment has been minimized.

@kliem
Copy link
Contributor

kliem commented Jul 12, 2021

comment:11

Coverage needs work yet.

-geometry/relative_interior.py: 100.0% (14 of 14)
+geometry/relative_interior.py: 83.3% (15 of 18)

Probably three stupid tests, testing abstract methods raise a NotImplementedError.

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 12, 2021

Changed commit from 837b7f5 to 535e412

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 12, 2021

Branch pushed to git repo; I updated commit sha1. New commits:

579303cConvexSet_base.dilation: Add default implementation, test
535e412ConvexSet_base.linear_transformation, translation: Add tests

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 13, 2021

Changed commit from 535e412 to e0a1884

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 13, 2021

Branch pushed to git repo; I updated commit sha1. New commits:

e0a1884ConvexSet_base._affine_hull_projection: Add doctest

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 13, 2021

Changed commit from e0a1884 to 9190a71

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 13, 2021

Branch pushed to git repo; I updated commit sha1. New commits:

9190a71RelativeInterior: Add missing doctests

@mkoeppe mkoeppe modified the milestones: sage-9.4, sage-9.5 Jul 19, 2021
@kliem
Copy link
Contributor

kliem commented Jul 20, 2021

comment:20

Merge conflict.

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 20, 2021

Changed commit from 3a406bd to a8d7cbd

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 20, 2021

Branch pushed to git repo; I updated commit sha1. New commits:

a8d7cbdMerge tag '9.4.beta5' into t/31993/convexset_base__add_affine_hull__affine_hull_projection__an_affine_basis

@mkoeppe
Copy link
Contributor Author

mkoeppe commented Jul 20, 2021

comment:23

Actually would be good to get it into 9.4 so that we don't have to bother with deprecation for the changes to AffineHullProjectionData

@kliem
Copy link
Contributor

kliem commented Jul 22, 2021

comment:24

I think things are fine.

Waiting for a patchbot, seems hopeless: https://patchbot.sagemath.org/ticket/0/

Coverage is good. I'm going to run sage -t --all on this ticket. Ping me, if I don't report in the next 24 hours.

@kliem
Copy link
Contributor

kliem commented Jul 22, 2021

Reviewer: Jonathan Kliem

@kliem
Copy link
Contributor

kliem commented Jul 22, 2021

comment:25

I'm getting those failures

sage -t --random-seed=0 src/sage/misc/sagedoc.py  # 1 doctest failed
sage -t --random-seed=0 src/sage/tests/cmdline.py  # 5 doctests failed
sage -t --random-seed=0 src/sage/modular/local_comp/local_comp.py  # 1 doctest failed
sage -t --random-seed=0 src/sage/rings/number_field/number_field_ideal.py  # 1 doctest failed   

and nothing is related to this ticket, but I also get failures on develop.

@kliem
Copy link
Contributor

kliem commented Jul 22, 2021

comment:26

LGTM.

@mkoeppe
Copy link
Contributor Author

mkoeppe commented Jul 22, 2021

comment:27

Thanks!

@vbraun
Copy link
Member

vbraun commented Jul 23, 2021

comment:28

Merge conflict

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 23, 2021

Branch pushed to git repo; I updated commit sha1. Last 10 new commits:

bc26d4f{LatticePolytopeClass, ConvexRationalPolyhedralCone._some_elements_: New
e768463Merge #31877
cb93c99RealSet: Inherit from Set_base, Set_boolean_operators, Set_add_sub_operators
3a6f9bdRealSet.symmetric_difference: New
08c52c2Set_base._test_as_set_object: Skip _test_pickling
200b1efMerge tag '9.4.beta4' into t/32013/initialize_a_set_from_a_convexset_base_instance
63c2cfeConvexSet_base._test_convex_set: Do not test _test_as_set_object here
55240bbMerge #30473
fff2a79src/sage/sets/set.py: Fix docstring markup
b909bddMerge #32013

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 23, 2021

Changed commit from a8d7cbd to b909bdd

@mkoeppe
Copy link
Contributor Author

mkoeppe commented Jul 23, 2021

Changed dependencies from #31963 to #31963, #32013

@vbraun
Copy link
Member

vbraun commented Jul 25, 2021

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants