package project; import java.util.*; import org.overture.codegen.runtime.*; import org.overture.codegen.vdm2jml.runtime.*; @SuppressWarnings("all") //@ nullable_by_default final public class Entry { /*@ public ghost static boolean invChecksOn = true; @*/ private Entry() {} public static Object Run() { { final Number ignorePattern_1 = f(2L); //@ assert Utils.is_nat(ignorePattern_1); /* skip */ } IO.println("Done! Expected no violations"); return 0L; } /*@ pure @*/ public static Number f(final Number a) { //@ assert Utils.is_nat(a); Number casesExpResult_1 = null; Number intPattern_1 = a; //@ assert Utils.is_nat(intPattern_1); Boolean success_1 = Utils.equals(intPattern_1, 1L); //@ assert Utils.is_bool(success_1); if (!(success_1)) { Number intPattern_2 = a; //@ assert Utils.is_nat(intPattern_2); success_1 = Utils.equals(intPattern_2, 2L); //@ assert Utils.is_bool(success_1); if (success_1) { casesExpResult_1 = 8L; //@ assert Utils.is_nat1(casesExpResult_1); } else { casesExpResult_1 = 2L; //@ assert Utils.is_nat1(casesExpResult_1); } } else { casesExpResult_1 = 4L; //@ assert Utils.is_nat1(casesExpResult_1); } Number ret_1 = casesExpResult_1; //@ assert Utils.is_nat(ret_1); return ret_1; } public String toString() { return "Entry{}"; } }