Dear Stefan,
as others already have pointed out, for Axiom, your question is not
really well posed.
In Axiom
if x<10 then 2*x else 5*x^2
is *not* an expression (as you might know it from other untyped CAS like
Mathematica or Maple), but rather a programming language construct. In
other words, if Axiom sees this, it is evaluated. So the result is
either 2*x or 5*x^2 depending on the (boolean) outcome of the evaluation
of x<10.
I think, Bill suggested to use something like InputForm. There it would
be possible to represent an if-expression unevaluated.
But you should rather say what you actually want (it's not the same what
you expect).
In order for us to suggest you a proper way to handle your use case, you
should tell us why you want a piecewise function and (more important)
what you later want to do with that function.
Until we have that information, everything would be just digging in the
dark.
Ralf
On 04/30/2011 08:40 PM, Stefan Karrmann wrote:
Dear all,
I'm new to axiom and have a problem with piecewise functions.
test1 (x | x< 10) == 2*x
test1 (x | x< 10) == 5*x^2
test1
->
test1 (x | x< 10) == 2x
test1 (x | ^ x< 10) == 5x
Type: FunctionCalled
test1 y
->
2
5y
I expected something like (if y< 10 then 2*y else 5*y**2).
How is it possible to pass a Variable to a piecewise function respecting
the pieces?
PS: Using a block and => or explicit if-then-else does not help.
_______________________________________________
Axiom-math mailing list
Axiom-math@nongnu.org
https://lists.nongnu.org/mailman/listinfo/axiom-math