Resolving Gödel’s Incompleteness Myth:
Polynomial Equations
and Dynamical Systems for Algebraic Logic
Abstract
A new computational method that uses polynomial equations and dynamical systems to evaluate logical propositions is introduced and applied to Gödel’s incompleteness theorems. The truth value of a logical formula subject to a set of axioms is computed from the solution to the corresponding system of polynomial equations. A reference by a formula to its own provability is shown to be a recurrence relation, which can be either interpreted as such to generate a discrete dynamical system, or interpreted in a static way to create an additional simultaneous equation. In this framework the truth values of logical formulas and other polynomial objectives have complex data structures: sets of elementary values, or dynamical systems that generate sets of infinite sequences of such solutionvalue sets. Besides the routine result that a formula has a definite elementary value, these data structures encode several exceptions: formulas that are ambiguous, unsatisfiable, unsteady, or contingent. These exceptions represent several semantically different types of undecidability; none causes any fundamental problem for mathematics. It is simple to calculate that Gödel’s formula, which asserts that it cannot be proven, is exceptional in specific ways: interpreted statically, the formula defines an inconsistent system of equations (thus it is called unsatisfiable); interpreted dynamically, it defines a dynamical system that has a periodic orbit and no fixed point (thus it is called unsteady). These exceptions are not catastrophic failures of logic; they are accurate mathematical descriptions of Gödel’s selfreferential construction. Gödel’s analysis does not reveal any essential incompleteness in formal reasoning systems, nor any barrier to proving the consistency of such systems by ordinary mathematical means.
Contents
 1 Introduction
 2 General Analysis of Polynomial Equations
 3 Dynamical Systems from References to Solutions
 4 Translation from Logic into Algebra
 5 Discussion
 A Executive Summary
 B Russell’s Paradox: Recursion Redux
 C Notes on Modal Logic: Thinking Outside the Box
 D By George! Proposed Logic Query Language
 E What the Tortoise Said to Achilles about What the Tortoise Said to Achilles
