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

ConditionSet #32089

Closed
mkoeppe opened this issue Jun 30, 2021 · 65 comments
Closed

ConditionSet #32089

mkoeppe opened this issue Jun 30, 2021 · 65 comments

Comments

@mkoeppe
Copy link
Contributor

mkoeppe commented Jun 30, 2021

(from #24176).

We define a class ConditionSet for subsets of elements given by a logical "and" of finitely many predicates.

If the given predicates (condition) are symbolic, a ConditionSet can be converted to a SymPy ConditionSet; the _sympy_ method falls back to creating a SageSet wrapper otherwise.

As an application, we provide Chart and RealChart with a method codomain.

Depends on #32013
Depends on #32015

CC: @tscrim @egourgoulhon

Component: symbolics

Author: Matthias Koeppe

Branch/Commit: f135a05

Reviewer: Travis Scrimshaw

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

@mkoeppe mkoeppe added this to the sage-9.4 milestone Jun 30, 2021
@mkoeppe

This comment has been minimized.

@mkoeppe
Copy link
Contributor Author

mkoeppe commented Jun 30, 2021

Author: Matthias Koeppe

@mkoeppe mkoeppe changed the title ConditionSet_callable_symbolic_expression ConditionSet, ConditionSet_callable_symbolic_expression Jun 30, 2021
@mkoeppe
Copy link
Contributor Author

mkoeppe commented Jun 30, 2021

@mkoeppe
Copy link
Contributor Author

mkoeppe commented Jun 30, 2021

Last 10 new commits:

dbdfc06InternalRealInterval, RealSet: Remove extra whitespace in latex, add documentation
7f56338PiecewiseFunction: Adjust doctests for changed RealSet repr
8abdc8bsrc/sage/functions/piecewise.py: Add coding header
5b0f85dMerge #31880
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
4f4a964Merge #32013
2d5d4b9sage.sets.condition_set: New

@mkoeppe
Copy link
Contributor Author

mkoeppe commented Jun 30, 2021

Commit: 2d5d4b9

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 1, 2021

Changed commit from 2d5d4b9 to 8c2cce8

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 1, 2021

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

8c2cce8ConditionSet: Complete basic implementation

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 1, 2021

Changed commit from 8c2cce8 to 1267737

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 1, 2021

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

1267737ConditionSet: Add example

@mkoeppe
Copy link
Contributor Author

mkoeppe commented Jul 1, 2021

comment:6

I'm going to extend it to lists of several conditions

@mkoeppe
Copy link
Contributor Author

mkoeppe commented Jul 1, 2021

Changed dependencies from #32013 to #31931, #32013

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 1, 2021

Changed commit from 1267737 to 44f7293

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 1, 2021

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

6e5cac6sage.interfaces.sympy_wrapper, Sets.ParentMethods._sympy_: New
3cac256sage.interfaces.sympy_wrapper: Add doctests
eef604eSageSet: Finish docstrings; handle symbolic _contains
2baae58Sets.ParentMethods._sympy_: Call sympy_init
153b3e5Merge #31938
c06c965sage.interfaces.sympy_wrapper.SageSet: Add another doctest
f535127Merge #31938
32cdd5cMerge #31877
36e742dMerge #31931
44f7293ConditionSet: Accept several predicates

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 1, 2021

Changed commit from 44f7293 to 720bed2

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 1, 2021

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

4e604ecRealSet.interval: New
48ac8e9Chart._check_restrictions: Simplify code by using any/all
720bed2{Chart,RealChart}.codomain: New

@mkoeppe

This comment has been minimized.

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 1, 2021

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

200b1efMerge tag '9.4.beta4' into t/32013/initialize_a_set_from_a_convexset_base_instance
1c13f2dMerge #32013

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 1, 2021

Changed commit from 720bed2 to 1c13f2d

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 1, 2021

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

b31b2c7ConditionSet: Support generator notation, add examples

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 1, 2021

Changed commit from 1c13f2d to b31b2c7

@mkoeppe
Copy link
Contributor Author

mkoeppe commented Jul 1, 2021

Changed dependencies from #31931, #32013 to #31931, #32013, #32015

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 1, 2021

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

91b0b16Merge #32013
789dc05Merge #31931
3dd50e4sage.sets.set.Set_object: Add `_sympy_` methods to subclasses
7f35aeeMerge #32013
bb67e11Merge #32015

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 1, 2021

Changed commit from b31b2c7 to bb67e11

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 2, 2021

Changed commit from bb67e11 to eb975f3

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 2, 2021

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

eb975f3ConditionSet: Remove unnecessary subclass, add examples

@mkoeppe
Copy link
Contributor Author

mkoeppe commented Jul 9, 2021

comment:38

Thanks!

@vbraun
Copy link
Member

vbraun commented Jul 9, 2021

comment:39
[docpdf] Underfull \hbox (badness 10000) in paragraph at lines 5889--5891
[docpdf] \T1/txtt/m/sl/10 set.Set_boolean_operators\T1/qtm/m/n/10 , \T1/txtt/m/sl/10 sag
[docpdf] e.sets.set.Set_add_sub_operators\T1/qtm/m/n/10 , [][]\T1/txtt/m/n/10 sage.struc
[docpdf] ture.
[docpdf] ! Missing $ inserted.
[docpdf] <inserted text> 
[docpdf]                 $
[docpdf] l.5923 ...us{}even at 0x...\PYGZgt{}(x) \PYGZcb{}}
[docpdf]                                                   
[docpdf] ? 
[docpdf] ! Emergency stop.

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 10, 2021

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

daeb91esrc/sage/sets/set.py: Fix docstring markup
2cf2199Merge #32015
1eb270asrc/sage/docs/conf.py: Add more \ensuremath to \DeclareUnicodeCharacter

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 10, 2021

Changed commit from 69d045a to 1eb270a

@tscrim
Copy link
Collaborator

tscrim commented Jul 10, 2021

comment:42

LGTM.

@mkoeppe
Copy link
Contributor Author

mkoeppe commented Jul 10, 2021

comment:43

Thanks.

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 11, 2021

Changed commit from 1eb270a to 141ecde

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 11, 2021

Branch pushed to git repo; I updated commit sha1 and set ticket back to needs_review. New commits:

2682469src/sage/interfaces/sympy_wrapper.py: Use Family, not Set, in doctests to make sure that the SageSet wrapper is actually used
753babbSet_object_enumerated._sympy_: Translate empty sets to EmptySet
141ecdeMerge #32015

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 13, 2021

Changed commit from 141ecde to f135a05

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Jul 13, 2021

Branch pushed to git repo; I updated commit sha1 and set ticket back to needs_review. Last 10 new commits:

f85e710Chart: in the description of the argument coord_restrictions, replace all instances of 'restrictions' by 'coord_restrictions'
80f6195Chart, RealChart: In class docstring, order arguments as they appear in __classcall__/__init__
a39e6fcDiffChart, RealDiffChart: In class docstring, order arguments as they appear in __classcall__/__init__; add description of argument coord_restrictions
cdf20b0TopologicalManifold.chart: Add description of argument coord_restrictions
741fd2eTopologicalManifold.chart: Add an example of using coord_restrictions
bf62543Merge branch 't/32089/conditionset__conditionset_callable_symbolic_expression' into t/32009/eliminate_direct_use_of_the_chart__domain_attribute
141ccb5Merge #32009
c89c697Merge #32102
451f5cfSets.ParentMethods: Update doctest
f135a05Merge #32015

@vbraun
Copy link
Member

vbraun commented Jul 23, 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