L I B R.AR.Y OF THE UN IVLRSITY Of ILLINOIS s\o. & 0) and F[x] = -1 (x < 0). A method of analysis based on this model is proposed for learning the state behavior of nets, and a canonical form for any net proposed. It is demonstrated that, under very general assumptions, any net of this kind must proceed from any initial state to an equilibrium state, and a bound is given on the number of vertex state changes which can take place in such a transition. Results are presented which describe the character of the stable states of such nets and place bounds on the number of such states. Approaching the problem from a more conventional point of view, one can define a family of functions which expresses the state behavior of any vertex in the net as a Boolean function of the states of the other vertices and of the inputs . This family of functions is shown in this case to have a structural property called "pairwise monotonicity, 9f a generalization of the usual concept of Boolean monotonicity to families of functions. It is demon- strated that this property and its extensions play a major role in determining logical design techniques for nets of this kind/ they make it impossible, for example, to simulate any directed logical net having feedback , The presentation concludes with a discussion of the synthesis of bilateral threshold switching nets. It is demonstrated that all "idempotent automata"- -automata incapable of distinguishing the single input "a" from the input sequence "a followed by a"--are realizable as nets of this type, and two schemes are given for achieving such realizations . The possibility of develop- ment of synthesis techniques capable of achieving more general net topologies than those resulting from the two schemes mentioned above is also discussed, and shown not to be feasible with present knowledge of the theory of threshold logic, 1. INTRODUCTION 1.1 Preface Extant theories of logical design conventionally make several assumptions regarding the characteristics of the logical elements used in forming networks; among the most fundamental of these is that of directivity of information flow. The convention which leads one, when building logical networks, to think in terms of logical elements with separate sets of input and output terminals, has practical origin in the fact that most of the devices used heretofore in the construction of logical networks have been three- terminal devices . The growing number of two-terminal bistable devices --networks of which are basically nondirective with respect to information flow- -has , as observed _ [12, 15, 17A8] t . , ,, . . , ... .. by several authors, ' ' created new problems associated with the artificial imposition of directivity,, These problems are in some cases so severe as to counterbalance other desirable features which a device may possess. The question thus arises: Instead of forcing basically bilateral networks to meet conventional logical design requirements, might one profitably revise one's concepts of logical design to conform to the characteristics of such devices? It is the purpose of this dissertation to initiate a theory of logical design for networks in which information is not constrained to flow in only one direction along a connection between devices. A model for a general class of such "nets" will be proposed, and an analysis procedure derived for learning their state behavior. We shall prove several theorems demonstrating properties of these nets, including some which demonstrate essential differences between them and conventional directive logical networks. In addition, we shall show ' Superscripts in brackets refer to references listed in the bibliography, -1- -2- properties of a set of Boolean functions associated with such nets and demonstrate the realizability of a large class of sequential machines by giving two schemes for achieving such realizations. We shall discuss also the problem of realizing sequential machines using techniques which will lead to more general net topologies than the ones resulting from the two schemes mentioned above o 1.2 An Outline of Bistable Device Characteristics One can associate with most known bistable devices a quantity, corresponding to potential energy, which is similar in form to the idealized characteristic shown in Figo lal 3 3 The variable x in this figure is a generalized coordinate representing the quantity which is switched. Corres- pondingly, one can plot the derivative of the potential energy curve of Figo laj this is proportional (but opposite in sign) to the restoring force exerted by the system, and is shown in Figo lb. The ordinate y thus shows the external force necessary to maintain a given value of xj y is therefore the "switching" variable. The quiescent values of the switched variable are seen to be + x~, and the system is constrained to move along the curve, Consequently, any attempt to increase y beyond +y when the system is in state -x_ will result in a transition to the +x n state, and similarly for -y_ and +x n » 1.3 Networks of Tw o-Term inal Bistable Devices The most "natural" configuration for a net of two terminal devices is one in which one terminal of each device is used for reference, while the other is available for connection to other elements. This requires the sensing of x and y at a common terminal, and precludes their being the same kind of variable. In a logical network, the value of y for a given element -3- V (a) Potential Energy Carve for a Bistable Device (b) "Force vs. Distance" Curve for a Bistable Device Figure 1 will ideally be a function at any given time of the values of x associated with the neighboring elements, and independent of the value of x associated with its own element , and of time. This idealized behavior is not always strictly adhered to by actual devices . In the networks which we will consider, y will be a weighted linear sum of the neighboring x's. The choice of such a function is prompted primarily by the fact that such "threshold" or "linearly separable" behavior is common to most known two-terminal bistable devices, including all of those mentioned previously, and only secondarily by its simplicity,, We allow both positive and negative weights to attach to the variables in the sum because physical networks seem to justify this alsoj that is, it seems feasible in at least same cases to make connections of a bilaterally inverse nature between devices. In parametron or core nets such a connection might be achieved by reversing a winding, or alternatively, in the former case, by adding an extra one-half wavelength of wire between devices,, In the case of tunnel-diode networks, there may be some question as to the present feasibility of such connections, but the art and technology of these devices is enough in its infancy to preclude dis- allowing such connections on this ground alone, particularly when such excellent physical models exist in the other cases. 1.4 Threshold Switching Functions The notation used in the treatment of threshold functions varies widely from author to author. For clarity, therefore, we pause at this point to make some definitions. Definition .' A switching function, as used here, will be a mapping from {-l,l) n to (-1,1) j that is, a switching function maps n-tuples of elements from the set {-1,1} onto that set. -5- Def inition : A switching function f is a threshold switching function when there exists a set of positive integers (k,a ,... ; a } such that for all X e (-1,1) -,n f(X) = J +1 if E a.x. - k > 1-1 X X ■1 if E a.x. - k < 1-1 X X (1.1) We now proceed to the development of a model for bilateral threshold switching nets „ 2, A MATHEMATICAL MODEL FOR BILATERAL THRESHOLD NETS 2.1 Rationale The advantages to be gained from the development of a simple and accurate mathematical model for bilateral threshold switching nets are manifold. One is enabled,, through use of such a models to consider the general properties of network behavior without reference to physical parameters such as voltage level or current flow in each analysis. The results, are a sshorteni.ngi'of lithe arguments associated with various demonstrations and a concise method of analysis, as well as some new insights. In addition,, our choice of a graph- theoretic model will enable us to use results from the literature of that field. It is, of course, of the greatest importance that we refer frequently to the characteristics of physical devices to avoid making any unwarranted assumptions. An important characteristic of the nets under consideration is that, for a given set of elements , network topology completely determines network behavior. This fact leads us to draw upon linear graph theory for a model, and the additional fact that the connections between elements are nondirective leads us to propose a nonoriented linear graph as a model. 2.2 The Model Let I be the set of integers, I the set of nonzero integers, and B the set {-1,1} . Definition ; A bilateral threshold switching net, N, is a nonoriented, weighted, linear graph consisting of a finite set, V, of vertices -- which we shall number 1 through n and thenceforth denote by their numbers--and a set, R, of weighted branches satisfying; •6- -7- 1) R C (I x V x V) 2) for no i is (q, i,i) e R, where q € I 3) (q,j,i) € R - (q,i,j) e R k) for at most one q is (q, i,j) € R Definition : The "degree," p., of vertex i will "be equal to the sum of the magnitudes of the weights of the branches incident; that is, p. = E |q| such that, for some j, (q>i>j) e R- Definition : To each vertex i, of degree p., we will assign an ordered pair (z.,k.), where z. 6 B and k. e I and -p. < k. < p. . z. will be ^ v \ 3 i" 1 1 *i — i — *i I called the "state" and k the "threshold" of vertex i. From this ordered pair, and from the topology of the linear graph, we can compute a third quantity, d., the "desired state" of vertex i, in the following way: Definition: Let F[x] he a function mapping I to B defined as follows: t F[xl = I 1 if x > -1 if x < V Extending this definition to vectors, X, the ith . component of F[X] is defined: F[X]. = F[x.] Definition : For an autonomous bilateral threshold switching net of n vertices, let A 1 be a symmetric "connection matrix" of dimension n defined by: -8- q if (q,i,j) € R otherwise Note again that the diagonal entries of A are zero, and a 1 , is unique Definition : For an autonomous bilateral threshold switching net of n vertices., let Z' be a column "state vector" of dimension n, where? z! = state of vertex i 1 Definition : For a bilateral threshold switching net of n vertices, let K be a column "threshold vector" of dimension n, where: k. = threshold of vertex i l Definition : For an autonomous bilateral threshold switching net of n vertices^ let D be a column "desired state vector" defined by: F[A 8 Z ! - K] = D (g.l) Then for any vertex , i, d. is the desired state. Definition: Vertex i will be said to be "excited" if z! / d. and — i ' i "relaxed" if z\ = d. . i l 2„3 State Behavior of the Model Information is transmitted through the network by the changing of state of excited vertices. No vertex which is not excited may change state. It is easily verified that the "changing of state" behavior modeled here corres- ponds in all relevant respects to the switching of a threshold element from one stable state to the other in the physical network. Implicit in our model also -9- is the facility for making one adjacent vertex have greater influence than others on the behavior of a given vertex through appropriate choice of branch weights o One influences the behavior of the network through inputsj these may be treated as additional vertices which, once set, maintain their state values, independent of the behavior of the vertices adjacent to them. In some cases it becomes convenient, for consistency^ to assign a threshold of +p. to each input, i, in the (+l) state and a threshold of -p. to each input in the (-1) state, where p. is again the degree of the (input) vertex . Then the inputs can be treated in the same fashion as other vertices., This requires changing the thresholds of input vertices for changing input state, however. 2 .h Speed Independence and Semi -Modularity Two additional concepts which bear introduction at this time are those [22 1 of "speed independence" and 'semi -modularity. " Definition : An internal state of a net with n internal vertices and q inputs is an n- tuple of valuations z. over the internal vertices of the net. An "input state" is likewise a q- tuple of valuations z. over the input vertices of the net. A "total state," or merely a "state" of the net is an (n+q)-tuple composed of the Cartesian product of an internal state and an input state „ Definition : A bilateral threshold switching net will be said to be "speed- independent with respect to a given (total) state" if, under con- stant input, the final (total) state is independent of the order of change of excited vertices at all stages of the transition. -10- Def inition : A bilateral threshold switching net will be said to be "'semi -modular with respect to a given (total) state" if, under constant inputs all possible sequences of changes of excited vertices have the property that no vertex passes from excitation to equilibrium without changing o [221 It has been shown' that semi -modularity is a sufficient, but not a necessary, condition for speed independence . 2o5 The Balance Condition In the course of tracing the behavior of a net, we allow the excited vertices to change state, one by one We do not allow simultaneous changes to take place at adjacent vertices for the following reason: The sole case in which allowing simultaneous changes would yield ambiguous results is that in which two adjacent vertices are excited and a change in the state of either alone would also relax the other „ The vertices are thus "mutually exciting" one another „ If we return to consider the physical net and recall again the device characteristics shown in Fig„ 1, we note that if we assume a positive branch joining the two vertices, 1 and 2, then vertex 1 is in the state cl, corresponding to the point lettered "d" in Fig„ lb, and vertex 2 is in the state g corres- ponding to the point lettered "go" Now because of manufacturing tolerances, it is unlikely that the points e and e cr f and f on the two curves governing the behavior of devices 1 and 2 will coincide, or even that either curve will be symmetric , As device 1 begins to move along its curve from d to e , device 2 begins to move from g to f ; thus values of y are opposite in reference with respect to y .. Now assume jy j < jy |^ then when device 1 reaches e e l 2 and turns to approach f , device 2 will also reverse direction and head back -11- for g p = Conversely, if jy j > | y J _, both devices will come to rest in state d, e l 2 A similar argument, "beginning with like states and resulting in unlike states,, holds for the case in which a negative branch joins the two vertices. This "balance condition" situation clearly does not occur in semi- modular nets, although it may occur in speed-independent nets, and must occur in speed-dependent nets (see theorem 3=7)° Since semi-modular circuits are the largest subclass of speed- independent logical circuits which are currently well understood, the situation would not, in practice, be encountered often . It is worthy of consideration, however, because it represents the sole possible exception to the cycling theorem (3°^)° Although some bistable two-terminal devices may, under certain circumstances, exhibit behavior which seemingly is in conflict with the simultaneous change condition, such behavior when it does occur depends not on any essential characteristics of the devices themselves, but rather on such experimentally introduced parameters as inter-element signal transmission delay. There is nothing in the physical characteristics of the devices which contradicts the hypothesis that another configuration, for example deposited elements or hybrid networks, might not make such behavior impossible „ 2„6 Nets with Inputs We have already noted that the desired state of an autonomous net may be expressed in terms of the present state using equation (2„l) We have also noted previously that inputs to a net may be treated as additional vertices whose states do not change, regardless of the behavior of adjacent internal vertices. This last property makes it unnecessary to add rows to A 1 to corres- pond to input vertices . Thus we have: Definition : For a bilateral threshold switching net with n internal vertices and m inputs, let A be a "connection matrix": -12- A = [a. ] A = n x (n + m) •'-J where s 1) for all I, and < j < n: a. . = a! . - ij ij 2) for all i; and n < j < n + m: a..= weight of branch J joining vertex i and input j. Note that A' is the principal square submatrix of A, and that the inputs are numbered beginning at n + 1. In like manner > we have: Definition : For a bilateral threshold switching net with n internal vertices and m inputs., let Z be a column 'state vector 11 ' of dimension (n + m) where : 1) for < i < n, z. - z! — ' l l 2) for n < i < n + m, z. = state of input i. We can now write, for an arbitrary network: F[AZ - K] = D (2.2) Furthermore j we can characterize the ! 'steady-state i! behavior of nets: Definition : An "equilibrium state" of a bilateral threshold switching net is a total state in which no vertex is excited e Clearly, for any equilibrium state, Z FfAZ - K] = V (2.3) — e — — e 2 , 7 Analysis of Synchronous Net s ■ The matrix equation (2.2) provides a convenient description of t he- state behavior of a bilateral threshold switching net subject to synchronous -13- operatiorio If one impresses an external "clock" signal on all of the vertices of a net in such a fashion that excited vertices can change only at regular, specified intervals and must change in any such interval, then D becomes the next internal state of the net. We thus get a whole sequence of equations of the form (2.2) as the net passes through a state sequence Z ,Z , . ,, . ; F[AZ. - K] = D i = 1, 2, ... (2.U) where in each case, D. = Z! , . ' -l -i+I In this way^ one can easily trace the state behavior of the network, provided he also checks to see that the "balance condition" described in section 2.5 does not occur, In synchronous operation, this condition will be indicated by the excitation of a pair of vertices in both a given state and its successor. 2,8 Analysis of Asynchronous Nets In the case of asynchronous nets, the situation is more complex . One of the principal questions to which one seeks an answer through analysis is that of speed independence, Since no systematic procedure exists for checking this, 4 one normally checks for semi-modularity instead, ' and even in this case the only currently well-defined method for checking this consists of tracing all possible [2] sequences of excited vertex changes. Even in the general case, this is not always necessary , but no really good method exists for eliminating unnecessary checks in a systematic fashion; this is true in conventional logic networks as well. We thus proceed in the following manner: In these nets, there is an alternative; see remarks following theorem 3° 7< -Hh We begin with the initial state of the net 5 Z_, and from it determine the corresponding desired (internal) state, D^o From this pair, we determine the excited vertices and allow these to change, one by one, checking all possible [2] sequences, in the manner of Bartky and Muller^ to insure that the same equilibrium state results in all cases. The procedure is somewhat simplified for bilateral nets over those of the directional variety in that the latter can cycle, while the former cannot, as will be shown in the next chapter,, For an example of the matrix technique, see Appendix A. 3, SOME GENERAL PROPERTIES 3.1 Introduction In this chapter, we shall demonstrate several properties which are characteristic of bilateral threshold switching nets. Some simple ones derive directly from the properties of the model developed in the last chapter^ others require slightly more elaborate derivations „ Together, however, they give additional insight into the behavior of such nets, 3.2 Graph-Theoretic Properties We begin by calling upon the literature of linear graph theory for a few classic results: Theorem 3°! ^ Any finite bilateral threshold switching net must have an even number of vertices of odd degree. Definition : Two graphs will be said to be "homeomorphic" if they can be converted into the same graph by an arbitrary number of repetitions of the following operation: Given a branch PQ of a graph, insert a vertex R into PQ to form two new branches PR and RQ Theorem 3°2 : (Kuratowski ) A necessary and sufficient condition that a network be planar is that it contain no subgraph homeomorphic to the graph of Fig, 2a or that of Fig, 2b , -15- -16- (•a) (b) Figure 2 Theorem 3°3 ° A necessary condition that a network which contains no self loops or branches be planar is that r < 3(v - 2) where r = number of branches v = number of vertices The proofs of these theorems have been omitted^ for they may be found s„ Theorems 3-1 and "3=2 are treated in Konii [27] _ ,„ a ... _„„_, ,„ B4 „, [26] [13] in several books . Theorems 3°1 and 3=2 are treated in Konig and in Seshu and Reed^ ' and theorem '3° 3,, is treated in Ringelo The applications of these theorems to printed circuit synthesis and other topology-dependent considerations are clear, 3«3 The Cycling Theorem We now come to a very powerful theorem which demonstrates an essential difference between the behavior of bilateral threshold switching nets and that of conventional directed logical networks „ ' f 1 The method of proof is a generalization of an idea suggested by R. 0, Winder in connection with a weaker theorem „ -17- Definition : Two vertices, i and J, of a net will be said to be "positively joined" if a. . > 0, and "negatively joined" if a < 0. -L J J- J The vertices will be said to be "adjacent" if they are either positively or negatively joined . Definition : A branch of a bilateral threshold switching net will be said to be "excited" if 1) it negatively joins vertices of like state or 2) it positively joints vertices of unlike state. Theorem 3-^ - Any state sequence of a bilateral threshold switching net under constant . input is nonrepetitive; that is, no state appears twice. Proof: In order that some state of a net repeat, it is necessary that some set of vertices undergo an even number of changes. Recall from section 2.5 that we can determine the behavior of a network by allowing the vertices to change one at a time. Now consider a vertex with degree p and threshold k which changes state twice ; In order for the vertex to change from the state (-l) to the state (+l), the sum of the magnitudes of the weights of the incident excited branches, (p - r), must "outweigh" the sum of the magnitudes of the weights of the incident relaxed branches, r, by at least k: excited branches J '. ( \ ; I relaxed branches |weight|sum = (p-r) ] '. I J • [ |weight|sum = r Figure 3 -18- Thus (p - r) - r > k or 2r < p - k (3.1) Similar ly > when the vertex changes from (+l) to i~~L)? we mUst have r- (p - r) < k 2r < k + p (3°2) Now in each case the net gain in weighted magnitude sum of excited branches is given by: r - (p - r) = 2r - p (3.3) Combining ( 3 « 3 ) and ( 3 = 1 ) we get 1 2r - p < -k (3.4) Combining (3. 3) and (3.2) we get: 2r - p < k (3=5) Thus,, the total net gain^ T s in the weighted magnitude sum of excited branches for the pair of transitions is bounded above by the sum of the right-hand sides of (3 A) and (3°5)s T < k - k = (3.6) Therefore any pair of changes in the state of a particular vertex decreases the weighted magnitude sum of excited branches „ Since this -19- sum is unique for a given total state, no internal state in a sequence can ever repeat under constant input. Corollary 1 : No bilateral threshold switching net can cycle --that is, pass repeatedly through a sequence of internal states --under constant input . Corollary 2 ; Any bilateral threshold switching net has at least one equilibrium state corresponding to each input state . It was mentioned in section 2.5 that the "balance condition" discussed there constituted the only possible exception to this theorem^ this can easily be seen, for if a pair of vertices in such condition were both to change simul- taneously, the sum of the excited branch weights might remain undiminished for a pair of changes at each vertex. 3.4 A Canonical Form We shall now demonstrate a useful canonical form for bilateral threshold switching nets. Definition : A majority vertex is a vertex of odd degree and threshold zero. Definition : A regular net is one in which all vertices have the same degree and threshold. Theorem 3Q ' To any bilateral threshold switching net, N, containing vertices which are not majority vertices, there corresponds a regular net, M, which is composed exclusively of majority vertices, and has state behavior indistinguishable from that of N in all cases. -20- Proof s Because of the symmetry of the vertex state representation and the asymmetry of the discrimination function, there exists an ambiguity in the threshold of any element. Consider the expression (Z a z. « k.)« When both the degree, p., and the threshold, k. , of vertex i are even, the value of this expression will be an even number or zero. Furthermore, under these conditions s F[Z a z - k . ] = F[Z a z - (k. - l)], since the argument of the letter function is always odd. Similarly, if both -p 'and k.. are odds We now demonstrate that, by choosing a large enough degree for the simulating vertex and connecting it to sources of (+l) and/ or (-l), one can simulate the behavior of a vertex of threshold x and degree y. Consider a majority vertex of degree (2q - l) with a connection of weight b to an input of (+l) and one of weight c to an input of (-I), For such an element, we haves F[Z a. .z. - k.] = d. (3,7) ij j i l v As far as the rest of the net is concerned, the degree of this vertex is (2q -b-c-l), and it behaves as if it had threshold (c - b)„ Accordingly, we may try to choose s x = (c - b) (3.8a) y = 2q - (b + c) - 1 (3,8b) Observe, however, that (c - b) and (2q -(b+c)-l) cannot both be even or odd. If x and y are both even, or odd, we >ta&e advantage of the ambiguity in threshold assignment and sets - • (■ • ) • (-,.* ') . ■*.. :.« u •') -21- x = (c - b) - 1 (3.8a" ) y - 2a - (c + b) - 1 (3°&V ) It is easily verified that one of the systems (3»8) always has a solution. One thus chooses the minimum value of q for each vertex of N^ then makes all of the others in the net M equal to the maximum of these minima,, The advantages of the use of the canonical form will become clear as we proceed to demonstrate further properties of these nets, but the following theorems should give some indication of its power. Theorem 3^6 . An upper bound on the number of vertex changes which can take place in a bilateral threshold switching net in proceeding from any present state to equilibrium., under constant input, is given by the sum of the magnitudes of the weights of the excited branches in the canonical network, Proof : The canonical network is composed exclusively of majority vertices and these have the property that each change of state reduces the magnitude i weight sum of excited branches by at least one.' Thus the total number of changes cannot exceed the magnitude of the original sum. Pursuing this approach still further, we can define a quantity which is like entropy in that it always increases. Definition : For a canonical bilateral threshold switching net, N, with, internal state Z' J , input state S, and connection matrix A, let n n n+m ii U{Z',S) = (Z') T ■ A • rz'.S] = Ez!( £a..z! + Z a..s.) (3=9) I] i=l X >1 1J J j=n + l 1J J Cf,, equation (3° 3)° Indeed, this provides an alternate proof of theorem 3°^-° 11 The superscript T denotes transpose. -22- The quantity UfZjS] is difference between the sum of the magnitudes of the weights of the relaxed branches and that of the excited branches. If Y' is a successor state not equal to Z°, then U{Z',S} < U{Y',S} Indeed, this format may be used to specify the possible outcomes to a balance condition situation by specifying that Y' is a legal successor state to Z' if and only if, for all excited vertices, i, which change in going from Z" to Y 1 : n n+m n n+m z.(Za..z». + E a. .s.) < y,( Za.,y». + Z a..s.) (3.10) We now come to a very interesting result, suggested by D. E, Mullen Theorem 3°7 s If a bilateral threshold net is speed-dependent with respect to a given initial state, then there must be some sequence of vertex state changes which can lead to the balance condition,, Proof ; If the net is speed-dependent, there must be at least two pos- sible equilibrium states to which it can proceed from the initial state. Call these states A and B and the inital state I- Now since no state can repeat, we may partially order the states which occur in proceeding from I to A and B, allowing only one vertex at a time to change state^ the states may be ordered chronologically „ The Hasse diagram for this partial ordering resembles Figo k. The finiteness of the chains I to A and I to B, and the unidirectionality of the transitions insure that there t must exist a group of states such as T, U, and V, ' having the property that the net may go from T to U or V, but that there exists no state W t For justification of this claim, see Appendix C. -23- accessible from both U and V, Note that T may be I, U may be A and B may be V. We now claim that the balance condition exists in state T» Figure 4„ States of a Speed-Dependent Net To see that this is so, consider the two vertices, i and j, which change in going from state T to U and V, respectively. Now i and j are both excited in state Tj suppose that the net proceeds to state U. Then i is no longer excited, and j may or may not be excited. Suppose it is. Then there is a state W accessible from U in which i and j are both relaxed and both have changed. By hypothesis, however, W is not accessible from V, and so i and j are both relaxed in V also, when only j has changed. We now have a contradiction, however, for states V and W differ only in the state of vertex i, and it is relaxed in both cases. Thus W does not exist and both i and j must be relaxed in both U and V, But this is exactly the balance condition. The proof may be extended to cases in which more than two equilibrium states are accessible by grouping the equilibrium states in pairs. -2k- It is fairly easy to construct examples of non-s^emi -modular speed- independent nets in which the balance condition occurs or fails to occur* Thus the class of nets in which the balance condition fails to occur is speed- independent, and properly contains the class of all semi -modular nets,, An analysis of a net for speed independence might therefore be conducted by looking to see that no sequence of excited vertex state changes can lead to the balance condition More use will be made later of the canonical form. 3„5 Equilibrium States We will now demonstrate some properties of "stable" or equilibrium states of bilateral threshold switching nets , Theorem 3°8 ° Whenever two stable states differ in the state of the jth (internal) vertex, they must differ also in the state of one or more of the vertices adjacent to j » Proof ; This is simply a restatement of the uniqueness of the state of any vertex as determined from the states of those vertices adjacent to it. An autonomous net or a net with constant input can thus have at most 2 stable states if it has n vertices. Even this bound is too high, however, as will be seen later*, Theorem 3°9 ° In a ^y bilateral majority switching net-, the complement of a stable state is stable. Proof i We note that Z = -Z. Therefore F[-Z] = Z (3.11) -25- Now if Z is a stable state of a majority net, since K = 0: F[AZ] = V (3.12) But then F[AZ] = F[-AZ] = Z' and Z is a stable state „ Note that it is the total state (and not just the input state) which is complemented o In a canonical network, therefore, the auxiliary sources must also be complemented in order to apply this theorem,, Complementation of the sources results, of course, in loss of the significance of the canonical network, That not all networks have more than one stable state is shown by the following example, ' for which the only stable state is (+l,+l): (3) Figure 5 An open question at this point is that of a good bound on the number of stable states which a network may possess. By means of an involved geometric argument, presented in Appendix B, one can obtain the bound of theorem 3 .10'., This, however, is still much greater than the largest number of stable states possessed by any network so far discovered „ The current record for number of ' Throughout this paper, numbers on vertices will represent thresholds, and numbers in parentheses will indicate branch weights. -26- stable states is held by the net of Figo 6„ " Since each pair of vertices can have the common state (+l) or (~1^ the total number of stable states is 2 n ' . The reader is invited to consider the problem of finding a good upper bound. n pairs of vertices Figure 6 Theorem 3° 10 ° No bilateral threshold switching net of n internal n-2 vertices may have more than 2 stable states, when n > 3° Proof; See Appendix B, Suggested by Do E„ Muller, k. PROPERTIES OF A FAMILY OF FUNCTIONS DESCRIBING BILATERAL THRESHOLD NETS i+d Introduction The matrix description of state behavior proposed in chapter 2 is well suited to the nets being considered here. Additional insights may be gained, however, from consideration of another description—one in common use in the treatment of conventional directed logical networks. Information obtained from consideration of this latter set of functions will therefore have the addi- tional advantage that it will lend itself easily to comparison with known results in the other area. We begin with a summary of some results concerning threshold logic; our treatment resembles most closely that of Winder „ k,2. Conventional Threshold Logic Definition ; Let f be a threshold switching function; then by a "valuation, !! V, on some subset of the arguments of f, we mean an assignment of value (-1) or (l) to each member of the subset. If V is a valuation,, then V is a valuation over the same subset, with (-l) and (l) interchanged in all cases. We denote by f the corresponding restricted function. Definition : If f and g are switching functions, we say that 1) g ^ f if; a) f and g have the same domain b) g has value (+l) whenever f does 2 ) g 3 f if : g^fbutf^g 3) g = f if : g 3fandf3 g Definition : A switching function, f, is ''t-monotonic" when, for every pair of valuations V and W, on some common subset of t or less variables, we have i -27- -28- f v E f w > or f w E V or b °th» Clearly, if y < t, t-monotonicity implies y-monotonicity. Theorem 4.1 ; • A threshold switching function of n variables is n- monotonic (completely monotonic). For readers more familiar with the terminology of "innate" functions? Definition ; A switching function is "positive (negative) in a given argu- ment" when the corresponding variable appears everywhere in some disjunctive normal Boolean expression without (with) negation. In either case, the function is "unate" in that argument. Theorem 4.2 ; A switching function is one-monotonic if and only if it is unate „ Corollary ; A threshold function is unate. Theorem 4.3 s A unate function has exactly one irredundant normal dis- junctive form (i.n.d.fjj this form consists of the disjunction of all prime implicants of the function. Further, this expression is unate, and so demonstrates the unateness of the function. 4 . 3 A Family of Functions Characterizing Bilateral Threshold Nets As an alternative to the treatment proposed in Chapter 2, one can describe a bilateral threshold switching net of n internal vertices and p inputs „ -. • [22] by a set of n Boolean equations : ' Proofs of theorems 4.1, 4.2, 4.3 may be found in Winder, among other places -29- d i = f i( s i'°"''V V ,,,Z n^ i = 1} 2 > '"' n ^ ol ) The s. are inputs and the z. internal vertex states, as before. Each of these equations describes the behavior of a single vertex in terms of the states of the other vertices in the net and the inputs, and all are threshold functions „ In the following treatment we will consider additional properties possessed by the members of this set of functions „ We begin with a central property resulting from the bilateral nature of the connections between vertices. k.k Pairwise Monotonicity Definition: Let f. = f.(s,,...,s , z.. , . „ „ , z ). Then if w e B is a 1 r 1' ' p 1' ' n constant, we denote by (f . ) the function: 1 w. J (f.) = f.(s ..,..., s , z., .',,■., z. n . «w,z. n ,...,z ) v rv. i v 1' 3 p > V .j-1 j+1 n' J and similarly for w = -w. Definition : Let (f.) be a family of functions, as above. Then if, for all i, j : (f.) => (f.)- - (f.) 3 (f.)_ (1^.2) 1 W . 1 w . J w . — x J w . v ' J J 1 1 the family of functions will be said to be "pairwise monotonic." Lemma: 1 If f . is a threshold switching function and V and U two valuations l ° on a common subset of the arguments of f., then t Used by several authors, see [30]j PP» 9> 10 < -30- 1) Ea.,v. >Ea,,u. -> (f . ) T . ^ (f . ) where the sum is over the common set of arguments and v. and u are the values assigned J J "by V and U^ respectively,, to the jth argument of (f.)„ 2) If (f.) v ^ ^ f -\^ then, with the same interpretation; E a, ,v, (f.h or (f.)- ^(f.) or both v l 'w . - v 1 7 w . v l w . - v l y w . 3 3 3 3 Now suppose (f.) ^> (f )— ; by 2 ) of the lemma, this means that i w. i w. J J w ° a. . > -w - a. . But then w • a. . > (4,3) Now consider f.. Again; 3 (fj = (f.)~ or (f.)- 3 (f.) or both. -31- But now suppose (f.) ^ (f.)— . Then, again by 2 ) of the lemma: w ° a. . < -w ° a . But then w • a. . < Ji which, since a.. = a., contradicts the hypothesis (f . ) ^ (f . )— . } 1J ,11 l w. v 1 w, J J There is every indication that this generalization of the concept of monotonicity to families of functions is a central property of the family of functions (4»l) for bilateral threshold switching nets. 4.5 Extensions of Pairwise Monotonicity We now come to some important results which shed some light on the question of why one cannot, for example, build a logical oscillator using bilateral threshold switching nets. The reader will recall that this was shown in Chapter 3 to be impossible. It has been pointed out that one can easily make one neighbor have more influence than another on the behavior of a given vertex , One might speculate therefore about construction of a logical oscillator taking the form of Fig. 7. In this figure ^ the arrowheads indicate schematically the directivity of information flow which one might try to achieve by appropriate weighting of the connections,, It turns out that such a pattern of directivity is not possible because of a loss of something analogous to logical "fan-out." This,, in a sense, is a generalization of the property of pairwise monotonicity. Before we inquire into the possibility of achieving an information flow topology similar to that of Fig. 1 y it is necessary to establish what is -32- Figure 7 meant by the arrowheads there in terms of the family of functions (4.1) describing the behavior of the net. In terms of these, the pair of functions f and f have, for example, the following properties ; 2) (fj = (f.)- That the configuration of Fig, 7 may not be achieved is demonstrated by the following: Theorem h . 3 ; If a bilateral threshold switching net, N, contains -_' three vertices, 1,, 2, 3? an( ^ connections such that: 5) <'A =<*lfc' 2 ■ (f 2^7j then; (f j => (t.y- 3 v 1 3 w 1 -33- Proof : For some valuation, 3, over inputs, the conditions l) and k) yield the strict inequality: Z a 2 . P . + a 12 w - a^v > Z a^. - a^w + a 23 w (k.k) or a 12 > a^ (4.5) (Note that condition ^ allows one to choose the sign of the a term at will in (^.4).) In a similar fashion, 2) and 5) yield, for some valua- tion, a, over the inputs, the strict inequality: Ea n .a, + a n _w - a-,^w > Z a n .a. - a, _w + a^w lj J 13 12 lj J 13 12 or a 13 > a 12 (k.6) Now since f is a threshold function, and hence one-monotonic, we know that Since f and f must be pairwise monotonic, we know from 5) that (f ) => (f n )- . Therefore, it remains only to check whether (f.)- => (f n ) 3'w - 3 'v j v 3 y w x - 3 w or, equivalently whether (f ) = (f J- . Suppose so. Then, combining 3 w l J 1 this hypothesis with 3)j f° r some valuation, 5, over the inputs, we have : Z a_ . 6 . + a n w - a. w > Z a_ . 6 . - a _w + a n _w 3j J 23 13 3j j 23 13 or ■3*- a 23 > a l3 ^* 7 ' Combining (U„5) and (U.6). a l3 > a l2 > a 23 ^' 8/ which contradicts (^.7)« Therefore (f J => (f.)- 3 w 1 3'w Extending this method of proof,, we obtain the following corollary „ Corollary : If a bilateral threshold switching net^ N^ contains n vertices 1, 2 3 . . , , n and connections such that: (f c ) 3 (f V- but (f ) = (f )- ; 2 w 2 w ' 1 w 1 w (f ) =>(f)- , but (f J = (f _ )- ; n w ., v n w .. ' n-1 w n-1 w ? n-1 n-1 n n and (f. ) => (f y j v 1 w v l'w * then: (f ) => (f )- v n w v n w This theorem and its corollary demonstrate what happens if one forces directivity of information flow to occur in a net of this kind,, One can build a chain of elements in which this takes place^ but this chain cannot close .-on -35- itself because of the attenuation in the weights of the connecting branches indicated by (*+.8) for the three-vertex net. One thus loses what amounts to logical fan-out by creating such a situation. That it is possible to construct a net with two vertices which satisfy (f.) 3 (f.)- and (f.) 3 (f .)- 1 W. 1 W. 1 w. J w. J J 1 1 is shown by the net of Fig. 8. Here w = +1. (3) -0 Figure 8 The remaining question is : What happens if one chooses to make vertex 3 in Fig. 7 independent of vertex 1? How is the relation between these two vertices affected then? The answer is found in the following theorem. Theorem k.6 : If a bilateral threshold switching net, N, contains three vertices, 1, 2, 3^ and connections such that: 1) (f 2 ) Wi -(f 2 )^ but 2) ( fl ) Ug = (f x )y 3) (Vvg = (f 3>V butU) (i *\* (f 2^ 3 ; then: ( f A 3 ■ < f A 3 -36- Proof ; As in theorem 4„5 5 we still have the relation (4 5 ) » a 12 > a 23 (4.5) Proceeding in the same fashion as before, we have, combining (3) and (5), for some input valuation, f: Z a_ .£ . + a 00 w + a., _w > Z a_ .£ . - a__w - a n _w 3j j 23 13 3j J 23 13 or a 23 > - a 13 <*. 9 ) Now, by the result of theorem 4.4, we know that (f. ) y6 (f, )- , There- 1 w 1 w fore, suppose (f )— z> (f ) . Then, combining this hypothesis with (2) above, we have, for some input valuation, u, Z a. .u. - a n _w - a. w > Z a n .u. + a., _w + a, ~w lj J 13 12 lj J 13 12 or ■a 13 > a 12 (4.10) But (4.5) and (4.9) combine to yield a l2 > a 23 > " a 13 (lt - n) which contradicts (4.10). Therefore (f. )- 56 (f_ ) . But since f. is v 1 w 7 1 w 1 a threshold switching function, and hence one-monotonic, we must have (f, ) 3 (f n >- or (f. )- => (f. ) or both; v 1 w - 1 w 1 w - 1 w -37- so, since (f, ) $ (f. )— , and (f n )— 7^ (f, ) . it must be the case that ' 1 w 7 1 w ' 1 w 1 w Again we have an obvious corollary: Corollary : If a bilateral threshold switching net, N, contains n:> vertices and connections such that (f_) 3 (t h , but (f. ) = (f. )- 2 w 2 w 1 w 1 w (f ) 3 (f )- , but (f j = (f . y nw . n w ' n-1 w n-1 w n-1 n-1 n r and (f ) = (f y n w n w Then: (*A - < f A n n Theorems U,5 ' and k.6. together give an idea of the more subtle ramifications of bilaterality. That something like these relations exists becomes apparent all too quickly when one sets out to design bilateral threshold nets, but the nature of the difficulty is not clear. It may at first seem surprising that no more direct extensions of the concept of pairwise monotonicity are presented. An effort to discover such relations was made, but met with no success, largely because of the difficulty in defining a functional relation between elements not directly connected. -38- It would at first seem the case that these theorems impose very- stringent limitations on the capabilities of such nets, but this turns out not to be the case. In fact, a surprisingly large class of automata are realizable, as we shall demonstrate in the next chapter . Before we devote attention to the question of realizability, however, we mention one last theorem concerning the family of functions (^.l). Theorem 4, 7 ° let N be a bilateral majority switching net, and let the family of functions (^»l) describing N be: d. - i • (, s -i s s o^ ° ■ ° s s ~.? z -i > z o-> ° ° ° * z n ' Then the net described by the set of equations d - i ^s , s , o o o , s , z , z , o » o , z ) is realized by the same topology as N with each branch of weight g replaced by one with weight -go Proof: For a majority net, we may write n n+p . d. =F[ Ea,,z. + E a. .s . j-1 U J j= n +l iJ J Complementing all branches corresponds to replacing (A) by (-A); thus n n+p n n+p d. =F[-Ea..z. - E a. .s .] = -F[ E a, ,z. + E a. .s .] j=l 1J J J-n+1 1J J J=l iJ J j=n+l 1J J d. = i i v 1' } v V } n 5. SYNTHESIS OF BILATERAL THRESHOLD SWITCHING NETS 5.1 Introduction No theory of switching for any class of logic networks would he in any sense complete without a discussion of the problem of synthesis of a net- work to meet a desired need. The central questions arising in such a discus- sion are two: (l) What class of automata is realizable? and (2) How may members of this class be realized? In spite of the impression of severe limita- tion which may have been conveyed by theorems (3-*0> (^■•5) and (^.6)--and which will probably be reinforced by any attempt to design such nets--it turns out that it is possible to realize a large class of automata using bilateral threshold switching nets, albeit in somewhat devious fashion, 5 .2 Clocked Automata and Combinational Logic We begin our discussion of the synthesis of nets with a limitation: Note that by theorem 3°^-; we cannot realize any automaton which requires a clock, for we cannot build the clock. It was pointed out to the author some time ago by R. 0. Winder that bilateral threshold switching nets are capable of performing all combinational logic operations. The scheme for demonstrating this is suggested by theorems k.5 and k.6 '. Theorem 5.1 : Bilateral threshold switching nets can be used to perform any combinational logic operation. Proof : Consider the element of Fig. 9° If k = 2, the state of the element and the signal appearing on line c will be the Boolean "or" of the states of the vertices at a and b, and will be independent of the state of the vertex at c. Similarly, for k = h } the state of the -39- -kO- vertex will be the Boolean "and" of a and b. The element is thus directive. Negation is available through the use of inverting branches, The extension of this technique to multiple input elements is obvious, and one can build another element to "drive" this one by merely- doubling the value of the threshold and all branch weights. Thus one can simulate } element for element, any directed combinational net. Figure 9 We have so far demonstrated the unreal izability of clocked automata and the realizability of all combinational logic. We now come to consider what class of sequential machines are realizable, 5«3 Realizability of Idempotent Automata We begin this section with a definition, r o 1 Definition ; An "idempotent" automaton is one which cannot distinguish the input sequence "a • a" ("a followed by a") from the input sequence "a," \ 1 Numbers in parentheses indicate branch weights -41- Idempotent automata have been called "by other names , most frequently "asynchronous" automata . It will be demonstrated now that all such automata can be realized using bilateral threshold switching nets exclusively. Two schemes will be given for achieving such realizations , the first most straight- forward, the second often more efficient. For the first realization scheme, we require specification for the automaton in the form of a Moore state diagram. We begin with the following observations concerning the properties of a state i of such a diagram for an idempotent automaton (see Fig. 10 ). In this diagram, S. represents the set of all input combinations which can cause the automaton to enter state i from some other state. M. is the set of all input "memory" combinations — input combina- tions which will cause the automaton, once in state i, to remain there. W 1 represents the set of all input combinations which can cause the net to leave state i and go to some other state. Now if Fig. 10 represents a state of an idempotent automaton as advertised, then we must have: M. z> S. (5.1) 1—1 \S I and M.nw.=$ (5.2) where 3 and n denote set inclusion and intersection, respectively, and is the empty set. We realize the state diagram topologically, inserting in the net for each state of the state diagram a configuration such as that shown in Fig. 11. In this figure, the branches with arrowheads are connected to inputs. The inputs f and f (vertex C in the figure) are defined as follows (cf. Fig. 10 ): -k2- r •S ^ i Mil ^ % a I I * s L ■■ V CO J 43- PO o CO § •H ■P «l 3 o p fn ft 03 P M ^-» -H p co O c -H C 43 ft O ca o p p -kk- f ' = S... V s._ V s._ ^ ... V s. s ll i2 13 iq f = (w. n ^ w._ v 00 „ ^ w ) w ll i2 it By (5^2): f v f = 1 (5,3) The inputs g (point A in the figure) will be explained later. We shall now outline the operation of the net: To begin with,, assume that all vertices in the figure are in the state (-l), and that the automaton is in some state which can lead into state i. Now assume that an input s. . e S. occurs; the automaton should proceed into state i , This state change will be manifested in the net by a change in the state of vertex C and its auxiliary vertex, D. Assume, for the moment, that one of the vertices of the type A assumes the state (+l). The weighted sum of the states observed by vertex B is now (3 - 2p), so it becomes (+l) also. Now s. . € S. implies that f = +1 and also that f = +1 by (5»3)° Since vertex E is in the state (-1) and the branch w joining it to vertex C has negative weighty the weighted sum of the states observed by vertex C is equal to (+l) and it, being a majority element, assumes the state (+l) also. It will be noted that the state of vertex D is completely determined by that of vertex Co Its only function is to provide a hysteretic behavior of their common state with respect to changes in the states of other vertices adjacent to C, and to provide a means, through the other branches incident to it, of transmitting information about the state of C to other vertices without affecting the state of C. Therefore, the state of vertex D becomes (+l) " v ' n denotes Boolean disjunction and " " denotes negation. -k5- also. We have now reached the point where vertices B, C, and D, as well as some vertex such as A, are all in the state (+l). Now the branches at F go to vertices of the type A for each of the possible successor states to i. It was by means of similar branches that the vertex of type A which initiated the present chain reaction was set to (+l). Next, assume that the latter vertex of type A, that to the left of vertex C in the figure, assumes the state (-l). The mechanism through which this change takes place will become apparent in a moment. This causes the vertex B to revert to (-l). As long as the input is not a member of the set W., the automaton will remain in state i. This is clear because, unless the input is a member of W., the sum of the two inputs f and f will be at least zero. The weighted sum of o w the states observed by vertex C under this condition is thus at least (2r + l)» We have thus far shown that s. . € S. will set vertices C and D and any input not in the set W. will not reset C (or D) to (-1). Next, suppose that the input assumes value w. . 6 W. . It will be noted that w. . € S for some state x which can follow i in the state diagram. By ij x (5.3) the sum of the inputs to vertex C is now equal to (+l) again, the connec- tions from D and E being the only ones having positive weight. The vertices C and D thus remain in the state (+l) until vertex E changes to the same state. This will come about when the successor state vertices corresponding to C and D have assumed the state (+l). The a, branches of weight (+2) incident to vertex E come from the points corresponding to G on each of the possible next vertex pairs; thus when one of these pairs assumes the state (+l), exactly one of these a branches will be joining vertex E to a vertex in state (+l). Thus the weighted sum of states observed by E will be (3 - 2a), and it will assume the state (+l) also. This "turns off" C, and subsequently D, and still more subsequently the vertex of type A which enabled the successor state to be set. -1+6- We have thus reached the condition in which the successor state vertex and its auxiliary have been set and the present state vertex has been reset (to (-l)), all in a semi -modular fashion „ ' We now come to the much-postponed explanation of the functions g... Consider the state diagram segment shown in Fig, 12;: point 1 Figure 12, Illustration of the Need for the Functions g ij Now if we were to connect the vertex B associated with state d in a realization of the Figo 11 type directly to the vertex D associated with state a, then, since £ € S, } an input of p when the net was in state a would cause the setting of the vertices B, and subsequently of the C-D vertex pairs, corresponding to both state f and state d This could be prevented by forming at point 1 the logical "and" of (l) the signal indicating that the net is in state a and (2) the logical "or" of the signals which can cause a transition from state a to state d. The latter function (2) is the g. . for this particular point, and Verification is left to the reader, -47- the indicated logical "and r; is formed at. a vertex of the type labelled A in Fig. 11. One final remark is that it is because more than one input may well be capable of causing the same transition that the numbers a and (3 of Fig. 11 are not necessarily as large as t and q,, respectively. There remains one problem to be considered, in this realization. Note that if a state diagram has any loops such as that shown in Fig. 13&* then one of the branches F and one of the branches G of Fig. 11 will ultimately influence the same vertex of type C of the same figure „ This could result in a failure of the net to behave in the specified manner and thus result in a non-semi - modular net. The solution to this problem is to realize instead of the state diagram of Fig. 13^ that of Fig. 13b^ in which states a and a and b and b are equivalent . This discussion proves the important theorem? Theorem $.2 : it is possible to construct any idempotent automaton using bilateral threshold nets exclusively. As an example of the application of the technique ^ a realization of the state diagram of Fig. 13b is shown in Fig, l4„ In this state diagram., there are no vertices corresponding to those of the type A_, B^ or E in Fig. 11 , since none are necessary. Although, this limits the resemblance of the example to Fig. llj, it nonetheless makes it much easier to visualize the operation of the net. To examine the operation of the net. assume that one of the four state vertices and its auxiliary are in the state (+l) and the others are all in state (-l)^ operation from such a point on depends upon the input sequence. 5.4 The f /J Real i zat i onJScheme Now that we have shown that it is possible to construct a net realizing any idempotent automaton., it becomes meaningful to attempt to improve the X 1 -48- XO (a) State Diagram of "F" Element XX i ■ i n t b 1 X Q XQ — — XX KD)|| (b) Equivalent State Diagram ReaXifced by Method of Section 5.3 Figure X3 -49- *V W° I* ^ 6 3 •H ■P a) M •H H a) •3 -50- technique employed in such a realization. Criteria for evaluating the relative "goodness" of various realization schemes are normally expressed in terms of minimality--or more accurately, economy- -although in some cases, reliability has become the primary consideration. One should also give some consideration to questions of what might he termed "designability" ; there should be a systematic method for achieving a ''good" realization. We need a good definition of what is meant by a "realization." Suppose that we have an automaton specification given in terms of a flow-table or state diagram. Definition ; A "realization" of a given automaton specification by means of a bilateral threshold switching net is any net which has state behavior described by a specification equivalent to that above; that is, we will at the present stage disregard considerations of outputs. A reasonable appraisal of the merit of a particular realization might be defined as follows : Definition ; Let <3> be the specification of an idempotent automaton and r the set of all nets which realize <£ in the above sense. Then for a realization 7. e r let n. be the number of vertices and 8. the i 1 K i number of branches. Then the "cost" of 7. will be approximated by: C. = C..n. + C 8. (5.*0 1 1 1 2 1 where C, and Q, are constants called the "cost of the vertex" and the "cost of a branch" respectively. -51- Under any definition of this kind^ the realization schemes of section 5.3 will be costly,, for it requires two information storage vertices for each state. Also a large number of inputs are required,, and thus (3 will be large also. The scheme is of interest, however., in that it demonstrates in a clear and conclusive manner the realizability of all idempotent automata. In this section^ we present an alternative realization technique--one which conforms more closely to classical methods of directed logic design. This method can sometimes be more economical than the previous one in the sense of (5°^),> hut uses the same hysteresis -pair configuration for memory. The alternative scheme is depicted in Fig. 15 . The central memory of the net is contained in the hysteresis-pairs C-D through H-J, p in number. Assume for the moment that p is even; then the basic idea of operation of the net is that each of the stable states will have an equal number of (+l) and (-1) states among the memory pairs. The number of such states available for assign- i ment to the vertices of the state diagram is thus ( /A „ There is a further \p/ 2 / restriction in the assignments of these states^ however:; the state assignment made to each state must differ from that made to each of its neighbors in the states of exactly two memory elements. This means that one cannot always utilize all ( / ) states,, and a discussion of this question later in this chapter will culminate in the proof of theorem 5°^- f further detailing the requirements for realization. To understand the operation of the net of Fig. 15 <, assume first that the net is in a stable state. Then exactly half of the memory vertex pairs are in the state (+1)., and half are in the state (-l). Note that each of the auxiliary vertices--those of type D and I--is connected by means of a branch ( y_j denotes the number of combinations of p items taken p/2 at a time UNIVERSITY OF -52- P*rn 0) •H s 1 2" H ch is a) -53- of weight (-2) to a vertex of type A associated with each of the (p - l) remaining elements, and similarly by means of a branch of weight (+2) to a vertex of type B associated with each of the (p - l) remaining elements „ The inputs f„ and f„ serve much the same function as the inputs f„ and f TT in M N b W Figo 11 < and g. . and h. . are similar in function to g. . of Fig, 11= The basic idea of operation is this; When an input change occurs which requires that the net change state_, the state change takes place in two phases „ In the first phase,, the appropriate C-D vertex pair changes from state (+l) to (-l)j in the second phase,, the other appropriate C-D vertex pair changes from state (-l) to (+l), completing the transition. Specif ically^, in equilibrium,, the state of each C-type vertex is sustained by its auxiliary, for,, although the range of values which the inputs may assume is (-2r) to (+2r)^ the vertices of type E and F associated with each C-D pair normally disagree in state. The E-type vertices are normally in the state (-1) and the F-type (+l)„ When an input occurs in conjunction with the proper combination of (-l) states to require a state change j however^ the F vertex associated with the C-D pair which must change from. (+l) to (-l) assumes the state (-l)» The corresponding E vertex remains (-1) and the inputs f and f go to (-l)j thus the weighted sum of states observed by the C vertex is (-l) and it changes state^ causing the associated D vertex to follow suit. This marks the end of the first phase of the transition; at this pointy (p/- + 1) elements are in the state (-I), and the remaining (p/2-l) elements in the state (+l)„ When the proper combination of (p/2+l) elements in state (-1) occurs in conjunction with the above input combination, the appropriate E vertex associated with that C-D pair which must change from (-1) to (+l) assumes the state (+l). The corresponding F vertex remains (+l) and the inputs f and f go to (+l); thus the weighted sum of states observed by the C vertex is (+l) -5fc- and it changes state, causing the associated D vertex to follow suit, and completing the trans it ion . To summarize, the F vertices remain in the (+l) state unless the required input occurs in conjunction with the proper set of (p/2) states (-1). Similarly, the E vertices remain in the (-1) state unless the required input occurs in conjunction with the proper set of (p/2 + l) states (-1). Transitions always take place in the same order, going from (p/2) states (-1) to (p/2 + l) states (-1), then back to (p/2) states (-1). This realization scheme can be altered to include the case in which p is not even by appropriate adjustment of thresholds and weights . As mentioned previously, it may not be possible to realize an arbitrary state diagram of n states with a number of memory element pairs p which is minimal in the sense that ( y j is the smallest integer greater than or equal to n. A bound on the number of memory elements required is specified by Theorem 5.3° Definition : For a directed linear graph G without parallel branches, define the "image graph" to be the non directed graph, G 1 , derived from G by application of the following operations : 1) Replace each (directed) element of G with a nondirected element . t 2) Eliminate all slings „ ' 3) Replace any pair of parallel branches resulting from l) with a single branch. t Branches which begin and terminate on the same vertex. -55- Theorem 5 » 3 " Let S be the state diagram of an idempotent automaton and let S 1 be the image graph of S. Then S is realizable by means of the ( / j realization scheme with p > max(x 0> y ) where (1) y = smallest integer y such that f / ) > number of nodes of S (or S ? ). x 2 (2) x n = smallest integer x such that (— ) > degree of each vertex in S'. Proof : The necessity of the requirement (l) is clearj we have thus only to worry about the situation which might arise if the degree of one or more vertices were too great to allow the number y to determine p. We observe that what we really require is that the graph S 1 be imbeddable in the subgraph of the x-cube consisting of precisely those vertices which have x/2 nonzero components . This x 2 will be true when x is chosen such that (2) is satisfied,, for (— ) is the degree of each vertex in the subcube. We make mention at this point of a practical note. In the case of both of these realization schemes,, we have made use of vertices of arbitrarily large degree. The assumption that such exists is in one sense unrealistic^ in that circuit element tolerances will normally restrict the degree of vertices „ This does not make such realizations impossible^ however., for one might con- struct nets of vertices of lesser degree which simulate the behavior of a vertex or group of vertices of larger degree^ and replace the latter by the equivalent net in a realization, 5 . 5 General Synthesis Techn iques The observant reader will have noticed that both of the realization techniques outlined so far are basically of a directive nature . The trick of -56- forming hysteretic pairs has enabled us to achieve memory in nets, as well as limited directivity, and we have relied heavily on these in both schemes c One might well ask why no scheme is presented which relies more on the inherent lack of directivity of bilateral threshold switching nets--one which would go from state to state in a completely deterministic but nonobvious fashion. This problem has been considered at lengthy but no satisfactory solution has been found, nor, it is felt, is one likely to be found in the immediate future. In order to achieve a systematic synthesis procedure based on, for example, the matrix analysis technique of Chapter 2, we might require that D of equation (3-2) be the next state for any state and input, and that the network be semi -modular o Thus for each state of the state diagram, we would have a set of relations like (3»2)« The problem at first seems therefore to resemble the "classical" secondary variable assignment problem of asynchronous sequential switching circuit theory . In the latter, however, one's two main concerns are economy and elimination of "critical races." In the present instance, one must find a solution to a very large system of simultaneous linear inequalities as wello There are some state assignments which are impossible in the sense that they result in inconsistant inequalities „ In other words, the threshold character of the network functions limits the possible state assignments in a manner as yet undetermined „ The problem is in essence a generalization of the problem of characterizing the set of all functions realizable by a single threshold element--a problem which itself is as yet incompletely understood „ For these reasons, the search for such general techniques was, for the present, abandoned after considerable effort „ 6. AFTERWORD 6,1 Summary An effort has been made in this paper to present a theory of switching for networks of two-terminal bistable devices, A model has been proposed in Chapter 2 for what seems the most reasonable form for such networks , and an analysis procedure based on this model developed --also in Chapter 2, In Chapter 3> several properties of such nets were demonstrated-- including the critical property of proceeding uniformly to equilibrium--and a canonical form developed. The question of the number of stable states which might be possessed by such a net was also considered, and an attempt was made to find a bound on this number. Next, we considered characterizing the behavior of such nets in a manner more familiar to designers of conventional logic, and were able thus to begin to characterize the elusive "fan-out" property which plagues from the very start any attempt to use conventional logical design techniques on nets of this type. It was here also that, through development of the property of "pairwise monotonicity, " some insight was gained into the relationship between the bilateral nature of the connections between elements and the monotonic nature of the state functions. The properties demonstrated up to this point did not bode well for any hopes of meaningful logic capability, and the realization that one cannot realize any automaton requiring a clock did nothing to dispel the gloom,, In section 5°3j however, it was demonstrated that the set of all asynchronous machines are realizable, and in section *j,h } a first attempt was made to find a realization which would be in some sense economical,, To summarize the summary, we have a model y an analysis procedure, a canonical form, a handful of important properties, and two synthesis schemes. -57- -58- 6.2 Suggestions for Future Work To attempt to detail areas for fruitful future investigation is in one sense ludicrous., because one can proceed in virtually any direction he desires . Some attempt should be made to build nets of this kind, to see how well the theory will predict results. Further investigations into the properties of the family of functions discussed in Chapter k could well shed more light on logical design techniques, and perhaps provide a basis for a technique of the type discussed in section 5.5° Another approach which appears promising but has so far yielded few results is that of considering (AZ - K) as an affine transformation of the n-cube. Finally, a good bound on the number of stable states has yet to be found. BIBLIOGRAPHY 1. Arden, D. N., ''Delayed Logic and Finite State Machines"; Proc „ First and Second Ann. Symp. SCTLD; AIEE Pub, S-13^; Sept., I96I; pp. 133-151. 2. Bartky, W. S = , and Muller, D. E,; "An Illiac Program for Simulating the Behavior of Asynchronous Circuits and Detecting Undesirable Race Conditions"; presented at ACM National Mtg.; June, 1957 . 3. Berge, C, Theorie des Graphes et ses Applications ; Paris: Dunod, 1958 « English Ed . - -New York; John Wiley and Sons,, Inc . , 1962. k. Cadden, W. Jo, "Equivalent Sequential Circuits 11 ; IRE: PGCT; CT-6 , 1, pp. 30-3^; (March, 1959)o 5. Caldwell, S. H., Switching Circuits and Logical Design ; New York: John Wiley and Sons, Inc., 1958. 6. Cameron, S. H., "An Estimate of the Complexity Requisite in a Universal Decision Network"; WADD Tech. Rep. 60-600; March, I96I; pp. 197-212. 7. Crane, H. D., "On the Complete Logic Capability and Realizability of Trigger- Coupled Neuristors"; Stanford Res. Inst., Project No. 3286 Interim Rep. No. h; July, 1961. 8. Elgot, C. C, and Rutledge, J. D., "Operations on Finite Automata" (Extended Summary); Proc. First and Second Ann. Symp. SCTLD; AIEE Pub. S-13^; Sept., I96I; pp. 129-132. 1 9. Fan, K., "On Systems of Linear Inequalities"; in Linear Inequalities and Related Systems ; Kuhn, H. W., and Tucker, A. W., eds.; Princeton: Princeton Univ. Press, Ann. Math. Studies, No. 38, 1956. 10. Frazer, W. D., "A Preliminary Investigation of the Properties of Switching Networks of Bilateral Elements"; (Unpublished) RCA Laboratories, Internal- Memorandum, 1961 . 11. Ginsburg, S., "Examples of Abstract Machines"; IRE: PGEC; EC-11 , 2, pp. 132-135; (April, 1962). 12. Goto, E., et_al., "Esaki Diode High-Speed Logical Circuits"; IRE: PGEC, EC-9 , 1, pp. 25-29; (March, i960). 13. Konig, D., Theorie der Endlichen und Unendlichen Graphen ; New York: Chelsea, 1950. 1^. Kuhn, H, W., "Solvability and Consistency for Linear Equations, and Inequalities"; Amer. Math. Monthly, 63, h } pp. 217-232, (April, 1956). 15» Kunihiro, T., "Applications of Tunnel Diodes in Switching Circuits"; Univ. of Illinois, Digital Computer Lab. Rep. No. 102; Oct., i960. -59- -6o- l6„ Landauer, R„, "irreversibility and Heat Generation in the Computing Process"; IBM J. Res. and Dev., 5, 3, pp. 183-191, (July, 1961). 17. Lewin, M. Ho, "Negative Resistance Elements as Digital Computer Components"; Proc. EJCC, pp. 15-27, Dec, 1959 . 18. Lo, Ao W., "Some Thoughts on Digital Components and Circuit Techniques"; IRE: PGEC, EC-10 , 3, PP° 4l6-425, (Sept., I961). 19. Minsky, M. L., "Some Universal Elements for Finite Automata"; in Automata Studies ; Shannon, C. E„, and McCarthy, J., eds.; Princeton: Princeton UniVo Press, Ann. Math. Studies, No. 34, 1956. 20. Moore, E. P., "Gedanken Experiments on Sequential Machines"; in Automata Studies ; Shannon, C. E., and McCarthy, J., eds.; Princeton: Princeton Univ. Press, Ann. Math. Studies, No. 34, 1956. 21. Moser, J. K., "Bistable Systems of Differential Equations with Applications to Tunnel Diode Circuits"; IBM Journ. Res. and Dev., 5, 3, pp. 226-240, (July, 1961). 22. Muller, D, E., and Bartky, W. S., "A Theory of Asynchronous Circuits"; Proc . Int . 1959; PP- 2 Proc. Int. Symp. on Theory of Switching ; Cambridge: Harvard Univ. Press, 04-243. 23. Muroga, S., "Functional Forms of Dual- Comparable Functions and a Necessary and Sufficient Condition for Realizability of a Majority Function" : .. (Revised^ Revision of paper in Proc. First and Second Ann. Symp. SCTLD; AIEE Pub. S-134; Sept., I96I, pp. 39-46. 24, Onyshkevych, L. S,, et al . , "Parametric Phase-Locked Oscillator- Characteristics and Applications to Digital Systems"; IRE: PGEC, EC-8 , 3, pp. 277-286; (Sept., 1959). 25. Paull, Mo C, "Review of 4 Papers in Threshold Logic"; IRE: PGEC, EC- 10 , 3, pp. 541-542; (Sept., 1961). 26, Ringel, G., Farbungsprobleme auf Flachen und Graphen ; Berlin: Deutsche Verlag Gewissenschaften, i960. 27 • Seshu, S. and Reed, M. B., Linear Graphs and Electrical Networks ; Reading, Mass. : Addison Wesley Pub. Co., Inc., I96I. 28. Unger, S. H„, "Hazards and Delays in Asynchronous Sequential Switching Circuits"; IRE: PGCT, CT-6 , 1, pp. 12-25; (March, 1959). 29. Whitney, H., "On the Abstract Properties of Linear Dependence"; Amer. J. Math., LVII , pp. 509-533, (1933). 30. Winder, R. 0., "Threshold Logic"; Ph.D. Thesis, Princeton University, 1962. 31. Winder, R. 0., "Characterizing Threshold Functions" (Review of 6 papers in threshold logic); IRE: PGEC, EC-11 , 5, pp. 717*718; (Oct., 1962). APPENDIX A AN EXAMPLE OF THE MATRIX ANALYSIS TECHNIQUE Consider the net shown in Fig. l6 Input +1 Notes: l) All thresholds zero. 2) All branches of weight + 1 unless otherwise indicated . 3) Numbers beside vertices indicate matrix order . k) Shaded vertices have initial state -1^ others., +1. Figure l6 The matrix A for this net is : ■61- -62- A 1 1 1 1 1 1 2 1 1 1 1 1 -1 1 -1 -1 1 1 -1 1 1 1 1 1 1 1 1 The vector Z is, initially: Z = 1 1 1 -1 1 1 -1 -1 1 -1 Using the relation F[AZ] = D, we find that D = 1 1 1 1 1 -1 -1 -1 -63- From this, we can see that vertices k and 6 are excited in the initial state. It may also be verified that D is an equilibrium state. Thus as a synchronous machine with an external clock signal, the net makes but one state transition. As an asynchronous machine, on the other hand, the net can enter either of two additional states from the initial state^ vertex k alone, or vertex 6 alone may change . In these cases, the corresponding states would be: 1 1 1 1 1 1 7 ' = 1 1 \~- 1 -1 1 -1 -1 -1 -1 -1 ' r ' 1 i 1 i 1 -i i h- 1 1 -i -1 -i -1 -i -1 _ _ Note that the latter case leads again to the same equilibrium state, for only vertex k remains excited. In the former case, vertices 5 and 6 are excited. Allowing these vertices to change individually, we find that the corresponding states are: 5i6 = " r ' 1 i 1 i 1 i i \6- 1 1 -i -1 -i -1 -i -1 ^5 " r ~ 1 i l i 1 i -i a, 5 = 1 -1 i -l -i -1 -i -1 ■6k- Now we have a violation of semi-modularity, for vertex 5 has passed from excitation to equilibrium without changing when vertex 6 was allowed to change alone (compare D, and D, zr). Vertex 6 is still excited in the latter case; so we allow it to change and find that the resulting states are: 7' -456 l l l l -l -l -l -l ^56 1 1 1 l 1 -1 -1 -1 Therefore this change sequence leads also to the same equilibrium state. This net is an example of a speed- independent but not semi -modular net in which the balance condition never occurs. The final state will be that given by D regardless of the order of change imposed upon the excited vertices, but one sequence of changes --notably 4,6--causes a violation of the semi- modularity condition. APPENDIX B B.l Proof of Theorem 3. IP We consider only autonomous canonical nets, for the question of stable states has meaning only with respect to constant input, and the inputs may then "be regarded as part of the constant sources associated with the canonical net. The rows of A for such a net may "be looked on as a set of vectors, a., in Euclidean n+2 space having the following properties : 1) The set of n vectors is not necessarily linearly independent . 2) The first vector must lie in the x = P hyperplane, the second in the x = P hyperplane, etc „ 3) For all i / j, i, j < n, the x. component of the ith vector must equal the x. component of the jth vector. h) The lengths of all vectors are the same. The fourth constraint, stemming from the regularity of the canonical net, implies that the loci of possible choices for the vectors, a., are hypersquares in each of the zero-coordinate planes In like manner, the 2 possible states of the network may be looked on as vectors from the origin in n-space to each of the vertices of the cube of side 2 centered at the origin. Now suppose we choose one of these states having z = +1 and try to determine how then to choose A so that 1) The net will have the chosen state as an equilibrium state and 2) The net will have a maximum number of additional equilibrium states . -65- -66- We note that for a canonical net, equation (3»3) becomes F[AZ] = Z 1 The process of matrix multiplication thus corresponds to forming the dot product of the total state vector (including positions for the constant sources) with each, in turn, of the row vectors of A. A stable state is one for which, for each of these multiplications, the cosine of the included angle has the same sign as the corres- ponding component of the state vector . Now to go hack to our chosen equilibrium state . In the x = hyperplane lie the projections of the 2 possible states; there are 2 of these and we can list them: -1 -1 o . -1 -1 -1 -1 -1 1 -1 -1 1 -1 ( 2 vectors 1 1 1 1 We now desire to pick an a, which will maximize condition (2) above, subject to condition (l). Now vertex 1 will be in equilibrium in the state (+l) whenever the rest of the vertices of the net are in any state whose projection makes an angle of 90 or less with the projec- n-2 tion of a in the x = hyperplane. There are at most 2 such vectors. Because of theorem (3«-8 ) however, at most 2 of these can be equilibrium states. By the o.r.etii -3'9t however, each corres- ponds to two equilibrium states. Therefore the number of equilibrium n-2. states is bounded above by 2 -67- The interested reader is invited to try to extend this argument and thus improve the bound, B.2 Another Characterization of Equilibrium States Another approach to the question of counting the number of possible equilibrium states is this. Recall the equation for an equilibrium state: F[A - (X>B)] = ( X,B ) (Here A has been augmented to be square). This is equivalent to; A ■ (Xj_B) = Q^'XjB) where Q. is a diagonal matrix with finite positive entries. Now Q is non- i i singular ; so we have (Q^A - U)(X i B) = We therefore desire to know how many unit eigenvalues we can have as Q. ranges over all possible Qo The set of such Q is finite because each row entry of Q. is bounded by the maximum degree of a vertex. APPENDIX C SUPPLEMENT TO PROOF OF THEOREM 3o7 We wish to show that a group of states such as T, U, and V must always exist. To see that this is so, consider the following argument? Suppose we have a speed-dependent net N which can proceed from an initial state I to any one of several equilibrium states, E , . ,,, E, , Now we know that each of E , , ,., E is accessible from I, and that none of E,, MIJ E J- Xt j- Xf is accessible from any other, since all are equilibrium states. As indicated in the main body of the proof, the single-vertex-change sequence diagram must be a Hasse diagram since no state can repeat. Now consider an arbitrary equilibrium state E., Such a state is accessible from some set of states a = {a.. , . , ,,a. , } . Consider a member, a. f of this set; either some other equilibrium state is accessible from a. or not. If so, then a. corresponds to T, E. to U^ and the first state in any sequence leading from a to an equilibrium state other than E. corresponds to V of Fig. k, If no equilibrium state other than E is accessible from any of the members of a, then consider the set p = (p ,,,„,P } of states via which members of a are accessible from I. Again we apply the same argument; either some equilibrium state other than E. is accessible from some member of p or not. If so, then the appropriate p. corresponds to T, the appropriate a., to U, and, again, the first state in any sequence leading from P to another equilibrium state, to V, If not, then we consider the set of states from which members of P are accessible. ' It is worthwhile to note that while the intersection of the sets a and P need not be empty, any p. , as above, may not be a member of a. ■68- -69- Now the state sequences are all finite and nonrepetitive, and all equilibrium states are accessible from I. Therefore, we must, if we proceed in this manner, eventually find some first set, |, of states in this sequence with the property that more than one equilibrium state is accessible from some member |. of this set. In this case, £. corresponds to T. any state adjacent to |. 1Z 1Z ' 1Z and via which the net can reach E. corresponds to U, and any state adjacent to | . and via which the net can reach any other equilibrium state corresponds to V< Since E. was chosen arbitrarily, this argument applies to each of E 1 , ..., E t .