Isabelle:更改列表中的元素

时间:2015-12-16 20:43:46

标签: isabelle

VDM 中,我们可以执行以下操作

someSequence(index) := someSequence(index) union {x}

其中someSequence是一系列集合。

Isabelle 中,如何访问列表中的元素并像上面的示例一样修改它?有没有办法做到这一点?

感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

你谈论一个有序的集合,但你问一个列表。这是列表功能:

value "(list_update [1,2,3,4,5::nat] 2 0) = [1,2,0,4,5]"

main.pdf ,它可以快速概述常见类型的功能和语法。第9页是列表概述:

https://isabelle.in.tum.de/website-Isabelle2015/dist/Isabelle2015/doc/main.pdf#page=9

我查看了函数签名,直到我看到它看起来像是一样并返回了正确的参数。

他们是Isabelle / HOL逻辑的PDF。第66章是他们为Isabelle2015定义列表的地方。新版本的页码和章节可能会发生变化。

在页1033,有一个检查列表,它们作为一些常见列表函数的示例:

https://isabelle.in.tum.de/website-Isabelle2015/dist/library/HOL/HOL/document.pdf#page=1033

他们不会尝试使列表函数库详尽无遗。您可以使用他们已经完成的工作,例如如何定义自己的工作。