Isabelle 如何对伊莎贝尔理论进行多行评论?
Rosetta仅为Isabelle的单行注释提供文档 我阅读了第2.2.4节,其中建议多行注释使用文本{*..}或--{…*},但它们在我的理论中不起作用:Isabelle 如何对伊莎贝尔理论进行多行评论?,isabelle,Isabelle,Rosetta仅为Isabelle的单行注释提供文档 我阅读了第2.2.4节,其中建议多行注释使用文本{*..}或--{…*},但它们在我的理论中不起作用: theory Max_Of_Two_Integers imports Main begin function two_integer_max :: "nat ⇒ nat ⇒ nat" where "two_integer_max first second = (if (first >
theory Max_Of_Two_Integers
imports Main
begin
function two_integer_max :: "nat ⇒ nat ⇒ nat"
where
"two_integer_max first second =
(if (first > second) then
return ()
else
return ())
--{* "two_integer_max first second =
(if (first > second) then
return first
else
return second)"
*}
text{* "two_integer_max first second =
(if (first > second) then
return first
else
return second)"
*}
end
给予
对于最终注释的两个代码块。Isabelle中有两种注释:
(* "two_integer_max first second =
(if (first > second) then
return first
else
return second)"
*)
― ‹ "two_integer_max first second =
(if (first > second) then
return first
else
return second)"
›
请注意,前导符号是一个长破折号(可以插入为\
),尖括号也是特殊的,不仅仅是
(可以插入为\
和\
)
text{*..*}
的变量不是注释,而是文档文本的一部分,用于根据理论生成文档:
text {* "two_integer_max first second =
(if (first > second) then
return first
else
return second)"
*}
Isabelle 2021对语法提出警告,并建议使用cartouche(上面提到的括号<代码>中…›):
注意。最初的示例在最后的
返回()之后遗漏了一个结束双引号。
Isabelle中有两种注释:
(* "two_integer_max first second =
(if (first > second) then
return first
else
return second)"
*)
― ‹ "two_integer_max first second =
(if (first > second) then
return first
else
return second)"
›
请注意,前导符号是一个长破折号(可以插入为\
),尖括号也是特殊的,不仅仅是
(可以插入为\
和\
)
text{*..*}
的变量不是注释,而是文档文本的一部分,用于根据理论生成文档:
text {* "two_integer_max first second =
(if (first > second) then
return first
else
return second)"
*}
Isabelle 2021对语法提出警告,并建议使用cartouche(上面提到的括号<代码>中…›):
注意。原始示例在最后的return())
之后遗漏了一个结束双引号