# How to get sage to NOT calculate

Anonymous

I would like to be able to give some variables a value and have sage show it to me in a pritty format.

For example if i have; a = 2 b = 3 and then I input a+b and sage returns 2+3

Is there a command that let me do this?

edit retag close merge delete

Sort by ยป oldest newest most voted

You can just use strings. Nothing fancy just printing out exactly what you want.

sage: a = 2
sage: b = 3
sage: print str(a)+"+"+str(b)
"2+3"

more

Some methods for symbolic expressions have a hold argument, this allows to prevent simplification of expressions. For example:

sage: a = sqrt(2)
sage: a.parent()
Symbolic Ring
sage: a^2
2
sage: a.power(2)
2
sage: a.power(2, hold=True)
sqrt(2)^2
sage: pi.cos(hold=True)
cos(pi)


It also works for addition in certain cases:

sage: x.parent()
Symbolic Ring
x + x


Unfortunately, it seems not to work for elements of the Symbolic Ring that represent integers:

sage: a = SR(2)
sage: a.parent()
Symbolic Ring
sage: a
2
5

more