
The Prototype Verification System (PVS) is a
specification language
A specification language is a formal language in computer science used during systems analysis, requirements analysis, and systems design to describe a system at a much higher level than a programming language, which is used to produce the exec ...
integrated with support tools and an
automated theorem prover
Automated theorem proving (also known as ATP or automated deduction) is a subfield of automated reasoning and mathematical logic dealing with proving mathematical theorems by computer programs. Automated reasoning over mathematical proof was a ma ...
, developed at the Computer Science Laboratory of
SRI International
SRI International (SRI) is a nonprofit organization, nonprofit scientific research, scientific research institute and organization headquartered in Menlo Park, California, United States. It was established in 1946 by trustees of Stanford Univer ...
in
Menlo Park, California
Menlo Park ( ) is a city at the eastern edge of San Mateo County, California, San Mateo County in the San Francisco Bay Area of California, United States. It is bordered by San Francisco Bay on the north and east; East Palo Alto, California, Eas ...
.
PVS is based on a kernel consisting of an extension of
Church
Church may refer to:
Religion
* Church (building), a place/building for Christian religious activities and praying
* Church (congregation), a local congregation of a Christian denomination
* Church service, a formalized period of Christian comm ...
's theory of types with
dependent types
In computer science and logic, a dependent type is a type whose definition depends on a value. It is an overlapping feature of type theory and type systems. In intuitionistic type theory, dependent types are used to encode logic's quantifiers lik ...
, and is fundamentally a classical typed higher-order logic. The base types include uninterpreted types that may be introduced by the user, and built-in types such as the booleans, integers, reals, and the ordinals. Type-constructors include functions, sets, tuples, records, enumerations, and abstract data types. Predicate subtypes and dependent types can be used to introduce constraints; these constrained types may incur proof obligations (called type-correctness conditions or TCCs) during typechecking. PVS specifications are organized into parameterized theories.
The system is implemented in
Common Lisp
Common Lisp (CL) is a dialect of the Lisp programming language, published in American National Standards Institute (ANSI) standard document ''ANSI INCITS 226-1994 (S2018)'' (formerly ''X3.226-1994 (R1999)''). The Common Lisp HyperSpec, a hyperli ...
, and is released under the
GNU General Public License
The GNU General Public Licenses (GNU GPL or simply GPL) are a series of widely used free software licenses, or ''copyleft'' licenses, that guarantee end users the freedom to run, study, share, or modify the software. The GPL was the first ...
(GPL).
See also
*
Formal methods
In computer science, formal methods are mathematics, mathematically rigorous techniques for the formal specification, specification, development, Program analysis, analysis, and formal verification, verification of software and computer hardware, ...
*
List of proof assistants
In computer science and mathematical logic, a proof assistant or interactive theorem prover is a software tool to assist with the development of formal proofs by human–machine collaboration. This involves some sort of interactive proof edi ...
References
*
Owre,
Shankar, and
Rushby, 1992. ''PVS: A Prototype Verification System''. Published in the ''CADE 11'' conference proceedings.
External links
PVS websiteat
SRI International
SRI International (SRI) is a nonprofit organization, nonprofit scientific research, scientific research institute and organization headquartered in Menlo Park, California, United States. It was established in 1946 by trustees of Stanford Univer ...
's Computer Science Laboratory
Summary of PVSby
John Rushby at the ''Mechanized Reasoning'' database of
Michael Kohlhase and
Carolyn Talcott
Carolyn Talcott (born June 14, 1941) is an American computer scientist known for work in formal reasoning, especially as it relates to computers, cryptanalysis and systems biology. She is currently the program director of the Symbolic Systems Bio ...
Formal specification languages
Proof assistants
Dependently typed languages
Lisp (programming language)
Common Lisp (programming language) software
Free theorem provers
Free software programmed in Lisp
SRI International software
{{logic-stub