ivy/test/frag6.ivy

27 строки
341 B
XML

#lang ivy1.7
type t
interpret t -> int
function f(X:t) : t
function foo(X:t) = f(X) = X
# definition f(X) = X
function g(X:t) : t
var p : t
function h(X:t) : t
definition h(Z) = Z
function bar(X:t) = f(X) = h(X)
var q : bool
function ite(X:t) : t
axiom q -> ite(X) = f(X)
axiom ~q -> ite(X) = g(X)
axiom g(X) = ite(X)
# result: OK