On polynomial grammars extended with substitution
OOn polynomial grammars extended withsubstitution
Janusz Schmude ! Institute of Informatics,University of Warsaw, Poland
Abstract
We investigate decidability of equivalence of register transducers, also called copyful StreamingString Transducers in case of string input, extended with an operation of substituting a register forall occurrences of a given letter in another register. We reduce to zeroness of polynomial grammars(over ring of polynomials) extended with analogous substitution operation by encoding strings intopolynomials; a similar method was used successfully by Seidl et al. in 2018. We give two restrictionsunder which register transducers with substitution have decidable equivalence. They seem to bevery restrictive but on the other hand, they seem to be on the edge of the scope of this “polynomial”method, as in the third result we give a rather restricted model of polynomial grammars withsubstitution that has undecidable equivalence.
Theory of computation → Formal languages and automata
Keywords and phrases equivalence problem, register transducers, word substitution, polynomialgrammar
Funding
Supported by ERC Consolidator Grant LIPA, agreement no. 683080.
Acknowledgements
I would like to thank Mikołaj Bojańczyk for the support in obtaining the resultsand writing this paper. I would also like to thank James Worrell, Mahsa Shirmohammadi, SandraKiefer, Sławomir Lasota and Radosław Piórkowski for helpful discussions.
Let us consider the following computation device that computes string-to-string functions: ithas two registers
R, S that store strings and reads input words from left to right. It initializesthe registers to empty words and if the read letter is a , it updates the registers by puttingsimultaneously ( R := a · R,S := R · a. After input word is read, it outputs R · S . For example, a run over input word w = abb is R = εS = ε a −→ R = aS = a b −→ R = baS = ab b −→ R = bbaS = abb → output bbaabb. This device computes function w rev( w ) · w , where rev is the reverse function. Such adevice is an instance of a register transducer [8] (in general, register transducers can computetree-to-string functions, however in all the examples we give string-to-string functions, whichare a special case where input trees are monadic). Sometimes two register transducers definedin two different ways compute the same function – the equivalence problem asks, given tworegister transducers, if this is the case. For example, the register transducers that compute,respectively, the reverse and identity function are equivalent if and only if the alphabet isunary.There are several methods of deciding equivalence of register transducers e.g. by use ofan equivalent model of two-way transducers [11] or by reduction to non-emptiness of one a r X i v : . [ c s . F L ] F e b On polynomial grammars extended with substitution counter automata in case of copyless register transducers, which are called
Streaming StringTransducers [1]. Method that is close to one we use in this paper is by reduction to zeronessproblem for polynomial grammars [8].Let us describe a variant of polynomial grammars that uses a free monoid instead ofa ring and explain how it is related to equivalence problem of register transducers. It is ageneralisation of context-free grammar, in which each nonterminal is associated with somedimension k , and therefore outputs k -tuples, and right-hand sides of production rules mayuse function symbols to avoid introducing independent copies of a nonterminal. For example,consider a polynomial grammar over (Σ ∗ , · ) with one nonterminal X of dimension 2 andproduction rules X → p a ( X ) , a ∈ Σ | ( ε, ε ) , where p a : (Σ ∗ ) → (Σ ∗ ) p a ( w , w ) = ( aw , w a ) for a ∈ Σ , w , w ∈ Σ ∗ . By definition, its language consists of pairs p a n ( p a n − ( . . . ( p a ( p a ( ε, ε ))) . . . )) for a , . . . , a n ∈ Σ. We define the grammar equivalence problem , in the case the initial nonterminal is 2-dimensional, as follows: is the first coordinate equal to the second coordinate for everyproduced pair? Observe that equivalence holds for the mentioned grammar if and only if theregister transducers that compute, respectively, reverse and identity function, are equivalent.Register transducers considered in this paper are enriched with a substitution operation,we call them register transducers with substitution . For example, consider the function sqrev : Σ ∗ → (Σ ∪ { } ) ∗ , called squared reverse (the definition and name are motivated by iterated reverse [6]), defined as follows: sqrev : w ( · rev( w )) | w | . It can be computed by two following register transducers with substitution that initializetheir registers on empty strings, output register R , and have register updates as follows: ( R := · a · S · ( R [ · a ]) ,S := a · S, for a ∈ Σand ( R := ( R [ · a ]) · · a · S,S := a · S, for a ∈ Σ . To decide their equivalence, one may consider a polynomial grammar with substitution (again, over free monoid instead of a ring) with initial nonterminal Y of dimension 4: Y → q a ( Y ) , a ∈ Σ | ( ε, ε, ε, ε ), where q a ( w , w , w , w ) = ( · a · w · ( w [ · a ]) , a · w , ( w [ · a ]) · · a · w , a · w ) and test for equivalence the grammar S → π [1 , ( Y ),where π I is projection on coordinates from I .We are interested in decidability of grammar equivalence for such grammars.We use the Hilbert Method [8], which relies on encoding objects manipulated by trans-ducers, like strings or trees, into rings e.g. of integers or of polynomials; this is done in orderto use algebraic geometry machinery. This method has been used to prove decidability ofequivalence for register transducers without substitution, where strings were encoded intoring of integers [14] (see also [8] for a slightly different encoding). In this paper we usean analogous encoding (Definition 4), this time into ring of polynomials, in order to coversubstitution, thus reducing problem to equivalence of polynomial grammars with substitution . Schmude 3 over a ring of polynomials. Equivalence is known to be undecidable for this model, even in arather restricted special case [5, Theorem 20]. In this paper we prove two decidability resultsfor other special cases and strengthen this undecidability result, clarifying the scope of this“polynomial” approach.Obtained decidability results transfer immediately to corresponding register transducers.This is stated in Lemma 5 for unrestricted polynomial grammars with substitution, which isa reduction to an undecidable problem, however, as explained in Remark 6, reduction holdsalso for special cases, which are decidable (Theorem 16 and Lemma 22). Main results.
The main problem discussed in this paper is zeroness of polynomialgrammars with substitution over a ring of polynomials (Definition 3). First we discuss suchgrammars with an additional fixed bound on the number of transitions per derivation thatuse substitution. We provide a positive result (Theorem 16) and a negative one (Theorem19). The negative result is a strengthening of [5, Theorem 20], mentioned in the previousparagraph. Then we move to grammars that use a special case of substitution – evaluation.For this variant we give a positive result (Lemma 22) and describe how it transfers to registertransducers with substitution (Theorem 27).
Polynomial functions.
By a ring we mean a commutative ring with unity. A ring has nozero divisors if for all non-zero a, b ∈ R , their multiplication a · b is non-zero. Let R be aring, for example the ring of integers. Following [8], it is convenient to define polynomialfunctions so that they can return tuples. Tuples inputted by polynomials will be also called vectors . A function p : R n → R k for some n, k ≥ polynomial function if every output coordinate is represented by apolynomial in n variables. For a set V ⊆ R n , by p | V we denote function p restricted to V . Substitution.
In the ring R [ X ], substitution is a ( | X | + 1) - ary operation defined assubs : R [ X ] × R [ X ] X → R [ X ]subs( p, ( q x ) x ∈ X ) = p [ x := ( q x ) x ∈ X ] . We consider a vectorized variant of substitution:subs YX : R [ X ] Y × R [ X ] X → R [ X ] Y subs YX (( p y ) y ∈ Y , ( q x ) x ∈ X ) = ( p y ( x := q x , x ∈ X )) y ∈ Y . If the arities are clear from the context, we simply write subs( p, q ) , or even p ( q ) , where p = ( p y ) y ∈ Y and s = ( q x ) x ∈ X are tuples of polynomials in R [ X ]. Polynomial grammars.
We define polynomial grammars following [8, Definition 2.1].As opposed to the Introduction, we define them only for rings. Most of the times it will bethe ring of polynomials, although in the proof of Theorem 16 we also use other rings. ▶ Definition 1. A polynomial grammar over ring R consists offinite set of nonterminals with a distinguished initial nonterminal , each nonterminal withan associated dimension ∈ { , , , . . . } , and On polynomial grammars extended with substitution · · A AA AA pp AAA
Figure 1
Example derivation trees for grammars A → p ( A ) | p ( a ) = a · a and A → A · A | and, respectively, 16 = 2 . finite set of production rules , each of form X → p ( Y , . . . , Y k ) for k = 0 , , . . . where p : R n → R m is a polynomial function, Y i for i = 1 , . . . , k are nonterminals, and input andoutput dimensions of expressions “match”, i.e. sum of dimensions of Y i ’s, for i = 1 . . . l ,is equal to n , and dimension of X is equal to m .If a nonterminal has dimension n , then it generates a subset of R n , which is defined asfollows by induction. (The language generated by the grammar is defined to be the subsetgenerated by its initial nonterminal.) Suppose that X → p ( Y , ..., Y k ) is a production and we already know that vectors v , . . . , v k are generated by nonterminals Y , ..., Y k respectively. Then the vector p ( v , . . . , v k ) is generated by nonterminal X . Theinduction base is the special case of k = 0 , where the polynomial p is a constant. ▶ Example 2 (see Fig. 1) . Polynomial grammar A → p ( A ) | p ( a ) = a · a has language { n : n ∈ Z + } . A similar polynomial grammar, A → A · A | { n : n ∈ Z + } . We define the dimension of a grammar to be the dimension of its initial nonterminal. Forsimplicity, the language of a grammar G with initial nonterminal A is sometimes denoted by A . For a polynomial function f : R n → R m , for a grammar G with initial nonterminal A ofdimension n , by f ( G ) or f ( A ) we denote a “canonical” grammar with language f ( A ) , i.e.grammar build from G by adding a fresh initial nonterminal S and a production S → f ( A ) . Polynomial grammars with substitution.
Let R be a ring. A polynomial gram-mar with substitution over R [ X ] is an extension of polynomial grammar over R [ X ] wherepolynomials in production rules may use substitution (additionally to + and · ). ▶ Definition 3.
For a polynomial grammar or a polynomial grammar with substitution A overa ring of polynomials, that has a non-empty language , zeroness problem asks if L ( A ) = { } ;we often abbreviate it to A = 0 . A technical assumption, does not change the essence of the problem. Notice it can be checked easily - itis enough to find productive nonterminals e.g. by fixpoint strategy. In particular, the algorithm doesnot depend on the output algebra. . Schmude 5
String-to-polynomial encoding.
The principal application of zeroness problem isequivalence of register transducers; the latter can be reduced to the former by the encodingwe describe now. ▶ Definition 4.
Consider the function Φ that maps strings over Σ into pairs of polynomialsin variables from set e Σ ∪ Σ , which are two disjoint copies of Σ , defined as follows: Φ : a . . . a n n X i =1 a · . . . · a i − e a i , a · . . . a n ! . (1) We denote first and second coordinate of Φ( w ) by e w and w , i.e. Φ( w ) = ( e w, w ) . (2) For example, Φ( abbab ) = ( e ab a + e bb a + e bba + e ab + e b, a b ) .The function Φ is a “generalisation ” of a natural encoding of strings into numbersthey represent in | Σ | -ary, i.e. w (val | Σ | ( w ) , | Σ | | w | ) where val | Σ | ( w ) is the value of w asa number in | Σ | -ary (assuming some bijection of Σ with { , , . . . , | Σ | − } ). We use thisgeneralisation to be able to use substitution.Notice that Φ “commutes” with substitution , i.e. Φ( w [ a := v a , a ∈ Σ]) = Φ( w )[ e a := e v a , a := v a , a ∈ Σ] for w, ( v a ) a ∈ Σ ∈ Σ ∗ . We say that the polynomial substitution ( e a := e v a , a := v a ) a ∈ Σ is induced by the wordsubstitution ( a := v a ) a ∈ Σ . Using the encoding above, we obtain the following lemma. ▶ Lemma 5.
Equivalence of register transducers with substitution over Σ ∗ can be reduced tozeroness of polynomial grammars with substitution over Q [ e Σ ∪ Σ] . ▶ Remark 6 (Undecidability in Lemma 5).
Let us emphasize that even though in Lemma 5 wehave a reduction to an undecidable problem, it remains valid for special cases of this problemthat are decidable – Theorem 16 and Lemma 22. As corollaries we obtain, respectively, resultfrom beginning of Section 3.3 and Theorem 27.
Proof sketch of Lemma 5.
Suppose that we have two register transducers with substitutionthat compute string-to-string functions f, g : Σ ∗ → Σ ∗ . We can convert them into apolynomial grammar G over Q [ e Σ ∪ Σ] that produces pairs of polynomials ( (cid:93) f ( w ) , (cid:93) g ( w )) forinput words w . It can be done us using the fact thatΦ( w · v ) = p (Φ( w ) , Φ( v ))for some polynomial function p – indeed, for any words w, v we have f wv = e w · v + e v and wv = w · v or explicitly p ( x , x , y , y ) = ( x y + y , x y )– and that Φ “commutes” with substitution (see Definition 4). Applying polynomial function p ( x , x ) = x − x to G results in grammar p ( G ) for which zeroness holds if and only if f, g are equivalent. ◀ It is a generalisation in a sense, that natural encoding is an evaluation of Φ at e a = τ ( a ) , a = | Σ | for abijection τ of Σ with { , , . . . , | Σ | − } On polynomial grammars extended with substitution A field is a ring in which every non-zero element has an inverse. Let K be a field. By K [ X ]we denote the ring of polynomials over set of variables X . By K ( X ) we denote the field ofrational functions over X , i.e. K ( X ) = { pq | p, q ∈ K [ X ] , q ̸ = 0 } .A field is a computable field if its elements can be enumerated such that operations + , · are computable functions.A field K is algebraically closed , if every univariate polynomial with coefficients in K has a root in K . An algebraic closure of a field K , denoted by K , is, roughly speaking, thesmallest algebraically closed field that contains K . Typical examples of algebraically closedfields are (1) the field of complex numbers, which is algebraic closure of field of real numbersand (2) the field of algebraic numbers, which is algebraic closure of field Q .Introducing algebraic closures does not affect effectiveness: ▶ Lemma 7. ([13, Theorem 7]) Let K be a given computable field. Then one can computean embedding K ⊂ K , which moreover is a computable function. In particular, K is acomputable field and it can be computed, given K . By an ideal we mean a subset I of K [ X ] in which f, g ∈ I implies f + g ∈ I and f ∈ I, p ∈ K [ X ]implies f · p ∈ I , for all polynomials f, g, p . For a set of polynomials F , by ⟨ F ⟩ we denote set { r f + r f + . . . + r k f k | f i ∈ F, r i ∈ K [ X ] , k ≥ } ; this is the smallest ideal that containsset F called ideal generated by F ; elements of F are called generators of ⟨ F ⟩ . Ideals can berepresented in a finite way, as shown by Hilbert’s Basis Theorem. ▶ Fact 8. (Hilbert’s Basis Theorem, [10, Chapter 2, §5, Theorem 5]). Let K be a field.Every ideal in K [ X ] can be generated by a finite set of polynomials. Let K be a field. An algebraic set is a subset of K n which is a set of zeros of some set ofpolynomials in n variables, i.e. is of form { v ∈ K n | p ( v ) = 0 for all p ∈ F } for some set ofpolynomials F ⊆ K [ X ]. For an algebraic set V , by I ( V ) we denote the set of all polynomialsthat are zero on V ; this is an ideal. For a ideal I in K [ X ], by V ( I ) we denote the set ofcommon zeros of all polynomials of I ; this is a variety. We say that V ( I ) is represented by I .Every algebraic set can be represented by some ideal, for example by I ( V ); this, togetherwith Hilbert’s Basis Theorem (Fact 8), provides a way to represent algebraic sets in a finiteway.From this we conclude the following. ▶ Corollary 9.
Let K be a computable field. Then algebraic sets can be enumerated. A coordinate ring of an algebraic set V ⊆ K n is the ring of polynomial functions from V to K . An algebraic set is called an (irreducible) variety if it cannot be represented as a finiteunion of pairwise distinct algebraic sets. ▶ Remark 10 (Notation: does algebraic set = variety?).
Different sources introduce differentnames for algebraic sets. For example, in [10] they are called varieties, and what we call avariety is called an irreducible variety. To avoid confusion, we always precede word “variety”with “(irreducible)”. ▶ Lemma 11. ([10, Chapter 4, §6, Theorem 2 and remarks at the end of Chapter 4, §6 ])Let K be a computable field. Then every algebraic set can be effectively decomposed into(irreducible) varieties. ▶ Lemma 12. ([10, Chapter 4, §5, Proposition 3]) An algebraic set is an (irreducible)variety if and only if its coordinate ring has no zero divisors. . Schmude 7
In this section we discuss decidability of zeroness problem for polynomial grammars withsubstitution over a ring of polynomials with the following restriction: substitution operationcan be used once per derivation. We call this model polynomial grammar with one substitution .Let us recall that zeroness is decidable in case of no substitutions. ▶ Lemma 13 ([7], Theorem 15) . Let R be a computable ring with no zero divisors. Thenequivalence is decidable for polynomial grammars over R . Let us define the main decision problem of this section, which generalises zeroness ofpolynomial grammars without substitution.
Zeroness of independent substitution of polynomial grammarsInput: R - a computable ring with no zero divisors , X - finite set of variables , A - polynomial grammar over ring R [ X ], B - polynomial grammar over ring R Question:
Is it the case that for all a ∈ A, b ∈ B a ( b ) = 0?We often abbreviate the statement above to A ( B ) = 0 . This problem can be seen as a special case of zeroness of polynomial grammars with onesubstitution, for grammars of the form subs(
A, B ), where
A, B are polynomial grammars.We call such substitution independent because tuples of substituted values come from adifferent nonterminal than polynomials to which they are substituted, and therefore they areproduced independently; we prove this problem decidable in Theorem 16. As we will see inSection 3.2, in case of dependent substitution, the problem is undecidable. ▶ Example 14.
Consider a polynomial grammar A over ring of polynomials in two variables e x, x with coefficients in Q ( e a, a ), i.e. ( Q ( e a, a ))[ e x, x ] defined as A → m ( S ) , S → p ( S ) | (0 , , , m ( e r, r, e s, s ) = e r − e s and p ( e r, r, e s, s ) = ( e r · x · a + e x · a + e a, r · x · a, e x · s · a + e s · a + e a, x · s · a )and a polynomial grammar B over ring of polynomials in two variables e a, a and coefficientsin Q , i.e. Q [ e a, a ] defined as B → q ( B ) | (0 ,
1) where q ( e t, t ) = ( e t · a + e a, e t · a ). Then A ( B ) = 0. ▶ Remark 15.
The above Example expresses the fact, under our string-to-polynomial encoding,that ( xa ) n = x n a n for all words x ∈ { a } ∗ , for all n ≥ Remark on algebraic closure.
Let us discuss a subtlety before we state and proveTheorem 16. Despite the fact that all polynomials arising from our string-to-polynomialencoding are elements of field Q ( e Σ ∪ Σ), we carry out the proof for algebraically closed fields.It does not affect generality, as every field can be effectively embedded into algebraicallyclosed field (Lemma 7). We do so because it makes the description of the algorithm morereadable, as in such case one can compute the coordinate ring of a given algebraic set (Lemma39); however, we present a version of the proof that does not use the notion of algebraicclosure in Section A.3.We conjecture that the algorithm from Theorem 16 does not have to use elements of K that are not in K – in consequence, the decision of introducing algebraic closure wouldaffect only the high-level description of the algorithm, not the algorithm itself. This mightbe important when trying to obtain a feasible complexity for a special case (recall in generalzeroness of polynomial grammars over a ring is Ackermann-hard [3, Theorem 1]). On polynomial grammars extended with substitution
In this section we prove Theorem 16. ▶ Theorem 16.
Let R be a computable ring with no zero divisors. Then zeroness ofindependent substitution of polynomial grammars over R [ X ] is decidable. As stated in Remark 6, the reduction from Lemma 5, restricted to the special case fromTheorem 16, yields decidability of the corresponding problem for register transducers (Section3.3).The proof is based on the proof of [14, Corollary 8.2] in the presentation of [8].
Proof of Theorem 16.
Without loss of generality we may assume that grammar A is ofdimension 1 (notice we cannot assume it for B ). In this proof, by abuse of notation, weidentify a polynomial grammar A with its the language. We treat A and B as polynomialgrammars over a computable algebraically closed field that contains R , for example algebraicclosure of its field of fractions.There is a clear semi-procedure for non-zeroness – it essentially amounts to enumeratingall derivations. In rest of the proof, we show a semi-procedure for zeroness.Observe that A ( B ) = 0 if and only if for some algebraic set V : ( B ⊆ V (i) and A | V = 0 (ii) , where A | V denotes set { f | V | f ∈ A } . Indeed – for example, as V , one may take V ( A ). Thesemi-procedure for equivalence is as follows: guess, by infinite enumeration (see Corollary 9),an algebraic set V and test conditions (i) and (ii), which can be done the following way. ▶ Sublemma 1.
For a given V , condition (i) can be tested effectively. Proof.
Condition (i) reduces to zeroness of polynomial grammars in the following way.Denote by I the ideal that V is represented by. Observe that B ⊂ V ( I ) = V if and only if f ( B ) = 0 for all generators f of I . ◀▶ Sublemma 2.
For a given V , condition (ii) can be tested effectively. Proof sketch.
Decompose V into (irreducible) varieties V = V ∪ V ∪ . . . ∪ V k , k ≥ A | V = 0 holds iff A | Vi = 0 for i = 1 , . . . , k . Observe that A | Vi = 0 isequivalent to zeroness of A , treated as a polynomial grammar over coordinate ring of V i (see Lemma 39 for effectiveness); it has no zero divisors (Lemma 12) and hence decidabilityfollows from Lemma 13. ◀◀ Generalisation.
An analogous problem can be defined for arbitrary number of grammars;for k grammars, we will abbreviated it to A ( A ( . . . ( A n − ( A k )))) = 0. Let us sketch theproof of its decidability – it is very similar to the proof of case n = 2. Observe that A ( A ( A ( . . . ( A n ) . . . ))) = 0 is equivalent to A ( A ( . . . ( A n ) . . . )) ⊆ V and A | V = 0 for somealgebraic set V . For a given V , first condition is equivalent to f ( A ( A ( . . . ( A n ) . . . ))) = 0for generators f of ideal that V is represented by – this is decidable by induction assumptionfor n − f ( A ) , A , . . . , A n . Second condition was proven decidablein Sublemma 2. . Schmude 9 ▶ Remark 17.
For any polynomial grammar A there always exists a finite set of polynomials F such that A ( v ) = 0 if and only if F ( v ) = 0, for every vector v . In particular A ( B ) = 0 ifand only if F ( B ) = 0. Given a finite set of polynomials F , F ( B ) = 0 can be decided (Lemma13). However, it is not clear how to compute such set F given grammar A . ▶ Remark 18.
Let
A, B be polynomial grammars. If the grammar A is linear, i.e. there isat most one nonterminal on the right-hand side of every production rule, then grammar A ( B ) can be seen as a polynomial grammar too – it is enough to “concatenate” those twogrammars by replacing production rules of grammar A of form nonterminal → constant with nonterminal → B . However in case A is not linear, it is not clear how to convert A ( B )to a polynomial grammar. In previous section we saw that restriction to one independent substitution per derivationyields decidability of zeroness. In this section we show that in general case of one dependent substitution, this problem is undecidable. We call such substitution dependent becausesubstituted tuples and polynomials to which they are substituted may come from the samenonterminal and hence be generated dependently. ▶ Theorem 19.
Zeroness of polynomial grammars with one substitution over Z [ x ] is unde-cidable. In contrast to Theorem 16, the reduction from Lemma 5 restricted to special case fromTheorem 19 does not yield decidability nor undecidability of analogous problem for registertransducers.The proof was suggested by Lasota and Piórkowski [12]. It is analogous to proof of [5,Theorem 17], except two-counter machines are replaced by reset VASS-es; used encoding ofreset VASS into register transducer is similar to [4, Example 3].By a
VASS we mean a Vector Addition System with States. We call vectors that describetransitions step vectors . By a reset VASS we mean an extension of VASS where transitionsmay also reset some of coordinates to 0. By a unit step vector we mean a step vector of form(0 , , . . . , , , , . . . , we denote vector of zeros of its dimension. Proof sketch.
We show a reduction from reachability in reset VASS, which is known to beundecidable [2, Theorem 5]. Without loss of generality assume it is reachability from to and step vectors are unit – this ensures that sum of coordinates is an integer from interval[0 , n ] after n steps of a valid run. Given a reset VASS V we construct a register transducerwith substitution over ring Z [ x ] that uses substitution only in the output transition (henceonce per run) such that V can reach from if and only if the register transducer returns anon-zero output on some input (such register transducers are a different formalism for thesame model as polynomial grammars with one substitution).We describe the construction. The transducer takes a sequence of transitions of V asan input (this is a word over finite alphabet), which may describing a (valid) run of V ornot. The state of the transducer is the state of V and turns to error state if in the inputword the states of some pair of consecutive transitions do not match. The transducer holdsthe counter values of V in registers that we call counter registers . It has an error register which turns 0 when an “error” occurs, i.e. some coordinate of V goes below 0 (note that stepvectors are unit so such coordinate equals −
1) and holds 0 for the rest of the run – this isachieved by multiplying the error register by the product of values of counter registers, eachvalue incremented by 1, in each update. There is a reachability test register that holds a polynomial ( x − x − . . . ( x − n ) after n steps (formally, to construct it one needs an auxiliary register that holds number n ); it has a property that, for an integer input frominterval [0 , n ], it evaluates to 0 if and only if the input number is non-zero. Finally, if thestate is accepting, in output transition the transducer returns error register multiplied byreachability test register evaluated at the sum of counter registers (this involves substitutionof a register into another register); observe this is a non-zero number if and only if inputword is a (valid) run of V and this run reaches from . We give details of the constructionin Section A.2. ◀ Consider a register transducer E that returns pairs of words over alphabet ∆ ∪ X and aregister transducer T that returns X -tuples of words over ∆. Transducer E can be interpretedas a generator of equations (constraints) and T as generator of tuples to be tested. ThenTheorem 16 states that it is decidable if all tuples of words generated by T satisfy all equationsgenerated by E . On the other hand, Theorem 19 states that, in case when polynomials andintegers are generated, it is undecidable for a polynomial grammar that generates “pairs”(equation, tuple of vectors) if the “second” coordinate is always a solution for the “first” one(formally, the numbers of mentioned coordinates differ as e.g. an equation alone requirestwo coordinates). In such interpretation, words “independent” and “dependent” describethe relationship between equations and tested tuples. We include a formal presentation inSection A.1. In previous section we considered polynomial grammars with restricted number of uses ofsubstitution per derivation. Another way of restricting substitution is to consider evaluations– instead of adding general (1 + | X | ) - ary substitution operationsubs : K ( X ) × K ( X ) X → K ( X )we add evaluations , which are substitutions where the argument from K ( X ) X is fixed, i.e.unary operationseval v : K ( X ) → K ( X ) , eval v ( p ) p ( v ) , for vectors v ∈ K ( X ) X . We call this restriction of polynomial grammars with substitution polynomial grammars with evaluations .In this section we prove Theorem 27 that states that polynomial grammars with evaluationsthat satisfy simultaneous automorphism condition (Definition 21) have decidable zeroness.The core technical ingredient is Lemma 22, which is a result of discussions with Bojańczyk,Worrell, Shirmohammadi and Kiefer [9], allows to use simultaneous field automorphisms inpolynomial grammars over a field. Lemma 25 gives an easy-to-check characterisation of wordsubstitutions that are mapped to field automorphisms by the string-to-polynomial encodingfrom Definition 4. Theorem 27 concludes those two lemmas. . Schmude 11 ▶ Definition 20.
Let R be a ring. An automorphism of R is a bijective function h : R → R that satisfies h ( η ( a, b )) = η ( h ( a ) , h ( b )) for η being either addition or multiplication for every a, b ∈ R . For example, evaluation eval v for v = x + 1, i.e. Q ( x ) ∋ f f [ x := x + 1] ∈ Q ( x )is an automorphism of the field Q ( x ). An automorphism of product of fields K n is called simultaneous if it is of form α n = ( α, α, . . . , α ) | {z } n for some automorphism α of K . ▶ Definition 21. A polynomial grammar with simultaneous automorphisms/evaluations is an extension of polynomial grammar over a field where production rules are of form Y → p ( α N ( Y , . . . Y n )) where α is a field automorphism/an evaluation and N = dim Y + . . . + dim Y n . ▶ Lemma 22.
Let K be a computable field. Then polynomial grammars with simultaneousautomorphisms over K have decidable equivalence. Similarly as for Theorem 16, the reduction from Lemma 5, restricted to the special case fromLemma 22, yields decidability of equivalence for certain class of register transducers withsubstitution (Theorem 27).
Proof of Lemma 22.
A proof analogous to proof of Lemma 13 can be performed for polyno-mial grammars with simultaneous automorphisms – it is enough to show that preimage of analgebraic set by simultaneous automorphism of K is effectively an algebraic set (note thatthis fact holds for any algebra, with the same proof as for fields).Let α be an automorphism of K ; by abuse of notation, denote the same way coordinate-wise application of it. Then α − ( V ( p , . . . , p n )) = V ( p ◦ α, . . . , p n ◦ α ). Functions p i ◦ α might not be polynomial, however for a polynomial p ( x , . . . , x n ) = P ni =0 a i x i equality( p ◦ α )( x , . . . , x n ) = 0 is equivalent to a polynomial equation P ni =0 α − ( a i ) x i = 0. ◀▶ Definition 23.
We call a word substitution p : Σ → Σ ∗ com-injective if w p ( w ) isinjective, when treated as a mapping of commutative words.By abuse of notation, we also denote as com-injective a polynomial substitution, which isan image of com-injective word substitution by our string-to-polynomial encoding. ▶ Lemma 24. If p is a substitution for one letter, call it σ , (in other words, p is an identityfunction on all letters except σ ) and it does not vanish letter σ , then it is com-injective.Example of such substitution is p : a bacbaab . A non-example of such substitution is p : a bbc . Proof.
Straightforward. ◀ In the following lemma we characterise word substitutions that induce field automorphisms viaour string-to-polynomial encoding. Finding such word substitutions is challenging, as almostno word substitution induces an automorphism of field Q ( e Σ ∪ Σ). However, a reasonablylarge class of word substitutions induces automorphisms of the field Q ( e a, a Q ≥ , a ∈ Σ), anextension of Q ( e Σ ∪ Σ) that is defined below.
Notions of a polynomial and a rational function, considered as formal expressions, canbe extended to situation where some of variables have exponents from an arbitrary infinitemonoid, that can be embedded in some group – “ordinary” polynomials use monoid ( N , + , Q ≥ , + , K be a field. By K [ e a, a Q ≥ , a ∈ Σ] wedenote the ring of polynomials over variables e Σ ∪ Σ where variables Σ have exponents in( Q ≥ , + ,
0) and by K ( e a, a Q ≥ , a ∈ Σ) = { pq | p, q ∈ K [ e a, a Q ≥ , a ∈ Σ] , q ̸ = 0 } the correspondingfield of rational functions; let us emphasize that the latter contains elements with negativeexponents as well, e.g. a − / = a / . A subtlety.
There is a subtlety regarding defining evaluations. In field K ( e a, a Q ≥ , a ∈ Σ),as opposed to K ( e Σ ∪ Σ), evaluation is not defined for every vector: for it to do so, it mustevaluate variables from Σ on monomials in variables from Σ; however polynomial substitutionsinduced by word substitutions via our word-to-polynomial encoding have that property. ▶ Lemma 25.
Com-injective word substitutions induce automorphisms of field Q ( e a, a Q ≥ , a ∈ Σ) .Non-com-injective word substitutions do not induce automorphisms of any field that contains Q ( e Σ ∪ Σ) . ▶ Corollary 26.
Grammar Y from Introduction is a polynomial grammar with simultaneousautomorphisms via our string-to-polynomial encoding. Proof.
Substitutions in the grammar are simultaneous – both register transducers applythe same word substitutions at the same steps on all of their registers (notice that updateof register S does not use substitution explicitly, but it could with no difference, as stringsstored in S do not contain symbol ◀ From Lemma 25 one can conclude Theorem 27. ▶ Theorem 27.
Register transducers with simultaneous evaluations of com-injective substi-tutions have decidable equivalence.
Proof.
Due to Lemma 25, the corresponding polynomial grammar with evaluations is apolynomial grammar with simultaneous automorphisms, when considered over the field Q ( e a, a Q ≥ , a ∈ Σ). Its zeroness is decidable due to Lemma 22. ◀ Now we give a proof of Lemma 25 for an example substitution, in order to to avoid unnecessaryformalism; the proof idea is the same in the general case, for which we give a proof in SectionA.4.
Proof of Lemma 25 for an example substitution.
Let Σ = { a, b } . Consider a substitutionof words p : a ∗ → a ∗ defined as p : a aa . Then induced substitution of polynomials is p ′ : e a e aa + e a, a a . This substitution is not invertible when considered in the field Q ( e Σ ∪ Σ), however we show it is invertible when considered in the field Q ( e a, a Q ≥ , a ∈ Σ).To find the inverse substitution, we consider a system of equations: (e a ′ = e a · ( a + 1) ,a ′ = a . (3)Second equation is purely in variable a , hence we solve it first; it is a linear equation, wherethe exponents play the role of coefficients from the field Q . We get a = a ′ / . We substitutethis into the first equation and get e a ′ = e a · ( a ′ / + 1) , This is a linear equation in variable . Schmude 13 e a with coefficients in the field Q ( e a ′ , a ′ Q ≥ ). Solving it, we obtain e a = e a ′ a ′ / . This showsthat substitution e a e a ′ a ′ / , a a ′ / is the right-inverse of p . It is a two-sided inversebecause the equations are linear (in the mentioned sense). This finishes the proof for thisexample. ◀▶ Remark 28.
Let us notice that for some grammars, Theorem 27 can be reduced to zeronessof polynomial grammars without substitution by simply removing the automorphisms fromproduction rules – for example this is the case when polynomial functions used in productionshave integer coefficients. However this is not true in general when “new” occurrences ofsubstitutable constants are introduced in the productions. For example, consider polynomialgrammar with substitution over Q [ a, b ] with production rules S → p ( X ) , X → q ( Y ) , Y → a − b, where p, q : Q [ a, b ] → Q [ a, b ] are defined as p ( f ) = f + b, q ( f ) = f [ b := a + b ]. Then S = 0,but if automorphisms were removed, we would have S = a . Theorem 19 draws a rather pessimistic view on polynomial grammars with substitution overring of polynomials – even almost the simplest model has undecidable zeroness. In this paperwe show positive results when the model is restricted either to independent substitution(Theorem 16) or to evaluations (Theorem 27). Theorem 16 can be interpreted as decidabilityof testing infinite systems of equations on languages, where both the system and the languagecan be generated by register transducers (Section 3.3). Theorem 27 seems to have largelimitations: first, every evaluation must be “simultaneous” i.e. in each production the sameevaluation has to be applied to all coordinates of all nonterminals at once, second, thisevaluations needs to induce a field automorphism, which excludes evaluations that vanishletters as they are not an injective. Having said that, in Introduction we define grammar Y that satisfies both these conditions and can be used to decide equivalence of two registertransducers (also defined in Introduction) that compute function sqrev .Finally, we ask open questions. First one is about expressiveness of register transducerswith evaluations (no automorphism condition). What are other interesting string-to-string functions computed by register transducerswith evaluations whose evaluations are not allowed to vanish letters?Function similar to sqrev , that maps each word w to rev( w ) | w | seems not to be an example,as it seems to require introducing symbol sqrev and then vanishingit. Also, it is interesting what problems about register transducers are decidable, in particular: Is equivalence undecidable? Is equivalence decidable if we restrict to register transducers with evaluations (thisquestion could be asked also for polynomial grammars)?
References Rajeev Alur. Streaming string transducers. In Lev D. Beklemishev and Ruy de Queiroz,editors,
Logic, Language, Information and Computation , pages 1–1, Berlin, Heidelberg, 2011.Springer Berlin Heidelberg. Toshiro Araki and Tadao Kasami. Some decision problems related to the reachabil-ity problem for petri nets.
Theoretical Computer Science , 3(1):85–104, 1976. URL: , doi:https://doi.org/10.1016/0304-3975(76)90067-0 . M. Benedikt, T. Duff, A. Sharad, and J. Worrell. Polynomial automata: Zeroness andapplications. In , pages 1–12, 2017. doi:10.1109/LICS.2017.8005101 . M. Benedikt, T. Duff, A. Sharad, and J. Worrell. Polynomial automata: Zeroness andapplications. In , pages 1–12, 2017. doi:10.1109/LICS.2017.8005101 . Adrien Boiret, Radoslaw Piórkowski, and Janusz Schmude. Reducing Transducer Equivalenceto Register Automata Problems Solved by "Hilbert Method". In Sumit Ganguly and ParitoshPandya, editors, , volume 122 of
Leibniz International Proceedingsin Informatics (LIPIcs) , pages 48:1–48:16, Dagstuhl, Germany, 2018. Schloss Dagstuhl–Leibniz-Zentrum fuer Informatik. URL: http://drops.dagstuhl.de/opus/volltexte/2018/9947 , doi:10.4230/LIPIcs.FSTTCS.2018.48 . Mikołaj Bojańczyk. Polyregular functions, 2018. arXiv:1810.08760 . Mikołaj Bojańczyk and Janusz Schmude. Some Remarks on Deciding Equivalence for Graph-To-Graph Transducers. In Javier Esparza and Daniel Kráľ, editors, , volume 170 of
LeibnizInternational Proceedings in Informatics (LIPIcs) , pages 19:1–19:14, Dagstuhl, Germany, 2020.Schloss Dagstuhl–Leibniz-Zentrum für Informatik. URL: https://drops.dagstuhl.de/opus/volltexte/2020/12752 , doi:10.4230/LIPIcs.MFCS.2020.19 . Mikołaj Bojańczyk. The hilbert method for transducer equivalence.
ACM SIGLOG News ,6(1):5–17, February 2019. URL: https://doi.org/10.1145/3313909.3313911 , doi:10.1145/3313909.3313911 . Mikołaj Bojańczyk, James Worrell, Mahsa Shirmohammadi, and Sandra Kiefer. Personalcommunication. David Cox, John Little, and Donal O’Shea.
Ideals, Varieties, and Algorithms. An Introductionto Computational Algebraic Geometry and Commutative Algebra . Fourth edition edition, 2015. doi:10.1007/978-3-319-16721-3 . Eitan M. Gurari. The Equivalence Problem for Deterministic Two-Way Sequential Transducersis Decidable.
SIAM J. Comput. , 11(3):448–452, 1982. S. Lasota and R. Piórkowski. Personal communication. Michael O. Rabin. Computable algebra, general theory and theory of computable fields.
Transactions of the American Mathematical Society , 95(2):341–360, 1960. URL: . Helmut Seidl, Sebastian Maneth, and Gregor Kemper. Equivalence of deterministic top-downtree-to-string transducers is decidable.
J. ACM , 65(4), April 2018. doi:10.1145/3182653 . A AppendixA.1 Formal presentation of Section 3.3
In this section we give a formal presentation of the problem presented in Section 3.3. For apolynomial grammar A , by abuse of notation we identify it with its language. We representequations as a pair of polynomials, denoted as e = ( e , e ); a potential solution v is a vectorof polynomials; v is a solution of e iff e ( v ) = e ( v ). Independent equation satisfiabilityInput: . Schmude 15 ∆ - finite alphabet , X - finite set of variables , E ⊆ (( Q [∆])[ X ]) - set of equations in variables X , given by polynomial grammar E ofdimension 2. T ⊆ ( Q [∆]) | X | - tested language , given by polynomial grammar T of dimension | X | , Question:
Is it the case that for all inputs ( e , e ) ∈ E, v ∈ T : e ( v ) = e ( v )? Dependent equation satisfiabilityInput: ∆ - finite alphabet , X - finite set of variables , G - polynomial grammar over ( Q [∆])[ X ] of dimension ( | X | + 2) Question:
Is it the case that for all inputs (( e , e ) , v ) ∈ G : e ( v ) = e ( v )? A.2 Detailed proof of Theorem 19
In this section we give a details of the construction of register transducer from proof ofTheorem 19. ▶ Theorem 19.
Zeroness of polynomial grammars with one substitution over Z [ x ] is unde-cidable. Details of construction from 19.
Given a reset VASS V we construct a register transducerwith substitution over ring Z [ x ] that uses substitution once per run such that V can reach from if and only if the register transducer returns a non-zero output on some input. Weomit description of the states as it is clear. Description of register transducer:
Registers: R : will store Z [ x ] ( reachability test register ), R ( aux )1 : will store Z ( auxiliary register ), R : will store Z ( error register ), S , S , . . . , S dim : will store Z (counter registers) . Input alphabet:
Σ = set of transitions of V . Output function: output = ( , if state is rejecting ,R [ x := S + . . . + S dim ] · R , else . Invariants.
Observe, that run of reset VASS can be identified with a word over analphabet consisting of its transitions. Registers after reading a run of V of length n satisfythe following: S , . . . , S dim ∈ Z are current coordinates of V , viewed as Z - VASS (i.e. can go below 0), R = 0 iff some coordinate of V went below 0 (hence R checks correctness of the run), R [ x := S + . . . + S dim ] ̸ = 0 iff current point is , a. R [ x := i ] = 0 iff i ! = 0 for integer i from range [0 , n ], b. R ( aux )1 = n . Construction of polynomial grammar with one substitution:
Initial values of registers: S , . . . , S dim = 0 R = 1: R : a. R = 1, b. R ( aux )1 = 0. Update of registers : S , . . . , S dim are incremented, decremented or reset to 0, according to read transition, R : a. R = R · ( S ′ + 1) · . . . · ( S ′ dim + 1), where S ′ i is the value of S i after the update. R : a. R = R · ( x − R ( aux )1 ) (recall x is a constant in Z [ x ]), b. R ( aux )1 = R ( aux )1 + 1. ◀ A.3 Proof of Theorem 16 without algebraic closure
In this section we present the proof of Theorem 16 without introducing the notion of algebraicclosure of a field. ▶ Observation 29 (Representing algebraic sets – not unique) . There is a subtlety regardingrepresenting algebraic sets. Algebraic sets are not represented by ideals of polynomials thatzero on them ( I ( V )) but by ideals that they are zeros of ( I such that V = V ( I )) – these twonotions coincide in case field is algebraically closed and radical of I is taken (taking radicalof I does not change V ( I )) due to Fact 35. The former is a unique representation, but wedo not choose it because of computability issues. It is not clear how to decide for a givenideal, even for a radical one, if it is of form I ( V ) (it might be merely contained in I ( V ) for V = V ( I )). Therefore, it is not clear how to enumerate such ideals and, if we chose it as therepresentation , algebraic sets.This subtlety is relevant to Sublemma 2. Assume that V was given by an ideal that issmaller than I ( V ). Then there are two options:test for condition (2) is passed, which gives a true positive (we show that in a moment),ortest for condition (2) is failed, potentially giving false negative. Such event fortunatelywill be covered either by a true positive when enumerating V (again) by I ( V ) or by somepreviously enumerated true positive. ▶ Observation 30.
Let algebraic set V be given by ideal I , i.e. V = V ( I ). Then coordinatering of V is a quotient of K [ X ] /I . Proof.
Straightforward from I ⊆ I ( V ), which follows from definition of I ( V ). ◀ Before we prove the main result of this section, let us state the following lemma. ▶ Lemma 31. ([10, Chapter 4, §8, Corollary 10 and remarks at the end of Chapter 4,§8]) Let K be a computable field. Then every radical ideal I effectively admits a primedecomposition . Now we are ready to present the main proof. . Schmude 17
Proof of first bullet point.
Let us go through the algorithm for Sublemma 2 and see ifindeed positives are true, even for V being represented by radical ideal I contained in I ( V ). If A is zero, treated as a polynomial grammar over K [ X ] /I , the more it is when zerotreated as a polynomial grammar over coordinate ring (Observation 30). Is crucial that whendecomposing V into irreducibles, we use algorithm for prime decomposition (Lemma 31) ofthe ideal – then this ring has no zero divisors (Lemma 12) and hence decidability followsfrom Lemma 13. ◀ A.4 Proof of Lemma 25
In this section we give the proof of Lemma 25 used in the proof of Theorem 27. ▶ Lemma 25.
Com-injective word substitutions induce automorphisms of field Q ( e a, a Q ≥ , a ∈ Σ) .Non-com-injective word substitutions do not induce automorphisms of any field that contains Q ( e Σ ∪ Σ) . ▶ Lemma 32.
Let p : Σ → Σ ∗ be a com-injective word substitution. The following two linearmappings of | Σ | -dimensional linear spaces are invertible: (i) e w g p ( w ) of linear space of formal linear combinations of variables e Σ with coefficientsin the field Q (Σ) , (ii) w p ( w ) treated as a mapping of commutative words, extended to Q -linear space Q Σ We illustrate the statement of above lemma with the following example. ▶ Example 33.
Let Σ = { a, b } and p : a ab, b babb .Values of Q ( e Σ ∪ Σ)-linear mapping p in basis e Σ are: p ( e a ) = e ab = e ab + e b,p ( e b ) = g babb = e bab + e ab + e bb + e b. Values of Q -linear mapping p on basis Σ (coefficients are in exponents) are: p ( a ) = ab = a b ,p ( b ) = babb = a b , (recall in (ii) outputted words are considered commutative) hence the corresponding matricesare " b b ab + b + 1 and (cid:20) (cid:21) . They are invertible: determinants are equal to, respectively, ab + b and 2. Proof of Lemma 32. (ii) is straightforward from definition of com-injectivity. Observe thatmapping from (ii) is the same as mapping from (i) when 1 is substituted for variables fromΣ; the same holds for their determinants, and hence if determinant for (ii) is a non-zeronumber, determinant for (i) is a non-zero polynomial. ◀ No we proceed towards the proof of Lemma 25. By explicit form of a homomorphism we meana substitution that defines it; a homomorphism given in this form is said to be given explicitly .We write systems of equations as (name of equation: equation); we define subsystems bygiving equation names.
Proof of Lemma 25.
Assume substitution p is com-injective. To find the inverse substitution(if exists) we consider system of equations S = { e σ : e σ ′ = g p ( σ ) }∪{ σ : σ ′ = p ( σ ) } . Σ-subsystemof S is purely in variables Σ hence we solve it first. Right hand sides are monomials andit can be seen as system of linear equations, where exponents play the role of coefficientsfrom field Q ; we solve it (solution exists – its existence is equivalent to (ii) of Lemma 32).This solution gives explicitly an automorphism of K ( a Q , a ∈ Σ) which naturally is alsoan automorphism of K ( e a, a Q ≥ , a ∈ Σ). We substitute this to e Σ-subsystem and obtain asystem of linear equations in variables e Σ’ and coefficients in K ( e a, a Q ≥ , a ∈ Σ); this systemis automorphic to e Σ-subsystem of S and hence has a solution (due to (i) of Lemma 32). Itssolution, together with solution of Σ-subsystem, gives the right-inverse substitution explicitly.It is a two-sided inverse because both systems of equations were linear (in the mentionedsense).The proof of the converse is analogous, which finishes the proof. ◀ A.5 Proof of Lemma 39
In this section we prove Lemma 39 used in the proof of Theorem 16. It is a well known result(e.g. implicit in [10, Chapter 5, §2 and §3 and §4]), but we did not find an explicit reference.
Preliminaries. By K [ X ] we denote over some field K and a finite set of variables X .Every ideal I in ring K [ X ] induces a congruence ∼ I defied as f ∼ I g iff f − g ∈ I , for f, g ∈ K [ X ]. By K [ X ] /I we denote quotient ring K [ X ] / ∼ I . For f ∈ K [ X ]. A radical of anideal I is the set √ I = { f ∈ K [ X ] | f n ∈ I for some n ≥ } ; it is an ideal. An ideal I is radical if f n ∈ I implies f ∈ I for all polynomials f and n ≥
0, or in other word, I is equalto its radical. Let V be an algebraic set. A coordinate ring of V is the ring of polynomialfunctions from V to K . A ring is called a computable ring if its elements can be enumeratedin a way that ring operations are computable functions. ▶ Fact 34. ([10, Remarks at the end of §2 of Chapter 4] ) Given ideal I in K [ X ] , one cancompute its radical. ▶ Fact 35 ([10], Chapter 4, §2, Theorem 7 (iii)) . Let K be an algebraically closed field. Thenmappings V I ( V ) , I V ( I ) form a bijective correspondence between algebraic sets andradical ideals. Representation.
For effectiveness of results, we assume that K is a computable field , i.e.its elements can be enumerated such that field operations are computable functions. Thenwe represent objects used by algorithms as follows:ideals are represented by finite sets of generators; every ideal admits such a representationdue to Hilbert’s Basis Theorem (Fact 8), and algebraic sets are represented by ideals that they are zeroes of, i.e. an algebraic set V isrepresented by I such that V = V ( I ). Proof of Lemma 39. ▶ Fact 36.
Let K be a computable, algebraically closed field. Given algebraic set V , one cancompute I ( V ) . Proof.
Let V be represented by ideal I . Then I ( V ) is the radical of I (Fact 35); it can becomputed (Fact 34). ◀▶ Fact 37. ([10, Chapter 5, §3, Proposition 5]) Quotient rings are computable rings. Moreprecisely, given ideal I , ring K [ X ] /I is a computable ring. . Schmude 19 ▶ Fact 38. ([10, Chapter 5, §2, remark about Theorem 7 after Definition 8])] For an algebraicset V , its coordinate ring is isomorphic to K [ X ] /I ( V ) . ▶ Lemma 39.
Let K be an algebraically closed field. Then, given algebraic set V , one cancompute its coordinate ring and it is a computable ring. Proof.
Coordinate ring is isomorphic to K [ X ] /I ( V ) (Fact 38). It can be computed from V ,as we can compute I ( V ) (Fact 36). It is a computable ring (Fact 37).) (Fact 36). It is a computable ring (Fact 37).