home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.cs.yorku.ca 2015
/
ftp.cs.yorku.ca.tar
/
ftp.cs.yorku.ca
/
pub
/
peter
/
SVT
/
arithmetic.simp
next >
Wrap
Text File
|
2000-01-24
|
1KB
|
49 lines
X * 0 ->> 0.
X * 1 ->> X.
M * N ->> P :- P assigned M*N.
X**2 ->> S :- S assigned X*X.
sl(X, 0) ->> X.
sl(X, N) ->> X*sl(N).
sl(0) ->> 1.
sl(N) ->> sl(M)*2 :- M assigned N-1.
X**0 ->> 1.
X**1 ->> X.
0**X ->> 0.
X + 0 ->> X.
X - X ->> 0.
X - 0 ->> X.
X + Y - X ->> Y. X + Y - Y ->> X. X - Y + Y ->> X.
M - N ->> D :- D assigned M - N.
X + Y = 0 ->> X = -Y.
A + Neg ->> A - N :- N assigned -Neg, Neg < 0.
A - Neg ->> A + N :- N assigned -Neg, Neg < 0.
X*K + X ->> X*K1 :- K1 assigned K+1.
M + N ->> S :- S assigned M+N.
(X-Y)*(X+Y) ->> X**2 - Y**2.
(X-Y)*(Y+X) ->> X**2 - Y**2.
(X + Y) * N ->> X*N + P :- P assigned Y*N.
(X + Y) * N ->> X*N + Y*N.
X*M + X*N ->> X*P :- P assigned M + N.
X + M - N ->> X + D :- D assigned M - N.
(X+M)-(X+N) ->> M - N.
-(A-B) ->> B-A.
X - (X - A) ->> A.
X - (Y - Z) ->> X - Y + Z.
X+X ->> X*2.
W + X + (Y - X) ->> W + Y.
X*Y*X ->> Y*X**2.
X**N * Y * X ->> X**(N+1)*Y.
X**N * (Y * X) ->> X**(N+1)*Y.
A**N ->> A**M*A :- number(A), M assigned N - 1.
X**A*X**B ->> X**(A*B).