Austrian-Japanese Workshop on Symbolic Computation in Software Science

Rewriting induction (Reddy, 1990) is an automated proof method for inductive theorems of term rewriting systems. Reasoning by the rewriting induction is based on the noetherian induction on some reduction order and the original rewriting induction is not capable of proving theorems which are not orientable by that reduction order. To deal with such theorems, Bouhoula (1995) as well as Dershowitz & Reddy (1993) used the ordered rewriting. However, even using ordered rewriting, the weak capability of non-orientable theorems is considered one of the weakness of rewriting induction approach compared to other automated methods for proving inductive theorems. We present a refined system of rewriting induction with an increased capability of non-orientable theorems and a capability of disproving incorrect conjectures. Soundness for proving/disproving are shown and effectiveness of our system is demonstrated through some examples.

[1]  Yasuhiko Minamide,et al.  A Translation from the HTML DTD into a Regular Hedge Grammar , 2008, CIAA.

[2]  Olivier Danvy,et al.  Representing Control: a Study of the CPS Transformation , 1992, Mathematical Structures in Computer Science.

[3]  Tetsuo Ida,et al.  Computational Origami System Eos , 2006 .

[4]  Jan Willem Klop,et al.  Infinitary Normalization , 2005, We Will Show Them!.

[5]  Vasco Brattka The Emperor's New Recursiveness: The Epigraph of the Exponential Function in Two Models of Computability , 2000, Words, Languages & Combinatorics.

[6]  Stijn Vansummeren,et al.  Type inference for unique pattern matching , 2006, TOPL.

[7]  R. Smullyan First-Order Logic , 1968 .

[8]  Helmut Seidl,et al.  Precise interprocedural analysis through linear algebra , 2004, POPL.

[9]  Masahiko Sato,et al.  Theory of Judgments and Derivations , 2002, Progress in Discovery Science.

[10]  Bruno Buchberger,et al.  History and Basic Features of the Critical-Pair/Completion Procedure , 1987, J. Symb. Comput..

[11]  Michael Norrish,et al.  Barendregt's Variable Convention in Rule Inductions , 2007, CADE.

[12]  Harold T. Hodes,et al.  The | lambda-Calculus. , 1988 .

[13]  James C. King A new approach to program testing , 1975 .

[14]  Yasuhiko Minamide,et al.  Static approximation of dynamically generated Web pages , 2005, WWW '05.

[15]  Alan Bundy,et al.  Rippling - meta-level guidance for mathematical reasoning , 2005, Cambridge tracts in theoretical computer science.

[16]  Deepak Kapur,et al.  Inductive Decidability Using Implicit Induction , 2006, LPAR.

[17]  Aske Simon Christensen,et al.  Precise Analysis of String Expressions , 2003, SAS.

[18]  Bruno Buchberger,et al.  Bruno Buchberger's PhD thesis 1965: An algorithm for finding the basis elements of the residue class ring of a zero dimensional polynomial ideal , 2006, J. Symb. Comput..

[19]  Takahito Aoto,et al.  Dealing with Non-orientable Equations in Rewriting Induction , 2006, RTA.

[20]  Bas Spitters,et al.  Program Extraction from Large Proof Developments , 2003, TPHOLs.

[21]  Steven M. Kearns,et al.  Extending regular expressions with context operators and parse extraction , 1991, Softw. Pract. Exp..

[22]  David R. Musser,et al.  On proving inductive properties of abstract data types , 1980, POPL '80.

[23]  Thomas W. Reps,et al.  Interconvertibility of a class of set constraints and context-free-language reachability , 2000, Theor. Comput. Sci..

[24]  Jean-Pierre Jouannaud,et al.  Automatic Proofs by Induction in Theories without Constructors , 1989, Inf. Comput..

[25]  J. Girard,et al.  Proofs and types , 1989 .

[26]  Philip Wadler Monads for Functional Programming , 1995, Advanced Functional Programming.

[27]  Akinori Yonezawa,et al.  Regular Expression Types for Strings in a Text Processing Language , 2002, Electron. Notes Theor. Comput. Sci..

[28]  Enric Rodríguez-Carbonell,et al.  Generating all polynomial invariants in simple loops , 2007, J. Symb. Comput..

[29]  Melvin Fitting,et al.  First-Order Logic and Automated Theorem Proving , 1990, Graduate Texts in Computer Science.

[30]  Olivier Danvy,et al.  Abstracting control , 1990, LISP and Functional Programming.

[31]  Tetsuo Ida,et al.  Modeling Origami for Computational Construction and Beyond , 2007, ICCSA.

