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

  • Authors:
  • Marco Cadoli;Giovambattista Ianni;Luigi Palopoli;Andrea Schaerf;Domenico Vasile

  • Affiliations:
  • Dipartimento di Informatica e Sistemistica, Universití di Roma "La Sapienza", Via Salaria 113, I-00198 Roma, Italy;Dipartimento di Elettronica, Informatica e Sistemistica, Universití della Calabria, I-87036 Rende (CS), Italy;Dip. di Informatica, Matematica, Elettronica e Trasporti, Universití di Reggio Calabria, Via Graziella, loc. Feo di Vito, I-89100 Reggio Calabria, Italy;Dipartimento di Ingegneria Elettrica, Gestionale e Meccanica, Universití di Udine, Via delle Scienze 208, I-33100 Udine, Italy;Dipartimento di Elettronica, Informatica e Sistemistica, Universití della Calabria, I-87036 Rende (CS), Italy

  • Venue:
  • Computer Languages
  • Year:
  • 2000

Quantified Score

Hi-index 0.00

Visualization

Abstract

In this paper a logic-based specification language, called NP-SPEC, is presented. The language is obtained by 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. The specification of several combinatorial problems in NP-SPEC is shown, and the efficiency of the generated programs is evaluated.