I have tried following programs in Leon
object Test10 {
def sum(n: Int): Int = ({
require(n >= 0)
if (n == 0) 0
else sum(n-1)+1
})ensuring(res => res==n )
}
Result--Successful
object Test10 {
def sum(n: Int): Int = ({
require(n >= 0)
if (n == 0) 0
else sum(n-1)+n
})ensuring(res => res==n*(n+1)/2 )
}
Result--Failed(Not terminated)
Am I making any mistake,why the system is not able to produce?Can anyone guide me ?