Die Isabelle-Bibliothek enthält die Klassen real_inner
und real_normed_vector
, wobei letztere eine Unterklasse der früheren in ~~src/HOL/Library/Inner_Product.thy
ist. JetztEinschränkungsvariablen in den Gebietsschemas
Angenommen, wir haben eine locale
locale foo =
fixes goo :: "'a::{real_normed_vector} => bool"
und wollen diese locale mit einigen neuen Konstanten zu erweitern, und auch die Art von 'a
Zwang real_inner
zugleich zu sein, etwa so:
locale extended = foo +
fixes ext :: "'a::{real_inner} => nat"
Gibt es eine Möglichkeit, dies zu tun? Versucht man dies anhand der obigen Beispiele zu tun, bekommt Isabelle den Typ 'b::{real_normed_vector} => bool
in extended
, wenn ich stattdessen den Typ 'a::{real_inner} => bool
benötige.
Dank. Ich versuchte es, bevor ich die Frage stellte, aber ein anderes Problem verschleierte, was falsch lief. Behoben und funktioniert jetzt. –