[32]  Masahiko Sato,et al.  A framework for checking proofs naturally , 2008, Journal of Intelligent Information Systems.

[33]  Gordon D. Plotkin,et al.  Call-by-Name, Call-by-Value and the lambda-Calculus , 1975, Theor. Comput. Sci..

[34]  Koji Nakagawa,et al.  Theorema: Towards computer-aided mathematical theory exploration , 2006, J. Appl. Log..

[35]  B. Buchberger,et al.  Grobner Bases : An Algorithmic Method in Polynomial Ideal Theory , 1985 .

[36]  G. Gentzen Untersuchungen über das logische Schließen. I , 1935 .

[37]  Urso Pascal,et al.  Term partition for mathematical induction , 2003 .

[38]  Sorin Stratulat,et al.  A General Framework to Build Contextual Cover Set Induction Provers , 2001, J. Symb. Comput..

[39]  Bernhard Gramlich,et al.  Strategic Issues, Problems and Challenges in Inductive Theorem Proving , 2005, STRATEGIES@IJCAR.

[40]  de Ng Dick Bruijn,et al.  Lambda calculus notation with nameless dummies, a tool for automatic formula manipulation, with application to the Church-Rosser theorem , 1972 .

[41]  Zohar Manna,et al.  Formalization of Properties of Functional Programs , 1970, JACM.

[42]  David Turner,et al.  Ensuring the Productivity of Infinite Structures , 1997 .

[43]  Laurent Théry,et al.  A Machine-Checked Implementation of Buchberger's Algorithm , 2001, Journal of Automated Reasoning.

[44]  Herman Geuvers,et al.  C-CoRN, the Constructive Coq Repository at Nijmegen , 2004, MKM.

[45]  Bertrand Meyer,et al.  Applying 'design by contract' , 1992, Computer.

[46]  Benjamin C. Pierce,et al.  Regular expression types for XML , 2005, ACM Trans. Program. Lang. Syst..

[47]  Michaël Rusinowitch,et al.  Automated Mathematical Induction , 1995, J. Log. Comput..

[48]  Henny B. Sipma,et al.  Non-linear loop invariant generation using Gröbner bases , 2004, POPL.

[49]  Igor E. Shparlinski,et al.  Arithmetic structure of recurrence sequences , 2003 .

[50]  Donald E. Knuth,et al.  The art of computer programming. Vol.2: Seminumerical algorithms , 1981 .

[51]  Donald Ervin Knuth,et al.  The Art of Computer Programming , 1968 .

[52]  M. E. Szabo,et al.  The collected papers of Gerhard Gentzen , 1969 .

[53]  Nachum Dershowitz,et al.  Completion Without Failure11This research was supported in part by the National Science Foundation under grants DCR 85–13417 and DCR 85–16243. , 1989 .

[54]  Eugenia Ternovska,et al.  A logic of nonmonotone inductive definitions , 2008, TOCL.

[55]  Gérard P. Huet,et al.  Proofs by induction in equational theories with constructors , 1980, 21st Annual Symposium on Foundations of Computer Science (sfcs 1980).

[56]  Adrian Cr Decompositions of Natural Numbers: From A Case Study in Mathematical Theory Exploration ∗ , 2008 .

[57]  Andrzej Filinski,et al.  Representing monads , 1994, POPL '94.

[58]  Nicolas Bourbaki,et al.  Theory of sets , 1968 .

[59]  Paliath Narendran,et al.  Automating Inductionless Induction Using Test Sets , 1991, J. Symb. Comput..

[60]  Laura Kovács,et al.  Reasoning Algebraically About P-Solvable Loops , 2008, TACAS.

[61]  A. Church The calculi of lambda-conversion , 1941 .

[62]  Milad Niqui Productivity of Edalat-Potts Exact Arithmetic in Constructive Type Theory , 2006, Theory of Computing Systems.

[63]  Amr Sabry,et al.  Proving the correctness of reactive systems using sized types , 1996, POPL '96.

[64]  Tetsuo Ida,et al.  Computational Construction of a Maximum Equilateral Triangle Inscribed in an Origami , 2006, ICMS.

[65]  Madalina Hodorog,et al.  Scheme-Based Systematic Exploration of Natural Numbers , 2006, 2006 Eighth International Symposium on Symbolic and Numeric Algorithms for Scientific Computing.

[66]  Andrew D. Gordon,et al.  A Mechanisation of Name-Carrying Syntax up to Alpha-Conversion , 1993, HUG.

