[ << ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
PVS 4.2 is primarily a bug fix release; there are few new features. Some of the changes do affect proofs, though our experience is that only a few proofs need adjustment, and most of these are quite easy to recognize and fix.
Installation Notes | ||
Changes | ||
Incompatibilities |
The system is installed as usual; see the download pages at
We strongly suggest getting a pre-built Allegro version, unless you have concerns with the Allegro runtime click-though license, in which case get the pre-built CMU Lisp image.
the
has
been removed. This is to keep automatic rewrites from expanding
the
to epsilon, which is generally not useful. Proofs that used
this will need to be modified, usually by bringing in the the_lem
lemma. In addition, a number of new lemmas have been added. Here is the
complete list of changes:
sets
:
the(p: (singleton?)): (p) the_lem: LEMMA FORALL (p: (singleton?)): the(p) = epsilon(p) the_prop: LEMMA FORALL (p: (singleton?)): p(the(p)) is_singleton: LEMMA FORALL a: (nonempty?(a) AND FORALL x, y: a(x) AND a(y) IMPLIES (x=y)) IMPLIES singleton?(a) singleton_elt_lem: LEMMA singleton?(a) and a(x) IMPLIES singleton_elt(a) = x singleton_elt_def: LEMMA singleton?(a) IMPLIES singleton_elt(a) = choose(a) singleton_rew: LEMMA singleton_elt(singleton(x)) = x AUTO_REWRITE+ singleton_rew
list_props
:
every_nth: LEMMA every(P)(l) IFF FORALL (i:below(length(l))): P(nth(l,i))
more_map_props
:
map_nth_rw: LEMMA FORALL (i: below(length(l))): nth(map(f)(l), i) = f(nth(l, i))
doc/PVSio-2.d.pdf
for details.
The changes lead to some incompatibilities. The improved judgements and
TCC subsumption lead to fewer TCCs, hence may cause TCC renumbering and
proofs may have to be shifted (M-x show-orphaned-proofs
may be
useful here).
In addition to these, the improved auto-rewrites also affect proofs, as
some branches of a proof may no longer be generated, or may have a
different form. It is usually easy to repair, though it often helps to
run an older version of PVS in parallel to figure out where the proof
deviates. Finally, any proof that relies on the expansion of the
will need to use the_lem
instead.
[ << ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
This document was generated on October 15, 2020 using texi2html 5.0.