Skip to content
Snippets Groups Projects

Remove floor, ceiling for integer symbols

6 files
+ 241
3
Compare changes
  • Side-by-side
  • Inline
Files
6
@@ -362,6 +362,34 @@ class AssignmentCollection:
@@ -362,6 +362,34 @@ class AssignmentCollection:
self.sub_expressions = [Assignment(k, v)
self.sub_expressions = [Assignment(k, v)
for k, v in sub_expressions_dict.items()]
for k, v in sub_expressions_dict.items()]
 
def find(self, *args, **kwargs):
 
return set.union(
 
*[a.find(*args, **kwargs) for a in self.all_assignments]
 
)
 
 
def match(self, *args, **kwargs):
 
rtn = {}
 
for a in self.all_assignments:
 
partial_result = a.match(*args, **kwargs)
 
if partial_result:
 
rtn.update(partial_result)
 
return rtn
 
 
def subs(self, *args, **kwargs):
 
return AssignmentCollection(
 
main_assignments=[a.subs(*args, **kwargs) for a in self.main_assignments],
 
subexpressions=[a.subs(*args, **kwargs) for a in self.subexpressions]
 
)
 
 
def replace(self, *args, **kwargs):
 
return AssignmentCollection(
 
main_assignments=[a.replace(*args, **kwargs) for a in self.main_assignments],
 
subexpressions=[a.replace(*args, **kwargs) for a in self.subexpressions]
 
)
 
 
def __eq__(self, other):
 
return set(self.all_assignments) == set(other.all_assignments)
 
class SymbolGen:
class SymbolGen:
"""Default symbol generator producing number symbols ζ_0, ζ_1, ..."""
"""Default symbol generator producing number symbols ζ_0, ζ_1, ..."""
Loading