ISL -> isl
[linpy.git] / linpy / linexprs.py
index c100698..961502d 100644 (file)
@@ -339,7 +339,7 @@ class LinExpr:
         Create an expression from a string. Raise SyntaxError if the string is
         not properly formatted.
         """
-        # add implicit multiplication operators, e.g. '5x' -> '5*x'
+        # Add implicit multiplication operators, e.g. '5x' -> '5*x'.
         string = LinExpr._RE_NUM_VAR.sub(r'\1*\2', string)
         tree = ast.parse(string, 'eval')
         expr = cls._fromast(tree)
@@ -405,7 +405,7 @@ class LinExpr:
     @classmethod
     def fromsympy(cls, expr):
         """
-        Create a linear expression from a sympy expression. Raise TypeError is
+        Create a linear expression from a SymPy expression. Raise TypeError is
         the sympy expression is not linear.
         """
         import sympy
@@ -416,7 +416,8 @@ class LinExpr:
             if symbol == sympy.S.One:
                 constant = coefficient
             elif isinstance(symbol, sympy.Dummy):
-                # we cannot properly convert dummy symbols
+                # We cannot properly convert dummy symbols with respect to
+                # symbol equalities.
                 raise TypeError('cannot convert dummy symbols')
             elif isinstance(symbol, sympy.Symbol):
                 symbol = Symbol(symbol.name)
@@ -430,7 +431,7 @@ class LinExpr:
 
     def tosympy(self):
         """
-        Convert the linear expression to a sympy expression.
+        Convert the linear expression to a SymPy expression.
         """
         import sympy
         expr = 0
@@ -477,6 +478,8 @@ class Symbol(LinExpr):
 
     @property
     def _coefficients(self):
+        # This is not implemented as an attribute, because __hash__ is not
+        # callable in __new__ in class Dummy.
         return {self: Fraction(1)}
 
     @property