Library zoo.program_logic.prophet_nat
From zoo Require Import
prelude.
From zoo.language Require Import
notations.
From zoo.program_logic Require Export
prophet_typed.
From zoo Require Import
options.
Program Definition prophet_nat :=
{|prophet_typed_type :=
nat
; prophet_typed_of_val v :=
match v with
| ValInt i ⇒
Some (Z.to_nat i)
| _ ⇒
None
end
; prophet_typed_to_val i :=
#i
|}.
Solve Obligations of prophet_nat with
try done.
Program Definition prophet_nat_1 :=
{|prophet_typed_1_type :=
nat
; prophet_typed_1_of_val v :=
match v with
| ValInt i ⇒
Some (Z.to_nat i)
| _ ⇒
None
end
; prophet_typed_1_to_val i :=
#i
|}.
Solve Obligations of prophet_nat_1 with
try done.
prelude.
From zoo.language Require Import
notations.
From zoo.program_logic Require Export
prophet_typed.
From zoo Require Import
options.
Program Definition prophet_nat :=
{|prophet_typed_type :=
nat
; prophet_typed_of_val v :=
match v with
| ValInt i ⇒
Some (Z.to_nat i)
| _ ⇒
None
end
; prophet_typed_to_val i :=
#i
|}.
Solve Obligations of prophet_nat with
try done.
Program Definition prophet_nat_1 :=
{|prophet_typed_1_type :=
nat
; prophet_typed_1_of_val v :=
match v with
| ValInt i ⇒
Some (Z.to_nat i)
| _ ⇒
None
end
; prophet_typed_1_to_val i :=
#i
|}.
Solve Obligations of prophet_nat_1 with
try done.