[67]  Alan Bundy,et al.  Middle-out reasoning for synthesis and induction , 1996, Journal of Automated Reasoning.

[68]  John Longley,et al.  Partial Functions in a Total Setting , 2004, Journal of Automated Reasoning.

[69]  Ping Hou,et al.  A Deductive System for PC(ID) , 2007, LPNMR.

[70]  Andrew M. Pitts,et al.  Alpha-structural recursion and induction , 2005, JACM.

[71]  Johan Wittocx,et al.  MidL: A SAT(ID) solver , 2007 .

[72]  Thomas W. Reps,et al.  Program analysis via graph reachability , 1997, Inf. Softw. Technol..

[73]  D. Knuth,et al.  Simple Word Problems in Universal Algebras , 1983 .

[74]  Takahito Aoto,et al.  Soundness of Rewriting Induction Based on an Abstract Principle , 2008 .

[75]  Martin Gebser,et al.  Tableau Calculi for Answer Set Programming , 2006, ICLP.

[76]  Arthur Charguéraud,et al.  Engineering formal metatheory , 2008, POPL '08.

[77]  Dieter Hutter,et al.  INKA: The Next Generation , 1996, CADE.

[78]  Ben Wegbreit,et al.  The synthesis of loop predicates , 1974, CACM.

[79]  A. Turing On Computable Numbers, with an Application to the Entscheidungsproblem. , 1937 .

[80]  Eugenio Moggi,et al.  Computational lambda-calculus and monads , 1989, [1989] Proceedings. Fourth Annual Symposium on Logic in Computer Science.

[81]  Zohar Manna,et al.  Mathematical Theory of Computation , 2003 .

[82]  John McCarthy,et al.  Recursive functions of symbolic expressions and their computation by machine, Part I , 1960, Commun. ACM.

[83]  Emmanuel Kounalis,et al.  Sound generalizations in mathematical induction , 2004, Theor. Comput. Sci..

[84]  Yukiyoshi Kameyama,et al.  Typed Dynamic Control Operators for Delimited Continuations , 2008, FLOPS.

[85]  Robert J. Lang,et al.  One-, Two-, and Multi-Fold Origami Axioms , 2006 .

[86]  Pierre Flener,et al.  An Abstract Formalization of Correct Schemas for Program Synthesis , 2000, J. Symb. Comput..

[87]  Terese Term rewriting systems , 2003, Cambridge tracts in theoretical computer science.

[88]  Jörg Endrullis,et al.  Data-Oblivious Stream Productivity , 2008, LPAR.

[89]  Jean Berstel,et al.  Transductions and context-free languages , 1979, Teubner Studienbücher : Informatik.

[90]  Peter Thiemann,et al.  Combinators for program generation , 1999, Journal of Functional Programming.

[91]  Gordon D. Plotkin,et al.  Abstract syntax and variable binding , 1999, Proceedings. 14th Symposium on Logic in Computer Science (Cat. No. PR00158).

[92]  Enric Rodríguez-Carbonell,et al.  Automatic generation of polynomial invariants of bounded degree using abstract interpretation , 2007, Sci. Comput. Program..

[93]  Manuel Kauers,et al.  Computing the algebraic relations of C-finite sequences and multisequences , 2008, J. Symb. Comput..

[94]  Alexander Schrijver,et al.  Theory of linear and integer programming , 1986, Wiley-Interscience series in discrete mathematics and optimization.

[95]  Andrew M. Pitts,et al.  A new approach to abstract syntax involving binders , 1999, Proceedings. 14th Symposium on Logic in Computer Science (Cat. No. PR00158).

[96]  Kenichi Asai Logical relations for call-by-value delimited continuations , 2005, Trends in Functional Programming.

[97]  Andreas Abel Mixed Inductive/Coinductive Types and Strong Normalization , 2007, APLAS.

[98]  W. Bibel,et al.  Automated deduction : a basis for applications , 1998 .

[99]  Yukiyoshi Kameyama,et al.  A sound and complete axiomatization of delimited continuations , 2003, ICFP '03.

[100]  Roger C. Alperin A Mathematical Theory of Origami Constructions and Numbers , 2000 .

[101]  Michaël Rusinowitch,et al.  Implicit induction in conditional theories , 2004, Journal of Automated Reasoning.

[102]  Sorin Stratulat,et al.  Validation of the JavaCard Platform with Implicit Induction Techniques , 2003, RTA.

[103]  Konrad Slind,et al.  Another Look at Nested Recursion , 2000, TPHOLs.

