This is the main file that is loaded when using this program, it includes the other files. This file contains the main function calls to be used by the user.
This function takes a prefix notation function and peforms the derivative on it in respect to the given variable.
-
fun : A function, in prefix notation, that can have a derivative taken of it.
-
x : The variable that the derivative is being taken in.
A function, in prefix notation, that corresponds to the derivative of the given function, in respect to the second argument; or nil.
This function takes standared mathematical input and simplifies it before taking the derivative of it in respect to x and simplifies the result. This is performed by using the converter of infix_to_prefix and the d/d functions.
- u : A function that can have a derivative taken of it.
A simplified function that corresponds to the derivative of the given function, in respect to x, in infix notation; or the statement: "I was unable to do that."
George Cook
0.6.0
George Cook
1.0.0
This file contains functions for converting between infix and prefix notation (in both directions).
This function converts an infix term into a prefix term.
- fun : The function to be converted.
infix_to_prefix '(7 ^ 5) ;-> (^ 7 5) infix_to_prefix '(ln (4 * (cos (45)))) ;-> (* 4 (cos (45)))
This file contains implemnentations of mathematical functions that may not be part of the compiler. It relies on the definition of expt, exp, log, cos, sin, tan, acos, asin, and atan. It also includes variables used by multiple files, and posible the user (such as e).
These are the symbols that are treated as variables within the implamented functions.
'(s t v w x y z)
These are the symbols that are used as variables in the match function.
'(g m o q r)
The base for the natural log (ln).
(exp 1) ;-> 2.7182817
This is used to represent infinity within the implamented functions.
'inf
This is used to represent not a number.
'nan
This serves as a shortcut to replace expt. This is useful because it is more natrual for a mathematician and it can be converted to infix notation.
-
base : The base of the exponentiation.
-
exponent : The power that the base is being rased to.
(^ 2 3) ;= 8
This file holds the rules that are applied by the simplification function. These rules do not just have to be for mathematical simplification, but for a conversition of one term to another. This fact is seen by using the second ruleset for computing a laplace_transform transform. Rules are lists of individual rules, where an individule rule is a set with a given and what it changes into (left and right).
This set of rules are used in the simplification of symbolic terms. Simplification has some circular rules that make it necessary to decide on one and arbitrarily call it simpler than the other. These will be listed below with the right one being what will be seen in the output of the program.
: log(x) * y = log(x^y)
These rules are made based on a standared laplace_transform transform table.
This file holds useful functions that are needed to perform other operations, but do not fit in the other files.
George Cook
1.0.0
This function works like member, but looks into sublists
-
lst : the list to be searched
-
target : the item you are looking for
Either T or NIL
Dr. Baird
This replaces all instances of old with new in the provided list.
-
old : the value that is being matched to in the list
-
new : the value that replaces old in the list
-
lst : the list that is being modified
The modified list.
George Cook
This function checks to see if the inputed number is even. If a non-number is entered it returns nil.
1.0.0
- num : The number to be checked to see if it is even.
This returns T if it is even and nil if it is odd or not a number.