1 Introduction
In the last century, Kurt Gödel’s incompleteness theorems [15] sent shockwaves through the world of mathematical logic. The conventional wisdom is that Gödel’s theorems and his interpretations thereof are correct; the prevalent discussion concerns what these results mean for logic, mathematics, computer science, and philosophy [26, 20, 16]. But as I shall demonstrate here, Gödel’s theorems are profoundly misleading and his interpretations were incorrect: his analysis was corrupted by the simplistic and flawed notions of truth value and proof that have troubled logic since antiquity, compounded by his misapplication of a static definition of consistency to a dynamical system. Exposing these errors reveals that reports of logic’s demise have been greatly exaggerated; we may yet realize the rationalist ideals of Leibniz and complete the logicist and formalist programs of Frege, Russell, and Hilbert.
There are two key principles here: first, that proof in formal reasoning systems is an exercise in solving systems of polynomial equations, yielding solutions that are sets of elementary truth values; and second, that certain selfreferential formula definitions are recurrence relations that define discrete dynamical systems (and in turn infinite sequences of basic solution sets). It is a corollary to these principles that all of the various syntactic results from such calculations make semantic sense as the truth values of formulas, including solution sets that are empty or have multiple members, and dynamic solutions that change with each iteration and depend on initial conditions.
These principles are familiar and uncontroversial in the contexts of elementary algebra and dynamical systems; they apply just as well when the basic mathematical objects are logical truth values instead of ordinary numbers. If you understand how to do arithmetic in different number systems, what it means to solve equations, and how to deal with recursive constructions like the Fibonacci sequence, then you can understand Gödel’s mistakes. You will find the powerful new paradigm of dynamic polynomial logic, which is a continuation of the pioneering 19thcentury work of George Boole [4, 5]. Dynamic polynomial logic is grounded in the intrinsic unity of logic and mathematics.
Relative to classical logic, dynamic polynomial logic is paraconsistent, paracomplete, and modal. In this algebraic framework the misguided principle of explosion is corrected: inconsistent axioms are shown to prove nothing instead of everything. Moreover the principle of the excluded middle is clarified; in classical logic this idea is applied incorrectly, reflecting confusion between arithmetical and algebraic systems. Dynamic polynomial logic computes precise solutions that can be interpreted as alethic and temporal modalities.
1.1 Gödel’s Argument
Gödel considered formal reasoning systems as described in Whitehead and Russell’s Principia Mathematica [31], which was an epic attempt to formalize the whole of mathematics. Gödel’s basic argument was that every formal reasoning system powerful enough to describe logical formulas, proof, and natural numbers (like PM) must allow the construction of a special formula that is semantically correct but syntactically undecidable: true by metalevel consideration of its content, but impossible to prove or disprove by mathematical calculation within the formal system itself. This special formula, denoted both and in Gödel’s paper, asserts that the formula itself cannot be proven within the system. Thus follows the apparent paradox, which Gödel described in this way (as translated in [30]):
From the remark that says about itself that it is not provable it follows at once that is true, for is indeed unprovable (being undecidable). Thus, the proposition that is undecidable in the system PM still was decided by metamathematical considerations. The precise analysis of this curious situation leads to surprising results concerning consistency proofs for formal systems, results that will be discussed in more detail in Section 4 (Theorem XI).
Gödel’s Theorem VI states that there must exist (in a formal system like PM) a formula such as his special which can neither be proven nor disproven within the formal system that contains it. His claim that his special formula is semantically true is presented in the text of his paper but is not called out as a theorem. Gödel’s Theorem XI states that the existence of such an undecidable formula renders the consistency of the enclosing formal system itself an undecidable proposition.
1.2 The Truth (Value) Is Complicated
The surprising result from my analysis is that Gödel’s special formula is neither semantically correct nor semantically incorrect; instead it is exceptional in a particular way, relative to the expectation that a formula should have a definite elementary value. Such exceptions, which appeared to Gödel as ‘undecidability,’ are features not bugs in formal reasoning systems: it is appropriate that some logical formulas cannot be proven to be simply true or false, because they are in fact neither. Evaluating Gödel’s special formula is analogous to taking the square root of a negative number: such a square root cannot be proven to be any real number, because it is not any real number. More elaborate data structures are needed to describe the values of some logical formulas, just as complex numbers are needed to describe the values of some arithmetic formulas.
We shall consider four different exceptions that can be raised by logical formulas: the static exceptions of unsatisfiability and ambiguity and the dynamic exceptions of unsteadiness and contingency. These exceptions represent four distinct types of ‘undecidability,’ and each type has a particular semantic meaning and gives characteristic syntactic results. Ignorance of these exceptions has plagued logic since ancient times. One can already find in the riddles of Aristotle’s adversary Eubulides, who originated the liar paradox in the 4th century b.c., perfect demonstrations of unsatisfiable and ambiguous logical propositions [24]. Yet the same exceptions occur in algebra with ordinary numbers, and in this context they are wellunderstood and not at all controversial. With the appropriate data structures and algorithms, these exceptional results become no more problematic for logic than is for algebra. These four exceptions are consequences of the two key principles discussed next.
1.3 Logical Equations Give Sets of Elementary Solutions
The first key principle is that the axioms in a formal system (including the definitions of formulas) constitute a system of simultaneous equations; hence the proper way to describe the truth value of a formula is to give the solutionvalue set to its defining system of equations—the possible elementary values of the formula when all the equations are satisfied. As in general algebra, a system of logical equations can have zero, one, or more solutions: thus the solutionvalue set can be empty, have one member, or have many members.
Using binary logic with the elementary values true and false ( and ), there are four possible solutionvalue sets (hence four different truth values): the set ; the set ; the set ; and the empty set . The first two sets are the definite or ‘unexceptional’ results: if the feasible set of values for some formula is , then that formula is necessarily true (equivalently, it is a theorem); if the feasible set is , then the formula is necessarily false (its negation is a theorem). The last two sets are exceptional: if the solutionvalue set is , then the formula is ambiguous; if the solutionvalue set is , then the formula is unsatisfiable (and the underlying axioms are inconsistent). This style of categorization extends easily to sets of elementary values with more than two values, including infinite sets (like the natural numbers) and uncountable sets (like the real numbers). In general we consider truth values in the power set of the set of elementary values.
As Boole explained in his Laws of Thought [5], logical formulas with binary truth values can be translated into polynomial expressions: the coefficients and represent the elementary values true and false; symbolic variables represent basic propositions, with each variable subject to the constraint to ensure that its only feasible values are and ; logical conjunction translates as multiplication; logical negation translates as the difference from ; and logical disjunction translates as a certain combination of addition and multiplication. Boole presented a complete algorithm to translate any logical formula into a polynomial with ordinary integer coefficients.
For example, using Boole’s original method the logical formula translates as the polynomial and the logical formula translates as the polynomial . Using these translations, constraining each formula to be true (i.e. to equal the polynomial ), and separately constraining each variable to be either or yields the following system of polynomial equations:
(1) 
The only solutions to these equations for the variables are and . You can see that and have the same value in each solution, so you might expect the biconditional formula to be a theorem given the axioms and . Using Boole’s original method, the logical formula is translated into the polynomial ; substituting either solution for the value of this polynomial is . Thus the solutionvalue set for the polynomial , subject to the constraints in Equation 1, is the set .
Translating back into logical notation, the solutionvalue set for the formula given the axioms and is ; therefore is called a theorem relative to these axioms. However, neither the formula nor the formula has a definite value given these equations; each formula has the solutionvalue set in polynomial notation, which is in logical notation. Therefore each formula and is called ambiguous given the axioms and . Note that neither nor is a theorem given these axioms; likewise neither nor is a theorem. This ‘undecidability’ for the formulas and is a correct interpretation of the relevant equations, not a sign of pathological incompleteness in formal reasoning.
Infeasible equations have empty solution sets and render unsatisfiable all formulas that are subject to them. For example the simultaneous equations:
(2) 
have no solution; the first constraint is violated for both values and that satisfy the second constraint. Therefore the formula is unsatisfiable subject to these equations, as are the formulas , , and ; all share the empty solutionvalue set . The equation is a polynomial translation of the logical axiom which states that the formula is defined to be true exactly if it is not true. This is one way to model the liar paradox, and in this version the problem is no more paradoxical than the unsatisfiable equation .
1.4 SelfReference Gives Dynamical Systems
The second key principle is that, if it is permitted for a formula definition (or any other axiom or equation) to refer to the solution generated by evaluating its own system of equations, then the value of every formula may gain a more complex data structure. Such a solution selfreference is a recurrence relation that can be interpreted in two distinct ways: in the dynamic interpretation the recurrence is used as such to define infinite sequences of solutions governed by a discrete dynamical system; and in the static interpretation the recurrence is used to generate an additional simultaneous equation. Both interpretations can be reasonable and useful, but it is important not to confuse them during analysis.
To illustrate, let us consider the quadratic equation in which we define the coefficient to be the number of real solutions (for ) to the equation in which it appears. In other words we have the following specification for a system of equations, using realvalued variables :
(3)  
the number of real solutions for to Equation 3  (4) 
In this specification the value of depends on itself. To model this dependence, let us introduce an evolution function denoted that gives the number of real solutions to Equation 3 when takes the value supplied as the function’s argument. In the dynamic interpretation we take the specification to define a system that changes over time according to this evolution function , with the state at the next time given by the value of the evolution function applied to the current state . Thus we have:
(5) 
Alternatively, in the static interpretation we take the problem specification to mean that the input value and the output value must agree simultaneously, as in:
(6) 
We must now determine what this evolution function is and which particular values of need to be considered in solving the equations. For this problem the quadratic formula serves both needs; a more general approach will be presented later. As you may recall, the quadratic formula states that the number of distinct real roots of an equation depends on its determinant : there are no real solutions if the determinant is negative, one if it is zero, and two if it is positive. Therefore, the possible values of are ; and using the quadraticequation coefficients and from Equation 3, the evolution function must satisfy:
(7) 
Therefore since ; since ; and since . Using polynomial interpolation, a closedform function can be constructed that performs exactly these mappings , , and :
(8) 
For the static interpretation, substituting the evolution function from Equation 8 into the system in Equation 6 and then making explicit the domain of each variable produces the following system of equations:
(9) 
After rearranging the second equation it is evident that this system has no solution: implies but is required to be , , or . Thus in the static interpretation, the formula is unsatisfiable and the whole system of equations is inconsistent.
For the dynamic interpretation, substituting the evolution function from Equation 8 into the system in Equation 5 and leads to the following system of equations, which includes the recurrence :
(10) 
In this interpretation we consider to be the state of the dynamical system at time . Each initial state generates an infinite sequence of states at successive times :
(11) 
In the state the main equation specializes to which has the two solutions and . Then given the main equation becomes which has two solutions and . Finally, given the main equation becomes which has no real solutions. Therefore Equation 10 also generates a collection of sequences of solutionvalue sets for , again depending on the initial condition :
(12) 
These collections of infinite sequences are governed by a discrete dynamical system. This system can be displayed compactly as a graph in which each node indicates a state of the parameter and each edge shows the solutionvalue set for the formula that is generated from assuming the state corresponding to the originating node:
(13) 
This graph, constructed from Equation 10, offers some explanation as to why the static system in Equation 9 is unsatisfiable: the matching dynamical system has no fixed points, only a periodic orbit that never reaches a steady state. You can read off the sequences of states or solutionvalue sets generated by this dynamical system by following the edges in its graph.
In general many different patterns could be discerned in the behaviors of dynamical systems; but for the purpose of classifying formulas we consider only the number of fixed points. If a dynamical system has exactly one fixed point then that system is called stable; if it has no fixed points then it is called unstable; and if it has more than one fixed point then it is called contingent. In these terms, the dynamical system defined by Equation 10 and graphed in Equation 13 is unstable. Unstable dynamical systems correspond to unsatisfiable static equations, and contingent dynamical systems correspond to ambiguous static equations.
1.5 Anticipating Gödel’s Error
We shall see that Gödel’s special formula behaves just like the selfreferential quadratic equation above. Using to represent Gödel’s formula, it turns out that his definition specifies the evolution function . When Gödel’s reference to provability is interpreted statically as the constraint , his selfdenying formula becomes an unsatisfiable system of equations:
(14) 
And when interpreted dynamically as , Gödel’s formula becomes the recurrence:
(15) 
This specifies a simple dynamical system with one periodic orbit and no fixed points. This dynamical system generates an alternating sequence of values for its state at successive times , for each initial condition :
(16) 
By generating these results, dynamic polynomial analysis will show that Gödel’s ‘formula that is true if and only if is not provable’ is exceptional in precisely the same way as is ‘the quadratic equation that has exactly solutions’: interpreted as static systems of equations, neither specification can be satisfied; and interpreted as dynamical systems, both specifications lead to sequences that oscillate infinitely and never converge to a fixed value.
These types of ‘undecidability’ are not syntactic aberrations; they are semantically appropriate descriptions of the mathematical objects specified by their respective selfreferential definitions. In fact, these complex results only seem exceptional because of the misguided expectation that the specified mathematical objects should have simple elementary values. Imagine the confusion that would result if we were to speak of ‘the Fibonacci formula’ (expecting it to have a definite numeric value) or ‘the Fibonacci number’ (expecting there to be just one) instead of ‘the Fibonacci sequence’ and ‘a Fibonacci number.’ Although Gödel’s selfdenying formula may seem puzzling, Gödel’s oscillating sequence and Gödel’s inconsistent equation are rather less so.
It remains to be demonstrated that systems of logical axioms are indeed equivalent to systems of polynomial equations, and that selfreference of the type that Gödel described is accurately translated using evolution functions, recurrence relations, and dynamical systems. But before discussing the details of translating logic to algebra, let us review several useful kinds of results that can be calculated by general methods of algebra from systems of polynomial equations and from discrete dynamical systems.
2 General Analysis of Polynomial Equations
Polynomials are an important class of formulas in elementary and abstract algebra. In this section we introduce terminology and notation to describe systems of polynomial equations and their solutions (for the task of formula evaluation), and we consider ways to construct and to count the members of a polynomial ring that meet certain desirable criteria (for the task of formula discovery). We develop simple algorithms to perform these tasks by hand for small problems, and make reference to more general and efficient methods from computational algebraic geometry. For the moment we are just discussing polynomials in the context of general algebra, without any mention of their provenance in logic and axiomatic formal reasoning.
2.1 Formula Evaluation
We consider systems of polynomial equations whose variables and coefficients take values from an algebraic field such as the real number system , the rational number system , or a finite field of order (with a prime number). Note that in a finite field we must use integer arithmetic modulo for calculation; for example in the binary finite field the sum since . [11] provides a good general reference for polynomials and algebraic geometry; [10] and [12] describe fields and other structures in abstract algebra; modular arithmetic is discussed in [17].
Definition 1 (System of Polynomial Equations)
Given an algebraic field and a vector of variables, the polynomial ring over the variables with coefficients in is denoted . We consider a set of simultaneous equations:
in which each polynomial is a member of the ring and also constrained to equal zero. The solution set to this system of equations, denoted or , is the set of values of for which these equality constraints are satisfied, assuming that each variable takes a value in the field :
By its construction the solution set must be a subset of the affine space .
In the extreme case that the equations in are inconsistent then is the empty set; conversely if the equations are tautological (or if there are no equations) then is the entire set . In algebraic geometry, the solution set is called the affine variety defined by the polynomials used in the equations. Note that in the special case that there are no variables, we imagine that the affine space has one member that is the unique zerolength tuple. Thus with the solution set has one member since the equation holds; however is the empty set since the equation does not hold. Additionally, we take the polynomial ring with no variables to be the same as the original field .
We next consider the evaluation of a polynomial function subject to the constraints in a system of polynomial equations. Recall that the power set of any set is the set of all possible subsets of (including by necessity the empty set and the original set itself).
Definition 2 (SolutionValue Set)
Consider a system of polynomial equations as described in Definition 1, along with an objective formula from the same polynomial ring. The solutionvalue set of the objective subject to the equations is defined as the set of its feasible values when the equations in the system are satisfied:
in other words the image under of the solution set . By its construction the solutionvalue set must be a subset of the set of elementary values in the original field . Equivalently the solutionvalue set must be a member of the power set of :
Here using to stand for the set of elementary values in the field as well as the field itself.
If the solutionvalue set for a polynomial is a singleton that contains just one member , then we describe as necessarily subject to ; this is the unexceptional result. If the solutionvalue set is empty, then we describe as unsatisfiable subject to ; this means that the equations in the system are inconsistent. Otherwise the solutionvalue set must have more than one member (including the special cases that it is infinite or uncountable) and we describe as ambiguous subject to .
At the extremes the solutionvalue set may be the empty set or the entire set of elementary values from the underlying algebraic structure .
Moving on, when using coefficients from the binary finite field it is possible to simplify systems of polynomial equations in the following way.
Lemma 3 (Conjunction of Binary Constraints)
Any system of polynomial equations with coefficients in the binary finite field or with each polynomial constrained to the values and can be simplified to a single equation. For any the product if and only if both factors and . From this it follows that any set of equations:
with each or each for all feasible values of , must have the same solution set as the single equation:
In this case the set of equations given in Definition 1 can be replaced with the singleton or the equivalent whose solitary member uses the conjunction polynomial derived from the original equations:
The conjunction polynomial produces the same solution set as the original equations:
and consequently identical solutionvalue sets for any objective formula.
Note that in the special case that there are no constraints we take the product of zero factors to be the multiplicative identity. Hence from we derive the conjunction polynomial which gives the tautological constraint .
Example 4
To illustrate these definitions, consider the following system of two simultaneous equations in the variables and (thus , , , , and ):
(17)  
(18) 
Expanding these polynomials yields the constraint set:
(19) 
Let us proceed to evaluate this system of polynomial equations using two different algebraic structures: the real numbers and the binary finite field .
First we assume that the variables and and their coefficients take realnumber values. Let us use to denote the solution set to Equations 17 and 18 using the algebraic structure . According to Definition 1:
(20) 
You can see from inspection that only two pairs of real numbers satisfy the equations, namely and . Thus we have the solution set:
(21) 
This variety is a subset of the affine space of all pairs of real numbers. Given this solution set, it is straightforward to identify the solutionvalue sets for the objective formulas , , and by substituting the values from into each objective:
(22)  
(23)  
(24) 
Next if we use the binary finite field as the algebraic structure for the variables and and their coefficients, then the polynomial system defined by Equations 17 and 18 has the solution set:
(25) 
Recall that in the finite field the sum using modular arithmetic. Based on this solution set , the solutionvalue sets for the objectives , , and are:
(26)  
(27)  
(28) 
In either polynomial ring or the formula has only one feasible value given the constraints in Equations 17 and 18: it is necessarily . However, given these same constraints each formula and is ambiguous in either polynomial ring: the solutionvalue sets and each have two members.
2.2 Formula Discovery
We now consider the inverse problem: subject to a set of polynomial equations, instead of computing the solutionvalue set for some polynomial objective formula, we must find the set of polynomials that yield a given solutionvalue set.
Definition 5 (InverseValue Set)
Consider a system of polynomial equations as specified in Definition 1, along with a query set of elementary values from the algebraic field . The inversevalue set is the set of polynomials in the ring whose solutionvalue set is exactly :
When working with coefficients in the finite field , replacing the original set of equations with the set using the conjunction polynomial from Lemma 3 does not change the inversevalue sets. In that case, for every possible query :
If the set of equations is inconsistent then according to Definition 2 the solutionvalue set for every polynomial must be the empty set. Hence when is inconsistent the inversevalue set for the emptyset query yields the entire polynomial ring , and the inversevalue set with any nonempty query yields the empty set of polynomials. In other words, given infeasible constraints, every polynomial has no feasible value and no polynomial has any feasible value.
Considering a fixed set of equations , the inversevalueset function is the inverse image or preimage of the solutionvalueset function . Thus if then for every polynomial in this inversevalue set it holds that ; and furthermore the members of this inversevalue set are the only polynomials in the ring that have the solutionvalue set . In algebraic geometry, the inversevalue set with the query is called the ideal of the affine variety : the set of every polynomial that vanishes on . The characteristics of ideals [11] lead to the following special case.
Lemma 6 (The Ideal from a Single Equation)
In the special case that the set of equations contains a single equation that is satisfiable, then every member of the inversevalue set must be the product of some polynomial from with the polynomial from the equation; conversely every such product must be a member of the inversevalue set:
The products are not necessarily distinct for different values of . Recall from Definition 5 that infeasible equations yield empty inversevalue sets for nonempty queries: thus if the equation is infeasible.
Since there are dedicated methods in algebraic geometry to compute the ideal generated by a set of polynomials (in my terminology the inversevalue set for the query ), it is useful to define inversevalue sets for queries other than in terms of the ideal.
Corollary 7 (Incrementing Inverse Polynomials)
For any query that contains a solitary value , the inversevalue set can be calculated by adding that value to every polynomial in the inversevalue set for the query :
In the case that the inversevalue set was generated from a single constraint as in Lemma 6, then the same incremented inversevalue set is also given by:
This corollary allows closedform description of inversevalue sets for singleton queries.
Continuing on, it is useful to appreciate that the set of polynomials over a finite number of variables with coefficients in a finite field is itself finite.
Lemma 8 (Counting Polynomials in Finite Fields)
The polynomial ring over variables with coefficients in a finite field of order (with a prime number) contains exactly
distinct polynomials, each of which can be expressed as a unique sum of coefficients and monomials. In this sum each coefficient is a member of the field and each monomial (power product) is a product of the variables through in which each variable is raised to a power between and . There are possible monomials.
Since (by Fermat’s Little Theorem) the identity holds for every element of a finite field of order (with a prime number), exponents higher than are not required in monomials that use . For example, using the finite field of order and two variables and , the resulting polynomial ring has a set of possible monomials:
(29) 
In any polynomial in this ring, each of these monomials must be assigned one of the coefficients in . Thus there are possible polynomials in ; they are listed in Table 1. Alternatively, using coefficients from the finite field of order there would be possible polynomials in the corresponding ring .
Example 9
We can enumerate all sixteen polynomials in the ring with binary finitefield coefficients, and partition them into the four possible inversevalue sets (for the queries , , , and ) given the constraints from Equations 17 and 18. Table 1 shows these sixteen polynomials and their solutionvalue sets; Definition 10 below explains how the table was created. From the table you can see that there are four polynomials whose only feasible value is zero:
(30) 
There are also four polynomials whose only feasible value is one:
(31) 
There are no polynomials whose solutionvalue set is empty (because the constraints are consistent):
(32) 
The remaining eight polynomials share the solutionvalue set of both binary finitefield values:
(33) 
Thus, using the constraints in Equations 17 and 18, every polynomial is assigned to one of the four possible inversevalue sets for polynomials with coefficients in the binary finite field.
Some of these inversevalue sets can be derived in another way. Since we are using polynomials with coefficients in the binary finite field , Lemma 3 states that the original constraints and in Equations 17 and 18 are equivalent to the single constraint:
(34) 
Thus the conjunction polynomial is given by:
(35) 
using modular arithmetic. Definition 5 assures us that for any query the inversevalue set computed from the conjunction polynomial is the same as the original:
(36) 
Now, Lemma 6 says that every polynomial in the inversevalue set must be the product of some polynomial in with the conjunction polynomial just computed:
(37) 
And indeed, multiplying any polynomial in the ring by the sum will yield one of the four polynomials in listed in Equation 30. For example we have the following products (keeping in mind that the finite field uses integer arithmetic modulo in which , , etc.):
(38)  
(39)  
(40)  
(41) 
Furthermore, Corollary 7 states that for every polynomial in the inversevalue set , the sum must be a member of the related inversevalue set . You can see this illustrated by comparing Equations 30 and 31.
2.3 How to Solve It
The calculations required for formula evaluation and formula discovery using systems of polynomial equations with coefficients in finite fields can be performed by an extension of the truthtable methods of [21] and [32]. It is practical to carry out these calculations by hand with pen and paper for small problems. Alternatively, there are sophisticated algebraic geometry methods implemented in several widelyavailable computer algebra systems that accomplish the necessary calculations in a more efficient, robust, and scalable manner (using coefficients from finite fields as easily as rational or real coefficients). These computational methods are derived from the Gröbnerbasis algorithms for solving polynomial equations that were invented by Buchberger in the 1970s [6]. Commands to perform the requisite calculations in a computer algebra system are included in Section 4. Tablebased inference is explained presently.
For a system of polynomial equations with variables and coefficients in a finite field with elements, naive tablebased inference requires the construction of a table with rows and columns. The resulting entries must be exhaustively enumerated. The following definition introduces the value worksheet data structure and an inference algorithm based on it. Each row of the value worksheet contains the same information as a traditional logical truth table, but in a flattened form.
Definition 10 (TableBased Inference with Finite Fields)
For a system of polynomial equations with coefficients in a finite field of some prime order , the solution set, solutionvalue sets, and inversevalue sets described in Definitions 1, 2, and 5 can be computed using the following algorithm.

