Initialisation du repository de Beta
This commit is contained in:
commit
14985f6dbb
9469 changed files with 1903273 additions and 0 deletions
|
|
@ -0,0 +1,32 @@
|
|||
from sympy.strategies.tools import subs, typed
|
||||
from sympy.strategies.rl import rm_id
|
||||
from sympy.core.basic import Basic
|
||||
from sympy.core.singleton import S
|
||||
|
||||
|
||||
def test_subs():
|
||||
from sympy.core.symbol import symbols
|
||||
a, b, c, d, e, f = symbols('a,b,c,d,e,f')
|
||||
mapping = {a: d, d: a, Basic(e): Basic(f)}
|
||||
expr = Basic(a, Basic(b, c), Basic(d, Basic(e)))
|
||||
result = Basic(d, Basic(b, c), Basic(a, Basic(f)))
|
||||
assert subs(mapping)(expr) == result
|
||||
|
||||
|
||||
def test_subs_empty():
|
||||
assert subs({})(Basic(S(1), S(2))) == Basic(S(1), S(2))
|
||||
|
||||
|
||||
def test_typed():
|
||||
class A(Basic):
|
||||
pass
|
||||
|
||||
class B(Basic):
|
||||
pass
|
||||
|
||||
rmzeros = rm_id(lambda x: x == S(0))
|
||||
rmones = rm_id(lambda x: x == S(1))
|
||||
remove_something = typed({A: rmzeros, B: rmones})
|
||||
|
||||
assert remove_something(A(S(0), S(1))) == A(S(1))
|
||||
assert remove_something(B(S(0), S(1))) == B(S(0))
|
||||
Loading…
Add table
Add a link
Reference in a new issue