Sponsored links: Algebra eBooks
 

Help Index

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

The Maxima on-line user's manual

Algebra Calculator

Search:

Assume Calculator

Assume

Function: assume (<pred_1>, ..., <pred_n>) Adds predicates <pred_1>, ..., <pred_n> to the current context. If a predicate is inconsistent or redundant with the predicates in the current context, it is not added to the context. The context accumulates predicates from each call to assume.

assume(r>0);
assume(d>0);
assume(b>0);
rr(t):=sqrt(r*r+rp*rp-2*r*rp*cos(t));
x(t):=rr(t)/(2*d);
f(t):=1/d*(6/5-2*x(t)^2+3/2*x(t)^3-5*x(t)^5);
expand(f(t)*sin(t));
integrate(expand(f(t)*sin(t)),t);
integrate(f(t)*sin(t),t);

assume returns a list whose elements are the predicates added to the context or the atoms redundant or inconsistent where applicable.

The predicates <pred_1>, ..., <pred_n> can only be expressions with the relational operators < <= equal notequal >= and >. Predicates cannot be literal equality = or literal inequality # expressions, nor can they be predicate functions such as integerp.

Compound predicates of the form <pred_1> and ... and <pred_n> are recognized, but not <pred_1> or ... or <pred_n>. not <pred_k> is recognized if <pred_k> is a relational predicate. Expressions of the form not (<pred_1> and <pred_2>) and not (<pred_1> or <pred_2>) are not recognized.

Maximas deduction mechanism is not very strong; there are many obvious consequences which cannot be determined by is. This is a known weakness.

assume does not handle predicates with complex numbers. If a predicate contains a complex number assume returns inconsistent or redunant.

assume evaluates its arguments.

See also is, facts, forget, context, and declare.

Examples:

          (%i1) assume (xx > 0, yy < -1, zz >= 0);
          (%o1)              [xx > 0, yy < - 1, zz >= 0]
          (%i2) assume (aa < bb and bb < cc);
          (%o2)                  [bb > aa, cc > bb]
          (%i3) facts ();
          (%o3)     [xx > 0, - 1 > yy, zz >= 0, bb > aa, cc > bb]
          (%i4) is (xx > yy);
          (%o4)                         true
          (%i5) is (yy < -yy);
          (%o5)                         true
          (%i6) is (sinh (bb - aa) > 0);
          (%o6)                         true
          (%i7) forget (bb > aa);
          (%o7)                       [bb > aa]
          (%i8) prederror : false;
          (%o8)                         false
          (%i9) is (sinh (bb - aa) > 0);
          (%o9)                        unknown
          (%i10) is (bb^2 < cc^2);
          (%o10)                       unknown

There are also some inexact matches for assume. Try ?? assume to see them.

(%o1)                                true
(%i2) 

Assume Example

Related Examples

assume-cos-expand-integrate

assume (a > 1);

eq1:integrate(1/((1/a...

eq2:expand(eq1);

Calculate

assume-diff-integrate-plot2d
plot2d ([uexa(x),uvar(x),uvarcuad(x)], [x, 0, 1],[legend,"exacta","variacional con función lineal","variacional con función cuadrática"],[style,lines]);

/* [wxMaxima batch fi...

du(x):=diff(u(x),x);

ddu(x):=diff(du(x),x);

Calculate

assume-diff-integrate-plot2d
plot2d ([uexa(x),uvar(x)], [x, 0, 1],[legend,"exacta","variacional"],[style,lines]);

/* [wxMaxima batch fi...

du(x):=diff(u(x),x);

ddu(x):=diff(du(x),x);

Calculate

assume-inf-integrate

assume(t >= 0);

integrate((t^2*(2*x+1...

Calculate

assume-diff-exp-integrate-pade-taylor

assume(a>1);

assume(T>0);

assume(b<0);

Calculate

assume-binomial-simpsum

assume(h > 10, n&l...

? simpsum;

sum( binomial(2*h,h+i...

Calculate

assume-linsolve

assume(a>0);

assume(a<10);

assume(a, "integer");

Calculate

assume-at-kill-subst

kill(all);

assume(xn>0);

D:250;

Calculate

assume-declare-expand-stirling2-sum

combn(n,k):= n!/(k!*(...

stir2(n,k):= (1/k!)*s...

declare(n, integer);

Calculate