Construct the value worksheet :

Make a table with a row for every polynomial and a column for every point . Following Lemma 8, this table will have rows and columns (excepting the row and column labels).

For every polynomial and every point , use the value of that polynomial evaluated at that point as the entry at row and column of the table.


Compute the solution set from the constraint polynomials :

If and , replace the set of equations with the singleton using the conjunction polynomial described in Lemma 3 (this step may be omitted for pedagogic purposes).

For each constraint find the matching polynomial at row in the table . Examining this row of the table, mark as infeasible every column for which the value at row and column is not zero. If there are no constraint polynomials then all columns remain unmarked.

The unmarked columns identify the feasible points that constitute the solution set . If all columns are marked as infeasible then the solution set is empty.


Compute the solutionvalue set for every possible polynomial objective :

Add a column labeled to the table for solutionvalue sets.

For each polynomial at row , the solutionvalue set is the set of table entries at the unmarked columns. Thus the solutionvalue set for each polynomial is the set of every value taken by that polynomial at a feasible point indicated as an unmarked column .

If there are no unmarked columns then every solutionvalue set is empty.


Compute the inversevalue set for every possible solutionvalue set query :

Examine the entries in the solutionvalue set column . For every unique entry in that column, select the rows , , etc. such that , , and so on. The corresponding polynomials , , etc. constitute the inversevalue set .