[104]  Tobias Nipkow,et al.  Term rewriting and all that , 1998 .

[105]  Tetsuo Ida,et al.  Computational origami environment on the web , 2008, Frontiers of Computer Science in China.

[106]  Matthias Felleisen,et al.  A Syntactic Approach to Type Soundness , 1994, Inf. Comput..

[107]  Deepak Kapur,et al.  A Quantifier-Elimination Based Heuristic for Automatically Generating Inductive Assertions for Programs , 2006, J. Syst. Sci. Complex..

[108]  Joost Engelfriet,et al.  Top-down tree transducers with regular look-ahead , 1975, Mathematical systems theory.

[109]  Florent Jacquemard,et al.  Automated Induction with Constrained Tree Automata , 2008, IJCAR.

[110]  Russell O'Connor A monadic, functional implementation of real numbers , 2007, Math. Struct. Comput. Sci..

[111]  Laura Kovács,et al.  Invariant Generation for P-Solvable Loops with Assignments , 2008, CSR.

[112]  Kenichi Asai On typing delimited continuations: three new solutions to the printf problem , 2009, High. Order Symb. Comput..

[113]  Peter Paule,et al.  A Mathematica Version of Zeilberger's Algorithm for Proving Binomial Coefficient Identities , 1995, J. Symb. Comput..

[114]  Zohar Manna,et al.  Fundamentals of Deductive Program Synthesis , 1992, IEEE Trans. Software Eng..

[115]  Jan Willem Klop,et al.  Transfinite Reductions in Orthogonal Term Rewriting Systems , 1995, Inf. Comput..

[116]  Markus Müller-Olm,et al.  Computing polynomial program invariants , 2004, Inf. Process. Lett..

[117]  Hartmut Ehrig,et al.  Fundamentals of Algebraic Graph Transformation , 2006, Monographs in Theoretical Computer Science. An EATCS Series.

[118]  Panagiotis Manolios,et al.  Computer-aided reasoning : ACL2 case studies , 2000 .

[119]  Zohar Manna,et al.  PROPERTIES OF PROGRAMS AND PARTIAL FUNCTION LOGIC , 1969 .

[120]  Erik D. Demaine,et al.  Recent Results in Computational Origami , 2002 .

[121]  Stephen Wolfram,et al.  The Mathematica Book , 1996 .

[122]  Robert J. Lang Origami and Geometric Constructions , 2003 .

[123]  Bruno Buchberger,et al.  Algorithm Synthesis by Lazy Thinking: Examples and Implementation in Theorema , 2004, MKM Symposium.

[124]  Amr Sabry,et al.  A type-theoretic foundation of continuations and prompts , 2004, ICFP '04.

[125]  Kenneth A. Ross,et al.  The well-founded semantics for general logic programs , 1991, JACM.

[126]  Marc Denecker,et al.  The Well-Founded Semantics Is the Principle of Inductive Definition , 1998, JELIA.

[127]  Furio Honsell,et al.  A framework for defining logics , 1993, JACM.

[128]  Russell O'Connor,et al.  Certified Exact Transcendental Real Number Computation in Coq , 2008, TPHOLs.

[129]  P. David Coward Symbolic execution systems-a review , 1988, Softw. Eng. J..

[130]  Tetsuo Ida,et al.  Computational Origami of a Morley's Triangle , 2005, MKM.

[131]  Bruno Buchberger,et al.  Algorithm Synthesis by Lazy Thinking: Using Problem Schemes , 2004 .

[132]  Jean-Pierre Jouannaud,et al.  Automata-Driven Automated Induction , 2001, Inf. Comput..

[133]  Adel Bouhoula,et al.  Automated Theorem Proving by Test Set Induction , 1997, J. Symb. Comput..

[134]  Akihiko Tozawa,et al.  XML Validation for Context-Free Grammars , 2006, APLAS.

[135]  Uday S. Reddy,et al.  Induction using term orders , 1996, Journal of Automated Reasoning.

[136]  Robert S. Boyer,et al.  A computational logic handbook , 1979, Perspectives in computing.

[137]  Laura Kovács Aligator: A mathematica package for invariant generation , 2008 .

[138]  Anne Kaldewaij,et al.  Programming - the derivation of algorithms , 1990, Prentice Hall international series in computer science.

[139]  Uday S. Reddy,et al.  Term Rewriting Induction , 1990, CADE.

[140]  Simon Thompson,et al.  Type theory and functional programming , 1991, International computer science series.

[141]  Mark Lillibridge,et al.  Explicit polymorphism and CPS conversion , 1993, POPL '93.

