Fault tolerant and combinatorial software environment system, method and medium
Abstract
A fault tolerant software environment, in which various program components (e.g., portions of computer programs, applications, etc) are objectized into entities represented by “codons.” This allows for improper syntax to occur, enabling, for example, combinatorial operations such as genetic programming. The present invention also contemplates such features as the ability to probabilistically execute individual codons, to switch between treating information as executable code or as data (or passing over it), provides that the individual codons can be tagged so that additional information can be associated with them, and provides for tagging of the stack.
Claims
exact text as granted — not AI-modified1 - 45 . (canceled)
46 . A computer-based method for processing a plurality of codons, comprising:
a. determining whether an expected number and/or type of argument(s) for said one of said codons are available to said one of said codons; b. where said expected number and/or type of argument(s) are not available, continuing to process said codons by performing one of:
(1) generating randomly said expected number and/or type of argument(s) that are not available, and
(2) skipping said one of said codons.
47 . The computer-based method of claim 46 , further comprising accessing an input stack to determine whether said argument(s) are available to said one of said codons.
48 . The computer-based method of claim 46 , further comprising determining a result of processing said plurality of codons, wherein a graphical and/or textual representation of the result is displayed.
49 . The computer-based method of claim 46 , further comprising remapping the functionality of said one of said codons being processed to that of a second codon, upon receipt of an indication that said one of said codons being processed is to be remapped.
50 . A computer-based method for generating a new construct, comprising:
a. combining two or more constructs, or portions thereof, to form the new construct, wherein each of the constructs contains one or more codons; and b. processing codons in said new construct to determine a result of said new construct, comprising:
(i) obtaining a next codon to be processed from said new construct;
(ii) determining whether an expected number and/or type of argument(s) for said next codon are available to said next codon;
(iii) where said expected number and/or type of argument(s) are not available, continuing processing said codons in said new construct by performing one of:
(1) generating randomly said expected number and/or type of argument(s) that are not available, and
(2) skipping said codon of said step (i);
(iv) returning to said step (i) upon determining that there exist additional codons in said new construct to be processed.
51 . The computer-based method of claim 50 , further comprising adding said new construct to a group of available constructs.
52 . The computer-based method of claim 51 , when said result of said new construct is within a pre-defined threshold amount of a target goal, further comprising designating said new construct as a construct to be accessed in its entirety during subsequent accesses of said group of available constructs.
53 . The computer-based method of claim 50 , further comprising accessing only those of said two or more constructs, or portions thereof, that produce a complete functional result.
54 . The computer-based method of claim 50 , further comprising remapping the functionality of said next codon being processed to that of a second codon, upon receipt of an indication that said next codon being processed is to be remapped.
55 . The computer-based method of claim 50 , wherein multiple ones of said two or more constructs are accessed and processed in parallel using at least two separate computer systems in a distributed computing environment.
56 . The computer-based method of claim 55 , wherein said distributed computing environment utilizes the Internet.
57 . The computer-based method of claim 50 , further comprising accessing an input stack to determine whether said argument(s) are available to said next codon.
58 . A computer-based method for recombining codons within a fault tolerant, recombinatorial computing environment, comprising:
a. generating a program comprised of codons; b. evaluating and/or executing codons in said program, the step (for each codon to be evaluated and/or executed in said program) comprising:
(i) determining whether an expected number and/or type of argument(s) for said are available to said codon being evaluating and/or executing;
(ii) where said expected number of and/or type of argument(s) are available, evaluate/execute said codon to yield the appropriate result; and
(iii) where said expected number of and/or type of argument(s) are not available, continue processing said program by performing one of:
(1) generating randomly said expected number and/or type of argument(s) that are not available, and
(2) skipping said codon.
59 . The computer-based method of claim 58 , wherein further comprising accessing an input stack to determine whether said argument(s) are available.
60 . The computer-based method of claim 58 , further comprising determining a result of said program after all codons in said new construct have been processed, wherein a graphical and/or textual representation of the result is displayed.
61 . The computer-based method of claim 58 , further comprising remapping the functionality of said next codon being processed to that of a second codon, upon receipt of an indication that said next codon being evaluated and/or executed is to be remapped.Join the waitlist — get patent alerts
Track US2006288345A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.