diff options
author | Guillaume Boisseau | 2024-05-28 11:56:39 +0200 |
---|---|---|
committer | GitHub | 2024-05-28 11:56:39 +0200 |
commit | ef7792c106a1f33397c206fcb5124b5ddfe64378 (patch) | |
tree | a72fae46702fc4c2eb32e1361a2538eb7a5f5545 /tests/lean/Issue194RecursiveStructProjector.lean | |
parent | 4f26c7f6f1e554d8ec2f46e868d5dc66c4160d16 (diff) | |
parent | c4d2af051c18c4c81b1e57a45210c37c89c8330f (diff) |
Merge pull request #213 from AeneasVerif/cleanup-tests
Diffstat (limited to 'tests/lean/Issue194RecursiveStructProjector.lean')
-rw-r--r-- | tests/lean/Issue194RecursiveStructProjector.lean | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/tests/lean/Issue194RecursiveStructProjector.lean b/tests/lean/Issue194RecursiveStructProjector.lean new file mode 100644 index 00000000..4eb23934 --- /dev/null +++ b/tests/lean/Issue194RecursiveStructProjector.lean @@ -0,0 +1,35 @@ +-- THIS FILE WAS AUTOMATICALLY GENERATED BY AENEAS +-- [issue_194_recursive_struct_projector] +import Base +open Primitives + +namespace issue_194_recursive_struct_projector + +/- [issue_194_recursive_struct_projector::AVLNode] + Source: 'tests/src/issue-194-recursive-struct-projector.rs', lines 2:0-2:17 -/ +inductive AVLNode (T : Type) := +| mk : T → Option (AVLNode T) → Option (AVLNode T) → AVLNode T + +@[simp, reducible] +def AVLNode.value {T : Type} (x : AVLNode T) := + match x with | AVLNode.mk x1 _ _ => x1 + +@[simp, reducible] +def AVLNode.left {T : Type} (x : AVLNode T) := + match x with | AVLNode.mk _ x1 _ => x1 + +@[simp, reducible] +def AVLNode.right {T : Type} (x : AVLNode T) := + match x with | AVLNode.mk _ _ x1 => x1 + +/- [issue_194_recursive_struct_projector::get_val]: + Source: 'tests/src/issue-194-recursive-struct-projector.rs', lines 10:0-10:33 -/ +def get_val (T : Type) (x : AVLNode T) : Result T := + Result.ok x.value + +/- [issue_194_recursive_struct_projector::get_left]: + Source: 'tests/src/issue-194-recursive-struct-projector.rs', lines 14:0-14:43 -/ +def get_left (T : Type) (x : AVLNode T) : Result (Option (AVLNode T)) := + Result.ok x.left + +end issue_194_recursive_struct_projector |