Use COQ proof language to solve this (* Prove the following spec for max. To deal with the if-then-else, first destruct the condition, then use the tactics wp_if_true/wp_if_false as appropriate in each case. *) Definition max : val := λ: "x" "y", if: !"x" < !"y" then !"y" else !"x". Lemma max_spec x y (v1 v2 : Z) : {{{ x ↦ #v1 ∗ y ↦ #v2 }}} max #x #y {{{ v, RET #v; ⌜v1 <= v /\ v2 <= v⌝%Z ∗ x ↦ #v1 ∗ y ↦ #v2 }}}. Proof. Admitted. End proof.
Use COQ proof language to solve this (* Prove the following spec for max. To deal with the if-then-else, first destruct the condition, then use the tactics wp_if_true/wp_if_false as appropriate in each case. *) Definition max : val := λ: "x" "y", if: !"x" < !"y" then !"y" else !"x". Lemma max_spec x y (v1 v2 : Z) : {{{ x ↦ #v1 ∗ y ↦ #v2 }}} max #x #y {{{ v, RET #v; ⌜v1 <= v /\ v2 <= v⌝%Z ∗ x ↦ #v1 ∗ y ↦ #v2 }}}. Proof. Admitted. End proof.
Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
Related questions
Question
Use COQ proof language to solve this
(* Prove the following spec for max. To deal with the if-then-else,
first destruct the condition, then use the tactics wp_if_true/wp_if_false
as appropriate in each case. *)
Definition max : val := λ: "x" "y",
if: !"x" < !"y" then !"y" else !"x".
Lemma max_spec x y (v1 v2 : Z) :
{{{ x ↦ #v1 ∗ y ↦ #v2 }}}
max #x #y
{{{ v, RET #v; ⌜v1 <= v /\ v2 <= v⌝%Z ∗ x ↦ #v1 ∗ y ↦ #v2 }}}.
Proof.
Admitted.
End proof.
Expert Solution
This question has been solved!
Explore an expertly crafted, step-by-step solution for a thorough understanding of key concepts.
Step by step
Solved in 3 steps
Knowledge Booster
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.Recommended textbooks for you
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education