lean4-htt/tests/lean/run/issue3848.lean
2024-04-10 08:46:07 +00:00

12 lines
512 B
Text
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

theorem sizeOf_snd_lt_sizeOf_list
{α : Type u} {β : Type v} [SizeOf α] [SizeOf β] {x : α × β} {xs : List (α × β)} :
x ∈ xs → sizeOf x.snd < 1 + sizeOf xs
:= by
intro h
have h1 := List.sizeOf_lt_of_mem h
have h2 : sizeOf x = 1 + sizeOf x.1 + sizeOf x.2 := rfl
cases x; dsimp at *
omega -- this only works if universe levels are normalizes by the omega canonicalizier
-- another example
theorem ex.{u,v} : sizeOf PUnit.{(max u v) + 1} = sizeOf PUnit.{max (u + 1) (v + 1)} := by omega