Skip to content

Releases: isaacphysics/equality-checker

v0.6.0

31 May 13:10
Compare
Choose a tag to compare

Changelog:

  • Ignore symbols prefixed with an underscore when processing provided custom symbols. This allows metasymbols to be included without having to remove them before passing to the checker.

v0.5.0

31 May 13:08
Compare
Choose a tag to compare

Changelog:

  • Allow numeric input to include decimal points without a number before them: e.g. .5 as well as 0.5.
  • Prevent attempts to parse empty strings.

v0.4.0

20 Feb 15:43
Compare
Choose a tag to compare

Changelog:

  • Improved support for custom symbols; functions and operators can be passed without breaking anything, and those which are not valid Python variables will be (silently) ignored. This allows functions and operators relevant to an expression/equation to be included without breaking anything.
  • Update dependencies, notably sympy from 1.0 to 1.1.1.
  • Fix an issue with complex infinity in numeric checking code.

v0.3.0

29 Jan 16:30
Compare
Choose a tag to compare

Changelog:

  • Much more effectively sanitise untrusted input, especially Unicode input and Python keywords.
  • Allow diff(...) syntax for derivatives.
  • Allow Mathematica style function names: Sin(...), Cos(...) etc.
  • Allow function exponentiation: cos**2(x) for cos(x)**2 for instance.

v0.2.0

10 Jul 15:29
Compare
Choose a tag to compare

Changelog:

  • Split out the parsing into another file and use a slightly modified version of the SymPy parsing code to prevent evaluation of function arguments. This allows the parser to distinguish cos(x) and cos(-x) for instance.
  • Remove support for factorials until better integration with numeric testing can be added.
  • Add clearer README and LICENSE files.
  • Deprecate Vagrant requirement, move directly to Docker.

v0.1.0

10 Jul 15:25
Compare
Choose a tag to compare

First production ready release, ran on live server from October 2016 to June 2017.

Supported Functions and Operations

Standard Operations

  • Addition (+)
  • Multiplication (*, implicitly xy, implicitly x y)
  • Exponentiation (**, ^)
  • Unary Negation (-)

Where division and subtraction are expressible in terms of the above

Numbers

  • Integers (0, 1, -1, ...)
  • Decimals (0.123, ...)
  • Rational Numbers (1/2, ...)

Trigonometic Functions

  • Standard trig functions (sin(), cos(), tan())
  • Inverse trig functions (arcsin(), arccos(), arctan())
  • Reciprocal trig functions (cosec(), sec(), cot())
  • Inverse reciprocal trig functions (arccosec(), arcsec(), arccot())
  • Hyperbolic trig functions (sinh(), cosh(), tanh())
  • Inverse hyperbolic trig functions (arcsinh(), arccosh(), arctanh())
  • Reciprocal hyperbolic trig functions (cosech(), sech(), coth())

No inverse reciprocal hyperbolic trig functions

Logarithms and Exponentials

  • Exponential function (exp())
  • Natural logarithm (ln(), log())
  • Logs to other bases (log(x, base))

Other Basic Functions

  • Square root (sqrt())
  • Modulus (abs())

Calculus

  • Derivatives (Derivative(y, x), Derivative(y, x, 2), Derivative(y, x, x), ...)

Equations and Inequalities

  • Equations (x == y)
  • Inequalities (x < y)