Spatial Arithmetic Method of Integer Factorization
OwnerSherwin Haninventor
Life of this patent
Estimating the term…
Abstract
A computer system represents numbers as three-dimensional relations, which may be represented as collections of points in three-dimensional space. The three-dimensional representations may use values of +1 and −1 as complements of each other to overcome limitations of binary representations which use values of 1 and 0 to represent numbers. The computer system may use such three-dimensional relations to perform arithmetic and to factorize numbers.
Claims15
A method performed by at least one computer processor executing computer program instructions stored on a non-transitory computer-readable medium, the method comprising:
- (A) selecting an order of x, y, and z dimensions;
- (B) representing a product P as a binary number having a first plurality of bits;
- (C) creating and storing a mapping of the first plurality of bits to the ordered x, y, and z dimensions in a first repeating pattern;
- (E) obtaining a complement C of the product P,
- wherein the complement C includes a second plurality of bits;
- wherein C=1n2−P;
- wherein B is equal to the number of bits in P;
- wherein n=(B/2) if B is even;
- wherein n=(B+1)/2 if B is odd;
- wherein 1n2 is a binary number of length n consisting solely of 1s;
- (F) creating and storing a mapping of the second plurality of bits to the ordered x, y, and z dimensions in a second repeating pattern;
- (G) constructing an empty diagonal form representation of partial products of a first and second factor of the product P;
- (H) recursively filling the diagonal form representation with bits based on the product P and the divider D;
- and
- (I) identifying the first and second factor of the product P based on the filled diagonal form representation.
A non-transitory computer-readable medium comprising computer program instructions executable by at least one computer processor to perform a method, the method comprising:
- (A) selecting an order of x, y, and z dimensions;
- (B) representing a product P as a binary number having a first plurality of bits;
- (C) creating and storing a mapping of the first plurality of bits to the ordered x, y, and z dimensions in a first repeating pattern;
- (E) obtaining a complement C of the product P,
- wherein the complement C includes a second plurality of bits;
- wherein C=1n2−P;
- wherein B is equal to the number of bits in P;
- wherein n=(B/2) if B is even;
- wherein n=(B+1)/2 if B is odd;
- wherein 1n2 is a binary number of length n consisting solely of 1s;
- (F) creating and storing a mapping of the second plurality of bits to the ordered x, y, and z dimensions in a second repeating pattern;
- (G) constructing an empty diagonal form representation of partial products of a first and second factor of the product P;
- (H) recursively filling the diagonal form representation with bits based on the product P and the divider D;
- and
- (I) identifying the first and second factor of the product P based on the filled diagonal form representation.
A method performed by at least one computer processor executing computer program instructions stored on a non-transitory computer-readable medium, the method comprising:
- (A) selecting an order of x, y, and z dimensions;
- (B) representing a number N as a binary number having a first plurality of bits;
- (C) creating and storing a mapping of the first plurality of bits to the ordered x, y, and z dimensions in a first repeating pattern;
- (D) creating and storing a three-dimensional representation of the binary number based on the mapping of the first plurality of bits to the ordered x, y, and z dimensions in the first repeating pattern;
- and
- (E) performing an arithmetic operation on the binary number based on the three-dimensional representation of the binary number.
A non-transitory computer-readable medium comprising computer program instructions executable by at least one computer processor to perform a method, the method comprising:
- (A) selecting an order of x, y, and z dimensions;
- (B) representing a number N as a binary number having a first plurality of bits;
- (C) creating and storing a mapping of the first plurality of bits to the ordered x, y, and z dimensions in a first repeating pattern;
- (D) creating and storing a three-dimensional representation of the binary number based on the mapping of the first plurality of bits to the ordered x, y, and z dimensions in the first repeating pattern;
- and
- (E) performing an arithmetic operation on the binary number based on the three-dimensional representation of the binary number.
Dependencies are inferred from the claim text.