public class TestTest { public void test(){ Test t = new Test(); int a = t.getb(); //@ assert a ==1; // result of geta() is 0 so result of getb() should be 1 and assertion should pass. } } class Test { public Test(){ } /*@ public normal_behavior @ ensures \result == 0; // postcond 1 // incorrect postCondition @*/ public /*@ pure @*/ int geta(){ return 1; } /*@ public normal_behavior @ ensures \result == geta() + 1; // postcond 2 @*/ public int getb(){ return geta() +1; } }