datatype 'a tree23 =
Leaf (‹⟨⟩›) |
Node2 "'a tree23" 'a "'a tree23" (‹⟨_, _, _⟩›) |
Node3 "'a tree23" 'a "'a tree23" 'a "'a tree23" (‹⟨_, _, _, _, _⟩›)
fun inorder :: "'a tree23 ==> 'a list"where "inorder Leaf = []" | "inorder(Node2 l a r) = inorder l @ a # inorder r" | "inorder(Node3 l a m b r) = inorder l @ a # inorder m @ b # inorder r"
instantiation tree23 :: (type)height begin
fun height_tree23 :: "'a tree23 ==> nat"where "height Leaf = 0" | "height (Node2 l _ r) = Suc(max (height l) (height r))" | "height (Node3 l _ m _ r) = Suc(max (height l) (max (height m) (height r)))"
instance ..
end
text‹Completeness:›
fun complete :: "'a tree23 ==> bool"where "complete Leaf = True" | "complete (Node2 l _ r) = (height l = height r ∧ complete l & complete r)" | "complete (Node3 l _ m _ r) = (height l = height m & height m = height r & complete l & complete m & complete r)"
lemma ht_sz_if_complete: "complete t ==> 2 ^ height t ≤ size t + 1" by (induction t) auto
end
Messung V0.5 in Prozent
¤ Dauer der Verarbeitung: 0.11 Sekunden
(vorverarbeitet am 2026-04-26)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.