lean4-htt/tests/lean/run/8894.lean
Joachim Breitner c517f8fc9e
chore: resurrect #8978, #8992, #8973 from bad merge (#9641)
This PR resurrects the changes from #8978, #8992, #8973 which were
accidentally removed by #8996.

Fixes #8962.

---------

Co-authored-by: Wojciech Rozowski <wojciech@lean-fro.org>
2025-07-31 08:04:40 +00:00

50 lines
882 B
Text

open Lean.Order
def A : Type := Prop
def B : Type := Prop
instance : Lean.Order.PartialOrder A where
rel := sorry
rel_refl := sorry
rel_trans := sorry
rel_antisymm := sorry
instance : Lean.Order.PartialOrder B where
rel := sorry
rel_refl := sorry
rel_trans := sorry
rel_antisymm := sorry
instance : Lean.Order.CCPO A where
csup := sorry
csup_spec := sorry
instance : Lean.Order.CCPO B where
csup := sorry
csup_spec := sorry
/--
error: Could not prove 'tick' to be monotone in its recursive calls:
Cannot eliminate recursive call in
tock (n + 1)
-/
#guard_msgs in
mutual
def tick (n : Nat): A :=
tock (n + 1)
partial_fixpoint
def tock (n : Nat) : B :=
tick (n + 1)
partial_fixpoint
end
mutual
def tick2 (n : Nat): A :=
tock2 (n + 1)
partial_fixpoint
def tock2 (n : Nat) : A :=
tick2 (n + 1)
partial_fixpoint
end