MathGroup Archive 1990

[Date Index] [Thread Index] [Author Index]

Search the Archive

mathematical relations

  • To: mathgroup at ncsa.uiuc.edu
  • Subject: mathematical relations
  • From: uunet!finsun.CSC.FI!pjanhune
  • Date: Thu, 7 Jun 90 15:45:16 +0300

It seems that Mathematica's ability to deal with relations
(inequalities etc.) is not as good as it could be. There have
been a large number of mailings about this, too. So I coded the
very basic mathematical relations and put them to package Declare.m.
A demonstration is found in file DeclareDemo.m. The files are
in the Symbolic/New directory and are ready to ftp. Typical usage:

<<Declare.m

Declare[{x,y}, Real]; Declare[n,Integer]; Declare[m,Odd]

EvenQ[(2n-5)(m+3)]
  -> True
NonNegative[x^2 + y^2]
  -> True
Sqrt[x^2]
  -> Abs[x]
etc..

The package Declare.m is not trying to be a complete implementation
of relations, but should at least demonstrate that it IS possible to
teach relations to Mathematica. Extending and optimizing the package
would require more knowledge of the internals of Mathematica. Feel free
to experiment and modify the package, which is NOT GUARANTEED to be
bug-free.

Pekka Janhunen
Finnish Meteorological Institute, Geophysics Dept.

P.S. This package also provides an answer to David Marchette: Do

<<Declare.m
Declare[s,Positive]
Integrate[Exp[-(x/s)^2/2]/(Sqrt[2 Pi] s),{x,-Infinity,Infinity}]
  -> 1
The example with a product of two Gaussians is not simplified even now,
but calling % /. a_^b_ :> Factor[a]^b  cures in this case.



  • Prev by Date: debugPoint
  • Next by Date: Re: Gaussians
  • Previous by thread: debugPoint
  • Next by thread: Does anyone have an apparent fix for this mathematica problem?