小编vku*_*cak的帖子

如何证明莱昂的名单大小?

我试图证明列表中的大小(元素数量)是非负的,但莱昂未能证明它 - 它只是超时.莱昂真的没有能力证明这个属性,还是我错误地使用它?我的出发点是我在文章"莱昂验证系统概述"中读到的一个功能.

import leon.lang._
import leon.annotation._

object ListSize {
  sealed abstract class List
  case class Cons(head: Int, tail: List) extends List
  case object Nil extends List

  def size(l: List) : Int = (l match {
    case Nil => 0
    case Cons(_, t) => 1 + size(t)
  }) ensuring(_ >= 0)
}
Run Code Online (Sandbox Code Playgroud)

scala leon

7
推荐指数
1
解决办法
127
查看次数

标签 统计

leon ×1

scala ×1