NP-SPEC: an executable specification language for solving all problems in NP

In this paper, a logic-based specification language, called NPSPEC, is presented. The language is obtained extending DATALOG through allowing a limited use of some second-order predicates of predefined form. NP-SPEC programs specify solutions to problems in a very abstract and concise way, and are executable. In the present prototype they are compiled to PROLOG code which is run to construct outputs. Second-order predicates of suitable form allow to limit the size of search spaces in order to obtain reasonably efficient construction of problem solutions. NP-SPEC expressive power is precisely characterized as to express exactly the problems in the class NP.

[1]  Bart Selman,et al.  Boosting Combinatorial Search Through Randomization , 1998, AAAI/IAAI.

[2]  David Harel,et al.  Computable Queries for Relational Data Bases , 1980, J. Comput. Syst. Sci..

[3]  Jeffrey D. Uuman Principles of database and knowledge- base systems , 1989 .

[4]  Rodney J. Douglas KIDS: A Semi-Automatic Program Development System , 1990 .

[5]  David B. Leake Artiicial Intelligence , 2001 .

[6]  Adrian Walker,et al.  Towards a Theory of Declarative Knowledge , 1988, Foundations of Deductive Databases and Logic Programming..

[7]  Luigi Palopoli,et al.  Circumscribing DATALOG: Expressive Power and Complexity , 1998, Theor. Comput. Sci..

[8]  D. de Werra,et al.  An introduction to timetabling , 1985 .

[9]  Gerald Pfeifer,et al.  The KR System dlv: Progress Report, Comparisons and Benchmarks , 1998, KR.

[10]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

[11]  Feliks Kluzniak,et al.  Spill - A Logic Language for Writing Testable Requirements Specifications , 1997, Sci. Comput. Program..

[12]  John McCarthy,et al.  Circumscription - A Form of Non-Monotonic Reasoning , 1980, Artif. Intell..

[13]  Vladimir Lifschitz,et al.  Computing Circumscription , 1985, IJCAI.

[14]  Jeffrey D. Ullman,et al.  Principles of Database and Knowledge-Base Systems, Volume II , 1988, Principles of computer science series.

[15]  Chu Min Li,et al.  Heuristics Based on Unit Propagation for Satisfiability Problems , 1997, IJCAI.

[16]  Luigi Palopoli,et al.  NP-SPEC: an executable specification language for solving all problems in NP , 2000, Comput. Lang..

[17]  Serge Abiteboul,et al.  Foundations of Databases , 1994 .

[18]  Hilary Putnam,et al.  A Computing Procedure for Quantification Theory , 1960, JACM.

[19]  H. Levesque,et al.  Generating Hard Satis ability Problems ? , 1995 .

[20]  Hector J. Levesque,et al.  Generating Hard Satisfiability Problems , 1996, Artif. Intell..

[21]  Robert A. Kowalski,et al.  The Semantics of Predicate Logic as a Programming Language , 1976, JACM.

[22]  James M. Crawford,et al.  Experimental Results on the Crossover Point in Random 3-SAT , 1996, Artif. Intell..

[23]  Kuldeep Kumar,et al.  Strategies for incorporating formal specifications in software development , 1994, CACM.

[24]  Douglas R. Smith,et al.  KIDS: A Semiautomatic Program Development System , 1990, IEEE Trans. Software Eng..

[25]  David Harel,et al.  Structure and complexity of relational queries , 1980, 21st Annual Symposium on Foundations of Computer Science (sfcs 1980).