This is a collection of transcripts from a (now defunct) "Mathematics Corps". I'm not sure what use these have, but I would like to know what the researchers were on whilst writing them.
Symbolic Purification (str → expression)
Creates a new symbol with the given (single character) label
Many operations that work on numbers can also apply to expressions.
The full list is: Addition, Subtraction, Multiplication, Division, Powers, Absolute, Floor, Ceiling, Sine, Cosine, Tangent, Arcsin, Arccos, Arctan, Sinh, Cosh, Tanh, ArcSinh, ArcCosh, ArcTanh, Vector Pack, Logarithms, Modulo, Minimus, Minimus II, Maximus, Maximus II, And, Or, and Not
In the case of operators that work on booleans, 0 is treated as "false" and any non-zero value is treated as "true".
Substitution Exaltation (expr, expr, expr | num → expr)
Substitutes the third expression/number in place of the second expression within the first.
Equality Purification (expr, expr | num → expr)
Creates an expression that equals 1 if the two expressions are equal, and 0 otherwise.
Piecewise Exaltation (expr, expr|num, expr|num → expr)
Creates a piecewise expression that simplifies to the second argument if the first simplifies to 1.0, otherwise simplifies to the third argument.
Derivation Purification (expr, expr → expr)
Takes in an expression and a lone symbol and returns the partial derivative of the expression with respect to the symbol.
Neo's Exaltation (num, num, expr → matrix)
Takes in a width, height and expression and creates a matrix by substituting i & j-values into the expression corresponding to a position in the matrix and putting the result in the matrix.
Parametric Line (vec, expr → entity)
Summons a parametric line at the given position. The expression given will have a t-value (0-1), x/y/z position, and time (w) substituted in and must resolve to a vector on the line.
Parametric Surface (vec, expr → entity)
Summons a parametric surface at the given position. The expression given will have a u&v-value (0-1), x/y/z position, and time (w) substituted in and must resolve to a vector on the surface
Both Parametric objects can be killed by use of the Kill Bit pattern
Constant Imagination (→ complex)
Pushes 0 + 1i to the stack.
Constant Realisation (→ complex)
Pushes 1 + 0i to the stack.
Additive Distillation (complex, complex/num → complex)
Performs Addition, num will be treated as num + 0i.
Subtractive Distillation (complex, complex/num → complex)
Performs Subtraction, num will be treated as num + 0i.
Multiplicative Dstl. (complex, num → complex)
Performs Multiplication
Division Dstl. (complex, num → complex)
Performs Scalar Division.
Length Purification (complex → num)
Pushes the Argument (the length).
Power Distillation (num, complex → complex)
Performs Exponentiation.
Realising Complexities (complex → num)
Pushes the real coefficient.
Imagining Complexities (complex → num)
Pushes the imaginary coefficient.
Conjugation Prfn. (complex → complex)
Negates the imaginary coefficient of the topmost iota
Whilst normal numbers in the form of doubles are extremely useful in all sorts of cases, there come many times where they're just not precise enough.
To this end, longs are used. Despite their limitations (such as only storing integers, and a lower maximum value), longs are still useful due to this granularity, each bit of them can be manipulated freely without worry for imprecision.
Long Reflection (→ long)
Just like with normal numbers, Nature is not so generous as to make this easy for us.
(Details on next page)
Thankfully, what each angle does to the count is very similar to the norm, the only differences being:
a sharp left will shift the bits in the count to the left (effectively doubling them)
a sharp right will shift the bits in the count to the right (effectively halving them*)
* Due to a long's inability to contain a decimal, the value will always be rounded down.
Example: 43L
This pattern pushes 43L: (10 + 10 + 1) * 2 + 1 = 43
Long Purification (num/long → long/num)
Converts between doubles and longs
Always truncates the value when converting to long
Additive Distillation (long, long → long)
Perform Addition
Subtractive Distillation (long, long → long)
Perform Subtraction
Multiplicative Dstl. (long, long → long)
Perform Multiplication
Division Dstl. (long, long → long)
Perform Floored Division
Conjunction Distillation (long, long → long)
Perform Bitwise AND
Disjunction Distillation (long, long → long)
Perform Bitwise OR
Negation Purification (long, long → long)
Perform Bitwise NOT
Exclusion Distillation (long, long → long)
Perform Bitwise XOR
Left Shift Distillation (long, num → long)
Shifts all the bits to the left num times
Logical Right Shift Dstl. (long, num → long)
Shifts all the bits to the right num times
Arithmetic R. Shift Dstl. (long, num → long)
Shifts all the bits to the right num times while preserving the sign
Quaternionic Exal. (num, vec → quaternion)
Pushes a Quaternion with num as the real coefficient and the vector's x, y, & z as the coefficients of i, j & k respectively.
Quaternionic Dntg. (quaternion → num, vec)
Pushes the real coefficient and a vector where the x, y, & z components are the coefficients of i, j, & k respectively.
Quaternionic Rfln.: 1 (→ quaternion)
Pushes 1 + 0i + 0j + 0k to the stack.
Quaternionic Rfln.: i (→ quaternion)
Pushes 0 + 1i + 0j + 0k to the stack.
Quaternionic Rfln: j (→ quaternion)
Pushes 0 + 0i + 1j + 0k to the stack.
Quaternionic Rfln: k (→ quaternion)
Pushes 0 + 0i + 0j + 1k to the stack.
Additive Distillation (qtrn, qtrn → quaternion)
Performs Addition
Subtractive Distillation (qrtn, qtrn → quaternion)
Performs Subtraction
Multiplicative Dstl. (quaternion, num → quaternion)
Performs Multiplication, Scalar if a num & quat are given, Hamiltonian if 2 quaternions are given.
Division Dstl. (quaternion, num → quaternion)
Performs Scalar Division.
Length Purification (quaternion → num)
Pushes the Argument (the length).
Quaterionic Prfn.: 1 (quaternion → num)
Pushes the coefficient of 1.
Quaterionic Prfn.: i (quaternion → num)
Pushes the coefficient of i.
Quaterionic Prfn.: j (quaternion → num)
Pushes the coefficient of j.
Quaterionic Prfn: k (quaternion → num)
Pushes the coefficient of k.
Quaternionic Inverse (quaternion → quat)
Negates the coefficients of i, j, & k
Matrixification (quaternion → matrix)
Pushes a matrix that (should) represent the same rotation as the quaternion
Quaterniation (matrix → quaternion)
Pushes a quaternion that (should) reperesent the same rotation as the matrix
Axis Angle Distillation (vec, num → quaternion)
Pushes a quaternion that reperesents a rotation by the given angle num radias around the given vector.
Hyp. Sine Prfn. (num → num)
Evaluates the hyperbolic sine of the argument
Hyp. Cosine Prfn. (num → num)
Evaluates the hyperbolic sine of the argument
Hyp. Tangent Prfn. (num → num)
Evaluates the hyperbolic sine of the argument
Inv. Hyp. Sine Prfn. (num → num)
Evaluates the hyperbolic sine of the argument
Inv. Hyp. Cosine Prfn. (num → num)
Evaluates the hyperbolic sine of the argument
Inv. Hyp. Tangent Prfn. (num → num)
Evaluates the hyperbolic sine of the argument