[142]  Michael Kalkbrener,et al.  Converting Bases with the Gröbner Walk , 1997, J. Symb. Comput..

[143]  Laura Kovács,et al.  Combining Logic and Algebraic Techniques for Program Verification in Theorema , 2006, Second International Symposium on Leveraging Applications of Formal Methods, Verification and Validation (isola 2006).

[144]  Enric Rodríguez-Carbonell,et al.  Automatic Generation of Polynomial Loop Invariants: Algebraic Foundations , 2004, ISSAC '04.

[145]  Yukiyoshi Kameyama,et al.  Polymorphic Delimited Continuations , 2007, APLAS.

[146]  Konrad Zuse,et al.  The Computer — My Life , 1993, Springer Berlin Heidelberg.

[147]  K. Gödel Über formal unentscheidbare Sätze der Principia Mathematica und verwandter Systeme I , 1931 .

[148]  Markus Müller-Olm,et al.  Interprocedurally Analyzing Polynomial Identities , 2006, STACS.

[149]  Jan Willem Klop,et al.  Productivity of stream definitions , 2007, Theor. Comput. Sci..

[150]  J. Strother Moore,et al.  An Industrial Strength Theorem Prover for a Logic Based on Common Lisp , 1997, IEEE Trans. Software Eng..

[151]  Luca Cardelli,et al.  Greedy Regular Expression Matching , 2004, ICALP.

[152]  B. Buchberger Gröbner Bases and Applications: Introduction to Gröbner Bases , 1998 .

[153]  Deepak Kapur,et al.  Automating Induction over Mutually Recursive Functions , 1996, AMAST.

[154]  G. Rw Decision procedure for indefinite hypergeometric summation , 1978 .

[155]  L. Dickson Finiteness of the Odd Perfect and Primitive Abundant Numbers with n Distinct Prime Factors , 1913 .

[156]  Timothy G. Griffin,et al.  A formulae-as-type notion of control , 1989, POPL '90.

[157]  J. A. Robinson,et al.  A Machine-Oriented Logic Based on the Resolution Principle , 1965, JACM.

[158]  Alonzo Church,et al.  A formulation of the simple theory of types , 1940, Journal of Symbolic Logic.

[159]  Tetsuo Ida,et al.  Logical and algebraic view of Huzita's origami axioms with applications to computational origami , 2007, SAC '07.

[160]  Nachum Dershowitz,et al.  Deductive and Inductive Synthesis of Equational Programs , 1993, J. Symb. Comput..

[161]  Eugenia Ternovska,et al.  Inductive situation calculus , 2004, Artif. Intell..

[162]  Bruno Buchberger,et al.  Proving and Constraint Solving in Computational Origami , 2004, AISC.

[163]  Krzysztof R. Apt,et al.  An Analysis of Loop Checking Mechanisms for Logic Programs , 1991, Theor. Comput. Sci..

[164]  Deepak Kapur,et al.  Lemma Discovery in Automated Induction , 1996, CADE.

[165]  Zhendong Su,et al.  Sound and precise analysis of web applications for injection vulnerabilities , 2007, PLDI '07.

[166]  Masahiko Sato An Abstraction Mechanism for Symbolic Expressions , 1991, Artificial and Mathematical Theory of Computation.

[167]  Michael Karr,et al.  Affine relationships among variables of a program , 1976, Acta Informatica.

[168]  Toby Walsh,et al.  A Divergence Critic for Inductive Proof , 1996, J. Artif. Intell. Res..

[169]  R. Penrose The emperor's new mind: concerning computers, minds, and the laws of physics , 1989 .

[170]  Edsger W. Dijkstra,et al.  A Discipline of Programming , 1976 .

[171]  James McKinna,et al.  Some Lambda Calculus and Type Theory Formalized , 1997, Journal of Automated Reasoning.

[172]  Ben A. Sijtsma,et al.  On the productivity of recursive list definitions , 1989, ACM Trans. Program. Lang. Syst..

[173]  Madalina Hodorog,et al.  Decompositions of Natural Numbers: From a Case Study in Mathematical Theory Exploration , 2007, Ninth International Symposium on Symbolic and Numeric Algorithms for Scientific Computing (SYNASC 2007).

[174]  Deepak Kapur,et al.  Constructors can be Partial too , 1997 .

[175]  John McCarthy,et al.  A BASIS FOR A MATHEMATICAL THEORY OF COMPUTATION 1) , 2018 .

[176]  D. Zeilberger A holonomic systems approach to special functions identities , 1990 .