The inversevalue set for every query that does not appear as an entry in the solutionvalue set column is empty.

Example 11
Infeasible? 

Table 1 shows the value worksheet constructed according to Definition 10 from the system of constraints in Equation 19; the polynomial ring with binary finitefield coefficients is used. There are two ways to mark infeasible points. Using the original constraint polynomials we note that appears as and appears as in . Examining row 11 we see that , therefore we mark the column for infeasible. In row 13 the entry hence we mark the column for infeasible. Alternatively, using the conjunction polynomial gives equivalent results. The polynomial appears at row 7 in and in this row both entries and have nonzero values; hence the corresponding columns are marked infeasible.
Each solutionvalue set at row is the set of values taken by the polynomial at the feasible points (the unmarked columns in ). For example in row 8 we have and both and ; thus the solutionvalue set . The inversevalue sets are given by selected rows: for example rows 1, 7, 11, and 13 share the solutionvalue set so the inversevalue set is . The inversevalue sets for the queries and are constructed in a similar way. However, since no polynomial has an empty solutionvalue set (the entry does not appear in the last column of the value worksheet), the inversevalue set of the empty set is itself empty: .
3 Dynamical Systems from References to Solutions
Now let us consider the complexity added to a system of equations when it is permitted to refer to the solution of that system of equations within the system itself. This type of selfreference is an elaborate recurrence relation, which can either be interpreted as such to define a discrete dynamical system, or interpreted in a static way to provide an additional simultaneous equation. Although much of the terminology and notation for ‘dynamical systems’ is relatively new (following a resurgence of interest in the 1970s, especially in nonlinear and chaotic dynamical systems), the mathematical treatment of recursion is quite old. For example, what we know as the Fibonacci sequence has been studied in various guises since at least the Middle Ages; and methods for finite differences and difference equations have been developed since the work of Newton and then Taylor around the turn of the 18th century [3]. The modern treatment of dynamical systems [14, 18] dates from Poincaré’s work at the end of the 19th century. It happens that the dynamical systems that we will encounter in the study of logic are quite simple: discrete time, finite phasespace, firstorder, autonomous, and usually linear.
3.1 Extended Systems of Polynomial Equations
In order to develop a computable representation of solution selfreference, we introduce several new features to the systems of polynomial equations described in Section 2: parameters, equation templates, iterative assignments, and solution references. The idea is that each constraint may be specified as a template instead of as a simple polynomial equation; the parameters of the templates are allowed to refer to solution sets and solutionvalue sets from the systems of equations in which they reside.
Definition 12 (Parametric System of Polynomial Equations)
Consider a system of polynomial equations as specified in Definition 1, with variables and coefficients in an algebraic field ; the polynomials in the system are members of the ring . We introduce a tuple of parameters with the requirement that each parameter must take a value in some specified set . Thus the set of possible values for is given by the Cartesian product:
For each variable and each parameter we add a datatype constraint to identify the appropriate set of possible values:
Instead of using a simple set of polynomial equations as described in Definition 1, an extended polynomial system is specified using a set of parametric constraint templates and a set of assignment templates, in addition to the above datatype constraints. In the set each constraint template is a function of the parameters :
such that for any instantiation of the parameter values the template reduces to an ordinary polynomial equation with . In the set each assignment template specifies the value to be assigned to the corresponding parameter at every iteration, using some parameterupdating function whose arguments may include the solution set to the extended system of equations being defined, as well as any parameter including itself (here the double left arrow denotes assignment):
In particular a parameterupdating function may use the solutionvalue set for some objective formula or the cardinality of such a solutionvalue set. Although every parameterupdating function that assigns a value to a parameter must return a value in the designated set of possible values for that parameter, the updating functions are not required to be polynomial. If an explicit updating function for any parameter is omitted, then the identity function is used as a default.
According to Definition 12 the selfreferential quadratic system in Equations 3 and 4 can be specified as the following constraint and assignment templates:
(42) 
Here the variable takes real values and the possible values of the single parameter are the set of integers between and . This parameter is assigned the cardinality of the solutionvalue set for the objective (subject to the equation ) by the updating function specified by the assignment template .
For a different example, a system to generate Fibonaccilike sequences can be specified with two parameters and a pair of assignment templates, without the use of any conventional variables or any constraint templates:
(43) 
We next develop an algorithm to make explicit the discrete dynamical system implied by a parametric system of polynomial equations.
Definition 13 (Extracting the Evolution Function)
A parametric system of polynomial equations as described in Definition 12 encodes a functional relationship between the value of the parameter and itself. Here we extract this evolution function, denoted , in two useful special cases. First, in the case that each parameterupdating function is a simple algebraic function of the parameters in —without reference to the solution set —then the evolution function is given by the tuple of parameterupdating functions:
This is the usual situation with recurrence relations in general algebra.
Second, in the case that the parameter domain is countable and finite then we can proceed with hypotheticodeductive analysis to derive by computing a mapping for every parameter value . To express the hypothesis that the parameters have some particular value , each pa