Automatic Termination Analysis of Logic Programs

A field effect transistor driver circuit responsive to a single input pusle generates a highly loadable output clock pulse with short rise and fall times, the rising edge being shifted relative to said input pulse by a controllable delay time but the trailing edge remaining practically undelayed. This advantageous pulse form is achieved through an improved controlling of a bootstrap output stage. Two preceding stages, i.e., a transmission gate and a delay stage supply two out-of-phase control pulses with high amplitudes and steep edges. Of essential importance is the novel delay stage which is designed as push-pull stage with a load FET and a driver FET. The gate of the load FET is controlled by the output pulse of the bootstrap stage 2 fed back via a third FET and by a capacitively coupled-in input pulse at the drain, whereas the gate of driver FET is controlled from the bootstrapped output of the transmission gate. The connecting point of load and driver FET represents the output of the delay stage. For the quick switching-on and delayed but speedy switching-off of the driver FET's of the bootstrap output stage a pulse equal in amplitude to the input pulse is generated. That pulse rising with equal speed and falling steeply after delay. The delay stage also controls advantageously the gate recharging of the isolation FET of transmission gate.

[1]  Danny De Schreye,et al.  Demand-Driven and Constraint-Based Automatic Left-Termination Analysis for Logic Programs , 1997, ICLP.

[2]  Nachum Dershowitz Orderings for Term-Rewriting Systems , 1979, FOCS.

[3]  Danny De Schreye,et al.  Termination of Logic Programs: The Never-Ending Story , 1994, J. Log. Program..

[4]  Lutz Plümer,et al.  Automatic Termination Proofs for Prolog Programs Operating on Nonground Terms , 1991, ISLP.

[5]  Bart Demoen,et al.  Analysing Logic Programs Using 'Prop'-ositional Logic Programs and a Magic Wand , 1993, ILPS.

[6]  Leon Sterling,et al.  The Art of Prolog , 1987, IEEE Expert.

[7]  Allen Van Gelder,et al.  Termination detection in logic programs using argument sizes (extended abstract) , 1991, PODS.

[8]  Patrick Cousot,et al.  Abstract Interpretation and Application to Logic Programs , 1992, J. Log. Program..

[9]  Yehoshua Sagiv,et al.  Checking Termination of Queries to Logic Programs , 1996 .

[10]  Lee Naish Automatic Termination Analysis of Logic Programs , 1997 .

[11]  Lutz Plümer Termination Proofs for Logic Programs , 1990, Lecture Notes in Computer Science.

[12]  Allen Van Gelder,et al.  Deriving constraints among argument sizes in logic programs , 1990, PODS '90.

[13]  Danny De Schreye,et al.  Deriving Termination Proofs for Logic Programs, Using Abstract Procedures , 1991, ICLP.

[14]  Danny De Schreye,et al.  Automatic Inference of Norms: A Missing Link in Automatic Termination Analysis , 1993, ILPS.

[15]  Dino Pedreschi,et al.  Modular termination proofs for logic and pure PROLOG programs , 1993 .

[16]  Abraham Silberschatz,et al.  Safety of recursive Horn clauses with infinite relations , 1987, PODS '87.

[17]  Richard A. O'Keefe,et al.  The Craft of Prolog , 1990 .

[18]  Dino Pedreschi,et al.  Reasoning about Termination of Pure Prolog Programs , 1993, Inf. Comput..

[19]  Yehoshua Sagiv,et al.  Inference of monotonicity constraints in Datalog programs , 1989, PODS '89.

[20]  Yehoshua Sagiv A Termination Test for Logic Programs , 1991, ISLP.