![PVS screenshot](https://upload.wikimedia.org/wikipedia/commons/6/6f/PVS_screenshot.gif)
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 executa ...
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 maj ...
, developed at the Computer Science Laboratory of
SRI International
SRI International (SRI) is an American nonprofit scientific research institute and organization headquartered in Menlo Park, California. The trustees of Stanford University established SRI in 1946 as a center of innovation to support economic d ...
in
Menlo Park, California
Menlo Park is a city at the eastern edge of San Mateo County within the San Francisco Bay Area of California in the United States. It is bordered by San Francisco Bay on the north and east; East Palo Alto, Palo Alto, and Stanford to the south; ...
.
PVS is based on a kernel consisting of an extension of
Church
Church may refer to:
Religion
* Church (building), a building for Christian religious activities
* Church (congregation), a local congregation of a Christian denomination
* Church service, a formalized period of Christian communal worship
* C ...
'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 ANSI standard document ''ANSI INCITS 226-1994 (S20018)'' (formerly ''X3.226-1994 (R1999)''). The Common Lisp HyperSpec, a hyperlinked HTML version, has been derived fro ...
, and is released under the
GNU General Public License
The GNU General Public License (GNU GPL or simply GPL) is a series of widely used free software licenses that guarantee end users the Four Freedoms (Free software), four freedoms to run, study, share, and modify the software. The license was th ...
(GPL).
See also
*
Formal methods
In computer science, formal methods are mathematically rigorous techniques for the specification, development, and verification of software and hardware systems. The use of formal methods for software and hardware design is motivated by the expec ...
*
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 editor ...
References
*
Owre,
Shankar Shankar may refer to:
People
* Shankar (name), including a list of people with the name
* Sankar (writer) (Mani Shankar Mukherjee), Bengali writer
* L. Shankar, Indian violinist
*S. Shankar, Indian film director commonly credited as Shankar
* San ...
, 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 an American nonprofit scientific research institute and organization headquartered in Menlo Park, California. The trustees of Stanford University established SRI in 1946 as a center of innovation to support economic d ...
's Computer Science Laboratory
Summary of PVSby
John Rushby
John Rushby (born 1949) is a British computer scientist now based in the United States and working for SRI International. He previously taught and did research for Manchester University and later Newcastle University.
Early life and education
J ...
at the ''Mechanized Reasoning'' database of
Michael Kohlhase
Michael Kohlhase (born 13 September 1964, in Erlangen) is a Germans, German computer scientist and professor at University of Erlangen–Nuremberg, where he is head of the KWARC research group (Knowledge Adaptation and Reasoning for Content).
Ac ...
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 Biol ...
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