diff --git a/.github/workflows/nightlydeploy.yml b/.github/workflows/nightlydeploy.yml index ca1c7cddec5..ac7696f53ac 100644 --- a/.github/workflows/nightlydeploy.yml +++ b/.github/workflows/nightlydeploy.yml @@ -53,7 +53,7 @@ jobs: env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: | - gh release delete nightly --yes --cleanup-tag + gh release delete KEY-3.0.0-rc --yes --cleanup-tag - name: Create nightly release @@ -61,9 +61,9 @@ jobs: env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: | - gh release create --generate-notes --title "Nightly Release" \ - --prerelease --notes-start-tag KEY-2.12.3 \ - nightly key.ui/build/libs/key-*-exe.jar key-javadoc.tar.xz + gh release create --generate-notes --title "KeY-3.0.0" \ + --notes-start-tag KEY-2.12.3 \ + KeY-3.0.0 key.ui/build/libs/key-*-exe.jar key-javadoc.tar.xz - name: Upload to MAVEN CENTRAL SNAPSHOT repository diff --git a/LICENSE.TXT b/LICENSE.TXT index dbafedb51f2..1a701bdf921 100644 --- a/LICENSE.TXT +++ b/LICENSE.TXT @@ -3,7 +3,7 @@ Copyright (C) 2001-2011 Universitaet Karlsruhe (TH), Germany Universitaet Koblenz-Landau, Germany Chalmers University of Technology, Sweden - Copyright (C) 2011-2019 Karlsruhe Institute of Technology, Germany + Copyright (C) 2011-2026 Karlsruhe Institute of Technology, Germany Technical University Darmstadt, Germany Chalmers University of Technology, Sweden diff --git a/README.md b/README.md index c6b28e559dc..a174deadd1e 100644 --- a/README.md +++ b/README.md @@ -6,20 +6,22 @@ ![Maven metadata URL](https://img.shields.io/maven-metadata/v?metadataUrl=https%3A%2F%2Frepo1.maven.org%2Fmaven2%2Forg%2Fkey-project%2Fkey.core%2Fmaven-metadata.xml&label=maven%20central) -This repository is the home of the interactive theorem prover KeY for formal verification and analysis of Java programs. KeY comes as a standalone GUI application, which allows you to verify the functional correctness of Java programs with respect to formal specifications formulated in the Java Modeling Language JML. Moreover, KeY can also be used as a library e.g. for symbolic program execution, first order reasoning, or test case generation. +This repository is the home of the interactive theorem prover KeY for formal verification and analysis of Java programs. +KeY comes as a standalone GUI application, which allows you to verify the functional correctness of Java programs with +respect to formal specifications formulated in the Java Modeling Language JML. Moreover, KeY can also be used as a +library e.g. for symbolic program execution, first order reasoning, or test case generation. For more information, refer to * [The KeY homepage](https://key-project.org) * [The KeY book](https://www.key-project.org/thebook2/) -* [The KeY developer documentation](https://keyproject.github.io/key-docs/) +* [The KeY documentation pages](https://keyproject.github.io/key-docs/) * KeY's success stories: * [Severe bug discovered in JDK sorting routine (TimSort)](http://www.envisage-project.eu/proving-android-java-and-python-sorting-algorithm-is-broken-and-how-to-fix-it/), * [Verification of `java.util.IdentityHashMap`](https://doi.org/10.1007/978-3-031-07727-2_4), * [Google Award for analysing a bug in `LinkedList`](https://www.key-project.org/2023/07/23/cwi-researchers-win-google-award-for-finding-a-bug-in-javas-linkedlist-using-key/) -The current version of KeY is 2.12.2, licensed under GPL v2. - +The current version of KeY is 3.0, licensed under GPL v2. Feel free to use the project templates to get started using KeY: * [For Verification Projects](https://github.com/KeYProject/verification-project-template) @@ -30,7 +32,7 @@ Feel free to use the project templates to get started using KeY: * Hardware: >=2 GB RAM * Operating System: Linux/Unix, MacOSX, Windows -* Java 17 or newer +* Java 21 or newer * Optionally, KeY can make use of the following binaries: * SMT Solvers: * [Z3](https://github.com/Z3Prover/z3#z3) @@ -87,17 +89,10 @@ Assuming you are in the directory of this README file, you can create a runnable # Developing KeY -* Quality is automatically assessed using [SonarQube](https://sonarqube.org) on each pull request. - The results of the assessments (pass/fail) can be inspected in the checks section of the PR. - - The rules and quality gate are maintained by Alexander Weigl - currently. - -* More guideline and documentation for the KeY development can be found under +Guidelines and documentation for the KeY development can be found under [key-docs](https://keyproject.github.io/key-docs/devel/). - # Issues and Bug Reports * For bug reports, please use the [issue tracker](https://github.com/KeYProject/key/issues) or send a mail to support@key-project.org. @@ -106,7 +101,9 @@ Assuming you are in the directory of this README file, you can create a runnable # Contributing to KeY -Feel free to submit [pull requests](https://github.com/KeYProject/key/pulls) via GitHub. Pull requests are assessed using automatic tests, formatting and static source checkers, as well as a manual review by one of the developers. More guidelines and documentation for the KeY development can be found under [key-docs](https://keyproject.github.io/key-docs/devel/). +Feel free to submit [pull requests](https://github.com/KeYProject/key/pulls) via GitHub. Pull requests are assessed +using automatic tests, formatting and static source checkers, as well as a manual review by one of the developers. More +guidelines and documentation for the KeY development can be found under [key-docs](https://keyproject.github.io/key-docs/devel/). diff --git a/build.gradle b/build.gradle index c389f1c0a31..8399c7c8a9b 100644 --- a/build.gradle +++ b/build.gradle @@ -19,8 +19,20 @@ plugins { // Plugin for publishing via the new Nexus API alias(libs.plugins.maven.publish) apply false + + //alias(libs.plugins.license.report) } +/* // required for generated the license report THIRD_PARTY_LICENSES.txt +licenseReport { + unionParentPomLicenses = false + outputDir = layout.buildDirectory.dir("licenses").get().asFile + projects = [project] + project.subprojects + configurations = ['runtimeClasspath'] + excludeOwnGroup = true + excludeBoms = false +} +*/ // Configure this project for use inside IntelliJ: idea { @@ -35,7 +47,7 @@ static def getDate() { } // The $BUILD_NUMBER is an environment variable set by Jenkins. -def build = System.env.BUILD_NUMBER == null ? "-dev" : "-${System.env.BUILD_NUMBER}" +def build = System.env.BUILD_NUMBER == null ? "" : "-${System.env.BUILD_NUMBER}" group = "org.key-project" version = "3.0.0$build" @@ -46,6 +58,8 @@ subprojects { apply plugin: "idea" apply plugin: "eclipse" +// apply plugin: libs.plugins.license.report + apply plugin: "com.diffplug.spotless" apply plugin: "org.checkerframework" apply plugin: "com.vanniktech.maven.publish" @@ -62,6 +76,7 @@ subprojects { repositories { mavenCentral() //maven { url = "https://git.key-project.org/api/v4/projects/35/packages/maven/" } + //maven { url = "https://central.sonatype.com/repository/maven-snapshots/" } } dependencies { @@ -293,7 +308,11 @@ subprojects { pom { name = project.name - description = project.description + afterEvaluate { + description = project.description + assert (project.description != null && project.description != "") : "Description of modules are required at maven-central" + print(project.description) + } url = 'https://key-project.org/' licenses { diff --git a/gradle.properties b/gradle.properties index 7937f1c737f..e12aa899dbf 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1 +1,4 @@ -org.gradle.jvmargs=-Xmx2g -XX:MaxMetaspaceSize=512m -Dfile.encoding=UTF-8 \ No newline at end of file +org.gradle.jvmargs=-Xmx2g -XX:MaxMetaspaceSize=512m -Dfile.encoding=UTF-8 + +# do not release automatically at Maven Central +mavenCentralAutomaticPublishing=false diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index f83295e3eb8..3e5c71cc9f9 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -23,7 +23,7 @@ stringtemplate = "4.3.4" # Java parsing and analysis javapoet = "1.13.0" -javaparser = "3.28.0-K13.5" +javaparser = "3.28.0-K13.6" truth = "1.4.5" # UI and CLI @@ -98,3 +98,4 @@ spotless = { id = "com.diffplug.spotless", version.ref = "spotless" } checkerframework = { id = "org.checkerframework", version.ref = "checkerframework-gradle" } maven-publish = { id = "com.vanniktech.maven.publish", version.ref = "maven-publish" } shadow = { id = "com.gradleup.shadow", version.ref = "shadow" } +license-report = { id = "com.github.jk1.dependency-license-report", version = "3.1.4" } \ No newline at end of file diff --git a/key.core.infflow/build.gradle b/key.core.infflow/build.gradle index 208feccfd64..a5d119bc749 100644 --- a/key.core.infflow/build.gradle +++ b/key.core.infflow/build.gradle @@ -1,3 +1,4 @@ +description = "Information-Flow / Non-interference calculus for Java using the KeY theorem prover" dependencies { diff --git a/key.core.wd/build.gradle b/key.core.wd/build.gradle index ccf546b22cc..233b71c8d66 100644 --- a/key.core.wd/build.gradle +++ b/key.core.wd/build.gradle @@ -1,3 +1,6 @@ +description = "Well-defined calculus for JML specifciation and Java using the KeY theorem prover" + + dependencies { api(project(":key.core")) diff --git a/key.core/src/main/java/de/uka/ilkd/key/control/InstantiationFileHandler.java b/key.core/src/main/java/de/uka/ilkd/key/control/InstantiationFileHandler.java index a19b7ae7be3..846b2974dc7 100644 --- a/key.core/src/main/java/de/uka/ilkd/key/control/InstantiationFileHandler.java +++ b/key.core/src/main/java/de/uka/ilkd/key/control/InstantiationFileHandler.java @@ -5,8 +5,7 @@ import java.io.*; import java.nio.charset.StandardCharsets; -import java.nio.file.Files; -import java.nio.file.Path; +import java.nio.file.*; import java.util.*; import de.uka.ilkd.key.control.instantiation_model.TacletFindModel; @@ -33,30 +32,44 @@ public class InstantiationFileHandler { private static Map>> hm; - /// Finds the current place to store used instantiation. If there was a version switch + /// Finds the current place to store used instantiations. If there was a version change /// (the folder does not exist), this method tries to copy previous instantiations to - /// the new directory silently. - /// - /// It is guaranteed, that the folder exists. + /// the new directory silently. However, if both old and new instantiations exist, they are not + /// merge, i.e. only the new ones are used currently. private static Path getStoragePath() { Path cur = PathConfig.currentPaths.keyConfigDir.resolve("instantiations"); if (Files.exists(cur)) { + /* + * At the moment, we do not merge when old and new instantiations are + * present. In the future, we could go one step further and try to merge. + */ return cur; } - - Path prev = PathConfig.previousPaths.keyConfigDir.resolve("instantiations"); + // create the directory for storing instantiations try { Files.createDirectories(cur); + } catch (IOException e) { + LOGGER.warn("Could not create the instantiations folder {}", cur, e); + } + + // Check if instantiations from older key version exist. If so, try to copy them over. + Path prev = PathConfig.previousPaths.keyConfigDir.resolve("instantiations"); + if (Files.exists(prev)) { try (var files = Files.walk(prev)) { files.forEach(path -> { try { - Files.copy(path, cur.resolve(path.relativize(prev))); - } catch (IOException ignore) { + Path target = cur.resolve(prev.relativize(path)); + // Do not overwrite existing file! + if (!Files.exists(target)) { + Files.copy(path, target); + } + } catch (IOException inner) { + LOGGER.warn("Could not copy instantiation file {}", path, inner); } }); + } catch (IOException e) { + LOGGER.warn("Could not copy instantiation files from {} to {}", prev, cur, e); } - } catch (IOException e) { - throw new RuntimeException(e); } return cur; } @@ -82,9 +95,9 @@ private static void createHashMap() { hm = new TreeMap<>(); try (var stream = Files.list(INSTANTIATION_DIR)) { // using a TreeMap here avoids non-determinsm introduce by the file system. - stream.forEach(file -> hm.put(file.toString(), null)); + stream.forEach(file -> hm.put(file.getFileName().toString(), null)); } catch (IOException e) { - LOGGER.warn("Could not read the instantions folder {}", INSTANTIATION_DIR, e); + LOGGER.warn("Could not read the instantiations folder {}", INSTANTIATION_DIR, e); } } diff --git a/key.core/src/main/java/de/uka/ilkd/key/proof/init/InitConfig.java b/key.core/src/main/java/de/uka/ilkd/key/proof/init/InitConfig.java index 9b2da179fb6..281cdc20579 100644 --- a/key.core/src/main/java/de/uka/ilkd/key/proof/init/InitConfig.java +++ b/key.core/src/main/java/de/uka/ilkd/key/proof/init/InitConfig.java @@ -80,6 +80,7 @@ public class InitConfig { /** HashMap for quick lookups taclet name->taclet */ private Map activatedTacletCache = null; + private boolean defaultsComputed; /** the fileRepo which is responsible for consistency between source code and proof */ private FileRepo fileRepo; @@ -104,6 +105,9 @@ public InitConfig(Services services) { /// combines the found choices in KeY files, together with the current settings. /// The namespace of choices has to be filled. public void computeDefaults(ChoiceInformation ci) { + if (defaultsComputed) { + return; + } var currentDefaultChoices = ProofSettings.DEFAULT_SETTINGS.getChoiceSettings().getDefaultChoices(); @@ -145,6 +149,8 @@ public void computeDefaults(ChoiceInformation ci) { } settings.getChoiceSettings().setDefaultChoices(defaults); } + activatedTacletCache = null; + defaultsComputed = true; } /** @@ -203,6 +209,14 @@ public Map> getTaclet2Builder() { } + /** + * @return an immutable mapping from a category to its default choice + */ + public @NonNull Map getCategory2DefaultChoices() { + return Collections.unmodifiableMap(category2DefaultChoice); + } + + /** * sets the set of activated choices of this initial configuration. For categories without a * specified choice the default choice contained in category2DefaultChoice is added. @@ -448,6 +462,7 @@ public InitConfig copyWithServices(Services services) { ic.header = header; ic.justifInfo = justifInfo.copy(); ic.fileRepo = fileRepo; // TODO: copy instead? delete via dispose method? + ic.defaultsComputed = defaultsComputed; return ic; } diff --git a/key.core/src/main/java/de/uka/ilkd/key/proof/init/ProblemInitializer.java b/key.core/src/main/java/de/uka/ilkd/key/proof/init/ProblemInitializer.java index 96de7f6812e..d8282f4804e 100644 --- a/key.core/src/main/java/de/uka/ilkd/key/proof/init/ProblemInitializer.java +++ b/key.core/src/main/java/de/uka/ilkd/key/proof/init/ProblemInitializer.java @@ -23,6 +23,7 @@ import de.uka.ilkd.key.logic.label.OriginTermLabelFactory; import de.uka.ilkd.key.logic.op.*; import de.uka.ilkd.key.logic.sort.GenericSort; +import de.uka.ilkd.key.nparser.ChoiceInformation; import de.uka.ilkd.key.proof.Goal; import de.uka.ilkd.key.proof.JavaModel; import de.uka.ilkd.key.proof.Proof; @@ -381,11 +382,14 @@ private void populateNamespaces(Proof proof) { } } - // what is the purpose of this method? + /** + * Updates the global settings the taclet options that declared in + * {@code optionDeclaration.key}. + * A proof created afterwards inherits these settings unless it overwrites it. + */ private InitConfig determineEnvironment(ProofOblInput po, InitConfig initConfig) { - // TODO: what does this actually do? ProofSettings.DEFAULT_SETTINGS.getChoiceSettings().updateChoices(initConfig.choiceNS(), - false); + initConfig.getCategory2DefaultChoices(), false); return initConfig; } @@ -494,7 +498,7 @@ public InitConfig prepare(EnvInput envInput) throws ProofInputException { var warnings = ic.getProfile() .prepareInitConfig(ic, additionalProfileOptions); addWarnings(warnings); - + ic.computeDefaults(new ChoiceInformation()); return ic; } diff --git a/key.core/src/main/java/de/uka/ilkd/key/proof/io/KeYFile.java b/key.core/src/main/java/de/uka/ilkd/key/proof/io/KeYFile.java index 29fe353e691..53a53f3218d 100644 --- a/key.core/src/main/java/de/uka/ilkd/key/proof/io/KeYFile.java +++ b/key.core/src/main/java/de/uka/ilkd/key/proof/io/KeYFile.java @@ -256,7 +256,7 @@ public Path readBootClassPath() { if (!bootClassPathFile.isAbsolute()) { // convert to absolute by resolving against the parent path of the parsed file Path parentDirectory = file.file().getParent(); - bootClassPathFile = parentDirectory.resolve(bootClassPathFile); + bootClassPathFile = parentDirectory.resolve(bootClassPathFile).normalize(); } if (!Files.isDirectory(bootClassPathFile)) { // Report the missing directory at the \bootclasspath declaration in the .key file, @@ -297,7 +297,7 @@ private static Location locationOrUndefined(ProblemInformation pi, String path) } else { var f = Paths.get(normalizeStoredPath(cp)); if (!f.isAbsolute()) { - f = parentDirectory.resolve(f); + f = parentDirectory.resolve(f).normalize(); } if (!Files.exists(f)) { // Point at the \classpath declaration in the .key file instead of letting the @@ -321,7 +321,7 @@ public Path readJavaPath() throws ProofInputException { if (!absFile.isAbsolute()) { // convert to absolute by resolving against the parent path of the parsed file Path parent = file.file().getParent(); - absFile = parent.resolve(javaPath); + absFile = parent.resolve(javaPath).normalize(); } if (!Files.exists(absFile)) { throw new ProofInputException(String.format( diff --git a/key.core/src/main/java/de/uka/ilkd/key/settings/ChoiceSettings.java b/key.core/src/main/java/de/uka/ilkd/key/settings/ChoiceSettings.java index 9ecfe75f261..3cd1dc3dab2 100644 --- a/key.core/src/main/java/de/uka/ilkd/key/settings/ChoiceSettings.java +++ b/key.core/src/main/java/de/uka/ilkd/key/settings/ChoiceSettings.java @@ -97,9 +97,12 @@ public void setChoiceCategories(Map> c2C) { * updates category2Choices if new entries are found in choiceNS or if * entries of category2Choices are no longer present in choiceNS * + * @param choiceNS the choices declared by the loaded problem file + * @param defaults the default choice of each category * @param remove remove entries not present in choiceNS */ - public void updateChoices(Namespace choiceNS, boolean remove) { + public void updateChoices(Namespace choiceNS, Map defaults, + boolean remove) { // Translate the given namespace into a map of 'string -> list[string]' HashMap> c2C = new LinkedHashMap<>(); for (Choice c : choiceNS.allElements()) { @@ -118,11 +121,11 @@ public void updateChoices(Namespace choiceNS, boolean remove) { } } + // ensure that default values are set if a key is present var defaultTmp = new HashMap<>(category2Default); for (var pair : category2Default.entrySet()) { var s = pair.getKey(); var v = pair.getValue(); - // if key is known then the default value should exist if (category2Choices.containsKey(s)) { if (!category2Choices.get(s).contains(v)) { defaultTmp.put(s, category2Choices.get(s).iterator().next()); @@ -131,6 +134,16 @@ public void updateChoices(Namespace choiceNS, boolean remove) { defaultTmp.remove(s); } } + + for (var category : category2Choices.keySet()) { + if (!defaultTmp.containsKey(category)) { + var declared = defaults.get(category); + if (declared != null) { + defaultTmp.put(category, declared.name().toString()); + } + } + } + setDefaultChoices(defaultTmp); } diff --git a/key.core/src/main/java/de/uka/ilkd/key/settings/ProofSettings.java b/key.core/src/main/java/de/uka/ilkd/key/settings/ProofSettings.java index 7c855368250..f4ba250d607 100644 --- a/key.core/src/main/java/de/uka/ilkd/key/settings/ProofSettings.java +++ b/key.core/src/main/java/de/uka/ilkd/key/settings/ProofSettings.java @@ -229,7 +229,7 @@ public void loadSettings() { loadSettingsFromJSONStream(in); } } catch (Exception e) { - LOGGER.warn("No proof-settings could be loaded, using defaults", e); + LOGGER.warn("No proof settings could be loaded, using defaults"); } } } diff --git a/key.core/src/main/java/de/uka/ilkd/key/util/KeYConstants.java b/key.core/src/main/java/de/uka/ilkd/key/util/KeYConstants.java index ad764324f60..5a5f59039bc 100644 --- a/key.core/src/main/java/de/uka/ilkd/key/util/KeYConstants.java +++ b/key.core/src/main/java/de/uka/ilkd/key/util/KeYConstants.java @@ -10,6 +10,6 @@ public interface KeYConstants { KeYResourceManager.getManager().getVersion() + " (internal: " + INTERNAL_VERSION + ")"; String COPYRIGHT = UnicodeHelper.COPYRIGHT + " Copyright 2001" - + UnicodeHelper.ENDASH + "2024 " + "Karlsruhe Institute of Technology, " + + UnicodeHelper.ENDASH + "2026 " + "Karlsruhe Institute of Technology, " + "Chalmers University of Technology, and Technische Universit\u00e4t Darmstadt"; } diff --git a/key.core/src/test/java/de/uka/ilkd/key/proof/runallproofs/ProofCollections.java b/key.core/src/test/java/de/uka/ilkd/key/proof/runallproofs/ProofCollections.java index 76fd55204cf..5a0e699b053 100644 --- a/key.core/src/test/java/de/uka/ilkd/key/proof/runallproofs/ProofCollections.java +++ b/key.core/src/test/java/de/uka/ilkd/key/proof/runallproofs/ProofCollections.java @@ -75,9 +75,10 @@ public static ProofCollection automaticJavaDL() throws IOException { * If the fork mode is not set to noFork, the launched subprocesses * get the specified amount of heap memory. * - * Heap memory for subprocesses (like 500m or 2G) + * Heap memory for subprocesses (like 500m or 3G) */ - // forkMemory = 1000m + settings.setForkMemory("3g"); + /* * To run the forked JVM in debug mode, set the TCP port to listen to here. @@ -487,6 +488,30 @@ public static ProofCollection automaticJavaDL() throws IOException { g.provable("heap/vstte10_05_Queue/LinkedList_reverse.key"); g.provable("heap/vstte10_05_Queue/LinkedList_tail.key"); + g = c.group("FM2024Tutorial"); + g.provable("heap/FM2024Tutorial/BinarySearch/BinSearch_binSearchR.key"); + g.provable("heap/FM2024Tutorial/BinarySearch/BinSearch_binSearch_normal.key"); + g.provable("heap/FM2024Tutorial/BinarySearch/BinSearch_binSearch_exc.key"); + g.provable("heap/FM2024Tutorial/ArrayList/ArrayList_ArrayList.key"); + g.provable("heap/FM2024Tutorial/ArrayList/ArrayList_find.key"); + g.loadable("heap/FM2024Tutorial/ArrayList/ArrayList_add.proof"); + g.provable("heap/FM2024Tutorial/ArrayList/ArrayList_size.key"); + g.provable("heap/FM2024Tutorial/ArrayList/ArrayList_size_acc.key"); + g.provable("heap/FM2024Tutorial/ArrayList/ArrayList_get_normal.key"); + g.provable("heap/FM2024Tutorial/ArrayList/ArrayList_get_acc.key"); + g.provable("heap/FM2024Tutorial/ArrayList/ArrayList_inv_acc.key"); + g.provable("heap/FM2024Tutorial/ArrayList/ArrayList_swap.key"); + g.provable("heap/FM2024Tutorial/ArrayList/ArrayList_sort.key"); + g.provable("heap/FM2024Tutorial/ArrayList/ArrayList_binSearch.key"); + g.provable("heap/FM2024Tutorial/ArrayList/LinkedList_add.key"); + g.provable("heap/FM2024Tutorial/ArrayList/LinkedList_find.key"); + g.provable("heap/FM2024Tutorial/ArrayList/LinkedList_get.key"); + g.loadable("heap/FM2024Tutorial/ArrayList/LinkedList_get_acc.proof"); + g.loadable("heap/FM2024Tutorial/ArrayList/LinkedList_inv_acc.proof"); + g.provable("heap/FM2024Tutorial/ArrayList/LinkedList_LinkedList.key"); + g.loadable("heap/FM2024Tutorial/ArrayList/LinkedList_newNode.proof"); + g.provable("heap/FM2024Tutorial/ArrayList/LinkedList_size.key"); + g.loadable("heap/FM2024Tutorial/ArrayList/LinkedList_size_acc.proof"); g = c.group("WeideEtAl"); g.provable("heap/WeideEtAl_01_AddAndMultiply/AddAndMultiply_add.key"); diff --git a/key.core/src/testFixtures/java/de/uka/ilkd/key/proof/runallproofs/proofcollection/TestFile.java b/key.core/src/testFixtures/java/de/uka/ilkd/key/proof/runallproofs/proofcollection/TestFile.java index fa70826f758..cd7e6f53bc1 100644 --- a/key.core/src/testFixtures/java/de/uka/ilkd/key/proof/runallproofs/proofcollection/TestFile.java +++ b/key.core/src/testFixtures/java/de/uka/ilkd/key/proof/runallproofs/proofcollection/TestFile.java @@ -256,6 +256,7 @@ protected void reload(boolean verbose, Path proofFile, Proof loadedProof, boolea if (settings.reloadEnabled() && (testProperty == TestProperty.PROVABLE) && success) { // Save the available proof to a temporary file. ProofSaver.saveToFile(proofFile, loadedProof); + loadedProof.dispose(); reloadProof(proofFile); if (verbose) { LOGGER.debug("... success: reloaded."); diff --git a/key.ncore.calculus/build.gradle b/key.ncore.calculus/build.gradle index e54af4cf6bb..c2a26ef8629 100644 --- a/key.ncore.calculus/build.gradle +++ b/key.ncore.calculus/build.gradle @@ -1,3 +1,5 @@ +description = "Pattern Matchern New core KeY theorem prover" + repositories { mavenCentral() } diff --git a/key.ncore.compiler/build.gradle b/key.ncore.compiler/build.gradle index 0ae89f3256f..a4014c8f4ec 100644 --- a/key.ncore.compiler/build.gradle +++ b/key.ncore.compiler/build.gradle @@ -1,6 +1,4 @@ -repositories { - mavenCentral() -} +description = "Compiling Matching Algorithm of the KeY theorem prover" dependencies { api project(':key.util') diff --git a/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_ArrayList.key b/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_ArrayList.key new file mode 100644 index 00000000000..32b75cab193 --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_ArrayList.key @@ -0,0 +1,104 @@ +\profile "Java Profile"; + +\settings { + "Choice" : { + "JavaCard" : "JavaCard:off", + "Strings" : "Strings:on", + "assertions" : "assertions:safe", + "bigint" : "bigint:on", + "finalFields" : "finalFields:immutable", + "floatRules" : "floatRules:strictfpOnly", + "initialisation" : "initialisation:disableStaticInitialisation", + "intRules" : "intRules:arithmeticSemanticsIgnoringOF", + "integerSimplificationRules" : "integerSimplificationRules:full", + "javaLoopTreatment" : "javaLoopTreatment:efficient", + "mergeGenerateIsWeakeningGoal" : "mergeGenerateIsWeakeningGoal:off", + "methodExpansion" : "methodExpansion:modularOnly", + "modelFields" : "modelFields:treatAsAxiom", + "moreSeqRules" : "moreSeqRules:on", + "permissions" : "permissions:off", + "programRules" : "programRules:Java", + "reach" : "reach:on", + "runtimeExceptions" : "runtimeExceptions:ban", + "sequences" : "sequences:on", + "soundDefaultContracts" : "soundDefaultContracts:on", + "wdChecks" : "wdChecks:off", + "wdOperator" : "wdOperator:L" + }, + "Labels" : { + "UseOriginLabels" : true + }, + "NewSMT" : { + "Axiomatisations" : "false", + "Presburger" : "false", + "sqrtSMTTranslation" : "SMT" + }, + "SMTSettings" : { + "SelectedTaclets" : [ + + ], + "UseBuiltUniqueness" : false, + "explicitTypeHierarchy" : false, + "instantiateHierarchyAssumptions" : true, + "integersMaximum" : 2147483645, + "integersMinimum" : -2147483645, + "invariantForall" : false, + "maxGenericSorts" : 2, + "useConstantsForBigOrSmallIntegers" : true, + "useUninterpretedMultiplication" : true + }, + "Strategy" : { + "ActiveStrategy" : "JavaCardDLStrategy", + "MaximumNumberOfAutomaticApplications" : 10000, + "Timeout" : -1, + "options" : { + "AUTO_INDUCTION_OPTIONS_KEY" : "AUTO_INDUCTION_OFF", + "BLOCK_OPTIONS_KEY" : "BLOCK_CONTRACT_INTERNAL", + "CLASS_AXIOM_OPTIONS_KEY" : "CLASS_AXIOM_DELAYED", + "DEP_OPTIONS_KEY" : "DEP_ON", + "LOOP_OPTIONS_KEY" : "LOOP_INVARIANT", + "METHOD_OPTIONS_KEY" : "METHOD_CONTRACT", + "MPS_OPTIONS_KEY" : "MPS_MERGE", + "NON_LIN_ARITH_OPTIONS_KEY" : "NON_LIN_ARITH_DEF_OPS", + "OSS_OPTIONS_KEY" : "OSS_ON", + "QUANTIFIERS_OPTIONS_KEY" : "QUANTIFIERS_NON_SPLITTING_WITH_PROGS", + "QUERYAXIOM_OPTIONS_KEY" : "QUERYAXIOM_OFF", + "QUERY_NEW_OPTIONS_KEY" : "QUERY_OFF", + "SPLITTING_OPTIONS_KEY" : "SPLITTING_DELAYED", + "STOPMODE_OPTIONS_KEY" : "STOPMODE_DEFAULT", + "SYMBOLIC_EXECUTION_ALIAS_CHECK_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_ALIAS_CHECK_NEVER", + "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OFF", + "USER_TACLETS_OPTIONS_KEY1" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY2" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY3" : "USER_TACLETS_OFF", + "VBT_PHASE" : "VBT_SYM_EX" + } + } +} + +\rules { + seqSwapMaintainsSeqPerm { + \schemaVar \term Seq s; + \schemaVar \term int x; + \schemaVar \term int y; + + + \find(==> seqPerm(s, seqSwap(s, x, y))) + + \add( ==> 0 <= x & x < seqLen(s) & 0 <= y & y < seqLen(s)) + + \heuristics(simplify_enlarging) + + }; +} + +\javaSource "src"; + +\proofObligation +// +{ + "class" : "de.uka.ilkd.key.proof.init.FunctionalOperationContractPO", + "contract" : "ArrayList[ArrayList::ArrayList()].JML normal_behavior operation contract.0", + "name" : "ArrayList[ArrayList::ArrayList()].JML normal_behavior operation contract.0" +} + diff --git a/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_add.proof b/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_add.proof new file mode 100644 index 00000000000..4813b327015 --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_add.proof @@ -0,0 +1,94 @@ +\profile "Java Profile"; + +\settings { + "Choice" : { + "JavaCard" : "JavaCard:off", + "Strings" : "Strings:on", + "assertions" : "assertions:safe", + "bigint" : "bigint:on", + "finalFields" : "finalFields:immutable", + "floatRules" : "floatRules:strictfpOnly", + "initialisation" : "initialisation:disableStaticInitialisation", + "intRules" : "intRules:arithmeticSemanticsIgnoringOF", + "integerSimplificationRules" : "integerSimplificationRules:full", + "javaLoopTreatment" : "javaLoopTreatment:efficient", + "mergeGenerateIsWeakeningGoal" : "mergeGenerateIsWeakeningGoal:off", + "methodExpansion" : "methodExpansion:modularOnly", + "modelFields" : "modelFields:treatAsAxiom", + "moreSeqRules" : "moreSeqRules:on", + "permissions" : "permissions:off", + "programRules" : "programRules:Java", + "reach" : "reach:on", + "runtimeExceptions" : "runtimeExceptions:ban", + "sequences" : "sequences:on", + "soundDefaultContracts" : "soundDefaultContracts:on", + "wdChecks" : "wdChecks:off", + "wdOperator" : "wdOperator:L" + }, + "Labels" : { + "UseOriginLabels" : true + }, + "NewSMT" : { + "Axiomatisations" : "false", + "Presburger" : "false", + "sqrtSMTTranslation" : "SMT" + }, + "SMTSettings" : { + "SelectedTaclets" : [ + + ], + "UseBuiltUniqueness" : false, + "explicitTypeHierarchy" : false, + "instantiateHierarchyAssumptions" : true, + "integersMaximum" : 2147483645, + "integersMinimum" : -2147483645, + "invariantForall" : false, + "maxGenericSorts" : 2, + "useConstantsForBigOrSmallIntegers" : true, + "useUninterpretedMultiplication" : true + }, + "Strategy" : { + "ActiveStrategy" : "JavaCardDLStrategy", + "MaximumNumberOfAutomaticApplications" : 10000, + "Timeout" : -1, + "options" : { + "AUTO_INDUCTION_OPTIONS_KEY" : "AUTO_INDUCTION_OFF", + "BLOCK_OPTIONS_KEY" : "BLOCK_CONTRACT_INTERNAL", + "CLASS_AXIOM_OPTIONS_KEY" : "CLASS_AXIOM_DELAYED", + "DEP_OPTIONS_KEY" : "DEP_ON", + "LOOP_OPTIONS_KEY" : "LOOP_INVARIANT", + "METHOD_OPTIONS_KEY" : "METHOD_CONTRACT", + "MPS_OPTIONS_KEY" : "MPS_MERGE", + "NON_LIN_ARITH_OPTIONS_KEY" : "NON_LIN_ARITH_DEF_OPS", + "OSS_OPTIONS_KEY" : "OSS_ON", + "QUANTIFIERS_OPTIONS_KEY" : "QUANTIFIERS_NON_SPLITTING_WITH_PROGS", + "QUERYAXIOM_OPTIONS_KEY" : "QUERYAXIOM_OFF", + "QUERY_NEW_OPTIONS_KEY" : "QUERY_OFF", + "SPLITTING_OPTIONS_KEY" : "SPLITTING_DELAYED", + "STOPMODE_OPTIONS_KEY" : "STOPMODE_DEFAULT", + "SYMBOLIC_EXECUTION_ALIAS_CHECK_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_ALIAS_CHECK_NEVER", + "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OFF", + "USER_TACLETS_OPTIONS_KEY1" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY2" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY3" : "USER_TACLETS_OFF", + "VBT_PHASE" : "VBT_SYM_EX" + } + } +} + +\javaSource "src"; + +\proofObligation +// +{ + "class" : "de.uka.ilkd.key.proof.init.FunctionalOperationContractPO", + "contract" : "ArrayList[List::add(int)].JML normal_behavior operation contract.0", + "name" : "ArrayList[List::add(int)].JML normal_behavior operation contract.0" +} + +\proofScript { + macro autopilot; + rule Class_invariant_axiom_for_ArrayList occ=1; + macro "split-prop"; + auto all=true steps=10000; +} \ No newline at end of file diff --git a/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_binSearch.key b/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_binSearch.key new file mode 100644 index 00000000000..17a50ddbdda --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_binSearch.key @@ -0,0 +1,87 @@ +\profile "Java Profile"; + +\settings { + "Choice" : { + "JavaCard" : "JavaCard:off", + "Strings" : "Strings:on", + "assertions" : "assertions:safe", + "bigint" : "bigint:on", + "finalFields" : "finalFields:immutable", + "floatRules" : "floatRules:strictfpOnly", + "initialisation" : "initialisation:disableStaticInitialisation", + "intRules" : "intRules:arithmeticSemanticsIgnoringOF", + "integerSimplificationRules" : "integerSimplificationRules:full", + "javaLoopTreatment" : "javaLoopTreatment:efficient", + "mergeGenerateIsWeakeningGoal" : "mergeGenerateIsWeakeningGoal:off", + "methodExpansion" : "methodExpansion:modularOnly", + "modelFields" : "modelFields:treatAsAxiom", + "moreSeqRules" : "moreSeqRules:on", + "permissions" : "permissions:off", + "programRules" : "programRules:Java", + "reach" : "reach:on", + "runtimeExceptions" : "runtimeExceptions:ban", + "sequences" : "sequences:on", + "soundDefaultContracts" : "soundDefaultContracts:on", + "wdChecks" : "wdChecks:off", + "wdOperator" : "wdOperator:L" + }, + "Labels" : { + "UseOriginLabels" : true + }, + "NewSMT" : { + "Axiomatisations" : "false", + "Presburger" : "false", + "sqrtSMTTranslation" : "SMT" + }, + "SMTSettings" : { + "SelectedTaclets" : [ + + ], + "UseBuiltUniqueness" : false, + "explicitTypeHierarchy" : false, + "instantiateHierarchyAssumptions" : true, + "integersMaximum" : 2147483645, + "integersMinimum" : -2147483645, + "invariantForall" : false, + "maxGenericSorts" : 2, + "useConstantsForBigOrSmallIntegers" : true, + "useUninterpretedMultiplication" : true + }, + "Strategy" : { + "ActiveStrategy" : "Modular JavaDL Strategy", + "MaximumNumberOfAutomaticApplications" : 10000, + "Timeout" : -1, + "options" : { + "AUTO_INDUCTION_OPTIONS_KEY" : "AUTO_INDUCTION_OFF", + "BLOCK_OPTIONS_KEY" : "BLOCK_CONTRACT_INTERNAL", + "CLASS_AXIOM_OPTIONS_KEY" : "CLASS_AXIOM_DELAYED", + "DEP_OPTIONS_KEY" : "DEP_ON", + "LOOP_OPTIONS_KEY" : "LOOP_INVARIANT", + "METHOD_OPTIONS_KEY" : "METHOD_CONTRACT", + "MPS_OPTIONS_KEY" : "MPS_MERGE", + "NON_LIN_ARITH_OPTIONS_KEY" : "NON_LIN_ARITH_DEF_OPS", + "OSS_OPTIONS_KEY" : "OSS_ON", + "QUANTIFIERS_OPTIONS_KEY" : "QUANTIFIERS_NON_SPLITTING_WITH_PROGS", + "QUERYAXIOM_OPTIONS_KEY" : "QUERYAXIOM_OFF", + "QUERY_NEW_OPTIONS_KEY" : "QUERY_OFF", + "SPLITTING_OPTIONS_KEY" : "SPLITTING_DELAYED", + "STOPMODE_OPTIONS_KEY" : "STOPMODE_DEFAULT", + "SYMBOLIC_EXECUTION_ALIAS_CHECK_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_ALIAS_CHECK_NEVER", + "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OFF", + "USER_TACLETS_OPTIONS_KEY1" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY2" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY3" : "USER_TACLETS_OFF", + "VBT_PHASE" : "VBT_SYM_EX" + } + } +} + +\javaSource "src"; + +\proofObligation +// +{ + "class" : "de.uka.ilkd.key.proof.init.FunctionalOperationContractPO", + "contract" : "ArrayList[ArrayList::binSearch(int)].JML normal_behavior operation contract.0", + "name" : "ArrayList[ArrayList::binSearch(int)].JML normal_behavior operation contract.0" +} diff --git a/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_find.key b/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_find.key new file mode 100644 index 00000000000..a23468409f5 --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_find.key @@ -0,0 +1,88 @@ +\profile "Java Profile"; + +\settings { + "Choice" : { + "JavaCard" : "JavaCard:off", + "Strings" : "Strings:on", + "assertions" : "assertions:safe", + "bigint" : "bigint:on", + "finalFields" : "finalFields:immutable", + "floatRules" : "floatRules:strictfpOnly", + "initialisation" : "initialisation:disableStaticInitialisation", + "intRules" : "intRules:arithmeticSemanticsIgnoringOF", + "integerSimplificationRules" : "integerSimplificationRules:full", + "javaLoopTreatment" : "javaLoopTreatment:efficient", + "mergeGenerateIsWeakeningGoal" : "mergeGenerateIsWeakeningGoal:off", + "methodExpansion" : "methodExpansion:modularOnly", + "modelFields" : "modelFields:treatAsAxiom", + "moreSeqRules" : "moreSeqRules:on", + "permissions" : "permissions:off", + "programRules" : "programRules:Java", + "reach" : "reach:on", + "runtimeExceptions" : "runtimeExceptions:ban", + "sequences" : "sequences:on", + "soundDefaultContracts" : "soundDefaultContracts:on", + "wdChecks" : "wdChecks:off", + "wdOperator" : "wdOperator:L" + }, + "Labels" : { + "UseOriginLabels" : true + }, + "NewSMT" : { + "Axiomatisations" : "false", + "Presburger" : "false", + "sqrtSMTTranslation" : "SMT" + }, + "SMTSettings" : { + "SelectedTaclets" : [ + + ], + "UseBuiltUniqueness" : false, + "explicitTypeHierarchy" : false, + "instantiateHierarchyAssumptions" : true, + "integersMaximum" : 2147483645, + "integersMinimum" : -2147483645, + "invariantForall" : false, + "maxGenericSorts" : 2, + "useConstantsForBigOrSmallIntegers" : true, + "useUninterpretedMultiplication" : true + }, + "Strategy" : { + "ActiveStrategy" : "JavaCardDLStrategy", + "MaximumNumberOfAutomaticApplications" : 10000, + "Timeout" : -1, + "options" : { + "AUTO_INDUCTION_OPTIONS_KEY" : "AUTO_INDUCTION_OFF", + "BLOCK_OPTIONS_KEY" : "BLOCK_CONTRACT_INTERNAL", + "CLASS_AXIOM_OPTIONS_KEY" : "CLASS_AXIOM_DELAYED", + "DEP_OPTIONS_KEY" : "DEP_ON", + "LOOP_OPTIONS_KEY" : "LOOP_INVARIANT", + "METHOD_OPTIONS_KEY" : "METHOD_CONTRACT", + "MPS_OPTIONS_KEY" : "MPS_MERGE", + "NON_LIN_ARITH_OPTIONS_KEY" : "NON_LIN_ARITH_DEF_OPS", + "OSS_OPTIONS_KEY" : "OSS_ON", + "QUANTIFIERS_OPTIONS_KEY" : "QUANTIFIERS_NON_SPLITTING_WITH_PROGS", + "QUERYAXIOM_OPTIONS_KEY" : "QUERYAXIOM_OFF", + "QUERY_NEW_OPTIONS_KEY" : "QUERY_OFF", + "SPLITTING_OPTIONS_KEY" : "SPLITTING_DELAYED", + "STOPMODE_OPTIONS_KEY" : "STOPMODE_DEFAULT", + "SYMBOLIC_EXECUTION_ALIAS_CHECK_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_ALIAS_CHECK_NEVER", + "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OFF", + "USER_TACLETS_OPTIONS_KEY1" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY2" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY3" : "USER_TACLETS_OFF", + "VBT_PHASE" : "VBT_SYM_EX" + } + } +} + + +\javaSource "src"; + +\proofObligation +// +{ + "class" : "de.uka.ilkd.key.proof.init.FunctionalOperationContractPO", + "contract" : "ArrayList[List::find(int)].JML normal_behavior operation contract.0", + "name" : "ArrayList[List::find(int)].JML normal_behavior operation contract.0" +} diff --git a/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_get_acc.key b/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_get_acc.key new file mode 100644 index 00000000000..80d0faa54d6 --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_get_acc.key @@ -0,0 +1,88 @@ +\profile "Java Profile"; + +\settings { + "Choice" : { + "JavaCard" : "JavaCard:off", + "Strings" : "Strings:on", + "assertions" : "assertions:safe", + "bigint" : "bigint:on", + "finalFields" : "finalFields:immutable", + "floatRules" : "floatRules:strictfpOnly", + "initialisation" : "initialisation:disableStaticInitialisation", + "intRules" : "intRules:arithmeticSemanticsIgnoringOF", + "integerSimplificationRules" : "integerSimplificationRules:full", + "javaLoopTreatment" : "javaLoopTreatment:efficient", + "mergeGenerateIsWeakeningGoal" : "mergeGenerateIsWeakeningGoal:off", + "methodExpansion" : "methodExpansion:modularOnly", + "modelFields" : "modelFields:treatAsAxiom", + "moreSeqRules" : "moreSeqRules:on", + "permissions" : "permissions:off", + "programRules" : "programRules:Java", + "reach" : "reach:on", + "runtimeExceptions" : "runtimeExceptions:ban", + "sequences" : "sequences:on", + "soundDefaultContracts" : "soundDefaultContracts:on", + "wdChecks" : "wdChecks:off", + "wdOperator" : "wdOperator:L" + }, + "Labels" : { + "UseOriginLabels" : true + }, + "NewSMT" : { + "Axiomatisations" : "false", + "Presburger" : "false", + "sqrtSMTTranslation" : "SMT" + }, + "SMTSettings" : { + "SelectedTaclets" : [ + + ], + "UseBuiltUniqueness" : false, + "explicitTypeHierarchy" : false, + "instantiateHierarchyAssumptions" : true, + "integersMaximum" : 2147483645, + "integersMinimum" : -2147483645, + "invariantForall" : false, + "maxGenericSorts" : 2, + "useConstantsForBigOrSmallIntegers" : true, + "useUninterpretedMultiplication" : true + }, + "Strategy" : { + "ActiveStrategy" : "JavaCardDLStrategy", + "MaximumNumberOfAutomaticApplications" : 10000, + "Timeout" : -1, + "options" : { + "AUTO_INDUCTION_OPTIONS_KEY" : "AUTO_INDUCTION_OFF", + "BLOCK_OPTIONS_KEY" : "BLOCK_CONTRACT_INTERNAL", + "CLASS_AXIOM_OPTIONS_KEY" : "CLASS_AXIOM_DELAYED", + "DEP_OPTIONS_KEY" : "DEP_ON", + "LOOP_OPTIONS_KEY" : "LOOP_INVARIANT", + "METHOD_OPTIONS_KEY" : "METHOD_CONTRACT", + "MPS_OPTIONS_KEY" : "MPS_MERGE", + "NON_LIN_ARITH_OPTIONS_KEY" : "NON_LIN_ARITH_DEF_OPS", + "OSS_OPTIONS_KEY" : "OSS_ON", + "QUANTIFIERS_OPTIONS_KEY" : "QUANTIFIERS_NON_SPLITTING_WITH_PROGS", + "QUERYAXIOM_OPTIONS_KEY" : "QUERYAXIOM_OFF", + "QUERY_NEW_OPTIONS_KEY" : "QUERY_ON", + "SPLITTING_OPTIONS_KEY" : "SPLITTING_DELAYED", + "STOPMODE_OPTIONS_KEY" : "STOPMODE_DEFAULT", + "SYMBOLIC_EXECUTION_ALIAS_CHECK_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_ALIAS_CHECK_NEVER", + "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OFF", + "USER_TACLETS_OPTIONS_KEY1" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY2" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY3" : "USER_TACLETS_OFF", + "VBT_PHASE" : "VBT_SYM_EX" + } + } +} + + +\javaSource "src"; + +\proofObligation +// +{ + "class" : "de.uka.ilkd.key.proof.init.DependencyContractPO", + "contract" : "ArrayList[List::get(int)].JML accessible clause.0", + "name" : "ArrayList[List::get(int)].JML accessible clause.0" +} diff --git a/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_get_normal.key b/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_get_normal.key new file mode 100644 index 00000000000..33293894816 --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_get_normal.key @@ -0,0 +1,88 @@ +\profile "Java Profile"; + +\settings { + "Choice" : { + "JavaCard" : "JavaCard:off", + "Strings" : "Strings:on", + "assertions" : "assertions:safe", + "bigint" : "bigint:on", + "finalFields" : "finalFields:immutable", + "floatRules" : "floatRules:strictfpOnly", + "initialisation" : "initialisation:disableStaticInitialisation", + "intRules" : "intRules:arithmeticSemanticsIgnoringOF", + "integerSimplificationRules" : "integerSimplificationRules:full", + "javaLoopTreatment" : "javaLoopTreatment:efficient", + "mergeGenerateIsWeakeningGoal" : "mergeGenerateIsWeakeningGoal:off", + "methodExpansion" : "methodExpansion:modularOnly", + "modelFields" : "modelFields:treatAsAxiom", + "moreSeqRules" : "moreSeqRules:on", + "permissions" : "permissions:off", + "programRules" : "programRules:Java", + "reach" : "reach:on", + "runtimeExceptions" : "runtimeExceptions:ban", + "sequences" : "sequences:on", + "soundDefaultContracts" : "soundDefaultContracts:on", + "wdChecks" : "wdChecks:off", + "wdOperator" : "wdOperator:L" + }, + "Labels" : { + "UseOriginLabels" : true + }, + "NewSMT" : { + "Axiomatisations" : "false", + "Presburger" : "false", + "sqrtSMTTranslation" : "SMT" + }, + "SMTSettings" : { + "SelectedTaclets" : [ + + ], + "UseBuiltUniqueness" : false, + "explicitTypeHierarchy" : false, + "instantiateHierarchyAssumptions" : true, + "integersMaximum" : 2147483645, + "integersMinimum" : -2147483645, + "invariantForall" : false, + "maxGenericSorts" : 2, + "useConstantsForBigOrSmallIntegers" : true, + "useUninterpretedMultiplication" : true + }, + "Strategy" : { + "ActiveStrategy" : "JavaCardDLStrategy", + "MaximumNumberOfAutomaticApplications" : 10000, + "Timeout" : -1, + "options" : { + "AUTO_INDUCTION_OPTIONS_KEY" : "AUTO_INDUCTION_OFF", + "BLOCK_OPTIONS_KEY" : "BLOCK_CONTRACT_INTERNAL", + "CLASS_AXIOM_OPTIONS_KEY" : "CLASS_AXIOM_DELAYED", + "DEP_OPTIONS_KEY" : "DEP_ON", + "LOOP_OPTIONS_KEY" : "LOOP_INVARIANT", + "METHOD_OPTIONS_KEY" : "METHOD_CONTRACT", + "MPS_OPTIONS_KEY" : "MPS_MERGE", + "NON_LIN_ARITH_OPTIONS_KEY" : "NON_LIN_ARITH_DEF_OPS", + "OSS_OPTIONS_KEY" : "OSS_ON", + "QUANTIFIERS_OPTIONS_KEY" : "QUANTIFIERS_NON_SPLITTING_WITH_PROGS", + "QUERYAXIOM_OPTIONS_KEY" : "QUERYAXIOM_OFF", + "QUERY_NEW_OPTIONS_KEY" : "QUERY_OFF", + "SPLITTING_OPTIONS_KEY" : "SPLITTING_DELAYED", + "STOPMODE_OPTIONS_KEY" : "STOPMODE_DEFAULT", + "SYMBOLIC_EXECUTION_ALIAS_CHECK_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_ALIAS_CHECK_NEVER", + "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OFF", + "USER_TACLETS_OPTIONS_KEY1" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY2" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY3" : "USER_TACLETS_OFF", + "VBT_PHASE" : "VBT_SYM_EX" + } + } +} + + +\javaSource "src"; + +\proofObligation +// +{ + "class" : "de.uka.ilkd.key.proof.init.FunctionalOperationContractPO", + "contract" : "ArrayList[List::get(int)].JML normal_behavior operation contract.0", + "name" : "ArrayList[List::get(int)].JML normal_behavior operation contract.0" +} diff --git a/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_inv_acc.key b/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_inv_acc.key new file mode 100644 index 00000000000..34ca6821847 --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_inv_acc.key @@ -0,0 +1,88 @@ +\profile "Java Profile"; + +\settings { + "Choice" : { + "JavaCard" : "JavaCard:off", + "Strings" : "Strings:on", + "assertions" : "assertions:safe", + "bigint" : "bigint:on", + "finalFields" : "finalFields:immutable", + "floatRules" : "floatRules:strictfpOnly", + "initialisation" : "initialisation:disableStaticInitialisation", + "intRules" : "intRules:arithmeticSemanticsIgnoringOF", + "integerSimplificationRules" : "integerSimplificationRules:full", + "javaLoopTreatment" : "javaLoopTreatment:efficient", + "mergeGenerateIsWeakeningGoal" : "mergeGenerateIsWeakeningGoal:off", + "methodExpansion" : "methodExpansion:modularOnly", + "modelFields" : "modelFields:treatAsAxiom", + "moreSeqRules" : "moreSeqRules:on", + "permissions" : "permissions:off", + "programRules" : "programRules:Java", + "reach" : "reach:on", + "runtimeExceptions" : "runtimeExceptions:ban", + "sequences" : "sequences:on", + "soundDefaultContracts" : "soundDefaultContracts:on", + "wdChecks" : "wdChecks:off", + "wdOperator" : "wdOperator:L" + }, + "Labels" : { + "UseOriginLabels" : true + }, + "NewSMT" : { + "Axiomatisations" : "false", + "Presburger" : "false", + "sqrtSMTTranslation" : "SMT" + }, + "SMTSettings" : { + "SelectedTaclets" : [ + + ], + "UseBuiltUniqueness" : false, + "explicitTypeHierarchy" : false, + "instantiateHierarchyAssumptions" : true, + "integersMaximum" : 2147483645, + "integersMinimum" : -2147483645, + "invariantForall" : false, + "maxGenericSorts" : 2, + "useConstantsForBigOrSmallIntegers" : true, + "useUninterpretedMultiplication" : true + }, + "Strategy" : { + "ActiveStrategy" : "JavaCardDLStrategy", + "MaximumNumberOfAutomaticApplications" : 10000, + "Timeout" : -1, + "options" : { + "AUTO_INDUCTION_OPTIONS_KEY" : "AUTO_INDUCTION_OFF", + "BLOCK_OPTIONS_KEY" : "BLOCK_CONTRACT_INTERNAL", + "CLASS_AXIOM_OPTIONS_KEY" : "CLASS_AXIOM_DELAYED", + "DEP_OPTIONS_KEY" : "DEP_ON", + "LOOP_OPTIONS_KEY" : "LOOP_INVARIANT", + "METHOD_OPTIONS_KEY" : "METHOD_CONTRACT", + "MPS_OPTIONS_KEY" : "MPS_MERGE", + "NON_LIN_ARITH_OPTIONS_KEY" : "NON_LIN_ARITH_DEF_OPS", + "OSS_OPTIONS_KEY" : "OSS_ON", + "QUANTIFIERS_OPTIONS_KEY" : "QUANTIFIERS_NON_SPLITTING_WITH_PROGS", + "QUERYAXIOM_OPTIONS_KEY" : "QUERYAXIOM_OFF", + "QUERY_NEW_OPTIONS_KEY" : "QUERY_OFF", + "SPLITTING_OPTIONS_KEY" : "SPLITTING_DELAYED", + "STOPMODE_OPTIONS_KEY" : "STOPMODE_DEFAULT", + "SYMBOLIC_EXECUTION_ALIAS_CHECK_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_ALIAS_CHECK_NEVER", + "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OFF", + "USER_TACLETS_OPTIONS_KEY1" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY2" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY3" : "USER_TACLETS_OFF", + "VBT_PHASE" : "VBT_SYM_EX" + } + } +} + + +\javaSource "src"; + +\proofObligation +// +{ + "class" : "de.uka.ilkd.key.proof.init.DependencyContractPO", + "contract" : "ArrayList[java.lang.Object::$inv()].JML accessible clause.0", + "name" : "ArrayList[java.lang.Object::$inv()].JML accessible clause.0" +} diff --git a/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_size.key b/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_size.key new file mode 100644 index 00000000000..5ce56481710 --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_size.key @@ -0,0 +1,88 @@ +\profile "Java Profile"; + +\settings { + "Choice" : { + "JavaCard" : "JavaCard:off", + "Strings" : "Strings:on", + "assertions" : "assertions:safe", + "bigint" : "bigint:on", + "finalFields" : "finalFields:immutable", + "floatRules" : "floatRules:strictfpOnly", + "initialisation" : "initialisation:disableStaticInitialisation", + "intRules" : "intRules:arithmeticSemanticsIgnoringOF", + "integerSimplificationRules" : "integerSimplificationRules:full", + "javaLoopTreatment" : "javaLoopTreatment:efficient", + "mergeGenerateIsWeakeningGoal" : "mergeGenerateIsWeakeningGoal:off", + "methodExpansion" : "methodExpansion:modularOnly", + "modelFields" : "modelFields:treatAsAxiom", + "moreSeqRules" : "moreSeqRules:on", + "permissions" : "permissions:off", + "programRules" : "programRules:Java", + "reach" : "reach:on", + "runtimeExceptions" : "runtimeExceptions:ban", + "sequences" : "sequences:on", + "soundDefaultContracts" : "soundDefaultContracts:on", + "wdChecks" : "wdChecks:off", + "wdOperator" : "wdOperator:L" + }, + "Labels" : { + "UseOriginLabels" : true + }, + "NewSMT" : { + "Axiomatisations" : "false", + "Presburger" : "false", + "sqrtSMTTranslation" : "SMT" + }, + "SMTSettings" : { + "SelectedTaclets" : [ + + ], + "UseBuiltUniqueness" : false, + "explicitTypeHierarchy" : false, + "instantiateHierarchyAssumptions" : true, + "integersMaximum" : 2147483645, + "integersMinimum" : -2147483645, + "invariantForall" : false, + "maxGenericSorts" : 2, + "useConstantsForBigOrSmallIntegers" : true, + "useUninterpretedMultiplication" : true + }, + "Strategy" : { + "ActiveStrategy" : "Modular JavaDL Strategy", + "MaximumNumberOfAutomaticApplications" : 10000, + "Timeout" : -1, + "options" : { + "AUTO_INDUCTION_OPTIONS_KEY" : "AUTO_INDUCTION_OFF", + "BLOCK_OPTIONS_KEY" : "BLOCK_CONTRACT_INTERNAL", + "CLASS_AXIOM_OPTIONS_KEY" : "CLASS_AXIOM_DELAYED", + "DEP_OPTIONS_KEY" : "DEP_ON", + "LOOP_OPTIONS_KEY" : "LOOP_INVARIANT", + "METHOD_OPTIONS_KEY" : "METHOD_CONTRACT", + "MPS_OPTIONS_KEY" : "MPS_MERGE", + "NON_LIN_ARITH_OPTIONS_KEY" : "NON_LIN_ARITH_DEF_OPS", + "OSS_OPTIONS_KEY" : "OSS_ON", + "QUANTIFIERS_OPTIONS_KEY" : "QUANTIFIERS_NON_SPLITTING_WITH_PROGS", + "QUERYAXIOM_OPTIONS_KEY" : "QUERYAXIOM_OFF", + "QUERY_NEW_OPTIONS_KEY" : "QUERY_OFF", + "SPLITTING_OPTIONS_KEY" : "SPLITTING_DELAYED", + "STOPMODE_OPTIONS_KEY" : "STOPMODE_DEFAULT", + "SYMBOLIC_EXECUTION_ALIAS_CHECK_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_ALIAS_CHECK_NEVER", + "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OFF", + "USER_TACLETS_OPTIONS_KEY1" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY2" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY3" : "USER_TACLETS_OFF", + "VBT_PHASE" : "VBT_SYM_EX" + } + } +} + + +\javaSource "src"; + +\proofObligation +// +{ + "class" : "de.uka.ilkd.key.proof.init.FunctionalOperationContractPO", + "contract" : "ArrayList[List::size()].JML normal_behavior operation contract.0", + "name" : "ArrayList[List::size()].JML normal_behavior operation contract.0" +} diff --git a/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_size_acc.key b/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_size_acc.key new file mode 100644 index 00000000000..27360fbfa4e --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_size_acc.key @@ -0,0 +1,86 @@ +\profile "Java Profile"; + +\settings { + "Choice" : { + "JavaCard" : "JavaCard:off", + "Strings" : "Strings:on", + "assertions" : "assertions:safe", + "bigint" : "bigint:on", + "finalFields" : "finalFields:immutable", + "floatRules" : "floatRules:strictfpOnly", + "initialisation" : "initialisation:disableStaticInitialisation", + "intRules" : "intRules:arithmeticSemanticsIgnoringOF", + "integerSimplificationRules" : "integerSimplificationRules:full", + "javaLoopTreatment" : "javaLoopTreatment:efficient", + "mergeGenerateIsWeakeningGoal" : "mergeGenerateIsWeakeningGoal:off", + "methodExpansion" : "methodExpansion:modularOnly", + "modelFields" : "modelFields:treatAsAxiom", + "moreSeqRules" : "moreSeqRules:on", + "permissions" : "permissions:off", + "programRules" : "programRules:Java", + "reach" : "reach:on", + "runtimeExceptions" : "runtimeExceptions:ban", + "sequences" : "sequences:on", + "soundDefaultContracts" : "soundDefaultContracts:on", + "wdChecks" : "wdChecks:off", + "wdOperator" : "wdOperator:L" + }, + "Labels" : { + "UseOriginLabels" : true + }, + "NewSMT" : { + "Axiomatisations" : "false", + "Presburger" : "false", + "sqrtSMTTranslation" : "SMT" + }, + "SMTSettings" : { + "SelectedTaclets" : [ + + ], + "UseBuiltUniqueness" : false, + "explicitTypeHierarchy" : false, + "instantiateHierarchyAssumptions" : true, + "integersMaximum" : 2147483645, + "integersMinimum" : -2147483645, + "invariantForall" : false, + "maxGenericSorts" : 2, + "useConstantsForBigOrSmallIntegers" : true, + "useUninterpretedMultiplication" : true + }, + "Strategy" : { + "ActiveStrategy" : "Modular JavaDL Strategy", + "MaximumNumberOfAutomaticApplications" : 10000, + "Timeout" : -1, + "options" : { + "AUTO_INDUCTION_OPTIONS_KEY" : "AUTO_INDUCTION_OFF", + "BLOCK_OPTIONS_KEY" : "BLOCK_CONTRACT_INTERNAL", + "CLASS_AXIOM_OPTIONS_KEY" : "CLASS_AXIOM_DELAYED", + "DEP_OPTIONS_KEY" : "DEP_ON", + "LOOP_OPTIONS_KEY" : "LOOP_INVARIANT", + "METHOD_OPTIONS_KEY" : "METHOD_CONTRACT", + "MPS_OPTIONS_KEY" : "MPS_MERGE", + "NON_LIN_ARITH_OPTIONS_KEY" : "NON_LIN_ARITH_DEF_OPS", + "OSS_OPTIONS_KEY" : "OSS_ON", + "QUANTIFIERS_OPTIONS_KEY" : "QUANTIFIERS_NON_SPLITTING_WITH_PROGS", + "QUERYAXIOM_OPTIONS_KEY" : "QUERYAXIOM_OFF", + "QUERY_NEW_OPTIONS_KEY" : "QUERY_RESTRICTED", + "SPLITTING_OPTIONS_KEY" : "SPLITTING_DELAYED", + "STOPMODE_OPTIONS_KEY" : "STOPMODE_DEFAULT", + "USER_TACLETS_OPTIONS_KEY1" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY2" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY3" : "USER_TACLETS_OFF", + "VBT_PHASE" : "VBT_SYM_EX" + } + } +} + + +\javaSource "src"; + +\proofObligation +// +{ + "class" : "de.uka.ilkd.key.proof.init.DependencyContractPO", + "contract" : "ArrayList[List::size()].JML accessible clause.0", + "name" : "ArrayList[List::size()].JML accessible clause.0" +} diff --git a/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_sort.key b/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_sort.key new file mode 100644 index 00000000000..97b03bbc155 --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_sort.key @@ -0,0 +1,88 @@ +\profile "Java Profile"; + +\settings { + "Choice" : { + "JavaCard" : "JavaCard:off", + "Strings" : "Strings:on", + "assertions" : "assertions:safe", + "bigint" : "bigint:on", + "finalFields" : "finalFields:immutable", + "floatRules" : "floatRules:strictfpOnly", + "initialisation" : "initialisation:disableStaticInitialisation", + "intRules" : "intRules:arithmeticSemanticsIgnoringOF", + "integerSimplificationRules" : "integerSimplificationRules:full", + "javaLoopTreatment" : "javaLoopTreatment:efficient", + "mergeGenerateIsWeakeningGoal" : "mergeGenerateIsWeakeningGoal:off", + "methodExpansion" : "methodExpansion:modularOnly", + "modelFields" : "modelFields:treatAsAxiom", + "moreSeqRules" : "moreSeqRules:on", + "permissions" : "permissions:off", + "programRules" : "programRules:Java", + "reach" : "reach:on", + "runtimeExceptions" : "runtimeExceptions:ban", + "sequences" : "sequences:on", + "soundDefaultContracts" : "soundDefaultContracts:on", + "wdChecks" : "wdChecks:off", + "wdOperator" : "wdOperator:L" + }, + "Labels" : { + "UseOriginLabels" : true + }, + "NewSMT" : { + "Axiomatisations" : "false", + "Presburger" : "false", + "sqrtSMTTranslation" : "SMT" + }, + "SMTSettings" : { + "SelectedTaclets" : [ + + ], + "UseBuiltUniqueness" : false, + "explicitTypeHierarchy" : false, + "instantiateHierarchyAssumptions" : true, + "integersMaximum" : 2147483645, + "integersMinimum" : -2147483645, + "invariantForall" : false, + "maxGenericSorts" : 2, + "useConstantsForBigOrSmallIntegers" : true, + "useUninterpretedMultiplication" : true + }, + "Strategy" : { + "ActiveStrategy" : "JavaCardDLStrategy", + "MaximumNumberOfAutomaticApplications" : 10000, + "Timeout" : -1, + "options" : { + "AUTO_INDUCTION_OPTIONS_KEY" : "AUTO_INDUCTION_OFF", + "BLOCK_OPTIONS_KEY" : "BLOCK_CONTRACT_INTERNAL", + "CLASS_AXIOM_OPTIONS_KEY" : "CLASS_AXIOM_DELAYED", + "DEP_OPTIONS_KEY" : "DEP_ON", + "LOOP_OPTIONS_KEY" : "LOOP_INVARIANT", + "METHOD_OPTIONS_KEY" : "METHOD_CONTRACT", + "MPS_OPTIONS_KEY" : "MPS_MERGE", + "NON_LIN_ARITH_OPTIONS_KEY" : "NON_LIN_ARITH_DEF_OPS", + "OSS_OPTIONS_KEY" : "OSS_ON", + "QUANTIFIERS_OPTIONS_KEY" : "QUANTIFIERS_NON_SPLITTING_WITH_PROGS", + "QUERYAXIOM_OPTIONS_KEY" : "QUERYAXIOM_OFF", + "QUERY_NEW_OPTIONS_KEY" : "QUERY_OFF", + "SPLITTING_OPTIONS_KEY" : "SPLITTING_DELAYED", + "STOPMODE_OPTIONS_KEY" : "STOPMODE_DEFAULT", + "SYMBOLIC_EXECUTION_ALIAS_CHECK_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_ALIAS_CHECK_NEVER", + "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OFF", + "USER_TACLETS_OPTIONS_KEY1" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY2" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY3" : "USER_TACLETS_OFF", + "VBT_PHASE" : "VBT_SYM_EX" + } + } +} + + +\javaSource "src"; + +\proofObligation +// +{ + "class" : "de.uka.ilkd.key.proof.init.FunctionalOperationContractPO", + "contract" : "ArrayList[ArrayList::sort()].JML normal_behavior operation contract.0", + "name" : "ArrayList[ArrayList::sort()].JML normal_behavior operation contract.0" +} diff --git a/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_swap.key b/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_swap.key new file mode 100644 index 00000000000..5ad8acd48ce --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/ArrayList/ArrayList_swap.key @@ -0,0 +1,98 @@ +\profile "Java Profile"; + +\settings { + "Choice" : { + "JavaCard" : "JavaCard:off", + "Strings" : "Strings:on", + "assertions" : "assertions:safe", + "bigint" : "bigint:on", + "finalFields" : "finalFields:immutable", + "floatRules" : "floatRules:strictfpOnly", + "initialisation" : "initialisation:disableStaticInitialisation", + "intRules" : "intRules:arithmeticSemanticsIgnoringOF", + "integerSimplificationRules" : "integerSimplificationRules:full", + "javaLoopTreatment" : "javaLoopTreatment:efficient", + "mergeGenerateIsWeakeningGoal" : "mergeGenerateIsWeakeningGoal:off", + "methodExpansion" : "methodExpansion:modularOnly", + "modelFields" : "modelFields:treatAsAxiom", + "moreSeqRules" : "moreSeqRules:on", + "permissions" : "permissions:off", + "programRules" : "programRules:Java", + "reach" : "reach:on", + "runtimeExceptions" : "runtimeExceptions:ban", + "sequences" : "sequences:on", + "soundDefaultContracts" : "soundDefaultContracts:on", + "wdChecks" : "wdChecks:off", + "wdOperator" : "wdOperator:L" + }, + "Labels" : { + "UseOriginLabels" : true + }, + "NewSMT" : { + "Axiomatisations" : "false", + "Presburger" : "false", + "sqrtSMTTranslation" : "SMT" + }, + "SMTSettings" : { + "SelectedTaclets" : [ + + ], + "UseBuiltUniqueness" : false, + "explicitTypeHierarchy" : false, + "instantiateHierarchyAssumptions" : true, + "integersMaximum" : 2147483645, + "integersMinimum" : -2147483645, + "invariantForall" : false, + "maxGenericSorts" : 2, + "useConstantsForBigOrSmallIntegers" : true, + "useUninterpretedMultiplication" : true + }, + "Strategy" : { + "ActiveStrategy" : "JavaCardDLStrategy", + "MaximumNumberOfAutomaticApplications" : 10000, + "Timeout" : -1, + "options" : { + "AUTO_INDUCTION_OPTIONS_KEY" : "AUTO_INDUCTION_OFF", + "BLOCK_OPTIONS_KEY" : "BLOCK_CONTRACT_INTERNAL", + "CLASS_AXIOM_OPTIONS_KEY" : "CLASS_AXIOM_DELAYED", + "DEP_OPTIONS_KEY" : "DEP_ON", + "LOOP_OPTIONS_KEY" : "LOOP_INVARIANT", + "METHOD_OPTIONS_KEY" : "METHOD_CONTRACT", + "MPS_OPTIONS_KEY" : "MPS_MERGE", + "NON_LIN_ARITH_OPTIONS_KEY" : "NON_LIN_ARITH_DEF_OPS", + "OSS_OPTIONS_KEY" : "OSS_ON", + "QUANTIFIERS_OPTIONS_KEY" : "QUANTIFIERS_NON_SPLITTING_WITH_PROGS", + "QUERYAXIOM_OPTIONS_KEY" : "QUERYAXIOM_OFF", + "QUERY_NEW_OPTIONS_KEY" : "QUERY_OFF", + "SPLITTING_OPTIONS_KEY" : "SPLITTING_DELAYED", + "STOPMODE_OPTIONS_KEY" : "STOPMODE_DEFAULT", + "SYMBOLIC_EXECUTION_ALIAS_CHECK_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_ALIAS_CHECK_NEVER", + "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OFF", + "USER_TACLETS_OPTIONS_KEY1" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY2" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY3" : "USER_TACLETS_OFF", + "VBT_PHASE" : "VBT_SYM_EX" + } + } +} + + +\javaSource "src"; + +\proofObligation +// +{ + "class" : "de.uka.ilkd.key.proof.init.FunctionalOperationContractPO", + "contract" : "ArrayList[ArrayList::swap(int,int)].JML normal_behavior operation contract.0", + "name" : "ArrayList[ArrayList::swap(int,int)].JML normal_behavior operation contract.0" +} + +\proof { +(keyLog "0" (keyUser "daniel" ) (keyVersion "ba42c20cd404dc00d6aaa5695542be46eee5b0b6")) + +(autoModeTime "0") + +(branch "dummy ID" + (opengoal "==> ( ( (((((wellFormed(heap)<> & (!( self<> = null)<>)<>)<> & ( select<[boolean]>(heap, self, java.lang.Object::#$created) = TRUE)<>)<> & (exactInstance<[ArrayList]>(self) = TRUE)<>)<> & (( inInt(a<>)<> & inInt(b<>)<>)<>))<> & measuredByEmpty<>)<> & (( (leq(Z(0(#)), a) & lt(a, select<[int]>(heap, self, ArrayList::#size)))<> & (( (leq(Z(0(#)), b) & lt(b, select<[int]>(heap, self, ArrayList::#size)))<> & java.lang.Object::$inv(heap, self)<>)<>))< (implicit)\",\"[requires @ file ArrayList.java @ line 116, requires @ file ArrayList.java @ line 117]\")>>))< (implicit)\",\"[requires (implicit), requires @ file ArrayList.java @ line 116, requires @ file ArrayList.java @ line 117]\")>> -> ({heapAtPre:=heap || _a:=a || _b:=b} (\\<{ exc = null; try { self.swap(_a, _b)@ArrayList; } catch (java.lang.Throwable e) { exc = e; } }\\> (( ((( select<[int]>(heap, select<[int[]]>(heap, self, ArrayList::#array), arr(a)) = select<[int]>(heapAtPre, select<[int[]]>(heapAtPre, self, ArrayList::#array), arr(b)))<> & (( ( select<[int]>(heap, select<[int[]]>(heap, self, ArrayList::#array), arr(b)) = select<[int]>(heapAtPre, select<[int[]]>(heapAtPre, self, ArrayList::#array), arr(a)))<> & (( seqPerm(select<[Seq]>(heapAtPre, self, List::#seq), select<[Seq]>(heap, self, List::#seq))<> & java.lang.Object::$inv(heap, self)<>)<>))< (implicit)\",\"[ensures @ file ArrayList.java @ line 119, ensures @ file ArrayList.java @ line 120]\")>>))< (implicit)\",\"[ensures @ file ArrayList.java @ line 118, ensures @ file ArrayList.java @ line 119, ensures @ file ArrayList.java @ line 120]\")>> & ( exc<> = null)<>)< (implicit)\",\"[ensures @ file ArrayList.java @ line 118, ensures @ file ArrayList.java @ line 119, ensures @ file ArrayList.java @ line 120, ensures (implicit)]\")>> & (\\forall Field f; (\\forall java.lang.Object o; (( (elementOf(o, f, union(union(singleton(select<[int[]]>(heapAtPre, self, ArrayList::#array), arr(a)), singleton(select<[int[]]>(heapAtPre, self, ArrayList::#array), arr(b))), singleton(self, List::#seq))<>)<> | ((!(o = null)<>)<> & (!( select<[boolean]>(heapAtPre, o, java.lang.Object::#$created) = TRUE)<>)<>)<>)<> | ( select<[any]>(heap, o, f) = select<[any]>(heapAtPre, o, f))<>)<>))<>)<>)< (implicit)\",\"[ensures @ file ArrayList.java @ line 118, ensures @ file ArrayList.java @ line 119, ensures @ file ArrayList.java @ line 120, ensures (implicit), assignable (implicit), assignable @ file ArrayList.java @ line 121]\")>>))< (implicit)\",\"[ensures @ file ArrayList.java @ line 118, ensures @ file ArrayList.java @ line 119, ensures @ file ArrayList.java @ line 120, ensures (implicit), assignable (implicit), assignable @ file ArrayList.java @ line 121]\")>>)< (implicit)\",\"[ensures @ file ArrayList.java @ line 118, ensures @ file ArrayList.java @ line 119, ensures @ file ArrayList.java @ line 120, ensures (implicit), assignable (implicit), assignable @ file ArrayList.java @ line 121]\")>>)< (implicit)\",\"[requires (implicit), requires @ file ArrayList.java @ line 116, requires @ file ArrayList.java @ line 117, ensures @ file ArrayList.java @ line 118, ensures @ file ArrayList.java @ line 119, ensures @ file ArrayList.java @ line 120, ensures (implicit), assignable (implicit), assignable @ file ArrayList.java @ line 121]\")>>") +) +} diff --git a/key.ui/examples/heap/FM2024Tutorial/ArrayList/LinkedList_LinkedList.key b/key.ui/examples/heap/FM2024Tutorial/ArrayList/LinkedList_LinkedList.key new file mode 100644 index 00000000000..4c25a911437 --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/ArrayList/LinkedList_LinkedList.key @@ -0,0 +1,98 @@ +\profile "Java Profile"; + +\settings { + "Choice" : { + "JavaCard" : "JavaCard:off", + "Strings" : "Strings:on", + "assertions" : "assertions:safe", + "bigint" : "bigint:on", + "finalFields" : "finalFields:immutable", + "floatRules" : "floatRules:strictfpOnly", + "initialisation" : "initialisation:disableStaticInitialisation", + "intRules" : "intRules:arithmeticSemanticsIgnoringOF", + "integerSimplificationRules" : "integerSimplificationRules:full", + "javaLoopTreatment" : "javaLoopTreatment:efficient", + "mergeGenerateIsWeakeningGoal" : "mergeGenerateIsWeakeningGoal:off", + "methodExpansion" : "methodExpansion:modularOnly", + "modelFields" : "modelFields:treatAsAxiom", + "moreSeqRules" : "moreSeqRules:on", + "permissions" : "permissions:off", + "programRules" : "programRules:Java", + "reach" : "reach:on", + "runtimeExceptions" : "runtimeExceptions:ban", + "sequences" : "sequences:on", + "soundDefaultContracts" : "soundDefaultContracts:on", + "wdChecks" : "wdChecks:off", + "wdOperator" : "wdOperator:L" + }, + "Labels" : { + "UseOriginLabels" : true + }, + "NewSMT" : { + "Axiomatisations" : "false", + "Presburger" : "false", + "sqrtSMTTranslation" : "SMT" + }, + "SMTSettings" : { + "SelectedTaclets" : [ + + ], + "UseBuiltUniqueness" : false, + "explicitTypeHierarchy" : false, + "instantiateHierarchyAssumptions" : true, + "integersMaximum" : 2147483645, + "integersMinimum" : -2147483645, + "invariantForall" : false, + "maxGenericSorts" : 2, + "useConstantsForBigOrSmallIntegers" : true, + "useUninterpretedMultiplication" : true + }, + "Strategy" : { + "ActiveStrategy" : "JavaCardDLStrategy", + "MaximumNumberOfAutomaticApplications" : 10000, + "Timeout" : -1, + "options" : { + "AUTO_INDUCTION_OPTIONS_KEY" : "AUTO_INDUCTION_OFF", + "BLOCK_OPTIONS_KEY" : "BLOCK_CONTRACT_INTERNAL", + "CLASS_AXIOM_OPTIONS_KEY" : "CLASS_AXIOM_DELAYED", + "DEP_OPTIONS_KEY" : "DEP_ON", + "LOOP_OPTIONS_KEY" : "LOOP_INVARIANT", + "METHOD_OPTIONS_KEY" : "METHOD_CONTRACT", + "MPS_OPTIONS_KEY" : "MPS_MERGE", + "NON_LIN_ARITH_OPTIONS_KEY" : "NON_LIN_ARITH_DEF_OPS", + "OSS_OPTIONS_KEY" : "OSS_ON", + "QUANTIFIERS_OPTIONS_KEY" : "QUANTIFIERS_NON_SPLITTING_WITH_PROGS", + "QUERYAXIOM_OPTIONS_KEY" : "QUERYAXIOM_OFF", + "QUERY_NEW_OPTIONS_KEY" : "QUERY_OFF", + "SPLITTING_OPTIONS_KEY" : "SPLITTING_DELAYED", + "STOPMODE_OPTIONS_KEY" : "STOPMODE_DEFAULT", + "SYMBOLIC_EXECUTION_ALIAS_CHECK_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_ALIAS_CHECK_NEVER", + "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OFF", + "USER_TACLETS_OPTIONS_KEY1" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY2" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY3" : "USER_TACLETS_OFF", + "VBT_PHASE" : "VBT_SYM_EX" + } + } +} + + +\javaSource "src"; + +\proofObligation +// +{ + "class" : "de.uka.ilkd.key.proof.init.FunctionalOperationContractPO", + "contract" : "LinkedList[LinkedList::LinkedList()].JML normal_behavior operation contract.0", + "name" : "LinkedList[LinkedList::LinkedList()].JML normal_behavior operation contract.0" +} + +\proof { +(keyLog "0" (keyUser "daniel" ) (keyVersion "ba42c20cd404dc00d6aaa5695542be46eee5b0b6")) + +(autoModeTime "0") + +(branch "dummy ID" + (opengoal "==> ( ( wellFormed(heap)<> & measuredByEmpty<>)<> -> ({heapAtPre:=heap} (\\<{ exc = null; { LinkedList self = LinkedList.$createObject(); } try { { self.$init()@LinkedList; } self.$initialized = true; } catch (java.lang.Throwable e) { exc = e; } }\\> (( ((( select<[Seq]>(heap, self, List::#seq) = seqEmpty)<> & (( subset(select<[LocSet]>(heap, self, List::#footprint), freshLocs(heapAtPre))<> & java.lang.Object::$inv(heap, self)<>)<>))< (implicit)\",\"[ensures @ file LinkedList.java @ line 26, ensures @ file LinkedList.java @ line 27]\")>> & ( exc<> = null)<>)< (implicit)\",\"[ensures @ file LinkedList.java @ line 26, ensures @ file LinkedList.java @ line 27, ensures (implicit)]\")>> & (\\forall Field f; (\\forall java.lang.Object o; (( ( (!(o = null)<>)<> & (!( select<[boolean]>(heapAtPre, o, java.lang.Object::#$created) = TRUE)<>)<>)<> | ( select<[any]>(heap, o, f) = select<[any]>(heapAtPre, o, f))<>)<>))<>)<>)< (implicit)\",\"[ensures @ file LinkedList.java @ line 26, ensures @ file LinkedList.java @ line 27, ensures (implicit), assignable (implicit)]\")>>))< (implicit)\",\"[ensures @ file LinkedList.java @ line 26, ensures @ file LinkedList.java @ line 27, ensures (implicit), assignable (implicit)]\")>>)< (implicit)\",\"[ensures @ file LinkedList.java @ line 26, ensures @ file LinkedList.java @ line 27, ensures (implicit), assignable (implicit)]\")>>)< (implicit)\",\"[requires (implicit), ensures @ file LinkedList.java @ line 26, ensures @ file LinkedList.java @ line 27, ensures (implicit), assignable (implicit)]\")>>") +) +} diff --git a/key.ui/examples/heap/FM2024Tutorial/ArrayList/LinkedList_add.key b/key.ui/examples/heap/FM2024Tutorial/ArrayList/LinkedList_add.key new file mode 100644 index 00000000000..e4d208163e6 --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/ArrayList/LinkedList_add.key @@ -0,0 +1,88 @@ +\profile "Java Profile"; + +\settings { + "Choice" : { + "JavaCard" : "JavaCard:off", + "Strings" : "Strings:on", + "assertions" : "assertions:safe", + "bigint" : "bigint:on", + "finalFields" : "finalFields:immutable", + "floatRules" : "floatRules:strictfpOnly", + "initialisation" : "initialisation:disableStaticInitialisation", + "intRules" : "intRules:arithmeticSemanticsIgnoringOF", + "integerSimplificationRules" : "integerSimplificationRules:full", + "javaLoopTreatment" : "javaLoopTreatment:efficient", + "mergeGenerateIsWeakeningGoal" : "mergeGenerateIsWeakeningGoal:off", + "methodExpansion" : "methodExpansion:modularOnly", + "modelFields" : "modelFields:treatAsAxiom", + "moreSeqRules" : "moreSeqRules:on", + "permissions" : "permissions:off", + "programRules" : "programRules:Java", + "reach" : "reach:on", + "runtimeExceptions" : "runtimeExceptions:ban", + "sequences" : "sequences:on", + "soundDefaultContracts" : "soundDefaultContracts:on", + "wdChecks" : "wdChecks:off", + "wdOperator" : "wdOperator:L" + }, + "Labels" : { + "UseOriginLabels" : true + }, + "NewSMT" : { + "Axiomatisations" : "false", + "Presburger" : "false", + "sqrtSMTTranslation" : "SMT" + }, + "SMTSettings" : { + "SelectedTaclets" : [ + + ], + "UseBuiltUniqueness" : false, + "explicitTypeHierarchy" : false, + "instantiateHierarchyAssumptions" : true, + "integersMaximum" : 2147483645, + "integersMinimum" : -2147483645, + "invariantForall" : false, + "maxGenericSorts" : 2, + "useConstantsForBigOrSmallIntegers" : true, + "useUninterpretedMultiplication" : true + }, + "Strategy" : { + "ActiveStrategy" : "JavaCardDLStrategy", + "MaximumNumberOfAutomaticApplications" : 10000, + "Timeout" : -1, + "options" : { + "AUTO_INDUCTION_OPTIONS_KEY" : "AUTO_INDUCTION_OFF", + "BLOCK_OPTIONS_KEY" : "BLOCK_CONTRACT_INTERNAL", + "CLASS_AXIOM_OPTIONS_KEY" : "CLASS_AXIOM_DELAYED", + "DEP_OPTIONS_KEY" : "DEP_ON", + "LOOP_OPTIONS_KEY" : "LOOP_INVARIANT", + "METHOD_OPTIONS_KEY" : "METHOD_CONTRACT", + "MPS_OPTIONS_KEY" : "MPS_MERGE", + "NON_LIN_ARITH_OPTIONS_KEY" : "NON_LIN_ARITH_DEF_OPS", + "OSS_OPTIONS_KEY" : "OSS_ON", + "QUANTIFIERS_OPTIONS_KEY" : "QUANTIFIERS_NON_SPLITTING_WITH_PROGS", + "QUERYAXIOM_OPTIONS_KEY" : "QUERYAXIOM_OFF", + "QUERY_NEW_OPTIONS_KEY" : "QUERY_OFF", + "SPLITTING_OPTIONS_KEY" : "SPLITTING_DELAYED", + "STOPMODE_OPTIONS_KEY" : "STOPMODE_DEFAULT", + "SYMBOLIC_EXECUTION_ALIAS_CHECK_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_ALIAS_CHECK_NEVER", + "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OFF", + "USER_TACLETS_OPTIONS_KEY1" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY2" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY3" : "USER_TACLETS_OFF", + "VBT_PHASE" : "VBT_SYM_EX" + } + } +} + + +\javaSource "src"; + +\proofObligation +// +{ + "class" : "de.uka.ilkd.key.proof.init.FunctionalOperationContractPO", + "contract" : "LinkedList[List::add(int)].JML normal_behavior operation contract.0", + "name" : "LinkedList[List::add(int)].JML normal_behavior operation contract.0" +} \ No newline at end of file diff --git a/key.ui/examples/heap/FM2024Tutorial/ArrayList/LinkedList_find.key b/key.ui/examples/heap/FM2024Tutorial/ArrayList/LinkedList_find.key new file mode 100644 index 00000000000..25e6b8f0aa0 --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/ArrayList/LinkedList_find.key @@ -0,0 +1,88 @@ +\profile "Java Profile"; + +\settings { + "Choice" : { + "JavaCard" : "JavaCard:off", + "Strings" : "Strings:on", + "assertions" : "assertions:safe", + "bigint" : "bigint:on", + "finalFields" : "finalFields:immutable", + "floatRules" : "floatRules:strictfpOnly", + "initialisation" : "initialisation:disableStaticInitialisation", + "intRules" : "intRules:arithmeticSemanticsIgnoringOF", + "integerSimplificationRules" : "integerSimplificationRules:full", + "javaLoopTreatment" : "javaLoopTreatment:efficient", + "mergeGenerateIsWeakeningGoal" : "mergeGenerateIsWeakeningGoal:off", + "methodExpansion" : "methodExpansion:modularOnly", + "modelFields" : "modelFields:treatAsAxiom", + "moreSeqRules" : "moreSeqRules:on", + "permissions" : "permissions:off", + "programRules" : "programRules:Java", + "reach" : "reach:on", + "runtimeExceptions" : "runtimeExceptions:ban", + "sequences" : "sequences:on", + "soundDefaultContracts" : "soundDefaultContracts:on", + "wdChecks" : "wdChecks:off", + "wdOperator" : "wdOperator:L" + }, + "Labels" : { + "UseOriginLabels" : true + }, + "NewSMT" : { + "Axiomatisations" : "false", + "Presburger" : "false", + "sqrtSMTTranslation" : "SMT" + }, + "SMTSettings" : { + "SelectedTaclets" : [ + + ], + "UseBuiltUniqueness" : false, + "explicitTypeHierarchy" : false, + "instantiateHierarchyAssumptions" : true, + "integersMaximum" : 2147483645, + "integersMinimum" : -2147483645, + "invariantForall" : false, + "maxGenericSorts" : 2, + "useConstantsForBigOrSmallIntegers" : true, + "useUninterpretedMultiplication" : true + }, + "Strategy" : { + "ActiveStrategy" : "JavaCardDLStrategy", + "MaximumNumberOfAutomaticApplications" : 10000, + "Timeout" : -1, + "options" : { + "AUTO_INDUCTION_OPTIONS_KEY" : "AUTO_INDUCTION_OFF", + "BLOCK_OPTIONS_KEY" : "BLOCK_CONTRACT_INTERNAL", + "CLASS_AXIOM_OPTIONS_KEY" : "CLASS_AXIOM_DELAYED", + "DEP_OPTIONS_KEY" : "DEP_ON", + "LOOP_OPTIONS_KEY" : "LOOP_INVARIANT", + "METHOD_OPTIONS_KEY" : "METHOD_CONTRACT", + "MPS_OPTIONS_KEY" : "MPS_MERGE", + "NON_LIN_ARITH_OPTIONS_KEY" : "NON_LIN_ARITH_DEF_OPS", + "OSS_OPTIONS_KEY" : "OSS_ON", + "QUANTIFIERS_OPTIONS_KEY" : "QUANTIFIERS_NON_SPLITTING_WITH_PROGS", + "QUERYAXIOM_OPTIONS_KEY" : "QUERYAXIOM_OFF", + "QUERY_NEW_OPTIONS_KEY" : "QUERY_OFF", + "SPLITTING_OPTIONS_KEY" : "SPLITTING_DELAYED", + "STOPMODE_OPTIONS_KEY" : "STOPMODE_DEFAULT", + "SYMBOLIC_EXECUTION_ALIAS_CHECK_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_ALIAS_CHECK_NEVER", + "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OFF", + "USER_TACLETS_OPTIONS_KEY1" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY2" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY3" : "USER_TACLETS_OFF", + "VBT_PHASE" : "VBT_SYM_EX" + } + } +} + + +\javaSource "src"; + +\proofObligation +// +{ + "class" : "de.uka.ilkd.key.proof.init.FunctionalOperationContractPO", + "contract" : "LinkedList[List::find(int)].JML normal_behavior operation contract.0", + "name" : "LinkedList[List::find(int)].JML normal_behavior operation contract.0" +} diff --git a/key.ui/examples/heap/FM2024Tutorial/ArrayList/LinkedList_get.key b/key.ui/examples/heap/FM2024Tutorial/ArrayList/LinkedList_get.key new file mode 100644 index 00000000000..9f4b635c9e7 --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/ArrayList/LinkedList_get.key @@ -0,0 +1,88 @@ +\profile "Java Profile"; + +\settings { + "Choice" : { + "JavaCard" : "JavaCard:off", + "Strings" : "Strings:on", + "assertions" : "assertions:safe", + "bigint" : "bigint:on", + "finalFields" : "finalFields:immutable", + "floatRules" : "floatRules:strictfpOnly", + "initialisation" : "initialisation:disableStaticInitialisation", + "intRules" : "intRules:arithmeticSemanticsIgnoringOF", + "integerSimplificationRules" : "integerSimplificationRules:full", + "javaLoopTreatment" : "javaLoopTreatment:efficient", + "mergeGenerateIsWeakeningGoal" : "mergeGenerateIsWeakeningGoal:off", + "methodExpansion" : "methodExpansion:modularOnly", + "modelFields" : "modelFields:treatAsAxiom", + "moreSeqRules" : "moreSeqRules:on", + "permissions" : "permissions:off", + "programRules" : "programRules:Java", + "reach" : "reach:on", + "runtimeExceptions" : "runtimeExceptions:ban", + "sequences" : "sequences:on", + "soundDefaultContracts" : "soundDefaultContracts:on", + "wdChecks" : "wdChecks:off", + "wdOperator" : "wdOperator:L" + }, + "Labels" : { + "UseOriginLabels" : true + }, + "NewSMT" : { + "Axiomatisations" : "false", + "Presburger" : "false", + "sqrtSMTTranslation" : "SMT" + }, + "SMTSettings" : { + "SelectedTaclets" : [ + + ], + "UseBuiltUniqueness" : false, + "explicitTypeHierarchy" : false, + "instantiateHierarchyAssumptions" : true, + "integersMaximum" : 2147483645, + "integersMinimum" : -2147483645, + "invariantForall" : false, + "maxGenericSorts" : 2, + "useConstantsForBigOrSmallIntegers" : true, + "useUninterpretedMultiplication" : true + }, + "Strategy" : { + "ActiveStrategy" : "JavaCardDLStrategy", + "MaximumNumberOfAutomaticApplications" : 10000, + "Timeout" : -1, + "options" : { + "AUTO_INDUCTION_OPTIONS_KEY" : "AUTO_INDUCTION_OFF", + "BLOCK_OPTIONS_KEY" : "BLOCK_CONTRACT_INTERNAL", + "CLASS_AXIOM_OPTIONS_KEY" : "CLASS_AXIOM_DELAYED", + "DEP_OPTIONS_KEY" : "DEP_ON", + "LOOP_OPTIONS_KEY" : "LOOP_INVARIANT", + "METHOD_OPTIONS_KEY" : "METHOD_CONTRACT", + "MPS_OPTIONS_KEY" : "MPS_MERGE", + "NON_LIN_ARITH_OPTIONS_KEY" : "NON_LIN_ARITH_DEF_OPS", + "OSS_OPTIONS_KEY" : "OSS_ON", + "QUANTIFIERS_OPTIONS_KEY" : "QUANTIFIERS_NON_SPLITTING_WITH_PROGS", + "QUERYAXIOM_OPTIONS_KEY" : "QUERYAXIOM_OFF", + "QUERY_NEW_OPTIONS_KEY" : "QUERY_OFF", + "SPLITTING_OPTIONS_KEY" : "SPLITTING_DELAYED", + "STOPMODE_OPTIONS_KEY" : "STOPMODE_DEFAULT", + "SYMBOLIC_EXECUTION_ALIAS_CHECK_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_ALIAS_CHECK_NEVER", + "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OFF", + "USER_TACLETS_OPTIONS_KEY1" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY2" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY3" : "USER_TACLETS_OFF", + "VBT_PHASE" : "VBT_SYM_EX" + } + } +} + + +\javaSource "src"; + +\proofObligation +// +{ + "class" : "de.uka.ilkd.key.proof.init.FunctionalOperationContractPO", + "contract" : "LinkedList[List::get(int)].JML normal_behavior operation contract.0", + "name" : "LinkedList[List::get(int)].JML normal_behavior operation contract.0" +} diff --git a/key.ui/examples/heap/FM2024Tutorial/ArrayList/LinkedList_get_acc.proof b/key.ui/examples/heap/FM2024Tutorial/ArrayList/LinkedList_get_acc.proof new file mode 100644 index 00000000000..e6c7e16e112 --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/ArrayList/LinkedList_get_acc.proof @@ -0,0 +1,638 @@ +\profile "Java Profile"; + +\settings { + "Choice" : { + "JavaCard" : "JavaCard:off", + "Strings" : "Strings:on", + "assertions" : "assertions:safe", + "bigint" : "bigint:on", + "finalFields" : "finalFields:immutable", + "floatRules" : "floatRules:strictfpOnly", + "initialisation" : "initialisation:disableStaticInitialisation", + "intRules" : "intRules:arithmeticSemanticsIgnoringOF", + "integerSimplificationRules" : "integerSimplificationRules:full", + "javaLoopTreatment" : "javaLoopTreatment:efficient", + "mergeGenerateIsWeakeningGoal" : "mergeGenerateIsWeakeningGoal:off", + "methodExpansion" : "methodExpansion:modularOnly", + "modelFields" : "modelFields:treatAsAxiom", + "moreSeqRules" : "moreSeqRules:on", + "permissions" : "permissions:off", + "programRules" : "programRules:Java", + "reach" : "reach:on", + "runtimeExceptions" : "runtimeExceptions:ban", + "sequences" : "sequences:on", + "soundDefaultContracts" : "soundDefaultContracts:on", + "wdChecks" : "wdChecks:off", + "wdOperator" : "wdOperator:L" + }, + "Labels" : { + "UseOriginLabels" : true + }, + "NewSMT" : { + "Axiomatisations" : "false", + "Presburger" : "false", + "sqrtSMTTranslation" : "SMT" + }, + "SMTSettings" : { + "SelectedTaclets" : [ + + ], + "UseBuiltUniqueness" : false, + "explicitTypeHierarchy" : false, + "instantiateHierarchyAssumptions" : true, + "integersMaximum" : 2147483645, + "integersMinimum" : -2147483645, + "invariantForall" : false, + "maxGenericSorts" : 2, + "useConstantsForBigOrSmallIntegers" : true, + "useUninterpretedMultiplication" : true + }, + "Strategy" : { + "ActiveStrategy" : "Modular JavaDL Strategy", + "MaximumNumberOfAutomaticApplications" : 10000, + "Timeout" : -1, + "options" : { + "AUTO_INDUCTION_OPTIONS_KEY" : "AUTO_INDUCTION_OFF", + "BLOCK_OPTIONS_KEY" : "BLOCK_CONTRACT_INTERNAL", + "CLASS_AXIOM_OPTIONS_KEY" : "CLASS_AXIOM_DELAYED", + "DEP_OPTIONS_KEY" : "DEP_ON", + "LOOP_OPTIONS_KEY" : "LOOP_INVARIANT", + "METHOD_OPTIONS_KEY" : "METHOD_CONTRACT", + "MPS_OPTIONS_KEY" : "MPS_MERGE", + "NON_LIN_ARITH_OPTIONS_KEY" : "NON_LIN_ARITH_DEF_OPS", + "OSS_OPTIONS_KEY" : "OSS_ON", + "QUANTIFIERS_OPTIONS_KEY" : "QUANTIFIERS_NON_SPLITTING_WITH_PROGS", + "QUERYAXIOM_OPTIONS_KEY" : "QUERYAXIOM_OFF", + "QUERY_NEW_OPTIONS_KEY" : "QUERY_OFF", + "SPLITTING_OPTIONS_KEY" : "SPLITTING_DELAYED", + "STOPMODE_OPTIONS_KEY" : "STOPMODE_DEFAULT", + "SYMBOLIC_EXECUTION_ALIAS_CHECK_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_ALIAS_CHECK_NEVER", + "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OFF", + "USER_TACLETS_OPTIONS_KEY1" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY2" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY3" : "USER_TACLETS_OFF", + "VBT_PHASE" : "VBT_SYM_EX" + } + } +} + + +\javaSource "src"; + +\proofObligation +// +{ + "class" : "de.uka.ilkd.key.proof.init.DependencyContractPO", + "contract" : "LinkedList[List::get(int)].JML accessible clause.0", + "name" : "LinkedList[List::get(int)].JML accessible clause.0" +} + +\proof { +(keyLog "0" (keyUser "mattias" ) (keyVersion "4911758ba07017f4af60dc0314ac665c14a542d0")) +(keyLog "1" (keyUser "daniel" ) (keyVersion "e807486016cbcda7465f390848938e1ef6ea0ede")) + +(autoModeTime "20449") + +(branch "dummy ID" +(rule "impRight" (formula "1") (newnames "self,index_0,anon_heap")) + (builtin "Evaluate Query" (formula "2") (term "0") (newnames "index_1,callee,queryResult,res_get")) + (builtin "One Step Simplification" (formula "3")) + (builtin "Evaluate Query" (formula "3") (term "1") (newnames "index_2,callee,queryResult,res_get_0")) +(rule "notLeft" (formula "2") (userinteraction)) +(rule "notLeft" (formula "1") (userinteraction)) +(rule "variableDeclaration" (formula "3") (term "1") (newnames "queryResult") (userinteraction)) + (builtin "Use Operation Contract" (formula "3") (newnames "heapBefore_get,result_get,exc,heapAfter_get,anon_heap_get") (contract "LinkedList[List::get(int)].JML normal_behavior operation contract.0") (modality "diamond")) +(branch "Post (get)" + (rule "variableDeclaration" (formula "4") (term "1") (newnames "queryResult_1") (userinteraction)) + (builtin "Use Operation Contract" (formula "4") (newnames "heapBefore_get_0,result_get_0,exc_0,heapAfter_get_0,anon_heap_get_0") (contract "LinkedList[List::get(int)].JML normal_behavior operation contract.0") (modality "diamond")) + (branch "Post (get)" + (rule "assignment" (formula "6") (term "1,1") (userinteraction)) + (rule "methodCallEmpty" (formula "6") (term "1,1,1") (userinteraction)) + (rule "assignment" (formula "7") (term "1,1") (userinteraction)) + (builtin "One Step Simplification" (formula "7")) + (rule "methodCallEmpty" (formula "7") (term "1") (userinteraction)) + (builtin "One Step Simplification" (formula "7")) + (rule "emptyModality" (formula "7") (term "1") (userinteraction)) + (builtin "One Step Simplification" (formula "7")) + (builtin "One Step Simplification" (formula "5")) + (builtin "One Step Simplification" (formula "3")) + (builtin "One Step Simplification" (formula "1")) + (builtin "One Step Simplification" (formula "6")) + (rule "replaceKnownQuery_0" (formula "8") (term "0")) + (rule "replaceKnownQuery_1" (formula "8") (term "1")) + (rule "notRight" (formula "7")) + (rule "andLeft" (formula "6")) + (rule "andLeft" (formula "4")) + (rule "andLeft" (formula "2")) + (rule "andLeft" (formula "9")) + (rule "andLeft" (formula "6")) + (rule "andLeft" (formula "3")) + (rule "andLeft" (formula "2")) + (rule "andLeft" (formula "13")) + (rule "andLeft" (formula "9")) + (rule "andLeft" (formula "4")) + (rule "andLeft" (formula "2")) + (rule "andLeft" (formula "15")) + (rule "andLeft" (formula "11")) + (rule "andLeft" (formula "2")) + (rule "andLeft" (formula "2")) + (rule "andLeft" (formula "2")) + (rule "notLeft" (formula "4")) + (rule "eqSymm" (formula "21") (term "0,0,1")) + (rule "eqSymm" (formula "22")) + (rule "eqSymm" (formula "18")) + (rule "eqSymm" (formula "13")) + (rule "castedGetAny" (formula "18") (term "0")) + (rule "castedGetAny" (formula "13") (term "0")) + (rule "inEqSimp_ltToLeq" (formula "8")) + (rule "polySimp_mulComm0" (formula "8") (term "1,0,0")) + (rule "polySimp_addComm1" (formula "8") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "7")) + (rule "applyEq" (formula "13") (term "1") (ifseqformula "1")) + (rule "inEqSimp_sepNegMonomial0" (formula "8")) + (rule "polySimp_mulLiterals" (formula "8") (term "0")) + (rule "polySimp_elimOne" (formula "8") (term "0")) + (rule "pullOutSelect" (formula "18") (term "0,0") (inst "selectSK=List_seq_0:Seq")) + (rule "simplifySelectOfAnonEQ" (formula "18") (ifseqformula "16")) + (builtin "One Step Simplification" (formula "18") (ifInst "" (formula "21"))) + (rule "ifthenelse_negated" (formula "18") (term "0")) + (rule "pullOutSelect" (formula "13") (term "0,0") (inst "selectSK=List_seq_1:Seq")) + (rule "simplifySelectOfAnonEQ" (formula "13") (ifseqformula "11")) + (builtin "One Step Simplification" (formula "13") (ifInst "" (formula "22")) (ifInst "" (formula "4"))) + (rule "applyEqReverse" (formula "14") (term "0,0") (ifseqformula "13")) + (rule "hideAuxiliaryEq" (formula "13")) + (rule "selectCreatedOfAnonAsFormula" (formula "18") (term "0,0")) + (rule "replace_known_left" (formula "18") (term "0,0,0") (ifseqformula "4")) + (builtin "One Step Simplification" (formula "18")) + (rule "simplifySelectOfAnon" (formula "18")) + (builtin "One Step Simplification" (formula "18") (ifInst "" (formula "21")) (ifInst "" (formula "4"))) + (rule "elementOfSetMinus" (formula "18") (term "0,0")) + (builtin "One Step Simplification" (formula "18")) + (rule "ifthenelse_negated" (formula "18") (term "0")) + (rule "emptyModality" (formula "22") (term "1")) + (builtin "One Step Simplification" (formula "22")) + (rule "notRight" (formula "22")) + (rule "eqSymm" (formula "1")) + (rule "applyEq" (formula "20") (term "1") (ifseqformula "1")) + (rule "Class_invariant_axiom_for_LinkedList" (formula "10") (inst "i=i") (inst "i_0=i_0") (inst "j=j") (ifseqformula "22")) + (builtin "One Step Simplification" (formula "10")) + (rule "andLeft" (formula "10")) + (rule "andLeft" (formula "10")) + (rule "andLeft" (formula "12")) + (rule "andLeft" (formula "10")) + (rule "andLeft" (formula "10")) + (rule "andLeft" (formula "10")) + (rule "andLeft" (formula "10")) + (rule "eqSymm" (formula "15")) + (rule "eqSymm" (formula "17")) + (rule "eqSymm" (formula "16")) + (rule "eqSymm" (formula "14")) + (rule "eqSymm" (formula "13") (term "0,1,0,1,0,1,0")) + (rule "eqSymm" (formula "13") (term "1,0,0,1,0")) + (rule "eqSymm" (formula "13") (term "1,1,0")) + (rule "eqSymm" (formula "13") (term "1,1,0,1,0,1,0")) + (rule "eqSymm" (formula "12")) + (rule "polySimp_elimSub" (formula "15") (term "1,0,2,0")) + (rule "mul_literals" (formula "15") (term "1,1,0,2,0")) + (rule "polySimp_elimSub" (formula "13") (term "1,0,0,1,1,0")) + (rule "mul_literals" (formula "13") (term "1,1,0,0,1,1,0")) + (rule "polySimp_addComm0" (formula "13") (term "1,0,2,0,1,1,0")) + (rule "polySimp_addComm0" (formula "15") (term "1,0,2,0")) + (rule "polySimp_addComm0" (formula "13") (term "1,0,0,1,1,0")) + (rule "castedGetAny" (formula "13") (term "0,0,0,0,0,1,0")) + (rule "subsetSingletonLeft" (formula "10")) + (rule "replace_known_left" (formula "26") (term "0,0") (ifseqformula "10")) + (builtin "One Step Simplification" (formula "26")) + (rule "applyEqReverse" (formula "27") (term "0,0") (ifseqformula "26")) + (rule "hideAuxiliaryEq" (formula "26")) + (rule "subsetSingletonLeft" (formula "11")) + (rule "castedGetAny" (formula "14") (term "2,0")) + (rule "castedGetAny" (formula "13") (term "0,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "13") (term "1,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "13") (term "1,1,1,0,0,1,0")) + (rule "castedGetAny" (formula "13") (term "0,1,0,0,1,0")) + (rule "eqSymm" (formula "13") (term "1,0,0,1,0")) + (rule "castedGetAny" (formula "13") (term "1,1,1,1,0")) + (rule "castedGetAny" (formula "12") (term "0,1,0,1,0")) + (rule "castedGetAny" (formula "13") (term "2,0,1,1,0")) + (rule "castedGetAny" (formula "15") (term "2,0")) + (rule "inEqSimp_ltToLeq" (formula "13") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "13") (term "1,0,0,1,0,0")) + (rule "inEqSimp_ltToLeq" (formula "13") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "13") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "12") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "12") (term "1,0,0,1,0,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "13") (term "0,0,0,1,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "13") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "12") (term "0,0,0,1,0")) + (rule "applyEq" (formula "26") (term "0") (ifseqformula "21")) + (rule "eqSymm" (formula "26")) + (rule "close" (formula "29") (ifseqformula "26")) + ) + (branch "Exceptional Post (get)" + (builtin "One Step Simplification" (formula "5")) + (builtin "One Step Simplification" (formula "3")) + (builtin "One Step Simplification" (formula "1")) + (builtin "One Step Simplification" (formula "7")) + (builtin "One Step Simplification" (formula "6")) + (rule "replaceKnownQuery_0" (formula "8") (term "0")) + (rule "replaceKnownQuery_1" (formula "8") (term "1")) + (rule "andLeft" (formula "5")) + (rule "andLeft" (formula "3")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "8")) + (rule "andLeft" (formula "5")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "3")) + (rule "andLeft" (formula "11")) + (rule "andLeft" (formula "13")) + (rule "andLeft" (formula "8")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "4")) + (rule "notLeft" (formula "13")) + (rule "close" (formula "16") (ifseqformula "15")) + ) + (branch "Pre (get)" + (builtin "One Step Simplification" (formula "4")) + (rule "andRight" (formula "4") (userinteraction)) + (branch "Case 1" + (rule "andRight" (formula "4") (userinteraction)) + (branch "Case 1" + (builtin "One Step Simplification" (formula "3")) + (builtin "One Step Simplification" (formula "1")) + (builtin "One Step Simplification" (formula "5")) + (rule "replaceKnownQuery_0" (formula "6") (term "0")) + (rule "replaceKnownQuery_1" (formula "6") (term "1")) + (rule "andLeft" (formula "3")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "5")) + (rule "andLeft" (formula "2")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "8")) + (rule "andLeft" (formula "3")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "10")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "1")) + (rule "notLeft" (formula "2")) + (rule "andLeft" (formula "1")) + (rule "eqSymm" (formula "16") (term "0,0,1")) + (rule "eqSymm" (formula "17")) + (rule "eqSymm" (formula "12")) + (rule "replace_known_left" (formula "15") (term "0") (ifseqformula "6")) + (builtin "One Step Simplification" (formula "15")) + (rule "castedGetAny" (formula "12") (term "0")) + (rule "inEqSimp_ltToLeq" (formula "7")) + (rule "polySimp_mulComm0" (formula "7") (term "1,0,0")) + (rule "polySimp_addComm1" (formula "7") (term "0")) + (rule "inEqSimp_ltRight" (formula "15")) + (rule "polySimp_mulComm0" (formula "1") (term "0,0")) + (rule "polySimp_addComm0" (formula "1") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "7")) + (rule "assignment" (formula "16") (term "1")) + (builtin "One Step Simplification" (formula "16")) + (rule "inEqSimp_sepNegMonomial0" (formula "8")) + (rule "polySimp_mulLiterals" (formula "8") (term "0")) + (rule "polySimp_elimOne" (formula "8") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "0")) + (rule "polySimp_elimOne" (formula "1") (term "0")) + (rule "pullOutSelect" (formula "13") (term "0,0") (inst "selectSK=List_seq_0:Seq")) + (rule "simplifySelectOfAnonEQ" (formula "13") (ifseqformula "11")) + (builtin "One Step Simplification" (formula "13") (ifInst "" (formula "16")) (ifInst "" (formula "4"))) + (rule "applyEqReverse" (formula "14") (term "0,0") (ifseqformula "13")) + (rule "hideAuxiliaryEq" (formula "13")) + (rule "pullOutSelect" (formula "1") (term "0,0") (inst "selectSK=List_seq_1:Seq")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "16")) (ifInst "" (formula "5"))) + (rule "elementOfSetMinus" (formula "1") (term "0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "ifthenelse_negated" (formula "1") (term "0")) + (rule "methodCallEmpty" (formula "17") (term "1")) + (builtin "One Step Simplification" (formula "17")) + (rule "emptyModality" (formula "17") (term "1")) + (builtin "One Step Simplification" (formula "17")) + (rule "notRight" (formula "17")) + (rule "eqSymm" (formula "1")) + (rule "applyEq" (formula "15") (term "1") (ifseqformula "1")) + (rule "Class_invariant_axiom_for_LinkedList" (formula "16") (inst "i=i") (inst "i_0=i_0") (inst "j=j") (ifseqformula "17")) + (builtin "One Step Simplification" (formula "16")) + (rule "replaceKnownSelect_taclet0020_2" (formula "16") (term "0,1,0,1")) + (rule "replaceKnownAuxiliaryConstant_taclet0020_3" (formula "16") (term "0,1,0,1")) + (rule "replaceKnownSelect_taclet0020_2" (formula "16") (term "0,0,1,1,0,0,1,0,1,0,0,0")) + (rule "replaceKnownAuxiliaryConstant_taclet0020_3" (formula "16") (term "0,0,1,1,0,0,1,0,1,0,0,0")) + (rule "andLeft" (formula "16")) + (rule "andLeft" (formula "17")) + (rule "andLeft" (formula "16")) + (rule "andLeft" (formula "16")) + (rule "andLeft" (formula "16")) + (rule "andLeft" (formula "16")) + (rule "andLeft" (formula "16")) + (rule "eqSymm" (formula "23")) + (rule "eqSymm" (formula "22")) + (rule "eqSymm" (formula "21")) + (rule "eqSymm" (formula "20")) + (rule "eqSymm" (formula "19") (term "0,1,0,1,0,1,0")) + (rule "eqSymm" (formula "19") (term "1,1,0,1,0,1,0")) + (rule "eqSymm" (formula "19") (term "1,1,0")) + (rule "eqSymm" (formula "18")) + (rule "polySimp_elimSub" (formula "21") (term "1,0,2,0")) + (rule "mul_literals" (formula "21") (term "1,1,0,2,0")) + (rule "polySimp_elimSub" (formula "19") (term "1,0,0,1,1,0")) + (rule "mul_literals" (formula "19") (term "1,1,0,0,1,1,0")) + (rule "polySimp_addComm0" (formula "19") (term "1,0,2,0,1,1,0")) + (rule "polySimp_addComm0" (formula "21") (term "1,0,2,0")) + (rule "polySimp_addComm0" (formula "19") (term "1,0,0,1,1,0")) + (rule "castedGetAny" (formula "19") (term "1,1,0,0,1,0")) + (rule "castedGetAny" (formula "19") (term "0,0,0,0,0,1,0")) + (rule "castedGetAny" (formula "19") (term "1,0,1,0,0,1,0")) + (rule "subsetSingletonLeft" (formula "16")) + (rule "subsetSingletonLeft" (formula "17")) + (rule "castedGetAny" (formula "20") (term "2,0")) + (rule "castedGetAny" (formula "19") (term "0,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "19") (term "1,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "19") (term "1,1,1,1,0")) + (rule "castedGetAny" (formula "18") (term "0,1,0,1,0")) + (rule "castedGetAny" (formula "19") (term "2,0,1,1,0")) + (rule "castedGetAny" (formula "21") (term "2,0")) + (rule "inEqSimp_ltToLeq" (formula "19") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "19") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "19") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "19") (term "1,0,0,1,0,0")) + (rule "inEqSimp_ltToLeq" (formula "18") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "18") (term "1,0,0,1,0,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "19") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "19") (term "0,0,0,1,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "18") (term "0,0,0,1,0")) + (rule "applyEq" (formula "10") (term "0") (ifseqformula "22")) + (rule "inEqSimp_sepPosMonomial0" (formula "19") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "19") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "19") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "19") (term "1,1,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "19") (term "0,1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "19") (term "1,1,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "19") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "19") (term "1,1,0,0")) + (rule "polySimp_rightDist" (formula "19") (term "1,1,0,0")) + (rule "polySimp_mulLiterals" (formula "19") (term "1,1,1,0,0")) + (rule "mul_literals" (formula "19") (term "0,1,1,0,0")) + (rule "polySimp_elimOne" (formula "19") (term "1,1,1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "18") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "18") (term "1,1,0,0,1,0")) + (rule "polySimp_rightDist" (formula "18") (term "1,1,0,0,1,0")) + (rule "mul_literals" (formula "18") (term "0,1,1,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "18") (term "1,1,1,0,0,1,0")) + (rule "polySimp_elimOne" (formula "18") (term "1,1,1,0,0,1,0")) + (rule "elementOfUnionEQ" (formula "16") (ifseqformula "18")) + (builtin "One Step Simplification" (formula "16")) + (rule "true_left" (formula "16")) + (rule "elementOfUnionEQ" (formula "16") (ifseqformula "17")) + (builtin "One Step Simplification" (formula "16")) + (rule "true_left" (formula "16")) + (rule "pullOutSelect" (formula "21") (term "0,0") (inst "selectSK=LinkedList_nodeseq_0:Seq")) + (rule "applyEq" (formula "17") (term "0,1,0,1,0,0,1,0") (ifseqformula "21")) + (rule "applyEq" (formula "17") (term "0,0,0,1,0,1,0,1,0") (ifseqformula "21")) + (rule "applyEq" (formula "17") (term "0,1,1,1,1,0") (ifseqformula "21")) + (rule "applyEq" (formula "17") (term "0,0,0,0,0,0,1,0") (ifseqformula "21")) + (rule "applyEq" (formula "17") (term "0,2,0,1,1,0") (ifseqformula "21")) + (rule "applyEq" (formula "17") (term "0,1,0,1,0,1,0,1,0") (ifseqformula "21")) + (rule "applyEq" (formula "19") (term "0,2,0") (ifseqformula "21")) + (rule "applyEq" (formula "16") (term "0,0,1,0,1,0") (ifseqformula "21")) + (rule "applyEq" (formula "18") (term "0,2,0") (ifseqformula "21")) + (rule "simplifySelectOfAnonEQ" (formula "21") (ifseqformula "13")) + (builtin "One Step Simplification" (formula "21") (ifInst "" (formula "23")) (ifInst "" (formula "6"))) + (rule "applyEqReverse" (formula "17") (term "0,1,0,1,0,0,1,0") (ifseqformula "21")) + (rule "applyEqReverse" (formula "22") (term "0,0") (ifseqformula "21")) + (rule "applyEqReverse" (formula "17") (term "0,0,0,1,0,1,0,1,0") (ifseqformula "21")) + (rule "applyEqReverse" (formula "17") (term "0,1,1,1,1,0") (ifseqformula "21")) + (rule "applyEqReverse" (formula "17") (term "0,0,0,0,0,0,1,0") (ifseqformula "21")) + (rule "applyEqReverse" (formula "17") (term "0,2,0,1,1,0") (ifseqformula "21")) + (rule "applyEqReverse" (formula "17") (term "0,1,0,1,0,1,0,1,0") (ifseqformula "21")) + (rule "applyEqReverse" (formula "19") (term "0,2,0") (ifseqformula "21")) + (rule "applyEqReverse" (formula "16") (term "0,0,1,0,1,0") (ifseqformula "21")) + (rule "applyEqReverse" (formula "18") (term "0,2,0") (ifseqformula "21")) + (rule "hideAuxiliaryEq" (formula "21")) + (rule "pullOutSelect" (formula "21") (term "1") (inst "selectSK=LinkedList_size_0:int")) + (rule "applyEq" (formula "16") (term "1,1,1,0,0,1,0") (ifseqformula "21")) + (rule "applyEq" (formula "10") (term "0") (ifseqformula "21")) + (rule "applyEq" (formula "19") (term "0,0,0") (ifseqformula "21")) + (rule "applyEq" (formula "18") (term "0,0,0") (ifseqformula "21")) + (rule "applyEq" (formula "17") (term "1,1,1,0,0,1,0,1,0") (ifseqformula "21")) + (rule "applyEq" (formula "19") (term "1,1,2,0") (ifseqformula "21")) + (rule "applyEq" (formula "17") (term "1,1,1,0,0") (ifseqformula "21")) + (rule "applyEq" (formula "20") (term "1") (ifseqformula "21")) + (rule "applyEq" (formula "17") (term "1,1,0,0,1,1,0") (ifseqformula "21")) + (rule "simplifySelectOfAnonEQ" (formula "21") (ifseqformula "13")) + (builtin "One Step Simplification" (formula "21") (ifInst "" (formula "23")) (ifInst "" (formula "6"))) + (rule "applyEqReverse" (formula "17") (term "1,1,0,0,1,1,0") (ifseqformula "20")) + (rule "applyEqReverse" (formula "20") (term "1") (ifseqformula "21")) + (rule "applyEqReverse" (formula "22") (term "1") (ifseqformula "21")) + (rule "applyEqReverse" (formula "19") (term "1,1,2,0") (ifseqformula "21")) + (rule "applyEqReverse" (formula "17") (term "1,1,1,0,0") (ifseqformula "21")) + (rule "applyEqReverse" (formula "19") (term "0,0,0") (ifseqformula "21")) + (rule "applyEqReverse" (formula "17") (term "1,1,1,0,0,1,0,1,0") (ifseqformula "21")) + (rule "applyEqReverse" (formula "16") (term "1,1,1,0,0,1,0") (ifseqformula "21")) + (rule "applyEqReverse" (formula "18") (term "0,0,0") (ifseqformula "21")) + (rule "applyEqReverse" (formula "10") (term "0") (ifseqformula "21")) + (rule "hideAuxiliaryEq" (formula "21")) + (rule "applyEq" (formula "17") (term "1,1,0,0,1,1,0") (ifseqformula "20")) + (rule "pullOutSelect" (formula "19") (term "1") (inst "selectSK=LinkedList_last_0:Node")) + (rule "simplifySelectOfAnonEQ" (formula "19") (ifseqformula "13")) + (builtin "One Step Simplification" (formula "19") (ifInst "" (formula "23")) (ifInst "" (formula "6"))) + (rule "applyEqReverse" (formula "20") (term "1") (ifseqformula "19")) + (rule "hideAuxiliaryEq" (formula "19")) + (rule "pullOutSelect" (formula "18") (term "1") (inst "selectSK=LinkedList_first_0:Node")) + (rule "simplifySelectOfAnonEQ" (formula "18") (ifseqformula "13")) + (builtin "One Step Simplification" (formula "18") (ifInst "" (formula "23")) (ifInst "" (formula "6"))) + (rule "applyEqReverse" (formula "19") (term "1") (ifseqformula "18")) + (rule "hideAuxiliaryEq" (formula "18")) + (rule "pullOutSelect" (formula "16") (term "1") (inst "selectSK=List_footprint_0:LocSet")) + (rule "simplifySelectOfAnonEQ" (formula "16") (ifseqformula "13")) + (builtin "One Step Simplification" (formula "16") (ifInst "" (formula "23")) (ifInst "" (formula "6"))) + (rule "applyEqReverse" (formula "17") (term "1") (ifseqformula "16")) + (rule "hideAuxiliaryEq" (formula "16")) + (rule "elementOfUnionEQ" (formula "2") (term "0,0") (ifseqformula "16")) + (builtin "One Step Simplification" (formula "2")) + (rule "applyEqReverse" (formula "3") (term "0,0") (ifseqformula "2")) + (rule "hideAuxiliaryEq" (formula "2")) + (rule "applyEq" (formula "2") (term "0") (ifseqformula "19")) + (rule "inEqSimp_contradInEq1" (formula "2") (ifseqformula "9")) + (rule "andLeft" (formula "2")) + (rule "inEqSimp_homoInEq1" (formula "2")) + (rule "polySimp_pullOutFactor1b" (formula "2") (term "0")) + (rule "add_literals" (formula "2") (term "1,1,0")) + (rule "times_zero_1" (formula "2") (term "1,0")) + (rule "add_literals" (formula "2") (term "0")) + (rule "leq_literals" (formula "2")) + (rule "closeFalse" (formula "2")) + ) + (branch "Case 2" + (builtin "One Step Simplification" (formula "5")) + (builtin "One Step Simplification" (formula "1")) + (builtin "One Step Simplification" (formula "3")) + (rule "replaceKnownQuery_0" (formula "6") (term "0")) + (rule "replaceKnownQuery_1" (formula "6") (term "1")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "4")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "3")) + (rule "andLeft" (formula "7")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "4")) + (rule "andLeft" (formula "10")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "11")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "1")) + (rule "notLeft" (formula "3")) + (rule "eqSymm" (formula "16") (term "0,0,1")) + (rule "eqSymm" (formula "17")) + (rule "eqSymm" (formula "12")) + (rule "castedGetAny" (formula "12") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "6")) + (rule "assignment" (formula "16") (term "1")) + (builtin "One Step Simplification" (formula "16")) + (rule "pullOutSelect" (formula "12") (term "0,0") (inst "selectSK=List_seq_0:Seq")) + (rule "simplifySelectOfAnonEQ" (formula "12") (ifseqformula "10")) + (builtin "One Step Simplification" (formula "12") (ifInst "" (formula "15")) (ifInst "" (formula "3"))) + (rule "hideAuxiliaryEq" (formula "12")) + (rule "replaceKnownAuxiliaryConstant_taclet1020_3" (formula "12") (term "0,0")) + (rule "methodCallEmpty" (formula "16") (term "1")) + (builtin "One Step Simplification" (formula "16")) + (rule "emptyModality" (formula "16") (term "1")) + (builtin "Use Dependency Contract" (formula "15") (ifInst "" (formula "8")) (contract "LinkedList[java.lang.Object::$inv()].JML accessible clause.0") (userinteraction)) + (builtin "One Step Simplification" (formula "17")) + (rule "wellFormedAnon" (formula "14") (term "1,1,0,0,0")) + (rule "notRight" (formula "17")) + (rule "eqSymm" (formula "1")) + (rule "replace_known_right" (formula "15") (term "0,0,0,0,0,0") (ifseqformula "16")) + (builtin "One Step Simplification" (formula "15") (ifInst "" (formula "4")) (ifInst "" (formula "2")) (ifInst "" (formula "2")) (ifInst "" (formula "3")) (ifInst "" (formula "9")) (ifInst "" (formula "17")) (ifInst "" (formula "9"))) + (rule "notLeft" (formula "15")) + (rule "disjointDefinition" (formula "15")) + (builtin "One Step Simplification" (formula "15")) + (rule "closeTrue" (formula "15")) + ) + ) + (branch "Case 2" + (builtin "One Step Simplification" (formula "3")) + (builtin "One Step Simplification" (formula "1")) + (builtin "One Step Simplification" (formula "5")) + (rule "replaceKnownQuery_0" (formula "6") (term "0")) + (rule "wellFormedAnon" (formula "4") (term "0")) + (rule "replaceKnownQuery_1" (formula "6") (term "1")) + (rule "andLeft" (formula "3")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "5")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "3")) + (rule "andLeft" (formula "8")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "4")) + (rule "andLeft" (formula "10")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "1")) + (rule "notLeft" (formula "2")) + (rule "andLeft" (formula "1")) + (rule "eqSymm" (formula "16") (term "0,0,1")) + (rule "eqSymm" (formula "17")) + (rule "eqSymm" (formula "12")) + (rule "replace_known_left" (formula "15") (term "1,0") (ifseqformula "2")) + (builtin "One Step Simplification" (formula "15") (ifInst "" (formula "1"))) + (rule "castedGetAny" (formula "12") (term "0")) + (rule "inEqSimp_ltToLeq" (formula "7")) + (rule "polySimp_mulComm0" (formula "7") (term "1,0,0")) + (rule "polySimp_addComm1" (formula "7") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "6")) + (rule "assignment" (formula "16") (term "1")) + (builtin "One Step Simplification" (formula "16")) + (rule "inEqSimp_sepNegMonomial0" (formula "7")) + (rule "polySimp_mulLiterals" (formula "7") (term "0")) + (rule "polySimp_elimOne" (formula "7") (term "0")) + (rule "pullOutSelect" (formula "15") (term "0") (inst "selectSK=java_lang_Object_created__0:boolean")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "15")) (ifInst "" (formula "4"))) + (rule "applyEqReverse" (formula "16") (term "0") (ifseqformula "1")) + (rule "close" (formula "16") (ifseqformula "4")) + ) + ) + (branch "Null reference (callee = null)" + (builtin "One Step Simplification" (formula "3")) + (builtin "One Step Simplification" (formula "1")) + (builtin "One Step Simplification" (formula "5")) + (builtin "One Step Simplification" (formula "4")) + (rule "replaceKnownQuery_0" (formula "6") (term "0")) + (rule "replaceKnownQuery_1" (formula "6") (term "1")) + (rule "andLeft" (formula "3")) + (rule "andLeft" (formula "1")) + (rule "notRight" (formula "6")) + (rule "andLeft" (formula "6")) + (rule "andLeft" (formula "2")) + (rule "andLeft" (formula "4")) + (rule "andLeft" (formula "9")) + (rule "andLeft" (formula "2")) + (rule "andLeft" (formula "5")) + (rule "andLeft" (formula "11")) + (rule "andLeft" (formula "2")) + (rule "andLeft" (formula "2")) + (rule "andLeft" (formula "2")) + (rule "notLeft" (formula "4")) + (rule "close" (formula "15") (ifseqformula "1")) + ) +) +(branch "Exceptional Post (get)" + (builtin "One Step Simplification" (formula "3")) + (builtin "One Step Simplification" (formula "1")) + (builtin "One Step Simplification" (formula "5")) + (rule "replaceKnownQuery_0" (formula "6") (term "0")) + (rule "replaceKnownQuery_1" (formula "6") (term "1")) + (rule "andLeft" (formula "3")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "5")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "3")) + (rule "andLeft" (formula "7")) + (rule "andLeft" (formula "9")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "4")) + (rule "notLeft" (formula "9")) + (rule "close" (formula "12") (ifseqformula "11")) +) +(branch "Pre (get)" + (builtin "One Step Simplification" (formula "1")) + (builtin "One Step Simplification" (formula "3")) + (rule "replaceKnownQuery_0" (formula "4") (term "0")) + (rule "replaceKnownQuery_1" (formula "4") (term "1")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "2")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "3")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "1")) + (rule "notLeft" (formula "2")) + (rule "andLeft" (formula "1")) + (rule "eqSymm" (formula "10") (term "0,0,1")) + (rule "eqSymm" (formula "12")) + (rule "replace_known_left" (formula "11") (term "1,1") (ifseqformula "3")) + (builtin "One Step Simplification" (formula "11") (ifInst "" (formula "6")) (ifInst "" (formula "7")) (ifInst "" (formula "8")) (ifInst "" (formula "1"))) + (rule "closeTrue" (formula "11")) +) +(branch "Null reference (callee = null)" + (builtin "One Step Simplification" (formula "1")) + (builtin "One Step Simplification" (formula "3")) + (rule "replaceKnownQuery_0" (formula "4") (term "0")) + (rule "replaceKnownQuery_1" (formula "4") (term "1")) + (rule "andLeft" (formula "1")) + (rule "notRight" (formula "4")) + (rule "andLeft" (formula "2")) + (rule "andLeft" (formula "4")) + (rule "andLeft" (formula "2")) + (rule "andLeft" (formula "5")) + (rule "andLeft" (formula "2")) + (rule "andLeft" (formula "2")) + (rule "andLeft" (formula "2")) + (rule "notLeft" (formula "4")) + (rule "close" (formula "10") (ifseqformula "1")) +) +) +} diff --git a/key.ui/examples/heap/FM2024Tutorial/ArrayList/LinkedList_inv_acc.proof b/key.ui/examples/heap/FM2024Tutorial/ArrayList/LinkedList_inv_acc.proof new file mode 100644 index 00000000000..e0078de378d --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/ArrayList/LinkedList_inv_acc.proof @@ -0,0 +1,6479 @@ +\profile "Java Profile"; + +\settings { + "Choice" : { + "JavaCard" : "JavaCard:off", + "Strings" : "Strings:on", + "assertions" : "assertions:safe", + "bigint" : "bigint:on", + "finalFields" : "finalFields:immutable", + "floatRules" : "floatRules:strictfpOnly", + "initialisation" : "initialisation:disableStaticInitialisation", + "intRules" : "intRules:arithmeticSemanticsIgnoringOF", + "integerSimplificationRules" : "integerSimplificationRules:full", + "javaLoopTreatment" : "javaLoopTreatment:efficient", + "mergeGenerateIsWeakeningGoal" : "mergeGenerateIsWeakeningGoal:off", + "methodExpansion" : "methodExpansion:modularOnly", + "modelFields" : "modelFields:treatAsAxiom", + "moreSeqRules" : "moreSeqRules:on", + "permissions" : "permissions:off", + "programRules" : "programRules:Java", + "reach" : "reach:on", + "runtimeExceptions" : "runtimeExceptions:ban", + "sequences" : "sequences:on", + "soundDefaultContracts" : "soundDefaultContracts:on", + "wdChecks" : "wdChecks:off", + "wdOperator" : "wdOperator:L" + }, + "Labels" : { + "UseOriginLabels" : true + }, + "NewSMT" : { + "Axiomatisations" : "false", + "Presburger" : "false", + "sqrtSMTTranslation" : "SMT" + }, + "SMTSettings" : { + "SelectedTaclets" : [ + + ], + "UseBuiltUniqueness" : false, + "explicitTypeHierarchy" : false, + "instantiateHierarchyAssumptions" : true, + "integersMaximum" : 2147483645, + "integersMinimum" : -2147483645, + "invariantForall" : false, + "maxGenericSorts" : 2, + "useConstantsForBigOrSmallIntegers" : true, + "useUninterpretedMultiplication" : true + }, + "Strategy" : { + "ActiveStrategy" : "JavaCardDLStrategy", + "MaximumNumberOfAutomaticApplications" : 10000, + "Timeout" : -1, + "options" : { + "AUTO_INDUCTION_OPTIONS_KEY" : "AUTO_INDUCTION_OFF", + "BLOCK_OPTIONS_KEY" : "BLOCK_CONTRACT_INTERNAL", + "CLASS_AXIOM_OPTIONS_KEY" : "CLASS_AXIOM_DELAYED", + "DEP_OPTIONS_KEY" : "DEP_ON", + "LOOP_OPTIONS_KEY" : "LOOP_INVARIANT", + "METHOD_OPTIONS_KEY" : "METHOD_CONTRACT", + "MPS_OPTIONS_KEY" : "MPS_MERGE", + "NON_LIN_ARITH_OPTIONS_KEY" : "NON_LIN_ARITH_DEF_OPS", + "OSS_OPTIONS_KEY" : "OSS_ON", + "QUANTIFIERS_OPTIONS_KEY" : "QUANTIFIERS_NON_SPLITTING_WITH_PROGS", + "QUERYAXIOM_OPTIONS_KEY" : "QUERYAXIOM_OFF", + "QUERY_NEW_OPTIONS_KEY" : "QUERY_OFF", + "SPLITTING_OPTIONS_KEY" : "SPLITTING_DELAYED", + "STOPMODE_OPTIONS_KEY" : "STOPMODE_DEFAULT", + "SYMBOLIC_EXECUTION_ALIAS_CHECK_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_ALIAS_CHECK_NEVER", + "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OFF", + "USER_TACLETS_OPTIONS_KEY1" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY2" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY3" : "USER_TACLETS_OFF", + "VBT_PHASE" : "VBT_SYM_EX" + } + } +} + + +\javaSource "src"; + +\proofObligation +// +{ + "class" : "de.uka.ilkd.key.proof.init.DependencyContractPO", + "contract" : "LinkedList[java.lang.Object::$inv()].JML accessible clause.0", + "name" : "LinkedList[java.lang.Object::$inv()].JML accessible clause.0" +} + +\proof { +(keyLog "0" (keyUser "mattias" ) (keyVersion "4911758ba07017f4af60dc0314ac665c14a542d0")) + +(autoModeTime "117466") + +(branch "dummy ID" +(rule "impRight" (formula "1")) +(rule "andLeft" (formula "1")) +(rule "andLeft" (formula "1")) +(rule "andLeft" (formula "1")) +(rule "andLeft" (formula "1")) +(rule "andLeft" (formula "1")) +(rule "andLeft" (formula "1")) +(rule "notLeft" (formula "3")) +(rule "replace_known_left" (formula "8") (term "0") (ifseqformula "6") (userinteraction)) + (builtin "One Step Simplification" (formula "8") (userinteraction)) +(rule "Class_invariant_axiom_for_LinkedList" (formula "8") (inst "i=i") (inst "j=j") (inst "i_0=i_0") (ifseqformula "7") (userinteraction)) +(rule "andRight" (formula "8")) +(branch "Case 1" + (rule "andRight" (formula "8")) + (branch "Case 1" + (rule "andRight" (formula "8")) + (branch "Case 1" + (rule "andRight" (formula "8")) + (branch "Case 1" + (rule "andRight" (formula "8")) + (branch "Case 1" + (rule "andRight" (formula "8")) + (branch "Case 1" + (rule "subsetSingletonLeft" (formula "8")) + (rule "pullOutSelect" (formula "8") (term "2") (inst "selectSK=List_footprint_0")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "8")) (ifInst "" (formula "4"))) + (rule "elementOfSetMinus" (formula "1") (term "0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "ifthenelse_negated" (formula "1") (term "0")) + (rule "Class_invariant_axiom_for_LinkedList" (formula "7") (inst "i=i") (inst "j=j") (inst "i_0=i_0") (ifseqformula "8")) + (builtin "One Step Simplification" (formula "7")) + (rule "andLeft" (formula "7")) + (rule "andLeft" (formula "8")) + (rule "andLeft" (formula "7")) + (rule "andLeft" (formula "7")) + (rule "andLeft" (formula "7")) + (rule "andLeft" (formula "7")) + (rule "andLeft" (formula "7")) + (rule "eqSymm" (formula "13")) + (rule "eqSymm" (formula "14")) + (rule "eqSymm" (formula "12")) + (rule "eqSymm" (formula "11")) + (rule "eqSymm" (formula "10") (term "0,1,0,1,0,1,0")) + (rule "eqSymm" (formula "10") (term "1,1,0")) + (rule "eqSymm" (formula "10") (term "1,1,0,1,0,1,0")) + (rule "eqSymm" (formula "10") (term "1,0,0,1,0")) + (rule "eqSymm" (formula "9")) + (rule "polySimp_elimSub" (formula "12") (term "1,0,2,0")) + (rule "mul_literals" (formula "12") (term "1,1,0,2,0")) + (rule "polySimp_elimSub" (formula "10") (term "1,0,0,1,1,0")) + (rule "mul_literals" (formula "10") (term "1,1,0,0,1,1,0")) + (rule "polySimp_addComm0" (formula "10") (term "1,0,2,0,1,1,0")) + (rule "polySimp_addComm0" (formula "12") (term "1,0,2,0")) + (rule "polySimp_addComm0" (formula "10") (term "1,0,0,1,1,0")) + (rule "castedGetAny" (formula "10") (term "0,0,0,0,0,1,0")) + (rule "subsetSingletonLeft" (formula "7")) + (rule "subsetSingletonLeft" (formula "8")) + (rule "replace_known_left" (formula "1") (term "0,0") (ifseqformula "8")) + (builtin "One Step Simplification" (formula "1")) + (rule "applyEqReverse" (formula "16") (term "2") (ifseqformula "1")) + (rule "close" (formula "16") (ifseqformula "7")) + ) + (branch "Case 2" + (rule "subsetSingletonLeft" (formula "8")) + (rule "pullOutSelect" (formula "8") (term "2") (inst "selectSK=List_footprint_0")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "8")) (ifInst "" (formula "4"))) + (rule "elementOfSetMinus" (formula "1") (term "0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "ifthenelse_negated" (formula "1") (term "0")) + (rule "Class_invariant_axiom_for_LinkedList" (formula "7") (inst "i=i") (inst "j=j") (inst "i_0=i_0") (ifseqformula "8")) + (builtin "One Step Simplification" (formula "7")) + (rule "andLeft" (formula "7")) + (rule "andLeft" (formula "8")) + (rule "andLeft" (formula "7")) + (rule "andLeft" (formula "7")) + (rule "andLeft" (formula "7")) + (rule "andLeft" (formula "7")) + (rule "andLeft" (formula "7")) + (rule "eqSymm" (formula "13")) + (rule "eqSymm" (formula "14")) + (rule "eqSymm" (formula "12")) + (rule "eqSymm" (formula "11")) + (rule "eqSymm" (formula "10") (term "0,1,0,1,0,1,0")) + (rule "eqSymm" (formula "10") (term "1,1,0")) + (rule "eqSymm" (formula "10") (term "1,1,0,1,0,1,0")) + (rule "eqSymm" (formula "10") (term "1,0,0,1,0")) + (rule "eqSymm" (formula "9")) + (rule "polySimp_elimSub" (formula "12") (term "1,0,2,0")) + (rule "mul_literals" (formula "12") (term "1,1,0,2,0")) + (rule "polySimp_elimSub" (formula "10") (term "1,0,0,1,1,0")) + (rule "mul_literals" (formula "10") (term "1,1,0,0,1,1,0")) + (rule "polySimp_addComm0" (formula "10") (term "1,0,2,0,1,1,0")) + (rule "polySimp_addComm0" (formula "12") (term "1,0,2,0")) + (rule "polySimp_addComm0" (formula "10") (term "1,0,0,1,1,0")) + (rule "castedGetAny" (formula "10") (term "0,0,0,0,0,1,0")) + (rule "subsetSingletonLeft" (formula "7")) + (rule "subsetSingletonLeft" (formula "8")) + (rule "replace_known_left" (formula "1") (term "0,0") (ifseqformula "8")) + (builtin "One Step Simplification" (formula "1")) + (rule "applyEqReverse" (formula "16") (term "2") (ifseqformula "1")) + (rule "close" (formula "16") (ifseqformula "8")) + ) + ) + (branch "Case 2" + (builtin "One Step Simplification" (formula "8")) + (rule "eqSymm" (formula "8")) + (rule "castedGetAny" (formula "8") (term "0,1,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "8") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "8") (term "1,0,0,1,0,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "8") (term "0,0,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "8") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "8") (term "1,1,0,0,1,0")) + (rule "polySimp_rightDist" (formula "8") (term "1,1,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "8") (term "1,1,1,0,0,1,0")) + (rule "mul_literals" (formula "8") (term "0,1,1,0,0,1,0")) + (rule "polySimp_elimOne" (formula "8") (term "1,1,1,0,0,1,0")) + (rule "pullOutSelect" (formula "8") (term "1") (inst "selectSK=List_footprint_0")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "8")) (ifInst "" (formula "4"))) + (rule "elementOfSetMinus" (formula "1") (term "0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "ifthenelse_negated" (formula "1") (term "0")) + (rule "pullOutSelect" (formula "9") (term "0,0,1,0,1,0") (inst "selectSK=LinkedList_nodeseq_0")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "9")) (ifInst "" (formula "5"))) + (rule "elementOfSetMinus" (formula "1") (term "0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "ifthenelse_negated" (formula "1") (term "0")) + (rule "pullOutSelect" (formula "10") (term "1,1,1,0,0,1,0") (inst "selectSK=LinkedList_size_0")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "10")) (ifInst "" (formula "6"))) + (rule "elementOfSetMinus" (formula "1") (term "0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "ifthenelse_negated" (formula "1") (term "0")) + (rule "Class_invariant_axiom_for_LinkedList" (formula "9") (inst "i=i") (inst "j=j") (inst "i_0=i_0") (ifseqformula "10")) + (builtin "One Step Simplification" (formula "9")) + (rule "andLeft" (formula "9")) + (rule "andLeft" (formula "10")) + (rule "andLeft" (formula "9")) + (rule "andLeft" (formula "9")) + (rule "andLeft" (formula "9")) + (rule "andLeft" (formula "9")) + (rule "andLeft" (formula "9")) + (rule "eqSymm" (formula "15")) + (rule "eqSymm" (formula "16")) + (rule "eqSymm" (formula "14")) + (rule "eqSymm" (formula "13")) + (rule "eqSymm" (formula "12") (term "1,1,0,1,0,1,0")) + (rule "eqSymm" (formula "12") (term "0,1,0,1,0,1,0")) + (rule "eqSymm" (formula "12") (term "1,1,0")) + (rule "eqSymm" (formula "12") (term "1,0,0,1,0")) + (rule "eqSymm" (formula "11")) + (rule "polySimp_elimSub" (formula "14") (term "1,0,2,0")) + (rule "mul_literals" (formula "14") (term "1,1,0,2,0")) + (rule "polySimp_elimSub" (formula "12") (term "1,0,0,1,1,0")) + (rule "mul_literals" (formula "12") (term "1,1,0,0,1,1,0")) + (rule "polySimp_addComm0" (formula "12") (term "1,0,2,0,1,1,0")) + (rule "polySimp_addComm0" (formula "14") (term "1,0,2,0")) + (rule "polySimp_addComm0" (formula "12") (term "1,0,0,1,1,0")) + (rule "castedGetAny" (formula "12") (term "0,0,0,0,0,1,0")) + (rule "subsetSingletonLeft" (formula "10")) + (rule "replace_known_left" (formula "3") (term "0,0") (ifseqformula "10")) + (builtin "One Step Simplification" (formula "3")) + (rule "applyEqReverse" (formula "18") (term "1") (ifseqformula "3")) + (rule "hideAuxiliaryEq" (formula "3")) + (rule "subsetSingletonLeft" (formula "8")) + (rule "castedGetAny" (formula "12") (term "2,0")) + (rule "castedGetAny" (formula "11") (term "1,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "11") (term "0,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "11") (term "1,1,1,1,0")) + (rule "castedGetAny" (formula "11") (term "1,1,1,0,0,1,0")) + (rule "castedGetAny" (formula "11") (term "0,1,0,0,1,0")) + (rule "eqSymm" (formula "11") (term "1,0,0,1,0")) + (rule "castedGetAny" (formula "10") (term "0,1,0,1,0")) + (rule "castedGetAny" (formula "11") (term "2,0,1,1,0")) + (rule "castedGetAny" (formula "13") (term "2,0")) + (rule "inEqSimp_ltToLeq" (formula "11") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "11") (term "1,0,0,1,0,0")) + (rule "inEqSimp_ltToLeq" (formula "11") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "11") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "10") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "10") (term "1,0,0,1,0,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "11") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "11") (term "0,0,0,1,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "10") (term "0,0,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "11") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "11") (term "1,1,0,0")) + (rule "polySimp_rightDist" (formula "11") (term "1,1,0,0")) + (rule "mul_literals" (formula "11") (term "0,1,1,0,0")) + (rule "polySimp_mulLiterals" (formula "11") (term "1,1,1,0,0")) + (rule "polySimp_elimOne" (formula "11") (term "1,1,1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "11") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "11") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "11") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "11") (term "1,1,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "11") (term "0,1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "11") (term "1,1,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "10") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "10") (term "1,1,0,0,1,0")) + (rule "polySimp_rightDist" (formula "10") (term "1,1,0,0,1,0")) + (rule "mul_literals" (formula "10") (term "0,1,1,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "10") (term "1,1,1,0,0,1,0")) + (rule "polySimp_elimOne" (formula "10") (term "1,1,1,0,0,1,0")) + (rule "elementOfUnionEQ" (formula "9") (ifseqformula "10")) + (builtin "One Step Simplification" (formula "9")) + (rule "true_left" (formula "9")) + (rule "elementOfUnionEQ" (formula "8") (ifseqformula "9")) + (builtin "One Step Simplification" (formula "8")) + (rule "true_left" (formula "8")) + (rule "elementOfUnionEQ" (formula "1") (term "0,0") (ifseqformula "8")) + (builtin "One Step Simplification" (formula "1")) + (rule "applyEqReverse" (formula "15") (term "1,1,1,0,0,1,0") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "elementOfUnionEQ" (formula "1") (term "0,0") (ifseqformula "7")) + (builtin "One Step Simplification" (formula "1")) + (rule "applyEqReverse" (formula "14") (term "0,0,1,0,1,0") (ifseqformula "1")) + (rule "close" (formula "14") (ifseqformula "7")) + ) + ) + (branch "Case 2" + (rule "allRight" (formula "8") (inst "sk=i_0") (userinteraction)) + (rule "impRight" (formula "8") (userinteraction)) + (rule "andRight" (formula "9") (userinteraction)) + (branch "Case 1" + (rule "andRight" (formula "9")) + (branch "Case 1" + (rule "andRight" (formula "9")) + (branch "Case 1" + (rule "notRight" (formula "9")) + (builtin "One Step Simplification" (formula "2")) + (rule "andLeft" (formula "2")) + (rule "castedGetAny" (formula "1") (term "0")) + (rule "inEqSimp_ltToLeq" (formula "3")) + (rule "polySimp_mulComm0" (formula "3") (term "1,0,0")) + (rule "polySimp_addComm1" (formula "3") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "2")) + (rule "inEqSimp_sepNegMonomial0" (formula "3")) + (rule "polySimp_mulLiterals" (formula "3") (term "0")) + (rule "polySimp_elimOne" (formula "3") (term "0")) + (rule "pullOutSelect" (formula "1") (term "0,0") (inst "selectSK=LinkedList_nodeseq_0")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "11")) (ifInst "" (formula "7"))) + (rule "elementOfSetMinus" (formula "1") (term "0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "ifthenelse_negated" (formula "1") (term "0")) + (rule "pullOutSelect" (formula "4") (term "0") (inst "selectSK=LinkedList_size_0")) + (rule "simplifySelectOfAnon" (formula "4")) + (builtin "One Step Simplification" (formula "4") (ifInst "" (formula "12")) (ifInst "" (formula "8"))) + (rule "inEqSimp_homoInEq1" (formula "5")) + (rule "polySimp_addComm1" (formula "5") (term "0")) + (rule "inEqSimp_sepPosMonomial0" (formula "5")) + (rule "polySimp_mulComm0" (formula "5") (term "1")) + (rule "polySimp_rightDist" (formula "5") (term "1")) + (rule "mul_literals" (formula "5") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "5") (term "1,1")) + (rule "polySimp_elimOne" (formula "5") (term "1,1")) + (rule "elementOfSetMinus" (formula "4") (term "0,0")) + (builtin "One Step Simplification" (formula "4")) + (rule "ifthenelse_negated" (formula "4") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "3") (ifseqformula "5")) + (rule "mul_literals" (formula "3") (term "0,0")) + (rule "add_zero_left" (formula "3") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "3")) + (rule "mul_literals" (formula "3") (term "1")) + (rule "Class_invariant_axiom_for_LinkedList" (formula "12") (inst "i=i") (inst "j=j") (inst "i_0=i_0") (ifseqformula "13")) + (builtin "One Step Simplification" (formula "12")) + (rule "andLeft" (formula "12")) + (rule "andLeft" (formula "13")) + (rule "andLeft" (formula "12")) + (rule "andLeft" (formula "12")) + (rule "andLeft" (formula "12")) + (rule "andLeft" (formula "12")) + (rule "andLeft" (formula "12")) + (rule "eqSymm" (formula "18")) + (rule "eqSymm" (formula "19")) + (rule "eqSymm" (formula "17")) + (rule "eqSymm" (formula "16")) + (rule "eqSymm" (formula "15") (term "1,1,0")) + (rule "eqSymm" (formula "15") (term "0,1,0,1,0,1,0")) + (rule "eqSymm" (formula "15") (term "1,1,0,1,0,1,0")) + (rule "eqSymm" (formula "15") (term "1,0,0,1,0")) + (rule "eqSymm" (formula "14")) + (rule "polySimp_elimSub" (formula "17") (term "1,0,2,0")) + (rule "mul_literals" (formula "17") (term "1,1,0,2,0")) + (rule "polySimp_elimSub" (formula "15") (term "1,0,0,1,1,0")) + (rule "mul_literals" (formula "15") (term "1,1,0,0,1,1,0")) + (rule "polySimp_addComm0" (formula "15") (term "1,0,2,0,1,1,0")) + (rule "polySimp_addComm0" (formula "17") (term "1,0,2,0")) + (rule "polySimp_addComm0" (formula "15") (term "1,0,0,1,1,0")) + (rule "castedGetAny" (formula "15") (term "0,0,0,0,0,1,0")) + (rule "subsetSingletonLeft" (formula "13")) + (rule "subsetSingletonLeft" (formula "12")) + (rule "castedGetAny" (formula "16") (term "2,0")) + (rule "castedGetAny" (formula "15") (term "1,1,1,1,0")) + (rule "castedGetAny" (formula "15") (term "1,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "15") (term "0,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "15") (term "0,1,0,0,1,0")) + (rule "eqSymm" (formula "15") (term "1,0,0,1,0")) + (rule "castedGetAny" (formula "14") (term "0,1,0,1,0")) + (rule "castedGetAny" (formula "15") (term "2,0,1,1,0")) + (rule "castedGetAny" (formula "17") (term "2,0")) + (rule "inEqSimp_ltToLeq" (formula "15") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "15") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,0,1,0,0")) + (rule "castedGetAny" (formula "15") (term "1,0,1,0,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "14") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "14") (term "1,0,0,1,0,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "15") (term "0,0,0,1,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "15") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "14") (term "0,0,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "15") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "15") (term "1,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "15") (term "0,1,1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "15") (term "1,1,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "15") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,1,0,0")) + (rule "polySimp_rightDist" (formula "15") (term "1,1,0,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,1,1,0,0")) + (rule "mul_literals" (formula "15") (term "0,1,1,0,0")) + (rule "polySimp_elimOne" (formula "15") (term "1,1,1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "14") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "14") (term "1,1,0,0,1,0")) + (rule "polySimp_rightDist" (formula "14") (term "1,1,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "14") (term "1,1,1,0,0,1,0")) + (rule "mul_literals" (formula "14") (term "0,1,1,0,0,1,0")) + (rule "polySimp_elimOne" (formula "14") (term "1,1,1,0,0,1,0")) + (rule "elementOfUnionEQ" (formula "12") (ifseqformula "14")) + (builtin "One Step Simplification" (formula "12")) + (rule "true_left" (formula "12")) + (rule "elementOfUnionEQ" (formula "12") (ifseqformula "13")) + (builtin "One Step Simplification" (formula "12")) + (rule "true_left" (formula "12")) + (rule "elementOfUnionEQ" (formula "1") (term "0,0") (ifseqformula "12")) + (builtin "One Step Simplification" (formula "1")) + (rule "applyEqReverse" (formula "2") (term "0,0") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "elementOfUnionEQ" (formula "4") (term "0,0") (ifseqformula "11")) + (builtin "One Step Simplification" (formula "4")) + (rule "applyEqReverse" (formula "2") (term "0") (ifseqformula "4")) + (rule "applyEqReverse" (formula "5") (term "1,1") (ifseqformula "4")) + (rule "hideAuxiliaryEq" (formula "4")) + (rule "inEqSimp_homoInEq0" (formula "4")) + (rule "polySimp_addComm1" (formula "4") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "4")) + (rule "polySimp_mulComm0" (formula "4") (term "1")) + (rule "polySimp_rightDist" (formula "4") (term "1")) + (rule "polySimp_mulLiterals" (formula "4") (term "1,1")) + (rule "mul_literals" (formula "4") (term "0,1")) + (rule "polySimp_elimOne" (formula "4") (term "1,1")) + (rule "inEqSimp_contradEq7" (formula "13") (term "0,0") (ifseqformula "2")) + (rule "mul_literals" (formula "13") (term "1,0,0,0,0")) + (rule "add_zero_right" (formula "13") (term "0,0,0,0")) + (rule "leq_literals" (formula "13") (term "0,0,0")) + (builtin "One Step Simplification" (formula "13")) + (rule "inEqSimp_contradEq7" (formula "12") (term "0,0") (ifseqformula "2")) + (rule "times_zero_1" (formula "12") (term "1,0,0,0,0")) + (rule "add_zero_right" (formula "12") (term "0,0,0,0")) + (rule "leq_literals" (formula "12") (term "0,0,0")) + (builtin "One Step Simplification" (formula "12")) + (rule "nnf_imp2or" (formula "11") (term "0")) + (rule "nnf_notAnd" (formula "11") (term "0,0")) + (rule "inEqSimp_notLeq" (formula "11") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "11") (term "1,0,0,1,0,0")) + (rule "mul_literals" (formula "11") (term "0,1,0,0,1,0,0")) + (rule "polySimp_addAssoc" (formula "11") (term "0,0,1,0,0")) + (rule "add_literals" (formula "11") (term "0,0,0,1,0,0")) + (rule "add_zero_left" (formula "11") (term "0,0,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "11") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "11") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "11") (term "1,1,0,0")) + (rule "inEqSimp_notGeq" (formula "11") (term "0,0,0")) + (rule "times_zero_1" (formula "11") (term "1,0,0,0,0,0")) + (rule "add_literals" (formula "11") (term "0,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "11") (term "0,0,0")) + (rule "mul_literals" (formula "11") (term "1,0,0,0")) + (rule "nnf_imp2or" (formula "11") (term "0,1,0,1,0")) + (rule "nnf_notAnd" (formula "11") (term "0,0,1,0,1,0")) + (rule "inEqSimp_notLeq" (formula "11") (term "1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "11") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "11") (term "0,1,0,0,1,0,0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "11") (term "0,0,1,0,0,1,0,1,0")) + (rule "add_literals" (formula "11") (term "0,0,0,1,0,0,1,0,1,0")) + (rule "add_zero_left" (formula "11") (term "0,0,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "11") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "11") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "11") (term "1,1,0,0,1,0,1,0")) + (rule "inEqSimp_notGeq" (formula "11") (term "0,0,0,1,0,1,0")) + (rule "times_zero_1" (formula "11") (term "1,0,0,0,0,0,1,0,1,0")) + (rule "add_zero_right" (formula "11") (term "0,0,0,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "11") (term "0,0,0,1,0,1,0")) + (rule "mul_literals" (formula "11") (term "1,0,0,0,1,0,1,0")) + (rule "nnf_imp2or" (formula "11") (term "1,0,1,0,1,0")) + (rule "shift_paren_or" (formula "11") (term "0,1,0,1,0")) + (rule "commute_or_2" (formula "11") (term "0,0,1,0,1,0")) + (rule "ifthenelse_to_or_left" (formula "11") (term "1,1,0")) + (rule "eqSymm" (formula "11") (term "1,0,1,1,0")) + (rule "eqSymm" (formula "11") (term "1,1,1,1,0")) + (rule "commute_or" (formula "11") (term "0,1,1,0")) + (rule "commute_or" (formula "11") (term "1,1,1,0")) + (rule "commute_or" (formula "11") (term "0,0,0,1,0,1,0")) + (rule "lenNonNegative" (formula "14") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "14")) + (rule "applyEq" (formula "14") (term "0") (ifseqformula "15")) + (rule "inEqSimp_subsumption1" (formula "14") (ifseqformula "2")) + (rule "leq_literals" (formula "14") (term "0")) + (builtin "One Step Simplification" (formula "14")) + (rule "true_left" (formula "14")) + (rule "lenNonNegative" (formula "15") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "15")) + (rule "applyEq" (formula "15") (term "0") (ifseqformula "16")) + (rule "inEqSimp_subsumption1" (formula "15") (ifseqformula "2")) + (rule "leq_literals" (formula "15") (term "0")) + (builtin "One Step Simplification" (formula "15")) + (rule "true_left" (formula "15")) + (rule "all_pull_out1" (formula "11") (term "0,1,0")) + (rule "all_pull_out0" (formula "11") (term "1,0")) + (rule "shift_paren_and" (formula "11") (term "0,1,0")) + (rule "all_pull_out3" (formula "11") (term "0")) + (rule "cnf_rightDist" (formula "11") (term "0,0")) + (rule "distr_forallAnd" (formula "11") (term "0")) + (builtin "One Step Simplification" (formula "11")) + (rule "distr_forallAnd" (formula "11")) + (rule "andLeft" (formula "11")) + (rule "shift_paren_or" (formula "12") (term "0")) + (rule "commute_or_2" (formula "12") (term "0,0")) + (rule "inEqSimp_or_weaken3" (formula "12") (term "0")) + (rule "polySimp_addAssoc" (formula "12") (term "1,0,1,0")) + (rule "add_literals" (formula "12") (term "0,1,0,1,0")) + (rule "add_zero_left" (formula "12") (term "1,0,1,0")) + (builtin "One Step Simplification" (formula "12")) + (rule "cnf_rightDist" (formula "11") (term "0,0")) + (rule "distr_forallAnd" (formula "11") (term "0")) + (builtin "One Step Simplification" (formula "11")) + (rule "distr_forallAnd" (formula "11")) + (rule "andLeft" (formula "11")) + (rule "commute_or_2" (formula "12") (term "0")) + (builtin "One Step Simplification" (formula "12")) + (rule "inEqSimp_homoInEq0" (formula "12") (term "0,1")) + (rule "polySimp_mulComm0" (formula "12") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "12") (term "1,0,0,1")) + (rule "mul_literals" (formula "12") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "12") (term "0,0,1")) + (rule "add_literals" (formula "12") (term "0,0,0,1")) + (rule "add_zero_left" (formula "12") (term "0,0,1")) + (rule "inEqSimp_homoInEq1" (formula "12") (term "1,1")) + (rule "polySimp_mulComm0" (formula "12") (term "1,0,1,1")) + (rule "polySimp_rightDist" (formula "12") (term "1,0,1,1")) + (rule "mul_literals" (formula "12") (term "0,1,0,1,1")) + (rule "polySimp_addAssoc" (formula "12") (term "0,1,1")) + (rule "polySimp_addComm0" (formula "12") (term "0,0,1,1")) + (rule "polySimp_pullOutFactor1b" (formula "12") (term "0,1,1")) + (rule "add_literals" (formula "12") (term "1,1,0,1,1")) + (rule "times_zero_1" (formula "12") (term "1,0,1,1")) + (rule "add_zero_right" (formula "12") (term "0,1,1")) + (rule "leq_literals" (formula "12") (term "1,1")) + (builtin "One Step Simplification" (formula "12")) + (rule "applyEq" (formula "12") (term "1,0,0") (ifseqformula "15")) + (rule "inEqSimp_invertInEq1" (formula "12") (term "1")) + (rule "times_zero_2" (formula "12") (term "1,1")) + (rule "polySimp_mulLiterals" (formula "12") (term "0,1")) + (rule "polySimp_elimOne" (formula "12") (term "0,1")) + (rule "inEqSimp_contradInEq1" (formula "12") (term "1") (ifseqformula "2")) + (rule "qeq_literals" (formula "12") (term "0,1")) + (builtin "One Step Simplification" (formula "12")) + (rule "cnf_rightDist" (formula "11") (term "0,0")) + (rule "distr_forallAnd" (formula "11") (term "0")) + (builtin "One Step Simplification" (formula "11")) + (rule "distr_forallAnd" (formula "11")) + (rule "andLeft" (formula "11")) + (rule "commute_or_2" (formula "12") (term "0,0")) + (rule "commute_or_2" (formula "12") (term "0,0,0")) + (rule "cnf_rightDist" (formula "11") (term "0")) + (rule "distr_forallAnd" (formula "11")) + (rule "andLeft" (formula "11")) + (rule "commute_or_2" (formula "11") (term "0")) + (rule "commute_or" (formula "12") (term "0")) + (rule "commute_or" (formula "11") (term "0,0")) + (rule "commute_or_2" (formula "13") (term "0,0,0,0")) + (rule "shift_paren_or" (formula "13") (term "0,0,0,0,0")) + (rule "seqGetAlphaCast" (formula "1") (term "0")) + (rule "castedGetAny" (formula "1") (term "0")) + (builtin "One Step Simplification" (formula "1")) + (rule "true_left" (formula "1")) + (rule "seqGetAlphaCast" (formula "17") (term "0")) + (rule "castedGetAny" (formula "17") (term "0")) + (builtin "One Step Simplification" (formula "17")) + (rule "true_left" (formula "17")) + (rule "seqGetAlphaCast" (formula "16") (term "0")) + (rule "castedGetAny" (formula "16") (term "0")) + (builtin "One Step Simplification" (formula "16")) + (rule "true_left" (formula "16")) + (rule "allLeft" (formula "11") (inst "t=i_0")) + (rule "replace_known_left" (formula "11") (term "0,0,0") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "11")) + (rule "inEqSimp_commuteGeq" (formula "11") (term "1")) + (rule "inEqSimp_contradInEq1" (formula "11") (term "0") (ifseqformula "3")) + (rule "qeq_literals" (formula "11") (term "0,0")) + (builtin "One Step Simplification" (formula "11")) + (rule "inEqSimp_contradInEq1" (formula "11") (ifseqformula "4")) + (rule "andLeft" (formula "11")) + (rule "inEqSimp_homoInEq1" (formula "11")) + (rule "polySimp_pullOutFactor1b" (formula "11") (term "0")) + (rule "add_literals" (formula "11") (term "1,1,0")) + (rule "times_zero_1" (formula "11") (term "1,0")) + (rule "add_literals" (formula "11") (term "0")) + (rule "leq_literals" (formula "11")) + (rule "closeFalse" (formula "11")) + ) + (branch "Case 2" + (rule "Class_invariant_axiom_for_LinkedList" (formula "7") (inst "i=i") (inst "j=j") (inst "i_0=i_0") (ifseqformula "8") (userinteraction)) + (rule "andLeft" (formula "7")) + (rule "andLeft" (formula "7")) + (rule "andLeft" (formula "9")) + (rule "andLeft" (formula "7")) + (rule "andLeft" (formula "7")) + (rule "andLeft" (formula "7")) + (rule "andLeft" (formula "7")) + (rule "eqTermCut" (formula "16") (term "0,0,1") (inst "s=select<[Seq]>(heap, self, List::#seq)") (userinteraction)) + (branch "Assume self.seq@heap[anon(allLocs setMinus self.footprint, anon_heap<>)] = self.seq" + (rule "applyEq" (formula "17") (term "0,0,1") (ifseqformula "1") (userinteraction)) + (rule "eqTermCut" (formula "17") (term "0,0,1,0") (inst "s=select<[Seq]>(heap, self, LinkedList::#nodeseq)") (userinteraction)) + (branch "Assume self.nodeseq@heap[anon(allLocs setMinus self.footprint, anon_heap<>)] = self.nodeseq" + (rule "applyEq" (formula "18") (term "0,0,1,0") (ifseqformula "1") (userinteraction)) + (rule "instAll" (formula "18") (term "1,0,1,0") (ifseqformula "12") (userinteraction)) + (rule "eqTermCut" (formula "19") (term "0") (inst "s=select<[int]>(heap, + (Node)(seqGet<[any]>(select<[Seq]>(heap, + self, + LinkedList::#nodeseq), + i_0)), + Node::#data)") (userinteraction)) + (branch "Assume (Node)(self.nodeseq[i_0]).data@heap[anon( allLocs setMinus self.footprint, anon_heap<>)] = (Node)(self.nodeseq[i_0]).data" + (builtin "One Step Simplification" (formula "14")) + (builtin "One Step Simplification" (formula "13")) + (builtin "One Step Simplification" (formula "5")) + (builtin "One Step Simplification" (formula "2")) + (rule "andLeft" (formula "5")) + (rule "eqSymm" (formula "18")) + (rule "eqSymm" (formula "19")) + (rule "eqSymm" (formula "16")) + (rule "eqSymm" (formula "17")) + (rule "eqSymm" (formula "21")) + (rule "eqSymm" (formula "15") (term "1,1,0")) + (rule "eqSymm" (formula "15") (term "0,1,0,1,0,1,0")) + (rule "eqSymm" (formula "15") (term "1,1,0,1,0,1,0")) + (rule "eqSymm" (formula "15") (term "1,0,0,1,0")) + (rule "eqSymm" (formula "14")) + (rule "eqSymm" (formula "2") (term "0,1,1,1")) + (rule "eqSymm" (formula "2") (term "0,1,0,1,0,1")) + (rule "eqSymm" (formula "2") (term "1,1,0,1,0,1")) + (rule "eqSymm" (formula "2") (term "1,0,0,1")) + (rule "eqSymm" (formula "2") (term "1,1")) + (rule "replace_known_left" (formula "2") (term "0,0") (ifseqformula "5")) + (builtin "One Step Simplification" (formula "2")) + (rule "polySimp_elimSub" (formula "17") (term "1,0,2,0")) + (rule "mul_literals" (formula "17") (term "1,1,0,2,0")) + (rule "polySimp_elimSub" (formula "15") (term "1,0,0,1,1,0")) + (rule "mul_literals" (formula "15") (term "1,1,0,0,1,1,0")) + (rule "polySimp_elimSub" (formula "2") (term "0,0,0,1,1")) + (rule "mul_literals" (formula "2") (term "1,0,0,0,1,1")) + (rule "polySimp_homoEq" (formula "2") (term "0,0,1,1")) + (rule "polySimp_mulComm0" (formula "2") (term "1,0,0,0,1,1")) + (rule "polySimp_addComm0" (formula "15") (term "1,0,2,0,1,1,0")) + (rule "polySimp_addComm0" (formula "2") (term "1,0,2,0,1,1")) + (rule "polySimp_addComm0" (formula "17") (term "1,0,2,0")) + (rule "polySimp_addComm0" (formula "15") (term "1,0,0,1,1,0")) + (rule "polySimp_addComm0" (formula "2") (term "1,1,0,0,0,1,1")) + (rule "polySimp_rightDist" (formula "2") (term "1,0,0,0,1,1")) + (rule "mul_literals" (formula "2") (term "0,1,0,0,0,1,1")) + (rule "castedGetAny" (formula "1") (term "1,1")) + (rule "subsetSingletonLeft" (formula "12")) + (rule "subsetSingletonLeft" (formula "13")) + (rule "castedGetAny" (formula "1") (term "1,0")) + (rule "castedGetAny" (formula "15") (term "0,0,0,0,0,1,0")) + (rule "castedGetAny" (formula "16") (term "2,0")) + (rule "castedGetAny" (formula "21") (term "0")) + (rule "eqSymm" (formula "21")) + (rule "castedGetAny" (formula "15") (term "1,1,1,1,0")) + (rule "castedGetAny" (formula "15") (term "1,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "15") (term "0,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "15") (term "0,1,0,0,1,0")) + (rule "eqSymm" (formula "15") (term "1,0,0,1,0")) + (rule "castedGetAny" (formula "14") (term "0,1,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "15") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,0,1,0,0")) + (rule "inEqSimp_ltToLeq" (formula "15") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "castedGetAny" (formula "2") (term "0,0,0,0,0,1")) + (rule "castedGetAny" (formula "2") (term "1,1,1,0,0,1")) + (rule "castedGetAny" (formula "2") (term "1,1,1,1")) + (rule "castedGetAny" (formula "2") (term "0,0,1,0,1,0,1")) + (rule "castedGetAny" (formula "2") (term "1,0,1,0,1,0,1")) + (rule "castedGetAny" (formula "2") (term "0,1,0,0,1")) + (rule "inEqSimp_ltToLeq" (formula "6")) + (rule "polySimp_mulComm0" (formula "6") (term "1,0,0")) + (rule "polySimp_addComm1" (formula "6") (term "0")) + (rule "polySimp_addAssoc" (formula "2") (term "0,0,0,1,1")) + (rule "polySimp_addComm0" (formula "2") (term "0,0,0,0,1,1")) + (rule "castedGetAny" (formula "15") (term "2,0,1,1,0")) + (rule "castedGetAny" (formula "2") (term "2,0,1,1")) + (rule "castedGetAny" (formula "17") (term "2,0")) + (rule "inEqSimp_ltToLeq" (formula "14") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "14") (term "1,0,0,1,0,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "2") (term "0")) + (rule "polySimp_mulComm0" (formula "2") (term "1,0,0,0")) + (rule "polySimp_addComm1" (formula "2") (term "0,0")) + (rule "inEqSimp_ltToLeq" (formula "2") (term "1,0,0,1,0,1")) + (rule "polySimp_mulComm0" (formula "2") (term "1,0,0,1,0,0,1,0,1")) + (rule "castedGetAny" (formula "21") (term "1,0")) + (rule "castedGetAny" (formula "15") (term "1,0,1,0,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "15") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "15") (term "0,0,0,1,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "5")) + (rule "inEqSimp_commuteLeq" (formula "14") (term "0,0,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "2") (term "0,0,0,1,0,1")) + (rule "polySimp_sepNegMonomial" (formula "2") (term "0,0,1,1")) + (rule "polySimp_mulLiterals" (formula "2") (term "0,0,0,1,1")) + (rule "polySimp_elimOne" (formula "2") (term "0,0,0,1,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "15") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,1,0,0")) + (rule "polySimp_rightDist" (formula "15") (term "1,1,0,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,1,1,0,0")) + (rule "mul_literals" (formula "15") (term "0,1,1,0,0")) + (rule "polySimp_elimOne" (formula "15") (term "1,1,1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "15") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "15") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,1,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "15") (term "0,1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "15") (term "1,1,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "6")) + (rule "polySimp_mulLiterals" (formula "6") (term "0")) + (rule "polySimp_elimOne" (formula "6") (term "0")) + (rule "inEqSimp_sepPosMonomial0" (formula "14") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "14") (term "1,1,0,0,1,0")) + (rule "polySimp_rightDist" (formula "14") (term "1,1,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "14") (term "1,1,1,0,0,1,0")) + (rule "mul_literals" (formula "14") (term "0,1,1,0,0,1,0")) + (rule "polySimp_elimOne" (formula "14") (term "1,1,1,0,0,1,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "2") (term "0")) + (rule "polySimp_mulLiterals" (formula "2") (term "0,0")) + (rule "polySimp_elimOne" (formula "2") (term "0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "2") (term "1,0,0,1,0,1")) + (rule "polySimp_mulComm0" (formula "2") (term "1,1,0,0,1,0,1")) + (rule "polySimp_rightDist" (formula "2") (term "1,1,0,0,1,0,1")) + (rule "mul_literals" (formula "2") (term "0,1,1,0,0,1,0,1")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,1,1,0,0,1,0,1")) + (rule "polySimp_elimOne" (formula "2") (term "1,1,1,0,0,1,0,1")) + (rule "pullOutSelect" (formula "4") (term "0") (inst "selectSK=List_seq_0")) + (rule "simplifySelectOfAnon" (formula "4")) + (builtin "One Step Simplification" (formula "4") (ifInst "" (formula "21")) (ifInst "" (formula "10"))) + (rule "eqSymm" (formula "5")) + (rule "applyEqReverse" (formula "4") (term "1") (ifseqformula "5")) + (builtin "One Step Simplification" (formula "4")) + (rule "hideAuxiliaryEq" (formula "5")) + (rule "pullOutSelect" (formula "3") (term "0") (inst "selectSK=LinkedList_nodeseq_0")) + (rule "simplifySelectOfAnon" (formula "3")) + (builtin "One Step Simplification" (formula "3") (ifInst "" (formula "21")) (ifInst "" (formula "10"))) + (rule "eqSymm" (formula "4")) + (rule "applyEqReverse" (formula "3") (term "1") (ifseqformula "4")) + (builtin "One Step Simplification" (formula "3")) + (rule "hideAuxiliaryEq" (formula "4")) + (rule "elementOfUnionEQ" (formula "13") (ifseqformula "14")) + (builtin "One Step Simplification" (formula "13")) + (rule "true_left" (formula "13")) + (rule "elementOfUnionEQ" (formula "12") (ifseqformula "13")) + (builtin "One Step Simplification" (formula "12")) + (rule "true_left" (formula "12")) + (rule "elementOfSetMinus" (formula "4") (term "0,0")) + (builtin "One Step Simplification" (formula "4")) + (rule "elementOfSetMinus" (formula "3") (term "0,0")) + (builtin "One Step Simplification" (formula "3")) + (rule "elementOfUnionEQ" (formula "3") (term "0") (ifseqformula "12")) + (builtin "One Step Simplification" (formula "3")) + (rule "true_left" (formula "3")) + (rule "elementOfUnionEQ" (formula "3") (term "0") (ifseqformula "11")) + (builtin "One Step Simplification" (formula "3")) + (rule "true_left" (formula "3")) + (rule "pullOutSelect" (formula "1") (term "0") (inst "selectSK=Node_data_0")) + (rule "applyEq" (formula "18") (term "0") (ifseqformula "1")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1")) + (rule "eqSymm" (formula "2")) + (rule "applyEqReverse" (formula "1") (term "1") (ifseqformula "2")) + (builtin "One Step Simplification" (formula "1")) + (rule "applyEqReverse" (formula "18") (term "0") (ifseqformula "2")) + (rule "hideAuxiliaryEq" (formula "2")) + (rule "eqSymm" (formula "17")) + (rule "replace_known_right" (formula "2") (term "1,0,0,1") (ifseqformula "17")) + (builtin "One Step Simplification" (formula "2")) + (rule "notLeft" (formula "2")) + (rule "inEqSimp_geqRight" (formula "15")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "0,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1")) + (rule "polySimp_elimOne" (formula "1") (term "1")) + (rule "elementOfSetMinus" (formula "2") (term "0,0,0")) + (builtin "One Step Simplification" (formula "2")) + (rule "elementOfUnionEQ" (formula "2") (term "0,0,0,0") (ifseqformula "10")) + (builtin "One Step Simplification" (formula "2")) + (rule "elementOfInfiniteUnion" (formula "2") (term "1,0,0,0,0")) + (builtin "One Step Simplification" (formula "2")) + (rule "eqSymm" (formula "2") (term "1,0,1,0,0,0,0")) + (rule "sortsDisjointModuloNull" (formula "2") (term "0,0,0,0,0")) + (rule "replace_known_right" (formula "2") (term "1,0,0,0,0,0") (ifseqformula "16")) + (builtin "One Step Simplification" (formula "2")) + (rule "pullOutSelect" (formula "4") (term "0") (inst "selectSK=LinkedList_size_0")) + (rule "simplifySelectOfAnon" (formula "4")) + (builtin "One Step Simplification" (formula "4") (ifInst "" (formula "17")) (ifInst "" (formula "8"))) + (rule "inEqSimp_homoInEq1" (formula "5")) + (rule "polySimp_addComm1" (formula "5") (term "0")) + (rule "inEqSimp_sepPosMonomial0" (formula "5")) + (rule "polySimp_mulComm0" (formula "5") (term "1")) + (rule "polySimp_rightDist" (formula "5") (term "1")) + (rule "mul_literals" (formula "5") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "5") (term "1,1")) + (rule "polySimp_elimOne" (formula "5") (term "1,1")) + (rule "elementOfSetMinus" (formula "4") (term "0,0")) + (builtin "One Step Simplification" (formula "4")) + (rule "ifthenelse_negated" (formula "4") (term "0")) + (rule "elementOfUnionEQ" (formula "4") (term "0,0") (ifseqformula "11")) + (builtin "One Step Simplification" (formula "4")) + (rule "applyEqReverse" (formula "5") (term "1,1") (ifseqformula "4")) + (rule "hideAuxiliaryEq" (formula "4")) + (rule "inEqSimp_homoInEq0" (formula "4")) + (rule "polySimp_addComm1" (formula "4") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "4")) + (rule "polySimp_mulComm0" (formula "4") (term "1")) + (rule "polySimp_rightDist" (formula "4") (term "1")) + (rule "polySimp_mulLiterals" (formula "4") (term "1,1")) + (rule "mul_literals" (formula "4") (term "0,1")) + (rule "polySimp_elimOne" (formula "4") (term "1,1")) + (rule "inEqSimp_contradInEq0" (formula "4") (ifseqformula "1")) + (rule "andLeft" (formula "4")) + (rule "inEqSimp_homoInEq1" (formula "4")) + (rule "polySimp_pullOutFactor1b" (formula "4") (term "0")) + (rule "add_literals" (formula "4") (term "1,1,0")) + (rule "times_zero_1" (formula "4") (term "1,0")) + (rule "add_zero_right" (formula "4") (term "0")) + (rule "leq_literals" (formula "4")) + (rule "closeFalse" (formula "4")) + ) + (branch "Assume (Node)(self.nodeseq[i_0]).data@heap[anon( allLocs setMinus self.footprint, anon_heap<>)] != (Node)(self.nodeseq[i_0]).data" + (rule "notLeft" (formula "1") (userinteraction)) + (rule "selectOfAnon" (formula "18") (term "0") (userinteraction)) + (rule "ifthenelse_split" (formula "18") (term "0") (userinteraction)) + (branch " ((Node)(self.nodeseq[i_0]), Node::#data) in allLocs setMinus self.footprint & !Node::#data = java.lang.Object::#$created | ((Node)(self.nodeseq[i_0]), Node::#data) in freshLocs(heap) TRUE" + (rule "orLeft" (formula "1") (userinteraction)) + (branch " ((Node)(self.nodeseq[i_0]), Node::#data) in allLocs setMinus self.footprint & !Node::#data = java.lang.Object::#$created" + (builtin "One Step Simplification" (formula "14")) + (builtin "One Step Simplification" (formula "13")) + (builtin "One Step Simplification" (formula "5")) + (builtin "One Step Simplification" (formula "2")) + (builtin "One Step Simplification" (formula "1")) + (rule "andLeft" (formula "5")) + (rule "eqSymm" (formula "16")) + (rule "eqSymm" (formula "17")) + (rule "eqSymm" (formula "18")) + (rule "eqSymm" (formula "22")) + (rule "eqSymm" (formula "19")) + (rule "eqSymm" (formula "15") (term "1,1,0")) + (rule "eqSymm" (formula "15") (term "1,1,0,1,0,1,0")) + (rule "eqSymm" (formula "15") (term "1,0,0,1,0")) + (rule "eqSymm" (formula "15") (term "0,1,0,1,0,1,0")) + (rule "eqSymm" (formula "14")) + (rule "eqSymm" (formula "2") (term "1,0,0,1")) + (rule "eqSymm" (formula "2") (term "1,1")) + (rule "eqSymm" (formula "2") (term "1,1,0,1,0,1")) + (rule "eqSymm" (formula "2") (term "0,1,0,1,0,1")) + (rule "eqSymm" (formula "2") (term "0,0,1,1")) + (rule "replace_known_left" (formula "2") (term "0,0") (ifseqformula "5")) + (builtin "One Step Simplification" (formula "2")) + (rule "polySimp_elimSub" (formula "17") (term "1,0,2,0")) + (rule "mul_literals" (formula "17") (term "1,1,0,2,0")) + (rule "polySimp_elimSub" (formula "15") (term "1,0,0,1,1,0")) + (rule "mul_literals" (formula "15") (term "1,1,0,0,1,1,0")) + (rule "polySimp_elimSub" (formula "2") (term "0,0,0,1,1")) + (rule "mul_literals" (formula "2") (term "1,0,0,0,1,1")) + (rule "polySimp_homoEq" (formula "2") (term "0,0,1,1")) + (rule "polySimp_mulComm0" (formula "2") (term "1,0,0,0,1,1")) + (rule "polySimp_addComm0" (formula "15") (term "1,0,2,0,1,1,0")) + (rule "polySimp_addComm0" (formula "2") (term "1,0,2,0,1,1")) + (rule "polySimp_addComm0" (formula "17") (term "1,0,2,0")) + (rule "polySimp_addComm0" (formula "15") (term "1,0,0,1,1,0")) + (rule "polySimp_addComm0" (formula "2") (term "1,1,0,0,0,1,1")) + (rule "polySimp_rightDist" (formula "2") (term "1,0,0,0,1,1")) + (rule "mul_literals" (formula "2") (term "0,1,0,0,0,1,1")) + (rule "castedGetAny" (formula "20") (term "1,1")) + (rule "subsetSingletonLeft" (formula "13")) + (rule "subsetSingletonLeft" (formula "12")) + (rule "castedGetAny" (formula "20") (term "1,0")) + (rule "castedGetAny" (formula "15") (term "0,0,0,0,0,1,0")) + (rule "castedGetAny" (formula "1") (term "0")) + (rule "castedGetAny" (formula "16") (term "2,0")) + (rule "castedGetAny" (formula "22") (term "1,1")) + (rule "castedGetAny" (formula "22") (term "0")) + (rule "eqSymm" (formula "22")) + (rule "castedGetAny" (formula "15") (term "1,1,1,1,0")) + (rule "castedGetAny" (formula "15") (term "0,1,0,0,1,0")) + (rule "eqSymm" (formula "15") (term "1,0,0,1,0")) + (rule "castedGetAny" (formula "15") (term "0,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "15") (term "1,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "14") (term "0,1,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "15") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,0,1,0,0")) + (rule "inEqSimp_ltToLeq" (formula "15") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "castedGetAny" (formula "2") (term "1,0,1,0,1,0,1")) + (rule "castedGetAny" (formula "2") (term "0,0,0,0,0,1")) + (rule "castedGetAny" (formula "2") (term "1,1,1,0,0,1")) + (rule "castedGetAny" (formula "2") (term "1,1,1,1")) + (rule "castedGetAny" (formula "2") (term "0,0,1,0,1,0,1")) + (rule "castedGetAny" (formula "2") (term "0,1,0,0,1")) + (rule "inEqSimp_ltToLeq" (formula "6")) + (rule "polySimp_mulComm0" (formula "6") (term "1,0,0")) + (rule "polySimp_addComm1" (formula "6") (term "0")) + (rule "polySimp_addAssoc" (formula "2") (term "0,0,0,1,1")) + (rule "polySimp_addComm0" (formula "2") (term "0,0,0,0,1,1")) + (rule "castedGetAny" (formula "15") (term "2,0,1,1,0")) + (rule "castedGetAny" (formula "2") (term "2,0,1,1")) + (rule "castedGetAny" (formula "17") (term "2,0")) + (rule "inEqSimp_ltToLeq" (formula "14") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "14") (term "1,0,0,1,0,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "2") (term "0")) + (rule "polySimp_mulComm0" (formula "2") (term "1,0,0,0")) + (rule "polySimp_addComm1" (formula "2") (term "0,0")) + (rule "inEqSimp_ltToLeq" (formula "2") (term "1,0,0,1,0,1")) + (rule "polySimp_mulComm0" (formula "2") (term "1,0,0,1,0,0,1,0,1")) + (rule "castedGetAny" (formula "15") (term "1,0,1,0,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "15") (term "0,0,0,1,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "15") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "5")) + (rule "inEqSimp_commuteLeq" (formula "14") (term "0,0,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "2") (term "0,0,0,1,0,1")) + (rule "polySimp_sepNegMonomial" (formula "2") (term "0,0,1,1")) + (rule "polySimp_mulLiterals" (formula "2") (term "0,0,0,1,1")) + (rule "polySimp_elimOne" (formula "2") (term "0,0,0,1,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "15") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,1,0,0")) + (rule "polySimp_rightDist" (formula "15") (term "1,1,0,0")) + (rule "mul_literals" (formula "15") (term "0,1,1,0,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,1,1,0,0")) + (rule "polySimp_elimOne" (formula "15") (term "1,1,1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "15") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "15") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,1,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "15") (term "0,1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "15") (term "1,1,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "6")) + (rule "polySimp_mulLiterals" (formula "6") (term "0")) + (rule "polySimp_elimOne" (formula "6") (term "0")) + (rule "inEqSimp_sepPosMonomial0" (formula "14") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "14") (term "1,1,0,0,1,0")) + (rule "polySimp_rightDist" (formula "14") (term "1,1,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "14") (term "1,1,1,0,0,1,0")) + (rule "mul_literals" (formula "14") (term "0,1,1,0,0,1,0")) + (rule "polySimp_elimOne" (formula "14") (term "1,1,1,0,0,1,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "2") (term "0")) + (rule "polySimp_mulLiterals" (formula "2") (term "0,0")) + (rule "polySimp_elimOne" (formula "2") (term "0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "2") (term "1,0,0,1,0,1")) + (rule "polySimp_mulComm0" (formula "2") (term "1,1,0,0,1,0,1")) + (rule "polySimp_rightDist" (formula "2") (term "1,1,0,0,1,0,1")) + (rule "mul_literals" (formula "2") (term "0,1,1,0,0,1,0,1")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,1,1,0,0,1,0,1")) + (rule "polySimp_elimOne" (formula "2") (term "1,1,1,0,0,1,0,1")) + (rule "elementOfSetMinus" (formula "1")) + (builtin "One Step Simplification" (formula "1")) + (rule "notLeft" (formula "1")) + (rule "pullOutSelect" (formula "3") (term "0") (inst "selectSK=List_seq_0")) + (rule "simplifySelectOfAnon" (formula "3")) + (builtin "One Step Simplification" (formula "3") (ifInst "" (formula "22")) (ifInst "" (formula "9"))) + (rule "eqSymm" (formula "4")) + (rule "applyEqReverse" (formula "3") (term "1") (ifseqformula "4")) + (builtin "One Step Simplification" (formula "3")) + (rule "hideAuxiliaryEq" (formula "4")) + (rule "pullOutSelect" (formula "2") (term "0") (inst "selectSK=LinkedList_nodeseq_0")) + (rule "simplifySelectOfAnon" (formula "2")) + (builtin "One Step Simplification" (formula "2") (ifInst "" (formula "22")) (ifInst "" (formula "9"))) + (rule "eqSymm" (formula "3")) + (rule "applyEqReverse" (formula "2") (term "1") (ifseqformula "3")) + (builtin "One Step Simplification" (formula "2")) + (rule "hideAuxiliaryEq" (formula "3")) + (rule "elementOfUnionEQ" (formula "12") (ifseqformula "13")) + (builtin "One Step Simplification" (formula "12")) + (rule "true_left" (formula "12")) + (rule "elementOfUnionEQ" (formula "11") (ifseqformula "12")) + (builtin "One Step Simplification" (formula "11")) + (rule "true_left" (formula "11")) + (rule "elementOfSetMinus" (formula "3") (term "0,0")) + (builtin "One Step Simplification" (formula "3")) + (rule "elementOfSetMinus" (formula "2") (term "0,0")) + (builtin "One Step Simplification" (formula "2")) + (rule "elementOfUnionEQ" (formula "17") (ifseqformula "11")) + (builtin "One Step Simplification" (formula "17")) + (rule "orRight" (formula "17")) + (rule "sortsDisjointModuloNull" (formula "17")) + (rule "replace_known_right" (formula "17") (term "1") (ifseqformula "20")) + (builtin "One Step Simplification" (formula "17")) + (rule "false_right" (formula "17")) + (rule "elementOfInfiniteUnion" (formula "17")) + (builtin "One Step Simplification" (formula "17")) + (rule "eqSymm" (formula "17") (term "1,0")) + (rule "pullOutSelect" (formula "20") (term "0") (inst "selectSK=Node_data_0")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1")) + (rule "eqSymm" (formula "21")) + (rule "elementOfUnionEQ" (formula "3") (term "0") (ifseqformula "12")) + (builtin "One Step Simplification" (formula "3")) + (rule "true_left" (formula "3")) + (rule "elementOfUnionEQ" (formula "3") (term "0") (ifseqformula "11")) + (builtin "One Step Simplification" (formula "3")) + (rule "true_left" (formula "3")) + (rule "elementOfSetMinus" (formula "1") (term "0,0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "elementOfUnionEQ" (formula "1") (term "0,0,0,0") (ifseqformula "10")) + (builtin "One Step Simplification" (formula "1")) + (rule "elementOfInfiniteUnion" (formula "1") (term "1,0,0,0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "eqSymm" (formula "1") (term "1,0,1,0,0,0,0")) + (rule "replace_known_right" (formula "1") (term "1,0,0,0,0") (ifseqformula "16")) + (builtin "One Step Simplification" (formula "1")) + (rule "sortsDisjointModuloNull" (formula "1") (term "0,0,0,0")) + (rule "replace_known_right" (formula "1") (term "1,0,0,0,0") (ifseqformula "18")) + (builtin "One Step Simplification" (formula "1")) + (rule "applyEqReverse" (formula "19") (term "1") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "pullOutSelect" (formula "3") (term "0") (inst "selectSK=LinkedList_size_0")) + (rule "simplifySelectOfAnon" (formula "3")) + (builtin "One Step Simplification" (formula "3") (ifInst "" (formula "18")) (ifInst "" (formula "7"))) + (rule "inEqSimp_homoInEq1" (formula "4")) + (rule "polySimp_addComm1" (formula "4") (term "0")) + (rule "inEqSimp_sepPosMonomial0" (formula "4")) + (rule "polySimp_mulComm0" (formula "4") (term "1")) + (rule "polySimp_rightDist" (formula "4") (term "1")) + (rule "polySimp_mulLiterals" (formula "4") (term "1,1")) + (rule "mul_literals" (formula "4") (term "0,1")) + (rule "polySimp_elimOne" (formula "4") (term "1,1")) + (rule "elementOfSetMinus" (formula "3") (term "0,0")) + (builtin "One Step Simplification" (formula "3")) + (rule "ifthenelse_negated" (formula "3") (term "0")) + (rule "elementOfUnionEQ" (formula "3") (term "0,0") (ifseqformula "10")) + (builtin "One Step Simplification" (formula "3")) + (rule "applyEqReverse" (formula "4") (term "1,1") (ifseqformula "3")) + (rule "hideAuxiliaryEq" (formula "3")) + (rule "inEqSimp_homoInEq0" (formula "3")) + (rule "polySimp_addComm1" (formula "3") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "3")) + (rule "polySimp_mulComm0" (formula "3") (term "1")) + (rule "polySimp_rightDist" (formula "3") (term "1")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,1")) + (rule "mul_literals" (formula "3") (term "0,1")) + (rule "polySimp_elimOne" (formula "3") (term "1,1")) + (rule "replace_known_left" (formula "1") (term "0") (ifseqformula "3")) + (builtin "One Step Simplification" (formula "1")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "1")) + (rule "notLeft" (formula "1")) + (rule "applyEq" (formula "21") (term "0") (ifseqformula "1")) + (rule "eqSymm" (formula "21")) + (rule "nnf_ex2all" (formula "18")) + (rule "nnf_imp2or" (formula "13") (term "0")) + (rule "nnf_imp2or" (formula "3") (term "0")) + (rule "nnf_notAnd" (formula "1") (term "0")) + (rule "nnf_notAnd" (formula "13") (term "0,0")) + (rule "inEqSimp_notGeq" (formula "13") (term "0,0,0")) + (rule "mul_literals" (formula "13") (term "1,0,0,0,0,0")) + (rule "add_zero_right" (formula "13") (term "0,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "13") (term "0,0,0")) + (rule "mul_literals" (formula "13") (term "1,0,0,0")) + (rule "inEqSimp_notLeq" (formula "13") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "13") (term "1,0,0,1,0,0")) + (rule "mul_literals" (formula "13") (term "0,1,0,0,1,0,0")) + (rule "polySimp_addAssoc" (formula "13") (term "0,0,1,0,0")) + (rule "add_literals" (formula "13") (term "0,0,0,1,0,0")) + (rule "add_zero_left" (formula "13") (term "0,0,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "13") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "13") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "13") (term "1,1,0,0")) + (rule "nnf_imp2or" (formula "3") (term "1,0")) + (rule "nnf_notAnd" (formula "3") (term "0,0")) + (rule "inEqSimp_notLeq" (formula "3") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "3") (term "1,0,0,1,0,0")) + (rule "mul_literals" (formula "3") (term "0,1,0,0,1,0,0")) + (rule "polySimp_addAssoc" (formula "3") (term "0,0,1,0,0")) + (rule "add_literals" (formula "3") (term "0,0,0,1,0,0")) + (rule "add_zero_left" (formula "3") (term "0,0,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "3") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "3") (term "1,1,0,0")) + (rule "inEqSimp_notGeq" (formula "3") (term "0,0,0")) + (rule "times_zero_1" (formula "3") (term "1,0,0,0,0,0")) + (rule "add_zero_right" (formula "3") (term "0,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "3") (term "0,0,0")) + (rule "mul_literals" (formula "3") (term "1,0,0,0")) + (rule "nnf_notAnd" (formula "1") (term "0,0")) + (rule "inEqSimp_notGeq" (formula "1") (term "0,0,0")) + (rule "mul_literals" (formula "1") (term "1,0,0,0,0,0")) + (rule "add_zero_right" (formula "1") (term "0,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1") (term "0,0,0")) + (rule "mul_literals" (formula "1") (term "1,0,0,0")) + (rule "inEqSimp_notLeq" (formula "1") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0,1,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0,1,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0,1,0,0")) + (rule "add_literals" (formula "1") (term "0,0,0,1,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "1") (term "1,1,0,0")) + (rule "nnf_imp2or" (formula "13") (term "0,1,0,1,0")) + (rule "nnf_notAnd" (formula "13") (term "0,0,1,0,1,0")) + (rule "inEqSimp_notGeq" (formula "13") (term "0,0,0,1,0,1,0")) + (rule "mul_literals" (formula "13") (term "1,0,0,0,0,0,1,0,1,0")) + (rule "add_zero_right" (formula "13") (term "0,0,0,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "13") (term "0,0,0,1,0,1,0")) + (rule "mul_literals" (formula "13") (term "1,0,0,0,1,0,1,0")) + (rule "inEqSimp_notLeq" (formula "13") (term "1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "13") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "13") (term "0,1,0,0,1,0,0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "13") (term "0,0,1,0,0,1,0,1,0")) + (rule "add_literals" (formula "13") (term "0,0,0,1,0,0,1,0,1,0")) + (rule "add_zero_left" (formula "13") (term "0,0,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "13") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "13") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "13") (term "1,1,0,0,1,0,1,0")) + (rule "nnf_imp2or" (formula "13") (term "1,0,1,0,1,0")) + (rule "commute_or_2" (formula "3") (term "0")) + (rule "commute_or_2" (formula "1") (term "0")) + (rule "ifthenelse_split" (formula "14") (term "0")) + (branch "self.size = 0 TRUE" + (rule "eqSymm" (formula "15")) + (rule "replace_known_left" (formula "16") (term "0,0") (ifseqformula "14")) + (builtin "One Step Simplification" (formula "16")) + (rule "eqSymm" (formula "16")) + (rule "applyEq" (formula "3") (term "1,1,0") (ifseqformula "14")) + (rule "applyEq" (formula "6") (term "0") (ifseqformula "14")) + (rule "inEqSimp_homoInEq1" (formula "6")) + (rule "mul_literals" (formula "6") (term "1,0")) + (rule "add_zero_right" (formula "6") (term "0")) + (rule "applyEq" (formula "12") (term "1,1,1,0,0,1,0") (ifseqformula "14")) + (rule "add_zero_right" (formula "12") (term "1,1,0,0,1,0")) + (rule "applyEq" (formula "13") (term "1,1,0,0") (ifseqformula "14")) + (rule "applyEq" (formula "4") (term "0,0,0") (ifseqformula "14")) + (rule "polySimp_homoEq" (formula "4") (term "0,0")) + (rule "times_zero_2" (formula "4") (term "1,0,0,0")) + (rule "add_zero_right" (formula "4") (term "0,0,0")) + (rule "applyEq" (formula "1") (term "1,1,0") (ifseqformula "14")) + (rule "applyEq" (formula "13") (term "1,1,0,0,1,0,1,0") (ifseqformula "14")) + (rule "applyEq" (formula "13") (term "1,1,0,0,1,1,0") (ifseqformula "14")) + (rule "add_zero_right" (formula "13") (term "1,0,0,1,1,0")) + (rule "applyEq" (formula "18") (term "1") (ifseqformula "14")) + (rule "applyEq" (formula "17") (term "1") (ifseqformula "14")) + (rule "polySimp_sepPosMonomial" (formula "4") (term "0,0")) + (rule "mul_literals" (formula "4") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "6")) + (rule "mul_literals" (formula "6") (term "1")) + (rule "inEqSimp_contradEq7" (formula "4") (term "0,0") (ifseqformula "5")) + (rule "add_zero_left" (formula "4") (term "0,0,0,0")) + (rule "mul_literals" (formula "4") (term "0,0,0,0")) + (rule "leq_literals" (formula "4") (term "0,0,0")) + (builtin "One Step Simplification" (formula "4")) + (rule "eqSymm" (formula "4")) + (rule "inEqSimp_contradInEq0" (formula "5") (ifseqformula "6")) + (rule "qeq_literals" (formula "5") (term "0")) + (builtin "One Step Simplification" (formula "5")) + (rule "closeFalse" (formula "5")) + ) + (branch "self.size = 0 FALSE" + (rule "replace_known_right" (formula "15") (term "0,0") (ifseqformula "18")) + (builtin "One Step Simplification" (formula "15")) + (rule "commute_or" (formula "1") (term "0,0")) + (rule "shift_paren_or" (formula "3") (term "0,0")) + (rule "commute_or" (formula "3") (term "0,0,0")) + (rule "lenNonNegative" (formula "16") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "16")) + (rule "applyEq" (formula "16") (term "0") (ifseqformula "17")) + (rule "inEqSimp_strengthen1" (formula "16") (ifseqformula "19")) + (rule "add_zero_right" (formula "16") (term "1")) + (rule "inEqSimp_contradEq7" (formula "19") (ifseqformula "16")) + (rule "mul_literals" (formula "19") (term "1,0,0")) + (rule "add_zero_right" (formula "19") (term "0,0")) + (rule "leq_literals" (formula "19") (term "0")) + (builtin "One Step Simplification" (formula "19")) + (rule "false_right" (formula "19")) + (rule "lenNonNegative" (formula "18") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "18")) + (rule "applyEq" (formula "18") (term "0") (ifseqformula "19")) + (rule "inEqSimp_subsumption1" (formula "18") (ifseqformula "16")) + (rule "leq_literals" (formula "18") (term "0")) + (builtin "One Step Simplification" (formula "18")) + (rule "true_left" (formula "18")) + (rule "ifthenelse_to_or_left" (formula "13") (term "1,1,0")) + (rule "eqSymm" (formula "13") (term "1,0,1,1,0")) + (rule "eqSymm" (formula "13") (term "1,1,1,1,0")) + (rule "commute_or" (formula "13") (term "0,1,1,0")) + (rule "commute_or" (formula "13") (term "1,1,1,0")) + (rule "seqGetAlphaCast" (formula "20") (term "1,1")) + (rule "castedGetAny" (formula "1") (term "0")) + (builtin "One Step Simplification" (formula "1")) + (rule "true_left" (formula "1")) + (rule "shift_paren_or" (formula "13") (term "0,1,0,1,0")) + (rule "commute_or_2" (formula "13") (term "0,0,1,0,1,0")) + (rule "commute_or" (formula "13") (term "0,0,0,1,0,1,0")) + (rule "ifthenelse_split" (formula "4") (term "0")) + (branch "self.size = 1 + i_0 TRUE" + (rule "eqSymm" (formula "5")) + (rule "applyEq" (formula "7") (term "0") (ifseqformula "4")) + (rule "inEqSimp_homoInEq1" (formula "7")) + (rule "polySimp_pullOutFactor1" (formula "7") (term "0")) + (rule "add_literals" (formula "7") (term "1,0")) + (rule "times_zero_1" (formula "7") (term "0")) + (rule "leq_literals" (formula "7")) + (rule "true_left" (formula "7")) + (rule "applyEq" (formula "13") (term "1,1,0,0,1,0,1,0") (ifseqformula "4")) + (rule "applyEq" (formula "16") (term "0") (ifseqformula "4")) + (rule "inEqSimp_homoInEq1" (formula "16")) + (rule "polySimp_mulComm0" (formula "16") (term "1,0")) + (rule "polySimp_rightDist" (formula "16") (term "1,0")) + (rule "mul_literals" (formula "16") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "16") (term "0")) + (rule "add_literals" (formula "16") (term "0,0")) + (rule "add_zero_left" (formula "16") (term "0")) + (rule "applyEq" (formula "3") (term "1,1,0") (ifseqformula "4")) + (rule "applyEq" (formula "1") (term "1,1,0") (ifseqformula "4")) + (rule "applyEq" (formula "13") (term "1,1,0,0") (ifseqformula "4")) + (rule "applyEq" (formula "12") (term "1,1,1,0,0,1,0") (ifseqformula "4")) + (rule "polySimp_addAssoc" (formula "12") (term "1,1,0,0,1,0")) + (rule "add_literals" (formula "12") (term "0,1,1,0,0,1,0")) + (rule "add_zero_left" (formula "12") (term "1,1,0,0,1,0")) + (rule "applyEq" (formula "15") (term "1,1,0") (ifseqformula "4")) + (rule "polySimp_addAssoc" (formula "15") (term "1,0")) + (rule "add_literals" (formula "15") (term "0,1,0")) + (rule "add_zero_left" (formula "15") (term "1,0")) + (rule "applyEq" (formula "2") (term "1,1") (ifseqformula "15")) + (rule "applyEq" (formula "20") (term "1,1") (ifseqformula "15")) + (rule "applyEq" (formula "3") (term "1,0,0,0,0,0") (ifseqformula "15")) + (rule "applyEq" (formula "1") (term "1,0,0,0,0") (ifseqformula "15")) + (rule "applyEq" (formula "19") (term "0") (ifseqformula "15")) + (rule "applyEq" (formula "5") (term "1,0") (ifseqformula "15")) + (rule "applyEq" (formula "20") (term "1,0") (ifseqformula "15")) + (rule "applyEq" (formula "13") (term "1,1,1,1,1,1,0") (ifseqformula "4")) + (rule "polySimp_addAssoc" (formula "13") (term "1,1,1,1,1,0")) + (rule "add_literals" (formula "13") (term "0,1,1,1,1,1,0")) + (rule "add_zero_left" (formula "13") (term "1,1,1,1,1,0")) + (rule "applyEq" (formula "17") (term "1") (ifseqformula "4")) + (rule "applyEq" (formula "18") (term "1") (ifseqformula "4")) + (rule "applyEq" (formula "13") (term "1,1,0,1,0,1,1,0") (ifseqformula "4")) + (rule "polySimp_addAssoc" (formula "13") (term "1,0,1,0,1,1,0")) + (rule "add_literals" (formula "13") (term "0,1,0,1,0,1,1,0")) + (rule "add_zero_left" (formula "13") (term "1,0,1,0,1,1,0")) + (rule "inEqSimp_invertInEq0" (formula "16")) + (rule "mul_literals" (formula "16") (term "1")) + (rule "polySimp_mulLiterals" (formula "16") (term "0")) + (rule "polySimp_elimOne" (formula "16") (term "0")) + (rule "inEqSimp_or_weaken3" (formula "3") (term "0")) + (builtin "One Step Simplification" (formula "3")) + (rule "all_pull_out1" (formula "13") (term "0,1,0")) + (rule "seqGetAlphaCast" (formula "2") (term "0")) + (rule "castedGetAny" (formula "2") (term "0")) + (builtin "One Step Simplification" (formula "2")) + (rule "true_left" (formula "2")) + (rule "all_pull_out0" (formula "13") (term "1,0")) + (rule "shift_paren_and" (formula "13") (term "0,1,0")) + (rule "allLeft" (formula "1") (inst "t=i_0")) + (rule "replace_known_left" (formula "1") (term "0,0,0") (ifseqformula "16")) + (builtin "One Step Simplification" (formula "1")) + (rule "inEqSimp_homoInEq1" (formula "1") (term "1")) + (rule "polySimp_pullOutFactor1b" (formula "1") (term "0,1")) + (rule "add_literals" (formula "1") (term "1,1,0,1")) + (rule "times_zero_1" (formula "1") (term "1,0,1")) + (rule "add_zero_right" (formula "1") (term "0,1")) + (rule "leq_literals" (formula "1") (term "1")) + (builtin "One Step Simplification" (formula "1")) + (rule "inEqSimp_contradInEq1" (formula "1") (ifseqformula "7")) + (rule "qeq_literals" (formula "1") (term "0")) + (builtin "One Step Simplification" (formula "1")) + (rule "closeFalse" (formula "1")) + ) + (branch "self.size = 1 + i_0 FALSE" + (rule "eqSymm" (formula "4")) + (rule "inEqSimp_strengthen1" (formula "6") (ifseqformula "19")) + (rule "polySimp_addAssoc" (formula "6") (term "1")) + (rule "add_literals" (formula "6") (term "0,1")) + (rule "inEqSimp_contradEq7" (formula "19") (ifseqformula "6")) + (rule "polySimp_rightDist" (formula "19") (term "1,0,0")) + (rule "mul_literals" (formula "19") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "19") (term "0,0")) + (rule "polySimp_addComm1" (formula "19") (term "0,0,0")) + (rule "add_literals" (formula "19") (term "0,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "19") (term "0,0")) + (rule "add_literals" (formula "19") (term "1,1,0,0")) + (rule "times_zero_1" (formula "19") (term "1,0,0")) + (rule "add_zero_right" (formula "19") (term "0,0")) + (rule "leq_literals" (formula "19") (term "0")) + (builtin "One Step Simplification" (formula "19")) + (rule "false_right" (formula "19")) + (rule "allLeft" (formula "1") (inst "t=i_0")) + (builtin "One Step Simplification" (formula "1")) + (rule "inEqSimp_commuteGeq" (formula "1") (term "1")) + (rule "inEqSimp_contradInEq1" (formula "1") (term "1") (ifseqformula "7")) + (rule "inEqSimp_homoInEq1" (formula "1") (term "0,1")) + (rule "polySimp_pullOutFactor1b" (formula "1") (term "0,0,1")) + (rule "add_literals" (formula "1") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "1") (term "1,0,0,1")) + (rule "add_zero_right" (formula "1") (term "0,0,1")) + (rule "leq_literals" (formula "1") (term "0,1")) + (builtin "One Step Simplification" (formula "1")) + (rule "inEqSimp_contradInEq1" (formula "1") (ifseqformula "6")) + (rule "qeq_literals" (formula "1") (term "0")) + (builtin "One Step Simplification" (formula "1")) + (rule "closeFalse" (formula "1")) + ) + ) + ) + (branch "((Node)(self.nodeseq[i_0]), Node::#data) in freshLocs(heap)" + (builtin "One Step Simplification" (formula "1") (userinteraction)) + (rule "andLeft" (formula "1") (userinteraction)) + (rule "notLeft" (formula "1") (userinteraction)) + (rule "notLeft" (formula "1") (userinteraction)) + (rule "int_induction" (inst "b=( lt(nv, select<[int]>(heap, self, LinkedList::#size))<> + -> ( select<[boolean]>(heap, + (Node)(seqGet<[any]>(select<[Seq]>(heap, + self, + LinkedList::#nodeseq), + nv)), + java.lang.Object::#$created) + = TRUE)<>)<>") (inst "nv=nv") (userinteraction)) + (branch "Base Case" + (builtin "One Step Simplification" (formula "13")) + (builtin "One Step Simplification" (formula "12")) + (builtin "One Step Simplification" (formula "4")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "20"))) + (rule "impRight" (formula "18")) + (rule "andLeft" (formula "5")) + (rule "eqSymm" (formula "17")) + (rule "eqSymm" (formula "16")) + (rule "eqSymm" (formula "25")) + (rule "eqSymm" (formula "19")) + (rule "eqSymm" (formula "18")) + (rule "eqSymm" (formula "15") (term "1,0,0,1,0")) + (rule "eqSymm" (formula "15") (term "1,1,0")) + (rule "eqSymm" (formula "15") (term "0,1,0,1,0,1,0")) + (rule "eqSymm" (formula "15") (term "1,1,0,1,0,1,0")) + (rule "eqSymm" (formula "14")) + (rule "eqSymm" (formula "2") (term "0,1,0,1,0,1")) + (rule "eqSymm" (formula "2") (term "1,1,0,1,0,1")) + (rule "eqSymm" (formula "2") (term "1,1")) + (rule "eqSymm" (formula "2") (term "0,0,1")) + (rule "eqSymm" (formula "2") (term "0,0,1,1")) + (rule "replace_known_left" (formula "2") (term "0,0") (ifseqformula "5")) + (builtin "One Step Simplification" (formula "2")) + (rule "polySimp_elimSub" (formula "17") (term "1,0,2,0")) + (rule "mul_literals" (formula "17") (term "1,1,0,2,0")) + (rule "polySimp_elimSub" (formula "15") (term "1,0,0,1,1,0")) + (rule "mul_literals" (formula "15") (term "1,1,0,0,1,1,0")) + (rule "polySimp_elimSub" (formula "2") (term "0,0,0,1,1")) + (rule "mul_literals" (formula "2") (term "1,0,0,0,1,1")) + (rule "polySimp_homoEq" (formula "2") (term "0,0,1,1")) + (rule "polySimp_mulComm0" (formula "2") (term "1,0,0,0,1,1")) + (rule "polySimp_addComm0" (formula "15") (term "1,0,2,0,1,1,0")) + (rule "polySimp_addComm0" (formula "2") (term "1,0,2,0,1,1")) + (rule "polySimp_addComm0" (formula "17") (term "1,0,2,0")) + (rule "polySimp_addComm0" (formula "15") (term "1,0,0,1,1,0")) + (rule "polySimp_addComm0" (formula "2") (term "1,1,0,0,0,1,1")) + (rule "polySimp_rightDist" (formula "2") (term "1,0,0,0,1,1")) + (rule "mul_literals" (formula "2") (term "0,1,0,0,0,1,1")) + (rule "castedGetAny" (formula "23") (term "1,1")) + (rule "castedGetAny" (formula "21") (term "1,0")) + (rule "subsetSingletonLeft" (formula "13")) + (rule "subsetSingletonLeft" (formula "12")) + (rule "castedGetAny" (formula "23") (term "1,0")) + (rule "castedGetAny" (formula "22") (term "0")) + (rule "castedGetAny" (formula "15") (term "0,0,0,0,0,1,0")) + (rule "castedGetAny" (formula "20") (term "1,0")) + (rule "castedGetAny" (formula "16") (term "2,0")) + (rule "castedGetAny" (formula "25") (term "0")) + (rule "eqSymm" (formula "25")) + (rule "castedGetAny" (formula "15") (term "0,1,0,0,1,0")) + (rule "eqSymm" (formula "15") (term "1,0,0,1,0")) + (rule "castedGetAny" (formula "15") (term "1,1,1,1,0")) + (rule "castedGetAny" (formula "15") (term "0,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "15") (term "1,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "14") (term "0,1,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "15") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "15") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,0,1,0,0")) + (rule "castedGetAny" (formula "2") (term "1,1,1,1")) + (rule "castedGetAny" (formula "2") (term "0,0,1,0,1,0,1")) + (rule "castedGetAny" (formula "2") (term "1,0,1,0,1,0,1")) + (rule "castedGetAny" (formula "2") (term "0,0,0,1")) + (rule "eqSymm" (formula "2") (term "0,0,1")) + (rule "inEqSimp_ltToLeq" (formula "1")) + (rule "add_zero_right" (formula "1") (term "0")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0")) + (rule "inEqSimp_ltToLeq" (formula "6")) + (rule "polySimp_mulComm0" (formula "6") (term "1,0,0")) + (rule "polySimp_addComm1" (formula "6") (term "0")) + (rule "polySimp_addAssoc" (formula "2") (term "0,0,0,1,1")) + (rule "polySimp_addComm0" (formula "2") (term "0,0,0,0,1,1")) + (rule "castedGetAny" (formula "15") (term "2,0,1,1,0")) + (rule "castedGetAny" (formula "2") (term "2,0,1,1")) + (rule "castedGetAny" (formula "17") (term "2,0")) + (rule "inEqSimp_ltToLeq" (formula "14") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "14") (term "1,0,0,1,0,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "2") (term "0")) + (rule "polySimp_mulComm0" (formula "2") (term "1,0,0,0")) + (rule "polySimp_addComm1" (formula "2") (term "0,0")) + (rule "inEqSimp_ltToLeq" (formula "2") (term "1,0,0,1,0,1")) + (rule "polySimp_mulComm0" (formula "2") (term "1,0,0,1,0,0,1,0,1")) + (rule "castedGetAny" (formula "25") (term "1,0")) + (rule "castedGetAny" (formula "15") (term "1,0,1,0,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "15") (term "0,0,0,1,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "15") (term "0,0,0")) + (rule "castedGetAny" (formula "2") (term "1,0,0,0,1")) + (rule "eqSymm" (formula "2") (term "0,0,1")) + (rule "inEqSimp_commuteLeq" (formula "5")) + (rule "inEqSimp_commuteLeq" (formula "14") (term "0,0,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "2") (term "0,0,0,1,0,1")) + (rule "polySimp_sepNegMonomial" (formula "2") (term "0,0,1,1")) + (rule "polySimp_mulLiterals" (formula "2") (term "0,0,0,1,1")) + (rule "polySimp_elimOne" (formula "2") (term "0,0,0,1,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "15") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "15") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,1,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "15") (term "0,1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "15") (term "1,1,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "15") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,1,0,0")) + (rule "polySimp_rightDist" (formula "15") (term "1,1,0,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,1,1,0,0")) + (rule "mul_literals" (formula "15") (term "0,1,1,0,0")) + (rule "polySimp_elimOne" (formula "15") (term "1,1,1,0,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "0")) + (rule "polySimp_elimOne" (formula "1") (term "0")) + (rule "inEqSimp_sepNegMonomial0" (formula "6")) + (rule "polySimp_mulLiterals" (formula "6") (term "0")) + (rule "polySimp_elimOne" (formula "6") (term "0")) + (rule "inEqSimp_sepPosMonomial0" (formula "14") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "14") (term "1,1,0,0,1,0")) + (rule "polySimp_rightDist" (formula "14") (term "1,1,0,0,1,0")) + (rule "mul_literals" (formula "14") (term "0,1,1,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "14") (term "1,1,1,0,0,1,0")) + (rule "polySimp_elimOne" (formula "14") (term "1,1,1,0,0,1,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "2") (term "0")) + (rule "polySimp_mulLiterals" (formula "2") (term "0,0")) + (rule "polySimp_elimOne" (formula "2") (term "0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "2") (term "1,0,0,1,0,1")) + (rule "polySimp_mulComm0" (formula "2") (term "1,1,0,0,1,0,1")) + (rule "polySimp_rightDist" (formula "2") (term "1,1,0,0,1,0,1")) + (rule "mul_literals" (formula "2") (term "0,1,1,0,0,1,0,1")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,1,1,0,0,1,0,1")) + (rule "polySimp_elimOne" (formula "2") (term "1,1,1,0,0,1,0,1")) + (rule "inEqSimp_contradEq7" (formula "17") (term "0,0") (ifseqformula "1")) + (rule "times_zero_1" (formula "17") (term "1,0,0,0,0")) + (rule "add_zero_right" (formula "17") (term "0,0,0,0")) + (rule "leq_literals" (formula "17") (term "0,0,0")) + (builtin "One Step Simplification" (formula "17")) + (rule "inEqSimp_contradEq7" (formula "16") (term "0,0") (ifseqformula "1")) + (rule "times_zero_1" (formula "16") (term "1,0,0,0,0")) + (rule "add_zero_right" (formula "16") (term "0,0,0,0")) + (rule "leq_literals" (formula "16") (term "0,0,0")) + (builtin "One Step Simplification" (formula "16")) + (rule "applyEq" (formula "20") (term "1,0") (ifseqformula "16")) + (rule "pullOutSelect" (formula "4") (term "0") (inst "selectSK=List_seq_0")) + (rule "simplifySelectOfAnon" (formula "4")) + (builtin "One Step Simplification" (formula "4") (ifInst "" (formula "25")) (ifInst "" (formula "10"))) + (rule "eqSymm" (formula "5")) + (rule "applyEqReverse" (formula "4") (term "1") (ifseqformula "5")) + (builtin "One Step Simplification" (formula "4")) + (rule "hideAuxiliaryEq" (formula "5")) + (rule "pullOutSelect" (formula "3") (term "0") (inst "selectSK=LinkedList_nodeseq_0")) + (rule "simplifySelectOfAnon" (formula "3")) + (builtin "One Step Simplification" (formula "3") (ifInst "" (formula "25")) (ifInst "" (formula "10"))) + (rule "eqSymm" (formula "4")) + (rule "applyEqReverse" (formula "3") (term "1") (ifseqformula "4")) + (builtin "One Step Simplification" (formula "3")) + (rule "hideAuxiliaryEq" (formula "4")) + (rule "elementOfUnionEQ" (formula "12") (ifseqformula "14")) + (builtin "One Step Simplification" (formula "12")) + (rule "true_left" (formula "12")) + (rule "elementOfUnionEQ" (formula "12") (ifseqformula "13")) + (builtin "One Step Simplification" (formula "12")) + (rule "true_left" (formula "12")) + (rule "elementOfSetMinus" (formula "4") (term "0,0")) + (builtin "One Step Simplification" (formula "4")) + (rule "elementOfSetMinus" (formula "3") (term "0,0")) + (builtin "One Step Simplification" (formula "3")) + (rule "elementOfUnionEQ" (formula "4") (term "0") (ifseqformula "12")) + (builtin "One Step Simplification" (formula "4")) + (rule "true_left" (formula "4")) + (rule "elementOfUnionEQ" (formula "3") (term "0") (ifseqformula "11")) + (builtin "One Step Simplification" (formula "3")) + (rule "true_left" (formula "3")) + (rule "pullOutSelect" (formula "21") (term "0") (inst "selectSK=Node_data_0")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "19")) (ifInst "" (formula "18"))) + (rule "applyEqReverse" (formula "22") (term "0") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "eqSymm" (formula "21")) + (rule "pullOutSelect" (formula "4") (term "0") (inst "selectSK=LinkedList_size_0")) + (rule "simplifySelectOfAnon" (formula "4")) + (builtin "One Step Simplification" (formula "4") (ifInst "" (formula "21")) (ifInst "" (formula "8"))) + (rule "inEqSimp_homoInEq1" (formula "5")) + (rule "polySimp_addComm1" (formula "5") (term "0")) + (rule "inEqSimp_sepPosMonomial0" (formula "5")) + (rule "polySimp_mulComm0" (formula "5") (term "1")) + (rule "polySimp_rightDist" (formula "5") (term "1")) + (rule "mul_literals" (formula "5") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "5") (term "1,1")) + (rule "polySimp_elimOne" (formula "5") (term "1,1")) + (rule "elementOfSetMinus" (formula "4") (term "0,0")) + (builtin "One Step Simplification" (formula "4")) + (rule "ifthenelse_negated" (formula "4") (term "0")) + (rule "elementOfUnionEQ" (formula "4") (term "0,0") (ifseqformula "11")) + (builtin "One Step Simplification" (formula "4")) + (rule "applyEqReverse" (formula "5") (term "1,1") (ifseqformula "4")) + (rule "hideAuxiliaryEq" (formula "4")) + (rule "inEqSimp_homoInEq0" (formula "4")) + (rule "polySimp_addComm1" (formula "4") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "4")) + (rule "polySimp_mulComm0" (formula "4") (term "1")) + (rule "polySimp_rightDist" (formula "4") (term "1")) + (rule "polySimp_mulLiterals" (formula "4") (term "1,1")) + (rule "mul_literals" (formula "4") (term "0,1")) + (rule "polySimp_elimOne" (formula "4") (term "1,1")) + (rule "replace_known_left" (formula "2") (term "0") (ifseqformula "4")) + (builtin "One Step Simplification" (formula "2")) + (rule "andLeft" (formula "2")) + (rule "andLeft" (formula "2")) + (rule "applyEq" (formula "23") (term "0") (ifseqformula "2")) + (rule "eqSymm" (formula "23")) + (rule "nnf_imp2or" (formula "13") (term "1,0,1,0,1,0")) + (rule "nnf_imp2or" (formula "3") (term "0")) + (rule "nnf_imp2or" (formula "13") (term "0")) + (rule "nnf_imp2or" (formula "3") (term "1,0")) + (rule "nnf_notAnd" (formula "3") (term "0,0")) + (rule "inEqSimp_notGeq" (formula "3") (term "0,0,0")) + (rule "mul_literals" (formula "3") (term "1,0,0,0,0,0")) + (rule "add_zero_right" (formula "3") (term "0,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "3") (term "0,0,0")) + (rule "mul_literals" (formula "3") (term "1,0,0,0")) + (rule "inEqSimp_notLeq" (formula "3") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "3") (term "1,0,0,1,0,0")) + (rule "mul_literals" (formula "3") (term "0,1,0,0,1,0,0")) + (rule "polySimp_addAssoc" (formula "3") (term "0,0,1,0,0")) + (rule "add_literals" (formula "3") (term "0,0,0,1,0,0")) + (rule "add_zero_left" (formula "3") (term "0,0,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "3") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "3") (term "1,1,0,0")) + (rule "nnf_notAnd" (formula "13") (term "0,0")) + (rule "inEqSimp_notLeq" (formula "13") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "13") (term "1,0,0,1,0,0")) + (rule "mul_literals" (formula "13") (term "0,1,0,0,1,0,0")) + (rule "polySimp_addAssoc" (formula "13") (term "0,0,1,0,0")) + (rule "add_literals" (formula "13") (term "0,0,0,1,0,0")) + (rule "add_zero_left" (formula "13") (term "0,0,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "13") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "13") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "13") (term "1,1,0,0")) + (rule "inEqSimp_notGeq" (formula "13") (term "0,0,0")) + (rule "times_zero_1" (formula "13") (term "1,0,0,0,0,0")) + (rule "add_zero_right" (formula "13") (term "0,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "13") (term "0,0,0")) + (rule "mul_literals" (formula "13") (term "1,0,0,0")) + (rule "nnf_imp2or" (formula "13") (term "0,1,0,1,0")) + (rule "nnf_notAnd" (formula "13") (term "0,0,1,0,1,0")) + (rule "inEqSimp_notGeq" (formula "13") (term "0,0,0,1,0,1,0")) + (rule "mul_literals" (formula "13") (term "1,0,0,0,0,0,1,0,1,0")) + (rule "add_zero_right" (formula "13") (term "0,0,0,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "13") (term "0,0,0,1,0,1,0")) + (rule "mul_literals" (formula "13") (term "1,0,0,0,1,0,1,0")) + (rule "inEqSimp_notLeq" (formula "13") (term "1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "13") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "13") (term "0,1,0,0,1,0,0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "13") (term "0,0,1,0,0,1,0,1,0")) + (rule "add_literals" (formula "13") (term "0,0,0,1,0,0,1,0,1,0")) + (rule "add_zero_left" (formula "13") (term "0,0,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "13") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "13") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "13") (term "1,1,0,0,1,0,1,0")) + (rule "commute_or_2" (formula "3") (term "0")) + (rule "shift_paren_or" (formula "3") (term "0,0")) + (rule "commute_or" (formula "3") (term "0,0,0")) + (rule "lenNonNegative" (formula "17") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "17")) + (rule "applyEq" (formula "17") (term "0") (ifseqformula "18")) + (rule "inEqSimp_subsumption1" (formula "17") (ifseqformula "1")) + (rule "leq_literals" (formula "17") (term "0")) + (builtin "One Step Simplification" (formula "17")) + (rule "true_left" (formula "17")) + (rule "lenNonNegative" (formula "16") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "16")) + (rule "applyEq" (formula "16") (term "0") (ifseqformula "17")) + (rule "inEqSimp_subsumption1" (formula "16") (ifseqformula "1")) + (rule "leq_literals" (formula "16") (term "0")) + (builtin "One Step Simplification" (formula "16")) + (rule "true_left" (formula "16")) + (rule "ifthenelse_to_or_left" (formula "13") (term "1,1,0")) + (rule "eqSymm" (formula "13") (term "1,1,1,1,0")) + (rule "eqSymm" (formula "13") (term "1,0,1,1,0")) + (rule "commute_or" (formula "13") (term "1,1,1,0")) + (rule "commute_or" (formula "13") (term "0,1,1,0")) + (rule "shift_paren_or" (formula "13") (term "0,1,0,1,0")) + (rule "seqGetAlphaCast" (formula "21") (term "1,1")) + (rule "castedGetAny" (formula "1") (term "0")) + (builtin "One Step Simplification" (formula "1")) + (rule "true_left" (formula "1")) + (rule "commute_or_2" (formula "13") (term "0,0,1,0,1,0")) + (rule "commute_or" (formula "13") (term "0,0,0,1,0,1,0")) + (rule "ifthenelse_split" (formula "4") (term "0")) + (branch "self.size = 1 + i_0 TRUE" + (rule "eqSymm" (formula "5")) + (rule "applyEq" (formula "1") (term "0") (ifseqformula "4")) + (rule "inEqSimp_homoInEq1" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0")) + (rule "polySimp_rightDist" (formula "1") (term "1,0")) + (rule "mul_literals" (formula "1") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0")) + (rule "add_literals" (formula "1") (term "0,0")) + (rule "add_zero_left" (formula "1") (term "0")) + (rule "applyEq" (formula "14") (term "1,1,0,0") (ifseqformula "4")) + (rule "applyEq" (formula "7") (term "0") (ifseqformula "4")) + (rule "inEqSimp_homoInEq1" (formula "7")) + (rule "polySimp_pullOutFactor1" (formula "7") (term "0")) + (rule "add_literals" (formula "7") (term "1,0")) + (rule "times_zero_1" (formula "7") (term "0")) + (rule "leq_literals" (formula "7")) + (rule "true_left" (formula "7")) + (rule "applyEq" (formula "13") (term "1,1,0,0,1,0,1,0") (ifseqformula "4")) + (rule "applyEq" (formula "3") (term "1,1,0") (ifseqformula "4")) + (rule "applyEq" (formula "12") (term "1,1,1,0,0,1,0") (ifseqformula "4")) + (rule "polySimp_addAssoc" (formula "12") (term "1,1,0,0,1,0")) + (rule "add_literals" (formula "12") (term "0,1,1,0,0,1,0")) + (rule "add_zero_left" (formula "12") (term "1,1,0,0,1,0")) + (rule "applyEq" (formula "15") (term "1,1,0") (ifseqformula "4")) + (rule "polySimp_addAssoc" (formula "15") (term "1,0")) + (rule "add_literals" (formula "15") (term "0,1,0")) + (rule "add_zero_left" (formula "15") (term "1,0")) + (rule "applyEq" (formula "5") (term "1,0") (ifseqformula "15")) + (rule "applyEq" (formula "2") (term "1,1") (ifseqformula "15")) + (rule "applyEq" (formula "19") (term "1,0") (ifseqformula "15")) + (rule "applyEq" (formula "21") (term "1,1") (ifseqformula "15")) + (rule "applyEq" (formula "21") (term "1,0") (ifseqformula "15")) + (rule "applyEq" (formula "3") (term "1,0,0,0,0,0") (ifseqformula "15")) + (rule "applyEq" (formula "20") (term "0") (ifseqformula "15")) + (rule "referencedObjectIsCreatedRight" (formula "19") (ifseqformula "20")) + (rule "close" (formula "19") (ifseqformula "7")) + ) + (branch "self.size = 1 + i_0 FALSE" + (rule "eqSymm" (formula "4")) + (rule "inEqSimp_strengthen1" (formula "6") (ifseqformula "18")) + (rule "polySimp_addAssoc" (formula "6") (term "1")) + (rule "add_literals" (formula "6") (term "0,1")) + (rule "inEqSimp_contradEq7" (formula "18") (ifseqformula "6")) + (rule "polySimp_rightDist" (formula "18") (term "1,0,0")) + (rule "mul_literals" (formula "18") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "18") (term "0,0")) + (rule "polySimp_addComm1" (formula "18") (term "0,0,0")) + (rule "add_literals" (formula "18") (term "0,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "18") (term "0,0")) + (rule "add_literals" (formula "18") (term "1,1,0,0")) + (rule "times_zero_1" (formula "18") (term "1,0,0")) + (rule "add_zero_right" (formula "18") (term "0,0")) + (rule "leq_literals" (formula "18") (term "0")) + (builtin "One Step Simplification" (formula "18")) + (rule "false_right" (formula "18")) + (rule "seqGetAlphaCast" (formula "15") (term "0")) + (rule "castedGetAny" (formula "15") (term "0")) + (builtin "One Step Simplification" (formula "15")) + (rule "true_left" (formula "15")) + (rule "seqGetAlphaCast" (formula "14") (term "0")) + (rule "castedGetAny" (formula "14") (term "0")) + (builtin "One Step Simplification" (formula "14")) + (rule "true_left" (formula "14")) + (rule "all_pull_out1" (formula "13") (term "0,1,0")) + (rule "all_pull_out0" (formula "13") (term "1,0")) + (rule "shift_paren_and" (formula "13") (term "0,1,0")) + (rule "all_pull_out3" (formula "13") (term "0")) + (rule "cnf_rightDist" (formula "13") (term "0,0")) + (rule "distr_forallAnd" (formula "13") (term "0")) + (builtin "One Step Simplification" (formula "13")) + (rule "distr_forallAnd" (formula "13")) + (rule "andLeft" (formula "13")) + (rule "shift_paren_or" (formula "14") (term "0")) + (rule "commute_or_2" (formula "14") (term "0,0")) + (rule "inEqSimp_or_weaken3" (formula "14") (term "0")) + (rule "polySimp_addAssoc" (formula "14") (term "1,0,1,0")) + (rule "add_literals" (formula "14") (term "0,1,0,1,0")) + (rule "add_zero_left" (formula "14") (term "1,0,1,0")) + (builtin "One Step Simplification" (formula "14")) + (rule "cnf_rightDist" (formula "13") (term "0,0")) + (rule "distr_forallAnd" (formula "13") (term "0")) + (builtin "One Step Simplification" (formula "13")) + (rule "distr_forallAnd" (formula "13")) + (rule "andLeft" (formula "13")) + (rule "commute_or_2" (formula "14") (term "0")) + (builtin "One Step Simplification" (formula "14")) + (rule "inEqSimp_homoInEq0" (formula "14") (term "0,1")) + (rule "polySimp_mulComm0" (formula "14") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "14") (term "1,0,0,1")) + (rule "mul_literals" (formula "14") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "14") (term "0,0,1")) + (rule "add_literals" (formula "14") (term "0,0,0,1")) + (rule "add_zero_left" (formula "14") (term "0,0,1")) + (rule "inEqSimp_homoInEq1" (formula "14") (term "1,1")) + (rule "polySimp_mulComm0" (formula "14") (term "1,0,1,1")) + (rule "polySimp_rightDist" (formula "14") (term "1,0,1,1")) + (rule "mul_literals" (formula "14") (term "0,1,0,1,1")) + (rule "polySimp_addAssoc" (formula "14") (term "0,1,1")) + (rule "polySimp_addComm0" (formula "14") (term "0,0,1,1")) + (rule "polySimp_pullOutFactor1b" (formula "14") (term "0,1,1")) + (rule "add_literals" (formula "14") (term "1,1,0,1,1")) + (rule "times_zero_1" (formula "14") (term "1,0,1,1")) + (rule "add_zero_right" (formula "14") (term "0,1,1")) + (rule "leq_literals" (formula "14") (term "1,1")) + (builtin "One Step Simplification" (formula "14")) + (rule "applyEq" (formula "14") (term "1,0,0") (ifseqformula "17")) + (rule "inEqSimp_invertInEq1" (formula "14") (term "1")) + (rule "mul_literals" (formula "14") (term "1,1")) + (rule "polySimp_mulLiterals" (formula "14") (term "0,1")) + (rule "polySimp_elimOne" (formula "14") (term "0,1")) + (rule "inEqSimp_contradInEq1" (formula "14") (term "1") (ifseqformula "1")) + (rule "qeq_literals" (formula "14") (term "0,1")) + (builtin "One Step Simplification" (formula "14")) + (rule "cnf_rightDist" (formula "13") (term "0,0")) + (rule "distr_forallAnd" (formula "13") (term "0")) + (builtin "One Step Simplification" (formula "13")) + (rule "distr_forallAnd" (formula "13")) + (rule "andLeft" (formula "13")) + (rule "commute_or_2" (formula "14") (term "0,0")) + (rule "commute_or_2" (formula "14") (term "0,0,0")) + (rule "cnf_rightDist" (formula "13") (term "0")) + (rule "distr_forallAnd" (formula "13")) + (rule "andLeft" (formula "13")) + (rule "commute_or" (formula "14") (term "0")) + (rule "commute_or_2" (formula "13") (term "0")) + (rule "commute_or" (formula "13") (term "0,0")) + (rule "commute_or_2" (formula "15") (term "0,0,0,0")) + (rule "shift_paren_or" (formula "15") (term "0,0,0,0,0")) + (rule "seqGetAlphaCast" (formula "2") (term "0")) + (rule "castedGetAny" (formula "2") (term "0")) + (builtin "One Step Simplification" (formula "2")) + (rule "true_left" (formula "2")) + (rule "allLeft" (formula "3") (inst "t=add(Z(1(#)), i_0)")) + (rule "polySimp_homoEq" (formula "3") (term "1,0")) + (rule "polySimp_mulComm0" (formula "3") (term "1,0,1,0")) + (rule "polySimp_rightDist" (formula "3") (term "1,0,1,0")) + (rule "mul_literals" (formula "3") (term "0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "3") (term "0,1,0")) + (rule "polySimp_addComm0" (formula "3") (term "0,0,1,0")) + (rule "polySimp_pullOutFactor1b" (formula "3") (term "0,1,0")) + (rule "add_literals" (formula "3") (term "1,1,0,1,0")) + (rule "times_zero_1" (formula "3") (term "1,0,1,0")) + (rule "add_zero_right" (formula "3") (term "0,1,0")) + (rule "equal_literals" (formula "3") (term "1,0")) + (builtin "One Step Simplification" (formula "3")) + (rule "inEqSimp_commuteGeq" (formula "3") (term "1")) + (rule "inEqSimp_homoInEq0" (formula "3") (term "1,0")) + (rule "polySimp_mulComm0" (formula "3") (term "1,0,1,0")) + (rule "polySimp_rightDist" (formula "3") (term "1,0,1,0")) + (rule "mul_literals" (formula "3") (term "0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "3") (term "0,1,0")) + (rule "add_literals" (formula "3") (term "0,0,1,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "3") (term "1,0")) + (rule "polySimp_mulLiterals" (formula "3") (term "0,1,0")) + (rule "polySimp_elimOne" (formula "3") (term "0,1,0")) + (rule "inEqSimp_contradInEq1" (formula "3") (term "1,0") (ifseqformula "6")) + (rule "qeq_literals" (formula "3") (term "0,1,0")) + (builtin "One Step Simplification" (formula "3")) + (rule "inEqSimp_contradInEq1" (formula "3") (term "1") (ifseqformula "7")) + (rule "inEqSimp_homoInEq1" (formula "3") (term "0,1")) + (rule "polySimp_mulComm0" (formula "3") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "3") (term "1,0,0,1")) + (rule "mul_literals" (formula "3") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "3") (term "0,0,1")) + (rule "polySimp_addComm1" (formula "3") (term "0,0,0,1")) + (rule "add_literals" (formula "3") (term "0,0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "3") (term "0,0,1")) + (rule "add_literals" (formula "3") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "3") (term "1,0,0,1")) + (rule "add_zero_right" (formula "3") (term "0,0,1")) + (rule "leq_literals" (formula "3") (term "0,1")) + (builtin "One Step Simplification" (formula "3")) + (rule "notLeft" (formula "3")) + (rule "seqGetAlphaCast" (formula "4") (term "1")) + (rule "castedGetAny" (formula "4") (term "0")) + (builtin "One Step Simplification" (formula "4")) + (rule "true_left" (formula "4")) + (rule "onlyCreatedObjectsAreReferenced" (formula "19") (term "1") (ifseqformula "7")) + (rule "onlyCreatedObjectsAreReferenced" (formula "18") (term "1") (ifseqformula "7")) + (rule "replace_known_right" (formula "18") (term "1") (ifseqformula "25")) + (builtin "One Step Simplification" (formula "18")) + (rule "applyEq" (formula "25") (term "1,0") (ifseqformula "18")) + (rule "applyEq" (formula "19") (term "1") (ifseqformula "18")) + (rule "allLeft" (formula "13") (inst "t=Z(0(#))")) + (rule "leq_literals" (formula "13") (term "1,0")) + (builtin "One Step Simplification" (formula "13") (ifInst "" (formula "20"))) + (rule "inEqSimp_commuteGeq" (formula "13")) + (rule "inEqSimp_contradInEq1" (formula "13") (ifseqformula "1")) + (rule "qeq_literals" (formula "13") (term "0")) + (builtin "One Step Simplification" (formula "13")) + (rule "closeFalse" (formula "13")) + ) + ) + (branch "Step Case" + (builtin "One Step Simplification" (formula "13")) + (builtin "One Step Simplification" (formula "12")) + (builtin "One Step Simplification" (formula "4")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "20"))) + (rule "andLeft" (formula "4")) + (rule "allRight" (formula "19") (inst "sk=nv_0")) + (rule "impRight" (formula "19")) + (rule "andLeft" (formula "1")) + (rule "impRight" (formula "21")) + (rule "eqSymm" (formula "19")) + (rule "eqSymm" (formula "21")) + (rule "eqSymm" (formula "20")) + (rule "eqSymm" (formula "18")) + (rule "eqSymm" (formula "27")) + (rule "eqSymm" (formula "17") (term "1,1,0")) + (rule "eqSymm" (formula "17") (term "0,1,0,1,0,1,0")) + (rule "eqSymm" (formula "17") (term "1,1,0,1,0,1,0")) + (rule "eqSymm" (formula "17") (term "1,0,0,1,0")) + (rule "eqSymm" (formula "16")) + (rule "eqSymm" (formula "4") (term "0,0,1")) + (rule "eqSymm" (formula "4") (term "0,1,1,1")) + (rule "eqSymm" (formula "4") (term "0,1,0,1,0,1")) + (rule "eqSymm" (formula "4") (term "1,1,0,1,0,1")) + (rule "eqSymm" (formula "4") (term "1,1")) + (rule "replace_known_left" (formula "4") (term "0,0") (ifseqformula "7")) + (builtin "One Step Simplification" (formula "4")) + (rule "polySimp_elimSub" (formula "19") (term "1,0,2,0")) + (rule "mul_literals" (formula "19") (term "1,1,0,2,0")) + (rule "polySimp_elimSub" (formula "17") (term "1,0,0,1,1,0")) + (rule "mul_literals" (formula "17") (term "1,1,0,0,1,1,0")) + (rule "polySimp_elimSub" (formula "4") (term "0,0,0,1,1")) + (rule "mul_literals" (formula "4") (term "1,0,0,0,1,1")) + (rule "polySimp_homoEq" (formula "4") (term "0,0,1,1")) + (rule "polySimp_mulComm0" (formula "4") (term "1,0,0,0,1,1")) + (rule "polySimp_addComm0" (formula "22") (term "1,0,1,0")) + (rule "polySimp_addComm0" (formula "1") (term "0")) + (rule "polySimp_addComm0" (formula "17") (term "1,0,2,0,1,1,0")) + (rule "polySimp_addComm0" (formula "4") (term "1,0,2,0,1,1")) + (rule "polySimp_addComm0" (formula "19") (term "1,0,2,0")) + (rule "polySimp_addComm0" (formula "17") (term "1,0,0,1,1,0")) + (rule "polySimp_addComm0" (formula "4") (term "1,1,0,0,0,1,1")) + (rule "polySimp_rightDist" (formula "4") (term "1,0,0,0,1,1")) + (rule "mul_literals" (formula "4") (term "0,1,0,0,0,1,1")) + (rule "castedGetAny" (formula "23") (term "1,0")) + (rule "castedGetAny" (formula "25") (term "1,1")) + (rule "subsetSingletonLeft" (formula "14")) + (rule "castedGetAny" (formula "25") (term "1,0")) + (rule "subsetSingletonLeft" (formula "15")) + (rule "castedGetAny" (formula "24") (term "0")) + (rule "castedGetAny" (formula "17") (term "0,0,0,0,0,1,0")) + (rule "castedGetAny" (formula "3") (term "1,0,1")) + (rule "castedGetAny" (formula "18") (term "2,0")) + (rule "castedGetAny" (formula "27") (term "0")) + (rule "eqSymm" (formula "27")) + (rule "castedGetAny" (formula "17") (term "1,1,1,1,0")) + (rule "castedGetAny" (formula "17") (term "0,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "17") (term "1,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "17") (term "1,1,1,0,0,1,0")) + (rule "castedGetAny" (formula "17") (term "0,1,0,0,1,0")) + (rule "eqSymm" (formula "17") (term "1,0,0,1,0")) + (rule "castedGetAny" (formula "16") (term "0,1,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "17") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "17") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,0,1,0,0")) + (rule "inEqSimp_ltToLeq" (formula "8")) + (rule "polySimp_mulComm0" (formula "8") (term "1,0,0")) + (rule "polySimp_addComm1" (formula "8") (term "0")) + (rule "castedGetAny" (formula "4") (term "1,0,1,0,1,0,1")) + (rule "castedGetAny" (formula "4") (term "1,1,1,1")) + (rule "castedGetAny" (formula "4") (term "0,0,0,1")) + (rule "eqSymm" (formula "4") (term "0,0,1")) + (rule "castedGetAny" (formula "4") (term "0,0,1,0,1,0,1")) + (rule "inEqSimp_ltToLeq" (formula "3") (term "0")) + (rule "polySimp_mulComm0" (formula "3") (term "1,0,0,0")) + (rule "polySimp_addComm1" (formula "3") (term "0,0")) + (rule "polySimp_addAssoc" (formula "4") (term "0,0,0,1,1")) + (rule "polySimp_addComm0" (formula "4") (term "0,0,0,0,1,1")) + (rule "castedGetAny" (formula "22") (term "1,0")) + (rule "castedGetAny" (formula "17") (term "2,0,1,1,0")) + (rule "castedGetAny" (formula "4") (term "2,0,1,1")) + (rule "castedGetAny" (formula "19") (term "2,0")) + (rule "inEqSimp_ltToLeq" (formula "16") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "16") (term "1,0,0,1,0,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "4") (term "0")) + (rule "polySimp_mulComm0" (formula "4") (term "1,0,0,0")) + (rule "polySimp_addComm1" (formula "4") (term "0,0")) + (rule "inEqSimp_ltToLeq" (formula "4") (term "1,0,0,1,0,1")) + (rule "polySimp_mulComm0" (formula "4") (term "1,0,0,1,0,0,1,0,1")) + (rule "castedGetAny" (formula "27") (term "1,0")) + (rule "inEqSimp_ltToLeq" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0")) + (rule "polySimp_addComm1" (formula "1") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "17") (term "0,0,0,1,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "17") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "7")) + (rule "castedGetAny" (formula "4") (term "1,0,0,0,1")) + (rule "eqSymm" (formula "4") (term "0,0,1")) + (rule "inEqSimp_commuteLeq" (formula "16") (term "0,0,0,1,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "4") (term "0,0,0,1,0,1")) + (rule "polySimp_sepNegMonomial" (formula "4") (term "0,0,1,1")) + (rule "polySimp_mulLiterals" (formula "4") (term "0,0,0,1,1")) + (rule "polySimp_elimOne" (formula "4") (term "0,0,0,1,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "17") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "17") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "17") (term "1,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "17") (term "0,1,1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "17") (term "1,1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "17") (term "1,1,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "17") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "17") (term "1,1,0,0")) + (rule "polySimp_rightDist" (formula "17") (term "1,1,0,0")) + (rule "mul_literals" (formula "17") (term "0,1,1,0,0")) + (rule "polySimp_mulLiterals" (formula "17") (term "1,1,1,0,0")) + (rule "polySimp_elimOne" (formula "17") (term "1,1,1,0,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "8")) + (rule "polySimp_mulLiterals" (formula "8") (term "0")) + (rule "polySimp_elimOne" (formula "8") (term "0")) + (rule "inEqSimp_sepNegMonomial0" (formula "3") (term "0")) + (rule "polySimp_mulLiterals" (formula "3") (term "0,0")) + (rule "polySimp_elimOne" (formula "3") (term "0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "16") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "16") (term "1,1,0,0,1,0")) + (rule "polySimp_rightDist" (formula "16") (term "1,1,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "16") (term "1,1,1,0,0,1,0")) + (rule "mul_literals" (formula "16") (term "0,1,1,0,0,1,0")) + (rule "polySimp_elimOne" (formula "16") (term "1,1,1,0,0,1,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "4") (term "0")) + (rule "polySimp_mulLiterals" (formula "4") (term "0,0")) + (rule "polySimp_elimOne" (formula "4") (term "0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "4") (term "1,0,0,1,0,1")) + (rule "polySimp_mulComm0" (formula "4") (term "1,1,0,0,1,0,1")) + (rule "polySimp_rightDist" (formula "4") (term "1,1,0,0,1,0,1")) + (rule "mul_literals" (formula "4") (term "0,1,1,0,0,1,0,1")) + (rule "polySimp_mulLiterals" (formula "4") (term "1,1,1,0,0,1,0,1")) + (rule "polySimp_elimOne" (formula "4") (term "1,1,1,0,0,1,0,1")) + (rule "inEqSimp_sepNegMonomial0" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "0")) + (rule "polySimp_elimOne" (formula "1") (term "0")) + (rule "inEqSimp_subsumption1" (formula "3") (term "0") (ifseqformula "1")) + (rule "inEqSimp_homoInEq0" (formula "3") (term "0,0")) + (rule "polySimp_mulComm0" (formula "3") (term "1,0,0,0")) + (rule "polySimp_rightDist" (formula "3") (term "1,0,0,0")) + (rule "mul_literals" (formula "3") (term "0,1,0,0,0")) + (rule "polySimp_addAssoc" (formula "3") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "3") (term "0,0,0,0")) + (rule "add_literals" (formula "3") (term "0,0,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "3") (term "0,0,0")) + (rule "add_literals" (formula "3") (term "1,1,0,0,0")) + (rule "times_zero_1" (formula "3") (term "1,0,0,0")) + (rule "add_zero_right" (formula "3") (term "0,0,0")) + (rule "qeq_literals" (formula "3") (term "0,0")) + (builtin "One Step Simplification" (formula "3")) + (rule "pullOutSelect" (formula "6") (term "0") (inst "selectSK=List_seq_0")) + (rule "simplifySelectOfAnon" (formula "6")) + (builtin "One Step Simplification" (formula "6") (ifInst "" (formula "27")) (ifInst "" (formula "12"))) + (rule "eqSymm" (formula "7")) + (rule "applyEqReverse" (formula "6") (term "1") (ifseqformula "7")) + (builtin "One Step Simplification" (formula "6")) + (rule "hideAuxiliaryEq" (formula "7")) + (rule "pullOutSelect" (formula "5") (term "0") (inst "selectSK=LinkedList_nodeseq_0")) + (rule "simplifySelectOfAnon" (formula "5")) + (builtin "One Step Simplification" (formula "5") (ifInst "" (formula "27")) (ifInst "" (formula "12"))) + (rule "eqSymm" (formula "6")) + (rule "applyEqReverse" (formula "5") (term "1") (ifseqformula "6")) + (builtin "One Step Simplification" (formula "5")) + (rule "hideAuxiliaryEq" (formula "6")) + (rule "elementOfUnionEQ" (formula "14") (ifseqformula "16")) + (builtin "One Step Simplification" (formula "14")) + (rule "true_left" (formula "14")) + (rule "elementOfUnionEQ" (formula "14") (ifseqformula "15")) + (builtin "One Step Simplification" (formula "14")) + (rule "true_left" (formula "14")) + (rule "elementOfSetMinus" (formula "6") (term "0,0")) + (builtin "One Step Simplification" (formula "6")) + (rule "elementOfSetMinus" (formula "5") (term "0,0")) + (builtin "One Step Simplification" (formula "5")) + (rule "elementOfUnionEQ" (formula "6") (term "0") (ifseqformula "14")) + (builtin "One Step Simplification" (formula "6")) + (rule "true_left" (formula "6")) + (rule "elementOfUnionEQ" (formula "5") (term "0") (ifseqformula "13")) + (builtin "One Step Simplification" (formula "5")) + (rule "true_left" (formula "5")) + (rule "pullOutSelect" (formula "23") (term "0") (inst "selectSK=Node_data_0")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "21")) (ifInst "" (formula "20"))) + (rule "applyEqReverse" (formula "24") (term "0") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "eqSymm" (formula "23")) + (rule "pullOutSelect" (formula "6") (term "0") (inst "selectSK=LinkedList_size_0")) + (rule "simplifySelectOfAnon" (formula "6")) + (builtin "One Step Simplification" (formula "6") (ifInst "" (formula "23")) (ifInst "" (formula "10"))) + (rule "inEqSimp_homoInEq1" (formula "7")) + (rule "polySimp_addComm1" (formula "7") (term "0")) + (rule "inEqSimp_sepPosMonomial0" (formula "7")) + (rule "polySimp_mulComm0" (formula "7") (term "1")) + (rule "polySimp_rightDist" (formula "7") (term "1")) + (rule "mul_literals" (formula "7") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "7") (term "1,1")) + (rule "polySimp_elimOne" (formula "7") (term "1,1")) + (rule "elementOfSetMinus" (formula "6") (term "0,0")) + (builtin "One Step Simplification" (formula "6")) + (rule "ifthenelse_negated" (formula "6") (term "0")) + (rule "elementOfUnionEQ" (formula "6") (term "0,0") (ifseqformula "13")) + (builtin "One Step Simplification" (formula "6")) + (rule "applyEqReverse" (formula "7") (term "1,1") (ifseqformula "6")) + (rule "hideAuxiliaryEq" (formula "6")) + (rule "inEqSimp_homoInEq0" (formula "6")) + (rule "polySimp_addComm1" (formula "6") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "6")) + (rule "polySimp_mulComm0" (formula "6") (term "1")) + (rule "polySimp_rightDist" (formula "6") (term "1")) + (rule "mul_literals" (formula "6") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "6") (term "1,1")) + (rule "polySimp_elimOne" (formula "6") (term "1,1")) + (rule "replace_known_left" (formula "4") (term "0") (ifseqformula "6")) + (builtin "One Step Simplification" (formula "4")) + (rule "andLeft" (formula "4")) + (rule "andLeft" (formula "4")) + (rule "applyEq" (formula "25") (term "0") (ifseqformula "4")) + (rule "eqSymm" (formula "25")) + (rule "nnf_imp2or" (formula "15") (term "1,0,1,0,1,0")) + (rule "nnf_imp2or" (formula "5") (term "0")) + (rule "nnf_imp2or" (formula "15") (term "0")) + (rule "nnf_notAnd" (formula "5") (term "0,0")) + (rule "inEqSimp_notGeq" (formula "5") (term "0,0,0")) + (rule "mul_literals" (formula "5") (term "1,0,0,0,0,0")) + (rule "add_zero_right" (formula "5") (term "0,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "5") (term "0,0,0")) + (rule "mul_literals" (formula "5") (term "1,0,0,0")) + (rule "inEqSimp_notLeq" (formula "5") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "5") (term "1,0,0,1,0,0")) + (rule "mul_literals" (formula "5") (term "0,1,0,0,1,0,0")) + (rule "polySimp_addAssoc" (formula "5") (term "0,0,1,0,0")) + (rule "add_literals" (formula "5") (term "0,0,0,1,0,0")) + (rule "add_zero_left" (formula "5") (term "0,0,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "5") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "5") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "5") (term "1,1,0,0")) + (rule "nnf_imp2or" (formula "5") (term "1,0")) + (rule "nnf_notAnd" (formula "15") (term "0,0")) + (rule "inEqSimp_notLeq" (formula "15") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "15") (term "1,0,0,1,0,0")) + (rule "mul_literals" (formula "15") (term "0,1,0,0,1,0,0")) + (rule "polySimp_addAssoc" (formula "15") (term "0,0,1,0,0")) + (rule "add_literals" (formula "15") (term "0,0,0,1,0,0")) + (rule "add_zero_left" (formula "15") (term "0,0,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "15") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "15") (term "1,1,0,0")) + (rule "inEqSimp_notGeq" (formula "15") (term "0,0,0")) + (rule "mul_literals" (formula "15") (term "1,0,0,0,0,0")) + (rule "add_literals" (formula "15") (term "0,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "15") (term "0,0,0")) + (rule "mul_literals" (formula "15") (term "1,0,0,0")) + (rule "nnf_imp2or" (formula "15") (term "0,1,0,1,0")) + (rule "nnf_notAnd" (formula "15") (term "0,0,1,0,1,0")) + (rule "inEqSimp_notGeq" (formula "15") (term "0,0,0,1,0,1,0")) + (rule "mul_literals" (formula "15") (term "1,0,0,0,0,0,1,0,1,0")) + (rule "add_zero_right" (formula "15") (term "0,0,0,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "15") (term "0,0,0,1,0,1,0")) + (rule "mul_literals" (formula "15") (term "1,0,0,0,1,0,1,0")) + (rule "inEqSimp_notLeq" (formula "15") (term "1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "15") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "15") (term "0,1,0,0,1,0,0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "15") (term "0,0,1,0,0,1,0,1,0")) + (rule "add_literals" (formula "15") (term "0,0,0,1,0,0,1,0,1,0")) + (rule "add_zero_left" (formula "15") (term "0,0,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "15") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "15") (term "1,1,0,0,1,0,1,0")) + (rule "commute_or_2" (formula "5") (term "0")) + (rule "ifthenelse_split" (formula "16") (term "0")) + (branch "self.size = 0 TRUE" + (rule "eqSymm" (formula "17")) + (rule "replace_known_left" (formula "18") (term "0,0") (ifseqformula "16")) + (builtin "One Step Simplification" (formula "18")) + (rule "eqSymm" (formula "18")) + (rule "applyEq" (formula "1") (term "0") (ifseqformula "16")) + (rule "inEqSimp_homoInEq1" (formula "1")) + (rule "mul_literals" (formula "1") (term "1,0")) + (rule "add_zero_right" (formula "1") (term "0")) + (rule "applyEq" (formula "6") (term "0,0,0") (ifseqformula "16")) + (rule "polySimp_homoEq" (formula "6") (term "0,0")) + (rule "mul_literals" (formula "6") (term "1,0,0,0")) + (rule "add_zero_right" (formula "6") (term "0,0,0")) + (rule "applyEq" (formula "15") (term "1,1,0,0,1,0,1,0") (ifseqformula "16")) + (rule "applyEq" (formula "15") (term "1,1,0,0") (ifseqformula "16")) + (rule "applyEq" (formula "5") (term "1,1,0") (ifseqformula "16")) + (rule "applyEq" (formula "14") (term "1,1,1,0,0,1,0") (ifseqformula "16")) + (rule "add_zero_right" (formula "14") (term "1,1,0,0,1,0")) + (rule "applyEq" (formula "8") (term "0") (ifseqformula "16")) + (rule "inEqSimp_homoInEq1" (formula "8")) + (rule "mul_literals" (formula "8") (term "1,0")) + (rule "add_zero_right" (formula "8") (term "0")) + (rule "applyEq" (formula "15") (term "1,1,0,0,1,1,0") (ifseqformula "16")) + (rule "add_zero_right" (formula "15") (term "1,0,0,1,1,0")) + (rule "applyEq" (formula "20") (term "1") (ifseqformula "16")) + (rule "applyEq" (formula "19") (term "1") (ifseqformula "16")) + (rule "polySimp_sepPosMonomial" (formula "6") (term "0,0")) + (rule "mul_literals" (formula "6") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1")) + (rule "mul_literals" (formula "1") (term "1")) + (rule "inEqSimp_sepPosMonomial0" (formula "8")) + (rule "mul_literals" (formula "8") (term "1")) + (rule "inEqSimp_contradEq7" (formula "6") (term "0,0") (ifseqformula "7")) + (rule "add_zero_left" (formula "6") (term "0,0,0,0")) + (rule "mul_literals" (formula "6") (term "0,0,0,0")) + (rule "leq_literals" (formula "6") (term "0,0,0")) + (builtin "One Step Simplification" (formula "6")) + (rule "eqSymm" (formula "6")) + (rule "inEqSimp_contradInEq0" (formula "7") (ifseqformula "8")) + (rule "qeq_literals" (formula "7") (term "0")) + (builtin "One Step Simplification" (formula "7")) + (rule "closeFalse" (formula "7")) + ) + (branch "self.size = 0 FALSE" + (rule "replace_known_right" (formula "17") (term "0,0") (ifseqformula "20")) + (builtin "One Step Simplification" (formula "17")) + (rule "shift_paren_or" (formula "5") (term "0,0")) + (rule "commute_or" (formula "5") (term "0,0,0")) + (rule "lenNonNegative" (formula "19") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "19")) + (rule "applyEq" (formula "19") (term "0") (ifseqformula "20")) + (rule "inEqSimp_strengthen1" (formula "19") (ifseqformula "21")) + (rule "add_zero_right" (formula "19") (term "1")) + (rule "inEqSimp_contradEq7" (formula "21") (ifseqformula "19")) + (rule "times_zero_1" (formula "21") (term "1,0,0")) + (rule "add_zero_right" (formula "21") (term "0,0")) + (rule "leq_literals" (formula "21") (term "0")) + (builtin "One Step Simplification" (formula "21")) + (rule "false_right" (formula "21")) + (rule "lenNonNegative" (formula "18") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "18")) + (rule "applyEq" (formula "18") (term "0") (ifseqformula "19")) + (rule "inEqSimp_subsumption1" (formula "18") (ifseqformula "20")) + (rule "leq_literals" (formula "18") (term "0")) + (builtin "One Step Simplification" (formula "18")) + (rule "true_left" (formula "18")) + (rule "ifthenelse_to_or_left" (formula "15") (term "1,1,0")) + (rule "eqSymm" (formula "15") (term "1,1,1,1,0")) + (rule "eqSymm" (formula "15") (term "1,0,1,1,0")) + (rule "commute_or" (formula "15") (term "1,1,1,0")) + (rule "commute_or" (formula "15") (term "0,1,1,0")) + (rule "shift_paren_or" (formula "15") (term "0,1,0,1,0")) + (rule "seqGetAlphaCast" (formula "22") (term "1,0")) + (rule "castedGetAny" (formula "1") (term "0")) + (builtin "One Step Simplification" (formula "1")) + (rule "true_left" (formula "1")) + (rule "commute_or_2" (formula "15") (term "0,0,1,0,1,0")) + (rule "seqGetAlphaCast" (formula "21") (term "1,0")) + (rule "castedGetAny" (formula "1") (term "0")) + (builtin "One Step Simplification" (formula "1")) + (rule "true_left" (formula "1")) + (rule "commute_or" (formula "15") (term "0,0,0,1,0,1,0")) + (rule "ifthenelse_split" (formula "6") (term "0")) + (branch "self.size = 1 + i_0 TRUE" + (rule "eqSymm" (formula "7")) + (rule "applyEq" (formula "1") (term "0") (ifseqformula "6")) + (rule "inEqSimp_homoInEq1" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0")) + (rule "polySimp_rightDist" (formula "1") (term "1,0")) + (rule "mul_literals" (formula "1") (term "0,1,0")) + (rule "polySimp_addComm1" (formula "1") (term "0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "0,0,0")) + (rule "applyEq" (formula "20") (term "0") (ifseqformula "6")) + (rule "inEqSimp_homoInEq1" (formula "20")) + (rule "polySimp_mulComm0" (formula "20") (term "1,0")) + (rule "polySimp_rightDist" (formula "20") (term "1,0")) + (rule "mul_literals" (formula "20") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "20") (term "0")) + (rule "add_literals" (formula "20") (term "0,0")) + (rule "add_zero_left" (formula "20") (term "0")) + (rule "applyEq" (formula "18") (term "1,1,0") (ifseqformula "6")) + (rule "polySimp_addAssoc" (formula "18") (term "1,0")) + (rule "add_literals" (formula "18") (term "0,1,0")) + (rule "add_zero_left" (formula "18") (term "1,0")) + (rule "applyEq" (formula "15") (term "1,1,1,0,0,1,0") (ifseqformula "6")) + (rule "polySimp_addAssoc" (formula "15") (term "1,1,0,0,1,0")) + (rule "add_literals" (formula "15") (term "0,1,1,0,0,1,0")) + (rule "add_zero_left" (formula "15") (term "1,1,0,0,1,0")) + (rule "applyEq" (formula "9") (term "0") (ifseqformula "6")) + (rule "inEqSimp_homoInEq1" (formula "9")) + (rule "polySimp_pullOutFactor1" (formula "9") (term "0")) + (rule "add_literals" (formula "9") (term "1,0")) + (rule "times_zero_1" (formula "9") (term "0")) + (rule "leq_literals" (formula "9")) + (rule "true_left" (formula "9")) + (rule "applyEq" (formula "5") (term "1,1,0") (ifseqformula "6")) + (rule "applyEq" (formula "15") (term "1,1,0,0") (ifseqformula "6")) + (rule "applyEq" (formula "15") (term "1,1,0,0,1,0,1,0") (ifseqformula "6")) + (rule "applyEq" (formula "4") (term "1,1") (ifseqformula "17")) + (rule "applyEq" (formula "22") (term "1,0") (ifseqformula "17")) + (rule "applyEq" (formula "24") (term "1,0") (ifseqformula "17")) + (rule "eqSymm" (formula "24")) + (rule "applyEq" (formula "23") (term "0") (ifseqformula "17")) + (rule "referencedObjectIsCreatedRight" (formula "22") (ifseqformula "23")) + (rule "close" (formula "22") (ifseqformula "9")) + ) + (branch "self.size = 1 + i_0 FALSE" + (rule "eqSymm" (formula "6")) + (rule "inEqSimp_strengthen1" (formula "8") (ifseqformula "21")) + (rule "polySimp_addAssoc" (formula "8") (term "1")) + (rule "add_literals" (formula "8") (term "0,1")) + (rule "inEqSimp_contradEq7" (formula "21") (ifseqformula "8")) + (rule "polySimp_rightDist" (formula "21") (term "1,0,0")) + (rule "mul_literals" (formula "21") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "21") (term "0,0")) + (rule "polySimp_addComm1" (formula "21") (term "0,0,0")) + (rule "add_literals" (formula "21") (term "0,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "21") (term "0,0")) + (rule "add_literals" (formula "21") (term "1,1,0,0")) + (rule "times_zero_1" (formula "21") (term "1,0,0")) + (rule "add_zero_right" (formula "21") (term "0,0")) + (rule "leq_literals" (formula "21") (term "0")) + (builtin "One Step Simplification" (formula "21")) + (rule "false_right" (formula "21")) + (rule "seqGetAlphaCast" (formula "3") (term "1,0")) + (rule "castedGetAny" (formula "3") (term "0")) + (builtin "One Step Simplification" (formula "3")) + (rule "true_left" (formula "3")) + (rule "all_pull_out1" (formula "15") (term "0,1,0")) + (rule "all_pull_out0" (formula "15") (term "1,0")) + (rule "shift_paren_and" (formula "15") (term "0,1,0")) + (rule "all_pull_out3" (formula "15") (term "0")) + (rule "cnf_rightDist" (formula "15") (term "0,0")) + (rule "distr_forallAnd" (formula "15") (term "0")) + (builtin "One Step Simplification" (formula "15")) + (rule "distr_forallAnd" (formula "15")) + (rule "andLeft" (formula "15")) + (rule "shift_paren_or" (formula "16") (term "0")) + (rule "commute_or_2" (formula "16") (term "0,0")) + (rule "inEqSimp_or_weaken3" (formula "16") (term "0")) + (rule "polySimp_addAssoc" (formula "16") (term "1,0,1,0")) + (rule "add_literals" (formula "16") (term "0,1,0,1,0")) + (rule "add_zero_left" (formula "16") (term "1,0,1,0")) + (builtin "One Step Simplification" (formula "16")) + (rule "cnf_rightDist" (formula "15") (term "0,0")) + (rule "distr_forallAnd" (formula "15") (term "0")) + (builtin "One Step Simplification" (formula "15")) + (rule "distr_forallAnd" (formula "15")) + (rule "andLeft" (formula "15")) + (rule "commute_or_2" (formula "16") (term "0")) + (builtin "One Step Simplification" (formula "16")) + (rule "inEqSimp_homoInEq0" (formula "16") (term "0,1")) + (rule "polySimp_mulComm0" (formula "16") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "16") (term "1,0,0,1")) + (rule "mul_literals" (formula "16") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "16") (term "0,0,1")) + (rule "add_literals" (formula "16") (term "0,0,0,1")) + (rule "add_zero_left" (formula "16") (term "0,0,1")) + (rule "inEqSimp_homoInEq1" (formula "16") (term "1,1")) + (rule "polySimp_mulComm0" (formula "16") (term "1,0,1,1")) + (rule "polySimp_rightDist" (formula "16") (term "1,0,1,1")) + (rule "mul_literals" (formula "16") (term "0,1,0,1,1")) + (rule "polySimp_addAssoc" (formula "16") (term "0,1,1")) + (rule "polySimp_addComm0" (formula "16") (term "0,0,1,1")) + (rule "polySimp_pullOutFactor1b" (formula "16") (term "0,1,1")) + (rule "add_literals" (formula "16") (term "1,1,0,1,1")) + (rule "times_zero_1" (formula "16") (term "1,0,1,1")) + (rule "add_zero_right" (formula "16") (term "0,1,1")) + (rule "leq_literals" (formula "16") (term "1,1")) + (builtin "One Step Simplification" (formula "16")) + (rule "applyEq" (formula "16") (term "1,0,0") (ifseqformula "19")) + (rule "inEqSimp_invertInEq1" (formula "16") (term "1")) + (rule "polySimp_mulLiterals" (formula "16") (term "0,1")) + (rule "times_zero_2" (formula "16") (term "1,1")) + (rule "polySimp_elimOne" (formula "16") (term "0,1")) + (rule "inEqSimp_contradInEq1" (formula "16") (term "1") (ifseqformula "21")) + (rule "qeq_literals" (formula "16") (term "0,1")) + (builtin "One Step Simplification" (formula "16")) + (rule "cnf_rightDist" (formula "15") (term "0,0")) + (rule "distr_forallAnd" (formula "15") (term "0")) + (builtin "One Step Simplification" (formula "15")) + (rule "distr_forallAnd" (formula "15")) + (rule "andLeft" (formula "15")) + (rule "commute_or_2" (formula "16") (term "0,0")) + (rule "commute_or_2" (formula "16") (term "0,0,0")) + (rule "cnf_rightDist" (formula "15") (term "0")) + (rule "distr_forallAnd" (formula "15")) + (rule "andLeft" (formula "15")) + (rule "commute_or" (formula "16") (term "0")) + (rule "commute_or_2" (formula "15") (term "0")) + (rule "commute_or" (formula "15") (term "0,0")) + (rule "commute_or_2" (formula "17") (term "0,0,0,0")) + (rule "shift_paren_or" (formula "17") (term "0,0,0,0,0")) + (rule "seqGetAlphaCast" (formula "4") (term "0")) + (rule "castedGetAny" (formula "4") (term "0")) + (builtin "One Step Simplification" (formula "4")) + (rule "true_left" (formula "4")) + (rule "allLeft" (formula "5") (inst "t=add(Z(1(#)), i_0)")) + (rule "polySimp_homoEq" (formula "5") (term "1,0")) + (rule "polySimp_mulComm0" (formula "5") (term "1,0,1,0")) + (rule "polySimp_rightDist" (formula "5") (term "1,0,1,0")) + (rule "mul_literals" (formula "5") (term "0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "5") (term "0,1,0")) + (rule "polySimp_addComm0" (formula "5") (term "0,0,1,0")) + (rule "polySimp_pullOutFactor1b" (formula "5") (term "0,1,0")) + (rule "add_literals" (formula "5") (term "1,1,0,1,0")) + (rule "times_zero_1" (formula "5") (term "1,0,1,0")) + (rule "add_literals" (formula "5") (term "0,1,0")) + (rule "equal_literals" (formula "5") (term "1,0")) + (builtin "One Step Simplification" (formula "5")) + (rule "inEqSimp_commuteGeq" (formula "5") (term "1")) + (rule "inEqSimp_homoInEq0" (formula "5") (term "1,0")) + (rule "polySimp_mulComm0" (formula "5") (term "1,0,1,0")) + (rule "polySimp_rightDist" (formula "5") (term "1,0,1,0")) + (rule "mul_literals" (formula "5") (term "0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "5") (term "0,1,0")) + (rule "add_literals" (formula "5") (term "0,0,1,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "5") (term "1,0")) + (rule "polySimp_mulLiterals" (formula "5") (term "0,1,0")) + (rule "polySimp_elimOne" (formula "5") (term "0,1,0")) + (rule "inEqSimp_contradInEq1" (formula "5") (term "1") (ifseqformula "9")) + (rule "inEqSimp_homoInEq1" (formula "5") (term "0,1")) + (rule "polySimp_mulComm0" (formula "5") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "5") (term "1,0,0,1")) + (rule "mul_literals" (formula "5") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "5") (term "0,0,1")) + (rule "polySimp_addComm1" (formula "5") (term "0,0,0,1")) + (rule "add_literals" (formula "5") (term "0,0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "5") (term "0,0,1")) + (rule "add_literals" (formula "5") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "5") (term "1,0,0,1")) + (rule "add_zero_right" (formula "5") (term "0,0,1")) + (rule "leq_literals" (formula "5") (term "0,1")) + (builtin "One Step Simplification" (formula "5")) + (rule "inEqSimp_contradInEq1" (formula "5") (term "1") (ifseqformula "8")) + (rule "qeq_literals" (formula "5") (term "0,1")) + (builtin "One Step Simplification" (formula "5")) + (rule "notLeft" (formula "5")) + (rule "seqGetAlphaCast" (formula "20") (term "0")) + (rule "castedGetAny" (formula "20") (term "0")) + (builtin "One Step Simplification" (formula "20")) + (rule "true_left" (formula "20")) + (rule "seqGetAlphaCast" (formula "21") (term "0")) + (rule "castedGetAny" (formula "21") (term "0")) + (builtin "One Step Simplification" (formula "21")) + (rule "true_left" (formula "21")) + (rule "onlyCreatedObjectsAreReferenced" (formula "20") (term "1") (ifseqformula "9")) + (rule "seqGetAlphaCast" (formula "6") (term "1")) + (rule "castedGetAny" (formula "6") (term "0")) + (builtin "One Step Simplification" (formula "6")) + (rule "true_left" (formula "6")) + (rule "allLeft" (formula "19") (inst "t=nv_0")) + (rule "inEqSimp_homoInEq1" (formula "19") (term "1")) + (rule "polySimp_addComm1" (formula "19") (term "0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "19") (term "1")) + (rule "polySimp_mulComm0" (formula "19") (term "1,1")) + (rule "polySimp_rightDist" (formula "19") (term "1,1")) + (rule "mul_literals" (formula "19") (term "0,1,1")) + (rule "polySimp_mulLiterals" (formula "19") (term "1,1,1")) + (rule "polySimp_elimOne" (formula "19") (term "1,1,1")) + (rule "inEqSimp_contradInEq1" (formula "19") (term "1") (ifseqformula "1")) + (rule "inEqSimp_homoInEq1" (formula "19") (term "0,1")) + (rule "polySimp_mulComm0" (formula "19") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "19") (term "1,0,0,1")) + (rule "mul_literals" (formula "19") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "19") (term "0,0,1")) + (rule "polySimp_addComm1" (formula "19") (term "0,0,0,1")) + (rule "add_literals" (formula "19") (term "0,0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "19") (term "0,0,1")) + (rule "add_literals" (formula "19") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "19") (term "1,0,0,1")) + (rule "add_zero_right" (formula "19") (term "0,0,1")) + (rule "leq_literals" (formula "19") (term "0,1")) + (builtin "One Step Simplification" (formula "19")) + (rule "inEqSimp_contradInEq1" (formula "19") (term "1") (ifseqformula "2")) + (rule "qeq_literals" (formula "19") (term "0,1")) + (builtin "One Step Simplification" (formula "19")) + (rule "allLeft" (formula "17") (inst "t=add(Z(1(#)), i_0)")) + (rule "inEqSimp_commuteGeq" (formula "17") (term "1,0,0,0,0")) + (rule "inEqSimp_homoInEq0" (formula "17") (term "1,0,0,0,0,0")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,1,0,0,0,0,0")) + (rule "polySimp_rightDist" (formula "17") (term "1,0,1,0,0,0,0,0")) + (rule "mul_literals" (formula "17") (term "0,1,0,1,0,0,0,0,0")) + (rule "polySimp_addAssoc" (formula "17") (term "0,1,0,0,0,0,0")) + (rule "add_literals" (formula "17") (term "0,0,1,0,0,0,0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "17") (term "1,0,0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "17") (term "0,1,0,0,0,0,0")) + (rule "polySimp_elimOne" (formula "17") (term "0,1,0,0,0,0,0")) + (rule "inEqSimp_contradInEq1" (formula "17") (term "1,0,0,0,0,0") (ifseqformula "7")) + (rule "qeq_literals" (formula "17") (term "0,1,0,0,0,0,0")) + (builtin "One Step Simplification" (formula "17")) + (rule "inEqSimp_contradInEq1" (formula "17") (term "1,0,0,0,0") (ifseqformula "8")) + (rule "inEqSimp_homoInEq1" (formula "17") (term "0,1,0,0,0,0")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,0,1,0,0,0,0")) + (rule "polySimp_rightDist" (formula "17") (term "1,0,0,1,0,0,0,0")) + (rule "mul_literals" (formula "17") (term "0,1,0,0,1,0,0,0,0")) + (rule "polySimp_addAssoc" (formula "17") (term "0,0,1,0,0,0,0")) + (rule "polySimp_addComm1" (formula "17") (term "0,0,0,1,0,0,0,0")) + (rule "add_literals" (formula "17") (term "0,0,0,0,1,0,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "17") (term "0,0,1,0,0,0,0")) + (rule "add_literals" (formula "17") (term "1,1,0,0,1,0,0,0,0")) + (rule "times_zero_1" (formula "17") (term "1,0,0,1,0,0,0,0")) + (rule "add_zero_right" (formula "17") (term "0,0,1,0,0,0,0")) + (rule "leq_literals" (formula "17") (term "0,1,0,0,0,0")) + (builtin "One Step Simplification" (formula "17")) + (rule "commute_or_2" (formula "17") (term "0")) + (rule "allLeft" (formula "15") (inst "t=add(Z(neglit(1(#))), + select<[int]>(heap, self, LinkedList::#size))")) + (rule "inEqSimp_homoInEq1" (formula "15") (term "1")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,1")) + (rule "polySimp_rightDist" (formula "15") (term "1,0,1")) + (rule "mul_literals" (formula "15") (term "0,1,0,1")) + (rule "polySimp_addAssoc" (formula "15") (term "0,1")) + (rule "polySimp_addComm0" (formula "15") (term "0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "15") (term "0,1")) + (rule "add_literals" (formula "15") (term "1,1,0,1")) + (rule "times_zero_1" (formula "15") (term "1,0,1")) + (rule "add_zero_right" (formula "15") (term "0,1")) + (rule "leq_literals" (formula "15") (term "1")) + (builtin "One Step Simplification" (formula "15")) + (rule "inEqSimp_homoInEq0" (formula "15") (term "1")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,1")) + (rule "polySimp_rightDist" (formula "15") (term "1,0,1")) + (rule "mul_literals" (formula "15") (term "0,1,0,1")) + (rule "polySimp_addAssoc" (formula "15") (term "0,1")) + (rule "add_literals" (formula "15") (term "0,0,1")) + (rule "add_zero_left" (formula "15") (term "0,1")) + (rule "applyEq" (formula "15") (term "0,0,0") (ifseqformula "25")) + (rule "inEqSimp_invertInEq1" (formula "15") (term "1")) + (rule "polySimp_mulLiterals" (formula "15") (term "0,1")) + (rule "mul_literals" (formula "15") (term "1,1")) + (rule "polySimp_elimOne" (formula "15") (term "0,1")) + (rule "inEqSimp_contradInEq1" (formula "15") (term "1") (ifseqformula "27")) + (rule "qeq_literals" (formula "15") (term "0,1")) + (builtin "One Step Simplification" (formula "15")) + (rule "notLeft" (formula "15")) + (rule "allLeft" (formula "16") (inst "t=add(Z(1(#)), nv_0)")) + (rule "eqSymm" (formula "16") (term "1")) + (rule "inEqSimp_commuteGeq" (formula "16") (term "1,0")) + (rule "inEqSimp_homoInEq0" (formula "16") (term "0,0")) + (rule "polySimp_mulComm0" (formula "16") (term "1,0,0,0")) + (rule "polySimp_rightDist" (formula "16") (term "1,0,0,0")) + (rule "mul_literals" (formula "16") (term "0,1,0,0,0")) + (rule "polySimp_addAssoc" (formula "16") (term "0,0,0")) + (rule "add_literals" (formula "16") (term "0,0,0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "16") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "16") (term "0,0,0")) + (rule "polySimp_elimOne" (formula "16") (term "0,0,0")) + (rule "inEqSimp_contradInEq1" (formula "16") (term "1,0") (ifseqformula "1")) + (rule "inEqSimp_homoInEq1" (formula "16") (term "0,1,0")) + (rule "polySimp_mulComm0" (formula "16") (term "1,0,0,1,0")) + (rule "polySimp_rightDist" (formula "16") (term "1,0,0,1,0")) + (rule "mul_literals" (formula "16") (term "0,1,0,0,1,0")) + (rule "polySimp_addAssoc" (formula "16") (term "0,0,1,0")) + (rule "polySimp_addComm1" (formula "16") (term "0,0,0,1,0")) + (rule "add_literals" (formula "16") (term "0,0,0,0,1,0")) + (rule "polySimp_pullOutFactor1b" (formula "16") (term "0,0,1,0")) + (rule "add_literals" (formula "16") (term "1,1,0,0,1,0")) + (rule "times_zero_1" (formula "16") (term "1,0,0,1,0")) + (rule "add_literals" (formula "16") (term "0,0,1,0")) + (rule "leq_literals" (formula "16") (term "0,1,0")) + (builtin "One Step Simplification" (formula "16")) + (rule "inEqSimp_contradInEq1" (formula "16") (term "0") (ifseqformula "2")) + (rule "qeq_literals" (formula "16") (term "0,0")) + (builtin "One Step Simplification" (formula "16")) + (rule "allLeft" (formula "17") (inst "t=add(Z(1(#)), i_0)")) + (rule "eqSymm" (formula "17") (term "1")) + (rule "inEqSimp_commuteGeq" (formula "17") (term "1,0")) + (rule "inEqSimp_homoInEq0" (formula "17") (term "0,0")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,0,0")) + (rule "polySimp_rightDist" (formula "17") (term "1,0,0,0")) + (rule "mul_literals" (formula "17") (term "0,1,0,0,0")) + (rule "polySimp_addAssoc" (formula "17") (term "0,0,0")) + (rule "add_literals" (formula "17") (term "0,0,0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "17") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "17") (term "0,0,0")) + (rule "polySimp_elimOne" (formula "17") (term "0,0,0")) + (rule "inEqSimp_contradInEq1" (formula "17") (term "1,0") (ifseqformula "8")) + (rule "inEqSimp_homoInEq1" (formula "17") (term "0,1,0")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,0,1,0")) + (rule "polySimp_rightDist" (formula "17") (term "1,0,0,1,0")) + (rule "mul_literals" (formula "17") (term "0,1,0,0,1,0")) + (rule "polySimp_addAssoc" (formula "17") (term "0,0,1,0")) + (rule "polySimp_addComm1" (formula "17") (term "0,0,0,1,0")) + (rule "add_literals" (formula "17") (term "0,0,0,0,1,0")) + (rule "polySimp_pullOutFactor1b" (formula "17") (term "0,0,1,0")) + (rule "add_literals" (formula "17") (term "1,1,0,0,1,0")) + (rule "times_zero_1" (formula "17") (term "1,0,0,1,0")) + (rule "add_literals" (formula "17") (term "0,0,1,0")) + (rule "leq_literals" (formula "17") (term "0,1,0")) + (builtin "One Step Simplification" (formula "17")) + (rule "inEqSimp_contradInEq1" (formula "17") (term "0") (ifseqformula "7")) + (rule "qeq_literals" (formula "17") (term "0,0")) + (builtin "One Step Simplification" (formula "17")) + (rule "allLeft" (formula "18") (inst "t=Z(0(#))")) + (rule "leq_literals" (formula "18") (term "0,0")) + (builtin "One Step Simplification" (formula "18")) + (rule "eqSymm" (formula "18") (term "1")) + (rule "inEqSimp_commuteGeq" (formula "18") (term "0")) + (rule "applyEq" (formula "18") (term "1,1,1") (ifseqformula "26")) + (rule "inEqSimp_contradInEq1" (formula "18") (term "0") (ifseqformula "29")) + (rule "qeq_literals" (formula "18") (term "0,0")) + (builtin "One Step Simplification" (formula "18")) + (rule "allLeft" (formula "19") (inst "t=i_0")) + (rule "eqSymm" (formula "19") (term "1")) + (rule "replace_known_left" (formula "19") (term "1") (ifseqformula "4")) + (builtin "One Step Simplification" (formula "19")) + (rule "true_left" (formula "19")) + (rule "allLeft" (formula "15") (inst "t=add(Z(1(#)), nv_0)")) + (rule "inEqSimp_commuteGeq" (formula "15") (term "1")) + (rule "inEqSimp_homoInEq0" (formula "15") (term "1,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,1,0")) + (rule "polySimp_rightDist" (formula "15") (term "1,0,1,0")) + (rule "mul_literals" (formula "15") (term "0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "15") (term "0,1,0")) + (rule "add_literals" (formula "15") (term "0,0,1,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "15") (term "1,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "0,1,0")) + (rule "polySimp_elimOne" (formula "15") (term "0,1,0")) + (rule "inEqSimp_contradInEq1" (formula "15") (term "1,0") (ifseqformula "2")) + (rule "qeq_literals" (formula "15") (term "0,1,0")) + (builtin "One Step Simplification" (formula "15")) + (rule "inEqSimp_contradInEq1" (formula "15") (term "1") (ifseqformula "1")) + (rule "inEqSimp_homoInEq1" (formula "15") (term "0,1")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "15") (term "1,0,0,1")) + (rule "mul_literals" (formula "15") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "15") (term "0,0,1")) + (rule "polySimp_addComm1" (formula "15") (term "0,0,0,1")) + (rule "add_literals" (formula "15") (term "0,0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "15") (term "0,0,1")) + (rule "add_literals" (formula "15") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "15") (term "1,0,0,1")) + (rule "add_zero_right" (formula "15") (term "0,0,1")) + (rule "leq_literals" (formula "15") (term "0,1")) + (builtin "One Step Simplification" (formula "15")) + (rule "notLeft" (formula "15")) + (rule "referencedObjectIsCreatedRightEQ" (formula "34") (ifseqformula "23") (ifseqformula "31")) + (rule "close" (formula "34") (ifseqformula "9")) + ) + ) + ) + (branch "Use Case" + (builtin "One Step Simplification" (formula "14")) + (builtin "One Step Simplification" (formula "13")) + (builtin "One Step Simplification" (formula "5")) + (builtin "One Step Simplification" (formula "2") (ifInst "" (formula "20"))) + (rule "andLeft" (formula "5")) + (rule "eqSymm" (formula "18")) + (rule "eqSymm" (formula "19")) + (rule "eqSymm" (formula "16")) + (rule "eqSymm" (formula "24")) + (rule "eqSymm" (formula "17")) + (rule "eqSymm" (formula "15") (term "1,1,0")) + (rule "eqSymm" (formula "15") (term "0,1,0,1,0,1,0")) + (rule "eqSymm" (formula "15") (term "1,1,0,1,0,1,0")) + (rule "eqSymm" (formula "15") (term "1,0,0,1,0")) + (rule "eqSymm" (formula "14")) + (rule "eqSymm" (formula "2") (term "1,1")) + (rule "eqSymm" (formula "2") (term "0,0,1")) + (rule "eqSymm" (formula "2") (term "1,1,0,1,0,1")) + (rule "eqSymm" (formula "2") (term "0,1,0,1,0,1")) + (rule "eqSymm" (formula "2") (term "0,0,1,1")) + (rule "replace_known_left" (formula "2") (term "0,0") (ifseqformula "5")) + (builtin "One Step Simplification" (formula "2")) + (rule "polySimp_elimSub" (formula "17") (term "1,0,2,0")) + (rule "mul_literals" (formula "17") (term "1,1,0,2,0")) + (rule "polySimp_elimSub" (formula "15") (term "1,0,0,1,1,0")) + (rule "mul_literals" (formula "15") (term "1,1,0,0,1,1,0")) + (rule "polySimp_elimSub" (formula "2") (term "0,0,0,1,1")) + (rule "mul_literals" (formula "2") (term "1,0,0,0,1,1")) + (rule "polySimp_homoEq" (formula "2") (term "0,0,1,1")) + (rule "polySimp_mulComm0" (formula "2") (term "1,0,0,0,1,1")) + (rule "polySimp_addComm0" (formula "15") (term "1,0,2,0,1,1,0")) + (rule "polySimp_addComm0" (formula "2") (term "1,0,2,0,1,1")) + (rule "polySimp_addComm0" (formula "17") (term "1,0,2,0")) + (rule "polySimp_addComm0" (formula "15") (term "1,0,0,1,1,0")) + (rule "polySimp_addComm0" (formula "2") (term "1,1,0,0,0,1,1")) + (rule "polySimp_rightDist" (formula "2") (term "1,0,0,0,1,1")) + (rule "mul_literals" (formula "2") (term "0,1,0,0,0,1,1")) + (rule "castedGetAny" (formula "21") (term "0")) + (rule "castedGetAny" (formula "20") (term "1,0")) + (rule "subsetSingletonLeft" (formula "13")) + (rule "castedGetAny" (formula "1") (term "1,0,1,1,0")) + (rule "subsetSingletonLeft" (formula "12")) + (rule "castedGetAny" (formula "22") (term "1,1")) + (rule "castedGetAny" (formula "22") (term "1,0")) + (rule "castedGetAny" (formula "15") (term "0,0,0,0,0,1,0")) + (rule "castedGetAny" (formula "16") (term "2,0")) + (rule "castedGetAny" (formula "24") (term "0")) + (rule "eqSymm" (formula "24")) + (rule "castedGetAny" (formula "15") (term "1,1,1,1,0")) + (rule "castedGetAny" (formula "15") (term "1,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "15") (term "0,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "15") (term "1,1,1,0,0,1,0")) + (rule "castedGetAny" (formula "15") (term "0,1,0,0,1,0")) + (rule "eqSymm" (formula "15") (term "1,0,0,1,0")) + (rule "castedGetAny" (formula "14") (term "0,1,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "1") (term "0,1,0")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "15") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "15") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,0,1,0,0")) + (rule "castedGetAny" (formula "2") (term "0,0,1,0,1,0,1")) + (rule "castedGetAny" (formula "2") (term "1,0,1,0,1,0,1")) + (rule "castedGetAny" (formula "2") (term "0,0,0,1")) + (rule "eqSymm" (formula "2") (term "0,0,1")) + (rule "castedGetAny" (formula "2") (term "1,1,1,1")) + (rule "inEqSimp_ltToLeq" (formula "6")) + (rule "polySimp_mulComm0" (formula "6") (term "1,0,0")) + (rule "polySimp_addComm1" (formula "6") (term "0")) + (rule "polySimp_addAssoc" (formula "2") (term "0,0,0,1,1")) + (rule "polySimp_addComm0" (formula "2") (term "0,0,0,0,1,1")) + (rule "castedGetAny" (formula "15") (term "2,0,1,1,0")) + (rule "castedGetAny" (formula "2") (term "2,0,1,1")) + (rule "castedGetAny" (formula "17") (term "2,0")) + (rule "inEqSimp_ltToLeq" (formula "14") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "14") (term "1,0,0,1,0,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "2") (term "0")) + (rule "polySimp_mulComm0" (formula "2") (term "1,0,0,0")) + (rule "polySimp_addComm1" (formula "2") (term "0,0")) + (rule "inEqSimp_ltToLeq" (formula "2") (term "1,0,0,1,0,1")) + (rule "polySimp_mulComm0" (formula "2") (term "1,0,0,1,0,0,1,0,1")) + (rule "castedGetAny" (formula "24") (term "1,0")) + (rule "inEqSimp_commuteLeq" (formula "15") (term "0,0,0,1,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "15") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "5")) + (rule "castedGetAny" (formula "2") (term "1,0,0,0,1")) + (rule "eqSymm" (formula "2") (term "0,0,1")) + (rule "inEqSimp_commuteLeq" (formula "14") (term "0,0,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "2") (term "0,0,0,1,0,1")) + (rule "polySimp_sepNegMonomial" (formula "2") (term "0,0,1,1")) + (rule "polySimp_mulLiterals" (formula "2") (term "0,0,0,1,1")) + (rule "polySimp_elimOne" (formula "2") (term "0,0,0,1,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "1") (term "0,1,0")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,1,0")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1,0,1,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "1") (term "1,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "15") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "15") (term "1,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "15") (term "0,1,1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "15") (term "1,1,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "15") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,1,0,0")) + (rule "polySimp_rightDist" (formula "15") (term "1,1,0,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,1,1,0,0")) + (rule "mul_literals" (formula "15") (term "0,1,1,0,0")) + (rule "polySimp_elimOne" (formula "15") (term "1,1,1,0,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "6")) + (rule "polySimp_mulLiterals" (formula "6") (term "0")) + (rule "polySimp_elimOne" (formula "6") (term "0")) + (rule "inEqSimp_sepPosMonomial0" (formula "14") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "14") (term "1,1,0,0,1,0")) + (rule "polySimp_rightDist" (formula "14") (term "1,1,0,0,1,0")) + (rule "mul_literals" (formula "14") (term "0,1,1,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "14") (term "1,1,1,0,0,1,0")) + (rule "polySimp_elimOne" (formula "14") (term "1,1,1,0,0,1,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "2") (term "0")) + (rule "polySimp_mulLiterals" (formula "2") (term "0,0")) + (rule "polySimp_elimOne" (formula "2") (term "0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "2") (term "1,0,0,1,0,1")) + (rule "polySimp_mulComm0" (formula "2") (term "1,1,0,0,1,0,1")) + (rule "polySimp_rightDist" (formula "2") (term "1,1,0,0,1,0,1")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,1,1,0,0,1,0,1")) + (rule "mul_literals" (formula "2") (term "0,1,1,0,0,1,0,1")) + (rule "polySimp_elimOne" (formula "2") (term "1,1,1,0,0,1,0,1")) + (rule "pullOutSelect" (formula "4") (term "0") (inst "selectSK=List_seq_0")) + (rule "simplifySelectOfAnon" (formula "4")) + (builtin "One Step Simplification" (formula "4") (ifInst "" (formula "24")) (ifInst "" (formula "10"))) + (rule "eqSymm" (formula "5")) + (rule "applyEqReverse" (formula "4") (term "1") (ifseqformula "5")) + (builtin "One Step Simplification" (formula "4")) + (rule "hideAuxiliaryEq" (formula "5")) + (rule "pullOutSelect" (formula "3") (term "0") (inst "selectSK=LinkedList_nodeseq_0")) + (rule "simplifySelectOfAnon" (formula "3")) + (builtin "One Step Simplification" (formula "3") (ifInst "" (formula "24")) (ifInst "" (formula "10"))) + (rule "eqSymm" (formula "4")) + (rule "applyEqReverse" (formula "3") (term "1") (ifseqformula "4")) + (builtin "One Step Simplification" (formula "3")) + (rule "hideAuxiliaryEq" (formula "4")) + (rule "elementOfUnionEQ" (formula "12") (ifseqformula "14")) + (builtin "One Step Simplification" (formula "12")) + (rule "true_left" (formula "12")) + (rule "elementOfUnionEQ" (formula "12") (ifseqformula "13")) + (builtin "One Step Simplification" (formula "12")) + (rule "true_left" (formula "12")) + (rule "elementOfSetMinus" (formula "4") (term "0,0")) + (builtin "One Step Simplification" (formula "4")) + (rule "elementOfSetMinus" (formula "3") (term "0,0")) + (builtin "One Step Simplification" (formula "3")) + (rule "elementOfUnionEQ" (formula "4") (term "0") (ifseqformula "12")) + (builtin "One Step Simplification" (formula "4")) + (rule "true_left" (formula "4")) + (rule "elementOfUnionEQ" (formula "3") (term "0") (ifseqformula "11")) + (builtin "One Step Simplification" (formula "3")) + (rule "true_left" (formula "3")) + (rule "pullOutSelect" (formula "20") (term "0") (inst "selectSK=Node_data_0")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "18")) (ifInst "" (formula "17"))) + (rule "applyEqReverse" (formula "21") (term "0") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "eqSymm" (formula "20")) + (rule "pullOutSelect" (formula "4") (term "0") (inst "selectSK=LinkedList_size_0")) + (rule "simplifySelectOfAnon" (formula "4")) + (builtin "One Step Simplification" (formula "4") (ifInst "" (formula "20")) (ifInst "" (formula "8"))) + (rule "inEqSimp_homoInEq1" (formula "5")) + (rule "polySimp_addComm1" (formula "5") (term "0")) + (rule "inEqSimp_sepPosMonomial0" (formula "5")) + (rule "polySimp_mulComm0" (formula "5") (term "1")) + (rule "polySimp_rightDist" (formula "5") (term "1")) + (rule "mul_literals" (formula "5") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "5") (term "1,1")) + (rule "polySimp_elimOne" (formula "5") (term "1,1")) + (rule "elementOfSetMinus" (formula "4") (term "0,0")) + (builtin "One Step Simplification" (formula "4")) + (rule "ifthenelse_negated" (formula "4") (term "0")) + (rule "elementOfUnionEQ" (formula "4") (term "0,0") (ifseqformula "11")) + (builtin "One Step Simplification" (formula "4")) + (rule "applyEqReverse" (formula "5") (term "1,1") (ifseqformula "4")) + (rule "hideAuxiliaryEq" (formula "4")) + (rule "inEqSimp_homoInEq0" (formula "4")) + (rule "polySimp_addComm1" (formula "4") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "4")) + (rule "polySimp_mulComm0" (formula "4") (term "1")) + (rule "polySimp_rightDist" (formula "4") (term "1")) + (rule "mul_literals" (formula "4") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "4") (term "1,1")) + (rule "polySimp_elimOne" (formula "4") (term "1,1")) + (rule "replace_known_left" (formula "2") (term "0") (ifseqformula "4")) + (builtin "One Step Simplification" (formula "2")) + (rule "andLeft" (formula "2")) + (rule "andLeft" (formula "2")) + (rule "applyEq" (formula "22") (term "0") (ifseqformula "2")) + (rule "eqSymm" (formula "22")) + (rule "nnf_imp2or" (formula "1") (term "0")) + (rule "inEqSimp_notGeq" (formula "1") (term "0,0")) + (rule "mul_literals" (formula "1") (term "1,0,0,0,0")) + (rule "add_literals" (formula "1") (term "0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1") (term "0,0")) + (rule "mul_literals" (formula "1") (term "1,0,0")) + (rule "nnf_imp2or" (formula "13") (term "1,0,1,0,1,0")) + (rule "nnf_imp2or" (formula "3") (term "0")) + (rule "nnf_imp2or" (formula "13") (term "0")) + (rule "nnf_imp2or" (formula "1") (term "1,0")) + (rule "inEqSimp_notLeq" (formula "1") (term "0,1,0")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0,0,1,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0,0,1,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0,0,1,0")) + (rule "add_literals" (formula "1") (term "0,0,0,0,1,0")) + (rule "add_zero_left" (formula "1") (term "0,0,0,1,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1") (term "0,1,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,0,1,0")) + (rule "polySimp_elimOne" (formula "1") (term "1,0,1,0")) + (rule "nnf_imp2or" (formula "3") (term "1,0")) + (rule "nnf_notAnd" (formula "3") (term "0,0")) + (rule "inEqSimp_notLeq" (formula "3") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "3") (term "1,0,0,1,0,0")) + (rule "mul_literals" (formula "3") (term "0,1,0,0,1,0,0")) + (rule "polySimp_addAssoc" (formula "3") (term "0,0,1,0,0")) + (rule "add_literals" (formula "3") (term "0,0,0,1,0,0")) + (rule "add_zero_left" (formula "3") (term "0,0,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "3") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "3") (term "1,1,0,0")) + (rule "inEqSimp_notGeq" (formula "3") (term "0,0,0")) + (rule "mul_literals" (formula "3") (term "1,0,0,0,0,0")) + (rule "add_zero_right" (formula "3") (term "0,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "3") (term "0,0,0")) + (rule "mul_literals" (formula "3") (term "1,0,0,0")) + (rule "nnf_notAnd" (formula "13") (term "0,0")) + (rule "inEqSimp_notLeq" (formula "13") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "13") (term "1,0,0,1,0,0")) + (rule "mul_literals" (formula "13") (term "0,1,0,0,1,0,0")) + (rule "polySimp_addAssoc" (formula "13") (term "0,0,1,0,0")) + (rule "add_literals" (formula "13") (term "0,0,0,1,0,0")) + (rule "add_zero_left" (formula "13") (term "0,0,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "13") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "13") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "13") (term "1,1,0,0")) + (rule "inEqSimp_notGeq" (formula "13") (term "0,0,0")) + (rule "mul_literals" (formula "13") (term "1,0,0,0,0,0")) + (rule "add_literals" (formula "13") (term "0,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "13") (term "0,0,0")) + (rule "mul_literals" (formula "13") (term "1,0,0,0")) + (rule "nnf_imp2or" (formula "13") (term "0,1,0,1,0")) + (rule "nnf_notAnd" (formula "13") (term "0,0,1,0,1,0")) + (rule "inEqSimp_notGeq" (formula "13") (term "0,0,0,1,0,1,0")) + (rule "mul_literals" (formula "13") (term "1,0,0,0,0,0,1,0,1,0")) + (rule "add_literals" (formula "13") (term "0,0,0,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "13") (term "0,0,0,1,0,1,0")) + (rule "mul_literals" (formula "13") (term "1,0,0,0,1,0,1,0")) + (rule "inEqSimp_notLeq" (formula "13") (term "1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "13") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "13") (term "0,1,0,0,1,0,0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "13") (term "0,0,1,0,0,1,0,1,0")) + (rule "add_literals" (formula "13") (term "0,0,0,1,0,0,1,0,1,0")) + (rule "add_zero_left" (formula "13") (term "0,0,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "13") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "13") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "13") (term "1,1,0,0,1,0,1,0")) + (rule "commute_or_2" (formula "3") (term "0")) + (rule "commute_or" (formula "1") (term "1,0")) + (rule "shift_paren_or" (formula "1") (term "0")) + (rule "commute_or" (formula "1") (term "0,0")) + (rule "ifthenelse_split" (formula "14") (term "0")) + (branch "self.size = 0 TRUE" + (rule "eqSymm" (formula "15")) + (rule "replace_known_left" (formula "16") (term "0,0") (ifseqformula "14")) + (builtin "One Step Simplification" (formula "16")) + (rule "eqSymm" (formula "16")) + (rule "applyEq" (formula "13") (term "1,1,0,0,1,0,1,0") (ifseqformula "14")) + (rule "applyEq" (formula "3") (term "1,1,0") (ifseqformula "14")) + (rule "applyEq" (formula "12") (term "1,1,1,0,0,1,0") (ifseqformula "14")) + (rule "add_zero_right" (formula "12") (term "1,1,0,0,1,0")) + (rule "applyEq" (formula "13") (term "1,1,0,0") (ifseqformula "14")) + (rule "applyEq" (formula "4") (term "0,0,0") (ifseqformula "14")) + (rule "polySimp_homoEq" (formula "4") (term "0,0")) + (rule "mul_literals" (formula "4") (term "1,0,0,0")) + (rule "add_zero_right" (formula "4") (term "0,0,0")) + (rule "applyEq" (formula "1") (term "1,1,0") (ifseqformula "14")) + (rule "applyEq" (formula "6") (term "0") (ifseqformula "14")) + (rule "inEqSimp_homoInEq1" (formula "6")) + (rule "times_zero_2" (formula "6") (term "1,0")) + (rule "add_zero_right" (formula "6") (term "0")) + (rule "applyEq" (formula "17") (term "1") (ifseqformula "14")) + (rule "applyEq" (formula "18") (term "1") (ifseqformula "14")) + (rule "applyEq" (formula "13") (term "1,1,0,0,1,1,0") (ifseqformula "14")) + (rule "add_zero_right" (formula "13") (term "1,0,0,1,1,0")) + (rule "polySimp_sepPosMonomial" (formula "4") (term "0,0")) + (rule "mul_literals" (formula "4") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "6")) + (rule "mul_literals" (formula "6") (term "1")) + (rule "inEqSimp_contradEq7" (formula "4") (term "0,0") (ifseqformula "5")) + (rule "add_zero_left" (formula "4") (term "0,0,0,0")) + (rule "mul_literals" (formula "4") (term "0,0,0,0")) + (rule "leq_literals" (formula "4") (term "0,0,0")) + (builtin "One Step Simplification" (formula "4")) + (rule "eqSymm" (formula "4")) + (rule "inEqSimp_contradInEq0" (formula "5") (ifseqformula "6")) + (rule "qeq_literals" (formula "5") (term "0")) + (builtin "One Step Simplification" (formula "5")) + (rule "closeFalse" (formula "5")) + ) + (branch "self.size = 0 FALSE" + (rule "replace_known_right" (formula "15") (term "0,0") (ifseqformula "18")) + (builtin "One Step Simplification" (formula "15")) + (rule "shift_paren_or" (formula "3") (term "0,0")) + (rule "commute_or" (formula "3") (term "0,0,0")) + (rule "lenNonNegative" (formula "16") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "16")) + (rule "applyEq" (formula "16") (term "0") (ifseqformula "17")) + (rule "inEqSimp_strengthen1" (formula "16") (ifseqformula "19")) + (rule "add_zero_right" (formula "16") (term "1")) + (rule "inEqSimp_contradEq7" (formula "19") (ifseqformula "16")) + (rule "mul_literals" (formula "19") (term "1,0,0")) + (rule "add_zero_right" (formula "19") (term "0,0")) + (rule "leq_literals" (formula "19") (term "0")) + (builtin "One Step Simplification" (formula "19")) + (rule "false_right" (formula "19")) + (rule "lenNonNegative" (formula "18") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "18")) + (rule "applyEq" (formula "18") (term "0") (ifseqformula "19")) + (rule "inEqSimp_subsumption1" (formula "18") (ifseqformula "16")) + (rule "leq_literals" (formula "18") (term "0")) + (builtin "One Step Simplification" (formula "18")) + (rule "true_left" (formula "18")) + (rule "ifthenelse_to_or_left" (formula "13") (term "1,1,0")) + (rule "eqSymm" (formula "13") (term "1,0,1,1,0")) + (rule "eqSymm" (formula "13") (term "1,1,1,1,0")) + (rule "commute_or" (formula "13") (term "0,1,1,0")) + (rule "commute_or" (formula "13") (term "1,1,1,0")) + (rule "shift_paren_or" (formula "13") (term "0,1,0,1,0")) + (rule "seqGetAlphaCast" (formula "20") (term "0")) + (rule "castedGetAny" (formula "1") (term "0")) + (builtin "One Step Simplification" (formula "1")) + (rule "true_left" (formula "1")) + (rule "commute_or_2" (formula "13") (term "0,0,1,0,1,0")) + (rule "commute_or" (formula "13") (term "0,0,0,1,0,1,0")) + (rule "ifthenelse_split" (formula "4") (term "0")) + (branch "self.size = 1 + i_0 TRUE" + (rule "eqSymm" (formula "5")) + (rule "applyEq" (formula "14") (term "1,1,0,0,1,0,1,0") (ifseqformula "4")) + (rule "applyEq" (formula "16") (term "1,1,0") (ifseqformula "4")) + (rule "polySimp_addAssoc" (formula "16") (term "1,0")) + (rule "add_literals" (formula "16") (term "0,1,0")) + (rule "add_zero_left" (formula "16") (term "1,0")) + (rule "applyEq" (formula "17") (term "0") (ifseqformula "4")) + (rule "inEqSimp_homoInEq1" (formula "17")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0")) + (rule "polySimp_rightDist" (formula "17") (term "1,0")) + (rule "mul_literals" (formula "17") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "17") (term "0")) + (rule "add_literals" (formula "17") (term "0,0")) + (rule "add_zero_left" (formula "17") (term "0")) + (rule "applyEq" (formula "13") (term "1,1,1,0,0,1,0") (ifseqformula "4")) + (rule "polySimp_addAssoc" (formula "13") (term "1,1,0,0,1,0")) + (rule "add_literals" (formula "13") (term "0,1,1,0,0,1,0")) + (rule "add_zero_left" (formula "13") (term "1,1,0,0,1,0")) + (rule "applyEq" (formula "1") (term "1,1,0") (ifseqformula "4")) + (rule "applyEq" (formula "7") (term "0") (ifseqformula "4")) + (rule "inEqSimp_homoInEq1" (formula "7")) + (rule "polySimp_pullOutFactor1" (formula "7") (term "0")) + (rule "add_literals" (formula "7") (term "1,0")) + (rule "times_zero_1" (formula "7") (term "0")) + (rule "leq_literals" (formula "7")) + (rule "true_left" (formula "7")) + (rule "applyEq" (formula "3") (term "1,1,0") (ifseqformula "4")) + (rule "applyEq" (formula "13") (term "1,1,0,0") (ifseqformula "4")) + (rule "applyEq" (formula "2") (term "1,1") (ifseqformula "15")) + (rule "applyEq" (formula "21") (term "1,0") (ifseqformula "15")) + (rule "eqSymm" (formula "21")) + (rule "applyEq" (formula "19") (term "1,0") (ifseqformula "15")) + (rule "applyEq" (formula "3") (term "1,0,0,0,0,0") (ifseqformula "15")) + (rule "applyEq" (formula "5") (term "1,0") (ifseqformula "15")) + (rule "applyEq" (formula "20") (term "0") (ifseqformula "15")) + (rule "referencedObjectIsCreatedRight" (formula "19") (ifseqformula "20")) + (rule "close" (formula "19") (ifseqformula "7")) + ) + (branch "self.size = 1 + i_0 FALSE" + (rule "eqSymm" (formula "4")) + (rule "inEqSimp_strengthen1" (formula "6") (ifseqformula "19")) + (rule "polySimp_addAssoc" (formula "6") (term "1")) + (rule "add_literals" (formula "6") (term "0,1")) + (rule "inEqSimp_contradEq7" (formula "19") (ifseqformula "6")) + (rule "polySimp_rightDist" (formula "19") (term "1,0,0")) + (rule "mul_literals" (formula "19") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "19") (term "0,0")) + (rule "polySimp_addComm1" (formula "19") (term "0,0,0")) + (rule "add_literals" (formula "19") (term "0,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "19") (term "0,0")) + (rule "add_literals" (formula "19") (term "1,1,0,0")) + (rule "times_zero_1" (formula "19") (term "1,0,0")) + (rule "add_zero_right" (formula "19") (term "0,0")) + (rule "leq_literals" (formula "19") (term "0")) + (builtin "One Step Simplification" (formula "19")) + (rule "false_right" (formula "19")) + (rule "allLeft" (formula "1") (inst "t=i_0")) + (rule "replace_known_right" (formula "1") (term "0,0") (ifseqformula "20")) + (builtin "One Step Simplification" (formula "1")) + (rule "inEqSimp_commuteGeq" (formula "1") (term "1")) + (rule "inEqSimp_contradInEq1" (formula "1") (term "1") (ifseqformula "7")) + (rule "inEqSimp_homoInEq1" (formula "1") (term "0,1")) + (rule "polySimp_pullOutFactor1b" (formula "1") (term "0,0,1")) + (rule "add_literals" (formula "1") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "1") (term "1,0,0,1")) + (rule "add_zero_right" (formula "1") (term "0,0,1")) + (rule "leq_literals" (formula "1") (term "0,1")) + (builtin "One Step Simplification" (formula "1")) + (rule "inEqSimp_contradInEq0" (formula "6") (ifseqformula "1")) + (rule "qeq_literals" (formula "6") (term "0")) + (builtin "One Step Simplification" (formula "6")) + (rule "closeFalse" (formula "6")) + ) + ) + ) + ) + ) + (branch " ((Node)(self.nodeseq[i_0]), Node::#data) in allLocs setMinus self.footprint & !Node::#data = java.lang.Object::#$created | ((Node)(self.nodeseq[i_0]), Node::#data) in freshLocs(heap) FALSE" + (builtin "One Step Simplification" (formula "13")) + (builtin "One Step Simplification" (formula "12")) + (builtin "One Step Simplification" (formula "4")) + (builtin "One Step Simplification" (formula "1")) + (builtin "One Step Simplification" (formula "19")) + (rule "closeTrue" (formula "19")) + ) + ) + ) + (branch "Assume self.nodeseq@heap[anon(allLocs setMinus self.footprint, anon_heap<>)] != self.nodeseq" + (builtin "One Step Simplification" (formula "12")) + (builtin "One Step Simplification" (formula "11")) + (builtin "One Step Simplification" (formula "3")) + (rule "notLeft" (formula "1")) + (rule "andLeft" (formula "2")) + (rule "eqSymm" (formula "16")) + (rule "eqSymm" (formula "14")) + (rule "eqSymm" (formula "13")) + (rule "eqSymm" (formula "15")) + (rule "eqSymm" (formula "12") (term "1,1,0,1,0,1,0")) + (rule "eqSymm" (formula "12") (term "0,1,0,1,0,1,0")) + (rule "eqSymm" (formula "12") (term "1,1,0")) + (rule "eqSymm" (formula "12") (term "1,0,0,1,0")) + (rule "eqSymm" (formula "11")) + (rule "polySimp_elimSub" (formula "14") (term "1,0,2,0")) + (rule "mul_literals" (formula "14") (term "1,1,0,2,0")) + (rule "polySimp_elimSub" (formula "12") (term "1,0,0,1,1,0")) + (rule "mul_literals" (formula "12") (term "1,1,0,0,1,1,0")) + (rule "polySimp_addComm0" (formula "12") (term "1,0,2,0,1,1,0")) + (rule "polySimp_addComm0" (formula "14") (term "1,0,2,0")) + (rule "polySimp_addComm0" (formula "12") (term "1,0,0,1,1,0")) + (rule "subsetSingletonLeft" (formula "10")) + (rule "castedGetAny" (formula "19") (term "1,0")) + (rule "eqSymm" (formula "19")) + (rule "subsetSingletonLeft" (formula "9")) + (rule "castedGetAny" (formula "12") (term "0,0,0,0,0,1,0")) + (rule "castedGetAny" (formula "13") (term "2,0")) + (rule "castedGetAny" (formula "12") (term "0,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "12") (term "1,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "12") (term "1,1,1,1,0")) + (rule "castedGetAny" (formula "12") (term "0,1,0,0,1,0")) + (rule "eqSymm" (formula "12") (term "1,0,0,1,0")) + (rule "castedGetAny" (formula "11") (term "0,1,0,1,0")) + (rule "castedGetAny" (formula "12") (term "2,0,1,1,0")) + (rule "castedGetAny" (formula "14") (term "2,0")) + (rule "inEqSimp_ltToLeq" (formula "12") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "12") (term "1,0,0,1,0,0")) + (rule "inEqSimp_ltToLeq" (formula "12") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "12") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "castedGetAny" (formula "19") (term "0")) + (rule "eqSymm" (formula "19")) + (rule "inEqSimp_ltToLeq" (formula "3")) + (rule "polySimp_mulComm0" (formula "3") (term "1,0,0")) + (rule "polySimp_addComm1" (formula "3") (term "0")) + (rule "castedGetAny" (formula "12") (term "1,0,1,0,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "11") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "11") (term "1,0,0,1,0,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "12") (term "0,0,0,1,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "12") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "2")) + (rule "inEqSimp_commuteLeq" (formula "11") (term "0,0,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "12") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "12") (term "1,1,0,0")) + (rule "polySimp_rightDist" (formula "12") (term "1,1,0,0")) + (rule "mul_literals" (formula "12") (term "0,1,1,0,0")) + (rule "polySimp_mulLiterals" (formula "12") (term "1,1,1,0,0")) + (rule "polySimp_elimOne" (formula "12") (term "1,1,1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "12") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "12") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "12") (term "1,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "12") (term "0,1,1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "12") (term "1,1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "12") (term "1,1,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "3")) + (rule "polySimp_mulLiterals" (formula "3") (term "0")) + (rule "polySimp_elimOne" (formula "3") (term "0")) + (rule "inEqSimp_sepPosMonomial0" (formula "11") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "11") (term "1,1,0,0,1,0")) + (rule "polySimp_rightDist" (formula "11") (term "1,1,0,0,1,0")) + (rule "mul_literals" (formula "11") (term "0,1,1,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "11") (term "1,1,1,0,0,1,0")) + (rule "polySimp_elimOne" (formula "11") (term "1,1,1,0,0,1,0")) + (rule "equalityToSeqGetAndSeqLenRight" (formula "17") (inst "iv=iv")) + (rule "inEqSimp_ltToLeq" (formula "17") (term "1,0,0,1")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,0,1,0,0,1")) + (rule "inEqSimp_commuteLeq" (formula "17") (term "0,0,0,1")) + (rule "applyEq" (formula "17") (term "1,0") (ifseqformula "16")) + (rule "inEqSimp_sepPosMonomial0" (formula "17") (term "1,0,0,1")) + (rule "polySimp_mulComm0" (formula "17") (term "1,1,0,0,1")) + (rule "polySimp_rightDist" (formula "17") (term "1,1,0,0,1")) + (rule "mul_literals" (formula "17") (term "0,1,1,0,0,1")) + (rule "polySimp_mulLiterals" (formula "17") (term "1,1,1,0,0,1")) + (rule "polySimp_elimOne" (formula "17") (term "1,1,1,0,0,1")) + (rule "elementOfUnionEQ" (formula "10") (ifseqformula "11")) + (builtin "One Step Simplification" (formula "10")) + (rule "true_left" (formula "10")) + (rule "elementOfUnionEQ" (formula "9") (ifseqformula "10")) + (builtin "One Step Simplification" (formula "9")) + (rule "true_left" (formula "9")) + (rule "pullOutSelect" (formula "1") (term "0") (inst "selectSK=List_seq_0")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "17")) (ifInst "" (formula "7"))) + (rule "eqSymm" (formula "2")) + (rule "applyEqReverse" (formula "1") (term "1") (ifseqformula "2")) + (builtin "One Step Simplification" (formula "1")) + (rule "hideAuxiliaryEq" (formula "2")) + (rule "elementOfSetMinus" (formula "1") (term "0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "elementOfUnionEQ" (formula "1") (term "0") (ifseqformula "9")) + (builtin "One Step Simplification" (formula "1")) + (rule "true_left" (formula "1")) + (rule "pullOutSelect" (formula "16") (term "0,1,0") (inst "selectSK=LinkedList_nodeseq_0")) + (rule "applyEq" (formula "15") (term "0,1,1,1,0,0,1") (ifseqformula "1")) + (rule "applyEq" (formula "15") (term "0,0,1,0,1") (ifseqformula "1")) + (rule "applyEq" (formula "15") (term "0,0,0") (ifseqformula "1")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "16")) (ifInst "" (formula "6"))) + (rule "eqSymm" (formula "15") (term "1,0,1")) + (rule "elementOfSetMinus" (formula "1") (term "0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "ifthenelse_negated" (formula "1") (term "0")) + (rule "elementOfUnionEQ" (formula "1") (term "0,0") (ifseqformula "9")) + (builtin "One Step Simplification" (formula "1")) + (rule "applyEqReverse" (formula "17") (term "0,1,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "15") (term "0,1,1,0,1") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "15")) + (rule "applyEqReverse" (formula "15") (term "0,0") (ifseqformula "1")) + (rule "close" (formula "15") (ifseqformula "14")) + ) + ) + (branch "Assume self.seq@heap[anon(allLocs setMinus self.footprint, anon_heap<>)] != self.seq" + (builtin "One Step Simplification" (formula "11")) + (builtin "One Step Simplification" (formula "10")) + (builtin "One Step Simplification" (formula "2")) + (rule "notLeft" (formula "1")) + (rule "andLeft" (formula "1")) + (rule "eqSymm" (formula "12")) + (rule "eqSymm" (formula "18")) + (rule "eqSymm" (formula "15")) + (rule "eqSymm" (formula "13")) + (rule "eqSymm" (formula "14")) + (rule "eqSymm" (formula "11") (term "1,1,0")) + (rule "eqSymm" (formula "11") (term "1,1,0,1,0,1,0")) + (rule "eqSymm" (formula "11") (term "1,0,0,1,0")) + (rule "eqSymm" (formula "11") (term "0,1,0,1,0,1,0")) + (rule "eqSymm" (formula "10")) + (rule "polySimp_elimSub" (formula "13") (term "1,0,2,0")) + (rule "mul_literals" (formula "13") (term "1,1,0,2,0")) + (rule "polySimp_elimSub" (formula "11") (term "1,0,0,1,1,0")) + (rule "mul_literals" (formula "11") (term "1,1,0,0,1,1,0")) + (rule "polySimp_addComm0" (formula "11") (term "1,0,2,0,1,1,0")) + (rule "polySimp_addComm0" (formula "13") (term "1,0,2,0")) + (rule "polySimp_addComm0" (formula "11") (term "1,0,0,1,1,0")) + (rule "subsetSingletonLeft" (formula "9")) + (rule "subsetSingletonLeft" (formula "8")) + (rule "castedGetAny" (formula "11") (term "0,0,0,0,0,1,0")) + (rule "castedGetAny" (formula "12") (term "2,0")) + (rule "castedGetAny" (formula "18") (term "0")) + (rule "eqSymm" (formula "18")) + (rule "castedGetAny" (formula "11") (term "1,1,1,1,0")) + (rule "castedGetAny" (formula "11") (term "0,1,0,0,1,0")) + (rule "eqSymm" (formula "11") (term "1,0,0,1,0")) + (rule "castedGetAny" (formula "11") (term "0,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "11") (term "1,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "10") (term "0,1,0,1,0")) + (rule "castedGetAny" (formula "11") (term "2,0,1,1,0")) + (rule "inEqSimp_ltToLeq" (formula "11") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "11") (term "1,0,0,1,0,0")) + (rule "castedGetAny" (formula "13") (term "2,0")) + (rule "inEqSimp_ltToLeq" (formula "11") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "11") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "2")) + (rule "polySimp_mulComm0" (formula "2") (term "1,0,0")) + (rule "polySimp_addComm1" (formula "2") (term "0")) + (rule "castedGetAny" (formula "18") (term "1,0")) + (rule "eqSymm" (formula "18")) + (rule "castedGetAny" (formula "11") (term "1,0,1,0,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "10") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "10") (term "1,0,0,1,0,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "11") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "11") (term "0,0,0,1,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "1")) + (rule "inEqSimp_commuteLeq" (formula "10") (term "0,0,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "11") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "11") (term "1,1,0,0")) + (rule "polySimp_rightDist" (formula "11") (term "1,1,0,0")) + (rule "mul_literals" (formula "11") (term "0,1,1,0,0")) + (rule "polySimp_mulLiterals" (formula "11") (term "1,1,1,0,0")) + (rule "polySimp_elimOne" (formula "11") (term "1,1,1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "11") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "11") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "11") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "11") (term "1,1,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "11") (term "0,1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "11") (term "1,1,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "2")) + (rule "polySimp_mulLiterals" (formula "2") (term "0")) + (rule "polySimp_elimOne" (formula "2") (term "0")) + (rule "inEqSimp_sepPosMonomial0" (formula "10") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "10") (term "1,1,0,0,1,0")) + (rule "polySimp_rightDist" (formula "10") (term "1,1,0,0,1,0")) + (rule "mul_literals" (formula "10") (term "0,1,1,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "10") (term "1,1,1,0,0,1,0")) + (rule "polySimp_elimOne" (formula "10") (term "1,1,1,0,0,1,0")) + (rule "equalityToSeqGetAndSeqLenRight" (formula "16") (inst "iv=iv")) + (rule "inEqSimp_ltToLeq" (formula "16") (term "1,0,0,1")) + (rule "polySimp_mulComm0" (formula "16") (term "1,0,0,1,0,0,1")) + (rule "inEqSimp_commuteLeq" (formula "16") (term "0,0,0,1")) + (rule "applyEq" (formula "16") (term "1,0") (ifseqformula "14")) + (rule "inEqSimp_sepPosMonomial0" (formula "16") (term "1,0,0,1")) + (rule "polySimp_mulComm0" (formula "16") (term "1,1,0,0,1")) + (rule "polySimp_rightDist" (formula "16") (term "1,1,0,0,1")) + (rule "polySimp_mulLiterals" (formula "16") (term "1,1,1,0,0,1")) + (rule "mul_literals" (formula "16") (term "0,1,1,0,0,1")) + (rule "polySimp_elimOne" (formula "16") (term "1,1,1,0,0,1")) + (rule "elementOfUnionEQ" (formula "8") (ifseqformula "10")) + (builtin "One Step Simplification" (formula "8")) + (rule "true_left" (formula "8")) + (rule "elementOfUnionEQ" (formula "8") (ifseqformula "9")) + (builtin "One Step Simplification" (formula "8")) + (rule "true_left" (formula "8")) + (rule "pullOutSelect" (formula "16") (term "0,0") (inst "selectSK=List_seq_0")) + (rule "applyEq" (formula "15") (term "0,0,1,0,1") (ifseqformula "1")) + (rule "applyEq" (formula "15") (term "0,1,1,1,0,0,1") (ifseqformula "1")) + (rule "applyEq" (formula "15") (term "0,0,0") (ifseqformula "1")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "16")) (ifInst "" (formula "6"))) + (rule "eqSymm" (formula "17")) + (rule "eqSymm" (formula "15") (term "1,0,1")) + (rule "elementOfSetMinus" (formula "1") (term "0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "ifthenelse_negated" (formula "1") (term "0")) + (rule "elementOfUnionEQ" (formula "1") (term "0,0") (ifseqformula "9")) + (builtin "One Step Simplification" (formula "1")) + (rule "applyEqReverse" (formula "15") (term "0,1,1,0,1") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "15")) + (rule "applyEqReverse" (formula "17") (term "0,1") (ifseqformula "1")) + (rule "applyEqReverse" (formula "15") (term "0,0") (ifseqformula "1")) + (rule "close" (formula "15") (ifseqformula "13")) + ) + ) + ) + (branch "Case 2" + (builtin "One Step Simplification" (formula "1")) + (builtin "One Step Simplification" (formula "9")) + (rule "andLeft" (formula "1")) + (rule "allRight" (formula "10") (inst "sk=j_0")) + (rule "impRight" (formula "10")) + (rule "impRight" (formula "11")) + (rule "andLeft" (formula "2")) + (rule "eqSymm" (formula "1")) + (rule "eqSymm" (formula "13")) + (rule "castedGetAny" (formula "1") (term "1")) + (rule "castedGetAny" (formula "1") (term "0")) + (rule "inEqSimp_ltToLeq" (formula "5")) + (rule "polySimp_mulComm0" (formula "5") (term "1,0,0")) + (rule "polySimp_addComm1" (formula "5") (term "0")) + (rule "inEqSimp_ltToLeq" (formula "3")) + (rule "polySimp_mulComm0" (formula "3") (term "1,0,0")) + (rule "polySimp_addComm1" (formula "3") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "4")) + (rule "inEqSimp_commuteLeq" (formula "2")) + (rule "inEqSimp_sepNegMonomial0" (formula "5")) + (rule "polySimp_mulLiterals" (formula "5") (term "0")) + (rule "polySimp_elimOne" (formula "5") (term "0")) + (rule "inEqSimp_sepNegMonomial0" (formula "3")) + (rule "polySimp_mulLiterals" (formula "3") (term "0")) + (rule "polySimp_elimOne" (formula "3") (term "0")) + (rule "pullOutSelect" (formula "1") (term "0,1") (inst "selectSK=LinkedList_nodeseq_0")) + (rule "applyEq" (formula "2") (term "0,0") (ifseqformula "1")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "13")) (ifInst "" (formula "9"))) + (rule "elementOfSetMinus" (formula "1") (term "0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "ifthenelse_negated" (formula "1") (term "0")) + (rule "pullOutSelect" (formula "6") (term "0") (inst "selectSK=LinkedList_size_0")) + (rule "applyEq" (formula "4") (term "0") (ifseqformula "6")) + (rule "simplifySelectOfAnon" (formula "6")) + (builtin "One Step Simplification" (formula "6") (ifInst "" (formula "14")) (ifInst "" (formula "10"))) + (rule "inEqSimp_homoInEq1" (formula "7")) + (rule "polySimp_addComm1" (formula "7") (term "0")) + (rule "inEqSimp_homoInEq1" (formula "4")) + (rule "polySimp_addComm1" (formula "4") (term "0")) + (rule "inEqSimp_sepPosMonomial0" (formula "7")) + (rule "polySimp_mulComm0" (formula "7") (term "1")) + (rule "polySimp_rightDist" (formula "7") (term "1")) + (rule "mul_literals" (formula "7") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "7") (term "1,1")) + (rule "polySimp_elimOne" (formula "7") (term "1,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "4")) + (rule "polySimp_mulComm0" (formula "4") (term "1")) + (rule "polySimp_rightDist" (formula "4") (term "1")) + (rule "mul_literals" (formula "4") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "4") (term "1,1")) + (rule "polySimp_elimOne" (formula "4") (term "1,1")) + (rule "elementOfSetMinus" (formula "6") (term "0,0")) + (builtin "One Step Simplification" (formula "6")) + (rule "ifthenelse_negated" (formula "6") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "3") (ifseqformula "4")) + (rule "times_zero_1" (formula "3") (term "0,0")) + (rule "add_zero_left" (formula "3") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "3")) + (rule "mul_literals" (formula "3") (term "1")) + (rule "inEqSimp_exactShadow3" (formula "6") (ifseqformula "8")) + (rule "times_zero_1" (formula "6") (term "0,0")) + (rule "add_zero_left" (formula "6") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "6")) + (rule "mul_literals" (formula "6") (term "1")) + (rule "Class_invariant_axiom_for_LinkedList" (formula "14") (inst "i=i") (inst "j=j") (inst "i_0=i_0") (ifseqformula "15")) + (builtin "One Step Simplification" (formula "14")) + (rule "andLeft" (formula "14")) + (rule "andLeft" (formula "15")) + (rule "andLeft" (formula "14")) + (rule "andLeft" (formula "14")) + (rule "andLeft" (formula "14")) + (rule "andLeft" (formula "14")) + (rule "andLeft" (formula "14")) + (rule "eqSymm" (formula "21")) + (rule "eqSymm" (formula "20")) + (rule "eqSymm" (formula "19")) + (rule "eqSymm" (formula "18")) + (rule "eqSymm" (formula "17") (term "1,1,0")) + (rule "eqSymm" (formula "17") (term "1,0,0,1,0")) + (rule "eqSymm" (formula "17") (term "0,1,0,1,0,1,0")) + (rule "eqSymm" (formula "17") (term "1,1,0,1,0,1,0")) + (rule "eqSymm" (formula "16")) + (rule "polySimp_elimSub" (formula "19") (term "1,0,2,0")) + (rule "mul_literals" (formula "19") (term "1,1,0,2,0")) + (rule "polySimp_elimSub" (formula "17") (term "1,0,0,1,1,0")) + (rule "mul_literals" (formula "17") (term "1,1,0,0,1,1,0")) + (rule "polySimp_addComm0" (formula "17") (term "1,0,2,0,1,1,0")) + (rule "polySimp_addComm0" (formula "19") (term "1,0,2,0")) + (rule "polySimp_addComm0" (formula "17") (term "1,0,0,1,1,0")) + (rule "castedGetAny" (formula "17") (term "0,0,0,0,0,1,0")) + (rule "subsetSingletonLeft" (formula "14")) + (rule "subsetSingletonLeft" (formula "15")) + (rule "castedGetAny" (formula "18") (term "2,0")) + (rule "castedGetAny" (formula "17") (term "1,1,1,1,0")) + (rule "castedGetAny" (formula "17") (term "1,1,1,0,0,1,0")) + (rule "castedGetAny" (formula "17") (term "0,1,0,0,1,0")) + (rule "eqSymm" (formula "17") (term "1,0,0,1,0")) + (rule "castedGetAny" (formula "17") (term "0,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "17") (term "1,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "16") (term "0,1,0,1,0")) + (rule "castedGetAny" (formula "17") (term "2,0,1,1,0")) + (rule "castedGetAny" (formula "19") (term "2,0")) + (rule "inEqSimp_ltToLeq" (formula "17") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "17") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,0,1,0,0")) + (rule "inEqSimp_ltToLeq" (formula "16") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "16") (term "1,0,0,1,0,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "17") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "17") (term "0,0,0,1,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "16") (term "0,0,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "17") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "17") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "17") (term "1,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "17") (term "0,1,1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "17") (term "1,1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "17") (term "1,1,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "17") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "17") (term "1,1,0,0")) + (rule "polySimp_rightDist" (formula "17") (term "1,1,0,0")) + (rule "mul_literals" (formula "17") (term "0,1,1,0,0")) + (rule "polySimp_mulLiterals" (formula "17") (term "1,1,1,0,0")) + (rule "polySimp_elimOne" (formula "17") (term "1,1,1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "16") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "16") (term "1,1,0,0,1,0")) + (rule "polySimp_rightDist" (formula "16") (term "1,1,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "16") (term "1,1,1,0,0,1,0")) + (rule "mul_literals" (formula "16") (term "0,1,1,0,0,1,0")) + (rule "polySimp_elimOne" (formula "16") (term "1,1,1,0,0,1,0")) + (rule "elementOfUnionEQ" (formula "7") (term "0,0") (ifseqformula "16")) + (builtin "One Step Simplification" (formula "7")) + (rule "applyEqReverse" (formula "3") (term "0") (ifseqformula "7")) + (rule "applyEqReverse" (formula "5") (term "1,1") (ifseqformula "7")) + (rule "applyEqReverse" (formula "8") (term "1,1") (ifseqformula "7")) + (rule "hideAuxiliaryEq" (formula "7")) + (rule "inEqSimp_homoInEq0" (formula "5")) + (rule "polySimp_addComm1" (formula "5") (term "0")) + (rule "inEqSimp_homoInEq0" (formula "7")) + (rule "polySimp_addComm1" (formula "7") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "5")) + (rule "polySimp_mulComm0" (formula "5") (term "1")) + (rule "polySimp_rightDist" (formula "5") (term "1")) + (rule "polySimp_mulLiterals" (formula "5") (term "1,1")) + (rule "mul_literals" (formula "5") (term "0,1")) + (rule "polySimp_elimOne" (formula "5") (term "1,1")) + (rule "inEqSimp_sepPosMonomial1" (formula "7")) + (rule "polySimp_mulComm0" (formula "7") (term "1")) + (rule "polySimp_rightDist" (formula "7") (term "1")) + (rule "polySimp_mulLiterals" (formula "7") (term "1,1")) + (rule "mul_literals" (formula "7") (term "0,1")) + (rule "polySimp_elimOne" (formula "7") (term "1,1")) + (rule "inEqSimp_contradEq7" (formula "18") (term "0,0") (ifseqformula "3")) + (rule "times_zero_1" (formula "18") (term "1,0,0,0,0")) + (rule "add_literals" (formula "18") (term "0,0,0,0")) + (rule "leq_literals" (formula "18") (term "0,0,0")) + (builtin "One Step Simplification" (formula "18")) + (rule "inEqSimp_contradEq7" (formula "17") (term "0,0") (ifseqformula "3")) + (rule "times_zero_1" (formula "17") (term "1,0,0,0,0")) + (rule "add_literals" (formula "17") (term "0,0,0,0")) + (rule "leq_literals" (formula "17") (term "0,0,0")) + (builtin "One Step Simplification" (formula "17")) + (rule "elementOfUnionEQ" (formula "1") (term "0,0") (ifseqformula "15")) + (builtin "One Step Simplification" (formula "1")) + (rule "applyEqReverse" (formula "2") (term "0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "2") (term "0,1") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "elementOfUnionEQ" (formula "13") (ifseqformula "14")) + (builtin "One Step Simplification" (formula "13")) + (rule "true_left" (formula "13")) + (rule "elementOfUnionEQ" (formula "12") (ifseqformula "13")) + (builtin "One Step Simplification" (formula "12")) + (rule "true_left" (formula "12")) + (rule "nnf_imp2or" (formula "13") (term "0")) + (rule "nnf_notAnd" (formula "13") (term "0,0")) + (rule "inEqSimp_notGeq" (formula "13") (term "0,0,0")) + (rule "times_zero_1" (formula "13") (term "1,0,0,0,0,0")) + (rule "add_zero_right" (formula "13") (term "0,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "13") (term "0,0,0")) + (rule "mul_literals" (formula "13") (term "1,0,0,0")) + (rule "inEqSimp_notLeq" (formula "13") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "13") (term "1,0,0,1,0,0")) + (rule "mul_literals" (formula "13") (term "0,1,0,0,1,0,0")) + (rule "polySimp_addAssoc" (formula "13") (term "0,0,1,0,0")) + (rule "add_literals" (formula "13") (term "0,0,0,1,0,0")) + (rule "add_zero_left" (formula "13") (term "0,0,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "13") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "13") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "13") (term "1,1,0,0")) + (rule "nnf_imp2or" (formula "13") (term "0,1,0,1,0")) + (rule "nnf_imp2or" (formula "13") (term "1,0,1,0,1,0")) + (rule "nnf_notAnd" (formula "13") (term "0,0,1,0,1,0")) + (rule "inEqSimp_notGeq" (formula "13") (term "0,0,0,1,0,1,0")) + (rule "times_zero_1" (formula "13") (term "1,0,0,0,0,0,1,0,1,0")) + (rule "add_zero_right" (formula "13") (term "0,0,0,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "13") (term "0,0,0,1,0,1,0")) + (rule "mul_literals" (formula "13") (term "1,0,0,0,1,0,1,0")) + (rule "inEqSimp_notLeq" (formula "13") (term "1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "13") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "13") (term "0,1,0,0,1,0,0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "13") (term "0,0,1,0,0,1,0,1,0")) + (rule "add_literals" (formula "13") (term "0,0,0,1,0,0,1,0,1,0")) + (rule "add_zero_left" (formula "13") (term "0,0,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "13") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "13") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "13") (term "1,1,0,0,1,0,1,0")) + (rule "shift_paren_or" (formula "13") (term "0,1,0,1,0")) + (rule "commute_or_2" (formula "13") (term "0,0,1,0,1,0")) + (rule "ifthenelse_to_or_left" (formula "13") (term "1,1,0")) + (rule "eqSymm" (formula "13") (term "1,0,1,1,0")) + (rule "eqSymm" (formula "13") (term "1,1,1,1,0")) + (rule "commute_or" (formula "13") (term "0,1,1,0")) + (rule "commute_or" (formula "13") (term "1,1,1,0")) + (rule "commute_or" (formula "13") (term "0,0,0,1,0,1,0")) + (rule "lenNonNegative" (formula "17") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "17")) + (rule "applyEq" (formula "17") (term "0") (ifseqformula "18")) + (rule "inEqSimp_subsumption1" (formula "17") (ifseqformula "2")) + (rule "leq_literals" (formula "17") (term "0")) + (builtin "One Step Simplification" (formula "17")) + (rule "true_left" (formula "17")) + (rule "lenNonNegative" (formula "16") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "16")) + (rule "applyEq" (formula "16") (term "0") (ifseqformula "17")) + (rule "inEqSimp_subsumption1" (formula "16") (ifseqformula "2")) + (rule "leq_literals" (formula "16") (term "0")) + (builtin "One Step Simplification" (formula "16")) + (rule "true_left" (formula "16")) + (rule "all_pull_out1" (formula "13") (term "0,1,0")) + (rule "all_pull_out0" (formula "13") (term "1,0")) + (rule "shift_paren_and" (formula "13") (term "0,1,0")) + (rule "all_pull_out3" (formula "13") (term "0")) + (rule "cnf_rightDist" (formula "13") (term "0,0")) + (rule "distr_forallAnd" (formula "13") (term "0")) + (builtin "One Step Simplification" (formula "13")) + (rule "distr_forallAnd" (formula "13")) + (rule "andLeft" (formula "13")) + (rule "shift_paren_or" (formula "14") (term "0")) + (rule "commute_or_2" (formula "14") (term "0,0")) + (rule "inEqSimp_or_weaken3" (formula "14") (term "0")) + (rule "polySimp_addAssoc" (formula "14") (term "1,0,1,0")) + (rule "add_literals" (formula "14") (term "0,1,0,1,0")) + (rule "add_zero_left" (formula "14") (term "1,0,1,0")) + (builtin "One Step Simplification" (formula "14")) + (rule "cnf_rightDist" (formula "13") (term "0,0")) + (rule "distr_forallAnd" (formula "13") (term "0")) + (builtin "One Step Simplification" (formula "13")) + (rule "distr_forallAnd" (formula "13")) + (rule "andLeft" (formula "13")) + (rule "commute_or_2" (formula "14") (term "0")) + (builtin "One Step Simplification" (formula "14")) + (rule "inEqSimp_homoInEq0" (formula "14") (term "0,1")) + (rule "polySimp_mulComm0" (formula "14") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "14") (term "1,0,0,1")) + (rule "mul_literals" (formula "14") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "14") (term "0,0,1")) + (rule "add_literals" (formula "14") (term "0,0,0,1")) + (rule "add_zero_left" (formula "14") (term "0,0,1")) + (rule "inEqSimp_homoInEq1" (formula "14") (term "1,1")) + (rule "polySimp_mulComm0" (formula "14") (term "1,0,1,1")) + (rule "polySimp_rightDist" (formula "14") (term "1,0,1,1")) + (rule "mul_literals" (formula "14") (term "0,1,0,1,1")) + (rule "polySimp_addAssoc" (formula "14") (term "0,1,1")) + (rule "polySimp_addComm0" (formula "14") (term "0,0,1,1")) + (rule "polySimp_pullOutFactor1b" (formula "14") (term "0,1,1")) + (rule "add_literals" (formula "14") (term "1,1,0,1,1")) + (rule "times_zero_1" (formula "14") (term "1,0,1,1")) + (rule "add_zero_right" (formula "14") (term "0,1,1")) + (rule "leq_literals" (formula "14") (term "1,1")) + (builtin "One Step Simplification" (formula "14")) + (rule "applyEq" (formula "14") (term "1,0,0") (ifseqformula "17")) + (rule "inEqSimp_invertInEq1" (formula "14") (term "1")) + (rule "times_zero_2" (formula "14") (term "1,1")) + (rule "polySimp_mulLiterals" (formula "14") (term "0,1")) + (rule "polySimp_elimOne" (formula "14") (term "0,1")) + (rule "inEqSimp_contradInEq1" (formula "14") (term "1") (ifseqformula "2")) + (rule "qeq_literals" (formula "14") (term "0,1")) + (builtin "One Step Simplification" (formula "14")) + (rule "cnf_rightDist" (formula "13") (term "0,0")) + (rule "distr_forallAnd" (formula "13") (term "0")) + (builtin "One Step Simplification" (formula "13")) + (rule "distr_forallAnd" (formula "13")) + (rule "andLeft" (formula "13")) + (rule "commute_or_2" (formula "14") (term "0,0")) + (rule "commute_or_2" (formula "14") (term "0,0,0")) + (rule "cnf_rightDist" (formula "13") (term "0")) + (rule "distr_forallAnd" (formula "13")) + (rule "andLeft" (formula "13")) + (rule "commute_or_2" (formula "13") (term "0")) + (rule "commute_or" (formula "14") (term "0")) + (rule "commute_or" (formula "13") (term "0,0")) + (rule "commute_or_2" (formula "15") (term "0,0,0,0")) + (rule "shift_paren_or" (formula "15") (term "0,0,0,0,0")) + (rule "seqGetAlphaCast" (formula "19") (term "0")) + (rule "castedGetAny" (formula "19") (term "0")) + (builtin "One Step Simplification" (formula "19")) + (rule "true_left" (formula "19")) + (rule "seqGetAlphaCast" (formula "18") (term "0")) + (rule "castedGetAny" (formula "18") (term "0")) + (builtin "One Step Simplification" (formula "18")) + (rule "true_left" (formula "18")) + (rule "seqGetAlphaCast" (formula "1") (term "0")) + (rule "castedGetAny" (formula "1") (term "0")) + (builtin "One Step Simplification" (formula "1")) + (rule "true_left" (formula "1")) + (rule "seqGetAlphaCast" (formula "1") (term "1")) + (rule "castedGetAny" (formula "1") (term "0")) + (builtin "One Step Simplification" (formula "1")) + (rule "true_left" (formula "1")) + (rule "allLeft" (formula "15") (inst "t=i_0")) + (rule "inEqSimp_commuteGeq" (formula "15") (term "1,0,0,0,0")) + (rule "inEqSimp_contradInEq1" (formula "15") (term "1,0,0,0,0,0") (ifseqformula "5")) + (rule "qeq_literals" (formula "15") (term "0,1,0,0,0,0,0")) + (builtin "One Step Simplification" (formula "15")) + (rule "inEqSimp_contradInEq1" (formula "15") (term "1,0,0,0,0") (ifseqformula "6")) + (rule "inEqSimp_homoInEq1" (formula "15") (term "0,1,0,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "15") (term "0,0,1,0,0,0,0")) + (rule "add_literals" (formula "15") (term "1,1,0,0,1,0,0,0,0")) + (rule "times_zero_1" (formula "15") (term "1,0,0,1,0,0,0,0")) + (rule "add_zero_right" (formula "15") (term "0,0,1,0,0,0,0")) + (rule "leq_literals" (formula "15") (term "0,1,0,0,0,0")) + (builtin "One Step Simplification" (formula "15")) + (rule "commute_or_2" (formula "15") (term "0")) + (rule "allLeft" (formula "13") (inst "t=add(Z(neglit(1(#))), + select<[int]>(heap, self, LinkedList::#size))")) + (rule "inEqSimp_homoInEq0" (formula "13") (term "1,0")) + (rule "polySimp_mulComm0" (formula "13") (term "1,0,1,0")) + (rule "polySimp_rightDist" (formula "13") (term "1,0,1,0")) + (rule "mul_literals" (formula "13") (term "0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "13") (term "0,1,0")) + (rule "add_literals" (formula "13") (term "0,0,1,0")) + (rule "add_zero_left" (formula "13") (term "0,1,0")) + (rule "inEqSimp_homoInEq1" (formula "13") (term "1")) + (rule "polySimp_mulComm0" (formula "13") (term "1,0,1")) + (rule "polySimp_rightDist" (formula "13") (term "1,0,1")) + (rule "mul_literals" (formula "13") (term "0,1,0,1")) + (rule "polySimp_addAssoc" (formula "13") (term "0,1")) + (rule "polySimp_addComm0" (formula "13") (term "0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "13") (term "0,1")) + (rule "add_literals" (formula "13") (term "1,1,0,1")) + (rule "times_zero_1" (formula "13") (term "1,0,1")) + (rule "add_zero_right" (formula "13") (term "0,1")) + (rule "leq_literals" (formula "13") (term "1")) + (builtin "One Step Simplification" (formula "13")) + (rule "applyEq" (formula "13") (term "0,0,0") (ifseqformula "21")) + (rule "inEqSimp_invertInEq1" (formula "13") (term "1")) + (rule "polySimp_mulLiterals" (formula "13") (term "0,1")) + (rule "times_zero_2" (formula "13") (term "1,1")) + (rule "polySimp_elimOne" (formula "13") (term "0,1")) + (rule "inEqSimp_contradInEq1" (formula "13") (term "1") (ifseqformula "2")) + (rule "qeq_literals" (formula "13") (term "0,1")) + (builtin "One Step Simplification" (formula "13")) + (rule "notLeft" (formula "13")) + (rule "allLeft" (formula "13") (inst "t=i_0")) + (rule "inEqSimp_commuteGeq" (formula "13") (term "1")) + (rule "inEqSimp_contradInEq1" (formula "13") (term "1") (ifseqformula "6")) + (rule "inEqSimp_homoInEq1" (formula "13") (term "0,1")) + (rule "polySimp_pullOutFactor1b" (formula "13") (term "0,0,1")) + (rule "add_literals" (formula "13") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "13") (term "1,0,0,1")) + (rule "add_zero_right" (formula "13") (term "0,0,1")) + (rule "leq_literals" (formula "13") (term "0,1")) + (builtin "One Step Simplification" (formula "13")) + (rule "inEqSimp_contradInEq1" (formula "13") (term "1") (ifseqformula "5")) + (rule "qeq_literals" (formula "13") (term "0,1")) + (builtin "One Step Simplification" (formula "13")) + (rule "notLeft" (formula "13")) + (rule "allLeft" (formula "14") (inst "t=add(Z(neglit(1(#))), + select<[int]>(heap, self, LinkedList::#size))")) + (rule "eqSymm" (formula "14") (term "1")) + (rule "inEqSimp_homoInEq1" (formula "14") (term "1,0")) + (rule "polySimp_mulComm0" (formula "14") (term "1,0,1,0")) + (rule "polySimp_rightDist" (formula "14") (term "1,0,1,0")) + (rule "mul_literals" (formula "14") (term "0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "14") (term "0,1,0")) + (rule "polySimp_addComm0" (formula "14") (term "0,0,1,0")) + (rule "polySimp_pullOutFactor1b" (formula "14") (term "0,1,0")) + (rule "add_literals" (formula "14") (term "1,1,0,1,0")) + (rule "times_zero_1" (formula "14") (term "1,0,1,0")) + (rule "add_zero_right" (formula "14") (term "0,1,0")) + (rule "leq_literals" (formula "14") (term "1,0")) + (builtin "One Step Simplification" (formula "14")) + (rule "inEqSimp_homoInEq0" (formula "14") (term "0")) + (rule "polySimp_mulComm0" (formula "14") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "14") (term "1,0,0")) + (rule "mul_literals" (formula "14") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "14") (term "0,0")) + (rule "add_literals" (formula "14") (term "0,0,0")) + (rule "add_zero_left" (formula "14") (term "0,0")) + (rule "applyEq" (formula "14") (term "1,1,1") (ifseqformula "21")) + (rule "inEqSimp_invertInEq1" (formula "14") (term "0")) + (rule "times_zero_2" (formula "14") (term "1,0")) + (rule "polySimp_mulLiterals" (formula "14") (term "0,0")) + (rule "polySimp_elimOne" (formula "14") (term "0,0")) + (rule "inEqSimp_contradInEq1" (formula "14") (term "0") (ifseqformula "2")) + (rule "qeq_literals" (formula "14") (term "0,0")) + (builtin "One Step Simplification" (formula "14")) + (rule "allLeft" (formula "15") (inst "t=Z(0(#))")) + (rule "leq_literals" (formula "15") (term "0,0")) + (builtin "One Step Simplification" (formula "15")) + (rule "eqSymm" (formula "15") (term "1")) + (rule "inEqSimp_commuteGeq" (formula "15") (term "0")) + (rule "applyEq" (formula "15") (term "1,1,1") (ifseqformula "21")) + (rule "inEqSimp_contradInEq1" (formula "15") (term "0") (ifseqformula "2")) + (rule "qeq_literals" (formula "15") (term "0,0")) + (builtin "One Step Simplification" (formula "15")) + (rule "allLeft" (formula "16") (inst "t=i_0")) + (rule "eqSymm" (formula "16") (term "1")) + (rule "inEqSimp_commuteGeq" (formula "16") (term "1,0")) + (rule "inEqSimp_contradInEq1" (formula "16") (term "0,0") (ifseqformula "5")) + (rule "qeq_literals" (formula "16") (term "0,0,0")) + (builtin "One Step Simplification" (formula "16")) + (rule "inEqSimp_contradInEq1" (formula "16") (term "0") (ifseqformula "6")) + (rule "inEqSimp_homoInEq1" (formula "16") (term "0,0")) + (rule "polySimp_pullOutFactor1b" (formula "16") (term "0,0,0")) + (rule "add_literals" (formula "16") (term "1,1,0,0,0")) + (rule "times_zero_1" (formula "16") (term "1,0,0,0")) + (rule "add_zero_right" (formula "16") (term "0,0,0")) + (rule "leq_literals" (formula "16") (term "0,0")) + (builtin "One Step Simplification" (formula "16")) + (rule "allLeft" (formula "17") (inst "t=j_0")) + (rule "eqSymm" (formula "17") (term "1")) + (rule "inEqSimp_commuteGeq" (formula "17") (term "1,0")) + (rule "applyEq" (formula "17") (term "1,1,1") (ifseqformula "1")) + (rule "inEqSimp_contradInEq1" (formula "17") (term "1,0") (ifseqformula "4")) + (rule "inEqSimp_homoInEq1" (formula "17") (term "0,1,0")) + (rule "polySimp_pullOutFactor1b" (formula "17") (term "0,0,1,0")) + (rule "add_literals" (formula "17") (term "1,1,0,0,1,0")) + (rule "times_zero_1" (formula "17") (term "1,0,0,1,0")) + (rule "add_zero_right" (formula "17") (term "0,0,1,0")) + (rule "leq_literals" (formula "17") (term "0,1,0")) + (builtin "One Step Simplification" (formula "17")) + (rule "inEqSimp_contradInEq1" (formula "17") (term "0") (ifseqformula "3")) + (rule "qeq_literals" (formula "17") (term "0,0")) + (builtin "One Step Simplification" (formula "17")) + (rule "allLeft" (formula "13") (inst "t=Z(0(#))")) + (rule "leq_literals" (formula "13") (term "1,0")) + (builtin "One Step Simplification" (formula "13")) + (rule "inEqSimp_commuteGeq" (formula "13") (term "1")) + (rule "applyEq" (formula "13") (term "0,0,0") (ifseqformula "24")) + (rule "inEqSimp_contradInEq1" (formula "13") (term "1") (ifseqformula "2")) + (rule "qeq_literals" (formula "13") (term "0,1")) + (builtin "One Step Simplification" (formula "13")) + (rule "notLeft" (formula "13")) + (rule "allLeft" (formula "13") (inst "t=j_0")) + (rule "inEqSimp_commuteGeq" (formula "13") (term "1")) + (rule "applyEq" (formula "13") (term "0,0,0,0") (ifseqformula "1")) + (rule "replace_known_right" (formula "13") (term "0,0,0") (ifseqformula "29")) + (builtin "One Step Simplification" (formula "13")) + (rule "true_left" (formula "13")) + (rule "allLeft" (formula "19") (inst "t=j_0")) + (rule "replace_known_left" (formula "19") (term "0,0,0,0") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "19") (ifInst "" (formula "32"))) + (rule "inEqSimp_commuteGeq" (formula "19") (term "1")) + (rule "inEqSimp_contradInEq1" (formula "19") (term "0") (ifseqformula "3")) + (rule "qeq_literals" (formula "19") (term "0,0")) + (builtin "One Step Simplification" (formula "19")) + (rule "inEqSimp_contradInEq1" (formula "19") (ifseqformula "4")) + (rule "andLeft" (formula "19")) + (rule "inEqSimp_homoInEq1" (formula "19")) + (rule "polySimp_pullOutFactor1b" (formula "19") (term "0")) + (rule "add_literals" (formula "19") (term "1,1,0")) + (rule "times_zero_1" (formula "19") (term "1,0")) + (rule "add_zero_right" (formula "19") (term "0")) + (rule "leq_literals" (formula "19")) + (rule "closeFalse" (formula "19")) + ) + ) + (branch "Case 2" + (rule "int_induction" (inst "b=( lt(nv, select<[int]>(heap, self, LinkedList::#size))<> + -> ( select<[boolean]>(heap, + (Node)(seqGet<[any]>(select<[Seq]>(heap, + self, + LinkedList::#nodeseq), + nv)), + java.lang.Object::#$created) + = TRUE)<>)<>") (inst "nv=nv") (userinteraction)) + (branch "Base Case" + (builtin "One Step Simplification" (formula "1")) + (rule "impRight" (formula "8")) + (rule "andLeft" (formula "2")) + (rule "eqSymm" (formula "12") (term "0,1")) + (rule "eqSymm" (formula "12")) + (rule "polySimp_elimSub" (formula "12") (term "0,0,0")) + (rule "mul_literals" (formula "12") (term "1,0,0,0")) + (rule "polySimp_homoEq" (formula "12") (term "0,0")) + (rule "polySimp_mulComm0" (formula "12") (term "1,0,0,0")) + (rule "polySimp_addComm0" (formula "12") (term "1,0,2,0")) + (rule "polySimp_addComm0" (formula "12") (term "1,1,0,0,0")) + (rule "polySimp_rightDist" (formula "12") (term "1,0,0,0")) + (rule "mul_literals" (formula "12") (term "0,1,0,0,0")) + (rule "castedGetAny" (formula "10") (term "1,0")) + (rule "polySimp_addAssoc" (formula "12") (term "0,0,0")) + (rule "polySimp_addComm0" (formula "12") (term "0,0,0,0")) + (rule "castedGetAny" (formula "12") (term "1,1")) + (rule "castedGetAny" (formula "12") (term "2,0")) + (rule "inEqSimp_ltToLeq" (formula "1")) + (rule "add_zero_right" (formula "1") (term "0")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0")) + (rule "inEqSimp_ltToLeq" (formula "3")) + (rule "polySimp_mulComm0" (formula "3") (term "1,0,0")) + (rule "polySimp_addComm1" (formula "3") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "2")) + (rule "polySimp_sepNegMonomial" (formula "12") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "12") (term "0,0,0")) + (rule "polySimp_elimOne" (formula "12") (term "0,0,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "0")) + (rule "polySimp_elimOne" (formula "1") (term "0")) + (rule "inEqSimp_sepNegMonomial0" (formula "3")) + (rule "polySimp_mulLiterals" (formula "3") (term "0")) + (rule "polySimp_elimOne" (formula "3") (term "0")) + (rule "pullOutSelect" (formula "12") (term "1") (inst "selectSK=Node_next_0")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1")) + (rule "elementOfSetMinus" (formula "1") (term "0,0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "pullOutSelect" (formula "13") (term "0,2,0") (inst "selectSK=LinkedList_nodeseq_0")) + (rule "applyEq" (formula "2") (term "0,0,0,0,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "2") (term "0,0,0,0,1,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "2") (term "0,1,2,0") (ifseqformula "1")) + (rule "applyEq" (formula "2") (term "0,1,0,0,1,1,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "2") (term "0,1,1,0") (ifseqformula "1")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "13")) (ifInst "" (formula "8"))) + (rule "elementOfSetMinus" (formula "1") (term "0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "ifthenelse_negated" (formula "1") (term "0")) + (rule "pullOutSelect" (formula "14") (term "0,0,0") (inst "selectSK=LinkedList_size_0")) + (rule "applyEq" (formula "6") (term "0") (ifseqformula "1")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "14")) (ifInst "" (formula "9"))) + (rule "polySimp_homoEq" (formula "15") (term "0,0")) + (rule "polySimp_addComm1" (formula "15") (term "0,0,0")) + (rule "inEqSimp_homoInEq1" (formula "6")) + (rule "polySimp_addComm1" (formula "6") (term "0")) + (rule "polySimp_sepPosMonomial" (formula "15") (term "0,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "15") (term "1,0,0")) + (rule "mul_literals" (formula "15") (term "0,1,0,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "15") (term "1,1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "6")) + (rule "polySimp_mulComm0" (formula "6") (term "1")) + (rule "polySimp_rightDist" (formula "6") (term "1")) + (rule "mul_literals" (formula "6") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "6") (term "1,1")) + (rule "polySimp_elimOne" (formula "6") (term "1,1")) + (rule "elementOfSetMinus" (formula "1") (term "0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "ifthenelse_negated" (formula "1") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "5") (ifseqformula "6")) + (rule "mul_literals" (formula "5") (term "0,0")) + (rule "add_zero_left" (formula "5") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "5")) + (rule "mul_literals" (formula "5") (term "1")) + (rule "Class_invariant_axiom_for_LinkedList" (formula "13") (inst "i=i") (inst "j=j") (inst "i_0=i_0") (ifseqformula "15")) + (builtin "One Step Simplification" (formula "13")) + (rule "andLeft" (formula "13")) + (rule "andLeft" (formula "13")) + (rule "andLeft" (formula "15")) + (rule "andLeft" (formula "13")) + (rule "andLeft" (formula "13")) + (rule "andLeft" (formula "13")) + (rule "andLeft" (formula "13")) + (rule "eqSymm" (formula "18")) + (rule "eqSymm" (formula "20")) + (rule "eqSymm" (formula "19")) + (rule "eqSymm" (formula "17")) + (rule "eqSymm" (formula "16") (term "1,0,0,1,0")) + (rule "eqSymm" (formula "16") (term "1,1,0,1,0,1,0")) + (rule "eqSymm" (formula "16") (term "1,1,0")) + (rule "eqSymm" (formula "16") (term "0,1,0,1,0,1,0")) + (rule "eqSymm" (formula "15")) + (rule "polySimp_elimSub" (formula "18") (term "1,0,2,0")) + (rule "mul_literals" (formula "18") (term "1,1,0,2,0")) + (rule "polySimp_elimSub" (formula "16") (term "1,0,0,1,1,0")) + (rule "mul_literals" (formula "16") (term "1,1,0,0,1,1,0")) + (rule "polySimp_addComm0" (formula "16") (term "1,0,2,0,1,1,0")) + (rule "polySimp_addComm0" (formula "18") (term "1,0,2,0")) + (rule "polySimp_addComm0" (formula "16") (term "1,0,0,1,1,0")) + (rule "castedGetAny" (formula "16") (term "0,0,0,0,0,1,0")) + (rule "subsetSingletonLeft" (formula "14")) + (rule "subsetSingletonLeft" (formula "13")) + (rule "castedGetAny" (formula "17") (term "2,0")) + (rule "castedGetAny" (formula "16") (term "0,1,0,0,1,0")) + (rule "eqSymm" (formula "16") (term "1,0,0,1,0")) + (rule "castedGetAny" (formula "16") (term "1,1,1,1,0")) + (rule "castedGetAny" (formula "16") (term "1,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "16") (term "0,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "15") (term "0,1,0,1,0")) + (rule "castedGetAny" (formula "16") (term "2,0,1,1,0")) + (rule "castedGetAny" (formula "18") (term "2,0")) + (rule "inEqSimp_ltToLeq" (formula "16") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "16") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "16") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "16") (term "1,0,0,1,0,0")) + (rule "castedGetAny" (formula "16") (term "1,0,1,0,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "15") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,0,1,0,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "16") (term "0,0,0,1,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "16") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "15") (term "0,0,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "16") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "16") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "16") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "16") (term "1,1,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "16") (term "0,1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "16") (term "1,1,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "16") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "16") (term "1,1,0,0")) + (rule "polySimp_rightDist" (formula "16") (term "1,1,0,0")) + (rule "polySimp_mulLiterals" (formula "16") (term "1,1,1,0,0")) + (rule "mul_literals" (formula "16") (term "0,1,1,0,0")) + (rule "polySimp_elimOne" (formula "16") (term "1,1,1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "15") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,1,0,0,1,0")) + (rule "polySimp_rightDist" (formula "15") (term "1,1,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,1,1,0,0,1,0")) + (rule "mul_literals" (formula "15") (term "0,1,1,0,0,1,0")) + (rule "polySimp_elimOne" (formula "15") (term "1,1,1,0,0,1,0")) + (rule "inEqSimp_contradEq7" (formula "17") (term "0,0") (ifseqformula "4")) + (rule "times_zero_1" (formula "17") (term "1,0,0,0,0")) + (rule "add_zero_right" (formula "17") (term "0,0,0,0")) + (rule "leq_literals" (formula "17") (term "0,0,0")) + (builtin "One Step Simplification" (formula "17")) + (rule "applyEq" (formula "21") (term "1,0") (ifseqformula "17")) + (rule "inEqSimp_contradEq7" (formula "18") (term "0,0") (ifseqformula "4")) + (rule "times_zero_1" (formula "18") (term "1,0,0,0,0")) + (rule "add_zero_right" (formula "18") (term "0,0,0,0")) + (rule "leq_literals" (formula "18") (term "0,0,0")) + (builtin "One Step Simplification" (formula "18")) + (rule "elementOfUnionEQ" (formula "1") (term "0,0") (ifseqformula "15")) + (builtin "One Step Simplification" (formula "1")) + (rule "applyEqReverse" (formula "7") (term "1,1") (ifseqformula "1")) + (rule "applyEqReverse" (formula "23") (term "1,1,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "5") (term "0") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "polySimp_homoEq" (formula "21") (term "0,0")) + (rule "polySimp_addComm1" (formula "21") (term "0,0,0")) + (rule "inEqSimp_homoInEq0" (formula "5")) + (rule "polySimp_addComm1" (formula "5") (term "0")) + (rule "polySimp_sepPosMonomial" (formula "21") (term "0,0")) + (rule "polySimp_mulComm0" (formula "21") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "21") (term "1,0,0")) + (rule "mul_literals" (formula "21") (term "0,1,0,0")) + (rule "polySimp_mulLiterals" (formula "21") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "21") (term "1,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "5")) + (rule "polySimp_mulComm0" (formula "5") (term "1")) + (rule "polySimp_rightDist" (formula "5") (term "1")) + (rule "mul_literals" (formula "5") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "5") (term "1,1")) + (rule "polySimp_elimOne" (formula "5") (term "1,1")) + (rule "elementOfUnionEQ" (formula "1") (term "0,0") (ifseqformula "13")) + (builtin "One Step Simplification" (formula "1")) + (rule "applyEqReverse" (formula "21") (term "0,2,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "2") (term "0,1,0,0,1,1,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "2") (term "0,1,1,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "2") (term "0,0,0,0,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "2") (term "0,0,0,0,1,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "2") (term "0,1,2,0") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "elementOfUnionEQ" (formula "11") (ifseqformula "12")) + (builtin "One Step Simplification" (formula "11")) + (rule "true_left" (formula "11")) + (rule "elementOfUnionEQ" (formula "10") (ifseqformula "11")) + (builtin "One Step Simplification" (formula "10")) + (rule "true_left" (formula "10")) + (rule "elementOfUnionEQ" (formula "1") (term "0,0,0,0") (ifseqformula "10")) + (builtin "One Step Simplification" (formula "1")) + (rule "sortsDisjointModuloNull" (formula "1") (term "0,0,0,0,0")) + (rule "replace_known_right" (formula "1") (term "1,0,0,0,0,0") (ifseqformula "17")) + (builtin "One Step Simplification" (formula "1")) + (rule "elementOfInfiniteUnion" (formula "1") (term "0,0,0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "eqSymm" (formula "1") (term "1,0,0,0,0,0")) + (rule "nnf_imp2or" (formula "11") (term "0")) + (rule "nnf_notAnd" (formula "11") (term "0,0")) + (rule "inEqSimp_notLeq" (formula "11") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "11") (term "1,0,0,1,0,0")) + (rule "mul_literals" (formula "11") (term "0,1,0,0,1,0,0")) + (rule "polySimp_addAssoc" (formula "11") (term "0,0,1,0,0")) + (rule "add_literals" (formula "11") (term "0,0,0,1,0,0")) + (rule "add_zero_left" (formula "11") (term "0,0,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "11") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "11") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "11") (term "1,1,0,0")) + (rule "inEqSimp_notGeq" (formula "11") (term "0,0,0")) + (rule "times_zero_1" (formula "11") (term "1,0,0,0,0,0")) + (rule "add_zero_right" (formula "11") (term "0,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "11") (term "0,0,0")) + (rule "mul_literals" (formula "11") (term "1,0,0,0")) + (rule "nnf_imp2or" (formula "11") (term "0,1,0,1,0")) + (rule "nnf_imp2or" (formula "11") (term "1,0,1,0,1,0")) + (rule "nnf_notAnd" (formula "11") (term "0,0,1,0,1,0")) + (rule "inEqSimp_notLeq" (formula "11") (term "1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "11") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "11") (term "0,1,0,0,1,0,0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "11") (term "0,0,1,0,0,1,0,1,0")) + (rule "add_literals" (formula "11") (term "0,0,0,1,0,0,1,0,1,0")) + (rule "add_zero_left" (formula "11") (term "0,0,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "11") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "11") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "11") (term "1,1,0,0,1,0,1,0")) + (rule "inEqSimp_notGeq" (formula "11") (term "0,0,0,1,0,1,0")) + (rule "times_zero_1" (formula "11") (term "1,0,0,0,0,0,1,0,1,0")) + (rule "add_zero_right" (formula "11") (term "0,0,0,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "11") (term "0,0,0,1,0,1,0")) + (rule "mul_literals" (formula "11") (term "1,0,0,0,1,0,1,0")) + (rule "commute_and_2" (formula "1") (term "0,0,0,0,0")) + (rule "shift_paren_or" (formula "11") (term "0,1,0,1,0")) + (rule "commute_or_2" (formula "11") (term "0,0,1,0,1,0")) + (rule "ifthenelse_to_or_left" (formula "11") (term "1,1,0")) + (rule "eqSymm" (formula "11") (term "1,0,1,1,0")) + (rule "eqSymm" (formula "11") (term "1,1,1,1,0")) + (rule "commute_or" (formula "11") (term "0,1,1,0")) + (rule "commute_or" (formula "11") (term "1,1,1,0")) + (rule "commute_or" (formula "11") (term "0,0,0,1,0,1,0")) + (rule "commute_and" (formula "1") (term "0,0,0,0,0,0")) + (rule "lenNonNegative" (formula "15") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "15")) + (rule "applyEq" (formula "15") (term "0") (ifseqformula "16")) + (rule "inEqSimp_subsumption1" (formula "15") (ifseqformula "2")) + (rule "leq_literals" (formula "15") (term "0")) + (builtin "One Step Simplification" (formula "15")) + (rule "true_left" (formula "15")) + (rule "lenNonNegative" (formula "14") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "14")) + (rule "applyEq" (formula "14") (term "0") (ifseqformula "15")) + (rule "inEqSimp_subsumption1" (formula "14") (ifseqformula "2")) + (rule "leq_literals" (formula "14") (term "0")) + (builtin "One Step Simplification" (formula "14")) + (rule "true_left" (formula "14")) + (rule "ifthenelse_split" (formula "18") (term "0")) + (branch "self.size = 1 + i_0 TRUE" + (rule "eqSymm" (formula "19")) + (rule "applyEq" (formula "3") (term "0") (ifseqformula "1")) + (rule "inEqSimp_homoInEq1" (formula "3")) + (rule "polySimp_mulComm0" (formula "3") (term "1,0")) + (rule "polySimp_rightDist" (formula "3") (term "1,0")) + (rule "mul_literals" (formula "3") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "3") (term "0")) + (rule "add_literals" (formula "3") (term "0,0")) + (rule "add_zero_left" (formula "3") (term "0")) + (rule "applyEq" (formula "12") (term "1,1,0,0,1,0,1,0") (ifseqformula "1")) + (rule "applyEq" (formula "11") (term "1,1,1,0,0,1,0") (ifseqformula "1")) + (rule "polySimp_addAssoc" (formula "11") (term "1,1,0,0,1,0")) + (rule "add_literals" (formula "11") (term "0,1,1,0,0,1,0")) + (rule "add_zero_left" (formula "11") (term "1,1,0,0,1,0")) + (rule "applyEq" (formula "12") (term "1,1,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "14") (term "1,1,0") (ifseqformula "1")) + (rule "polySimp_addAssoc" (formula "14") (term "1,0")) + (rule "add_literals" (formula "14") (term "0,1,0")) + (rule "add_zero_left" (formula "14") (term "1,0")) + (rule "applyEq" (formula "2") (term "1,1,1,0,0,0,0,0") (ifseqformula "1")) + (rule "polySimp_addAssoc" (formula "2") (term "1,1,0,0,0,0,0")) + (rule "add_literals" (formula "2") (term "0,1,1,0,0,0,0,0")) + (rule "add_zero_left" (formula "2") (term "1,1,0,0,0,0,0")) + (rule "applyEq" (formula "5") (term "0") (ifseqformula "1")) + (rule "inEqSimp_homoInEq1" (formula "5")) + (rule "polySimp_pullOutFactor1" (formula "5") (term "0")) + (rule "add_literals" (formula "5") (term "1,0")) + (rule "times_zero_1" (formula "5") (term "0")) + (rule "leq_literals" (formula "5")) + (rule "true_left" (formula "5")) + (rule "applyEq" (formula "2") (term "1,0,0,0,0,0,0,0") (ifseqformula "13")) + (rule "applyEq" (formula "2") (term "0,0,0,1,0,0") (ifseqformula "13")) + (rule "applyEq" (formula "2") (term "1,2,0") (ifseqformula "13")) + (rule "applyEq" (formula "2") (term "1,1,0") (ifseqformula "13")) + (rule "applyEq" (formula "2") (term "1,0,0,1,1,0,0") (ifseqformula "13")) + (rule "applyEq" (formula "14") (term "1") (ifseqformula "1")) + (rule "applyEq" (formula "15") (term "1") (ifseqformula "1")) + (rule "applyEq" (formula "11") (term "1,1,1,1,1,1,0") (ifseqformula "1")) + (rule "polySimp_addAssoc" (formula "11") (term "1,1,1,1,1,0")) + (rule "add_literals" (formula "11") (term "0,1,1,1,1,1,0")) + (rule "add_zero_left" (formula "11") (term "1,1,1,1,1,0")) + (rule "applyEq" (formula "11") (term "1,1,0,1,0,1,1,0") (ifseqformula "1")) + (rule "polySimp_addAssoc" (formula "11") (term "1,0,1,0,1,1,0")) + (rule "add_literals" (formula "11") (term "0,1,0,1,0,1,1,0")) + (rule "add_zero_left" (formula "11") (term "1,0,1,0,1,1,0")) + (rule "inEqSimp_invertInEq0" (formula "3")) + (rule "times_zero_2" (formula "3") (term "1")) + (rule "polySimp_mulLiterals" (formula "3") (term "0")) + (rule "polySimp_elimOne" (formula "3") (term "0")) + (rule "all_pull_out1" (formula "10") (term "0,1,0")) + (rule "seqGetAlphaCast" (formula "11") (term "0")) + (rule "castedGetAny" (formula "11") (term "0")) + (builtin "One Step Simplification" (formula "11")) + (rule "true_left" (formula "11")) + (rule "all_pull_out0" (formula "10") (term "1,0")) + (rule "shift_paren_and" (formula "10") (term "0,1,0")) + (rule "all_pull_out3" (formula "10") (term "0")) + (rule "cnf_rightDist" (formula "10") (term "0,0")) + (rule "distr_forallAnd" (formula "10") (term "0")) + (builtin "One Step Simplification" (formula "10")) + (rule "distr_forallAnd" (formula "10")) + (rule "andLeft" (formula "10")) + (rule "shift_paren_or" (formula "11") (term "0")) + (rule "commute_or_2" (formula "11") (term "0,0")) + (rule "inEqSimp_or_weaken3" (formula "11") (term "0")) + (builtin "One Step Simplification" (formula "11")) + (rule "cnf_rightDist" (formula "10") (term "0,0")) + (rule "distr_forallAnd" (formula "10") (term "0")) + (builtin "One Step Simplification" (formula "10")) + (rule "distr_forallAnd" (formula "10")) + (rule "andLeft" (formula "10")) + (rule "commute_or_2" (formula "11") (term "0")) + (builtin "One Step Simplification" (formula "11")) + (rule "inEqSimp_homoInEq1" (formula "11") (term "1,1")) + (rule "polySimp_pullOutFactor1b" (formula "11") (term "0,1,1")) + (rule "add_literals" (formula "11") (term "1,1,0,1,1")) + (rule "times_zero_1" (formula "11") (term "1,0,1,1")) + (rule "add_zero_right" (formula "11") (term "0,1,1")) + (rule "leq_literals" (formula "11") (term "1,1")) + (builtin "One Step Simplification" (formula "11")) + (rule "applyEq" (formula "11") (term "1,0,0") (ifseqformula "14")) + (rule "inEqSimp_contradInEq1" (formula "11") (term "1") (ifseqformula "3")) + (rule "qeq_literals" (formula "11") (term "0,1")) + (builtin "One Step Simplification" (formula "11")) + (rule "applyEq" (formula "2") (term "2,0") (ifseqformula "11")) + (rule "cnf_rightDist" (formula "10") (term "0,0")) + (rule "distr_forallAnd" (formula "10") (term "0")) + (builtin "One Step Simplification" (formula "10")) + (rule "distr_forallAnd" (formula "10")) + (rule "andLeft" (formula "10")) + (rule "commute_or_2" (formula "11") (term "0,0")) + (rule "commute_or_2" (formula "11") (term "0,0,0")) + (rule "cnf_rightDist" (formula "10") (term "0")) + (rule "distr_forallAnd" (formula "10")) + (rule "andLeft" (formula "10")) + (rule "commute_or_2" (formula "10") (term "0")) + (rule "commute_or" (formula "11") (term "0")) + (rule "commute_or" (formula "10") (term "0,0")) + (rule "commute_or_2" (formula "12") (term "0,0,0,0")) + (rule "shift_paren_or" (formula "12") (term "0,0,0,0,0")) + (rule "allLeft" (formula "11") (inst "t=i_0")) + (rule "eqSymm" (formula "11") (term "1")) + (rule "inEqSimp_homoInEq1" (formula "11") (term "1,0")) + (rule "polySimp_pullOutFactor1b" (formula "11") (term "0,1,0")) + (rule "add_literals" (formula "11") (term "1,1,0,1,0")) + (rule "times_zero_1" (formula "11") (term "1,0,1,0")) + (rule "add_zero_right" (formula "11") (term "0,1,0")) + (rule "leq_literals" (formula "11") (term "1,0")) + (builtin "One Step Simplification" (formula "11")) + (rule "applyEq" (formula "11") (term "1,1,1") (ifseqformula "17")) + (rule "inEqSimp_contradInEq1" (formula "11") (term "0") (ifseqformula "3")) + (rule "qeq_literals" (formula "11") (term "0,0")) + (builtin "One Step Simplification" (formula "11")) + (rule "allLeft" (formula "12") (inst "t=Z(0(#))")) + (rule "leq_literals" (formula "12") (term "0,0")) + (builtin "One Step Simplification" (formula "12")) + (rule "eqSymm" (formula "12") (term "1")) + (rule "inEqSimp_homoInEq1" (formula "12") (term "0")) + (rule "times_zero_2" (formula "12") (term "1,0,0")) + (rule "add_zero_right" (formula "12") (term "0,0")) + (rule "applyEq" (formula "12") (term "1,1,1") (ifseqformula "17")) + (rule "inEqSimp_sepPosMonomial0" (formula "12") (term "0")) + (rule "mul_literals" (formula "12") (term "1,0")) + (rule "inEqSimp_contradInEq1" (formula "12") (term "0") (ifseqformula "3")) + (rule "qeq_literals" (formula "12") (term "0,0")) + (builtin "One Step Simplification" (formula "12")) + (rule "allLeft" (formula "10") (inst "t=Z(0(#))")) + (rule "leq_literals" (formula "10") (term "1,0")) + (builtin "One Step Simplification" (formula "10")) + (rule "inEqSimp_homoInEq1" (formula "10") (term "1")) + (rule "times_zero_2" (formula "10") (term "1,0,1")) + (rule "add_zero_right" (formula "10") (term "0,1")) + (rule "applyEq" (formula "10") (term "0,0,0") (ifseqformula "18")) + (rule "inEqSimp_sepPosMonomial0" (formula "10") (term "1")) + (rule "mul_literals" (formula "10") (term "1,1")) + (rule "inEqSimp_contradInEq1" (formula "10") (term "1") (ifseqformula "3")) + (rule "qeq_literals" (formula "10") (term "0,1")) + (builtin "One Step Simplification" (formula "10")) + (rule "notLeft" (formula "10")) + (rule "referencedObjectIsCreatedRight" (formula "22") (ifseqformula "21")) + (rule "close" (formula "22") (ifseqformula "4")) + ) + (branch "self.size = 1 + i_0 FALSE" + (rule "inEqSimp_strengthen1" (formula "4") (ifseqformula "18")) + (rule "polySimp_addAssoc" (formula "4") (term "1")) + (rule "add_literals" (formula "4") (term "0,1")) + (rule "inEqSimp_contradEq7" (formula "18") (ifseqformula "4")) + (rule "polySimp_rightDist" (formula "18") (term "1,0,0")) + (rule "mul_literals" (formula "18") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "18") (term "0,0")) + (rule "polySimp_addComm1" (formula "18") (term "0,0,0")) + (rule "add_literals" (formula "18") (term "0,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "18") (term "0,0")) + (rule "add_literals" (formula "18") (term "1,1,0,0")) + (rule "times_zero_1" (formula "18") (term "1,0,0")) + (rule "add_zero_right" (formula "18") (term "0,0")) + (rule "leq_literals" (formula "18") (term "0")) + (builtin "One Step Simplification" (formula "18")) + (rule "false_right" (formula "18")) + (rule "all_pull_out1" (formula "11") (term "0,1,0")) + (rule "seqGetAlphaCast" (formula "12") (term "0")) + (rule "castedGetAny" (formula "12") (term "0")) + (builtin "One Step Simplification" (formula "12")) + (rule "true_left" (formula "12")) + (rule "all_pull_out0" (formula "11") (term "1,0")) + (rule "shift_paren_and" (formula "11") (term "0,1,0")) + (rule "seqGetAlphaCast" (formula "13") (term "0")) + (rule "castedGetAny" (formula "13") (term "0")) + (builtin "One Step Simplification" (formula "13")) + (rule "true_left" (formula "13")) + (rule "all_pull_out3" (formula "11") (term "0")) + (rule "cnf_rightDist" (formula "11") (term "0,0")) + (rule "distr_forallAnd" (formula "11") (term "0")) + (builtin "One Step Simplification" (formula "11")) + (rule "distr_forallAnd" (formula "11")) + (rule "andLeft" (formula "11")) + (rule "shift_paren_or" (formula "12") (term "0")) + (rule "commute_or_2" (formula "12") (term "0,0")) + (rule "inEqSimp_or_weaken3" (formula "12") (term "0")) + (rule "polySimp_addAssoc" (formula "12") (term "1,0,1,0")) + (rule "add_literals" (formula "12") (term "0,1,0,1,0")) + (rule "add_zero_left" (formula "12") (term "1,0,1,0")) + (builtin "One Step Simplification" (formula "12")) + (rule "cnf_rightDist" (formula "11") (term "0,0")) + (rule "distr_forallAnd" (formula "11") (term "0")) + (builtin "One Step Simplification" (formula "11")) + (rule "distr_forallAnd" (formula "11")) + (rule "andLeft" (formula "11")) + (rule "commute_or_2" (formula "12") (term "0")) + (builtin "One Step Simplification" (formula "12")) + (rule "inEqSimp_homoInEq1" (formula "12") (term "1,1")) + (rule "polySimp_mulComm0" (formula "12") (term "1,0,1,1")) + (rule "polySimp_rightDist" (formula "12") (term "1,0,1,1")) + (rule "mul_literals" (formula "12") (term "0,1,0,1,1")) + (rule "polySimp_addAssoc" (formula "12") (term "0,1,1")) + (rule "polySimp_addComm0" (formula "12") (term "0,0,1,1")) + (rule "polySimp_pullOutFactor1b" (formula "12") (term "0,1,1")) + (rule "add_literals" (formula "12") (term "1,1,0,1,1")) + (rule "times_zero_1" (formula "12") (term "1,0,1,1")) + (rule "add_zero_right" (formula "12") (term "0,1,1")) + (rule "leq_literals" (formula "12") (term "1,1")) + (builtin "One Step Simplification" (formula "12")) + (rule "inEqSimp_homoInEq0" (formula "12") (term "1")) + (rule "polySimp_mulComm0" (formula "12") (term "1,0,1")) + (rule "polySimp_rightDist" (formula "12") (term "1,0,1")) + (rule "mul_literals" (formula "12") (term "0,1,0,1")) + (rule "polySimp_addAssoc" (formula "12") (term "0,1")) + (rule "add_literals" (formula "12") (term "0,0,1")) + (rule "add_zero_left" (formula "12") (term "0,1")) + (rule "applyEq" (formula "12") (term "1,0,0") (ifseqformula "15")) + (rule "inEqSimp_invertInEq1" (formula "12") (term "1")) + (rule "times_zero_2" (formula "12") (term "1,1")) + (rule "polySimp_mulLiterals" (formula "12") (term "0,1")) + (rule "polySimp_elimOne" (formula "12") (term "0,1")) + (rule "inEqSimp_contradInEq1" (formula "12") (term "1") (ifseqformula "2")) + (rule "qeq_literals" (formula "12") (term "0,1")) + (builtin "One Step Simplification" (formula "12")) + (rule "cnf_rightDist" (formula "11") (term "0,0")) + (rule "distr_forallAnd" (formula "11") (term "0")) + (builtin "One Step Simplification" (formula "11")) + (rule "distr_forallAnd" (formula "11")) + (rule "andLeft" (formula "11")) + (rule "commute_or_2" (formula "12") (term "0,0")) + (rule "commute_or_2" (formula "12") (term "0,0,0")) + (rule "cnf_rightDist" (formula "11") (term "0")) + (rule "distr_forallAnd" (formula "11")) + (rule "andLeft" (formula "11")) + (rule "commute_or_2" (formula "11") (term "0")) + (rule "commute_or" (formula "12") (term "0")) + (rule "commute_or" (formula "11") (term "0,0")) + (rule "commute_or_2" (formula "13") (term "0,0,0,0")) + (rule "shift_paren_or" (formula "13") (term "0,0,0,0,0")) + (rule "ifthenelse_split" (formula "1") (term "0")) + (branch " !exists int i_0; ( (Node)self.nodeseq[i_0] = (Node)self.nodeseq[i_0] & i_0 >= 0 & i_0 <= -1 + self.size) | !(Node)self.nodeseq[i_0] = null & !(Node)self.nodeseq[i_0]. = TRUE TRUE" + (rule "applyEqReverse" (formula "23") (term "1") (ifseqformula "2")) + (rule "hideAuxiliaryEq" (formula "2")) + (rule "eqSymm" (formula "22")) + (rule "allLeft" (formula "13") (inst "t=i_0")) + (rule "inEqSimp_commuteGeq" (formula "13") (term "1,0,0,0,0")) + (rule "inEqSimp_contradInEq1" (formula "13") (term "1,0,0,0,0") (ifseqformula "4")) + (rule "inEqSimp_homoInEq1" (formula "13") (term "0,1,0,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "13") (term "0,0,1,0,0,0,0")) + (rule "add_literals" (formula "13") (term "1,1,0,0,1,0,0,0,0")) + (rule "times_zero_1" (formula "13") (term "1,0,0,1,0,0,0,0")) + (rule "add_zero_right" (formula "13") (term "0,0,1,0,0,0,0")) + (rule "leq_literals" (formula "13") (term "0,1,0,0,0,0")) + (builtin "One Step Simplification" (formula "13")) + (rule "inEqSimp_contradInEq1" (formula "13") (term "1,0,0,0,0") (ifseqformula "3")) + (rule "qeq_literals" (formula "13") (term "0,1,0,0,0,0")) + (builtin "One Step Simplification" (formula "13")) + (rule "commute_or_2" (formula "13") (term "0")) + (rule "allLeft" (formula "11") (inst "t=add(Z(1(#)), i_0)")) + (rule "inEqSimp_commuteGeq" (formula "11") (term "1")) + (rule "inEqSimp_homoInEq0" (formula "11") (term "1,0")) + (rule "polySimp_mulComm0" (formula "11") (term "1,0,1,0")) + (rule "polySimp_rightDist" (formula "11") (term "1,0,1,0")) + (rule "mul_literals" (formula "11") (term "0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "11") (term "0,1,0")) + (rule "add_literals" (formula "11") (term "0,0,1,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "11") (term "1,0")) + (rule "polySimp_mulLiterals" (formula "11") (term "0,1,0")) + (rule "polySimp_elimOne" (formula "11") (term "0,1,0")) + (rule "inEqSimp_contradInEq1" (formula "11") (term "1") (ifseqformula "4")) + (rule "inEqSimp_homoInEq1" (formula "11") (term "0,1")) + (rule "polySimp_mulComm0" (formula "11") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "11") (term "1,0,0,1")) + (rule "mul_literals" (formula "11") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "11") (term "0,0,1")) + (rule "polySimp_addComm1" (formula "11") (term "0,0,0,1")) + (rule "add_literals" (formula "11") (term "0,0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "11") (term "0,0,1")) + (rule "add_literals" (formula "11") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "11") (term "1,0,0,1")) + (rule "add_zero_right" (formula "11") (term "0,0,1")) + (rule "leq_literals" (formula "11") (term "0,1")) + (builtin "One Step Simplification" (formula "11")) + (rule "inEqSimp_contradInEq1" (formula "11") (term "1") (ifseqformula "3")) + (rule "qeq_literals" (formula "11") (term "0,1")) + (builtin "One Step Simplification" (formula "11")) + (rule "notLeft" (formula "11")) + (rule "allLeft" (formula "12") (inst "t=i_0")) + (rule "eqSymm" (formula "12") (term "1")) + (rule "inEqSimp_commuteGeq" (formula "12") (term "1,0")) + (rule "inEqSimp_contradInEq1" (formula "12") (term "0,0") (ifseqformula "3")) + (rule "qeq_literals" (formula "12") (term "0,0,0")) + (builtin "One Step Simplification" (formula "12")) + (rule "inEqSimp_contradInEq1" (formula "12") (term "0") (ifseqformula "4")) + (rule "inEqSimp_homoInEq1" (formula "12") (term "0,0")) + (rule "polySimp_pullOutFactor1b" (formula "12") (term "0,0,0")) + (rule "add_literals" (formula "12") (term "1,1,0,0,0")) + (rule "times_zero_1" (formula "12") (term "1,0,0,0")) + (rule "add_zero_right" (formula "12") (term "0,0,0")) + (rule "leq_literals" (formula "12") (term "0,0")) + (builtin "One Step Simplification" (formula "12")) + (rule "allLeft" (formula "13") (inst "t=Z(0(#))")) + (rule "leq_literals" (formula "13") (term "0,0")) + (builtin "One Step Simplification" (formula "13")) + (rule "eqSymm" (formula "13") (term "1")) + (rule "inEqSimp_commuteGeq" (formula "13") (term "0")) + (rule "applyEq" (formula "13") (term "1,1,1") (ifseqformula "19")) + (rule "inEqSimp_contradInEq1" (formula "13") (term "0") (ifseqformula "2")) + (rule "qeq_literals" (formula "13") (term "0,0")) + (builtin "One Step Simplification" (formula "13")) + (rule "allLeft" (formula "18") (inst "t=i_0")) + (rule "inEqSimp_homoInEq1" (formula "18") (term "1")) + (rule "polySimp_addComm1" (formula "18") (term "0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "18") (term "1")) + (rule "polySimp_mulComm0" (formula "18") (term "1,1")) + (rule "polySimp_rightDist" (formula "18") (term "1,1")) + (rule "polySimp_mulLiterals" (formula "18") (term "1,1,1")) + (rule "mul_literals" (formula "18") (term "0,1,1")) + (rule "polySimp_elimOne" (formula "18") (term "1,1,1")) + (rule "inEqSimp_contradInEq1" (formula "18") (term "1,0") (ifseqformula "3")) + (rule "qeq_literals" (formula "18") (term "0,1,0")) + (builtin "One Step Simplification" (formula "18")) + (rule "inEqSimp_contradInEq1" (formula "18") (term "1") (ifseqformula "4")) + (rule "inEqSimp_homoInEq1" (formula "18") (term "0,1")) + (rule "polySimp_mulComm0" (formula "18") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "18") (term "1,0,0,1")) + (rule "mul_literals" (formula "18") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "18") (term "0,0,1")) + (rule "polySimp_addComm1" (formula "18") (term "0,0,0,1")) + (rule "add_literals" (formula "18") (term "0,0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "18") (term "0,0,1")) + (rule "add_literals" (formula "18") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "18") (term "1,0,0,1")) + (rule "add_zero_right" (formula "18") (term "0,0,1")) + (rule "leq_literals" (formula "18") (term "0,1")) + (builtin "One Step Simplification" (formula "18")) + (rule "allLeft" (formula "11") (inst "t=Z(0(#))")) + (rule "leq_literals" (formula "11") (term "1,0")) + (builtin "One Step Simplification" (formula "11")) + (rule "inEqSimp_commuteGeq" (formula "11") (term "1")) + (rule "applyEq" (formula "11") (term "0,0,0") (ifseqformula "21")) + (rule "inEqSimp_contradInEq1" (formula "11") (term "1") (ifseqformula "2")) + (rule "qeq_literals" (formula "11") (term "0,1")) + (builtin "One Step Simplification" (formula "11")) + (rule "notLeft" (formula "11")) + (rule "referencedObjectIsCreatedRight" (formula "26") (ifseqformula "24")) + (rule "close" (formula "26") (ifseqformula "5")) + ) + (branch " !exists int i_0; ( (Node)self.nodeseq[i_0] = (Node)self.nodeseq[i_0] & i_0 >= 0 & i_0 <= -1 + self.size) | !(Node)self.nodeseq[i_0] = null & !(Node)self.nodeseq[i_0]. = TRUE FALSE" + (rule "orRight" (formula "20")) + (rule "notRight" (formula "20")) + (rule "exLeft" (formula "1") (inst "sk=i_0_0")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "1")) + (rule "applyEqReverse" (formula "26") (term "1") (ifseqformula "4")) + (rule "hideAuxiliaryEq" (formula "4")) + (rule "eqSymm" (formula "25")) + (rule "inEqSimp_homoInEq0" (formula "3")) + (rule "polySimp_addComm1" (formula "3") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "3")) + (rule "polySimp_mulComm0" (formula "3") (term "1")) + (rule "polySimp_rightDist" (formula "3") (term "1")) + (rule "mul_literals" (formula "3") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,1")) + (rule "polySimp_elimOne" (formula "3") (term "1,1")) + (rule "allLeft" (formula "17") (inst "t=i_0")) + (rule "replace_known_right" (formula "17") (term "0,0") (ifseqformula "26")) + (builtin "One Step Simplification" (formula "17")) + (rule "inEqSimp_homoInEq1" (formula "17") (term "1")) + (rule "polySimp_addComm1" (formula "17") (term "0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "17") (term "1")) + (rule "polySimp_mulComm0" (formula "17") (term "1,1")) + (rule "polySimp_rightDist" (formula "17") (term "1,1")) + (rule "mul_literals" (formula "17") (term "0,1,1")) + (rule "polySimp_mulLiterals" (formula "17") (term "1,1,1")) + (rule "polySimp_elimOne" (formula "17") (term "1,1,1")) + (rule "inEqSimp_contradInEq1" (formula "17") (term "0") (ifseqformula "5")) + (rule "qeq_literals" (formula "17") (term "0,0")) + (builtin "One Step Simplification" (formula "17")) + (rule "inEqSimp_contradInEq1" (formula "17") (ifseqformula "6")) + (rule "andLeft" (formula "17")) + (rule "inEqSimp_homoInEq1" (formula "17")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0")) + (rule "polySimp_rightDist" (formula "17") (term "1,0")) + (rule "mul_literals" (formula "17") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "17") (term "0")) + (rule "polySimp_addComm1" (formula "17") (term "0,0")) + (rule "add_literals" (formula "17") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "17") (term "0")) + (rule "add_literals" (formula "17") (term "1,1,0")) + (rule "times_zero_1" (formula "17") (term "1,0")) + (rule "add_zero_right" (formula "17") (term "0")) + (rule "leq_literals" (formula "17")) + (rule "closeFalse" (formula "17")) + ) + ) + ) + (branch "Step Case" + (builtin "One Step Simplification" (formula "1")) + (rule "andLeft" (formula "1")) + (rule "allRight" (formula "9") (inst "sk=nv_0")) + (rule "impRight" (formula "9")) + (rule "andLeft" (formula "1")) + (rule "impRight" (formula "11")) + (rule "eqSymm" (formula "14")) + (rule "eqSymm" (formula "14") (term "0,0")) + (rule "polySimp_elimSub" (formula "14") (term "0,0,0")) + (rule "mul_literals" (formula "14") (term "1,0,0,0")) + (rule "polySimp_homoEq" (formula "14") (term "0,0")) + (rule "polySimp_mulComm0" (formula "14") (term "1,0,0,0")) + (rule "polySimp_addComm0" (formula "12") (term "1,0,1,0")) + (rule "polySimp_addComm0" (formula "1") (term "0")) + (rule "polySimp_addComm0" (formula "14") (term "1,0,2,0")) + (rule "polySimp_addComm0" (formula "14") (term "1,1,0,0,0")) + (rule "polySimp_rightDist" (formula "14") (term "1,0,0,0")) + (rule "mul_literals" (formula "14") (term "0,1,0,0,0")) + (rule "castedGetAny" (formula "3") (term "1,0,1")) + (rule "castedGetAny" (formula "14") (term "1,1")) + (rule "polySimp_addAssoc" (formula "14") (term "0,0,0")) + (rule "polySimp_addComm0" (formula "14") (term "0,0,0,0")) + (rule "castedGetAny" (formula "12") (term "1,0")) + (rule "castedGetAny" (formula "14") (term "2,0")) + (rule "inEqSimp_ltToLeq" (formula "5")) + (rule "polySimp_mulComm0" (formula "5") (term "1,0,0")) + (rule "polySimp_addComm1" (formula "5") (term "0")) + (rule "inEqSimp_ltToLeq" (formula "3") (term "0")) + (rule "polySimp_mulComm0" (formula "3") (term "1,0,0,0")) + (rule "polySimp_addComm1" (formula "3") (term "0,0")) + (rule "inEqSimp_ltToLeq" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0")) + (rule "polySimp_addComm1" (formula "1") (term "0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "4")) + (rule "polySimp_sepNegMonomial" (formula "14") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "14") (term "0,0,0")) + (rule "polySimp_elimOne" (formula "14") (term "0,0,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "5")) + (rule "polySimp_mulLiterals" (formula "5") (term "0")) + (rule "polySimp_elimOne" (formula "5") (term "0")) + (rule "inEqSimp_sepNegMonomial0" (formula "3") (term "0")) + (rule "polySimp_mulLiterals" (formula "3") (term "0,0")) + (rule "polySimp_elimOne" (formula "3") (term "0,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "0")) + (rule "polySimp_elimOne" (formula "1") (term "0")) + (rule "inEqSimp_subsumption1" (formula "3") (term "0") (ifseqformula "1")) + (rule "inEqSimp_homoInEq0" (formula "3") (term "0,0")) + (rule "polySimp_mulComm0" (formula "3") (term "1,0,0,0")) + (rule "polySimp_rightDist" (formula "3") (term "1,0,0,0")) + (rule "mul_literals" (formula "3") (term "0,1,0,0,0")) + (rule "polySimp_addAssoc" (formula "3") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "3") (term "0,0,0,0")) + (rule "add_literals" (formula "3") (term "0,0,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "3") (term "0,0,0")) + (rule "add_literals" (formula "3") (term "1,1,0,0,0")) + (rule "times_zero_1" (formula "3") (term "1,0,0,0")) + (rule "add_zero_right" (formula "3") (term "0,0,0")) + (rule "qeq_literals" (formula "3") (term "0,0")) + (builtin "One Step Simplification" (formula "3")) + (rule "pullOutSelect" (formula "14") (term "0,1,1") (inst "selectSK=LinkedList_nodeseq_0")) + (rule "applyEq" (formula "15") (term "0,2,0") (ifseqformula "1")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "14")) (ifInst "" (formula "9"))) + (rule "elementOfSetMinus" (formula "1") (term "0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "ifthenelse_negated" (formula "1") (term "0")) + (rule "pullOutSelect" (formula "15") (term "0,0,0") (inst "selectSK=LinkedList_size_0")) + (rule "applyEq" (formula "7") (term "0") (ifseqformula "1")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "15")) (ifInst "" (formula "10"))) + (rule "polySimp_homoEq" (formula "16") (term "0,0")) + (rule "polySimp_addComm1" (formula "16") (term "0,0,0")) + (rule "inEqSimp_homoInEq1" (formula "7")) + (rule "polySimp_addComm1" (formula "7") (term "0")) + (rule "polySimp_sepPosMonomial" (formula "16") (term "0,0")) + (rule "polySimp_mulComm0" (formula "16") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "16") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "16") (term "1,1,0,0")) + (rule "mul_literals" (formula "16") (term "0,1,0,0")) + (rule "polySimp_elimOne" (formula "16") (term "1,1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "7")) + (rule "polySimp_mulComm0" (formula "7") (term "1")) + (rule "polySimp_rightDist" (formula "7") (term "1")) + (rule "polySimp_mulLiterals" (formula "7") (term "1,1")) + (rule "mul_literals" (formula "7") (term "0,1")) + (rule "polySimp_elimOne" (formula "7") (term "1,1")) + (rule "elementOfSetMinus" (formula "1") (term "0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "ifthenelse_negated" (formula "1") (term "0")) + (rule "pullOutSelect" (formula "16") (term "1") (inst "selectSK=Node_next_0")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1")) + (rule "elementOfSetMinus" (formula "1") (term "0,0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "inEqSimp_exactShadow3" (formula "7") (ifseqformula "8")) + (rule "times_zero_1" (formula "7") (term "0,0")) + (rule "add_zero_left" (formula "7") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "7")) + (rule "mul_literals" (formula "7") (term "1")) + (rule "Class_invariant_axiom_for_LinkedList" (formula "15") (inst "i=i") (inst "j=j") (inst "i_0=i_0") (ifseqformula "17")) + (builtin "One Step Simplification" (formula "15")) + (rule "andLeft" (formula "15")) + (rule "andLeft" (formula "15")) + (rule "andLeft" (formula "17")) + (rule "andLeft" (formula "15")) + (rule "andLeft" (formula "15")) + (rule "andLeft" (formula "15")) + (rule "andLeft" (formula "15")) + (rule "eqSymm" (formula "20")) + (rule "eqSymm" (formula "22")) + (rule "eqSymm" (formula "21")) + (rule "eqSymm" (formula "19")) + (rule "eqSymm" (formula "18") (term "0,1,0,1,0,1,0")) + (rule "eqSymm" (formula "18") (term "1,1,0,1,0,1,0")) + (rule "eqSymm" (formula "18") (term "1,0,0,1,0")) + (rule "eqSymm" (formula "18") (term "1,1,0")) + (rule "eqSymm" (formula "17")) + (rule "polySimp_elimSub" (formula "20") (term "1,0,2,0")) + (rule "mul_literals" (formula "20") (term "1,1,0,2,0")) + (rule "polySimp_elimSub" (formula "18") (term "1,0,0,1,1,0")) + (rule "mul_literals" (formula "18") (term "1,1,0,0,1,1,0")) + (rule "polySimp_addComm0" (formula "18") (term "1,0,2,0,1,1,0")) + (rule "polySimp_addComm0" (formula "20") (term "1,0,2,0")) + (rule "polySimp_addComm0" (formula "18") (term "1,0,0,1,1,0")) + (rule "castedGetAny" (formula "18") (term "0,0,0,0,0,1,0")) + (rule "subsetSingletonLeft" (formula "15")) + (rule "subsetSingletonLeft" (formula "16")) + (rule "castedGetAny" (formula "19") (term "2,0")) + (rule "castedGetAny" (formula "18") (term "0,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "18") (term "1,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "18") (term "0,1,0,0,1,0")) + (rule "eqSymm" (formula "18") (term "1,0,0,1,0")) + (rule "castedGetAny" (formula "18") (term "1,1,1,1,0")) + (rule "castedGetAny" (formula "17") (term "0,1,0,1,0")) + (rule "castedGetAny" (formula "18") (term "2,0,1,1,0")) + (rule "castedGetAny" (formula "20") (term "2,0")) + (rule "inEqSimp_ltToLeq" (formula "18") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "18") (term "1,0,0,1,0,0")) + (rule "inEqSimp_ltToLeq" (formula "18") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "18") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "castedGetAny" (formula "18") (term "1,0,1,0,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "17") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,0,1,0,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "18") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "18") (term "0,0,0,1,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "17") (term "0,0,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "18") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "18") (term "1,1,0,0")) + (rule "polySimp_rightDist" (formula "18") (term "1,1,0,0")) + (rule "polySimp_mulLiterals" (formula "18") (term "1,1,1,0,0")) + (rule "mul_literals" (formula "18") (term "0,1,1,0,0")) + (rule "polySimp_elimOne" (formula "18") (term "1,1,1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "18") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "18") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "18") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "18") (term "1,1,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "18") (term "0,1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "18") (term "1,1,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "17") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "17") (term "1,1,0,0,1,0")) + (rule "polySimp_rightDist" (formula "17") (term "1,1,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "17") (term "1,1,1,0,0,1,0")) + (rule "mul_literals" (formula "17") (term "0,1,1,0,0,1,0")) + (rule "polySimp_elimOne" (formula "17") (term "1,1,1,0,0,1,0")) + (rule "elementOfUnionEQ" (formula "3") (term "0,0") (ifseqformula "17")) + (builtin "One Step Simplification" (formula "3")) + (rule "applyEqReverse" (formula "1") (term "0,0,0,0,0,0") (ifseqformula "3")) + (rule "applyEqReverse" (formula "1") (term "0,1,0,0,1,1,0,0") (ifseqformula "3")) + (rule "applyEqReverse" (formula "1") (term "0,1,2,0") (ifseqformula "3")) + (rule "applyEqReverse" (formula "1") (term "0,1,1,0") (ifseqformula "3")) + (rule "applyEqReverse" (formula "25") (term "0,2,0") (ifseqformula "3")) + (rule "applyEqReverse" (formula "1") (term "0,0,0,0,1,0,0") (ifseqformula "3")) + (rule "hideAuxiliaryEq" (formula "3")) + (rule "elementOfUnionEQ" (formula "2") (term "0,0") (ifseqformula "16")) + (builtin "One Step Simplification" (formula "2")) + (rule "applyEqReverse" (formula "8") (term "1,1") (ifseqformula "2")) + (rule "applyEqReverse" (formula "24") (term "1,1,0,0") (ifseqformula "2")) + (rule "applyEqReverse" (formula "6") (term "0") (ifseqformula "2")) + (rule "hideAuxiliaryEq" (formula "2")) + (rule "polySimp_homoEq" (formula "23") (term "0,0")) + (rule "polySimp_addComm1" (formula "23") (term "0,0,0")) + (rule "inEqSimp_homoInEq0" (formula "7")) + (rule "polySimp_addComm1" (formula "7") (term "0")) + (rule "polySimp_sepPosMonomial" (formula "23") (term "0,0")) + (rule "polySimp_mulComm0" (formula "23") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "23") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "23") (term "1,1,0,0")) + (rule "mul_literals" (formula "23") (term "0,1,0,0")) + (rule "polySimp_elimOne" (formula "23") (term "1,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "7")) + (rule "polySimp_mulComm0" (formula "7") (term "1")) + (rule "polySimp_rightDist" (formula "7") (term "1")) + (rule "mul_literals" (formula "7") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "7") (term "1,1")) + (rule "polySimp_elimOne" (formula "7") (term "1,1")) + (rule "inEqSimp_contradEq7" (formula "18") (term "0,0") (ifseqformula "5")) + (rule "mul_literals" (formula "18") (term "1,0,0,0,0")) + (rule "add_zero_right" (formula "18") (term "0,0,0,0")) + (rule "leq_literals" (formula "18") (term "0,0,0")) + (builtin "One Step Simplification" (formula "18")) + (rule "inEqSimp_contradEq7" (formula "17") (term "0,0") (ifseqformula "5")) + (rule "times_zero_1" (formula "17") (term "1,0,0,0,0")) + (rule "add_zero_right" (formula "17") (term "0,0,0,0")) + (rule "leq_literals" (formula "17") (term "0,0,0")) + (builtin "One Step Simplification" (formula "17")) + (rule "elementOfUnionEQ" (formula "14") (ifseqformula "15")) + (builtin "One Step Simplification" (formula "14")) + (rule "true_left" (formula "14")) + (rule "elementOfUnionEQ" (formula "13") (ifseqformula "14")) + (builtin "One Step Simplification" (formula "13")) + (rule "true_left" (formula "13")) + (rule "elementOfUnionEQ" (formula "1") (term "0,0,0,0") (ifseqformula "13")) + (builtin "One Step Simplification" (formula "1")) + (rule "elementOfInfiniteUnion" (formula "1") (term "1,0,0,0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "eqSymm" (formula "1") (term "1,0,1,0,0,0,0")) + (rule "sortsDisjointModuloNull" (formula "1") (term "0,0,0,0,0")) + (rule "replace_known_right" (formula "1") (term "1,0,0,0,0,0") (ifseqformula "20")) + (builtin "One Step Simplification" (formula "1")) + (rule "nnf_imp2or" (formula "14") (term "0")) + (rule "nnf_notAnd" (formula "14") (term "0,0")) + (rule "inEqSimp_notLeq" (formula "14") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "14") (term "1,0,0,1,0,0")) + (rule "mul_literals" (formula "14") (term "0,1,0,0,1,0,0")) + (rule "polySimp_addAssoc" (formula "14") (term "0,0,1,0,0")) + (rule "add_literals" (formula "14") (term "0,0,0,1,0,0")) + (rule "add_zero_left" (formula "14") (term "0,0,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "14") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "14") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "14") (term "1,1,0,0")) + (rule "inEqSimp_notGeq" (formula "14") (term "0,0,0")) + (rule "times_zero_1" (formula "14") (term "1,0,0,0,0,0")) + (rule "add_zero_right" (formula "14") (term "0,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "14") (term "0,0,0")) + (rule "mul_literals" (formula "14") (term "1,0,0,0")) + (rule "nnf_imp2or" (formula "14") (term "0,1,0,1,0")) + (rule "nnf_imp2or" (formula "14") (term "1,0,1,0,1,0")) + (rule "nnf_notAnd" (formula "14") (term "0,0,1,0,1,0")) + (rule "inEqSimp_notGeq" (formula "14") (term "0,0,0,1,0,1,0")) + (rule "times_zero_1" (formula "14") (term "1,0,0,0,0,0,1,0,1,0")) + (rule "add_zero_right" (formula "14") (term "0,0,0,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "14") (term "0,0,0,1,0,1,0")) + (rule "mul_literals" (formula "14") (term "1,0,0,0,1,0,1,0")) + (rule "inEqSimp_notLeq" (formula "14") (term "1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "14") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "14") (term "0,1,0,0,1,0,0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "14") (term "0,0,1,0,0,1,0,1,0")) + (rule "add_literals" (formula "14") (term "0,0,0,1,0,0,1,0,1,0")) + (rule "add_zero_left" (formula "14") (term "0,0,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "14") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "14") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "14") (term "1,1,0,0,1,0,1,0")) + (rule "commute_and_2" (formula "1") (term "0,0,0,0,0")) + (rule "seqGetAlphaCast" (formula "19") (term "1,0")) + (rule "castedGetAny" (formula "1") (term "0")) + (builtin "One Step Simplification" (formula "1")) + (rule "true_left" (formula "1")) + (rule "shift_paren_or" (formula "14") (term "0,1,0,1,0")) + (rule "commute_or_2" (formula "14") (term "0,0,1,0,1,0")) + (rule "ifthenelse_to_or_left" (formula "14") (term "1,1,0")) + (rule "eqSymm" (formula "14") (term "1,0,1,1,0")) + (rule "eqSymm" (formula "14") (term "1,1,1,1,0")) + (rule "commute_or" (formula "14") (term "0,1,1,0")) + (rule "commute_or" (formula "14") (term "1,1,1,0")) + (rule "commute_or" (formula "14") (term "0,0,0,1,0,1,0")) + (rule "seqGetAlphaCast" (formula "4") (term "1,0")) + (rule "castedGetAny" (formula "4") (term "0")) + (builtin "One Step Simplification" (formula "4")) + (rule "true_left" (formula "4")) + (rule "commute_and" (formula "1") (term "0,0,0,0,0,0")) + (rule "lenNonNegative" (formula "18") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "18")) + (rule "applyEq" (formula "18") (term "0") (ifseqformula "19")) + (rule "inEqSimp_subsumption1" (formula "18") (ifseqformula "5")) + (rule "leq_literals" (formula "18") (term "0")) + (builtin "One Step Simplification" (formula "18")) + (rule "true_left" (formula "18")) + (rule "lenNonNegative" (formula "17") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "17")) + (rule "applyEq" (formula "17") (term "0") (ifseqformula "18")) + (rule "inEqSimp_subsumption1" (formula "17") (ifseqformula "5")) + (rule "leq_literals" (formula "17") (term "0")) + (builtin "One Step Simplification" (formula "17")) + (rule "true_left" (formula "17")) + (rule "ifthenelse_split" (formula "21") (term "0")) + (branch "self.size = 1 + i_0 TRUE" + (rule "eqSymm" (formula "22")) + (rule "applyEq" (formula "6") (term "0") (ifseqformula "1")) + (rule "inEqSimp_homoInEq1" (formula "6")) + (rule "polySimp_mulComm0" (formula "6") (term "1,0")) + (rule "polySimp_rightDist" (formula "6") (term "1,0")) + (rule "mul_literals" (formula "6") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "6") (term "0")) + (rule "add_literals" (formula "6") (term "0,0")) + (rule "add_zero_left" (formula "6") (term "0")) + (rule "applyEq" (formula "17") (term "1,1,0") (ifseqformula "1")) + (rule "polySimp_addAssoc" (formula "17") (term "1,0")) + (rule "add_literals" (formula "17") (term "0,1,0")) + (rule "add_zero_left" (formula "17") (term "1,0")) + (rule "applyEq" (formula "3") (term "0") (ifseqformula "1")) + (rule "inEqSimp_homoInEq1" (formula "3")) + (rule "polySimp_mulComm0" (formula "3") (term "1,0")) + (rule "polySimp_rightDist" (formula "3") (term "1,0")) + (rule "mul_literals" (formula "3") (term "0,1,0")) + (rule "polySimp_addComm1" (formula "3") (term "0")) + (rule "polySimp_addAssoc" (formula "3") (term "0,0")) + (rule "add_literals" (formula "3") (term "0,0,0")) + (rule "applyEq" (formula "14") (term "1,1,1,0,0,1,0") (ifseqformula "1")) + (rule "polySimp_addAssoc" (formula "14") (term "1,1,0,0,1,0")) + (rule "add_literals" (formula "14") (term "0,1,1,0,0,1,0")) + (rule "add_zero_left" (formula "14") (term "1,1,0,0,1,0")) + (rule "applyEq" (formula "15") (term "1,1,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "2") (term "1,1,1,0,0,0,0,0") (ifseqformula "1")) + (rule "polySimp_addAssoc" (formula "2") (term "1,1,0,0,0,0,0")) + (rule "add_literals" (formula "2") (term "0,1,1,0,0,0,0,0")) + (rule "add_zero_left" (formula "2") (term "1,1,0,0,0,0,0")) + (rule "applyEq" (formula "15") (term "1,1,0,0,1,0,1,0") (ifseqformula "1")) + (rule "applyEq" (formula "8") (term "0") (ifseqformula "1")) + (rule "inEqSimp_homoInEq1" (formula "8")) + (rule "polySimp_pullOutFactor1" (formula "8") (term "0")) + (rule "add_literals" (formula "8") (term "1,0")) + (rule "times_zero_1" (formula "8") (term "0")) + (rule "leq_literals" (formula "8")) + (rule "true_left" (formula "8")) + (rule "applyEq" (formula "2") (term "1,0,0,0,0,0,0,0") (ifseqformula "16")) + (rule "applyEq" (formula "2") (term "0,0,0,1,0,0") (ifseqformula "16")) + (rule "applyEq" (formula "2") (term "1,2,0") (ifseqformula "16")) + (rule "applyEq" (formula "2") (term "1,1,0") (ifseqformula "16")) + (rule "applyEq" (formula "2") (term "1,0,0,1,1,0,0") (ifseqformula "16")) + (rule "applyEq" (formula "17") (term "1") (ifseqformula "1")) + (rule "applyEq" (formula "18") (term "1") (ifseqformula "1")) + (rule "applyEq" (formula "14") (term "1,1,0,1,0,1,1,0") (ifseqformula "1")) + (rule "polySimp_addAssoc" (formula "14") (term "1,0,1,0,1,1,0")) + (rule "add_literals" (formula "14") (term "0,1,0,1,0,1,1,0")) + (rule "add_zero_left" (formula "14") (term "1,0,1,0,1,1,0")) + (rule "applyEq" (formula "14") (term "1,1,1,1,1,1,0") (ifseqformula "1")) + (rule "polySimp_addAssoc" (formula "14") (term "1,1,1,1,1,0")) + (rule "add_literals" (formula "14") (term "0,1,1,1,1,1,0")) + (rule "add_zero_left" (formula "14") (term "1,1,1,1,1,0")) + (rule "inEqSimp_invertInEq0" (formula "6")) + (rule "times_zero_2" (formula "6") (term "1")) + (rule "polySimp_mulLiterals" (formula "6") (term "0")) + (rule "polySimp_elimOne" (formula "6") (term "0")) + (rule "inEqSimp_sepPosMonomial0" (formula "3")) + (rule "polySimp_mulComm0" (formula "3") (term "1")) + (rule "polySimp_rightDist" (formula "3") (term "1")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,1")) + (rule "mul_literals" (formula "3") (term "0,1")) + (rule "polySimp_elimOne" (formula "3") (term "1,1")) + (rule "inEqSimp_exactShadow3" (formula "4") (ifseqformula "3")) + (rule "times_zero_1" (formula "4") (term "0,0")) + (rule "add_zero_left" (formula "4") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "4")) + (rule "mul_literals" (formula "4") (term "1")) + (rule "inEqSimp_subsumption1" (formula "7") (ifseqformula "4")) + (rule "leq_literals" (formula "7") (term "0")) + (builtin "One Step Simplification" (formula "7")) + (rule "true_left" (formula "7")) + (rule "all_pull_out1" (formula "13") (term "0,1,0")) + (rule "seqGetAlphaCast" (formula "14") (term "0")) + (rule "castedGetAny" (formula "14") (term "0")) + (builtin "One Step Simplification" (formula "14")) + (rule "true_left" (formula "14")) + (rule "all_pull_out0" (formula "13") (term "1,0")) + (rule "shift_paren_and" (formula "13") (term "0,1,0")) + (rule "all_pull_out3" (formula "13") (term "0")) + (rule "cnf_rightDist" (formula "13") (term "0,0")) + (rule "distr_forallAnd" (formula "13") (term "0")) + (builtin "One Step Simplification" (formula "13")) + (rule "distr_forallAnd" (formula "13")) + (rule "andLeft" (formula "13")) + (rule "shift_paren_or" (formula "14") (term "0")) + (rule "commute_or_2" (formula "14") (term "0,0")) + (rule "inEqSimp_or_weaken3" (formula "14") (term "0")) + (builtin "One Step Simplification" (formula "14")) + (rule "cnf_rightDist" (formula "13") (term "0,0")) + (rule "distr_forallAnd" (formula "13") (term "0")) + (builtin "One Step Simplification" (formula "13")) + (rule "distr_forallAnd" (formula "13")) + (rule "andLeft" (formula "13")) + (rule "commute_or_2" (formula "14") (term "0")) + (builtin "One Step Simplification" (formula "14")) + (rule "inEqSimp_homoInEq1" (formula "14") (term "1,1")) + (rule "polySimp_pullOutFactor1b" (formula "14") (term "0,1,1")) + (rule "add_literals" (formula "14") (term "1,1,0,1,1")) + (rule "times_zero_1" (formula "14") (term "1,0,1,1")) + (rule "add_zero_right" (formula "14") (term "0,1,1")) + (rule "leq_literals" (formula "14") (term "1,1")) + (builtin "One Step Simplification" (formula "14")) + (rule "applyEq" (formula "14") (term "1,0,0") (ifseqformula "17")) + (rule "inEqSimp_contradInEq1" (formula "14") (term "1") (ifseqformula "4")) + (rule "qeq_literals" (formula "14") (term "0,1")) + (builtin "One Step Simplification" (formula "14")) + (rule "applyEq" (formula "2") (term "2,0") (ifseqformula "14")) + (rule "cnf_rightDist" (formula "13") (term "0,0")) + (rule "distr_forallAnd" (formula "13") (term "0")) + (builtin "One Step Simplification" (formula "13")) + (rule "distr_forallAnd" (formula "13")) + (rule "andLeft" (formula "13")) + (rule "commute_or_2" (formula "14") (term "0,0")) + (rule "commute_or_2" (formula "14") (term "0,0,0")) + (rule "cnf_rightDist" (formula "13") (term "0")) + (rule "distr_forallAnd" (formula "13")) + (rule "andLeft" (formula "13")) + (rule "commute_or_2" (formula "13") (term "0")) + (rule "commute_or" (formula "14") (term "0")) + (rule "commute_or" (formula "13") (term "0,0")) + (rule "commute_or_2" (formula "15") (term "0,0,0,0")) + (rule "shift_paren_or" (formula "15") (term "0,0,0,0,0")) + (rule "seqGetAlphaCast" (formula "19") (term "0")) + (rule "castedGetAny" (formula "19") (term "0")) + (builtin "One Step Simplification" (formula "19")) + (rule "true_left" (formula "19")) + (rule "allLeft" (formula "17") (inst "t=nv_0")) + (rule "inEqSimp_contradInEq0" (formula "17") (term "1") (ifseqformula "3")) + (rule "inEqSimp_homoInEq1" (formula "17") (term "0,1")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "17") (term "1,0,0,1")) + (rule "mul_literals" (formula "17") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "17") (term "0,0,1")) + (rule "polySimp_addComm0" (formula "17") (term "0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "17") (term "0,0,1")) + (rule "add_literals" (formula "17") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "17") (term "1,0,0,1")) + (rule "add_zero_right" (formula "17") (term "0,0,1")) + (rule "leq_literals" (formula "17") (term "0,1")) + (builtin "One Step Simplification" (formula "17")) + (rule "inEqSimp_contradInEq1" (formula "17") (term "1") (ifseqformula "5")) + (rule "qeq_literals" (formula "17") (term "0,1")) + (builtin "One Step Simplification" (formula "17")) + (rule "allLeft" (formula "18") (inst "t=Z(0(#))")) + (rule "add_zero_right" (formula "18") (term "1,1,0,0")) + (rule "leq_literals" (formula "18") (term "1,0")) + (builtin "One Step Simplification" (formula "18")) + (rule "inEqSimp_commuteGeq" (formula "18") (term "1")) + (rule "applyEq" (formula "18") (term "1,0,0") (ifseqformula "20")) + (rule "eqSymm" (formula "18") (term "0")) + (rule "inEqSimp_contradInEq1" (formula "18") (term "1") (ifseqformula "4")) + (rule "qeq_literals" (formula "18") (term "0,1")) + (builtin "One Step Simplification" (formula "18")) + (rule "ifthenelse_split" (formula "2") (term "0")) + (branch " !exists int i_0; ( (Node)self.nodeseq[i_0] = self.last & i_0 >= 0 & i_0 <= i_0) | !self.last = null & !self.last. = TRUE TRUE" + (rule "applyEqReverse" (formula "27") (term "0") (ifseqformula "3")) + (rule "hideAuxiliaryEq" (formula "3")) + (rule "allLeft" (formula "13") (inst "t=add(Z(1(#)), nv_0)")) + (rule "inEqSimp_homoInEq1" (formula "13") (term "1")) + (rule "polySimp_mulComm0" (formula "13") (term "1,0,1")) + (rule "polySimp_rightDist" (formula "13") (term "1,0,1")) + (rule "mul_literals" (formula "13") (term "0,1,0,1")) + (rule "polySimp_addAssoc" (formula "13") (term "0,1")) + (rule "polySimp_addComm1" (formula "13") (term "0,0,1")) + (rule "add_literals" (formula "13") (term "0,0,0,1")) + (rule "add_zero_left" (formula "13") (term "0,0,1")) + (rule "inEqSimp_homoInEq0" (formula "13") (term "1,0")) + (rule "polySimp_mulComm0" (formula "13") (term "1,0,1,0")) + (rule "polySimp_rightDist" (formula "13") (term "1,0,1,0")) + (rule "mul_literals" (formula "13") (term "0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "13") (term "0,1,0")) + (rule "add_literals" (formula "13") (term "0,0,1,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "13") (term "1")) + (rule "polySimp_mulLiterals" (formula "13") (term "0,1")) + (rule "polySimp_elimOne" (formula "13") (term "0,1")) + (rule "inEqSimp_sepNegMonomial1" (formula "13") (term "1,0")) + (rule "polySimp_mulLiterals" (formula "13") (term "0,1,0")) + (rule "polySimp_elimOne" (formula "13") (term "0,1,0")) + (rule "inEqSimp_contradInEq1" (formula "13") (term "1,0") (ifseqformula "5")) + (rule "qeq_literals" (formula "13") (term "0,1,0")) + (builtin "One Step Simplification" (formula "13")) + (rule "inEqSimp_contradInEq0" (formula "13") (term "1") (ifseqformula "3")) + (rule "inEqSimp_homoInEq1" (formula "13") (term "0,1")) + (rule "polySimp_mulComm0" (formula "13") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "13") (term "1,0,0,1")) + (rule "mul_literals" (formula "13") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "13") (term "0,0,1")) + (rule "polySimp_addComm0" (formula "13") (term "0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "13") (term "0,0,1")) + (rule "add_literals" (formula "13") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "13") (term "1,0,0,1")) + (rule "add_zero_right" (formula "13") (term "0,0,1")) + (rule "leq_literals" (formula "13") (term "0,1")) + (builtin "One Step Simplification" (formula "13")) + (rule "notLeft" (formula "13")) + (rule "referencedObjectIsCreatedRightEQ" (formula "25") (ifseqformula "17") (ifseqformula "24")) + (rule "close" (formula "25") (ifseqformula "7")) + ) + (branch " !exists int i_0; ( (Node)self.nodeseq[i_0] = self.last & i_0 >= 0 & i_0 <= i_0) | !self.last = null & !self.last. = TRUE FALSE" + (rule "orRight" (formula "24")) + (rule "notRight" (formula "24")) + (rule "exLeft" (formula "1") (inst "sk=i_0_0")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "1")) + (rule "applyEqReverse" (formula "30") (term "0") (ifseqformula "5")) + (builtin "One Step Simplification" (formula "30")) + (rule "closeTrue" (formula "30")) + ) + ) + (branch "self.size = 1 + i_0 FALSE" + (rule "inEqSimp_strengthen1" (formula "7") (ifseqformula "21")) + (rule "polySimp_addAssoc" (formula "7") (term "1")) + (rule "add_literals" (formula "7") (term "0,1")) + (rule "inEqSimp_contradEq7" (formula "21") (ifseqformula "7")) + (rule "polySimp_rightDist" (formula "21") (term "1,0,0")) + (rule "mul_literals" (formula "21") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "21") (term "0,0")) + (rule "polySimp_addComm1" (formula "21") (term "0,0,0")) + (rule "add_literals" (formula "21") (term "0,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "21") (term "0,0")) + (rule "add_literals" (formula "21") (term "1,1,0,0")) + (rule "times_zero_1" (formula "21") (term "1,0,0")) + (rule "add_zero_right" (formula "21") (term "0,0")) + (rule "leq_literals" (formula "21") (term "0")) + (builtin "One Step Simplification" (formula "21")) + (rule "false_right" (formula "21")) + (rule "all_pull_out1" (formula "14") (term "0,1,0")) + (rule "all_pull_out0" (formula "14") (term "1,0")) + (rule "shift_paren_and" (formula "14") (term "0,1,0")) + (rule "all_pull_out3" (formula "14") (term "0")) + (rule "cnf_rightDist" (formula "14") (term "0,0")) + (rule "distr_forallAnd" (formula "14") (term "0")) + (builtin "One Step Simplification" (formula "14")) + (rule "distr_forallAnd" (formula "14")) + (rule "andLeft" (formula "14")) + (rule "shift_paren_or" (formula "15") (term "0")) + (rule "commute_or_2" (formula "15") (term "0,0")) + (rule "inEqSimp_or_weaken3" (formula "15") (term "0")) + (rule "polySimp_addAssoc" (formula "15") (term "1,0,1,0")) + (rule "add_literals" (formula "15") (term "0,1,0,1,0")) + (rule "add_zero_left" (formula "15") (term "1,0,1,0")) + (builtin "One Step Simplification" (formula "15")) + (rule "cnf_rightDist" (formula "14") (term "0,0")) + (rule "distr_forallAnd" (formula "14") (term "0")) + (builtin "One Step Simplification" (formula "14")) + (rule "distr_forallAnd" (formula "14")) + (rule "andLeft" (formula "14")) + (rule "commute_or_2" (formula "15") (term "0")) + (builtin "One Step Simplification" (formula "15")) + (rule "inEqSimp_homoInEq0" (formula "15") (term "0,1")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "15") (term "1,0,0,1")) + (rule "mul_literals" (formula "15") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "15") (term "0,0,1")) + (rule "add_literals" (formula "15") (term "0,0,0,1")) + (rule "add_zero_left" (formula "15") (term "0,0,1")) + (rule "inEqSimp_homoInEq1" (formula "15") (term "1,1")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,1,1")) + (rule "polySimp_rightDist" (formula "15") (term "1,0,1,1")) + (rule "mul_literals" (formula "15") (term "0,1,0,1,1")) + (rule "polySimp_addAssoc" (formula "15") (term "0,1,1")) + (rule "polySimp_addComm0" (formula "15") (term "0,0,1,1")) + (rule "polySimp_pullOutFactor1b" (formula "15") (term "0,1,1")) + (rule "add_literals" (formula "15") (term "1,1,0,1,1")) + (rule "times_zero_1" (formula "15") (term "1,0,1,1")) + (rule "add_zero_right" (formula "15") (term "0,1,1")) + (rule "leq_literals" (formula "15") (term "1,1")) + (builtin "One Step Simplification" (formula "15")) + (rule "applyEq" (formula "15") (term "1,0,0") (ifseqformula "18")) + (rule "inEqSimp_invertInEq1" (formula "15") (term "1")) + (rule "polySimp_mulLiterals" (formula "15") (term "0,1")) + (rule "times_zero_2" (formula "15") (term "1,1")) + (rule "polySimp_elimOne" (formula "15") (term "0,1")) + (rule "inEqSimp_contradInEq1" (formula "15") (term "1") (ifseqformula "5")) + (rule "qeq_literals" (formula "15") (term "0,1")) + (builtin "One Step Simplification" (formula "15")) + (rule "cnf_rightDist" (formula "14") (term "0,0")) + (rule "distr_forallAnd" (formula "14") (term "0")) + (builtin "One Step Simplification" (formula "14")) + (rule "distr_forallAnd" (formula "14")) + (rule "andLeft" (formula "14")) + (rule "commute_or_2" (formula "15") (term "0,0")) + (rule "commute_or_2" (formula "15") (term "0,0,0")) + (rule "cnf_rightDist" (formula "14") (term "0")) + (rule "distr_forallAnd" (formula "14")) + (rule "andLeft" (formula "14")) + (rule "commute_or" (formula "15") (term "0")) + (rule "commute_or_2" (formula "14") (term "0")) + (rule "commute_or" (formula "14") (term "0,0")) + (rule "commute_or_2" (formula "16") (term "0,0,0,0")) + (rule "shift_paren_or" (formula "16") (term "0,0,0,0,0")) + (rule "ifthenelse_split" (formula "1") (term "0")) + (branch " !exists int i_0; ( (Node)self.nodeseq[i_0] = (Node)self.nodeseq[i_0] & i_0 >= 0 & i_0 <= -1 + self.size) | !(Node)self.nodeseq[i_0] = null & !(Node)self.nodeseq[i_0]. = TRUE TRUE" + (rule "applyEqReverse" (formula "26") (term "1") (ifseqformula "2")) + (rule "hideAuxiliaryEq" (formula "2")) + (rule "eqSymm" (formula "25")) + (rule "seqGetAlphaCast" (formula "20") (term "0")) + (rule "castedGetAny" (formula "20") (term "0")) + (builtin "One Step Simplification" (formula "20")) + (rule "true_left" (formula "20")) + (rule "seqGetAlphaCast" (formula "19") (term "0")) + (rule "castedGetAny" (formula "19") (term "0")) + (builtin "One Step Simplification" (formula "19")) + (rule "true_left" (formula "19")) + (rule "allLeft" (formula "14") (inst "t=i_0")) + (rule "inEqSimp_commuteGeq" (formula "14") (term "1")) + (rule "inEqSimp_contradInEq1" (formula "14") (term "1") (ifseqformula "7")) + (rule "inEqSimp_homoInEq1" (formula "14") (term "0,1")) + (rule "polySimp_pullOutFactor1b" (formula "14") (term "0,0,1")) + (rule "add_literals" (formula "14") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "14") (term "1,0,0,1")) + (rule "add_zero_right" (formula "14") (term "0,0,1")) + (rule "leq_literals" (formula "14") (term "0,1")) + (builtin "One Step Simplification" (formula "14")) + (rule "inEqSimp_contradInEq1" (formula "14") (term "1") (ifseqformula "6")) + (rule "qeq_literals" (formula "14") (term "0,1")) + (builtin "One Step Simplification" (formula "14")) + (rule "notLeft" (formula "14")) + (rule "replace_known_right" (formula "1") (term "0,0,1") (ifseqformula "23")) + (builtin "One Step Simplification" (formula "1")) + (rule "allLeft" (formula "16") (inst "t=nv_0")) + (rule "inEqSimp_commuteGeq" (formula "16") (term "1,0,0,0,0")) + (rule "inEqSimp_contradInEq1" (formula "16") (term "1,0,0,0,0") (ifseqformula "2")) + (rule "inEqSimp_homoInEq1" (formula "16") (term "0,1,0,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "16") (term "0,0,1,0,0,0,0")) + (rule "add_literals" (formula "16") (term "1,1,0,0,1,0,0,0,0")) + (rule "times_zero_1" (formula "16") (term "1,0,0,1,0,0,0,0")) + (rule "add_zero_right" (formula "16") (term "0,0,1,0,0,0,0")) + (rule "leq_literals" (formula "16") (term "0,1,0,0,0,0")) + (builtin "One Step Simplification" (formula "16")) + (rule "inEqSimp_contradInEq1" (formula "16") (term "1,0,0,0,0") (ifseqformula "3")) + (rule "qeq_literals" (formula "16") (term "0,1,0,0,0,0")) + (builtin "One Step Simplification" (formula "16")) + (rule "commute_or_2" (formula "16") (term "0")) + (rule "allLeft" (formula "19") (inst "t=i_0")) + (rule "inEqSimp_homoInEq1" (formula "19") (term "1")) + (rule "polySimp_addComm1" (formula "19") (term "0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "19") (term "1")) + (rule "polySimp_mulComm0" (formula "19") (term "1,1")) + (rule "polySimp_rightDist" (formula "19") (term "1,1")) + (rule "polySimp_mulLiterals" (formula "19") (term "1,1,1")) + (rule "mul_literals" (formula "19") (term "0,1,1")) + (rule "polySimp_elimOne" (formula "19") (term "1,1,1")) + (rule "inEqSimp_contradInEq1" (formula "19") (term "1") (ifseqformula "7")) + (rule "inEqSimp_homoInEq1" (formula "19") (term "0,1")) + (rule "polySimp_mulComm0" (formula "19") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "19") (term "1,0,0,1")) + (rule "mul_literals" (formula "19") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "19") (term "0,0,1")) + (rule "polySimp_addComm1" (formula "19") (term "0,0,0,1")) + (rule "add_literals" (formula "19") (term "0,0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "19") (term "0,0,1")) + (rule "add_literals" (formula "19") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "19") (term "1,0,0,1")) + (rule "add_zero_right" (formula "19") (term "0,0,1")) + (rule "leq_literals" (formula "19") (term "0,1")) + (builtin "One Step Simplification" (formula "19")) + (rule "inEqSimp_contradInEq1" (formula "19") (term "1") (ifseqformula "6")) + (rule "qeq_literals" (formula "19") (term "0,1")) + (builtin "One Step Simplification" (formula "19")) + (rule "allLeft" (formula "20") (inst "t=nv_0")) + (rule "inEqSimp_homoInEq1" (formula "20") (term "1")) + (rule "polySimp_addComm1" (formula "20") (term "0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "20") (term "1")) + (rule "polySimp_mulComm0" (formula "20") (term "1,1")) + (rule "polySimp_rightDist" (formula "20") (term "1,1")) + (rule "mul_literals" (formula "20") (term "0,1,1")) + (rule "polySimp_mulLiterals" (formula "20") (term "1,1,1")) + (rule "polySimp_elimOne" (formula "20") (term "1,1,1")) + (rule "inEqSimp_contradInEq1" (formula "20") (term "1,0") (ifseqformula "3")) + (rule "qeq_literals" (formula "20") (term "0,1,0")) + (builtin "One Step Simplification" (formula "20")) + (rule "inEqSimp_contradInEq1" (formula "20") (term "1") (ifseqformula "2")) + (rule "inEqSimp_homoInEq1" (formula "20") (term "0,1")) + (rule "polySimp_mulComm0" (formula "20") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "20") (term "1,0,0,1")) + (rule "mul_literals" (formula "20") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "20") (term "0,0,1")) + (rule "polySimp_addComm1" (formula "20") (term "0,0,0,1")) + (rule "add_literals" (formula "20") (term "0,0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "20") (term "0,0,1")) + (rule "add_literals" (formula "20") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "20") (term "1,0,0,1")) + (rule "add_zero_right" (formula "20") (term "0,0,1")) + (rule "leq_literals" (formula "20") (term "0,1")) + (builtin "One Step Simplification" (formula "20")) + (rule "allLeft" (formula "17") (inst "t=i_0")) + (rule "inEqSimp_commuteGeq" (formula "17") (term "1,0,0,0,0")) + (rule "inEqSimp_contradInEq1" (formula "17") (term "1,0,0,0,0") (ifseqformula "7")) + (rule "inEqSimp_homoInEq1" (formula "17") (term "0,1,0,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "17") (term "0,0,1,0,0,0,0")) + (rule "add_literals" (formula "17") (term "1,1,0,0,1,0,0,0,0")) + (rule "times_zero_1" (formula "17") (term "1,0,0,1,0,0,0,0")) + (rule "add_zero_right" (formula "17") (term "0,0,1,0,0,0,0")) + (rule "leq_literals" (formula "17") (term "0,1,0,0,0,0")) + (builtin "One Step Simplification" (formula "17")) + (rule "inEqSimp_contradInEq1" (formula "17") (term "1,0,0,0,0") (ifseqformula "6")) + (rule "qeq_literals" (formula "17") (term "0,1,0,0,0,0")) + (builtin "One Step Simplification" (formula "17")) + (rule "commute_or_2" (formula "17") (term "0")) + (rule "allLeft" (formula "18") (inst "t=add(Z(1(#)), i_0)")) + (rule "inEqSimp_commuteGeq" (formula "18") (term "1,0,0,0,0")) + (rule "inEqSimp_homoInEq0" (formula "18") (term "1,0,0,0,0,0")) + (rule "polySimp_mulComm0" (formula "18") (term "1,0,1,0,0,0,0,0")) + (rule "polySimp_rightDist" (formula "18") (term "1,0,1,0,0,0,0,0")) + (rule "mul_literals" (formula "18") (term "0,1,0,1,0,0,0,0,0")) + (rule "polySimp_addAssoc" (formula "18") (term "0,1,0,0,0,0,0")) + (rule "add_literals" (formula "18") (term "0,0,1,0,0,0,0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "18") (term "1,0,0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "18") (term "0,1,0,0,0,0,0")) + (rule "polySimp_elimOne" (formula "18") (term "0,1,0,0,0,0,0")) + (rule "inEqSimp_contradInEq1" (formula "18") (term "1,0,0,0,0,0") (ifseqformula "6")) + (rule "qeq_literals" (formula "18") (term "0,1,0,0,0,0,0")) + (builtin "One Step Simplification" (formula "18")) + (rule "inEqSimp_contradInEq1" (formula "18") (term "1,0,0,0,0") (ifseqformula "7")) + (rule "inEqSimp_homoInEq1" (formula "18") (term "0,1,0,0,0,0")) + (rule "polySimp_mulComm0" (formula "18") (term "1,0,0,1,0,0,0,0")) + (rule "polySimp_rightDist" (formula "18") (term "1,0,0,1,0,0,0,0")) + (rule "mul_literals" (formula "18") (term "0,1,0,0,1,0,0,0,0")) + (rule "polySimp_addAssoc" (formula "18") (term "0,0,1,0,0,0,0")) + (rule "polySimp_addComm1" (formula "18") (term "0,0,0,1,0,0,0,0")) + (rule "add_literals" (formula "18") (term "0,0,0,0,1,0,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "18") (term "0,0,1,0,0,0,0")) + (rule "add_literals" (formula "18") (term "1,1,0,0,1,0,0,0,0")) + (rule "times_zero_1" (formula "18") (term "1,0,0,1,0,0,0,0")) + (rule "add_zero_right" (formula "18") (term "0,0,1,0,0,0,0")) + (rule "leq_literals" (formula "18") (term "0,1,0,0,0,0")) + (builtin "One Step Simplification" (formula "18")) + (rule "commute_or_2" (formula "18") (term "0")) + (rule "allLeft" (formula "19") (inst "t=add(Z(1(#)), nv_0)")) + (rule "inEqSimp_commuteGeq" (formula "19") (term "1,0,0,0,0")) + (rule "inEqSimp_homoInEq0" (formula "19") (term "1,0,0,0,0,0")) + (rule "polySimp_mulComm0" (formula "19") (term "1,0,1,0,0,0,0,0")) + (rule "polySimp_rightDist" (formula "19") (term "1,0,1,0,0,0,0,0")) + (rule "mul_literals" (formula "19") (term "0,1,0,1,0,0,0,0,0")) + (rule "polySimp_addAssoc" (formula "19") (term "0,1,0,0,0,0,0")) + (rule "add_literals" (formula "19") (term "0,0,1,0,0,0,0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "19") (term "1,0,0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "19") (term "0,1,0,0,0,0,0")) + (rule "polySimp_elimOne" (formula "19") (term "0,1,0,0,0,0,0")) + (rule "inEqSimp_contradInEq1" (formula "19") (term "1,0,0,0,0,0") (ifseqformula "3")) + (rule "qeq_literals" (formula "19") (term "0,1,0,0,0,0,0")) + (builtin "One Step Simplification" (formula "19")) + (rule "inEqSimp_contradInEq1" (formula "19") (term "1,0,0,0,0") (ifseqformula "2")) + (rule "inEqSimp_homoInEq1" (formula "19") (term "0,1,0,0,0,0")) + (rule "polySimp_mulComm0" (formula "19") (term "1,0,0,1,0,0,0,0")) + (rule "polySimp_rightDist" (formula "19") (term "1,0,0,1,0,0,0,0")) + (rule "mul_literals" (formula "19") (term "0,1,0,0,1,0,0,0,0")) + (rule "polySimp_addAssoc" (formula "19") (term "0,0,1,0,0,0,0")) + (rule "polySimp_addComm1" (formula "19") (term "0,0,0,1,0,0,0,0")) + (rule "add_literals" (formula "19") (term "0,0,0,0,1,0,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "19") (term "0,0,1,0,0,0,0")) + (rule "add_literals" (formula "19") (term "1,1,0,0,1,0,0,0,0")) + (rule "times_zero_1" (formula "19") (term "1,0,0,1,0,0,0,0")) + (rule "add_zero_right" (formula "19") (term "0,0,1,0,0,0,0")) + (rule "leq_literals" (formula "19") (term "0,1,0,0,0,0")) + (builtin "One Step Simplification" (formula "19")) + (rule "commute_or_2" (formula "19") (term "0")) + (rule "allLeft" (formula "14") (inst "t=add(Z(1(#)), i_0)")) + (rule "inEqSimp_commuteGeq" (formula "14") (term "1")) + (rule "inEqSimp_homoInEq0" (formula "14") (term "1,0")) + (rule "polySimp_mulComm0" (formula "14") (term "1,0,1,0")) + (rule "polySimp_rightDist" (formula "14") (term "1,0,1,0")) + (rule "mul_literals" (formula "14") (term "0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "14") (term "0,1,0")) + (rule "add_literals" (formula "14") (term "0,0,1,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "14") (term "1,0")) + (rule "polySimp_mulLiterals" (formula "14") (term "0,1,0")) + (rule "polySimp_elimOne" (formula "14") (term "0,1,0")) + (rule "inEqSimp_contradInEq1" (formula "14") (term "1") (ifseqformula "7")) + (rule "inEqSimp_homoInEq1" (formula "14") (term "0,1")) + (rule "polySimp_mulComm0" (formula "14") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "14") (term "1,0,0,1")) + (rule "mul_literals" (formula "14") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "14") (term "0,0,1")) + (rule "polySimp_addComm1" (formula "14") (term "0,0,0,1")) + (rule "add_literals" (formula "14") (term "0,0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "14") (term "0,0,1")) + (rule "add_literals" (formula "14") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "14") (term "1,0,0,1")) + (rule "add_zero_right" (formula "14") (term "0,0,1")) + (rule "leq_literals" (formula "14") (term "0,1")) + (builtin "One Step Simplification" (formula "14")) + (rule "inEqSimp_contradInEq1" (formula "14") (term "1") (ifseqformula "6")) + (rule "qeq_literals" (formula "14") (term "0,1")) + (builtin "One Step Simplification" (formula "14")) + (rule "notLeft" (formula "14")) + (rule "allLeft" (formula "14") (inst "t=add(Z(1(#)), nv_0)")) + (rule "inEqSimp_commuteGeq" (formula "14") (term "1")) + (rule "inEqSimp_homoInEq0" (formula "14") (term "1,0")) + (rule "polySimp_mulComm0" (formula "14") (term "1,0,1,0")) + (rule "polySimp_rightDist" (formula "14") (term "1,0,1,0")) + (rule "mul_literals" (formula "14") (term "0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "14") (term "0,1,0")) + (rule "add_literals" (formula "14") (term "0,0,1,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "14") (term "1,0")) + (rule "polySimp_mulLiterals" (formula "14") (term "0,1,0")) + (rule "polySimp_elimOne" (formula "14") (term "0,1,0")) + (rule "inEqSimp_contradInEq1" (formula "14") (term "1,0") (ifseqformula "3")) + (rule "qeq_literals" (formula "14") (term "0,1,0")) + (builtin "One Step Simplification" (formula "14")) + (rule "inEqSimp_contradInEq1" (formula "14") (term "1") (ifseqformula "2")) + (rule "inEqSimp_homoInEq1" (formula "14") (term "0,1")) + (rule "polySimp_mulComm0" (formula "14") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "14") (term "1,0,0,1")) + (rule "mul_literals" (formula "14") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "14") (term "0,0,1")) + (rule "polySimp_addComm1" (formula "14") (term "0,0,0,1")) + (rule "add_literals" (formula "14") (term "0,0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "14") (term "0,0,1")) + (rule "add_literals" (formula "14") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "14") (term "1,0,0,1")) + (rule "add_zero_right" (formula "14") (term "0,0,1")) + (rule "leq_literals" (formula "14") (term "0,1")) + (builtin "One Step Simplification" (formula "14")) + (rule "notLeft" (formula "14")) + (rule "referencedObjectIsCreatedRightEQ" (formula "32") (ifseqformula "23") (ifseqformula "29")) + (rule "close" (formula "32") (ifseqformula "8")) + ) + (branch " !exists int i_0; ( (Node)self.nodeseq[i_0] = (Node)self.nodeseq[i_0] & i_0 >= 0 & i_0 <= -1 + self.size) | !(Node)self.nodeseq[i_0] = null & !(Node)self.nodeseq[i_0]. = TRUE FALSE" + (rule "orRight" (formula "23")) + (rule "notRight" (formula "23")) + (rule "exLeft" (formula "1") (inst "sk=i_0_0")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "1")) + (rule "applyEqReverse" (formula "29") (term "1") (ifseqformula "4")) + (rule "hideAuxiliaryEq" (formula "4")) + (rule "eqSymm" (formula "28")) + (rule "inEqSimp_homoInEq0" (formula "3")) + (rule "polySimp_addComm1" (formula "3") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "3")) + (rule "polySimp_mulComm0" (formula "3") (term "1")) + (rule "polySimp_rightDist" (formula "3") (term "1")) + (rule "mul_literals" (formula "3") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,1")) + (rule "polySimp_elimOne" (formula "3") (term "1,1")) + (rule "seqGetAlphaCast" (formula "22") (term "0")) + (rule "castedGetAny" (formula "22") (term "0")) + (builtin "One Step Simplification" (formula "22")) + (rule "true_left" (formula "22")) + (rule "seqGetAlphaCast" (formula "21") (term "0")) + (rule "castedGetAny" (formula "21") (term "0")) + (builtin "One Step Simplification" (formula "21")) + (rule "true_left" (formula "21")) + (rule "allLeft" (formula "20") (inst "t=i_0")) + (rule "replace_known_right" (formula "20") (term "0,0") (ifseqformula "29")) + (builtin "One Step Simplification" (formula "20")) + (rule "inEqSimp_homoInEq1" (formula "20") (term "1")) + (rule "polySimp_addComm1" (formula "20") (term "0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "20") (term "1")) + (rule "polySimp_mulComm0" (formula "20") (term "1,1")) + (rule "polySimp_rightDist" (formula "20") (term "1,1")) + (rule "mul_literals" (formula "20") (term "0,1,1")) + (rule "polySimp_mulLiterals" (formula "20") (term "1,1,1")) + (rule "polySimp_elimOne" (formula "20") (term "1,1,1")) + (rule "inEqSimp_contradInEq1" (formula "20") (term "0") (ifseqformula "8")) + (rule "qeq_literals" (formula "20") (term "0,0")) + (builtin "One Step Simplification" (formula "20")) + (rule "inEqSimp_contradInEq1" (formula "20") (ifseqformula "9")) + (rule "andLeft" (formula "20")) + (rule "inEqSimp_homoInEq1" (formula "20")) + (rule "polySimp_mulComm0" (formula "20") (term "1,0")) + (rule "polySimp_rightDist" (formula "20") (term "1,0")) + (rule "mul_literals" (formula "20") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "20") (term "0")) + (rule "polySimp_addComm1" (formula "20") (term "0,0")) + (rule "add_literals" (formula "20") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "20") (term "0")) + (rule "add_literals" (formula "20") (term "1,1,0")) + (rule "times_zero_1" (formula "20") (term "1,0")) + (rule "add_zero_right" (formula "20") (term "0")) + (rule "leq_literals" (formula "20")) + (rule "closeFalse" (formula "20")) + ) + ) + ) + (branch "Use Case" + (builtin "One Step Simplification" (formula "2")) + (rule "andLeft" (formula "2")) + (rule "eqSymm" (formula "11") (term "0,1")) + (rule "eqSymm" (formula "11")) + (rule "polySimp_elimSub" (formula "11") (term "0,0,0")) + (rule "mul_literals" (formula "11") (term "1,0,0,0")) + (rule "polySimp_homoEq" (formula "11") (term "0,0")) + (rule "polySimp_mulComm0" (formula "11") (term "1,0,0,0")) + (rule "polySimp_addComm0" (formula "11") (term "1,0,2,0")) + (rule "polySimp_addComm0" (formula "11") (term "1,1,0,0,0")) + (rule "polySimp_rightDist" (formula "11") (term "1,0,0,0")) + (rule "mul_literals" (formula "11") (term "0,1,0,0,0")) + (rule "castedGetAny" (formula "1") (term "1,0,1,1,0")) + (rule "polySimp_addAssoc" (formula "11") (term "0,0,0")) + (rule "polySimp_addComm0" (formula "11") (term "0,0,0,0")) + (rule "castedGetAny" (formula "11") (term "1,1")) + (rule "castedGetAny" (formula "11") (term "2,0")) + (rule "inEqSimp_ltToLeq" (formula "1") (term "0,1,0")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "3")) + (rule "polySimp_mulComm0" (formula "3") (term "1,0,0")) + (rule "polySimp_addComm1" (formula "3") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "2")) + (rule "polySimp_sepNegMonomial" (formula "11") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "11") (term "0,0,0")) + (rule "polySimp_elimOne" (formula "11") (term "0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1") (term "0,1,0")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,1,0")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,1,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1,0,1,0")) + (rule "polySimp_elimOne" (formula "1") (term "1,1,0,1,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "3")) + (rule "polySimp_mulLiterals" (formula "3") (term "0")) + (rule "polySimp_elimOne" (formula "3") (term "0")) + (rule "pullOutSelect" (formula "11") (term "0,1,1") (inst "selectSK=LinkedList_nodeseq_0")) + (rule "applyEq" (formula "12") (term "0,2,0") (ifseqformula "1")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "11")) (ifInst "" (formula "7"))) + (rule "elementOfSetMinus" (formula "1") (term "0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "ifthenelse_negated" (formula "1") (term "0")) + (rule "pullOutSelect" (formula "12") (term "0,0,0") (inst "selectSK=LinkedList_size_0")) + (rule "applyEq" (formula "5") (term "0") (ifseqformula "1")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "12")) (ifInst "" (formula "8"))) + (rule "polySimp_homoEq" (formula "13") (term "0,0")) + (rule "polySimp_addComm1" (formula "13") (term "0,0,0")) + (rule "inEqSimp_homoInEq1" (formula "5")) + (rule "polySimp_addComm1" (formula "5") (term "0")) + (rule "polySimp_sepPosMonomial" (formula "13") (term "0,0")) + (rule "polySimp_mulComm0" (formula "13") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "13") (term "1,0,0")) + (rule "mul_literals" (formula "13") (term "0,1,0,0")) + (rule "polySimp_mulLiterals" (formula "13") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "13") (term "1,1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "5")) + (rule "polySimp_mulComm0" (formula "5") (term "1")) + (rule "polySimp_rightDist" (formula "5") (term "1")) + (rule "polySimp_mulLiterals" (formula "5") (term "1,1")) + (rule "mul_literals" (formula "5") (term "0,1")) + (rule "polySimp_elimOne" (formula "5") (term "1,1")) + (rule "elementOfSetMinus" (formula "1") (term "0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "ifthenelse_negated" (formula "1") (term "0")) + (rule "pullOutSelect" (formula "13") (term "1") (inst "selectSK=Node_next_0")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1")) + (rule "elementOfSetMinus" (formula "1") (term "0,0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "inEqSimp_exactShadow3" (formula "5") (ifseqformula "6")) + (rule "mul_literals" (formula "5") (term "0,0")) + (rule "add_zero_left" (formula "5") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "5")) + (rule "mul_literals" (formula "5") (term "1")) + (rule "nnf_imp2or" (formula "4") (term "0")) + (rule "inEqSimp_notGeq" (formula "4") (term "0,0")) + (rule "times_zero_1" (formula "4") (term "1,0,0,0,0")) + (rule "add_zero_right" (formula "4") (term "0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "4") (term "0,0")) + (rule "mul_literals" (formula "4") (term "1,0,0")) + (rule "nnf_imp2or" (formula "4") (term "1,0")) + (rule "inEqSimp_notLeq" (formula "4") (term "0,1,0")) + (rule "polySimp_rightDist" (formula "4") (term "1,0,0,0,1,0")) + (rule "mul_literals" (formula "4") (term "0,1,0,0,0,1,0")) + (rule "polySimp_addAssoc" (formula "4") (term "0,0,0,1,0")) + (rule "add_literals" (formula "4") (term "0,0,0,0,1,0")) + (rule "add_zero_left" (formula "4") (term "0,0,0,1,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "4") (term "0,1,0")) + (rule "polySimp_mulLiterals" (formula "4") (term "1,0,1,0")) + (rule "polySimp_elimOne" (formula "4") (term "1,0,1,0")) + (rule "Class_invariant_axiom_for_LinkedList" (formula "13") (inst "i=i") (inst "j=j") (inst "i_0=i_0") (ifseqformula "14")) + (builtin "One Step Simplification" (formula "13")) + (rule "andLeft" (formula "13")) + (rule "andLeft" (formula "14")) + (rule "andLeft" (formula "13")) + (rule "andLeft" (formula "13")) + (rule "andLeft" (formula "13")) + (rule "andLeft" (formula "13")) + (rule "andLeft" (formula "13")) + (rule "eqSymm" (formula "19")) + (rule "eqSymm" (formula "20")) + (rule "eqSymm" (formula "18")) + (rule "eqSymm" (formula "17")) + (rule "eqSymm" (formula "16") (term "0,1,0,1,0,1,0")) + (rule "eqSymm" (formula "16") (term "1,1,0")) + (rule "eqSymm" (formula "16") (term "1,0,0,1,0")) + (rule "eqSymm" (formula "16") (term "1,1,0,1,0,1,0")) + (rule "eqSymm" (formula "15")) + (rule "polySimp_elimSub" (formula "18") (term "1,0,2,0")) + (rule "mul_literals" (formula "18") (term "1,1,0,2,0")) + (rule "polySimp_elimSub" (formula "16") (term "1,0,0,1,1,0")) + (rule "mul_literals" (formula "16") (term "1,1,0,0,1,1,0")) + (rule "polySimp_addComm0" (formula "16") (term "1,0,2,0,1,1,0")) + (rule "polySimp_addComm0" (formula "18") (term "1,0,2,0")) + (rule "polySimp_addComm0" (formula "16") (term "1,0,0,1,1,0")) + (rule "castedGetAny" (formula "16") (term "0,0,0,0,0,1,0")) + (rule "subsetSingletonLeft" (formula "13")) + (rule "subsetSingletonLeft" (formula "14")) + (rule "castedGetAny" (formula "17") (term "2,0")) + (rule "castedGetAny" (formula "16") (term "0,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "16") (term "1,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "16") (term "1,1,1,1,0")) + (rule "castedGetAny" (formula "16") (term "1,1,1,0,0,1,0")) + (rule "castedGetAny" (formula "16") (term "0,1,0,0,1,0")) + (rule "eqSymm" (formula "16") (term "1,0,0,1,0")) + (rule "castedGetAny" (formula "15") (term "0,1,0,1,0")) + (rule "castedGetAny" (formula "16") (term "2,0,1,1,0")) + (rule "castedGetAny" (formula "18") (term "2,0")) + (rule "inEqSimp_ltToLeq" (formula "16") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "16") (term "1,0,0,1,0,0")) + (rule "inEqSimp_ltToLeq" (formula "16") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "16") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "15") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,0,1,0,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "16") (term "0,0,0,1,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "16") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "15") (term "0,0,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "16") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "16") (term "1,1,0,0")) + (rule "polySimp_rightDist" (formula "16") (term "1,1,0,0")) + (rule "polySimp_mulLiterals" (formula "16") (term "1,1,1,0,0")) + (rule "mul_literals" (formula "16") (term "0,1,1,0,0")) + (rule "polySimp_elimOne" (formula "16") (term "1,1,1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "16") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "16") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "16") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "16") (term "1,1,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "16") (term "0,1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "16") (term "1,1,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "15") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,1,0,0,1,0")) + (rule "polySimp_rightDist" (formula "15") (term "1,1,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,1,1,0,0,1,0")) + (rule "mul_literals" (formula "15") (term "0,1,1,0,0,1,0")) + (rule "polySimp_elimOne" (formula "15") (term "1,1,1,0,0,1,0")) + (rule "elementOfUnionEQ" (formula "2") (term "0,0") (ifseqformula "15")) + (builtin "One Step Simplification" (formula "2")) + (rule "applyEqReverse" (formula "7") (term "1,1") (ifseqformula "2")) + (rule "applyEqReverse" (formula "22") (term "1,1,0,0") (ifseqformula "2")) + (rule "applyEqReverse" (formula "5") (term "0") (ifseqformula "2")) + (rule "hideAuxiliaryEq" (formula "2")) + (rule "polySimp_homoEq" (formula "21") (term "0,0")) + (rule "polySimp_addComm1" (formula "21") (term "0,0,0")) + (rule "inEqSimp_homoInEq0" (formula "6")) + (rule "polySimp_addComm1" (formula "6") (term "0")) + (rule "polySimp_sepPosMonomial" (formula "21") (term "0,0")) + (rule "polySimp_mulComm0" (formula "21") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "21") (term "1,0,0")) + (rule "mul_literals" (formula "21") (term "0,1,0,0")) + (rule "polySimp_mulLiterals" (formula "21") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "21") (term "1,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "6")) + (rule "polySimp_mulComm0" (formula "6") (term "1")) + (rule "polySimp_rightDist" (formula "6") (term "1")) + (rule "mul_literals" (formula "6") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "6") (term "1,1")) + (rule "polySimp_elimOne" (formula "6") (term "1,1")) + (rule "inEqSimp_contradEq7" (formula "17") (term "0,0") (ifseqformula "4")) + (rule "times_zero_1" (formula "17") (term "1,0,0,0,0")) + (rule "add_zero_right" (formula "17") (term "0,0,0,0")) + (rule "leq_literals" (formula "17") (term "0,0,0")) + (builtin "One Step Simplification" (formula "17")) + (rule "inEqSimp_contradEq7" (formula "16") (term "0,0") (ifseqformula "4")) + (rule "mul_literals" (formula "16") (term "1,0,0,0,0")) + (rule "add_zero_right" (formula "16") (term "0,0,0,0")) + (rule "leq_literals" (formula "16") (term "0,0,0")) + (builtin "One Step Simplification" (formula "16")) + (rule "elementOfUnionEQ" (formula "13") (ifseqformula "14")) + (builtin "One Step Simplification" (formula "13")) + (rule "true_left" (formula "13")) + (rule "elementOfUnionEQ" (formula "1") (term "0,0,0,0") (ifseqformula "13")) + (builtin "One Step Simplification" (formula "1")) + (rule "elementOfInfiniteUnion" (formula "1") (term "1,0,0,0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "eqSymm" (formula "1") (term "1,0,1,0,0,0,0")) + (rule "sortsDisjointModuloNull" (formula "1") (term "0,0,0,0,0")) + (rule "replace_known_right" (formula "1") (term "1,0,0,0,0,0") (ifseqformula "19")) + (builtin "One Step Simplification" (formula "1")) + (rule "elementOfUnionEQ" (formula "12") (ifseqformula "13")) + (builtin "One Step Simplification" (formula "12")) + (rule "true_left" (formula "12")) + (rule "elementOfUnionEQ" (formula "2") (term "0,0") (ifseqformula "12")) + (builtin "One Step Simplification" (formula "2")) + (rule "applyEqReverse" (formula "1") (term "0,1,1,0") (ifseqformula "2")) + (rule "applyEqReverse" (formula "1") (term "0,1,1,0,0,0,0,0") (ifseqformula "2")) + (rule "applyEqReverse" (formula "1") (term "0,0,0,0,1,0,0") (ifseqformula "2")) + (rule "applyEqReverse" (formula "1") (term "0,1,2,0") (ifseqformula "2")) + (rule "applyEqReverse" (formula "19") (term "0,2,0") (ifseqformula "2")) + (rule "applyEqReverse" (formula "1") (term "0,1,0,0,1,1,0,0") (ifseqformula "2")) + (rule "hideAuxiliaryEq" (formula "2")) + (rule "nnf_imp2or" (formula "12") (term "0")) + (rule "nnf_notAnd" (formula "12") (term "0,0")) + (rule "inEqSimp_notGeq" (formula "12") (term "0,0,0")) + (rule "times_zero_1" (formula "12") (term "1,0,0,0,0,0")) + (rule "add_zero_right" (formula "12") (term "0,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "12") (term "0,0,0")) + (rule "mul_literals" (formula "12") (term "1,0,0,0")) + (rule "inEqSimp_notLeq" (formula "12") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "12") (term "1,0,0,1,0,0")) + (rule "mul_literals" (formula "12") (term "0,1,0,0,1,0,0")) + (rule "polySimp_addAssoc" (formula "12") (term "0,0,1,0,0")) + (rule "add_literals" (formula "12") (term "0,0,0,1,0,0")) + (rule "add_zero_left" (formula "12") (term "0,0,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "12") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "12") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "12") (term "1,1,0,0")) + (rule "nnf_imp2or" (formula "12") (term "0,1,0,1,0")) + (rule "nnf_notAnd" (formula "12") (term "0,0,1,0,1,0")) + (rule "inEqSimp_notLeq" (formula "12") (term "1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "12") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "12") (term "0,1,0,0,1,0,0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "12") (term "0,0,1,0,0,1,0,1,0")) + (rule "add_literals" (formula "12") (term "0,0,0,1,0,0,1,0,1,0")) + (rule "add_zero_left" (formula "12") (term "0,0,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "12") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "12") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "12") (term "1,1,0,0,1,0,1,0")) + (rule "inEqSimp_notGeq" (formula "12") (term "0,0,0,1,0,1,0")) + (rule "times_zero_1" (formula "12") (term "1,0,0,0,0,0,1,0,1,0")) + (rule "add_zero_right" (formula "12") (term "0,0,0,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "12") (term "0,0,0,1,0,1,0")) + (rule "mul_literals" (formula "12") (term "1,0,0,0,1,0,1,0")) + (rule "nnf_imp2or" (formula "12") (term "1,0,1,0,1,0")) + (rule "commute_or" (formula "2") (term "1,0")) + (rule "shift_paren_or" (formula "2") (term "0")) + (rule "commute_or" (formula "2") (term "0,0")) + (rule "commute_and_2" (formula "1") (term "0,0,0,0,0")) + (rule "shift_paren_or" (formula "12") (term "0,1,0,1,0")) + (rule "commute_or_2" (formula "12") (term "0,0,1,0,1,0")) + (rule "ifthenelse_to_or_left" (formula "12") (term "1,1,0")) + (rule "eqSymm" (formula "12") (term "1,0,1,1,0")) + (rule "eqSymm" (formula "12") (term "1,1,1,1,0")) + (rule "commute_or" (formula "12") (term "0,1,1,0")) + (rule "commute_or" (formula "12") (term "1,1,1,0")) + (rule "commute_or" (formula "12") (term "0,0,0,1,0,1,0")) + (rule "commute_and" (formula "1") (term "0,0,0,0,0,0")) + (rule "lenNonNegative" (formula "15") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "15")) + (rule "applyEq" (formula "15") (term "0") (ifseqformula "16")) + (rule "inEqSimp_subsumption1" (formula "15") (ifseqformula "3")) + (rule "leq_literals" (formula "15") (term "0")) + (builtin "One Step Simplification" (formula "15")) + (rule "true_left" (formula "15")) + (rule "lenNonNegative" (formula "16") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "16")) + (rule "applyEq" (formula "16") (term "0") (ifseqformula "17")) + (rule "inEqSimp_subsumption1" (formula "16") (ifseqformula "3")) + (rule "leq_literals" (formula "16") (term "0")) + (builtin "One Step Simplification" (formula "16")) + (rule "true_left" (formula "16")) + (rule "ifthenelse_split" (formula "18") (term "0")) + (branch "self.size = 1 + i_0 TRUE" + (rule "eqSymm" (formula "19")) + (rule "applyEq" (formula "12") (term "1,1,1,0,0,1,0") (ifseqformula "1")) + (rule "polySimp_addAssoc" (formula "12") (term "1,1,0,0,1,0")) + (rule "add_literals" (formula "12") (term "0,1,1,0,0,1,0")) + (rule "add_zero_left" (formula "12") (term "1,1,0,0,1,0")) + (rule "applyEq" (formula "3") (term "1,1,0") (ifseqformula "1")) + (rule "applyEq" (formula "13") (term "1,1,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "15") (term "1,1,0") (ifseqformula "1")) + (rule "polySimp_addAssoc" (formula "15") (term "1,0")) + (rule "add_literals" (formula "15") (term "0,1,0")) + (rule "add_zero_left" (formula "15") (term "1,0")) + (rule "applyEq" (formula "13") (term "1,1,0,0,1,0,1,0") (ifseqformula "1")) + (rule "applyEq" (formula "4") (term "0") (ifseqformula "1")) + (rule "inEqSimp_homoInEq1" (formula "4")) + (rule "polySimp_mulComm0" (formula "4") (term "1,0")) + (rule "polySimp_rightDist" (formula "4") (term "1,0")) + (rule "mul_literals" (formula "4") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "4") (term "0")) + (rule "add_literals" (formula "4") (term "0,0")) + (rule "add_zero_left" (formula "4") (term "0")) + (rule "applyEq" (formula "2") (term "1,1,1,0,0,0,0,0") (ifseqformula "1")) + (rule "polySimp_addAssoc" (formula "2") (term "1,1,0,0,0,0,0")) + (rule "add_literals" (formula "2") (term "0,1,1,0,0,0,0,0")) + (rule "add_zero_left" (formula "2") (term "1,1,0,0,0,0,0")) + (rule "applyEq" (formula "6") (term "0") (ifseqformula "1")) + (rule "inEqSimp_homoInEq1" (formula "6")) + (rule "polySimp_pullOutFactor1" (formula "6") (term "0")) + (rule "add_literals" (formula "6") (term "1,0")) + (rule "times_zero_1" (formula "6") (term "0")) + (rule "leq_literals" (formula "6")) + (rule "true_left" (formula "6")) + (rule "applyEq" (formula "2") (term "1,1,0") (ifseqformula "14")) + (rule "applyEq" (formula "2") (term "1,2,0") (ifseqformula "14")) + (rule "applyEq" (formula "2") (term "0,0,0,1,0,0") (ifseqformula "14")) + (rule "applyEq" (formula "2") (term "1,0,0,1,1,0,0") (ifseqformula "14")) + (rule "applyEq" (formula "2") (term "1,0,0,0,0,0,0,0") (ifseqformula "14")) + (rule "applyEq" (formula "12") (term "1,1,0,1,0,1,1,0") (ifseqformula "1")) + (rule "polySimp_addAssoc" (formula "12") (term "1,0,1,0,1,1,0")) + (rule "add_literals" (formula "12") (term "0,1,0,1,0,1,1,0")) + (rule "add_zero_left" (formula "12") (term "1,0,1,0,1,1,0")) + (rule "applyEq" (formula "16") (term "1") (ifseqformula "1")) + (rule "applyEq" (formula "12") (term "1,1,1,1,1,1,0") (ifseqformula "1")) + (rule "polySimp_addAssoc" (formula "12") (term "1,1,1,1,1,0")) + (rule "add_literals" (formula "12") (term "0,1,1,1,1,1,0")) + (rule "add_zero_left" (formula "12") (term "1,1,1,1,1,0")) + (rule "applyEq" (formula "15") (term "1") (ifseqformula "1")) + (rule "inEqSimp_invertInEq0" (formula "4")) + (rule "times_zero_2" (formula "4") (term "1")) + (rule "polySimp_mulLiterals" (formula "4") (term "0")) + (rule "polySimp_elimOne" (formula "4") (term "0")) + (rule "all_pull_out1" (formula "11") (term "0,1,0")) + (rule "seqGetAlphaCast" (formula "12") (term "0")) + (rule "castedGetAny" (formula "12") (term "0")) + (builtin "One Step Simplification" (formula "12")) + (rule "true_left" (formula "12")) + (rule "all_pull_out0" (formula "11") (term "1,0")) + (rule "shift_paren_and" (formula "11") (term "0,1,0")) + (rule "all_pull_out3" (formula "11") (term "0")) + (rule "cnf_rightDist" (formula "11") (term "0,0")) + (rule "distr_forallAnd" (formula "11") (term "0")) + (builtin "One Step Simplification" (formula "11")) + (rule "distr_forallAnd" (formula "11")) + (rule "andLeft" (formula "11")) + (rule "shift_paren_or" (formula "12") (term "0")) + (rule "commute_or_2" (formula "12") (term "0,0")) + (rule "inEqSimp_or_weaken3" (formula "12") (term "0")) + (builtin "One Step Simplification" (formula "12")) + (rule "cnf_rightDist" (formula "11") (term "0,0")) + (rule "distr_forallAnd" (formula "11") (term "0")) + (builtin "One Step Simplification" (formula "11")) + (rule "distr_forallAnd" (formula "11")) + (rule "andLeft" (formula "11")) + (rule "commute_or_2" (formula "12") (term "0")) + (builtin "One Step Simplification" (formula "12")) + (rule "inEqSimp_homoInEq1" (formula "12") (term "1,1")) + (rule "polySimp_pullOutFactor1b" (formula "12") (term "0,1,1")) + (rule "add_literals" (formula "12") (term "1,1,0,1,1")) + (rule "times_zero_1" (formula "12") (term "1,0,1,1")) + (rule "add_zero_right" (formula "12") (term "0,1,1")) + (rule "leq_literals" (formula "12") (term "1,1")) + (builtin "One Step Simplification" (formula "12")) + (rule "applyEq" (formula "12") (term "1,0,0") (ifseqformula "15")) + (rule "inEqSimp_contradInEq1" (formula "12") (term "1") (ifseqformula "4")) + (rule "qeq_literals" (formula "12") (term "0,1")) + (builtin "One Step Simplification" (formula "12")) + (rule "applyEq" (formula "2") (term "2,0") (ifseqformula "12")) + (rule "cnf_rightDist" (formula "11") (term "0,0")) + (rule "distr_forallAnd" (formula "11") (term "0")) + (builtin "One Step Simplification" (formula "11")) + (rule "distr_forallAnd" (formula "11")) + (rule "andLeft" (formula "11")) + (rule "commute_or_2" (formula "12") (term "0,0")) + (rule "commute_or_2" (formula "12") (term "0,0,0")) + (rule "cnf_rightDist" (formula "11") (term "0")) + (rule "distr_forallAnd" (formula "11")) + (rule "andLeft" (formula "11")) + (rule "commute_or" (formula "12") (term "0")) + (rule "commute_or_2" (formula "11") (term "0")) + (rule "commute_or" (formula "11") (term "0,0")) + (rule "commute_or_2" (formula "13") (term "0,0,0,0")) + (rule "shift_paren_or" (formula "13") (term "0,0,0,0,0")) + (rule "allLeft" (formula "3") (inst "t=i_0")) + (rule "inEqSimp_homoInEq1" (formula "3") (term "1")) + (rule "polySimp_pullOutFactor1b" (formula "3") (term "0,1")) + (rule "add_literals" (formula "3") (term "1,1,0,1")) + (rule "times_zero_1" (formula "3") (term "1,0,1")) + (rule "add_zero_right" (formula "3") (term "0,1")) + (rule "leq_literals" (formula "3") (term "1")) + (builtin "One Step Simplification" (formula "3")) + (rule "applyEq" (formula "3") (term "1,0,0") (ifseqformula "18")) + (rule "inEqSimp_contradInEq1" (formula "3") (term "1") (ifseqformula "5")) + (rule "qeq_literals" (formula "3") (term "0,1")) + (builtin "One Step Simplification" (formula "3")) + (rule "replace_known_left" (formula "2") (term "0,1,1,0,0") (ifseqformula "3")) + (builtin "One Step Simplification" (formula "2")) + (rule "ifthenelse_negated" (formula "2") (term "0")) + (rule "allLeft" (formula "4") (inst "t=Z(0(#))")) + (rule "leq_literals" (formula "4") (term "1,0")) + (builtin "One Step Simplification" (formula "4")) + (rule "inEqSimp_homoInEq1" (formula "4") (term "1")) + (rule "times_zero_2" (formula "4") (term "1,0,1")) + (rule "add_zero_right" (formula "4") (term "0,1")) + (rule "applyEq" (formula "4") (term "1,0,0") (ifseqformula "18")) + (rule "inEqSimp_sepPosMonomial0" (formula "4") (term "1")) + (rule "mul_literals" (formula "4") (term "1,1")) + (rule "inEqSimp_contradInEq1" (formula "4") (term "1") (ifseqformula "6")) + (rule "qeq_literals" (formula "4") (term "0,1")) + (builtin "One Step Simplification" (formula "4")) + (rule "seqGetAlphaCast" (formula "19") (term "0")) + (rule "castedGetAny" (formula "19") (term "0")) + (builtin "One Step Simplification" (formula "19")) + (rule "true_left" (formula "19")) + (rule "ifthenelse_split" (formula "2") (term "0")) + (branch "exists int i_0; ( (Node)self.nodeseq[i_0] = self.last & i_0 >= 0 & i_0 <= i_0) TRUE" + (rule "exLeft" (formula "2") (inst "sk=i_0_0")) + (rule "andLeft" (formula "2")) + (rule "andLeft" (formula "2")) + (rule "applyEqReverse" (formula "26") (term "0") (ifseqformula "5")) + (builtin "One Step Simplification" (formula "26")) + (rule "closeTrue" (formula "26")) + ) + (branch "exists int i_0; ( (Node)self.nodeseq[i_0] = self.last & i_0 >= 0 & i_0 <= i_0) FALSE" + (rule "applyEqReverse" (formula "24") (term "0") (ifseqformula "2")) + (rule "hideAuxiliaryEq" (formula "2")) + (rule "nnf_ex2all" (formula "21")) + (rule "nnf_notAnd" (formula "1") (term "0")) + (rule "inEqSimp_notLeq" (formula "1") (term "1,0")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0,1,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1") (term "1,0")) + (rule "polySimp_mulComm0" (formula "1") (term "1,1,0")) + (rule "polySimp_rightDist" (formula "1") (term "1,1,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1,1,0")) + (rule "mul_literals" (formula "1") (term "0,1,1,0")) + (rule "polySimp_elimOne" (formula "1") (term "1,1,1,0")) + (rule "nnf_notAnd" (formula "1") (term "0,0")) + (rule "inEqSimp_notGeq" (formula "1") (term "1,0,0")) + (rule "mul_literals" (formula "1") (term "1,0,0,1,0,0")) + (rule "add_zero_right" (formula "1") (term "0,0,1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1") (term "1,0,0")) + (rule "mul_literals" (formula "1") (term "1,1,0,0")) + (rule "allLeft" (formula "14") (inst "t=Z(0(#))")) + (rule "leq_literals" (formula "14") (term "0,0")) + (builtin "One Step Simplification" (formula "14")) + (rule "eqSymm" (formula "14") (term "1")) + (rule "inEqSimp_homoInEq1" (formula "14") (term "0")) + (rule "mul_literals" (formula "14") (term "1,0,0")) + (rule "add_zero_right" (formula "14") (term "0,0")) + (rule "applyEq" (formula "14") (term "1,1,1") (ifseqformula "19")) + (rule "inEqSimp_sepPosMonomial0" (formula "14") (term "0")) + (rule "mul_literals" (formula "14") (term "1,0")) + (rule "inEqSimp_contradInEq1" (formula "14") (term "0") (ifseqformula "6")) + (rule "qeq_literals" (formula "14") (term "0,0")) + (builtin "One Step Simplification" (formula "14")) + (rule "allLeft" (formula "13") (inst "t=i_0")) + (rule "inEqSimp_homoInEq1" (formula "13") (term "1")) + (rule "polySimp_pullOutFactor1b" (formula "13") (term "0,1")) + (rule "add_literals" (formula "13") (term "1,1,0,1")) + (rule "times_zero_1" (formula "13") (term "1,0,1")) + (rule "add_zero_right" (formula "13") (term "0,1")) + (rule "leq_literals" (formula "13") (term "1")) + (builtin "One Step Simplification" (formula "13")) + (rule "applyEq" (formula "13") (term "0,0,0") (ifseqformula "21")) + (rule "inEqSimp_contradInEq1" (formula "13") (term "1") (ifseqformula "6")) + (rule "qeq_literals" (formula "13") (term "0,1")) + (builtin "One Step Simplification" (formula "13")) + (rule "notLeft" (formula "13")) + (rule "allLeft" (formula "15") (inst "t=i_0")) + (rule "eqSymm" (formula "15") (term "1")) + (rule "inEqSimp_homoInEq1" (formula "15") (term "1,0")) + (rule "polySimp_pullOutFactor1b" (formula "15") (term "0,1,0")) + (rule "add_literals" (formula "15") (term "1,1,0,1,0")) + (rule "times_zero_1" (formula "15") (term "1,0,1,0")) + (rule "add_zero_right" (formula "15") (term "0,1,0")) + (rule "leq_literals" (formula "15") (term "1,0")) + (builtin "One Step Simplification" (formula "15")) + (rule "applyEq" (formula "15") (term "1,1,1") (ifseqformula "21")) + (rule "inEqSimp_contradInEq1" (formula "15") (term "0") (ifseqformula "6")) + (rule "qeq_literals" (formula "15") (term "0,0")) + (builtin "One Step Simplification" (formula "15")) + (rule "allLeft" (formula "13") (inst "t=Z(0(#))")) + (rule "leq_literals" (formula "13") (term "1,0")) + (builtin "One Step Simplification" (formula "13")) + (rule "inEqSimp_homoInEq1" (formula "13") (term "1")) + (rule "mul_literals" (formula "13") (term "1,0,1")) + (rule "add_zero_right" (formula "13") (term "0,1")) + (rule "applyEq" (formula "13") (term "0,0,0") (ifseqformula "21")) + (rule "inEqSimp_sepPosMonomial0" (formula "13") (term "1")) + (rule "mul_literals" (formula "13") (term "1,1")) + (rule "inEqSimp_contradInEq1" (formula "13") (term "1") (ifseqformula "6")) + (rule "qeq_literals" (formula "13") (term "0,1")) + (builtin "One Step Simplification" (formula "13")) + (rule "notLeft" (formula "13")) + (rule "onlyCreatedObjectsAreReferenced" (formula "20") (term "1") (ifseqformula "7")) + (rule "replace_known_right" (formula "20") (term "0") (ifseqformula "25")) + (builtin "One Step Simplification" (formula "20") (ifInst "" (formula "4"))) + (rule "true_left" (formula "20")) + (rule "onlyCreatedObjectsAreReferenced" (formula "21") (term "1") (ifseqformula "7")) + (rule "replace_known_left" (formula "21") (term "1") (ifseqformula "3")) + (builtin "One Step Simplification" (formula "21") (ifInst "" (formula "26"))) + (rule "true_left" (formula "21")) + (rule "allLeft" (formula "1") (inst "t=i_0")) + (rule "replace_known_left" (formula "1") (term "0,0,0") (ifseqformula "22")) + (builtin "One Step Simplification" (formula "1")) + (rule "inEqSimp_homoInEq1" (formula "1") (term "1")) + (rule "polySimp_pullOutFactor1b" (formula "1") (term "0,1")) + (rule "add_literals" (formula "1") (term "1,1,0,1")) + (rule "times_zero_1" (formula "1") (term "1,0,1")) + (rule "add_zero_right" (formula "1") (term "0,1")) + (rule "leq_literals" (formula "1") (term "1")) + (builtin "One Step Simplification" (formula "1")) + (rule "inEqSimp_contradInEq1" (formula "1") (ifseqformula "7")) + (rule "qeq_literals" (formula "1") (term "0")) + (builtin "One Step Simplification" (formula "1")) + (rule "closeFalse" (formula "1")) + ) + ) + (branch "self.size = 1 + i_0 FALSE" + (rule "inEqSimp_strengthen1" (formula "5") (ifseqformula "18")) + (rule "polySimp_addAssoc" (formula "5") (term "1")) + (rule "add_literals" (formula "5") (term "0,1")) + (rule "inEqSimp_contradEq7" (formula "18") (ifseqformula "5")) + (rule "polySimp_rightDist" (formula "18") (term "1,0,0")) + (rule "mul_literals" (formula "18") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "18") (term "0,0")) + (rule "polySimp_addComm1" (formula "18") (term "0,0,0")) + (rule "add_literals" (formula "18") (term "0,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "18") (term "0,0")) + (rule "add_literals" (formula "18") (term "1,1,0,0")) + (rule "times_zero_1" (formula "18") (term "1,0,0")) + (rule "add_literals" (formula "18") (term "0,0")) + (rule "leq_literals" (formula "18") (term "0")) + (builtin "One Step Simplification" (formula "18")) + (rule "false_right" (formula "18")) + (rule "all_pull_out1" (formula "12") (term "0,1,0")) + (rule "all_pull_out0" (formula "12") (term "1,0")) + (rule "shift_paren_and" (formula "12") (term "0,1,0")) + (rule "all_pull_out3" (formula "12") (term "0")) + (rule "cnf_rightDist" (formula "12") (term "0,0")) + (rule "distr_forallAnd" (formula "12") (term "0")) + (builtin "One Step Simplification" (formula "12")) + (rule "distr_forallAnd" (formula "12")) + (rule "andLeft" (formula "12")) + (rule "shift_paren_or" (formula "13") (term "0")) + (rule "commute_or_2" (formula "13") (term "0,0")) + (rule "inEqSimp_or_weaken3" (formula "13") (term "0")) + (rule "polySimp_addAssoc" (formula "13") (term "1,0,1,0")) + (rule "add_literals" (formula "13") (term "0,1,0,1,0")) + (rule "add_zero_left" (formula "13") (term "1,0,1,0")) + (builtin "One Step Simplification" (formula "13")) + (rule "cnf_rightDist" (formula "12") (term "0,0")) + (rule "distr_forallAnd" (formula "12") (term "0")) + (builtin "One Step Simplification" (formula "12")) + (rule "distr_forallAnd" (formula "12")) + (rule "andLeft" (formula "12")) + (rule "commute_or_2" (formula "13") (term "0")) + (builtin "One Step Simplification" (formula "13")) + (rule "inEqSimp_homoInEq1" (formula "13") (term "1,1")) + (rule "polySimp_mulComm0" (formula "13") (term "1,0,1,1")) + (rule "polySimp_rightDist" (formula "13") (term "1,0,1,1")) + (rule "mul_literals" (formula "13") (term "0,1,0,1,1")) + (rule "polySimp_addAssoc" (formula "13") (term "0,1,1")) + (rule "polySimp_addComm0" (formula "13") (term "0,0,1,1")) + (rule "polySimp_pullOutFactor1b" (formula "13") (term "0,1,1")) + (rule "add_literals" (formula "13") (term "1,1,0,1,1")) + (rule "times_zero_1" (formula "13") (term "1,0,1,1")) + (rule "add_zero_right" (formula "13") (term "0,1,1")) + (rule "leq_literals" (formula "13") (term "1,1")) + (builtin "One Step Simplification" (formula "13")) + (rule "inEqSimp_homoInEq0" (formula "13") (term "1")) + (rule "polySimp_mulComm0" (formula "13") (term "1,0,1")) + (rule "polySimp_rightDist" (formula "13") (term "1,0,1")) + (rule "mul_literals" (formula "13") (term "0,1,0,1")) + (rule "polySimp_addAssoc" (formula "13") (term "0,1")) + (rule "add_literals" (formula "13") (term "0,0,1")) + (rule "add_zero_left" (formula "13") (term "0,1")) + (rule "applyEq" (formula "13") (term "1,0,0") (ifseqformula "16")) + (rule "inEqSimp_invertInEq1" (formula "13") (term "1")) + (rule "polySimp_mulLiterals" (formula "13") (term "0,1")) + (rule "times_zero_2" (formula "13") (term "1,1")) + (rule "polySimp_elimOne" (formula "13") (term "0,1")) + (rule "inEqSimp_contradInEq1" (formula "13") (term "1") (ifseqformula "3")) + (rule "qeq_literals" (formula "13") (term "0,1")) + (builtin "One Step Simplification" (formula "13")) + (rule "cnf_rightDist" (formula "12") (term "0,0")) + (rule "distr_forallAnd" (formula "12") (term "0")) + (builtin "One Step Simplification" (formula "12")) + (rule "distr_forallAnd" (formula "12")) + (rule "andLeft" (formula "12")) + (rule "commute_or_2" (formula "13") (term "0,0")) + (rule "commute_or_2" (formula "13") (term "0,0,0")) + (rule "cnf_rightDist" (formula "12") (term "0")) + (rule "distr_forallAnd" (formula "12")) + (rule "andLeft" (formula "12")) + (rule "commute_or_2" (formula "12") (term "0")) + (rule "commute_or" (formula "13") (term "0")) + (rule "commute_or" (formula "12") (term "0,0")) + (rule "commute_or_2" (formula "14") (term "0,0,0,0")) + (rule "shift_paren_or" (formula "14") (term "0,0,0,0,0")) + (rule "seqGetAlphaCast" (formula "18") (term "0")) + (rule "castedGetAny" (formula "18") (term "0")) + (builtin "One Step Simplification" (formula "18")) + (rule "true_left" (formula "18")) + (rule "ifthenelse_split" (formula "1") (term "0")) + (branch " !exists int i_0; ( (Node)self.nodeseq[i_0] = (Node)self.nodeseq[i_0] & i_0 >= 0 & i_0 <= -1 + self.size) | !(Node)self.nodeseq[i_0] = null & !(Node)self.nodeseq[i_0]. = TRUE TRUE" + (rule "applyEqReverse" (formula "23") (term "1") (ifseqformula "2")) + (rule "hideAuxiliaryEq" (formula "2")) + (rule "eqSymm" (formula "22")) + (rule "seqGetAlphaCast" (formula "17") (term "0")) + (rule "castedGetAny" (formula "17") (term "0")) + (builtin "One Step Simplification" (formula "17")) + (rule "true_left" (formula "17")) + (rule "allLeft" (formula "2") (inst "t=add(Z(1(#)), i_0)")) + (rule "inEqSimp_commuteGeq" (formula "2") (term "1")) + (rule "inEqSimp_homoInEq0" (formula "2") (term "1,0")) + (rule "polySimp_mulComm0" (formula "2") (term "1,0,1,0")) + (rule "polySimp_rightDist" (formula "2") (term "1,0,1,0")) + (rule "mul_literals" (formula "2") (term "0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "2") (term "0,1,0")) + (rule "add_literals" (formula "2") (term "0,0,1,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "2") (term "1,0")) + (rule "polySimp_mulLiterals" (formula "2") (term "0,1,0")) + (rule "polySimp_elimOne" (formula "2") (term "0,1,0")) + (rule "inEqSimp_contradInEq1" (formula "2") (term "1") (ifseqformula "6")) + (rule "inEqSimp_homoInEq1" (formula "2") (term "0,1")) + (rule "polySimp_mulComm0" (formula "2") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "2") (term "1,0,0,1")) + (rule "mul_literals" (formula "2") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "2") (term "0,0,1")) + (rule "polySimp_addComm1" (formula "2") (term "0,0,0,1")) + (rule "add_literals" (formula "2") (term "0,0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "2") (term "0,0,1")) + (rule "add_literals" (formula "2") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "2") (term "1,0,0,1")) + (rule "add_zero_right" (formula "2") (term "0,0,1")) + (rule "leq_literals" (formula "2") (term "0,1")) + (builtin "One Step Simplification" (formula "2")) + (rule "inEqSimp_contradInEq1" (formula "2") (term "1") (ifseqformula "5")) + (rule "qeq_literals" (formula "2") (term "0,1")) + (builtin "One Step Simplification" (formula "2")) + (rule "allLeft" (formula "3") (inst "t=Z(0(#))")) + (rule "leq_literals" (formula "3") (term "1,0")) + (builtin "One Step Simplification" (formula "3")) + (rule "inEqSimp_commuteGeq" (formula "3") (term "1")) + (rule "applyEq" (formula "3") (term "1,0,0") (ifseqformula "19")) + (rule "inEqSimp_contradInEq1" (formula "3") (term "1") (ifseqformula "5")) + (rule "qeq_literals" (formula "3") (term "0,1")) + (builtin "One Step Simplification" (formula "3")) + (rule "allLeft" (formula "4") (inst "t=add(Z(neglit(1(#))), + select<[int]>(heap, self, LinkedList::#size))")) + (rule "inEqSimp_homoInEq1" (formula "4") (term "1")) + (rule "polySimp_mulComm0" (formula "4") (term "1,0,1")) + (rule "polySimp_rightDist" (formula "4") (term "1,0,1")) + (rule "mul_literals" (formula "4") (term "0,1,0,1")) + (rule "polySimp_addAssoc" (formula "4") (term "0,1")) + (rule "polySimp_addComm0" (formula "4") (term "0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "4") (term "0,1")) + (rule "add_literals" (formula "4") (term "1,1,0,1")) + (rule "times_zero_1" (formula "4") (term "1,0,1")) + (rule "add_zero_right" (formula "4") (term "0,1")) + (rule "leq_literals" (formula "4") (term "1")) + (builtin "One Step Simplification" (formula "4")) + (rule "inEqSimp_homoInEq0" (formula "4") (term "1")) + (rule "polySimp_mulComm0" (formula "4") (term "1,0,1")) + (rule "polySimp_rightDist" (formula "4") (term "1,0,1")) + (rule "mul_literals" (formula "4") (term "0,1,0,1")) + (rule "polySimp_addAssoc" (formula "4") (term "0,1")) + (rule "add_literals" (formula "4") (term "0,0,1")) + (rule "add_zero_left" (formula "4") (term "0,1")) + (rule "applyEq" (formula "4") (term "1,0,0") (ifseqformula "21")) + (rule "inEqSimp_invertInEq1" (formula "4") (term "1")) + (rule "polySimp_mulLiterals" (formula "4") (term "0,1")) + (rule "mul_literals" (formula "4") (term "1,1")) + (rule "polySimp_elimOne" (formula "4") (term "0,1")) + (rule "inEqSimp_contradInEq1" (formula "4") (term "1") (ifseqformula "6")) + (rule "qeq_literals" (formula "4") (term "0,1")) + (builtin "One Step Simplification" (formula "4")) + (rule "allLeft" (formula "5") (inst "t=i_0")) + (rule "inEqSimp_commuteGeq" (formula "5") (term "1")) + (rule "inEqSimp_contradInEq1" (formula "5") (term "1,0") (ifseqformula "8")) + (rule "qeq_literals" (formula "5") (term "0,1,0")) + (builtin "One Step Simplification" (formula "5")) + (rule "inEqSimp_contradInEq1" (formula "5") (term "1") (ifseqformula "9")) + (rule "inEqSimp_homoInEq1" (formula "5") (term "0,1")) + (rule "polySimp_pullOutFactor1b" (formula "5") (term "0,0,1")) + (rule "add_literals" (formula "5") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "5") (term "1,0,0,1")) + (rule "add_zero_right" (formula "5") (term "0,0,1")) + (rule "leq_literals" (formula "5") (term "0,1")) + (builtin "One Step Simplification" (formula "5")) + (rule "replace_known_left" (formula "1") (term "0,1,1") (ifseqformula "5")) + (builtin "One Step Simplification" (formula "1")) + (rule "notLeft" (formula "1")) + (rule "nnf_ex2all" (formula "24")) + (rule "nnf_notAnd" (formula "1") (term "0")) + (rule "inEqSimp_notLeq" (formula "1") (term "1,0")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0,1,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0,1,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0,1,0")) + (rule "add_literals" (formula "1") (term "0,0,0,1,0")) + (rule "add_zero_left" (formula "1") (term "0,0,1,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1") (term "1,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1,0")) + (rule "polySimp_elimOne" (formula "1") (term "1,1,0")) + (rule "nnf_notAnd" (formula "1") (term "0,0")) + (rule "inEqSimp_notGeq" (formula "1") (term "1,0,0")) + (rule "mul_literals" (formula "1") (term "1,0,0,1,0,0")) + (rule "add_zero_right" (formula "1") (term "0,0,1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1") (term "1,0,0")) + (rule "mul_literals" (formula "1") (term "1,1,0,0")) + (rule "onlyCreatedObjectsAreReferenced" (formula "22") (term "1") (ifseqformula "10")) + (rule "replace_known_left" (formula "22") (term "1") (ifseqformula "4")) + (builtin "One Step Simplification" (formula "22")) + (rule "true_left" (formula "22")) + (rule "onlyCreatedObjectsAreReferenced" (formula "21") (term "1") (ifseqformula "10")) + (rule "replace_known_left" (formula "21") (term "1") (ifseqformula "3")) + (builtin "One Step Simplification" (formula "21")) + (rule "true_left" (formula "21")) + (rule "seqGetAlphaCast" (formula "26") (term "1")) + (rule "castedGetAny" (formula "1") (term "0")) + (builtin "One Step Simplification" (formula "1")) + (rule "true_left" (formula "1")) + (rule "seqGetAlphaCast" (formula "26") (term "1,0")) + (rule "castedGetAny" (formula "1") (term "0")) + (builtin "One Step Simplification" (formula "1")) + (rule "true_left" (formula "1")) + (rule "allLeft" (formula "1") (inst "t=i_0")) + (builtin "One Step Simplification" (formula "1")) + (rule "inEqSimp_commuteGeq" (formula "1") (term "1")) + (rule "inEqSimp_contradInEq1" (formula "1") (term "0") (ifseqformula "9")) + (rule "qeq_literals" (formula "1") (term "0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "inEqSimp_contradInEq1" (formula "1") (ifseqformula "10")) + (rule "andLeft" (formula "1")) + (rule "inEqSimp_homoInEq1" (formula "1")) + (rule "polySimp_pullOutFactor1b" (formula "1") (term "0")) + (rule "add_literals" (formula "1") (term "1,1,0")) + (rule "times_zero_1" (formula "1") (term "1,0")) + (rule "add_zero_right" (formula "1") (term "0")) + (rule "leq_literals" (formula "1")) + (rule "closeFalse" (formula "1")) + ) + (branch " !exists int i_0; ( (Node)self.nodeseq[i_0] = (Node)self.nodeseq[i_0] & i_0 >= 0 & i_0 <= -1 + self.size) | !(Node)self.nodeseq[i_0] = null & !(Node)self.nodeseq[i_0]. = TRUE FALSE" + (rule "orRight" (formula "21")) + (rule "notRight" (formula "21")) + (rule "exLeft" (formula "1") (inst "sk=i_0_0")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "1")) + (rule "applyEqReverse" (formula "26") (term "1") (ifseqformula "4")) + (rule "hideAuxiliaryEq" (formula "4")) + (rule "eqSymm" (formula "25")) + (rule "inEqSimp_homoInEq0" (formula "3")) + (rule "polySimp_addComm1" (formula "3") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "3")) + (rule "polySimp_mulComm0" (formula "3") (term "1")) + (rule "polySimp_rightDist" (formula "3") (term "1")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,1")) + (rule "mul_literals" (formula "3") (term "0,1")) + (rule "polySimp_elimOne" (formula "3") (term "1,1")) + (rule "seqGetAlphaCast" (formula "19") (term "0")) + (rule "castedGetAny" (formula "19") (term "0")) + (builtin "One Step Simplification" (formula "19")) + (rule "true_left" (formula "19")) + (rule "allLeft" (formula "4") (inst "t=add(Z(1(#)), i_0)")) + (rule "inEqSimp_commuteGeq" (formula "4") (term "1")) + (rule "inEqSimp_homoInEq0" (formula "4") (term "1,0")) + (rule "polySimp_mulComm0" (formula "4") (term "1,0,1,0")) + (rule "polySimp_rightDist" (formula "4") (term "1,0,1,0")) + (rule "mul_literals" (formula "4") (term "0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "4") (term "0,1,0")) + (rule "add_literals" (formula "4") (term "0,0,1,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "4") (term "1,0")) + (rule "polySimp_mulLiterals" (formula "4") (term "0,1,0")) + (rule "polySimp_elimOne" (formula "4") (term "0,1,0")) + (rule "inEqSimp_contradInEq1" (formula "4") (term "1") (ifseqformula "8")) + (rule "inEqSimp_homoInEq1" (formula "4") (term "0,1")) + (rule "polySimp_mulComm0" (formula "4") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "4") (term "1,0,0,1")) + (rule "mul_literals" (formula "4") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "4") (term "0,0,1")) + (rule "polySimp_addComm1" (formula "4") (term "0,0,0,1")) + (rule "add_literals" (formula "4") (term "0,0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "4") (term "0,0,1")) + (rule "add_literals" (formula "4") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "4") (term "1,0,0,1")) + (rule "add_zero_right" (formula "4") (term "0,0,1")) + (rule "leq_literals" (formula "4") (term "0,1")) + (builtin "One Step Simplification" (formula "4")) + (rule "inEqSimp_contradInEq1" (formula "4") (term "1") (ifseqformula "7")) + (rule "qeq_literals" (formula "4") (term "0,1")) + (builtin "One Step Simplification" (formula "4")) + (rule "allLeft" (formula "5") (inst "t=add(Z(neglit(1(#))), + select<[int]>(heap, self, LinkedList::#size))")) + (rule "inEqSimp_homoInEq1" (formula "5") (term "1")) + (rule "polySimp_mulComm0" (formula "5") (term "1,0,1")) + (rule "polySimp_rightDist" (formula "5") (term "1,0,1")) + (rule "mul_literals" (formula "5") (term "0,1,0,1")) + (rule "polySimp_addAssoc" (formula "5") (term "0,1")) + (rule "polySimp_addComm0" (formula "5") (term "0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "5") (term "0,1")) + (rule "add_literals" (formula "5") (term "1,1,0,1")) + (rule "times_zero_1" (formula "5") (term "1,0,1")) + (rule "add_zero_right" (formula "5") (term "0,1")) + (rule "leq_literals" (formula "5") (term "1")) + (builtin "One Step Simplification" (formula "5")) + (rule "inEqSimp_homoInEq0" (formula "5") (term "1")) + (rule "polySimp_mulComm0" (formula "5") (term "1,0,1")) + (rule "polySimp_rightDist" (formula "5") (term "1,0,1")) + (rule "mul_literals" (formula "5") (term "0,1,0,1")) + (rule "polySimp_addAssoc" (formula "5") (term "0,1")) + (rule "add_literals" (formula "5") (term "0,0,1")) + (rule "add_zero_left" (formula "5") (term "0,1")) + (rule "applyEq" (formula "5") (term "1,0,0") (ifseqformula "22")) + (rule "inEqSimp_invertInEq1" (formula "5") (term "1")) + (rule "mul_literals" (formula "5") (term "1,1")) + (rule "polySimp_mulLiterals" (formula "5") (term "0,1")) + (rule "polySimp_elimOne" (formula "5") (term "0,1")) + (rule "inEqSimp_contradInEq1" (formula "5") (term "1") (ifseqformula "7")) + (rule "qeq_literals" (formula "5") (term "0,1")) + (builtin "One Step Simplification" (formula "5")) + (rule "allLeft" (formula "6") (inst "t=Z(0(#))")) + (rule "leq_literals" (formula "6") (term "1,0")) + (builtin "One Step Simplification" (formula "6")) + (rule "inEqSimp_commuteGeq" (formula "6") (term "1")) + (rule "applyEq" (formula "6") (term "1,0,0") (ifseqformula "22")) + (rule "inEqSimp_contradInEq1" (formula "6") (term "1") (ifseqformula "8")) + (rule "qeq_literals" (formula "6") (term "0,1")) + (builtin "One Step Simplification" (formula "6")) + (rule "allLeft" (formula "7") (inst "t=i_0")) + (rule "inEqSimp_commuteGeq" (formula "7") (term "1")) + (rule "inEqSimp_contradInEq1" (formula "7") (term "1,0") (ifseqformula "10")) + (rule "qeq_literals" (formula "7") (term "0,1,0")) + (builtin "One Step Simplification" (formula "7")) + (rule "inEqSimp_contradInEq1" (formula "7") (term "1") (ifseqformula "11")) + (rule "inEqSimp_homoInEq1" (formula "7") (term "0,1")) + (rule "polySimp_pullOutFactor1b" (formula "7") (term "0,0,1")) + (rule "add_literals" (formula "7") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "7") (term "1,0,0,1")) + (rule "add_zero_right" (formula "7") (term "0,0,1")) + (rule "leq_literals" (formula "7") (term "0,1")) + (builtin "One Step Simplification" (formula "7")) + (rule "replace_known_left" (formula "27") (term "0,1") (ifseqformula "7")) + (builtin "One Step Simplification" (formula "27")) + (rule "false_right" (formula "27")) + (rule "allLeft" (formula "22") (inst "t=i_0")) + (rule "replace_known_right" (formula "22") (term "0,0") (ifseqformula "29")) + (builtin "One Step Simplification" (formula "22")) + (rule "inEqSimp_homoInEq1" (formula "22") (term "1")) + (rule "polySimp_addComm1" (formula "22") (term "0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "22") (term "1")) + (rule "polySimp_mulComm0" (formula "22") (term "1,1")) + (rule "polySimp_rightDist" (formula "22") (term "1,1")) + (rule "polySimp_mulLiterals" (formula "22") (term "1,1,1")) + (rule "mul_literals" (formula "22") (term "0,1,1")) + (rule "polySimp_elimOne" (formula "22") (term "1,1,1")) + (rule "inEqSimp_contradInEq1" (formula "22") (term "1") (ifseqformula "11")) + (rule "inEqSimp_homoInEq1" (formula "22") (term "0,1")) + (rule "polySimp_mulComm0" (formula "22") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "22") (term "1,0,0,1")) + (rule "mul_literals" (formula "22") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "22") (term "0,0,1")) + (rule "polySimp_addComm1" (formula "22") (term "0,0,0,1")) + (rule "add_literals" (formula "22") (term "0,0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "22") (term "0,0,1")) + (rule "add_literals" (formula "22") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "22") (term "1,0,0,1")) + (rule "add_zero_right" (formula "22") (term "0,0,1")) + (rule "leq_literals" (formula "22") (term "0,1")) + (builtin "One Step Simplification" (formula "22")) + (rule "inEqSimp_contradInEq1" (formula "22") (ifseqformula "10")) + (rule "qeq_literals" (formula "22") (term "0")) + (builtin "One Step Simplification" (formula "22")) + (rule "closeFalse" (formula "22")) + ) + ) + ) + ) + ) + ) + (branch "Case 2" + (rule "eqSymm" (formula "8")) + (rule "castedGetAny" (formula "8") (term "2,0")) + (rule "pullOutSelect" (formula "8") (term "0,0,0") (inst "selectSK=LinkedList_size_0")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "8")) (ifInst "" (formula "4"))) + (rule "elementOfSetMinus" (formula "1") (term "0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "ifthenelse_negated" (formula "1") (term "0")) + (rule "pullOutSelect" (formula "9") (term "1") (inst "selectSK=LinkedList_first_0")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "9")) (ifInst "" (formula "5"))) + (rule "elementOfSetMinus" (formula "1") (term "0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "ifthenelse_negated" (formula "1") (term "0")) + (rule "pullOutSelect" (formula "10") (term "0,2,0") (inst "selectSK=LinkedList_nodeseq_0")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "10")) (ifInst "" (formula "6"))) + (rule "elementOfSetMinus" (formula "1") (term "0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "ifthenelse_negated" (formula "1") (term "0")) + (rule "Class_invariant_axiom_for_LinkedList" (formula "9") (inst "i=i") (inst "j=j") (inst "i_0=i_0") (ifseqformula "10")) + (builtin "One Step Simplification" (formula "9")) + (rule "andLeft" (formula "9")) + (rule "andLeft" (formula "9")) + (rule "andLeft" (formula "11")) + (rule "andLeft" (formula "9")) + (rule "andLeft" (formula "9")) + (rule "andLeft" (formula "9")) + (rule "andLeft" (formula "9")) + (rule "eqSymm" (formula "14")) + (rule "eqSymm" (formula "15")) + (rule "eqSymm" (formula "16")) + (rule "eqSymm" (formula "13")) + (rule "eqSymm" (formula "12") (term "1,0,0,1,0")) + (rule "eqSymm" (formula "12") (term "0,1,0,1,0,1,0")) + (rule "eqSymm" (formula "12") (term "1,1,0,1,0,1,0")) + (rule "eqSymm" (formula "12") (term "1,1,0")) + (rule "eqSymm" (formula "11")) + (rule "polySimp_elimSub" (formula "14") (term "1,0,2,0")) + (rule "mul_literals" (formula "14") (term "1,1,0,2,0")) + (rule "polySimp_elimSub" (formula "12") (term "1,0,0,1,1,0")) + (rule "mul_literals" (formula "12") (term "1,1,0,0,1,1,0")) + (rule "polySimp_addComm0" (formula "12") (term "1,0,2,0,1,1,0")) + (rule "polySimp_addComm0" (formula "14") (term "1,0,2,0")) + (rule "polySimp_addComm0" (formula "12") (term "1,0,0,1,1,0")) + (rule "castedGetAny" (formula "12") (term "0,0,0,0,0,1,0")) + (rule "subsetSingletonLeft" (formula "9")) + (rule "subsetSingletonLeft" (formula "10")) + (rule "castedGetAny" (formula "13") (term "2,0")) + (rule "castedGetAny" (formula "12") (term "1,1,1,0,0,1,0")) + (rule "castedGetAny" (formula "12") (term "0,1,0,0,1,0")) + (rule "eqSymm" (formula "12") (term "1,0,0,1,0")) + (rule "castedGetAny" (formula "12") (term "1,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "12") (term "0,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "12") (term "1,1,1,1,0")) + (rule "castedGetAny" (formula "11") (term "0,1,0,1,0")) + (rule "castedGetAny" (formula "12") (term "2,0,1,1,0")) + (rule "castedGetAny" (formula "14") (term "2,0")) + (rule "inEqSimp_ltToLeq" (formula "12") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "12") (term "1,0,0,1,0,0")) + (rule "inEqSimp_ltToLeq" (formula "12") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "12") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "11") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "11") (term "1,0,0,1,0,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "12") (term "0,0,0,1,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "12") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "11") (term "0,0,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "12") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "12") (term "1,1,0,0")) + (rule "polySimp_rightDist" (formula "12") (term "1,1,0,0")) + (rule "mul_literals" (formula "12") (term "0,1,1,0,0")) + (rule "polySimp_mulLiterals" (formula "12") (term "1,1,1,0,0")) + (rule "polySimp_elimOne" (formula "12") (term "1,1,1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "12") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "12") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "12") (term "1,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "12") (term "0,1,1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "12") (term "1,1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "12") (term "1,1,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "11") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "11") (term "1,1,0,0,1,0")) + (rule "polySimp_rightDist" (formula "11") (term "1,1,0,0,1,0")) + (rule "mul_literals" (formula "11") (term "0,1,1,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "11") (term "1,1,1,0,0,1,0")) + (rule "polySimp_elimOne" (formula "11") (term "1,1,1,0,0,1,0")) + (rule "elementOfUnionEQ" (formula "2") (term "0,0") (ifseqformula "11")) + (builtin "One Step Simplification" (formula "2")) + (rule "applyEqReverse" (formula "18") (term "1") (ifseqformula "2")) + (rule "hideAuxiliaryEq" (formula "2")) + (rule "elementOfUnionEQ" (formula "2") (term "0,0") (ifseqformula "10")) + (builtin "One Step Simplification" (formula "2")) + (rule "applyEqReverse" (formula "17") (term "0,0,0") (ifseqformula "2")) + (rule "hideAuxiliaryEq" (formula "2")) + (rule "elementOfUnionEQ" (formula "8") (ifseqformula "9")) + (builtin "One Step Simplification" (formula "8")) + (rule "true_left" (formula "8")) + (rule "elementOfUnionEQ" (formula "1") (term "0,0") (ifseqformula "8")) + (builtin "One Step Simplification" (formula "1")) + (rule "applyEqReverse" (formula "15") (term "0,2,0") (ifseqformula "1")) + (rule "close" (formula "15") (ifseqformula "10")) + ) + ) + (branch "Case 2" + (rule "eqSymm" (formula "8")) + (rule "polySimp_elimSub" (formula "8") (term "1,0,2,0")) + (rule "mul_literals" (formula "8") (term "1,1,0,2,0")) + (rule "polySimp_addComm0" (formula "8") (term "1,0,2,0")) + (rule "castedGetAny" (formula "8") (term "2,0")) + (rule "pullOutSelect" (formula "8") (term "1") (inst "selectSK=LinkedList_last_0")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "8")) (ifInst "" (formula "4"))) + (rule "elementOfSetMinus" (formula "1") (term "0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "ifthenelse_negated" (formula "1") (term "0")) + (rule "pullOutSelect" (formula "9") (term "0,0,0") (inst "selectSK=LinkedList_size_0")) + (rule "applyEq" (formula "10") (term "1,1,2,0") (ifseqformula "1")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "9")) (ifInst "" (formula "5"))) + (rule "elementOfSetMinus" (formula "1") (term "0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "ifthenelse_negated" (formula "1") (term "0")) + (rule "pullOutSelect" (formula "10") (term "0,2,0") (inst "selectSK=LinkedList_nodeseq_0")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "10")) (ifInst "" (formula "6"))) + (rule "elementOfSetMinus" (formula "1") (term "0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "ifthenelse_negated" (formula "1") (term "0")) + (rule "Class_invariant_axiom_for_LinkedList" (formula "9") (inst "i=i") (inst "j=j") (inst "i_0=i_0") (ifseqformula "10")) + (builtin "One Step Simplification" (formula "9")) + (rule "andLeft" (formula "9")) + (rule "andLeft" (formula "10")) + (rule "andLeft" (formula "9")) + (rule "andLeft" (formula "9")) + (rule "andLeft" (formula "9")) + (rule "andLeft" (formula "9")) + (rule "andLeft" (formula "9")) + (rule "eqSymm" (formula "16")) + (rule "eqSymm" (formula "15")) + (rule "eqSymm" (formula "14")) + (rule "eqSymm" (formula "13")) + (rule "eqSymm" (formula "12") (term "0,1,0,1,0,1,0")) + (rule "eqSymm" (formula "12") (term "1,0,0,1,0")) + (rule "eqSymm" (formula "12") (term "1,1,0")) + (rule "eqSymm" (formula "12") (term "1,1,0,1,0,1,0")) + (rule "eqSymm" (formula "11")) + (rule "polySimp_elimSub" (formula "14") (term "1,0,2,0")) + (rule "mul_literals" (formula "14") (term "1,1,0,2,0")) + (rule "polySimp_elimSub" (formula "12") (term "1,0,0,1,1,0")) + (rule "mul_literals" (formula "12") (term "1,1,0,0,1,1,0")) + (rule "polySimp_addComm0" (formula "12") (term "1,0,2,0,1,1,0")) + (rule "polySimp_addComm0" (formula "14") (term "1,0,2,0")) + (rule "polySimp_addComm0" (formula "12") (term "1,0,0,1,1,0")) + (rule "castedGetAny" (formula "12") (term "0,0,0,0,0,1,0")) + (rule "subsetSingletonLeft" (formula "9")) + (rule "subsetSingletonLeft" (formula "10")) + (rule "castedGetAny" (formula "13") (term "2,0")) + (rule "castedGetAny" (formula "12") (term "0,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "12") (term "1,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "12") (term "1,1,1,0,0,1,0")) + (rule "castedGetAny" (formula "12") (term "0,1,0,0,1,0")) + (rule "eqSymm" (formula "12") (term "1,0,0,1,0")) + (rule "castedGetAny" (formula "12") (term "1,1,1,1,0")) + (rule "castedGetAny" (formula "11") (term "0,1,0,1,0")) + (rule "castedGetAny" (formula "12") (term "2,0,1,1,0")) + (rule "castedGetAny" (formula "14") (term "2,0")) + (rule "inEqSimp_ltToLeq" (formula "12") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "12") (term "1,0,0,1,0,0")) + (rule "inEqSimp_ltToLeq" (formula "12") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "12") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "11") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "11") (term "1,0,0,1,0,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "12") (term "0,0,0,1,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "12") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "11") (term "0,0,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "12") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "12") (term "1,1,0,0")) + (rule "polySimp_rightDist" (formula "12") (term "1,1,0,0")) + (rule "polySimp_mulLiterals" (formula "12") (term "1,1,1,0,0")) + (rule "mul_literals" (formula "12") (term "0,1,1,0,0")) + (rule "polySimp_elimOne" (formula "12") (term "1,1,1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "12") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "12") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "12") (term "1,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "12") (term "0,1,1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "12") (term "1,1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "12") (term "1,1,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "11") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "11") (term "1,1,0,0,1,0")) + (rule "polySimp_rightDist" (formula "11") (term "1,1,0,0,1,0")) + (rule "mul_literals" (formula "11") (term "0,1,1,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "11") (term "1,1,1,0,0,1,0")) + (rule "polySimp_elimOne" (formula "11") (term "1,1,1,0,0,1,0")) + (rule "elementOfUnionEQ" (formula "9") (ifseqformula "11")) + (builtin "One Step Simplification" (formula "9")) + (rule "true_left" (formula "9")) + (rule "elementOfUnionEQ" (formula "9") (ifseqformula "10")) + (builtin "One Step Simplification" (formula "9")) + (rule "true_left" (formula "9")) + (rule "elementOfUnionEQ" (formula "1") (term "0,0") (ifseqformula "9")) + (builtin "One Step Simplification" (formula "1")) + (rule "applyEqReverse" (formula "16") (term "0,2,0") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "elementOfUnionEQ" (formula "1") (term "0,0") (ifseqformula "8")) + (builtin "One Step Simplification" (formula "1")) + (rule "applyEqReverse" (formula "15") (term "1,1,2,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "15") (term "0,0,0") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "applyEq" (formula "14") (term "0") (ifseqformula "10")) + (rule "elementOfUnionEQ" (formula "1") (term "0,0") (ifseqformula "7")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "14"))) + (rule "closeFalse" (formula "1")) + ) +) +(branch "Case 2" + (rule "andRight" (formula "8")) + (branch "Case 1" + (rule "eqSymm" (formula "8")) + (rule "pullOutSelect" (formula "8") (term "0,0") (inst "selectSK=List_seq_0")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "8")) (ifInst "" (formula "4"))) + (rule "eqSymm" (formula "9")) + (rule "elementOfSetMinus" (formula "1") (term "0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "ifthenelse_negated" (formula "1") (term "0")) + (rule "pullOutSelect" (formula "9") (term "0") (inst "selectSK=LinkedList_size_0")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "9")) (ifInst "" (formula "5"))) + (rule "eqSymm" (formula "10")) + (rule "elementOfSetMinus" (formula "1") (term "0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "ifthenelse_negated" (formula "1") (term "0")) + (rule "Class_invariant_axiom_for_LinkedList" (formula "8") (inst "i=i") (inst "j=j") (inst "i_0=i_0") (ifseqformula "9")) + (builtin "One Step Simplification" (formula "8")) + (rule "andLeft" (formula "8")) + (rule "andLeft" (formula "9")) + (rule "andLeft" (formula "8")) + (rule "andLeft" (formula "8")) + (rule "andLeft" (formula "8")) + (rule "andLeft" (formula "8")) + (rule "andLeft" (formula "8")) + (rule "eqSymm" (formula "15")) + (rule "eqSymm" (formula "14")) + (rule "eqSymm" (formula "13")) + (rule "eqSymm" (formula "12")) + (rule "eqSymm" (formula "11") (term "1,0,0,1,0")) + (rule "eqSymm" (formula "11") (term "1,1,0")) + (rule "eqSymm" (formula "11") (term "0,1,0,1,0,1,0")) + (rule "eqSymm" (formula "11") (term "1,1,0,1,0,1,0")) + (rule "eqSymm" (formula "10")) + (rule "polySimp_elimSub" (formula "13") (term "1,0,2,0")) + (rule "mul_literals" (formula "13") (term "1,1,0,2,0")) + (rule "polySimp_elimSub" (formula "11") (term "1,0,0,1,1,0")) + (rule "mul_literals" (formula "11") (term "1,1,0,0,1,1,0")) + (rule "polySimp_addComm0" (formula "11") (term "1,0,2,0,1,1,0")) + (rule "polySimp_addComm0" (formula "13") (term "1,0,2,0")) + (rule "polySimp_addComm0" (formula "11") (term "1,0,0,1,1,0")) + (rule "castedGetAny" (formula "11") (term "0,0,0,0,0,1,0")) + (rule "subsetSingletonLeft" (formula "8")) + (rule "replace_known_left" (formula "2") (term "0,0") (ifseqformula "8")) + (builtin "One Step Simplification" (formula "2")) + (rule "applyEqReverse" (formula "17") (term "0,0") (ifseqformula "2")) + (rule "hideAuxiliaryEq" (formula "2")) + (rule "subsetSingletonLeft" (formula "8")) + (rule "castedGetAny" (formula "11") (term "2,0")) + (rule "castedGetAny" (formula "10") (term "1,1,1,0,0,1,0")) + (rule "castedGetAny" (formula "10") (term "0,1,0,0,1,0")) + (rule "eqSymm" (formula "10") (term "1,0,0,1,0")) + (rule "castedGetAny" (formula "10") (term "1,1,1,1,0")) + (rule "castedGetAny" (formula "10") (term "0,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "10") (term "1,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "9") (term "0,1,0,1,0")) + (rule "castedGetAny" (formula "10") (term "2,0,1,1,0")) + (rule "castedGetAny" (formula "12") (term "2,0")) + (rule "inEqSimp_ltToLeq" (formula "10") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "10") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "10") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "10") (term "1,0,0,1,0,0")) + (rule "inEqSimp_ltToLeq" (formula "9") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "9") (term "1,0,0,1,0,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "10") (term "0,0,0,1,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "10") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "9") (term "0,0,0,1,0")) + (rule "applyEq" (formula "16") (term "0") (ifseqformula "13")) + (rule "inEqSimp_sepPosMonomial0" (formula "10") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "10") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "10") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "10") (term "1,1,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "10") (term "0,1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "10") (term "1,1,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "10") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "10") (term "1,1,0,0")) + (rule "polySimp_rightDist" (formula "10") (term "1,1,0,0")) + (rule "mul_literals" (formula "10") (term "0,1,1,0,0")) + (rule "polySimp_mulLiterals" (formula "10") (term "1,1,1,0,0")) + (rule "polySimp_elimOne" (formula "10") (term "1,1,1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "9") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "9") (term "1,1,0,0,1,0")) + (rule "polySimp_rightDist" (formula "9") (term "1,1,0,0,1,0")) + (rule "mul_literals" (formula "9") (term "0,1,1,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "9") (term "1,1,1,0,0,1,0")) + (rule "polySimp_elimOne" (formula "9") (term "1,1,1,0,0,1,0")) + (rule "elementOfUnionEQ" (formula "1") (term "0,0") (ifseqformula "9")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "16"))) + (rule "closeFalse" (formula "1")) + ) + (branch "Case 2" + (rule "eqSymm" (formula "8")) + (rule "pullOutSelect" (formula "8") (term "1") (inst "selectSK=LinkedList_size_0")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "8")) (ifInst "" (formula "4"))) + (rule "elementOfSetMinus" (formula "1") (term "0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "ifthenelse_negated" (formula "1") (term "0")) + (rule "pullOutSelect" (formula "9") (term "0,0") (inst "selectSK=LinkedList_nodeseq_0")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "9")) (ifInst "" (formula "5"))) + (rule "elementOfSetMinus" (formula "1") (term "0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "ifthenelse_negated" (formula "1") (term "0")) + (rule "Class_invariant_axiom_for_LinkedList" (formula "8") (inst "i=i") (inst "j=j") (inst "i_0=i_0") (ifseqformula "9")) + (builtin "One Step Simplification" (formula "8")) + (rule "andLeft" (formula "8")) + (rule "andLeft" (formula "9")) + (rule "andLeft" (formula "8")) + (rule "andLeft" (formula "8")) + (rule "andLeft" (formula "8")) + (rule "andLeft" (formula "8")) + (rule "andLeft" (formula "8")) + (rule "eqSymm" (formula "15")) + (rule "eqSymm" (formula "14")) + (rule "eqSymm" (formula "13")) + (rule "eqSymm" (formula "12")) + (rule "eqSymm" (formula "11") (term "1,1,0,1,0,1,0")) + (rule "eqSymm" (formula "11") (term "0,1,0,1,0,1,0")) + (rule "eqSymm" (formula "11") (term "1,0,0,1,0")) + (rule "eqSymm" (formula "11") (term "1,1,0")) + (rule "eqSymm" (formula "10")) + (rule "polySimp_elimSub" (formula "13") (term "1,0,2,0")) + (rule "mul_literals" (formula "13") (term "1,1,0,2,0")) + (rule "polySimp_elimSub" (formula "11") (term "1,0,0,1,1,0")) + (rule "mul_literals" (formula "11") (term "1,1,0,0,1,1,0")) + (rule "polySimp_addComm0" (formula "11") (term "1,0,2,0,1,1,0")) + (rule "polySimp_addComm0" (formula "13") (term "1,0,2,0")) + (rule "polySimp_addComm0" (formula "11") (term "1,0,0,1,1,0")) + (rule "castedGetAny" (formula "11") (term "0,0,0,0,0,1,0")) + (rule "subsetSingletonLeft" (formula "9")) + (rule "subsetSingletonLeft" (formula "8")) + (rule "castedGetAny" (formula "12") (term "2,0")) + (rule "castedGetAny" (formula "11") (term "0,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "11") (term "1,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "11") (term "1,1,1,0,0,1,0")) + (rule "castedGetAny" (formula "11") (term "0,1,0,0,1,0")) + (rule "eqSymm" (formula "11") (term "1,0,0,1,0")) + (rule "castedGetAny" (formula "11") (term "1,1,1,1,0")) + (rule "castedGetAny" (formula "10") (term "0,1,0,1,0")) + (rule "castedGetAny" (formula "11") (term "2,0,1,1,0")) + (rule "castedGetAny" (formula "13") (term "2,0")) + (rule "inEqSimp_ltToLeq" (formula "11") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "11") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "11") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "11") (term "1,0,0,1,0,0")) + (rule "inEqSimp_ltToLeq" (formula "10") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "10") (term "1,0,0,1,0,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "11") (term "0,0,0,1,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "11") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "10") (term "0,0,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "11") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "11") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "11") (term "1,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "11") (term "0,1,1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "11") (term "1,1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "11") (term "1,1,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "11") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "11") (term "1,1,0,0")) + (rule "polySimp_rightDist" (formula "11") (term "1,1,0,0")) + (rule "mul_literals" (formula "11") (term "0,1,1,0,0")) + (rule "polySimp_mulLiterals" (formula "11") (term "1,1,1,0,0")) + (rule "polySimp_elimOne" (formula "11") (term "1,1,1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "10") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "10") (term "1,1,0,0,1,0")) + (rule "polySimp_rightDist" (formula "10") (term "1,1,0,0,1,0")) + (rule "mul_literals" (formula "10") (term "0,1,1,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "10") (term "1,1,1,0,0,1,0")) + (rule "polySimp_elimOne" (formula "10") (term "1,1,1,0,0,1,0")) + (rule "elementOfUnionEQ" (formula "1") (term "0,0") (ifseqformula "10")) + (builtin "One Step Simplification" (formula "1")) + (rule "applyEqReverse" (formula "17") (term "0,0") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "applyEq" (formula "16") (term "0") (ifseqformula "14")) + (rule "elementOfUnionEQ" (formula "1") (term "0,0") (ifseqformula "9")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "16"))) + (rule "closeFalse" (formula "1")) + ) +) +) +} \ No newline at end of file diff --git a/key.ui/examples/heap/FM2024Tutorial/ArrayList/LinkedList_newNode.proof b/key.ui/examples/heap/FM2024Tutorial/ArrayList/LinkedList_newNode.proof new file mode 100644 index 00000000000..7f968f9a06f --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/ArrayList/LinkedList_newNode.proof @@ -0,0 +1,4300 @@ +\profile "Java Profile"; + +\settings { + "Choice" : { + "JavaCard" : "JavaCard:off", + "Strings" : "Strings:on", + "assertions" : "assertions:safe", + "bigint" : "bigint:on", + "finalFields" : "finalFields:immutable", + "floatRules" : "floatRules:strictfpOnly", + "initialisation" : "initialisation:disableStaticInitialisation", + "intRules" : "intRules:arithmeticSemanticsIgnoringOF", + "integerSimplificationRules" : "integerSimplificationRules:full", + "javaLoopTreatment" : "javaLoopTreatment:efficient", + "mergeGenerateIsWeakeningGoal" : "mergeGenerateIsWeakeningGoal:off", + "methodExpansion" : "methodExpansion:modularOnly", + "modelFields" : "modelFields:treatAsAxiom", + "moreSeqRules" : "moreSeqRules:on", + "permissions" : "permissions:off", + "programRules" : "programRules:Java", + "reach" : "reach:on", + "runtimeExceptions" : "runtimeExceptions:ban", + "sequences" : "sequences:on", + "soundDefaultContracts" : "soundDefaultContracts:on", + "wdChecks" : "wdChecks:off", + "wdOperator" : "wdOperator:L" + }, + "Labels" : { + "UseOriginLabels" : true + }, + "NewSMT" : { + "Axiomatisations" : "false", + "Presburger" : "false", + "sqrtSMTTranslation" : "SMT" + }, + "SMTSettings" : { + "SelectedTaclets" : [ + + ], + "UseBuiltUniqueness" : false, + "explicitTypeHierarchy" : false, + "instantiateHierarchyAssumptions" : true, + "integersMaximum" : 2147483645, + "integersMinimum" : -2147483645, + "invariantForall" : false, + "maxGenericSorts" : 2, + "useConstantsForBigOrSmallIntegers" : true, + "useUninterpretedMultiplication" : true + }, + "Strategy" : { + "ActiveStrategy" : "Modular JavaDL Strategy", + "MaximumNumberOfAutomaticApplications" : 10000, + "Timeout" : -1, + "options" : { + "AUTO_INDUCTION_OPTIONS_KEY" : "AUTO_INDUCTION_OFF", + "BLOCK_OPTIONS_KEY" : "BLOCK_CONTRACT_INTERNAL", + "CLASS_AXIOM_OPTIONS_KEY" : "CLASS_AXIOM_DELAYED", + "DEP_OPTIONS_KEY" : "DEP_ON", + "LOOP_OPTIONS_KEY" : "LOOP_INVARIANT", + "METHOD_OPTIONS_KEY" : "METHOD_CONTRACT", + "MPS_OPTIONS_KEY" : "MPS_MERGE", + "NON_LIN_ARITH_OPTIONS_KEY" : "NON_LIN_ARITH_DEF_OPS", + "OSS_OPTIONS_KEY" : "OSS_ON", + "QUANTIFIERS_OPTIONS_KEY" : "QUANTIFIERS_NON_SPLITTING_WITH_PROGS", + "QUERYAXIOM_OPTIONS_KEY" : "QUERYAXIOM_OFF", + "QUERY_NEW_OPTIONS_KEY" : "QUERY_OFF", + "SPLITTING_OPTIONS_KEY" : "SPLITTING_DELAYED", + "STOPMODE_OPTIONS_KEY" : "STOPMODE_DEFAULT", + "SYMBOLIC_EXECUTION_ALIAS_CHECK_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_ALIAS_CHECK_NEVER", + "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OFF", + "USER_TACLETS_OPTIONS_KEY1" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY2" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY3" : "USER_TACLETS_OFF", + "VBT_PHASE" : "VBT_SYM_EX" + } + } +} + + +\javaSource "src"; + +\proofObligation +// +{ + "class" : "de.uka.ilkd.key.proof.init.FunctionalOperationContractPO", + "contract" : "LinkedList[LinkedList::newNode(int)].JML normal_behavior operation contract.0", + "name" : "LinkedList[LinkedList::newNode(int)].JML normal_behavior operation contract.0" +} + +\proof { +(keyLog "0" (keyUser "mattias" ) (keyVersion "4911758ba07017f4af60dc0314ac665c14a542d0")) + +(autoModeTime "25355") + +(branch "dummy ID" + (builtin "One Step Simplification" (formula "1") (newnames "heapAtPre,o_0,f")) +(rule "impRight" (formula "1")) +(rule "andLeft" (formula "1")) +(rule "andLeft" (formula "1")) +(rule "andLeft" (formula "1")) +(rule "andLeft" (formula "1")) +(rule "andLeft" (formula "1")) +(rule "notLeft" (formula "2")) +(rule "eqSymm" (formula "7") (term "1,0,0,1,0,1")) +(rule "assignment" (formula "7") (term "1")) + (builtin "One Step Simplification" (formula "7")) +(rule "methodBodyExpand" (formula "7") (term "1") (newnames "heapBefore_newNode,savedHeapBefore_newNode")) + (builtin "One Step Simplification" (formula "7")) +(rule "variableDeclarationAssign" (formula "7") (term "1")) +(rule "variableDeclaration" (formula "7") (term "1") (newnames "result")) +(rule "instanceCreationAssignment" (formula "7") (term "1") (inst "#v0=n")) +(rule "variableDeclarationAssign" (formula "7") (term "1")) +(rule "variableDeclaration" (formula "7") (term "1") (newnames "n")) +(rule "staticMethodCallStaticWithAssignmentViaTypereference" (formula "7") (term "1") (inst "#v0=n_1")) +(rule "variableDeclaration" (formula "7") (term "1") (newnames "n_1")) +(rule "methodBodyExpand" (formula "7") (term "1") (newnames "heapBefore_,savedHeapBefore_")) + (builtin "One Step Simplification" (formula "7")) +(rule "variableDeclaration" (formula "7") (term "1") (newnames "__NEW__")) +(rule "staticMethodCallStaticWithAssignmentViaTypereference" (formula "7") (term "1") (inst "#v0=n_2")) +(rule "variableDeclaration" (formula "7") (term "1") (newnames "n_2")) +(rule "allocateInstance" (formula "7")) + (builtin "One Step Simplification" (formula "8")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "2"))) +(rule "andLeft" (formula "1")) +(rule "andLeft" (formula "1")) +(rule "notLeft" (formula "1")) +(rule "notLeft" (formula "1")) +(rule "blockEmpty" (formula "10") (term "1")) +(rule "assignment" (formula "10") (term "1")) + (builtin "One Step Simplification" (formula "10")) +(rule "methodBodyExpand" (formula "10") (term "1") (newnames "heapBefore_,savedHeapBefore_")) + (builtin "One Step Simplification" (formula "10")) +(rule "assignment_write_attribute_this" (formula "10")) + (builtin "One Step Simplification" (formula "10")) +(rule "methodCallWithinClass" (formula "10") (term "1")) +(rule "methodBodyExpand" (formula "10") (term "1") (newnames "heapBefore_,savedHeapBefore_")) + (builtin "One Step Simplification" (formula "10")) +(rule "methodCallSuper" (formula "10") (term "1")) +(rule "methodBodyExpand" (formula "10") (term "1") (newnames "heapBefore_,savedHeapBefore_")) + (builtin "One Step Simplification" (formula "10")) +(rule "methodCallEmpty" (formula "10") (term "1")) +(rule "blockEmpty" (formula "10") (term "1")) +(rule "assignment_write_attribute_this" (formula "10")) + (builtin "One Step Simplification" (formula "10")) +(rule "assignment_write_attribute_this" (formula "10")) + (builtin "One Step Simplification" (formula "10")) +(rule "methodCallEmpty" (formula "10") (term "1")) +(rule "blockEmpty" (formula "10") (term "1")) +(rule "methodCallReturnIgnoreResult" (formula "10") (term "1")) +(rule "methodCallReturn" (formula "10") (term "1")) +(rule "assignment" (formula "10") (term "1")) + (builtin "One Step Simplification" (formula "10")) +(rule "methodCallEmpty" (formula "10") (term "1")) +(rule "blockEmpty" (formula "10") (term "1")) +(rule "assignment" (formula "10") (term "1")) + (builtin "One Step Simplification" (formula "10")) +(rule "methodBodyExpand" (formula "10") (term "1") (newnames "heapBefore_,savedHeapBefore_")) + (builtin "One Step Simplification" (formula "10")) +(rule "methodCallSuper" (formula "10") (term "1")) +(rule "methodBodyExpand" (formula "10") (term "1") (newnames "heapBefore__0,savedHeapBefore__0")) + (builtin "One Step Simplification" (formula "10")) +(rule "methodCallEmpty" (formula "10") (term "1")) +(rule "blockEmpty" (formula "10") (term "1")) +(rule "methodCallSuper" (formula "10") (term "1")) +(rule "methodBodyExpand" (formula "10") (term "1")) +(builtin "One Step Simplification" (formula "10")) +(rule "methodCallEmpty" (formula "10") (term "1")) +(rule "methodCallEmpty" (formula "10") (term "1")) +(rule "blockEmpty" (formula "10") (term "1")) +(rule "assignment_write_attribute" (formula "10")) +(branch "Normal Execution (n != null)" + (builtin "One Step Simplification" (formula "10")) + (rule "assignment" (formula "10") (term "1")) + (builtin "One Step Simplification" (formula "10")) + (rule "assignment_write_attribute" (formula "10")) + (branch "Normal Execution (result != null)" + (builtin "One Step Simplification" (formula "10")) + (rule "methodCallReturn" (formula "10") (term "1")) + (rule "assignment" (formula "10") (term "1")) + (builtin "One Step Simplification" (formula "10")) + (rule "methodCallEmpty" (formula "10") (term "1")) + (rule "tryEmpty" (formula "10") (term "1")) + (rule "emptyModality" (formula "10") (term "1")) + (rule "andRight" (formula "10")) + (branch "Case 1" + (rule "andRight" (formula "10")) + (branch "Case 1" + (rule "andRight" (formula "10")) + (branch + (rule "andRight" (formula "10")) + (branch + (builtin "One Step Simplification" (formula "10") (ifInst "" (formula "7"))) + (rule "closeTrue" (formula "10")) + ) + (branch + (builtin "One Step Simplification" (formula "10") (ifInst "" (formula "8"))) + (rule "closeTrue" (formula "10")) + ) + ) + (branch "Case 2" + (rule "andRight" (formula "10")) + (branch + (builtin "One Step Simplification" (formula "10")) + (rule "pullOutSelect" (formula "10") (term "0") (inst "selectSK=Node_data_0")) + (rule "simplifySelectOfStore" (formula "1")) + (builtin "One Step Simplification" (formula "1")) + (rule "castDel" (formula "1") (term "0")) + (rule "applyEqReverse" (formula "11") (term "0") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "11")) + (rule "closeTrue" (formula "11")) + ) + (branch "Case 2" + (rule "andRight" (formula "10")) + (branch + (builtin "One Step Simplification" (formula "10")) + (rule "dismissNonSelectedField" (formula "10") (term "0")) + (rule "dismissNonSelectedField" (formula "10") (term "0")) + (rule "pullOutSelect" (formula "10") (term "0") (inst "selectSK=Node_next_0")) + (rule "simplifySelectOfStore" (formula "1")) + (builtin "One Step Simplification" (formula "1")) + (rule "castDel" (formula "1") (term "0")) + (rule "applyEqReverse" (formula "11") (term "0") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "11")) + (rule "closeTrue" (formula "11")) + ) + (branch "Case 2" + (rule "andRight" (formula "10")) + (branch "Case 1" + (builtin "One Step Simplification" (formula "10")) + (builtin "Use Dependency Contract" (formula "10") (ifInst "" (formula "6")) (contract "LinkedList[java.lang.Object::$inv()].JML accessible clause.0") (userinteraction)) + (rule "impLeft" (formula "7") (userinteraction)) + (branch "Case 1" + (rule "andRight" (formula "7")) + (branch "Case 1" + (rule "andRight" (formula "7")) + (branch "Case 1" + (rule "andRight" (formula "7")) + (branch "Case 1" + (rule "andRight" (formula "7")) + (branch "Case 1" + (rule "notRight" (formula "7")) + (rule "close" (formula "10") (ifseqformula "1")) + ) + (branch + (rule "close" (formula "7") (ifseqformula "3")) + ) + ) + (branch "Case 2" + (rule "andRight" (formula "7")) + (branch + (rule "close" (formula "7") (ifseqformula "2")) + ) + (branch "Case 2" + (rule "wellFormedStorePrimitive" (formula "7")) + (rule "wellFormedStorePrimitive" (formula "7")) + (rule "wellFormedStoreObject" (formula "7")) + (builtin "One Step Simplification" (formula "7")) + (rule "wellFormedCreate" (formula "7")) + (rule "close" (formula "7") (ifseqformula "2")) + ) + ) + ) + (branch + (rule "close" (formula "7") (ifseqformula "6")) + ) + ) + (branch "Case 2" + (rule "Class_invariant_axiom_for_LinkedList" (formula "6") (inst "i=i") (inst "j=j") (inst "i_0=i_0") (ifseqformula "10") (userinteraction)) + (rule "andLeft" (formula "6")) + (rule "andLeft" (formula "6")) + (rule "andLeft" (formula "8")) + (rule "andLeft" (formula "6")) + (rule "andLeft" (formula "6")) + (rule "andLeft" (formula "6")) + (rule "andLeft" (formula "6")) + (rule "disjointToElementOf" (formula "14") (inst "ov=ov") (inst "fv=fv") (userinteraction)) + (rule "allRight" (formula "14") (inst "sk=ov_0") (userinteraction)) + (rule "allRight" (formula "14") (inst "sk=fv_0") (userinteraction)) + (rule "orRight" (formula "14") (userinteraction)) + (rule "notRight" (formula "15") (userinteraction)) + (rule "notRight" (formula "15") (userinteraction)) + (rule "elementOfUnion" (formula "1") (userinteraction)) + (rule "elementOfUnion" (formula "1") (term "1") (userinteraction)) + (rule "elementOfSingleton" (formula "1") (term "0") (userinteraction)) + (rule "elementOfSingleton" (formula "1") (term "0,1") (userinteraction)) + (rule "elementOfSingleton" (formula "1") (term "1,1") (userinteraction)) + (rule "applyEq" (formula "2") (term "2") (ifseqformula "10") (userinteraction)) + (rule "elementOfUnion" (formula "2") (userinteraction)) + (rule "cut_direct" (formula "1") (term "0,0") (userinteraction)) + (branch "CUT: ov_0 = n_2 TRUE" + (rule "orLeft" (formula "3") (userinteraction)) + (branch "(ov_0, fv_0) in self.*" + (builtin "One Step Simplification" (formula "12")) + (builtin "One Step Simplification" (formula "11")) + (builtin "One Step Simplification" (formula "3")) + (builtin "One Step Simplification" (formula "2") (ifInst "" (formula "1")) (ifInst "" (formula "1"))) + (rule "eqSymm" (formula "14")) + (rule "eqSymm" (formula "13")) + (rule "eqSymm" (formula "16")) + (rule "eqSymm" (formula "15")) + (rule "eqSymm" (formula "12") (term "0,1,0,1,0,1,0")) + (rule "eqSymm" (formula "12") (term "1,0,0,1,0")) + (rule "eqSymm" (formula "12") (term "1,1,0,1,0,1,0")) + (rule "eqSymm" (formula "12") (term "1,1,0")) + (rule "eqSymm" (formula "11")) + (rule "polySimp_elimSub" (formula "14") (term "1,0,2,0")) + (rule "mul_literals" (formula "14") (term "1,1,0,2,0")) + (rule "polySimp_elimSub" (formula "12") (term "1,0,0,1,1,0")) + (rule "mul_literals" (formula "12") (term "1,1,0,0,1,1,0")) + (rule "polySimp_addComm0" (formula "12") (term "1,0,2,0,1,1,0")) + (rule "polySimp_addComm0" (formula "14") (term "1,0,2,0")) + (rule "polySimp_addComm0" (formula "12") (term "1,0,0,1,1,0")) + (rule "subsetSingletonLeft" (formula "9")) + (rule "subsetSingletonLeft" (formula "10")) + (rule "castedGetAny" (formula "12") (term "0,0,0,0,0,1,0")) + (rule "castedGetAny" (formula "13") (term "2,0")) + (rule "castedGetAny" (formula "12") (term "0,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "12") (term "1,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "12") (term "0,1,0,0,1,0")) + (rule "eqSymm" (formula "12") (term "1,0,0,1,0")) + (rule "castedGetAny" (formula "12") (term "1,1,1,1,0")) + (rule "castedGetAny" (formula "11") (term "0,1,0,1,0")) + (rule "castedGetAny" (formula "12") (term "2,0,1,1,0")) + (rule "castedGetAny" (formula "14") (term "2,0")) + (rule "inEqSimp_ltToLeq" (formula "12") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "12") (term "1,0,0,1,0,0")) + (rule "inEqSimp_ltToLeq" (formula "12") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "12") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "castedGetAny" (formula "12") (term "1,0,1,0,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "11") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "11") (term "1,0,0,1,0,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "12") (term "0,0,0,1,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "12") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "11") (term "0,0,0,1,0")) + (rule "applyEq" (formula "1") (term "0") (ifseqformula "3")) + (rule "eqSymm" (formula "1")) + (rule "sortsDisjointModuloNull" (formula "1")) + (rule "andLeft" (formula "1")) + (rule "close" (formula "20") (ifseqformula "2")) + ) + (branch "(ov_0, fv_0) in infiniteUnion{int i_0;}(if ( inInt(i_0) & ( 0 <= i_0 & i_0 < self.size)) then ((Node)(self.nodeseq[i_0]).*) else ({}))" + (rule "elementOfInfiniteUnion" (formula "3") (userinteraction)) + (rule "exLeft" (formula "3") (inst "sk=i_0_0") (userinteraction)) + (rule "ifthenelse_split" (formula "3") (term "2") (userinteraction)) + (branch "inInt(i_0_0) & (0 <= i_0_0 & i_0_0 < self.size) TRUE" + (builtin "One Step Simplification" (formula "4") (userinteraction)) + (rule "int_induction" (inst "b=( lt(nv, select<[int]>(heap, self, LinkedList::#size))<> + -> ( select<[boolean]>(heap, + (Node)(seqGet<[any]>(select<[Seq]>(heap, + self, + LinkedList::#nodeseq), + nv)), + java.lang.Object::#$created) + = TRUE)<>)<>") (inst "nv=nv") (userinteraction)) + (branch "Base Case" + (rule "impRight" (formula "18") (userinteraction)) + (rule "ifthenelse_split" (formula "15") (term "1") (userinteraction)) + (branch "self.size = 0 TRUE" + (builtin "One Step Simplification" (formula "14")) + (builtin "One Step Simplification" (formula "13")) + (builtin "One Step Simplification" (formula "4")) + (builtin "One Step Simplification" (formula "3") (ifInst "" (formula "2")) (ifInst "" (formula "2"))) + (rule "andLeft" (formula "4")) + (rule "eqSymm" (formula "18")) + (rule "eqSymm" (formula "19")) + (rule "eqSymm" (formula "20")) + (rule "eqSymm" (formula "6")) + (rule "eqSymm" (formula "15") (term "0,1,0,1,0,1,0")) + (rule "eqSymm" (formula "15") (term "1,1,0,1,0,1,0")) + (rule "eqSymm" (formula "15") (term "1,1,0")) + (rule "eqSymm" (formula "15") (term "1,0,0,1,0")) + (rule "eqSymm" (formula "14")) + (rule "replace_known_left" (formula "18") (term "0,0") (ifseqformula "16")) + (builtin "One Step Simplification" (formula "18")) + (rule "eqSymm" (formula "18")) + (rule "polySimp_elimSub" (formula "15") (term "1,0,0,1,1,0")) + (rule "mul_literals" (formula "15") (term "1,1,0,0,1,1,0")) + (rule "polySimp_addComm0" (formula "15") (term "1,0,2,0,1,1,0")) + (rule "polySimp_addComm0" (formula "15") (term "1,0,0,1,1,0")) + (rule "subsetSingletonLeft" (formula "12")) + (rule "castedGetAny" (formula "21") (term "1,0")) + (rule "subsetSingletonLeft" (formula "13")) + (rule "castedGetAny" (formula "15") (term "0,0,0,0,0,1,0")) + (rule "castedGetAny" (formula "6") (term "0")) + (rule "castedGetAny" (formula "15") (term "1,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "15") (term "0,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "15") (term "1,1,1,1,0")) + (rule "castedGetAny" (formula "15") (term "0,1,0,0,1,0")) + (rule "eqSymm" (formula "15") (term "1,0,0,1,0")) + (rule "castedGetAny" (formula "14") (term "0,1,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "1")) + (rule "add_zero_right" (formula "1") (term "0")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0")) + (rule "castedGetAny" (formula "15") (term "2,0,1,1,0")) + (rule "inEqSimp_ltToLeq" (formula "15") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "15") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,0,1,0,0")) + (rule "inEqSimp_ltToLeq" (formula "5")) + (rule "polySimp_mulComm0" (formula "5") (term "1,0,0")) + (rule "polySimp_addComm1" (formula "5") (term "0")) + (rule "castedGetAny" (formula "15") (term "1,0,1,0,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "14") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "14") (term "1,0,0,1,0,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "15") (term "0,0,0,1,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "15") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "4")) + (rule "inEqSimp_commuteLeq" (formula "14") (term "0,0,0,1,0")) + (rule "applyEq" (formula "5") (term "0,1,0") (ifseqformula "16")) + (rule "mul_literals" (formula "5") (term "1,0")) + (rule "add_zero_right" (formula "5") (term "0")) + (rule "applyEq" (formula "1") (term "0,1,0") (ifseqformula "16")) + (rule "times_zero_2" (formula "1") (term "1,0")) + (rule "add_literals" (formula "1") (term "0")) + (rule "leq_literals" (formula "1")) + (rule "closeFalse" (formula "1")) + ) + (branch "self.size = 0 FALSE" + (rule "applyEqReverse" (formula "20") (term "1,0") (ifseqformula "15") (userinteraction)) + (rule "eqTermCut" (formula "20") (term "1,0") (inst "s=null") (userinteraction)) + (branch "Assume self.first = null" + (rule "instAll" (formula "16") (term "1,0,1") (ifseqformula "15") (userinteraction)) + (rule "impLeft" (formula "16") (userinteraction)) + (branch "Case 1" + (builtin "One Step Simplification" (formula "15")) + (builtin "One Step Simplification" (formula "14")) + (builtin "One Step Simplification" (formula "5")) + (builtin "One Step Simplification" (formula "4") (ifInst "" (formula "3")) (ifInst "" (formula "3"))) + (builtin "One Step Simplification" (formula "20") (ifInst "" (formula "2"))) + (rule "leq_literals" (formula "20")) + (rule "closeTrue" (formula "20")) + ) + (branch "Case 2" + (rule "andLeft" (formula "16")) + (rule "andLeft" (formula "16")) + (rule "andLeft" (formula "16")) + (rule "notLeft" (formula "16")) + (builtin "One Step Simplification" (formula "17")) + (builtin "One Step Simplification" (formula "15")) + (builtin "One Step Simplification" (formula "14")) + (builtin "One Step Simplification" (formula "5")) + (builtin "One Step Simplification" (formula "4") (ifInst "" (formula "3")) (ifInst "" (formula "3"))) + (rule "add_zero_left" (formula "18") (term "1,0,2,1")) + (rule "andLeft" (formula "5")) + (rule "eqSymm" (formula "20")) + (rule "eqSymm" (formula "7")) + (rule "eqSymm" (formula "23")) + (rule "eqSymm" (formula "21")) + (rule "eqSymm" (formula "22")) + (rule "eqSymm" (formula "19") (term "0,1")) + (rule "eqSymm" (formula "17")) + (rule "eqSymm" (formula "18") (term "0,1,0")) + (rule "eqSymm" (formula "18") (term "1,1,0")) + (rule "eqSymm" (formula "16") (term "1,1,0")) + (rule "eqSymm" (formula "16") (term "1,0,0,1,0")) + (rule "eqSymm" (formula "16") (term "1,1,0,1,0,1,0")) + (rule "eqSymm" (formula "16") (term "0,1,0,1,0,1,0")) + (rule "eqSymm" (formula "15")) + (rule "eqSymm" (formula "19")) + (rule "replace_known_right" (formula "21") (term "0,0") (ifseqformula "25")) + (builtin "One Step Simplification" (formula "21")) + (rule "polySimp_elimSub" (formula "16") (term "1,0,0,1,1,0")) + (rule "mul_literals" (formula "16") (term "1,1,0,0,1,1,0")) + (rule "polySimp_elimSub" (formula "19") (term "0,0,0")) + (rule "mul_literals" (formula "19") (term "1,0,0,0")) + (rule "polySimp_elimSub" (formula "21") (term "1,0,0")) + (rule "mul_literals" (formula "21") (term "1,1,0,0")) + (rule "polySimp_addComm0" (formula "16") (term "1,0,2,0,1,1,0")) + (rule "polySimp_addComm0" (formula "16") (term "1,0,0,1,1,0")) + (rule "polySimp_addComm0" (formula "19") (term "0,0,0")) + (rule "polySimp_addComm0" (formula "21") (term "1,0,0")) + (rule "subsetSingletonLeft" (formula "14")) + (rule "subsetSingletonLeft" (formula "13")) + (rule "castedGetAny" (formula "24") (term "0")) + (rule "castedGetAny" (formula "16") (term "0,0,0,0,0,1,0")) + (rule "castedGetAny" (formula "20") (term "0")) + (rule "castedGetAny" (formula "7") (term "0")) + (rule "castedGetAny" (formula "17") (term "1,1")) + (rule "castedGetAny" (formula "17") (term "0")) + (rule "castedGetAny" (formula "18") (term "1,0,1,0")) + (rule "castedGetAny" (formula "18") (term "0,0,1,0")) + (rule "castedGetAny" (formula "16") (term "1,1,1,1,0")) + (rule "castedGetAny" (formula "16") (term "0,1,0,0,1,0")) + (rule "eqSymm" (formula "16") (term "1,0,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "2")) + (rule "add_zero_right" (formula "2") (term "0")) + (rule "polySimp_mulComm0" (formula "2") (term "1,0")) + (rule "castedGetAny" (formula "16") (term "1,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "16") (term "0,0,1,0,1,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "18") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "18") (term "1,0,0,1,0,0")) + (rule "castedGetAny" (formula "15") (term "0,1,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "16") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "16") (term "1,0,0,1,0,0")) + (rule "inEqSimp_ltToLeq" (formula "16") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "16") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "castedGetAny" (formula "19") (term "1,1")) + (rule "castedGetAny" (formula "19") (term "2,0")) + (rule "inEqSimp_ltToLeq" (formula "6")) + (rule "polySimp_mulComm0" (formula "6") (term "1,0,0")) + (rule "polySimp_addComm1" (formula "6") (term "0")) + (rule "castedGetAny" (formula "16") (term "2,0,1,1,0")) + (rule "castedGetAny" (formula "21") (term "0")) + (rule "inEqSimp_ltToLeq" (formula "15") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,0,1,0,0,1,0")) + (rule "castedGetAny" (formula "16") (term "1,0,1,0,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "18") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "16") (term "0,0,0,1,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "16") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "5")) + (rule "inEqSimp_commuteLeq" (formula "15") (term "0,0,0,1,0")) + (rule "applyEq" (formula "24") (term "0") (ifseqformula "20")) + (rule "close" (formula "24") (ifseqformula "1")) + ) + ) + (branch "Assume self.first != null" + (builtin "One Step Simplification" (formula "15")) + (builtin "One Step Simplification" (formula "14")) + (builtin "One Step Simplification" (formula "5")) + (builtin "One Step Simplification" (formula "4") (ifInst "" (formula "3")) (ifInst "" (formula "3"))) + (rule "notLeft" (formula "1")) + (rule "referencedObjectIsCreatedRight" (formula "21") (ifseqformula "19")) + (rule "close" (formula "21") (ifseqformula "7")) + ) + ) + ) + (branch "Step Case" + (builtin "One Step Simplification" (formula "13")) + (builtin "One Step Simplification" (formula "12")) + (builtin "One Step Simplification" (formula "3")) + (builtin "One Step Simplification" (formula "2") (ifInst "" (formula "1")) (ifInst "" (formula "1"))) + (rule "andLeft" (formula "3")) + (rule "allRight" (formula "19") (inst "sk=nv_0")) + (rule "impRight" (formula "19")) + (rule "andLeft" (formula "1")) + (rule "impRight" (formula "21")) + (rule "eqSymm" (formula "20")) + (rule "eqSymm" (formula "8")) + (rule "eqSymm" (formula "21")) + (rule "eqSymm" (formula "19")) + (rule "eqSymm" (formula "18")) + (rule "eqSymm" (formula "17") (term "1,1,0,1,0,1,0")) + (rule "eqSymm" (formula "17") (term "1,0,0,1,0")) + (rule "eqSymm" (formula "17") (term "0,1,0,1,0,1,0")) + (rule "eqSymm" (formula "17") (term "1,1,0")) + (rule "eqSymm" (formula "16")) + (rule "polySimp_elimSub" (formula "19") (term "1,0,2,0")) + (rule "mul_literals" (formula "19") (term "1,1,0,2,0")) + (rule "polySimp_elimSub" (formula "17") (term "1,0,0,1,1,0")) + (rule "mul_literals" (formula "17") (term "1,1,0,0,1,1,0")) + (rule "polySimp_addComm0" (formula "22") (term "1,0,1,0")) + (rule "polySimp_addComm0" (formula "1") (term "0")) + (rule "polySimp_addComm0" (formula "17") (term "1,0,2,0,1,1,0")) + (rule "polySimp_addComm0" (formula "19") (term "1,0,2,0")) + (rule "polySimp_addComm0" (formula "17") (term "1,0,0,1,1,0")) + (rule "subsetSingletonLeft" (formula "15")) + (rule "subsetSingletonLeft" (formula "14")) + (rule "castedGetAny" (formula "17") (term "0,0,0,0,0,1,0")) + (rule "castedGetAny" (formula "3") (term "1,0,1")) + (rule "castedGetAny" (formula "8") (term "0")) + (rule "castedGetAny" (formula "18") (term "2,0")) + (rule "castedGetAny" (formula "17") (term "0,1,0,0,1,0")) + (rule "eqSymm" (formula "17") (term "1,0,0,1,0")) + (rule "castedGetAny" (formula "17") (term "0,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "17") (term "1,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "17") (term "1,1,1,1,0")) + (rule "castedGetAny" (formula "16") (term "0,1,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "17") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,0,1,0,0")) + (rule "inEqSimp_ltToLeq" (formula "17") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "castedGetAny" (formula "22") (term "1,0")) + (rule "inEqSimp_ltToLeq" (formula "7")) + (rule "polySimp_mulComm0" (formula "7") (term "1,0,0")) + (rule "polySimp_addComm1" (formula "7") (term "0")) + (rule "castedGetAny" (formula "17") (term "2,0,1,1,0")) + (rule "castedGetAny" (formula "19") (term "2,0")) + (rule "inEqSimp_ltToLeq" (formula "3") (term "0")) + (rule "polySimp_mulComm0" (formula "3") (term "1,0,0,0")) + (rule "polySimp_addComm1" (formula "3") (term "0,0")) + (rule "castedGetAny" (formula "17") (term "1,0,1,0,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "16") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "16") (term "1,0,0,1,0,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0")) + (rule "polySimp_addComm1" (formula "1") (term "0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "17") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "17") (term "0,0,0,1,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "6")) + (rule "inEqSimp_commuteLeq" (formula "16") (term "0,0,0,1,0")) + (rule "applyEq" (formula "8") (term "1") (ifseqformula "4")) + (rule "inEqSimp_sepPosMonomial0" (formula "17") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "17") (term "1,1,0,0")) + (rule "polySimp_rightDist" (formula "17") (term "1,1,0,0")) + (rule "mul_literals" (formula "17") (term "0,1,1,0,0")) + (rule "polySimp_mulLiterals" (formula "17") (term "1,1,1,0,0")) + (rule "polySimp_elimOne" (formula "17") (term "1,1,1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "17") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "17") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "17") (term "1,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "17") (term "0,1,1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "17") (term "1,1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "17") (term "1,1,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "7")) + (rule "polySimp_mulLiterals" (formula "7") (term "0")) + (rule "polySimp_elimOne" (formula "7") (term "0")) + (rule "inEqSimp_sepNegMonomial0" (formula "3") (term "0")) + (rule "polySimp_mulLiterals" (formula "3") (term "0,0")) + (rule "polySimp_elimOne" (formula "3") (term "0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "16") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "16") (term "1,1,0,0,1,0")) + (rule "polySimp_rightDist" (formula "16") (term "1,1,0,0,1,0")) + (rule "mul_literals" (formula "16") (term "0,1,1,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "16") (term "1,1,1,0,0,1,0")) + (rule "polySimp_elimOne" (formula "16") (term "1,1,1,0,0,1,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "0")) + (rule "polySimp_elimOne" (formula "1") (term "0")) + (rule "inEqSimp_subsumption1" (formula "3") (term "0") (ifseqformula "1")) + (rule "inEqSimp_homoInEq0" (formula "3") (term "0,0")) + (rule "polySimp_mulComm0" (formula "3") (term "1,0,0,0")) + (rule "polySimp_rightDist" (formula "3") (term "1,0,0,0")) + (rule "mul_literals" (formula "3") (term "0,1,0,0,0")) + (rule "polySimp_addAssoc" (formula "3") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "3") (term "0,0,0,0")) + (rule "add_literals" (formula "3") (term "0,0,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "3") (term "0,0,0")) + (rule "add_literals" (formula "3") (term "1,1,0,0,0")) + (rule "times_zero_1" (formula "3") (term "1,0,0,0")) + (rule "add_zero_right" (formula "3") (term "0,0,0")) + (rule "qeq_literals" (formula "3") (term "0,0")) + (builtin "One Step Simplification" (formula "3")) + (rule "elementOfUnionEQ" (formula "14") (ifseqformula "16")) + (builtin "One Step Simplification" (formula "14")) + (rule "true_left" (formula "14")) + (rule "elementOfUnionEQ" (formula "14") (ifseqformula "15")) + (builtin "One Step Simplification" (formula "14")) + (rule "true_left" (formula "14")) + (rule "nnf_imp2or" (formula "15") (term "0")) + (rule "nnf_notAnd" (formula "15") (term "0,0")) + (rule "inEqSimp_notLeq" (formula "15") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "15") (term "1,0,0,1,0,0")) + (rule "mul_literals" (formula "15") (term "0,1,0,0,1,0,0")) + (rule "polySimp_addAssoc" (formula "15") (term "0,0,1,0,0")) + (rule "add_literals" (formula "15") (term "0,0,0,1,0,0")) + (rule "add_zero_left" (formula "15") (term "0,0,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "15") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "15") (term "1,1,0,0")) + (rule "inEqSimp_notGeq" (formula "15") (term "0,0,0")) + (rule "times_zero_1" (formula "15") (term "1,0,0,0,0,0")) + (rule "add_zero_right" (formula "15") (term "0,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "15") (term "0,0,0")) + (rule "mul_literals" (formula "15") (term "1,0,0,0")) + (rule "nnf_imp2or" (formula "15") (term "0,1,0,1,0")) + (rule "nnf_notAnd" (formula "15") (term "0,0,1,0,1,0")) + (rule "inEqSimp_notGeq" (formula "15") (term "0,0,0,1,0,1,0")) + (rule "times_zero_1" (formula "15") (term "1,0,0,0,0,0,1,0,1,0")) + (rule "add_zero_right" (formula "15") (term "0,0,0,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "15") (term "0,0,0,1,0,1,0")) + (rule "mul_literals" (formula "15") (term "1,0,0,0,1,0,1,0")) + (rule "inEqSimp_notLeq" (formula "15") (term "1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "15") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "15") (term "0,1,0,0,1,0,0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "15") (term "0,0,1,0,0,1,0,1,0")) + (rule "add_literals" (formula "15") (term "0,0,0,1,0,0,1,0,1,0")) + (rule "add_zero_left" (formula "15") (term "0,0,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "15") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "15") (term "1,1,0,0,1,0,1,0")) + (rule "nnf_imp2or" (formula "15") (term "1,0,1,0,1,0")) + (rule "commute_or" (formula "5") (term "1")) + (rule "Class_invariant_axiom_for_LinkedList" (formula "24") (inst "i=i") (inst "j=j") (inst "i_0=i_0") (ifseqformula "23")) + (builtin "One Step Simplification" (formula "24")) + (rule "eqSymm" (formula "24") (term "1,0,0,1,0,1,0,0,0")) + (rule "eqSymm" (formula "24") (term "1,1,0,1,0,1,0,1,0,0,0")) + (rule "eqSymm" (formula "24") (term "0,1")) + (rule "eqSymm" (formula "24") (term "1,1,0,1,0,0,0")) + (rule "eqSymm" (formula "24") (term "1,0")) + (rule "eqSymm" (formula "24") (term "1,1")) + (rule "eqSymm" (formula "24") (term "1,0,0")) + (rule "eqSymm" (formula "24") (term "1,0,0,0,0")) + (rule "eqSymm" (formula "24") (term "0,1,0,1,0,1,0,1,0,0,0")) + (rule "polySimp_elimSub" (formula "24") (term "1,0,0,1,1,0,1,0,0,0")) + (rule "mul_literals" (formula "24") (term "1,1,0,0,1,1,0,1,0,0,0")) + (rule "polySimp_elimSub" (formula "24") (term "1,0,2,0,1,0")) + (rule "mul_literals" (formula "24") (term "1,1,0,2,0,1,0")) + (rule "polySimp_addComm0" (formula "24") (term "1,0,2,0,1,1,0,1,0,0,0")) + (rule "polySimp_addComm0" (formula "24") (term "1,0,0,1,1,0,1,0,0,0")) + (rule "polySimp_addComm0" (formula "24") (term "1,0,2,0,1,0")) + (rule "dismissNonSelectedField" (formula "24") (term "1,1,0,0,1,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "1,1,0,0,1,0,0,0")) + (rule "subsetSingletonLeft" (formula "24") (term "1,0,0,0,0,0")) + (rule "castedGetAny" (formula "24") (term "0,0,0,0,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "1,0,0,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,1,1,1,0,0,1,0,1,0,0,0")) + (rule "castedGetAny" (formula "24") (term "0,1,0,0,1,0,1,0,0,0")) + (rule "eqSymm" (formula "24") (term "1,0,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,0,1")) + (rule "eqSymm" (formula "24") (term "0,1")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,2,0,1,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,1,1,1,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,0,1,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,2,0,1,0")) + (rule "dismissNonSelectedField" (formula "24") (term "1,1,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,1,1")) + (rule "eqSymm" (formula "24") (term "1,1")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,2,0,1,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,0,1,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "1,1,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "1,1,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,0,1,0,1,0,1,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "1,1,0,0,1,0,1,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,1,0,1,0,1,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,0,0,1,0,1,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "1,1,0,0,1,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "1,1,0,2,0,1,0")) + (rule "dismissNonSelectedField" (formula "24") (term "1,1,0,0,1,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "1,1,0,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "2,1,0,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,0,0,0,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "1,0,0,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,1,1,0,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,1,0,1,0,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,1")) + (rule "eqSymm" (formula "24") (term "0,1")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,2,0,1,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,1,1,1,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,0,1,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,2,0,1,0")) + (rule "dismissNonSelectedField" (formula "24") (term "1,1,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,1,1")) + (rule "eqSymm" (formula "24") (term "1,1")) + (rule "castedGetAny" (formula "24") (term "2,0,1,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,0,1,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "1,1,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "1,1,0,0,0,0")) + (rule "castedGetAny" (formula "24") (term "0,1,0,1,0,1,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "1,1,0,0,1,0,1,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,1,0,1,0,1,0,1,0,1,0,0,0")) + (rule "castedGetAny" (formula "24") (term "0,0,1,0,1,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "1,1,0,0,1,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "1,1,0,2,0,1,0")) + (rule "dismissNonSelectedField" (formula "24") (term "1,1,0,0,1,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "1,1,0,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "2,1,0,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,0,0,0,0,1,0,1,0,0,0")) + (rule "subsetSingletonLeft" (formula "24") (term "0,0,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,1,1,0,0,1,0,1,0,0,0")) + (rule "castedGetAny" (formula "24") (term "1,0,1,0,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,0,1")) + (rule "eqSymm" (formula "24") (term "0,1")) + (rule "castedGetAny" (formula "24") (term "2,0,1,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "1,1,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,0,1,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,2,0,1,0")) + (rule "dismissNonSelectedField" (formula "24") (term "1,1,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,1,1")) + (rule "eqSymm" (formula "24") (term "1,1")) + (rule "inEqSimp_commuteLeq" (formula "24") (term "0,0,0,1,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,2,0,1,0,0")) + (rule "inEqSimp_commuteLeq" (formula "24") (term "0,0,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,0,1,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "1,1,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "1,1,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,1,0,1,0,1,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "1,1,0,0,1,0,1,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,1,0,1,0,1,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,0,1,0,1,0,1,0,1,0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "24") (term "0,0,0,1,0,1,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "1,1,0,0,1,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "1,1,0,2,0,1,0")) + (rule "dismissNonSelectedField" (formula "24") (term "2,1,0,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,0,0,0,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "2,0,0,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,1,1,0,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,1,0,1,0,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,1")) + (rule "eqSymm" (formula "24") (term "0,1")) + (rule "dismissNonSelectedField" (formula "24") (term "0,2,0,1,1,0,1,0,0,0")) + (rule "castedGetAny" (formula "24") (term "1,1,1,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,1,1")) + (rule "eqSymm" (formula "24") (term "1,1")) + (rule "dismissNonSelectedField" (formula "24") (term "0,2,0,1,0,0")) + (rule "inEqSimp_ltToLeq" (formula "24") (term "1,0,0,1,0,1,0,1,0,0,0")) + (rule "polySimp_mulComm0" (formula "24") (term "1,0,0,1,0,0,1,0,1,0,1,0,0,0")) + (rule "inEqSimp_ltToLeq" (formula "24") (term "1,0,0,1,0,0,0")) + (rule "polySimp_mulComm0" (formula "24") (term "1,0,0,1,0,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,1,0,1,0,1,0,0,0,0")) + (rule "castedGetAny" (formula "24") (term "1,0,1,0,1,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,0,1,0,1,0,1,0,1,0,0,0")) + (rule "castedGetAny" (formula "24") (term "2,0,1,0")) + (rule "dismissNonSelectedField" (formula "24") (term "1,0,1")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,0,1")) + (rule "dismissNonSelectedField" (formula "24") (term "0,1,1,1,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,0,1,1")) + (rule "eqSymm" (formula "24") (term "1,1")) + (rule "inEqSimp_ltToLeq" (formula "24") (term "1,0,0,1,0,1,0,0,0,0")) + (rule "polySimp_mulComm0" (formula "24") (term "1,0,0,1,0,0,1,0,1,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "1,1,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "24") (term "0,1,1")) + (rule "eqSymm" (formula "24") (term "1,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "24") (term "1,0,0,1,0,1,0,1,0,0,0")) + (rule "polySimp_mulComm0" (formula "24") (term "1,1,0,0,1,0,1,0,1,0,0,0")) + (rule "polySimp_rightDist" (formula "24") (term "1,1,0,0,1,0,1,0,1,0,0,0")) + (rule "polySimp_mulLiterals" (formula "24") (term "1,1,1,0,0,1,0,1,0,1,0,0,0")) + (rule "mul_literals" (formula "24") (term "0,1,1,0,0,1,0,1,0,1,0,0,0")) + (rule "polySimp_elimOne" (formula "24") (term "1,1,1,0,0,1,0,1,0,1,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "24") (term "1,0,0,1,0,0,0")) + (rule "polySimp_mulComm0" (formula "24") (term "1,1,0,0,1,0,0,0")) + (rule "polySimp_rightDist" (formula "24") (term "1,1,0,0,1,0,0,0")) + (rule "polySimp_mulLiterals" (formula "24") (term "1,1,1,0,0,1,0,0,0")) + (rule "mul_literals" (formula "24") (term "0,1,1,0,0,1,0,0,0")) + (rule "polySimp_elimOne" (formula "24") (term "1,1,1,0,0,1,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "24") (term "1,0,0,1,0,1,0,0,0,0")) + (rule "polySimp_mulComm0" (formula "24") (term "1,1,0,0,1,0,1,0,0,0,0")) + (rule "polySimp_rightDist" (formula "24") (term "1,1,0,0,1,0,1,0,0,0,0")) + (rule "mul_literals" (formula "24") (term "0,1,1,0,0,1,0,1,0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "24") (term "1,1,1,0,0,1,0,1,0,0,0,0")) + (rule "polySimp_elimOne" (formula "24") (term "1,1,1,0,0,1,0,1,0,0,0,0")) + (rule "pullOutSelect" (formula "24") (term "0,0,0,1,0") (inst "selectSK=LinkedList_size_0")) + (rule "applyEq" (formula "25") (term "1,1,1,0,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "25") (term "0,0,0,1,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "25") (term "1,1,1,0,0,1,0,1,0,0,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "25") (term "1,1,2,0,1,0") (ifseqformula "1")) + (rule "applyEq" (formula "25") (term "1,1,1,0,0,1,0,1,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "25") (term "1,0,1") (ifseqformula "1")) + (rule "applyEq" (formula "25") (term "1,1,0,0,1,1,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "25") (term "1,1,1") (ifseqformula "1")) + (rule "simplifySelectOfCreate" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "23"))) + (rule "applyEqReverse" (formula "25") (term "0,0,0,1,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "25") (term "1,1,1,0,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "25") (term "0,0,0,1,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "25") (term "1,1,1,0,0,1,0,1,0,0,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "25") (term "1,1,2,0,1,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "25") (term "1,1,1,0,0,1,0,1,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "25") (term "1,0,1") (ifseqformula "1")) + (rule "applyEqReverse" (formula "25") (term "1,1,0,0,1,1,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "25") (term "1,1,1") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "pullOutSelect" (formula "24") (term "1,1,0") (inst "selectSK=LinkedList_last_0")) + (rule "simplifySelectOfCreate" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "23"))) + (rule "applyEqReverse" (formula "25") (term "1,1,0") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "pullOutSelect" (formula "24") (term "1,1,0,0") (inst "selectSK=LinkedList_first_0")) + (rule "simplifySelectOfCreate" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "23"))) + (rule "applyEqReverse" (formula "25") (term "1,1,0,0") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "pullOutSelect" (formula "24") (term "1,1,0,0,0,0") (inst "selectSK=List_footprint_0")) + (rule "applyEq" (formula "25") (term "2,0,0,0,0,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "25") (term "2,1,0,0,0,0,0") (ifseqformula "1")) + (rule "simplifySelectOfCreate" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "23"))) + (rule "applyEqReverse" (formula "25") (term "1,1,0,0,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "25") (term "2,0,0,0,0,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "25") (term "2,1,0,0,0,0,0") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "elementOfUnionEQ" (formula "24") (term "0,0,0,0,0,0") (ifseqformula "14")) + (builtin "One Step Simplification" (formula "24")) + (rule "elementOfUnionEQ" (formula "24") (term "0,0,0,0,0") (ifseqformula "14")) + (builtin "One Step Simplification" (formula "24")) + (rule "pullOutSelect" (formula "24") (term "0,0,1,0,1,0,0,0,0,0") (inst "selectSK=LinkedList_nodeseq_0")) + (rule "applyEq" (formula "25") (term "0,1,1,1,1,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "25") (term "0,2,0,1,1,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "25") (term "0,2,0,1,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "25") (term "0,1,0,1,0,0,1,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "25") (term "0,1,0,1,0,1,0,1,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "25") (term "0,2,0,1,0") (ifseqformula "1")) + (rule "applyEq" (formula "25") (term "0,0,0,1,0,1,0,1,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "25") (term "0,0,0,0,0,0,1,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "25") (term "0,0,1,1") (ifseqformula "1")) + (rule "simplifySelectOfCreate" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "23"))) + (rule "applyEqReverse" (formula "25") (term "0,0,1,0,1,0,0,0,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "25") (term "0,1,1,1,1,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "25") (term "0,2,0,1,1,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "25") (term "0,2,0,1,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "25") (term "0,1,0,1,0,0,1,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "25") (term "0,1,0,1,0,1,0,1,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "25") (term "0,2,0,1,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "25") (term "0,0,0,1,0,1,0,1,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "25") (term "0,0,0,0,0,0,1,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "25") (term "0,0,1,1") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "replace_known_left" (formula "24") (term "1,1") (ifseqformula "19")) + (builtin "One Step Simplification" (formula "24") (ifInst "" (formula "14")) (ifInst "" (formula "16")) (ifInst "" (formula "17"))) + (rule "pullOutSelect" (formula "24") (term "0,1,1,0,0,1,0,0") (inst "selectSK=List_seq_0")) + (rule "applyEq" (formula "25") (term "0,0,1") (ifseqformula "1")) + (rule "simplifySelectOfCreate" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "23"))) + (rule "applyEqReverse" (formula "25") (term "0,1,1,0,0,1,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "25") (term "0,0,1") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "replace_known_left" (formula "24") (term "1") (ifseqformula "18")) + (builtin "One Step Simplification" (formula "24")) + (rule "allRight" (formula "24") (inst "sk=i_0")) + (rule "impRight" (formula "24")) + (rule "andLeft" (formula "1")) + (rule "polySimp_homoEq" (formula "26") (term "0,0,1")) + (rule "polySimp_addComm1" (formula "26") (term "0,0,0,1")) + (rule "inEqSimp_homoInEq0" (formula "2")) + (rule "polySimp_addComm1" (formula "2") (term "0")) + (rule "polySimp_sepPosMonomial" (formula "26") (term "0,0,1")) + (rule "polySimp_mulComm0" (formula "26") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "26") (term "1,0,0,1")) + (rule "polySimp_mulLiterals" (formula "26") (term "1,1,0,0,1")) + (rule "mul_literals" (formula "26") (term "0,1,0,0,1")) + (rule "polySimp_elimOne" (formula "26") (term "1,1,0,0,1")) + (rule "inEqSimp_sepPosMonomial1" (formula "2")) + (rule "polySimp_mulComm0" (formula "2") (term "1")) + (rule "polySimp_rightDist" (formula "2") (term "1")) + (rule "mul_literals" (formula "2") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,1")) + (rule "polySimp_elimOne" (formula "2") (term "1,1")) + (rule "pullOutSelect" (formula "26") (term "1,1") (inst "selectSK=Node_next_0")) + (rule "simplifySelectOfStore" (formula "1")) + (builtin "One Step Simplification" (formula "1")) + (rule "castDel" (formula "1") (term "1,0")) + (rule "eqSymm" (formula "1") (term "0,0")) + (rule "pullOutSelect" (formula "27") (term "0,1,0,0") (inst "selectSK=Node_data_0")) + (rule "simplifySelectOfStore" (formula "1")) + (builtin "One Step Simplification" (formula "1")) + (rule "castDel" (formula "1") (term "1,0")) + (rule "eqSymm" (formula "28") (term "1,0,0")) + (rule "eqSymm" (formula "1") (term "0,0")) + (rule "dismissNonSelectedField" (formula "1") (term "2,0")) + (rule "dismissNonSelectedField" (formula "1") (term "2,0")) + (rule "pullOutSelect" (formula "2") (term "2,0") (inst "selectSK=Node_next_1")) + (rule "simplifySelectOfCreate" (formula "2")) + (builtin "One Step Simplification" (formula "2") (ifInst "" (formula "27"))) + (rule "applyEqReverse" (formula "3") (term "2,0") (ifseqformula "2")) + (rule "hideAuxiliaryEq" (formula "2")) + (rule "pullOutSelect" (formula "1") (term "2,0") (inst "selectSK=Node_data_1")) + (rule "simplifySelectOfCreate" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "27"))) + (rule "applyEqReverse" (formula "2") (term "2,0") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "nnf_imp2or" (formula "28") (term "0,1,0")) + (rule "shift_paren_or" (formula "9")) + (rule "nnf_notAnd" (formula "28") (term "0,0,1,0")) + (rule "inEqSimp_notLeq" (formula "28") (term "1,0,0,1,0")) + (rule "polySimp_rightDist" (formula "28") (term "1,0,0,1,0,0,1,0")) + (rule "mul_literals" (formula "28") (term "0,1,0,0,1,0,0,1,0")) + (rule "polySimp_addAssoc" (formula "28") (term "0,0,1,0,0,1,0")) + (rule "add_literals" (formula "28") (term "0,0,0,1,0,0,1,0")) + (rule "add_zero_left" (formula "28") (term "0,0,1,0,0,1,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "28") (term "1,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "28") (term "1,1,0,0,1,0")) + (rule "polySimp_elimOne" (formula "28") (term "1,1,0,0,1,0")) + (rule "inEqSimp_notGeq" (formula "28") (term "0,0,0,1,0")) + (rule "mul_literals" (formula "28") (term "1,0,0,0,0,0,1,0")) + (rule "add_zero_right" (formula "28") (term "0,0,0,0,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "28") (term "0,0,0,1,0")) + (rule "mul_literals" (formula "28") (term "1,0,0,0,1,0")) + (rule "nnf_imp2or" (formula "28") (term "1,0,1,0")) + (rule "shift_paren_or" (formula "19") (term "0,1,0,1,0")) + (rule "ifthenelse_to_or_left" (formula "19") (term "1,1,0")) + (rule "eqSymm" (formula "19") (term "1,1,1,1,0")) + (rule "eqSymm" (formula "19") (term "1,0,1,1,0")) + (rule "ifthenelse_split" (formula "20") (term "0")) + (branch "self.size = 0 TRUE" + (rule "eqSymm" (formula "21")) + (rule "replace_known_left" (formula "22") (term "0,0") (ifseqformula "20")) + (builtin "One Step Simplification" (formula "22")) + (rule "eqSymm" (formula "22")) + (rule "applyEq" (formula "11") (term "0") (ifseqformula "20")) + (rule "inEqSimp_homoInEq1" (formula "11")) + (rule "mul_literals" (formula "11") (term "1,0")) + (rule "add_zero_right" (formula "11") (term "0")) + (rule "applyEq" (formula "5") (term "0") (ifseqformula "20")) + (rule "inEqSimp_homoInEq1" (formula "5")) + (rule "mul_literals" (formula "5") (term "1,0")) + (rule "add_zero_right" (formula "5") (term "0")) + (rule "applyEq" (formula "4") (term "0") (ifseqformula "20")) + (rule "inEqSimp_homoInEq1" (formula "4")) + (rule "mul_literals" (formula "4") (term "1,0")) + (rule "add_zero_right" (formula "4") (term "0")) + (rule "applyEq" (formula "19") (term "1,1,0,0,0,1,0,1,0") (ifseqformula "20")) + (rule "applyEq" (formula "29") (term "1,1,0,0,1,0") (ifseqformula "20")) + (rule "applyEq" (formula "29") (term "0,0,0,1") (ifseqformula "20")) + (rule "polySimp_homoEq" (formula "29") (term "0,0,1")) + (rule "mul_literals" (formula "29") (term "1,0,0,0,1")) + (rule "add_zero_right" (formula "29") (term "0,0,0,1")) + (rule "applyEq" (formula "19") (term "1,1,0,0") (ifseqformula "20")) + (rule "applyEq" (formula "18") (term "1,1,1,0,0,1,0") (ifseqformula "20")) + (rule "add_literals" (formula "18") (term "1,1,0,0,1,0")) + (rule "applyEq" (formula "23") (term "1") (ifseqformula "20")) + (rule "applyEq" (formula "24") (term "1") (ifseqformula "20")) + (rule "applyEq" (formula "19") (term "1,1,0,0,0,1,1,0") (ifseqformula "20")) + (rule "add_literals" (formula "19") (term "1,0,0,0,1,1,0")) + (rule "applyEq" (formula "19") (term "1,1,0,1,1,1,0") (ifseqformula "20")) + (rule "add_literals" (formula "19") (term "1,0,1,1,1,0")) + (rule "polySimp_sepPosMonomial" (formula "29") (term "0,0,1")) + (rule "mul_literals" (formula "29") (term "1,0,0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "11")) + (rule "mul_literals" (formula "11") (term "1")) + (rule "inEqSimp_sepPosMonomial0" (formula "5")) + (rule "mul_literals" (formula "5") (term "1")) + (rule "inEqSimp_sepPosMonomial0" (formula "4")) + (rule "mul_literals" (formula "4") (term "1")) + (rule "inEqSimp_contradEq7" (formula "29") (term "0,0,1") (ifseqformula "3")) + (rule "mul_literals" (formula "29") (term "1,0,0,0,0,1")) + (rule "add_zero_left" (formula "29") (term "0,0,0,0,1")) + (rule "leq_literals" (formula "29") (term "0,0,0,1")) + (builtin "One Step Simplification" (formula "29")) + (rule "inEqSimp_contradInEq0" (formula "3") (ifseqformula "4")) + (rule "qeq_literals" (formula "3") (term "0")) + (builtin "One Step Simplification" (formula "3")) + (rule "closeFalse" (formula "3")) + ) + (branch "self.size = 0 FALSE" + (rule "replace_known_right" (formula "21") (term "0,0") (ifseqformula "24")) + (builtin "One Step Simplification" (formula "21")) + (rule "lenNonNegative" (formula "22") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "22")) + (rule "applyEq" (formula "22") (term "0") (ifseqformula "23")) + (rule "inEqSimp_strengthen1" (formula "22") (ifseqformula "25")) + (rule "add_literals" (formula "22") (term "1")) + (rule "inEqSimp_contradEq7" (formula "25") (ifseqformula "22")) + (rule "mul_literals" (formula "25") (term "1,0,0")) + (rule "add_literals" (formula "25") (term "0,0")) + (rule "leq_literals" (formula "25") (term "0")) + (builtin "One Step Simplification" (formula "25")) + (rule "false_right" (formula "25")) + (rule "lenNonNegative" (formula "24") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "24")) + (rule "applyEq" (formula "24") (term "0") (ifseqformula "25")) + (rule "inEqSimp_subsumption1" (formula "24") (ifseqformula "22")) + (rule "leq_literals" (formula "24") (term "0")) + (builtin "One Step Simplification" (formula "24")) + (rule "true_left" (formula "24")) + (rule "seqGetAlphaCast" (formula "12") (term "0")) + (rule "castedGetAny" (formula "12") (term "0")) + (builtin "One Step Simplification" (formula "12")) + (rule "true_left" (formula "12")) + (rule "seqGetAlphaCast" (formula "25") (term "1,0")) + (rule "castedGetAny" (formula "1") (term "0")) + (builtin "One Step Simplification" (formula "1")) + (rule "true_left" (formula "1")) + (rule "seqGetAlphaCast" (formula "7") (term "1,0")) + (rule "castedGetAny" (formula "7") (term "0")) + (builtin "One Step Simplification" (formula "7")) + (rule "true_left" (formula "7")) + (rule "commute_or" (formula "19") (term "1,1,1,0")) + (rule "commute_or" (formula "19") (term "0,1,1,0")) + (rule "commute_or_2" (formula "19") (term "0,0,1,0,1,0")) + (rule "commute_or" (formula "19") (term "0,0,0,1,0,1,0")) + (rule "ifthenelse_split" (formula "29") (term "0,1")) + (branch "self.size = 1 + i_0 TRUE" + (rule "eqSymm" (formula "30") (term "1")) + (rule "applyEq" (formula "30") (term "1,1,0,0,1,0") (ifseqformula "1")) + (rule "applyEq" (formula "20") (term "1,1,0,0,1,0,1,0") (ifseqformula "1")) + (rule "applyEq" (formula "12") (term "0") (ifseqformula "1")) + (rule "inEqSimp_homoInEq1" (formula "12")) + (rule "polySimp_mulComm0" (formula "12") (term "1,0")) + (rule "polySimp_rightDist" (formula "12") (term "1,0")) + (rule "mul_literals" (formula "12") (term "0,1,0")) + (rule "polySimp_addComm1" (formula "12") (term "0")) + (rule "polySimp_addAssoc" (formula "12") (term "0,0")) + (rule "add_literals" (formula "12") (term "0,0,0")) + (rule "add_zero_left" (formula "12") (term "0,0")) + (rule "applyEq" (formula "23") (term "0") (ifseqformula "1")) + (rule "inEqSimp_homoInEq1" (formula "23")) + (rule "polySimp_mulComm0" (formula "23") (term "1,0")) + (rule "polySimp_rightDist" (formula "23") (term "1,0")) + (rule "mul_literals" (formula "23") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "23") (term "0")) + (rule "add_literals" (formula "23") (term "0,0")) + (rule "add_zero_left" (formula "23") (term "0")) + (rule "applyEq" (formula "22") (term "1,1,0") (ifseqformula "1")) + (rule "polySimp_addAssoc" (formula "22") (term "1,0")) + (rule "add_literals" (formula "22") (term "0,1,0")) + (rule "add_zero_left" (formula "22") (term "1,0")) + (rule "applyEq" (formula "6") (term "0") (ifseqformula "1")) + (rule "inEqSimp_homoInEq1" (formula "6")) + (rule "polySimp_mulComm0" (formula "6") (term "1,0")) + (rule "polySimp_rightDist" (formula "6") (term "1,0")) + (rule "mul_literals" (formula "6") (term "0,1,0")) + (rule "polySimp_addComm1" (formula "6") (term "0")) + (rule "polySimp_addAssoc" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "0,0,0")) + (rule "applyEq" (formula "5") (term "0") (ifseqformula "1")) + (rule "inEqSimp_homoInEq1" (formula "5")) + (rule "polySimp_pullOutFactor1" (formula "5") (term "0")) + (rule "add_literals" (formula "5") (term "1,0")) + (rule "times_zero_1" (formula "5") (term "0")) + (rule "leq_literals" (formula "5")) + (rule "true_left" (formula "5")) + (rule "applyEq" (formula "19") (term "1,1,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "18") (term "1,1,1,0,0,1,0") (ifseqformula "1")) + (rule "polySimp_addAssoc" (formula "18") (term "1,1,0,0,1,0")) + (rule "add_literals" (formula "18") (term "0,1,1,0,0,1,0")) + (rule "add_zero_left" (formula "18") (term "1,1,0,0,1,0")) + (rule "applyEq" (formula "29") (term "0,0,0,0,0") (ifseqformula "21")) + (rule "applyEq" (formula "3") (term "1,2,0") (ifseqformula "21")) + (rule "applyEq" (formula "29") (term "1,0,0,1,0,1,0") (ifseqformula "21")) + (rule "applyEq" (formula "2") (term "1,2,0") (ifseqformula "21")) + (rule "applyEq" (formula "2") (term "0,0,0") (ifseqformula "21")) + (rule "applyEq" (formula "3") (term "0,0,0") (ifseqformula "21")) + (rule "applyEq" (formula "23") (term "1") (ifseqformula "1")) + (rule "applyEq" (formula "19") (term "1,1,0,1,0,1,1,0") (ifseqformula "1")) + (rule "polySimp_addAssoc" (formula "19") (term "1,0,1,0,1,1,0")) + (rule "add_literals" (formula "19") (term "0,1,0,1,0,1,1,0")) + (rule "add_zero_left" (formula "19") (term "1,0,1,0,1,1,0")) + (rule "applyEq" (formula "24") (term "1") (ifseqformula "1")) + (rule "applyEq" (formula "19") (term "1,1,1,1,1,1,0") (ifseqformula "1")) + (rule "polySimp_addAssoc" (formula "19") (term "1,1,1,1,1,0")) + (rule "add_literals" (formula "19") (term "0,1,1,1,1,1,0")) + (rule "add_zero_left" (formula "19") (term "1,1,1,1,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "11")) + (rule "polySimp_mulLiterals" (formula "11") (term "1")) + (rule "polySimp_elimOne" (formula "11") (term "1")) + (rule "inEqSimp_invertInEq0" (formula "22")) + (rule "mul_literals" (formula "22") (term "1")) + (rule "polySimp_mulLiterals" (formula "22") (term "0")) + (rule "polySimp_elimOne" (formula "22") (term "0")) + (rule "inEqSimp_sepPosMonomial0" (formula "5")) + (rule "polySimp_mulComm0" (formula "5") (term "1")) + (rule "polySimp_rightDist" (formula "5") (term "1")) + (rule "mul_literals" (formula "5") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "5") (term "1,1")) + (rule "polySimp_elimOne" (formula "5") (term "1,1")) + (rule "inEqSimp_exactShadow3" (formula "6") (ifseqformula "5")) + (rule "times_zero_1" (formula "6") (term "0,0")) + (rule "add_zero_left" (formula "6") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "6")) + (rule "mul_literals" (formula "6") (term "1")) + (rule "inEqSimp_subsumption1" (formula "4") (ifseqformula "6")) + (rule "leq_literals" (formula "4") (term "0")) + (builtin "One Step Simplification" (formula "4")) + (rule "true_left" (formula "4")) + (rule "inEqSimp_exactShadow3" (formula "10") (ifseqformula "11")) + (rule "mul_literals" (formula "10") (term "0,0")) + (rule "add_zero_left" (formula "10") (term "0")) + (rule "inEqSimp_subsumption1" (formula "10") (ifseqformula "5")) + (rule "leq_literals" (formula "10") (term "0")) + (builtin "One Step Simplification" (formula "10")) + (rule "true_left" (formula "10")) + (rule "all_pull_out1" (formula "19") (term "0,1,0")) + (rule "seqGetAlphaCast" (formula "28") (term "0,1,0,0")) + (rule "castedGetAny" (formula "1") (term "0")) + (builtin "One Step Simplification" (formula "1")) + (rule "true_left" (formula "1")) + (rule "cut_direct" (formula "9") (term "1,0")) + (branch "CUT: fv_0 = Node::#next TRUE" + (builtin "One Step Simplification" (formula "10")) + (rule "true_left" (formula "10")) + (rule "seqGetAlphaCast" (formula "20") (term "0")) + (rule "castedGetAny" (formula "20") (term "0")) + (builtin "One Step Simplification" (formula "20")) + (rule "true_left" (formula "20")) + (rule "ifthenelse_split" (formula "3") (term "0")) + (branch "self.last = n_2 TRUE" + (rule "referencedObjectIsCreatedRightEQ" (formula "26") (ifseqformula "3") (ifseqformula "27")) + (rule "close" (formula "26") (ifseqformula "15")) + ) + (branch "self.last = n_2 FALSE" + (rule "applyEqReverse" (formula "29") (term "0,1") (ifseqformula "3")) + (rule "hideAuxiliaryEq" (formula "3")) + (rule "replace_known_right" (formula "2") (term "0,0") (ifseqformula "23")) + (builtin "One Step Simplification" (formula "2")) + (rule "applyEqReverse" (formula "28") (term "1,1,0,0") (ifseqformula "2")) + (rule "hideAuxiliaryEq" (formula "2")) + (rule "all_pull_out0" (formula "17") (term "1,0")) + (rule "shift_paren_and" (formula "17") (term "0,1,0")) + (rule "onlyCreatedObjectsAreReferenced" (formula "18") (term "1") (ifseqformula "12")) + (rule "all_pull_out3" (formula "17") (term "0")) + (rule "cnf_rightDist" (formula "17") (term "0,0")) + (rule "distr_forallAnd" (formula "17") (term "0")) + (builtin "One Step Simplification" (formula "17")) + (rule "distr_forallAnd" (formula "17")) + (rule "andLeft" (formula "17")) + (rule "shift_paren_or" (formula "18") (term "0")) + (rule "commute_or_2" (formula "18") (term "0,0")) + (rule "inEqSimp_or_weaken3" (formula "18") (term "0")) + (builtin "One Step Simplification" (formula "18")) + (rule "cnf_rightDist" (formula "17") (term "0,0")) + (rule "distr_forallAnd" (formula "17") (term "0")) + (builtin "One Step Simplification" (formula "17")) + (rule "distr_forallAnd" (formula "17")) + (rule "andLeft" (formula "17")) + (rule "commute_or_2" (formula "18") (term "0")) + (builtin "One Step Simplification" (formula "18")) + (rule "inEqSimp_homoInEq1" (formula "18") (term "1,1")) + (rule "polySimp_pullOutFactor1b" (formula "18") (term "0,1,1")) + (rule "add_literals" (formula "18") (term "1,1,0,1,1")) + (rule "times_zero_1" (formula "18") (term "1,0,1,1")) + (rule "add_literals" (formula "18") (term "0,1,1")) + (rule "leq_literals" (formula "18") (term "1,1")) + (builtin "One Step Simplification" (formula "18")) + (rule "applyEq" (formula "18") (term "1,0,0") (ifseqformula "22")) + (rule "inEqSimp_contradInEq1" (formula "18") (term "1") (ifseqformula "3")) + (rule "qeq_literals" (formula "18") (term "0,1")) + (builtin "One Step Simplification" (formula "18")) + (rule "replace_known_left" (formula "30") (term "1") (ifseqformula "18")) + (builtin "One Step Simplification" (formula "30")) + (rule "cnf_rightDist" (formula "17") (term "0,0")) + (rule "distr_forallAnd" (formula "17") (term "0")) + (builtin "One Step Simplification" (formula "17")) + (rule "distr_forallAnd" (formula "17")) + (rule "andLeft" (formula "17")) + (rule "commute_or_2" (formula "18") (term "0,0")) + (rule "commute_or_2" (formula "18") (term "0,0,0")) + (rule "cnf_rightDist" (formula "17") (term "0")) + (rule "distr_forallAnd" (formula "17")) + (rule "andLeft" (formula "17")) + (rule "commute_or" (formula "18") (term "0")) + (rule "commute_or_2" (formula "17") (term "0")) + (rule "commute_or" (formula "17") (term "0,0")) + (rule "commute_or_2" (formula "19") (term "0,0,0,0")) + (rule "shift_paren_or" (formula "19") (term "0,0,0,0,0")) + (rule "seqGetAlphaCast" (formula "24") (term "0")) + (rule "castedGetAny" (formula "24") (term "0")) + (builtin "One Step Simplification" (formula "24")) + (rule "true_left" (formula "24")) + (rule "allLeft" (formula "21") (inst "t=nv_0")) + (rule "inEqSimp_contradInEq0" (formula "21") (term "1") (ifseqformula "2")) + (rule "inEqSimp_homoInEq1" (formula "21") (term "0,1")) + (rule "polySimp_mulComm0" (formula "21") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "21") (term "1,0,0,1")) + (rule "mul_literals" (formula "21") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "21") (term "0,0,1")) + (rule "polySimp_addComm0" (formula "21") (term "0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "21") (term "0,0,1")) + (rule "add_literals" (formula "21") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "21") (term "1,0,0,1")) + (rule "add_literals" (formula "21") (term "0,0,1")) + (rule "leq_literals" (formula "21") (term "0,1")) + (builtin "One Step Simplification" (formula "21")) + (rule "inEqSimp_contradInEq1" (formula "21") (term "1") (ifseqformula "4")) + (rule "qeq_literals" (formula "21") (term "0,1")) + (builtin "One Step Simplification" (formula "21")) + (rule "allLeft" (formula "22") (inst "t=Z(0(#))")) + (rule "leq_literals" (formula "22") (term "1,0")) + (builtin "One Step Simplification" (formula "22")) + (rule "add_literals" (formula "22") (term "1,1,0")) + (rule "inEqSimp_commuteGeq" (formula "22") (term "1")) + (rule "applyEq" (formula "22") (term "1,0,0") (ifseqformula "25")) + (rule "eqSymm" (formula "22") (term "0")) + (rule "inEqSimp_contradInEq1" (formula "22") (term "1") (ifseqformula "3")) + (rule "qeq_literals" (formula "22") (term "0,1")) + (builtin "One Step Simplification" (formula "22")) + (rule "allLeft" (formula "19") (inst "t=nv_0")) + (rule "inEqSimp_contradInEq1" (formula "19") (term "1,0,0,0,0,0") (ifseqformula "4")) + (rule "qeq_literals" (formula "19") (term "0,1,0,0,0,0,0")) + (builtin "One Step Simplification" (formula "19")) + (rule "inEqSimp_contradInEq0" (formula "19") (term "1,0,0,0,0") (ifseqformula "2")) + (rule "inEqSimp_homoInEq1" (formula "19") (term "0,1,0,0,0,0")) + (rule "polySimp_mulComm0" (formula "19") (term "1,0,0,1,0,0,0,0")) + (rule "polySimp_rightDist" (formula "19") (term "1,0,0,1,0,0,0,0")) + (rule "mul_literals" (formula "19") (term "0,1,0,0,1,0,0,0,0")) + (rule "polySimp_addAssoc" (formula "19") (term "0,0,1,0,0,0,0")) + (rule "polySimp_addComm1" (formula "19") (term "0,0,0,1,0,0,0,0")) + (rule "add_literals" (formula "19") (term "0,0,0,0,1,0,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "19") (term "0,0,1,0,0,0,0")) + (rule "add_literals" (formula "19") (term "1,1,0,0,1,0,0,0,0")) + (rule "times_zero_1" (formula "19") (term "1,0,0,1,0,0,0,0")) + (rule "add_literals" (formula "19") (term "0,0,1,0,0,0,0")) + (rule "leq_literals" (formula "19") (term "0,1,0,0,0,0")) + (builtin "One Step Simplification" (formula "19")) + (rule "allLeft" (formula "20") (inst "t=add(Z(1(#)), nv_0)")) + (rule "inEqSimp_homoInEq0" (formula "20") (term "1,0,0,0,0,0")) + (rule "polySimp_mulComm0" (formula "20") (term "1,0,1,0,0,0,0,0")) + (rule "polySimp_rightDist" (formula "20") (term "1,0,1,0,0,0,0,0")) + (rule "mul_literals" (formula "20") (term "0,1,0,1,0,0,0,0,0")) + (rule "polySimp_addAssoc" (formula "20") (term "0,1,0,0,0,0,0")) + (rule "add_literals" (formula "20") (term "0,0,1,0,0,0,0,0")) + (rule "inEqSimp_homoInEq1" (formula "20") (term "1,0,0,0,0")) + (rule "polySimp_mulComm0" (formula "20") (term "1,0,1,0,0,0,0")) + (rule "polySimp_rightDist" (formula "20") (term "1,0,1,0,0,0,0")) + (rule "mul_literals" (formula "20") (term "0,1,0,1,0,0,0,0")) + (rule "polySimp_addAssoc" (formula "20") (term "0,1,0,0,0,0")) + (rule "polySimp_addComm1" (formula "20") (term "0,0,1,0,0,0,0")) + (rule "add_literals" (formula "20") (term "0,0,0,1,0,0,0,0")) + (rule "add_zero_left" (formula "20") (term "0,0,1,0,0,0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "20") (term "1,0,0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "20") (term "0,1,0,0,0,0,0")) + (rule "polySimp_elimOne" (formula "20") (term "0,1,0,0,0,0,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "20") (term "1,0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "20") (term "0,1,0,0,0,0")) + (rule "polySimp_elimOne" (formula "20") (term "0,1,0,0,0,0")) + (rule "inEqSimp_contradInEq1" (formula "20") (term "1,0,0,0,0,0") (ifseqformula "4")) + (rule "qeq_literals" (formula "20") (term "0,1,0,0,0,0,0")) + (builtin "One Step Simplification" (formula "20")) + (rule "inEqSimp_contradInEq0" (formula "20") (term "1,0,0,0,0") (ifseqformula "2")) + (rule "inEqSimp_homoInEq1" (formula "20") (term "0,1,0,0,0,0")) + (rule "polySimp_mulComm0" (formula "20") (term "1,0,0,1,0,0,0,0")) + (rule "polySimp_rightDist" (formula "20") (term "1,0,0,1,0,0,0,0")) + (rule "mul_literals" (formula "20") (term "0,1,0,0,1,0,0,0,0")) + (rule "polySimp_addAssoc" (formula "20") (term "0,0,1,0,0,0,0")) + (rule "polySimp_addComm0" (formula "20") (term "0,0,0,1,0,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "20") (term "0,0,1,0,0,0,0")) + (rule "add_literals" (formula "20") (term "1,1,0,0,1,0,0,0,0")) + (rule "times_zero_1" (formula "20") (term "1,0,0,1,0,0,0,0")) + (rule "add_literals" (formula "20") (term "0,0,1,0,0,0,0")) + (rule "leq_literals" (formula "20") (term "0,1,0,0,0,0")) + (builtin "One Step Simplification" (formula "20")) + (rule "allLeft" (formula "17") (inst "t=add(Z(1(#)), nv_0)")) + (rule "inEqSimp_homoInEq0" (formula "17") (term "1,0")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,1,0")) + (rule "polySimp_rightDist" (formula "17") (term "1,0,1,0")) + (rule "mul_literals" (formula "17") (term "0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "17") (term "0,1,0")) + (rule "add_literals" (formula "17") (term "0,0,1,0")) + (rule "inEqSimp_homoInEq1" (formula "17") (term "1")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,1")) + (rule "polySimp_rightDist" (formula "17") (term "1,0,1")) + (rule "mul_literals" (formula "17") (term "0,1,0,1")) + (rule "polySimp_addAssoc" (formula "17") (term "0,1")) + (rule "polySimp_addComm1" (formula "17") (term "0,0,1")) + (rule "add_literals" (formula "17") (term "0,0,0,1")) + (rule "add_zero_left" (formula "17") (term "0,0,1")) + (rule "inEqSimp_sepNegMonomial1" (formula "17") (term "1,0")) + (rule "polySimp_mulLiterals" (formula "17") (term "0,1,0")) + (rule "polySimp_elimOne" (formula "17") (term "0,1,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "17") (term "1")) + (rule "polySimp_mulLiterals" (formula "17") (term "0,1")) + (rule "polySimp_elimOne" (formula "17") (term "0,1")) + (rule "inEqSimp_contradInEq0" (formula "17") (term "1") (ifseqformula "2")) + (rule "inEqSimp_homoInEq1" (formula "17") (term "0,1")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "17") (term "1,0,0,1")) + (rule "mul_literals" (formula "17") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "17") (term "0,0,1")) + (rule "polySimp_addComm0" (formula "17") (term "0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "17") (term "0,0,1")) + (rule "add_literals" (formula "17") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "17") (term "1,0,0,1")) + (rule "add_literals" (formula "17") (term "0,0,1")) + (rule "leq_literals" (formula "17") (term "0,1")) + (builtin "One Step Simplification" (formula "17")) + (rule "inEqSimp_contradInEq1" (formula "17") (term "1") (ifseqformula "4")) + (rule "qeq_literals" (formula "17") (term "0,1")) + (builtin "One Step Simplification" (formula "17")) + (rule "notLeft" (formula "17")) + (rule "referencedObjectIsCreatedRightEQ" (formula "33") (ifseqformula "23") (ifseqformula "31")) + (rule "close" (formula "33") (ifseqformula "12")) + ) + ) + (branch "CUT: fv_0 = Node::#next FALSE" + (builtin "One Step Simplification" (formula "9")) + (rule "seqGetAlphaCast" (formula "20") (term "0")) + (rule "castedGetAny" (formula "20") (term "0")) + (builtin "One Step Simplification" (formula "20")) + (rule "true_left" (formula "20")) + (rule "ifthenelse_split" (formula "3") (term "0")) + (branch "self.last = n_2 TRUE" + (rule "referencedObjectIsCreatedRightEQ" (formula "27") (ifseqformula "3") (ifseqformula "28")) + (rule "close" (formula "27") (ifseqformula "15")) + ) + (branch "self.last = n_2 FALSE" + (rule "applyEqReverse" (formula "30") (term "0,1") (ifseqformula "3")) + (rule "hideAuxiliaryEq" (formula "3")) + (rule "replace_known_right" (formula "2") (term "0,0") (ifseqformula "23")) + (builtin "One Step Simplification" (formula "2")) + (rule "applyEqReverse" (formula "29") (term "1,1,0,0") (ifseqformula "2")) + (rule "hideAuxiliaryEq" (formula "2")) + (rule "all_pull_out0" (formula "17") (term "1,0")) + (rule "shift_paren_and" (formula "17") (term "0,1,0")) + (rule "onlyCreatedObjectsAreReferenced" (formula "18") (term "1") (ifseqformula "12")) + (rule "all_pull_out3" (formula "17") (term "0")) + (rule "cnf_rightDist" (formula "17") (term "0,0")) + (rule "distr_forallAnd" (formula "17") (term "0")) + (builtin "One Step Simplification" (formula "17")) + (rule "distr_forallAnd" (formula "17")) + (rule "andLeft" (formula "17")) + (rule "shift_paren_or" (formula "18") (term "0")) + (rule "commute_or_2" (formula "18") (term "0,0")) + (rule "inEqSimp_or_weaken3" (formula "18") (term "0")) + (builtin "One Step Simplification" (formula "18")) + (rule "cnf_rightDist" (formula "17") (term "0,0")) + (rule "distr_forallAnd" (formula "17") (term "0")) + (builtin "One Step Simplification" (formula "17")) + (rule "distr_forallAnd" (formula "17")) + (rule "andLeft" (formula "17")) + (rule "commute_or_2" (formula "18") (term "0")) + (builtin "One Step Simplification" (formula "18")) + (rule "inEqSimp_homoInEq1" (formula "18") (term "1,1")) + (rule "polySimp_pullOutFactor1b" (formula "18") (term "0,1,1")) + (rule "add_literals" (formula "18") (term "1,1,0,1,1")) + (rule "times_zero_1" (formula "18") (term "1,0,1,1")) + (rule "add_literals" (formula "18") (term "0,1,1")) + (rule "leq_literals" (formula "18") (term "1,1")) + (builtin "One Step Simplification" (formula "18")) + (rule "applyEq" (formula "18") (term "1,0,0") (ifseqformula "22")) + (rule "inEqSimp_contradInEq1" (formula "18") (term "1") (ifseqformula "3")) + (rule "qeq_literals" (formula "18") (term "0,1")) + (builtin "One Step Simplification" (formula "18")) + (rule "replace_known_left" (formula "31") (term "1") (ifseqformula "18")) + (builtin "One Step Simplification" (formula "31")) + (rule "cnf_rightDist" (formula "17") (term "0,0")) + (rule "distr_forallAnd" (formula "17") (term "0")) + (builtin "One Step Simplification" (formula "17")) + (rule "distr_forallAnd" (formula "17")) + (rule "andLeft" (formula "17")) + (rule "commute_or_2" (formula "18") (term "0,0")) + (rule "commute_or_2" (formula "18") (term "0,0,0")) + (rule "cnf_rightDist" (formula "17") (term "0")) + (rule "distr_forallAnd" (formula "17")) + (rule "andLeft" (formula "17")) + (rule "commute_or_2" (formula "17") (term "0")) + (rule "commute_or" (formula "18") (term "0")) + (rule "commute_or" (formula "17") (term "0,0")) + (rule "commute_or_2" (formula "19") (term "0,0,0,0")) + (rule "shift_paren_or" (formula "19") (term "0,0,0,0,0")) + (rule "seqGetAlphaCast" (formula "24") (term "0")) + (rule "castedGetAny" (formula "24") (term "0")) + (builtin "One Step Simplification" (formula "24")) + (rule "true_left" (formula "24")) + (rule "allLeft" (formula "21") (inst "t=Z(0(#))")) + (rule "leq_literals" (formula "21") (term "1,0")) + (builtin "One Step Simplification" (formula "21")) + (rule "add_literals" (formula "21") (term "1,1,0")) + (rule "inEqSimp_commuteGeq" (formula "21") (term "1")) + (rule "applyEq" (formula "21") (term "1,0,0") (ifseqformula "24")) + (rule "eqSymm" (formula "21") (term "0")) + (rule "inEqSimp_contradInEq1" (formula "21") (term "1") (ifseqformula "3")) + (rule "qeq_literals" (formula "21") (term "0,1")) + (builtin "One Step Simplification" (formula "21")) + (rule "allLeft" (formula "22") (inst "t=nv_0")) + (rule "inEqSimp_contradInEq0" (formula "22") (term "1") (ifseqformula "2")) + (rule "inEqSimp_homoInEq1" (formula "22") (term "0,1")) + (rule "polySimp_mulComm0" (formula "22") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "22") (term "1,0,0,1")) + (rule "mul_literals" (formula "22") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "22") (term "0,0,1")) + (rule "polySimp_addComm0" (formula "22") (term "0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "22") (term "0,0,1")) + (rule "add_literals" (formula "22") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "22") (term "1,0,0,1")) + (rule "add_literals" (formula "22") (term "0,0,1")) + (rule "leq_literals" (formula "22") (term "0,1")) + (builtin "One Step Simplification" (formula "22")) + (rule "inEqSimp_contradInEq1" (formula "22") (term "1") (ifseqformula "4")) + (rule "qeq_literals" (formula "22") (term "0,1")) + (builtin "One Step Simplification" (formula "22")) + (rule "allLeft" (formula "19") (inst "t=add(Z(1(#)), nv_0)")) + (rule "inEqSimp_homoInEq1" (formula "19") (term "1,0,0,0,0")) + (rule "polySimp_mulComm0" (formula "19") (term "1,0,1,0,0,0,0")) + (rule "polySimp_rightDist" (formula "19") (term "1,0,1,0,0,0,0")) + (rule "mul_literals" (formula "19") (term "0,1,0,1,0,0,0,0")) + (rule "polySimp_addAssoc" (formula "19") (term "0,1,0,0,0,0")) + (rule "polySimp_addComm1" (formula "19") (term "0,0,1,0,0,0,0")) + (rule "add_literals" (formula "19") (term "0,0,0,1,0,0,0,0")) + (rule "add_zero_left" (formula "19") (term "0,0,1,0,0,0,0")) + (rule "inEqSimp_homoInEq0" (formula "19") (term "1,0,0,0,0,0")) + (rule "polySimp_mulComm0" (formula "19") (term "1,0,1,0,0,0,0,0")) + (rule "polySimp_rightDist" (formula "19") (term "1,0,1,0,0,0,0,0")) + (rule "mul_literals" (formula "19") (term "0,1,0,1,0,0,0,0,0")) + (rule "polySimp_addAssoc" (formula "19") (term "0,1,0,0,0,0,0")) + (rule "add_literals" (formula "19") (term "0,0,1,0,0,0,0,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "19") (term "1,0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "19") (term "0,1,0,0,0,0")) + (rule "polySimp_elimOne" (formula "19") (term "0,1,0,0,0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "19") (term "1,0,0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "19") (term "0,1,0,0,0,0,0")) + (rule "polySimp_elimOne" (formula "19") (term "0,1,0,0,0,0,0")) + (rule "inEqSimp_contradInEq0" (formula "19") (term "1,0,0,0,0") (ifseqformula "2")) + (rule "inEqSimp_homoInEq1" (formula "19") (term "0,1,0,0,0,0")) + (rule "polySimp_mulComm0" (formula "19") (term "1,0,0,1,0,0,0,0")) + (rule "polySimp_rightDist" (formula "19") (term "1,0,0,1,0,0,0,0")) + (rule "mul_literals" (formula "19") (term "0,1,0,0,1,0,0,0,0")) + (rule "polySimp_addAssoc" (formula "19") (term "0,0,1,0,0,0,0")) + (rule "polySimp_addComm0" (formula "19") (term "0,0,0,1,0,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "19") (term "0,0,1,0,0,0,0")) + (rule "add_literals" (formula "19") (term "1,1,0,0,1,0,0,0,0")) + (rule "times_zero_1" (formula "19") (term "1,0,0,1,0,0,0,0")) + (rule "add_zero_right" (formula "19") (term "0,0,1,0,0,0,0")) + (rule "leq_literals" (formula "19") (term "0,1,0,0,0,0")) + (builtin "One Step Simplification" (formula "19")) + (rule "inEqSimp_contradInEq1" (formula "19") (term "1,0,0,0,0") (ifseqformula "4")) + (rule "qeq_literals" (formula "19") (term "0,1,0,0,0,0")) + (builtin "One Step Simplification" (formula "19")) + (rule "allLeft" (formula "17") (inst "t=add(Z(1(#)), nv_0)")) + (rule "inEqSimp_homoInEq0" (formula "17") (term "1,0")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,1,0")) + (rule "polySimp_rightDist" (formula "17") (term "1,0,1,0")) + (rule "mul_literals" (formula "17") (term "0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "17") (term "0,1,0")) + (rule "add_literals" (formula "17") (term "0,0,1,0")) + (rule "inEqSimp_homoInEq1" (formula "17") (term "1")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,1")) + (rule "polySimp_rightDist" (formula "17") (term "1,0,1")) + (rule "mul_literals" (formula "17") (term "0,1,0,1")) + (rule "polySimp_addAssoc" (formula "17") (term "0,1")) + (rule "polySimp_addComm1" (formula "17") (term "0,0,1")) + (rule "add_literals" (formula "17") (term "0,0,0,1")) + (rule "add_zero_left" (formula "17") (term "0,0,1")) + (rule "inEqSimp_sepNegMonomial1" (formula "17") (term "1,0")) + (rule "polySimp_mulLiterals" (formula "17") (term "0,1,0")) + (rule "polySimp_elimOne" (formula "17") (term "0,1,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "17") (term "1")) + (rule "polySimp_mulLiterals" (formula "17") (term "0,1")) + (rule "polySimp_elimOne" (formula "17") (term "0,1")) + (rule "inEqSimp_contradInEq0" (formula "17") (term "1") (ifseqformula "2")) + (rule "inEqSimp_homoInEq1" (formula "17") (term "0,1")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "17") (term "1,0,0,1")) + (rule "mul_literals" (formula "17") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "17") (term "0,0,1")) + (rule "polySimp_addComm0" (formula "17") (term "0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "17") (term "0,0,1")) + (rule "add_literals" (formula "17") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "17") (term "1,0,0,1")) + (rule "add_literals" (formula "17") (term "0,0,1")) + (rule "leq_literals" (formula "17") (term "0,1")) + (builtin "One Step Simplification" (formula "17")) + (rule "inEqSimp_contradInEq1" (formula "17") (term "1") (ifseqformula "4")) + (rule "qeq_literals" (formula "17") (term "0,1")) + (builtin "One Step Simplification" (formula "17")) + (rule "notLeft" (formula "17")) + (rule "referencedObjectIsCreatedRightEQ" (formula "33") (ifseqformula "23") (ifseqformula "30")) + (rule "close" (formula "33") (ifseqformula "12")) + ) + ) + ) + (branch "self.size = 1 + i_0 FALSE" + (rule "inEqSimp_strengthen1" (formula "4") (ifseqformula "29")) + (rule "polySimp_addAssoc" (formula "4") (term "1")) + (rule "add_literals" (formula "4") (term "0,1")) + (rule "inEqSimp_contradEq7" (formula "29") (ifseqformula "4")) + (rule "polySimp_rightDist" (formula "29") (term "1,0,0")) + (rule "mul_literals" (formula "29") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "29") (term "0,0")) + (rule "polySimp_addComm1" (formula "29") (term "0,0,0")) + (rule "add_literals" (formula "29") (term "0,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "29") (term "0,0")) + (rule "add_literals" (formula "29") (term "1,1,0,0")) + (rule "times_zero_1" (formula "29") (term "1,0,0")) + (rule "add_literals" (formula "29") (term "0,0")) + (rule "leq_literals" (formula "29") (term "0")) + (builtin "One Step Simplification" (formula "29")) + (rule "false_right" (formula "29")) + (rule "ifthenelse_split" (formula "2") (term "0")) + (branch "(Node)self.nodeseq[i_0] = n_2 TRUE" + (rule "applyEqReverse" (formula "30") (term "1,1") (ifseqformula "3")) + (rule "hideAuxiliaryEq" (formula "3")) + (rule "replace_known_left" (formula "1") (term "0,0") (ifseqformula "2")) + (builtin "One Step Simplification" (formula "1")) + (rule "applyEqReverse" (formula "29") (term "1,1,0,0") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "applyEq" (formula "28") (term "1,0,0,1,0,1,0") (ifseqformula "1")) + (rule "applyEq" (formula "28") (term "0,0,0,0,0") (ifseqformula "1")) + (rule "replace_known_right" (formula "28") (term "0,0,0,0") (ifseqformula "26")) + (builtin "One Step Simplification" (formula "28")) + (rule "all_pull_out1" (formula "18") (term "0,1,0")) + (rule "all_pull_out0" (formula "18") (term "1,0")) + (rule "shift_paren_and" (formula "18") (term "0,1,0")) + (rule "all_pull_out3" (formula "18") (term "0")) + (rule "cnf_rightDist" (formula "18") (term "0,0")) + (rule "distr_forallAnd" (formula "18") (term "0")) + (builtin "One Step Simplification" (formula "18")) + (rule "distr_forallAnd" (formula "18")) + (rule "andLeft" (formula "18")) + (rule "shift_paren_or" (formula "19") (term "0")) + (rule "commute_or_2" (formula "19") (term "0,0")) + (rule "inEqSimp_or_weaken3" (formula "19") (term "0")) + (rule "polySimp_addAssoc" (formula "19") (term "1,0,1,0")) + (rule "add_literals" (formula "19") (term "0,1,0,1,0")) + (rule "add_zero_left" (formula "19") (term "1,0,1,0")) + (builtin "One Step Simplification" (formula "19")) + (rule "cnf_rightDist" (formula "18") (term "0,0")) + (rule "distr_forallAnd" (formula "18") (term "0")) + (builtin "One Step Simplification" (formula "18")) + (rule "distr_forallAnd" (formula "18")) + (rule "andLeft" (formula "18")) + (rule "commute_or_2" (formula "19") (term "0")) + (builtin "One Step Simplification" (formula "19")) + (rule "inEqSimp_homoInEq0" (formula "19") (term "0,1")) + (rule "polySimp_mulComm0" (formula "19") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "19") (term "1,0,0,1")) + (rule "mul_literals" (formula "19") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "19") (term "0,0,1")) + (rule "add_literals" (formula "19") (term "0,0,0,1")) + (rule "add_zero_left" (formula "19") (term "0,0,1")) + (rule "inEqSimp_homoInEq1" (formula "19") (term "1,1")) + (rule "polySimp_mulComm0" (formula "19") (term "1,0,1,1")) + (rule "polySimp_rightDist" (formula "19") (term "1,0,1,1")) + (rule "mul_literals" (formula "19") (term "0,1,0,1,1")) + (rule "polySimp_addAssoc" (formula "19") (term "0,1,1")) + (rule "polySimp_addComm0" (formula "19") (term "0,0,1,1")) + (rule "polySimp_pullOutFactor1b" (formula "19") (term "0,1,1")) + (rule "add_literals" (formula "19") (term "1,1,0,1,1")) + (rule "times_zero_1" (formula "19") (term "1,0,1,1")) + (rule "add_literals" (formula "19") (term "0,1,1")) + (rule "leq_literals" (formula "19") (term "1,1")) + (builtin "One Step Simplification" (formula "19")) + (rule "applyEq" (formula "19") (term "1,0,0") (ifseqformula "22")) + (rule "inEqSimp_invertInEq1" (formula "19") (term "1")) + (rule "mul_literals" (formula "19") (term "1,1")) + (rule "polySimp_mulLiterals" (formula "19") (term "0,1")) + (rule "polySimp_elimOne" (formula "19") (term "0,1")) + (rule "inEqSimp_contradInEq1" (formula "19") (term "1") (ifseqformula "23")) + (rule "qeq_literals" (formula "19") (term "0,1")) + (builtin "One Step Simplification" (formula "19")) + (rule "cnf_rightDist" (formula "18") (term "0,0")) + (rule "distr_forallAnd" (formula "18") (term "0")) + (builtin "One Step Simplification" (formula "18")) + (rule "distr_forallAnd" (formula "18")) + (rule "andLeft" (formula "18")) + (rule "commute_or_2" (formula "19") (term "0,0")) + (rule "commute_or_2" (formula "19") (term "0,0,0")) + (rule "cnf_rightDist" (formula "18") (term "0")) + (rule "distr_forallAnd" (formula "18")) + (rule "andLeft" (formula "18")) + (rule "commute_or_2" (formula "18") (term "0")) + (rule "commute_or" (formula "19") (term "0")) + (rule "commute_or" (formula "18") (term "0,0")) + (rule "commute_or_2" (formula "20") (term "0,0,0,0")) + (rule "shift_paren_or" (formula "20") (term "0,0,0,0,0")) + (rule "cut_direct" (formula "8") (term "1,0")) + (branch "CUT: fv_0 = Node::#next TRUE" + (builtin "One Step Simplification" (formula "9")) + (rule "true_left" (formula "9")) + (rule "seqGetAlphaCast" (formula "23") (term "0")) + (rule "castedGetAny" (formula "23") (term "0")) + (builtin "One Step Simplification" (formula "23")) + (rule "true_left" (formula "23")) + (rule "seqGetAlphaCast" (formula "24") (term "0")) + (rule "castedGetAny" (formula "24") (term "0")) + (builtin "One Step Simplification" (formula "24")) + (rule "true_left" (formula "24")) + (rule "onlyCreatedObjectsAreReferenced" (formula "23") (term "1") (ifseqformula "13")) + (rule "allLeft" (formula "22") (inst "t=i_0")) + (rule "inEqSimp_homoInEq1" (formula "22") (term "1")) + (rule "polySimp_addComm1" (formula "22") (term "0,1")) + (rule "applyEq" (formula "22") (term "1,0,0,0") (ifseqformula "1")) + (rule "eqSymm" (formula "22") (term "0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "22") (term "1")) + (rule "polySimp_mulComm0" (formula "22") (term "1,1")) + (rule "polySimp_rightDist" (formula "22") (term "1,1")) + (rule "polySimp_mulLiterals" (formula "22") (term "1,1,1")) + (rule "mul_literals" (formula "22") (term "0,1,1")) + (rule "polySimp_elimOne" (formula "22") (term "1,1,1")) + (rule "inEqSimp_contradInEq1" (formula "22") (term "1") (ifseqformula "3")) + (rule "inEqSimp_homoInEq1" (formula "22") (term "0,1")) + (rule "polySimp_mulComm0" (formula "22") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "22") (term "1,0,0,1")) + (rule "mul_literals" (formula "22") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "22") (term "0,0,1")) + (rule "polySimp_addComm1" (formula "22") (term "0,0,0,1")) + (rule "add_literals" (formula "22") (term "0,0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "22") (term "0,0,1")) + (rule "add_literals" (formula "22") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "22") (term "1,0,0,1")) + (rule "add_literals" (formula "22") (term "0,0,1")) + (rule "leq_literals" (formula "22") (term "0,1")) + (builtin "One Step Simplification" (formula "22")) + (rule "inEqSimp_contradInEq1" (formula "22") (term "1") (ifseqformula "2")) + (rule "qeq_literals" (formula "22") (term "0,1")) + (builtin "One Step Simplification" (formula "22")) + (rule "applyEq" (formula "34") (term "0,1") (ifseqformula "22")) + (rule "allLeft" (formula "23") (inst "t=nv_0")) + (rule "inEqSimp_homoInEq1" (formula "23") (term "1")) + (rule "polySimp_addComm1" (formula "23") (term "0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "23") (term "1")) + (rule "polySimp_mulComm0" (formula "23") (term "1,1")) + (rule "polySimp_rightDist" (formula "23") (term "1,1")) + (rule "mul_literals" (formula "23") (term "0,1,1")) + (rule "polySimp_mulLiterals" (formula "23") (term "1,1,1")) + (rule "polySimp_elimOne" (formula "23") (term "1,1,1")) + (rule "inEqSimp_contradInEq1" (formula "23") (term "1,0") (ifseqformula "5")) + (rule "qeq_literals" (formula "23") (term "0,1,0")) + (builtin "One Step Simplification" (formula "23")) + (rule "inEqSimp_contradInEq1" (formula "23") (term "1") (ifseqformula "4")) + (rule "inEqSimp_homoInEq1" (formula "23") (term "0,1")) + (rule "polySimp_mulComm0" (formula "23") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "23") (term "1,0,0,1")) + (rule "mul_literals" (formula "23") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "23") (term "0,0,1")) + (rule "polySimp_addComm1" (formula "23") (term "0,0,0,1")) + (rule "add_literals" (formula "23") (term "0,0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "23") (term "0,0,1")) + (rule "add_literals" (formula "23") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "23") (term "1,0,0,1")) + (rule "add_literals" (formula "23") (term "0,0,1")) + (rule "leq_literals" (formula "23") (term "0,1")) + (builtin "One Step Simplification" (formula "23")) + (rule "allLeft" (formula "18") (inst "t=add(Z(1(#)), nv_0)")) + (rule "inEqSimp_commuteGeq" (formula "18") (term "1")) + (rule "inEqSimp_homoInEq0" (formula "18") (term "1,0")) + (rule "polySimp_mulComm0" (formula "18") (term "1,0,1,0")) + (rule "polySimp_rightDist" (formula "18") (term "1,0,1,0")) + (rule "mul_literals" (formula "18") (term "0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "18") (term "0,1,0")) + (rule "add_literals" (formula "18") (term "0,0,1,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "18") (term "1,0")) + (rule "polySimp_mulLiterals" (formula "18") (term "0,1,0")) + (rule "polySimp_elimOne" (formula "18") (term "0,1,0")) + (rule "inEqSimp_contradInEq1" (formula "18") (term "1,0") (ifseqformula "5")) + (rule "qeq_literals" (formula "18") (term "0,1,0")) + (builtin "One Step Simplification" (formula "18")) + (rule "inEqSimp_contradInEq1" (formula "18") (term "1") (ifseqformula "4")) + (rule "inEqSimp_homoInEq1" (formula "18") (term "0,1")) + (rule "polySimp_mulComm0" (formula "18") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "18") (term "1,0,0,1")) + (rule "mul_literals" (formula "18") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "18") (term "0,0,1")) + (rule "polySimp_addComm1" (formula "18") (term "0,0,0,1")) + (rule "add_literals" (formula "18") (term "0,0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "18") (term "0,0,1")) + (rule "add_literals" (formula "18") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "18") (term "1,0,0,1")) + (rule "add_literals" (formula "18") (term "0,0,1")) + (rule "leq_literals" (formula "18") (term "0,1")) + (builtin "One Step Simplification" (formula "18")) + (rule "notLeft" (formula "18")) + (rule "referencedObjectIsCreatedRightEQ" (formula "32") (ifseqformula "23") (ifseqformula "31")) + (rule "close" (formula "32") (ifseqformula "13")) + ) + (branch "CUT: fv_0 = Node::#next FALSE" + (builtin "One Step Simplification" (formula "8")) + (rule "seqGetAlphaCast" (formula "23") (term "0")) + (rule "castedGetAny" (formula "23") (term "0")) + (builtin "One Step Simplification" (formula "23")) + (rule "true_left" (formula "23")) + (rule "seqGetAlphaCast" (formula "24") (term "0")) + (rule "castedGetAny" (formula "24") (term "0")) + (builtin "One Step Simplification" (formula "24")) + (rule "true_left" (formula "24")) + (rule "onlyCreatedObjectsAreReferenced" (formula "23") (term "1") (ifseqformula "13")) + (rule "allLeft" (formula "22") (inst "t=i_0")) + (rule "inEqSimp_homoInEq1" (formula "22") (term "1")) + (rule "polySimp_addComm1" (formula "22") (term "0,1")) + (rule "applyEq" (formula "22") (term "1,0,0,0") (ifseqformula "1")) + (rule "eqSymm" (formula "22") (term "0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "22") (term "1")) + (rule "polySimp_mulComm0" (formula "22") (term "1,1")) + (rule "polySimp_rightDist" (formula "22") (term "1,1")) + (rule "polySimp_mulLiterals" (formula "22") (term "1,1,1")) + (rule "mul_literals" (formula "22") (term "0,1,1")) + (rule "polySimp_elimOne" (formula "22") (term "1,1,1")) + (rule "inEqSimp_contradInEq1" (formula "22") (term "1,0") (ifseqformula "2")) + (rule "qeq_literals" (formula "22") (term "0,1,0")) + (builtin "One Step Simplification" (formula "22")) + (rule "inEqSimp_contradInEq1" (formula "22") (term "1") (ifseqformula "3")) + (rule "inEqSimp_homoInEq1" (formula "22") (term "0,1")) + (rule "polySimp_mulComm0" (formula "22") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "22") (term "1,0,0,1")) + (rule "mul_literals" (formula "22") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "22") (term "0,0,1")) + (rule "polySimp_addComm1" (formula "22") (term "0,0,0,1")) + (rule "add_literals" (formula "22") (term "0,0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "22") (term "0,0,1")) + (rule "add_literals" (formula "22") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "22") (term "1,0,0,1")) + (rule "add_literals" (formula "22") (term "0,0,1")) + (rule "leq_literals" (formula "22") (term "0,1")) + (builtin "One Step Simplification" (formula "22")) + (rule "applyEq" (formula "35") (term "0,1") (ifseqformula "22")) + (rule "allLeft" (formula "23") (inst "t=nv_0")) + (rule "inEqSimp_homoInEq1" (formula "23") (term "1")) + (rule "polySimp_addComm1" (formula "23") (term "0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "23") (term "1")) + (rule "polySimp_mulComm0" (formula "23") (term "1,1")) + (rule "polySimp_rightDist" (formula "23") (term "1,1")) + (rule "mul_literals" (formula "23") (term "0,1,1")) + (rule "polySimp_mulLiterals" (formula "23") (term "1,1,1")) + (rule "polySimp_elimOne" (formula "23") (term "1,1,1")) + (rule "inEqSimp_contradInEq1" (formula "23") (term "1,0") (ifseqformula "5")) + (rule "qeq_literals" (formula "23") (term "0,1,0")) + (builtin "One Step Simplification" (formula "23")) + (rule "inEqSimp_contradInEq1" (formula "23") (term "1") (ifseqformula "4")) + (rule "inEqSimp_homoInEq1" (formula "23") (term "0,1")) + (rule "polySimp_mulComm0" (formula "23") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "23") (term "1,0,0,1")) + (rule "mul_literals" (formula "23") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "23") (term "0,0,1")) + (rule "polySimp_addComm1" (formula "23") (term "0,0,0,1")) + (rule "add_literals" (formula "23") (term "0,0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "23") (term "0,0,1")) + (rule "add_literals" (formula "23") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "23") (term "1,0,0,1")) + (rule "add_literals" (formula "23") (term "0,0,1")) + (rule "leq_literals" (formula "23") (term "0,1")) + (builtin "One Step Simplification" (formula "23")) + (rule "allLeft" (formula "18") (inst "t=add(Z(1(#)), nv_0)")) + (rule "inEqSimp_commuteGeq" (formula "18") (term "1")) + (rule "inEqSimp_homoInEq0" (formula "18") (term "1,0")) + (rule "polySimp_mulComm0" (formula "18") (term "1,0,1,0")) + (rule "polySimp_rightDist" (formula "18") (term "1,0,1,0")) + (rule "mul_literals" (formula "18") (term "0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "18") (term "0,1,0")) + (rule "add_literals" (formula "18") (term "0,0,1,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "18") (term "1,0")) + (rule "polySimp_mulLiterals" (formula "18") (term "0,1,0")) + (rule "polySimp_elimOne" (formula "18") (term "0,1,0")) + (rule "inEqSimp_contradInEq1" (formula "18") (term "1,0") (ifseqformula "5")) + (rule "qeq_literals" (formula "18") (term "0,1,0")) + (builtin "One Step Simplification" (formula "18")) + (rule "inEqSimp_contradInEq1" (formula "18") (term "1") (ifseqformula "4")) + (rule "inEqSimp_homoInEq1" (formula "18") (term "0,1")) + (rule "polySimp_mulComm0" (formula "18") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "18") (term "1,0,0,1")) + (rule "mul_literals" (formula "18") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "18") (term "0,0,1")) + (rule "polySimp_addComm1" (formula "18") (term "0,0,0,1")) + (rule "add_literals" (formula "18") (term "0,0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "18") (term "0,0,1")) + (rule "add_literals" (formula "18") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "18") (term "1,0,0,1")) + (rule "add_literals" (formula "18") (term "0,0,1")) + (rule "leq_literals" (formula "18") (term "0,1")) + (builtin "One Step Simplification" (formula "18")) + (rule "notLeft" (formula "18")) + (rule "referencedObjectIsCreatedRightEQ" (formula "33") (ifseqformula "23") (ifseqformula "31")) + (rule "close" (formula "33") (ifseqformula "13")) + ) + ) + (branch "(Node)self.nodeseq[i_0] = n_2 FALSE" + (rule "applyEqReverse" (formula "30") (term "1,1") (ifseqformula "2")) + (rule "hideAuxiliaryEq" (formula "2")) + (rule "eqSymm" (formula "29") (term "1")) + (rule "replace_known_right" (formula "1") (term "0,0") (ifseqformula "24")) + (builtin "One Step Simplification" (formula "1")) + (rule "applyEqReverse" (formula "29") (term "1,1,0,0") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "all_pull_out1" (formula "17") (term "0,1,0")) + (rule "cut_direct" (formula "28") (term "0,0,0,0")) + (branch "CUT: (Node)self.nodeseq[i_0] = null TRUE" + (builtin "One Step Simplification" (formula "29")) + (rule "false_right" (formula "29")) + (rule "applyEq" (formula "24") (term "0") (ifseqformula "1")) + (rule "eqSymm" (formula "24")) + (rule "all_pull_out0" (formula "18") (term "1,0")) + (rule "shift_paren_and" (formula "18") (term "0,1,0")) + (rule "all_pull_out3" (formula "18") (term "0")) + (rule "cnf_rightDist" (formula "18") (term "0,0")) + (rule "distr_forallAnd" (formula "18") (term "0")) + (builtin "One Step Simplification" (formula "18")) + (rule "distr_forallAnd" (formula "18")) + (rule "andLeft" (formula "18")) + (rule "shift_paren_or" (formula "19") (term "0")) + (rule "commute_or_2" (formula "19") (term "0,0")) + (rule "inEqSimp_or_weaken3" (formula "19") (term "0")) + (rule "polySimp_addAssoc" (formula "19") (term "1,0,1,0")) + (rule "add_literals" (formula "19") (term "0,1,0,1,0")) + (rule "add_zero_left" (formula "19") (term "1,0,1,0")) + (builtin "One Step Simplification" (formula "19")) + (rule "cnf_rightDist" (formula "18") (term "0,0")) + (rule "distr_forallAnd" (formula "18") (term "0")) + (builtin "One Step Simplification" (formula "18")) + (rule "distr_forallAnd" (formula "18")) + (rule "andLeft" (formula "18")) + (rule "commute_or_2" (formula "19") (term "0")) + (builtin "One Step Simplification" (formula "19")) + (rule "inEqSimp_homoInEq0" (formula "19") (term "0,1")) + (rule "polySimp_mulComm0" (formula "19") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "19") (term "1,0,0,1")) + (rule "mul_literals" (formula "19") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "19") (term "0,0,1")) + (rule "add_literals" (formula "19") (term "0,0,0,1")) + (rule "add_zero_left" (formula "19") (term "0,0,1")) + (rule "inEqSimp_homoInEq1" (formula "19") (term "1,1")) + (rule "polySimp_mulComm0" (formula "19") (term "1,0,1,1")) + (rule "polySimp_rightDist" (formula "19") (term "1,0,1,1")) + (rule "mul_literals" (formula "19") (term "0,1,0,1,1")) + (rule "polySimp_addAssoc" (formula "19") (term "0,1,1")) + (rule "polySimp_addComm0" (formula "19") (term "0,0,1,1")) + (rule "polySimp_pullOutFactor1b" (formula "19") (term "0,1,1")) + (rule "add_literals" (formula "19") (term "1,1,0,1,1")) + (rule "times_zero_1" (formula "19") (term "1,0,1,1")) + (rule "add_literals" (formula "19") (term "0,1,1")) + (rule "leq_literals" (formula "19") (term "1,1")) + (builtin "One Step Simplification" (formula "19")) + (rule "applyEq" (formula "19") (term "1,0,0") (ifseqformula "22")) + (rule "inEqSimp_invertInEq1" (formula "19") (term "1")) + (rule "polySimp_mulLiterals" (formula "19") (term "0,1")) + (rule "mul_literals" (formula "19") (term "1,1")) + (rule "polySimp_elimOne" (formula "19") (term "0,1")) + (rule "inEqSimp_contradInEq1" (formula "19") (term "1") (ifseqformula "23")) + (rule "qeq_literals" (formula "19") (term "0,1")) + (builtin "One Step Simplification" (formula "19")) + (rule "cnf_rightDist" (formula "18") (term "0,0")) + (rule "distr_forallAnd" (formula "18") (term "0")) + (builtin "One Step Simplification" (formula "18")) + (rule "distr_forallAnd" (formula "18")) + (rule "andLeft" (formula "18")) + (rule "commute_or_2" (formula "19") (term "0,0")) + (rule "commute_or_2" (formula "19") (term "0,0,0")) + (rule "cnf_rightDist" (formula "18") (term "0")) + (rule "distr_forallAnd" (formula "18")) + (rule "andLeft" (formula "18")) + (rule "commute_or_2" (formula "18") (term "0")) + (rule "commute_or" (formula "19") (term "0")) + (rule "commute_or" (formula "18") (term "0,0")) + (rule "commute_or_2" (formula "20") (term "0,0,0,0")) + (rule "shift_paren_or" (formula "20") (term "0,0,0,0,0")) + (rule "cut_direct" (formula "8") (term "1,0")) + (branch "CUT: fv_0 = Node::#next TRUE" + (builtin "One Step Simplification" (formula "9")) + (rule "true_left" (formula "9")) + (rule "seqGetAlphaCast" (formula "23") (term "0")) + (rule "castedGetAny" (formula "23") (term "0")) + (builtin "One Step Simplification" (formula "23")) + (rule "true_left" (formula "23")) + (rule "seqGetAlphaCast" (formula "24") (term "0")) + (rule "castedGetAny" (formula "24") (term "0")) + (builtin "One Step Simplification" (formula "24")) + (rule "true_left" (formula "24")) + (rule "onlyCreatedObjectsAreReferenced" (formula "23") (term "1") (ifseqformula "13")) + (rule "allLeft" (formula "18") (inst "t=i_0")) + (rule "replace_known_left" (formula "18") (term "0,0,0") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "18")) + (rule "inEqSimp_commuteGeq" (formula "18") (term "1")) + (rule "inEqSimp_contradInEq1" (formula "18") (term "0") (ifseqformula "2")) + (rule "qeq_literals" (formula "18") (term "0,0")) + (builtin "One Step Simplification" (formula "18")) + (rule "inEqSimp_contradInEq0" (formula "3") (ifseqformula "18")) + (rule "andLeft" (formula "3")) + (rule "inEqSimp_homoInEq1" (formula "3")) + (rule "polySimp_pullOutFactor1b" (formula "3") (term "0")) + (rule "add_literals" (formula "3") (term "1,1,0")) + (rule "times_zero_1" (formula "3") (term "1,0")) + (rule "add_literals" (formula "3") (term "0")) + (rule "leq_literals" (formula "3")) + (rule "closeFalse" (formula "3")) + ) + (branch "CUT: fv_0 = Node::#next FALSE" + (builtin "One Step Simplification" (formula "8")) + (rule "seqGetAlphaCast" (formula "23") (term "0")) + (rule "castedGetAny" (formula "23") (term "0")) + (builtin "One Step Simplification" (formula "23")) + (rule "true_left" (formula "23")) + (rule "seqGetAlphaCast" (formula "24") (term "0")) + (rule "castedGetAny" (formula "24") (term "0")) + (builtin "One Step Simplification" (formula "24")) + (rule "true_left" (formula "24")) + (rule "onlyCreatedObjectsAreReferenced" (formula "23") (term "1") (ifseqformula "13")) + (rule "allLeft" (formula "18") (inst "t=i_0")) + (rule "replace_known_left" (formula "18") (term "0,0,0") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "18")) + (rule "inEqSimp_commuteGeq" (formula "18") (term "1")) + (rule "inEqSimp_contradInEq1" (formula "18") (term "1") (ifseqformula "3")) + (rule "inEqSimp_homoInEq1" (formula "18") (term "0,1")) + (rule "polySimp_pullOutFactor1b" (formula "18") (term "0,0,1")) + (rule "add_literals" (formula "18") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "18") (term "1,0,0,1")) + (rule "add_literals" (formula "18") (term "0,0,1")) + (rule "leq_literals" (formula "18") (term "0,1")) + (builtin "One Step Simplification" (formula "18")) + (rule "inEqSimp_contradInEq0" (formula "2") (ifseqformula "18")) + (rule "qeq_literals" (formula "2") (term "0")) + (builtin "One Step Simplification" (formula "2")) + (rule "closeFalse" (formula "2")) + ) + ) + (branch "CUT: (Node)self.nodeseq[i_0] = null FALSE" + (builtin "One Step Simplification" (formula "29")) + (rule "all_pull_out0" (formula "17") (term "1,0")) + (rule "shift_paren_and" (formula "17") (term "0,1,0")) + (rule "all_pull_out3" (formula "17") (term "0")) + (rule "cnf_rightDist" (formula "17") (term "0,0")) + (rule "distr_forallAnd" (formula "17") (term "0")) + (builtin "One Step Simplification" (formula "17")) + (rule "distr_forallAnd" (formula "17")) + (rule "andLeft" (formula "17")) + (rule "shift_paren_or" (formula "18") (term "0")) + (rule "commute_or_2" (formula "18") (term "0,0")) + (rule "inEqSimp_or_weaken3" (formula "18") (term "0")) + (rule "polySimp_addAssoc" (formula "18") (term "1,0,1,0")) + (rule "add_literals" (formula "18") (term "0,1,0,1,0")) + (rule "add_zero_left" (formula "18") (term "1,0,1,0")) + (builtin "One Step Simplification" (formula "18")) + (rule "cnf_rightDist" (formula "17") (term "0,0")) + (rule "distr_forallAnd" (formula "17") (term "0")) + (builtin "One Step Simplification" (formula "17")) + (rule "distr_forallAnd" (formula "17")) + (rule "andLeft" (formula "17")) + (rule "commute_or_2" (formula "18") (term "0")) + (builtin "One Step Simplification" (formula "18")) + (rule "inEqSimp_homoInEq0" (formula "18") (term "0,1")) + (rule "polySimp_mulComm0" (formula "18") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "18") (term "1,0,0,1")) + (rule "mul_literals" (formula "18") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "18") (term "0,0,1")) + (rule "add_literals" (formula "18") (term "0,0,0,1")) + (rule "add_zero_left" (formula "18") (term "0,0,1")) + (rule "inEqSimp_homoInEq1" (formula "18") (term "1,1")) + (rule "polySimp_mulComm0" (formula "18") (term "1,0,1,1")) + (rule "polySimp_rightDist" (formula "18") (term "1,0,1,1")) + (rule "mul_literals" (formula "18") (term "0,1,0,1,1")) + (rule "polySimp_addAssoc" (formula "18") (term "0,1,1")) + (rule "polySimp_addComm0" (formula "18") (term "0,0,1,1")) + (rule "polySimp_pullOutFactor1b" (formula "18") (term "0,1,1")) + (rule "add_literals" (formula "18") (term "1,1,0,1,1")) + (rule "times_zero_1" (formula "18") (term "1,0,1,1")) + (rule "add_literals" (formula "18") (term "0,1,1")) + (rule "leq_literals" (formula "18") (term "1,1")) + (builtin "One Step Simplification" (formula "18")) + (rule "applyEq" (formula "18") (term "1,0,0") (ifseqformula "21")) + (rule "inEqSimp_invertInEq1" (formula "18") (term "1")) + (rule "mul_literals" (formula "18") (term "1,1")) + (rule "polySimp_mulLiterals" (formula "18") (term "0,1")) + (rule "polySimp_elimOne" (formula "18") (term "0,1")) + (rule "inEqSimp_contradInEq1" (formula "18") (term "1") (ifseqformula "22")) + (rule "qeq_literals" (formula "18") (term "0,1")) + (builtin "One Step Simplification" (formula "18")) + (rule "cnf_rightDist" (formula "17") (term "0,0")) + (rule "distr_forallAnd" (formula "17") (term "0")) + (builtin "One Step Simplification" (formula "17")) + (rule "distr_forallAnd" (formula "17")) + (rule "andLeft" (formula "17")) + (rule "commute_or_2" (formula "18") (term "0,0")) + (rule "commute_or_2" (formula "18") (term "0,0,0")) + (rule "cnf_rightDist" (formula "17") (term "0")) + (rule "distr_forallAnd" (formula "17")) + (rule "andLeft" (formula "17")) + (rule "commute_or_2" (formula "17") (term "0")) + (rule "commute_or" (formula "18") (term "0")) + (rule "commute_or" (formula "17") (term "0,0")) + (rule "commute_or_2" (formula "19") (term "0,0,0,0")) + (rule "shift_paren_or" (formula "19") (term "0,0,0,0,0")) + (rule "cut_direct" (formula "7") (term "1,0")) + (branch "CUT: fv_0 = Node::#next TRUE" + (builtin "One Step Simplification" (formula "8")) + (rule "true_left" (formula "8")) + (rule "seqGetAlphaCast" (formula "22") (term "0")) + (rule "castedGetAny" (formula "22") (term "0")) + (builtin "One Step Simplification" (formula "22")) + (rule "true_left" (formula "22")) + (rule "seqGetAlphaCast" (formula "23") (term "0")) + (rule "castedGetAny" (formula "23") (term "0")) + (builtin "One Step Simplification" (formula "23")) + (rule "true_left" (formula "23")) + (rule "onlyCreatedObjectsAreReferenced" (formula "22") (term "1") (ifseqformula "12")) + (rule "allLeft" (formula "21") (inst "t=nv_0")) + (rule "inEqSimp_homoInEq1" (formula "21") (term "1")) + (rule "polySimp_addComm1" (formula "21") (term "0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "21") (term "1")) + (rule "polySimp_mulComm0" (formula "21") (term "1,1")) + (rule "polySimp_rightDist" (formula "21") (term "1,1")) + (rule "polySimp_mulLiterals" (formula "21") (term "1,1,1")) + (rule "mul_literals" (formula "21") (term "0,1,1")) + (rule "polySimp_elimOne" (formula "21") (term "1,1,1")) + (rule "inEqSimp_contradInEq1" (formula "21") (term "1,0") (ifseqformula "4")) + (rule "qeq_literals" (formula "21") (term "0,1,0")) + (builtin "One Step Simplification" (formula "21")) + (rule "inEqSimp_contradInEq1" (formula "21") (term "1") (ifseqformula "3")) + (rule "inEqSimp_homoInEq1" (formula "21") (term "0,1")) + (rule "polySimp_mulComm0" (formula "21") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "21") (term "1,0,0,1")) + (rule "mul_literals" (formula "21") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "21") (term "0,0,1")) + (rule "polySimp_addComm1" (formula "21") (term "0,0,0,1")) + (rule "add_literals" (formula "21") (term "0,0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "21") (term "0,0,1")) + (rule "add_literals" (formula "21") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "21") (term "1,0,0,1")) + (rule "add_literals" (formula "21") (term "0,0,1")) + (rule "leq_literals" (formula "21") (term "0,1")) + (builtin "One Step Simplification" (formula "21")) + (rule "allLeft" (formula "22") (inst "t=i_0")) + (rule "inEqSimp_homoInEq1" (formula "22") (term "1")) + (rule "polySimp_addComm1" (formula "22") (term "0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "22") (term "1")) + (rule "polySimp_mulComm0" (formula "22") (term "1,1")) + (rule "polySimp_rightDist" (formula "22") (term "1,1")) + (rule "mul_literals" (formula "22") (term "0,1,1")) + (rule "polySimp_mulLiterals" (formula "22") (term "1,1,1")) + (rule "polySimp_elimOne" (formula "22") (term "1,1,1")) + (rule "inEqSimp_contradInEq1" (formula "22") (term "1,0") (ifseqformula "1")) + (rule "qeq_literals" (formula "22") (term "0,1,0")) + (builtin "One Step Simplification" (formula "22")) + (rule "inEqSimp_contradInEq1" (formula "22") (term "1") (ifseqformula "2")) + (rule "inEqSimp_homoInEq1" (formula "22") (term "0,1")) + (rule "polySimp_mulComm0" (formula "22") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "22") (term "1,0,0,1")) + (rule "mul_literals" (formula "22") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "22") (term "0,0,1")) + (rule "polySimp_addComm1" (formula "22") (term "0,0,0,1")) + (rule "add_literals" (formula "22") (term "0,0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "22") (term "0,0,1")) + (rule "add_literals" (formula "22") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "22") (term "1,0,0,1")) + (rule "add_literals" (formula "22") (term "0,0,1")) + (rule "leq_literals" (formula "22") (term "0,1")) + (builtin "One Step Simplification" (formula "22")) + (rule "replace_known_left" (formula "36") (term "1") (ifseqformula "22")) + (builtin "One Step Simplification" (formula "36")) + (rule "allLeft" (formula "19") (inst "t=add(Z(1(#)), nv_0)")) + (rule "inEqSimp_commuteGeq" (formula "19") (term "1,0,0,0,0")) + (rule "inEqSimp_homoInEq0" (formula "19") (term "1,0,0,0,0,0")) + (rule "polySimp_mulComm0" (formula "19") (term "1,0,1,0,0,0,0,0")) + (rule "polySimp_rightDist" (formula "19") (term "1,0,1,0,0,0,0,0")) + (rule "mul_literals" (formula "19") (term "0,1,0,1,0,0,0,0,0")) + (rule "polySimp_addAssoc" (formula "19") (term "0,1,0,0,0,0,0")) + (rule "add_literals" (formula "19") (term "0,0,1,0,0,0,0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "19") (term "1,0,0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "19") (term "0,1,0,0,0,0,0")) + (rule "polySimp_elimOne" (formula "19") (term "0,1,0,0,0,0,0")) + (rule "inEqSimp_contradInEq1" (formula "19") (term "1,0,0,0,0,0") (ifseqformula "4")) + (rule "qeq_literals" (formula "19") (term "0,1,0,0,0,0,0")) + (builtin "One Step Simplification" (formula "19")) + (rule "inEqSimp_contradInEq1" (formula "19") (term "1,0,0,0,0") (ifseqformula "3")) + (rule "inEqSimp_homoInEq1" (formula "19") (term "0,1,0,0,0,0")) + (rule "polySimp_mulComm0" (formula "19") (term "1,0,0,1,0,0,0,0")) + (rule "polySimp_rightDist" (formula "19") (term "1,0,0,1,0,0,0,0")) + (rule "mul_literals" (formula "19") (term "0,1,0,0,1,0,0,0,0")) + (rule "polySimp_addAssoc" (formula "19") (term "0,0,1,0,0,0,0")) + (rule "polySimp_addComm1" (formula "19") (term "0,0,0,1,0,0,0,0")) + (rule "add_literals" (formula "19") (term "0,0,0,0,1,0,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "19") (term "0,0,1,0,0,0,0")) + (rule "add_literals" (formula "19") (term "1,1,0,0,1,0,0,0,0")) + (rule "times_zero_1" (formula "19") (term "1,0,0,1,0,0,0,0")) + (rule "add_zero_right" (formula "19") (term "0,0,1,0,0,0,0")) + (rule "leq_literals" (formula "19") (term "0,1,0,0,0,0")) + (builtin "One Step Simplification" (formula "19")) + (rule "commute_or_2" (formula "19") (term "0")) + (rule "allLeft" (formula "20") (inst "t=add(Z(1(#)), i_0)")) + (rule "inEqSimp_commuteGeq" (formula "20") (term "1,0,0,0,0")) + (rule "inEqSimp_homoInEq0" (formula "20") (term "1,0,0,0,0,0")) + (rule "polySimp_mulComm0" (formula "20") (term "1,0,1,0,0,0,0,0")) + (rule "polySimp_rightDist" (formula "20") (term "1,0,1,0,0,0,0,0")) + (rule "mul_literals" (formula "20") (term "0,1,0,1,0,0,0,0,0")) + (rule "polySimp_addAssoc" (formula "20") (term "0,1,0,0,0,0,0")) + (rule "add_literals" (formula "20") (term "0,0,1,0,0,0,0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "20") (term "1,0,0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "20") (term "0,1,0,0,0,0,0")) + (rule "polySimp_elimOne" (formula "20") (term "0,1,0,0,0,0,0")) + (rule "inEqSimp_contradInEq1" (formula "20") (term "1,0,0,0,0,0") (ifseqformula "1")) + (rule "qeq_literals" (formula "20") (term "0,1,0,0,0,0,0")) + (builtin "One Step Simplification" (formula "20")) + (rule "inEqSimp_contradInEq1" (formula "20") (term "1,0,0,0,0") (ifseqformula "2")) + (rule "inEqSimp_homoInEq1" (formula "20") (term "0,1,0,0,0,0")) + (rule "polySimp_mulComm0" (formula "20") (term "1,0,0,1,0,0,0,0")) + (rule "polySimp_rightDist" (formula "20") (term "1,0,0,1,0,0,0,0")) + (rule "mul_literals" (formula "20") (term "0,1,0,0,1,0,0,0,0")) + (rule "polySimp_addAssoc" (formula "20") (term "0,0,1,0,0,0,0")) + (rule "polySimp_addComm1" (formula "20") (term "0,0,0,1,0,0,0,0")) + (rule "add_literals" (formula "20") (term "0,0,0,0,1,0,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "20") (term "0,0,1,0,0,0,0")) + (rule "add_literals" (formula "20") (term "1,1,0,0,1,0,0,0,0")) + (rule "times_zero_1" (formula "20") (term "1,0,0,1,0,0,0,0")) + (rule "add_zero_right" (formula "20") (term "0,0,1,0,0,0,0")) + (rule "leq_literals" (formula "20") (term "0,1,0,0,0,0")) + (builtin "One Step Simplification" (formula "20")) + (rule "commute_or_2" (formula "20") (term "0")) + (rule "allLeft" (formula "21") (inst "t=i_0")) + (rule "inEqSimp_commuteGeq" (formula "21") (term "1,0,0,0,0")) + (rule "inEqSimp_contradInEq1" (formula "21") (term "1,0,0,0,0,0") (ifseqformula "1")) + (rule "qeq_literals" (formula "21") (term "0,1,0,0,0,0,0")) + (builtin "One Step Simplification" (formula "21")) + (rule "inEqSimp_contradInEq1" (formula "21") (term "1,0,0,0,0") (ifseqformula "2")) + (rule "inEqSimp_homoInEq1" (formula "21") (term "0,1,0,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "21") (term "0,0,1,0,0,0,0")) + (rule "add_literals" (formula "21") (term "1,1,0,0,1,0,0,0,0")) + (rule "times_zero_1" (formula "21") (term "1,0,0,1,0,0,0,0")) + (rule "add_zero_right" (formula "21") (term "0,0,1,0,0,0,0")) + (rule "leq_literals" (formula "21") (term "0,1,0,0,0,0")) + (builtin "One Step Simplification" (formula "21")) + (rule "commute_or_2" (formula "21") (term "0")) + (rule "allLeft" (formula "17") (inst "t=add(Z(1(#)), i_0)")) + (rule "inEqSimp_commuteGeq" (formula "17") (term "1")) + (rule "inEqSimp_homoInEq0" (formula "17") (term "1,0")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,1,0")) + (rule "polySimp_rightDist" (formula "17") (term "1,0,1,0")) + (rule "mul_literals" (formula "17") (term "0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "17") (term "0,1,0")) + (rule "add_literals" (formula "17") (term "0,0,1,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "17") (term "1,0")) + (rule "polySimp_mulLiterals" (formula "17") (term "0,1,0")) + (rule "polySimp_elimOne" (formula "17") (term "0,1,0")) + (rule "inEqSimp_contradInEq1" (formula "17") (term "1") (ifseqformula "2")) + (rule "inEqSimp_homoInEq1" (formula "17") (term "0,1")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "17") (term "1,0,0,1")) + (rule "mul_literals" (formula "17") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "17") (term "0,0,1")) + (rule "polySimp_addComm1" (formula "17") (term "0,0,0,1")) + (rule "add_literals" (formula "17") (term "0,0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "17") (term "0,0,1")) + (rule "add_literals" (formula "17") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "17") (term "1,0,0,1")) + (rule "add_literals" (formula "17") (term "0,0,1")) + (rule "leq_literals" (formula "17") (term "0,1")) + (builtin "One Step Simplification" (formula "17")) + (rule "inEqSimp_contradInEq1" (formula "17") (term "1") (ifseqformula "1")) + (rule "qeq_literals" (formula "17") (term "0,1")) + (builtin "One Step Simplification" (formula "17")) + (rule "notLeft" (formula "17")) + (rule "allLeft" (formula "17") (inst "t=add(Z(neglit(1(#))), + select<[int]>(heap, self, LinkedList::#size))")) + (rule "inEqSimp_homoInEq1" (formula "17") (term "1")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,1")) + (rule "polySimp_rightDist" (formula "17") (term "1,0,1")) + (rule "mul_literals" (formula "17") (term "0,1,0,1")) + (rule "polySimp_addAssoc" (formula "17") (term "0,1")) + (rule "polySimp_addComm0" (formula "17") (term "0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "17") (term "0,1")) + (rule "add_literals" (formula "17") (term "1,1,0,1")) + (rule "times_zero_1" (formula "17") (term "1,0,1")) + (rule "add_zero_right" (formula "17") (term "0,1")) + (rule "leq_literals" (formula "17") (term "1")) + (builtin "One Step Simplification" (formula "17")) + (rule "inEqSimp_homoInEq0" (formula "17") (term "1")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,1")) + (rule "polySimp_rightDist" (formula "17") (term "1,0,1")) + (rule "mul_literals" (formula "17") (term "0,1,0,1")) + (rule "polySimp_addAssoc" (formula "17") (term "0,1")) + (rule "add_literals" (formula "17") (term "0,0,1")) + (rule "add_zero_left" (formula "17") (term "0,1")) + (rule "applyEq" (formula "17") (term "0,0,0") (ifseqformula "30")) + (rule "inEqSimp_invertInEq1" (formula "17") (term "1")) + (rule "mul_literals" (formula "17") (term "1,1")) + (rule "polySimp_mulLiterals" (formula "17") (term "0,1")) + (rule "polySimp_elimOne" (formula "17") (term "0,1")) + (rule "inEqSimp_contradInEq1" (formula "17") (term "1") (ifseqformula "31")) + (rule "qeq_literals" (formula "17") (term "0,1")) + (builtin "One Step Simplification" (formula "17")) + (rule "notLeft" (formula "17")) + (rule "allLeft" (formula "17") (inst "t=i_0_0")) + (rule "inEqSimp_commuteGeq" (formula "17") (term "1")) + (rule "applyEq" (formula "17") (term "0,0,0,0") (ifseqformula "10")) + (rule "replace_known_right" (formula "17") (term "0,0,0") (ifseqformula "39")) + (builtin "One Step Simplification" (formula "17")) + (rule "true_left" (formula "17")) + (rule "allLeft" (formula "18") (inst "t=add(Z(1(#)), i_0)")) + (rule "eqSymm" (formula "18") (term "1")) + (rule "inEqSimp_commuteGeq" (formula "18") (term "1,0")) + (rule "inEqSimp_homoInEq0" (formula "18") (term "0,0")) + (rule "polySimp_mulComm0" (formula "18") (term "1,0,0,0")) + (rule "polySimp_rightDist" (formula "18") (term "1,0,0,0")) + (rule "mul_literals" (formula "18") (term "0,1,0,0,0")) + (rule "polySimp_addAssoc" (formula "18") (term "0,0,0")) + (rule "add_literals" (formula "18") (term "0,0,0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "18") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "18") (term "0,0,0")) + (rule "polySimp_elimOne" (formula "18") (term "0,0,0")) + (rule "inEqSimp_contradInEq1" (formula "18") (term "1,0") (ifseqformula "2")) + (rule "inEqSimp_homoInEq1" (formula "18") (term "0,1,0")) + (rule "polySimp_mulComm0" (formula "18") (term "1,0,0,1,0")) + (rule "polySimp_rightDist" (formula "18") (term "1,0,0,1,0")) + (rule "mul_literals" (formula "18") (term "0,1,0,0,1,0")) + (rule "polySimp_addAssoc" (formula "18") (term "0,0,1,0")) + (rule "polySimp_addComm1" (formula "18") (term "0,0,0,1,0")) + (rule "add_literals" (formula "18") (term "0,0,0,0,1,0")) + (rule "polySimp_pullOutFactor1b" (formula "18") (term "0,0,1,0")) + (rule "add_literals" (formula "18") (term "1,1,0,0,1,0")) + (rule "times_zero_1" (formula "18") (term "1,0,0,1,0")) + (rule "add_zero_right" (formula "18") (term "0,0,1,0")) + (rule "leq_literals" (formula "18") (term "0,1,0")) + (builtin "One Step Simplification" (formula "18")) + (rule "inEqSimp_contradInEq1" (formula "18") (term "0") (ifseqformula "1")) + (rule "qeq_literals" (formula "18") (term "0,0")) + (builtin "One Step Simplification" (formula "18")) + (rule "allLeft" (formula "17") (inst "t=add(Z(1(#)), nv_0)")) + (rule "inEqSimp_commuteGeq" (formula "17") (term "1")) + (rule "inEqSimp_homoInEq0" (formula "17") (term "1,0")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,1,0")) + (rule "polySimp_rightDist" (formula "17") (term "1,0,1,0")) + (rule "mul_literals" (formula "17") (term "0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "17") (term "0,1,0")) + (rule "add_literals" (formula "17") (term "0,0,1,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "17") (term "1,0")) + (rule "polySimp_mulLiterals" (formula "17") (term "0,1,0")) + (rule "polySimp_elimOne" (formula "17") (term "0,1,0")) + (rule "inEqSimp_contradInEq1" (formula "17") (term "1") (ifseqformula "3")) + (rule "inEqSimp_homoInEq1" (formula "17") (term "0,1")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "17") (term "1,0,0,1")) + (rule "mul_literals" (formula "17") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "17") (term "0,0,1")) + (rule "polySimp_addComm1" (formula "17") (term "0,0,0,1")) + (rule "add_literals" (formula "17") (term "0,0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "17") (term "0,0,1")) + (rule "add_literals" (formula "17") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "17") (term "1,0,0,1")) + (rule "add_literals" (formula "17") (term "0,0,1")) + (rule "leq_literals" (formula "17") (term "0,1")) + (builtin "One Step Simplification" (formula "17")) + (rule "inEqSimp_contradInEq1" (formula "17") (term "1") (ifseqformula "4")) + (rule "qeq_literals" (formula "17") (term "0,1")) + (builtin "One Step Simplification" (formula "17")) + (rule "notLeft" (formula "17")) + (rule "referencedObjectIsCreatedRightEQ" (formula "38") (ifseqformula "25") (ifseqformula "34")) + (rule "close" (formula "38") (ifseqformula "12")) + ) + (branch "CUT: fv_0 = Node::#next FALSE" + (builtin "One Step Simplification" (formula "7")) + (rule "seqGetAlphaCast" (formula "22") (term "0")) + (rule "castedGetAny" (formula "22") (term "0")) + (builtin "One Step Simplification" (formula "22")) + (rule "true_left" (formula "22")) + (rule "seqGetAlphaCast" (formula "23") (term "0")) + (rule "castedGetAny" (formula "23") (term "0")) + (builtin "One Step Simplification" (formula "23")) + (rule "true_left" (formula "23")) + (rule "onlyCreatedObjectsAreReferenced" (formula "22") (term "1") (ifseqformula "12")) + (rule "allLeft" (formula "21") (inst "t=i_0")) + (rule "inEqSimp_homoInEq1" (formula "21") (term "1")) + (rule "polySimp_addComm1" (formula "21") (term "0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "21") (term "1")) + (rule "polySimp_mulComm0" (formula "21") (term "1,1")) + (rule "polySimp_rightDist" (formula "21") (term "1,1")) + (rule "polySimp_mulLiterals" (formula "21") (term "1,1,1")) + (rule "mul_literals" (formula "21") (term "0,1,1")) + (rule "polySimp_elimOne" (formula "21") (term "1,1,1")) + (rule "inEqSimp_contradInEq1" (formula "21") (term "1") (ifseqformula "2")) + (rule "inEqSimp_homoInEq1" (formula "21") (term "0,1")) + (rule "polySimp_mulComm0" (formula "21") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "21") (term "1,0,0,1")) + (rule "mul_literals" (formula "21") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "21") (term "0,0,1")) + (rule "polySimp_addComm1" (formula "21") (term "0,0,0,1")) + (rule "add_literals" (formula "21") (term "0,0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "21") (term "0,0,1")) + (rule "add_literals" (formula "21") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "21") (term "1,0,0,1")) + (rule "add_literals" (formula "21") (term "0,0,1")) + (rule "leq_literals" (formula "21") (term "0,1")) + (builtin "One Step Simplification" (formula "21")) + (rule "inEqSimp_contradInEq1" (formula "21") (term "1") (ifseqformula "1")) + (rule "qeq_literals" (formula "21") (term "0,1")) + (builtin "One Step Simplification" (formula "21")) + (rule "replace_known_left" (formula "36") (term "1") (ifseqformula "21")) + (builtin "One Step Simplification" (formula "36")) + (rule "allLeft" (formula "22") (inst "t=nv_0")) + (rule "inEqSimp_homoInEq1" (formula "22") (term "1")) + (rule "polySimp_addComm1" (formula "22") (term "0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "22") (term "1")) + (rule "polySimp_mulComm0" (formula "22") (term "1,1")) + (rule "polySimp_rightDist" (formula "22") (term "1,1")) + (rule "polySimp_mulLiterals" (formula "22") (term "1,1,1")) + (rule "mul_literals" (formula "22") (term "0,1,1")) + (rule "polySimp_elimOne" (formula "22") (term "1,1,1")) + (rule "inEqSimp_contradInEq1" (formula "22") (term "1") (ifseqformula "3")) + (rule "inEqSimp_homoInEq1" (formula "22") (term "0,1")) + (rule "polySimp_mulComm0" (formula "22") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "22") (term "1,0,0,1")) + (rule "mul_literals" (formula "22") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "22") (term "0,0,1")) + (rule "polySimp_addComm1" (formula "22") (term "0,0,0,1")) + (rule "add_literals" (formula "22") (term "0,0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "22") (term "0,0,1")) + (rule "add_literals" (formula "22") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "22") (term "1,0,0,1")) + (rule "add_literals" (formula "22") (term "0,0,1")) + (rule "leq_literals" (formula "22") (term "0,1")) + (builtin "One Step Simplification" (formula "22")) + (rule "inEqSimp_contradInEq1" (formula "22") (term "1") (ifseqformula "4")) + (rule "qeq_literals" (formula "22") (term "0,1")) + (builtin "One Step Simplification" (formula "22")) + (rule "allLeft" (formula "17") (inst "t=add(Z(1(#)), nv_0)")) + (rule "inEqSimp_commuteGeq" (formula "17") (term "1")) + (rule "inEqSimp_homoInEq0" (formula "17") (term "1,0")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,1,0")) + (rule "polySimp_rightDist" (formula "17") (term "1,0,1,0")) + (rule "mul_literals" (formula "17") (term "0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "17") (term "0,1,0")) + (rule "add_literals" (formula "17") (term "0,0,1,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "17") (term "1,0")) + (rule "polySimp_mulLiterals" (formula "17") (term "0,1,0")) + (rule "polySimp_elimOne" (formula "17") (term "0,1,0")) + (rule "inEqSimp_contradInEq1" (formula "17") (term "1") (ifseqformula "3")) + (rule "inEqSimp_homoInEq1" (formula "17") (term "0,1")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "17") (term "1,0,0,1")) + (rule "mul_literals" (formula "17") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "17") (term "0,0,1")) + (rule "polySimp_addComm1" (formula "17") (term "0,0,0,1")) + (rule "add_literals" (formula "17") (term "0,0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "17") (term "0,0,1")) + (rule "add_literals" (formula "17") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "17") (term "1,0,0,1")) + (rule "add_literals" (formula "17") (term "0,0,1")) + (rule "leq_literals" (formula "17") (term "0,1")) + (builtin "One Step Simplification" (formula "17")) + (rule "inEqSimp_contradInEq1" (formula "17") (term "1") (ifseqformula "4")) + (rule "qeq_literals" (formula "17") (term "0,1")) + (builtin "One Step Simplification" (formula "17")) + (rule "notLeft" (formula "17")) + (rule "referencedObjectIsCreatedRightEQ" (formula "33") (ifseqformula "22") (ifseqformula "30")) + (rule "close" (formula "33") (ifseqformula "12")) + ) + ) + ) + ) + ) + ) + (branch "Use Case" + (builtin "One Step Simplification" (formula "14")) + (builtin "One Step Simplification" (formula "13")) + (builtin "One Step Simplification" (formula "4")) + (builtin "One Step Simplification" (formula "3") (ifInst "" (formula "2")) (ifInst "" (formula "2"))) + (rule "andLeft" (formula "4")) + (rule "eqSymm" (formula "17")) + (rule "eqSymm" (formula "16")) + (rule "eqSymm" (formula "18")) + (rule "eqSymm" (formula "6")) + (rule "eqSymm" (formula "19")) + (rule "eqSymm" (formula "15") (term "1,1,0")) + (rule "eqSymm" (formula "15") (term "0,1,0,1,0,1,0")) + (rule "eqSymm" (formula "15") (term "1,0,0,1,0")) + (rule "eqSymm" (formula "15") (term "1,1,0,1,0,1,0")) + (rule "eqSymm" (formula "14")) + (rule "polySimp_elimSub" (formula "17") (term "1,0,2,0")) + (rule "mul_literals" (formula "17") (term "1,1,0,2,0")) + (rule "polySimp_elimSub" (formula "15") (term "1,0,0,1,1,0")) + (rule "mul_literals" (formula "15") (term "1,1,0,0,1,1,0")) + (rule "polySimp_addComm0" (formula "15") (term "1,0,2,0,1,1,0")) + (rule "polySimp_addComm0" (formula "17") (term "1,0,2,0")) + (rule "polySimp_addComm0" (formula "15") (term "1,0,0,1,1,0")) + (rule "subsetSingletonLeft" (formula "12")) + (rule "subsetSingletonLeft" (formula "13")) + (rule "castedGetAny" (formula "1") (term "1,0,1,1,0")) + (rule "castedGetAny" (formula "15") (term "0,0,0,0,0,1,0")) + (rule "castedGetAny" (formula "16") (term "2,0")) + (rule "castedGetAny" (formula "6") (term "0")) + (rule "castedGetAny" (formula "15") (term "1,1,1,1,0")) + (rule "castedGetAny" (formula "15") (term "1,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "15") (term "0,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "15") (term "1,1,1,0,0,1,0")) + (rule "castedGetAny" (formula "15") (term "0,1,0,0,1,0")) + (rule "eqSymm" (formula "15") (term "1,0,0,1,0")) + (rule "castedGetAny" (formula "14") (term "0,1,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "1") (term "0,1,0")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0,0,1,0")) + (rule "castedGetAny" (formula "15") (term "2,0,1,1,0")) + (rule "inEqSimp_ltToLeq" (formula "15") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,0,1,0,0")) + (rule "inEqSimp_ltToLeq" (formula "15") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "castedGetAny" (formula "17") (term "2,0")) + (rule "inEqSimp_ltToLeq" (formula "5")) + (rule "polySimp_mulComm0" (formula "5") (term "1,0,0")) + (rule "polySimp_addComm1" (formula "5") (term "0")) + (rule "inEqSimp_ltToLeq" (formula "14") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "14") (term "1,0,0,1,0,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "15") (term "0,0,0,1,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "15") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "4")) + (rule "inEqSimp_commuteLeq" (formula "14") (term "0,0,0,1,0")) + (rule "applyEq" (formula "6") (term "1") (ifseqformula "2")) + (rule "inEqSimp_sepPosMonomial0" (formula "1") (term "0,1,0")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,1,0")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1,0,1,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "1") (term "1,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "15") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,1,0,0")) + (rule "polySimp_rightDist" (formula "15") (term "1,1,0,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,1,1,0,0")) + (rule "mul_literals" (formula "15") (term "0,1,1,0,0")) + (rule "polySimp_elimOne" (formula "15") (term "1,1,1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "15") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "15") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,1,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "15") (term "0,1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "15") (term "1,1,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "5")) + (rule "polySimp_mulLiterals" (formula "5") (term "0")) + (rule "polySimp_elimOne" (formula "5") (term "0")) + (rule "inEqSimp_sepPosMonomial0" (formula "14") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "14") (term "1,1,0,0,1,0")) + (rule "polySimp_rightDist" (formula "14") (term "1,1,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "14") (term "1,1,1,0,0,1,0")) + (rule "mul_literals" (formula "14") (term "0,1,1,0,0,1,0")) + (rule "polySimp_elimOne" (formula "14") (term "1,1,1,0,0,1,0")) + (rule "elementOfUnionEQ" (formula "12") (ifseqformula "14")) + (builtin "One Step Simplification" (formula "12")) + (rule "true_left" (formula "12")) + (rule "elementOfUnionEQ" (formula "12") (ifseqformula "13")) + (builtin "One Step Simplification" (formula "12")) + (rule "true_left" (formula "12")) + (rule "nnf_imp2or" (formula "1") (term "0")) + (rule "inEqSimp_notGeq" (formula "1") (term "0,0")) + (rule "times_zero_1" (formula "1") (term "1,0,0,0,0")) + (rule "add_zero_right" (formula "1") (term "0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1") (term "0,0")) + (rule "mul_literals" (formula "1") (term "1,0,0")) + (rule "nnf_imp2or" (formula "13") (term "0")) + (rule "nnf_imp2or" (formula "1") (term "1,0")) + (rule "inEqSimp_notLeq" (formula "1") (term "0,1,0")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0,0,1,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0,0,1,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0,0,1,0")) + (rule "add_literals" (formula "1") (term "0,0,0,0,1,0")) + (rule "add_zero_left" (formula "1") (term "0,0,0,1,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1") (term "0,1,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,0,1,0")) + (rule "polySimp_elimOne" (formula "1") (term "1,0,1,0")) + (rule "nnf_notAnd" (formula "13") (term "0,0")) + (rule "inEqSimp_notLeq" (formula "13") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "13") (term "1,0,0,1,0,0")) + (rule "mul_literals" (formula "13") (term "0,1,0,0,1,0,0")) + (rule "polySimp_addAssoc" (formula "13") (term "0,0,1,0,0")) + (rule "add_literals" (formula "13") (term "0,0,0,1,0,0")) + (rule "add_zero_left" (formula "13") (term "0,0,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "13") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "13") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "13") (term "1,1,0,0")) + (rule "inEqSimp_notGeq" (formula "13") (term "0,0,0")) + (rule "mul_literals" (formula "13") (term "1,0,0,0,0,0")) + (rule "add_zero_right" (formula "13") (term "0,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "13") (term "0,0,0")) + (rule "mul_literals" (formula "13") (term "1,0,0,0")) + (rule "nnf_imp2or" (formula "13") (term "0,1,0,1,0")) + (rule "nnf_notAnd" (formula "13") (term "0,0,1,0,1,0")) + (rule "inEqSimp_notLeq" (formula "13") (term "1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "13") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "13") (term "0,1,0,0,1,0,0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "13") (term "0,0,1,0,0,1,0,1,0")) + (rule "add_literals" (formula "13") (term "0,0,0,1,0,0,1,0,1,0")) + (rule "add_zero_left" (formula "13") (term "0,0,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "13") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "13") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "13") (term "1,1,0,0,1,0,1,0")) + (rule "inEqSimp_notGeq" (formula "13") (term "0,0,0,1,0,1,0")) + (rule "times_zero_1" (formula "13") (term "1,0,0,0,0,0,1,0,1,0")) + (rule "add_zero_right" (formula "13") (term "0,0,0,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "13") (term "0,0,0,1,0,1,0")) + (rule "mul_literals" (formula "13") (term "1,0,0,0,1,0,1,0")) + (rule "nnf_imp2or" (formula "13") (term "1,0,1,0,1,0")) + (rule "commute_or" (formula "3") (term "1")) + (rule "Class_invariant_axiom_for_LinkedList" (formula "21") (inst "i=i") (inst "j=j") (inst "i_0=i_0") (ifseqformula "20")) + (builtin "One Step Simplification" (formula "21")) + (rule "eqSymm" (formula "21") (term "1,0,0,1,0,1,0,0,0")) + (rule "eqSymm" (formula "21") (term "0,1")) + (rule "eqSymm" (formula "21") (term "1,0,0,0,0")) + (rule "eqSymm" (formula "21") (term "1,1")) + (rule "eqSymm" (formula "21") (term "1,0,0")) + (rule "eqSymm" (formula "21") (term "1,1,0,1,0,0,0")) + (rule "eqSymm" (formula "21") (term "0,1,0,1,0,1,0,1,0,0,0")) + (rule "eqSymm" (formula "21") (term "1,1,0,1,0,1,0,1,0,0,0")) + (rule "eqSymm" (formula "21") (term "1,0")) + (rule "polySimp_elimSub" (formula "21") (term "1,0,0,1,1,0,1,0,0,0")) + (rule "mul_literals" (formula "21") (term "1,1,0,0,1,1,0,1,0,0,0")) + (rule "polySimp_elimSub" (formula "21") (term "1,0,2,0,1,0")) + (rule "mul_literals" (formula "21") (term "1,1,0,2,0,1,0")) + (rule "polySimp_addComm0" (formula "21") (term "1,0,2,0,1,1,0,1,0,0,0")) + (rule "polySimp_addComm0" (formula "21") (term "1,0,0,1,1,0,1,0,0,0")) + (rule "polySimp_addComm0" (formula "21") (term "1,0,2,0,1,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,1,0,0,1,0,1,0,1,0,0,0")) + (rule "castedGetAny" (formula "21") (term "0,0,0,0,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,1,0,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,1,0,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,0,0,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,0,1,1,1,0,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,0,0,1,0,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,0,1")) + (rule "dismissNonSelectedField" (formula "21") (term "0,0,0,1")) + (rule "dismissNonSelectedField" (formula "21") (term "1,1,0,0,1,0,1,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,1,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,0,0,1,0,1,0,1,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,0,1,1")) + (rule "eqSymm" (formula "21") (term "1,1")) + (rule "castedGetAny" (formula "21") (term "2,0,1,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,0,0,1,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,1,0,0")) + (rule "castedGetAny" (formula "21") (term "1,1,1,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,0,2,0,1,1,0,1,0,0,0")) + (rule "castedGetAny" (formula "21") (term "1,0,1,0,1,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,0,0,0,1,0,1,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,0,2,0,1,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,1,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,0,0,1,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,1,0,0,1,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,1,0,2,0,1,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,1,0,0,1,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,0,0,0,0,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,1,0,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,1,0,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,0,0,0,0,0,0")) + (rule "castedGetAny" (formula "21") (term "1,1,1,0,0,1,0,1,0,0,0")) + (rule "castedGetAny" (formula "21") (term "0,1,0,0,1,0,1,0,0,0")) + (rule "eqSymm" (formula "21") (term "1,0,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,0,1")) + (rule "dismissNonSelectedField" (formula "21") (term "0,0,0,1")) + (rule "dismissNonSelectedField" (formula "21") (term "1,1,0,0,1,0,1,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,1,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,0,0,1,0,1,0,1,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,1,1")) + (rule "eqSymm" (formula "21") (term "1,1")) + (rule "dismissNonSelectedField" (formula "21") (term "0,2,0,1,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,0,0,1,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,1,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,1,1,0,1,0,0,0")) + (rule "castedGetAny" (formula "21") (term "2,0,1,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,1,0,1,0,1,0,1,0,1,0,0,0")) + (rule "castedGetAny" (formula "21") (term "0,0,1,0,1,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,0,2,0,1,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,1,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,0,0,1,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,1,0,0,1,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,1,0,2,0,1,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,1,0,0,1,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,0,0,0,0,0,1,0,1,0,0,0")) + (rule "subsetSingletonLeft" (formula "21") (term "1,0,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,1,0,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,0,0,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,1,1,0,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,1,0,1,0,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,0,1")) + (rule "dismissNonSelectedField" (formula "21") (term "0,0,0,1")) + (rule "dismissNonSelectedField" (formula "21") (term "1,1,0,0,1,0,1,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,1,0,0,0,0")) + (rule "castedGetAny" (formula "21") (term "0,1,0,1,0,1,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,1,1")) + (rule "dismissNonSelectedField" (formula "21") (term "0,0,1,1")) + (rule "dismissNonSelectedField" (formula "21") (term "0,2,0,1,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,0,0,1,0,0")) + (rule "inEqSimp_commuteLeq" (formula "21") (term "0,0,0,1,0,1,0,1,0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "21") (term "0,0,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,1,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,1,1,1,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,2,0,1,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,1,0,1,0,1,0,1,0,1,0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "21") (term "0,0,0,1,0,1,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,0,0,1,0,1,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,0,2,0,1,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,1,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,0,0,1,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,1,0,0,1,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,1,0,2,0,1,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,0,0,0,0,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "2,1,0,0,0,0,0")) + (rule "subsetSingletonLeft" (formula "21") (term "0,0,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,1,1,0,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,1,0,1,0,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,0,1,0,1,0,1,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,1,1")) + (rule "dismissNonSelectedField" (formula "21") (term "0,0,1,1")) + (rule "dismissNonSelectedField" (formula "21") (term "0,2,0,1,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,1,1,1,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,2,0,1,1,0,1,0,0,0")) + (rule "inEqSimp_ltToLeq" (formula "21") (term "1,0,0,1,0,1,0,1,0,0,0")) + (rule "polySimp_mulComm0" (formula "21") (term "1,0,0,1,0,0,1,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,1,0,1,0,1,0,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,0,0,1,0,1,0,1,0,1,0,0,0")) + (rule "inEqSimp_ltToLeq" (formula "21") (term "1,0,0,1,0,0,0")) + (rule "polySimp_mulComm0" (formula "21") (term "1,0,0,1,0,0,1,0,0,0")) + (rule "castedGetAny" (formula "21") (term "2,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "21") (term "1,0,0,1,0,1,0,0,0,0")) + (rule "polySimp_mulComm0" (formula "21") (term "1,0,0,1,0,0,1,0,1,0,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "0,1,1,1,1,0,1,0,0,0")) + (rule "dismissNonSelectedField" (formula "21") (term "1,1,1,0,1,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "21") (term "1,0,0,1,0,1,0,1,0,0,0")) + (rule "polySimp_mulComm0" (formula "21") (term "1,1,0,0,1,0,1,0,1,0,0,0")) + (rule "polySimp_rightDist" (formula "21") (term "1,1,0,0,1,0,1,0,1,0,0,0")) + (rule "polySimp_mulLiterals" (formula "21") (term "1,1,1,0,0,1,0,1,0,1,0,0,0")) + (rule "mul_literals" (formula "21") (term "0,1,1,0,0,1,0,1,0,1,0,0,0")) + (rule "polySimp_elimOne" (formula "21") (term "1,1,1,0,0,1,0,1,0,1,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "21") (term "1,0,0,1,0,0,0")) + (rule "polySimp_mulComm0" (formula "21") (term "1,1,0,0,1,0,0,0")) + (rule "polySimp_rightDist" (formula "21") (term "1,1,0,0,1,0,0,0")) + (rule "polySimp_mulLiterals" (formula "21") (term "1,1,1,0,0,1,0,0,0")) + (rule "mul_literals" (formula "21") (term "0,1,1,0,0,1,0,0,0")) + (rule "polySimp_elimOne" (formula "21") (term "1,1,1,0,0,1,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "21") (term "1,0,0,1,0,1,0,0,0,0")) + (rule "polySimp_mulComm0" (formula "21") (term "1,1,0,0,1,0,1,0,0,0,0")) + (rule "polySimp_rightDist" (formula "21") (term "1,1,0,0,1,0,1,0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "21") (term "1,1,1,0,0,1,0,1,0,0,0,0")) + (rule "mul_literals" (formula "21") (term "0,1,1,0,0,1,0,1,0,0,0,0")) + (rule "polySimp_elimOne" (formula "21") (term "1,1,1,0,0,1,0,1,0,0,0,0")) + (rule "pullOutSelect" (formula "21") (term "1,0,1") (inst "selectSK=LinkedList_size_0")) + (rule "applyEq" (formula "22") (term "1,1,2,0,1,0") (ifseqformula "1")) + (rule "applyEq" (formula "22") (term "0,0,0,1,0") (ifseqformula "1")) + (rule "applyEq" (formula "22") (term "1,1,1,0,0,1,0,1,0,0,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "22") (term "1,1,1,0,0,1,0,1,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "22") (term "1,1,1,0,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "22") (term "0,0,0,1,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "22") (term "1,1,0,0,1,1,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "22") (term "1,1,1") (ifseqformula "1")) + (rule "simplifySelectOfCreate" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "20"))) + (rule "applyEqReverse" (formula "22") (term "1,0,1") (ifseqformula "1")) + (rule "applyEqReverse" (formula "22") (term "1,1,2,0,1,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "22") (term "0,0,0,1,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "22") (term "1,1,1,0,0,1,0,1,0,0,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "22") (term "1,1,1,0,0,1,0,1,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "22") (term "1,1,1,0,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "22") (term "0,0,0,1,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "22") (term "1,1,0,0,1,1,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "22") (term "1,1,1") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "pullOutSelect" (formula "21") (term "0,0,0,1") (inst "selectSK=List_seq_0")) + (rule "applyEq" (formula "22") (term "0,1,1,0,0,1,0,1,0,0,0") (ifseqformula "1")) + (rule "simplifySelectOfCreate" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "20"))) + (rule "applyEqReverse" (formula "22") (term "0,0,0,1") (ifseqformula "1")) + (rule "applyEqReverse" (formula "22") (term "0,1,1,0,0,1,0,1,0,0,0") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "replace_known_left" (formula "21") (term "0,1") (ifseqformula "16")) + (builtin "One Step Simplification" (formula "21")) + (rule "pullOutSelect" (formula "21") (term "0,0,0,1,0,1,0,1,0,1,0,0,0") (inst "selectSK=LinkedList_nodeseq_0")) + (rule "applyEq" (formula "22") (term "0,1,0,1,0,0,1,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "22") (term "0,2,0,1,0") (ifseqformula "1")) + (rule "applyEq" (formula "22") (term "0,2,0,1,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "22") (term "0,0,1,0,1,0,1,0,0,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "22") (term "0,1,0,1,0,1,0,1,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "22") (term "0,2,0,1,1,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "22") (term "0,0,1") (ifseqformula "1")) + (rule "applyEq" (formula "22") (term "0,1,1,1,1,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "22") (term "0,0,0,0,0,0,1,0,1,0,0,0") (ifseqformula "1")) + (rule "simplifySelectOfCreate" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "20"))) + (rule "applyEqReverse" (formula "22") (term "0,0,0,1,0,1,0,1,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "22") (term "0,1,0,1,0,0,1,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "22") (term "0,2,0,1,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "22") (term "0,2,0,1,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "22") (term "0,0,1,0,1,0,1,0,0,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "22") (term "0,1,0,1,0,1,0,1,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "22") (term "0,2,0,1,1,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "22") (term "0,0,1") (ifseqformula "1")) + (rule "applyEqReverse" (formula "22") (term "0,1,1,1,1,0,1,0,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "22") (term "0,0,0,0,0,0,1,0,1,0,0,0") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "replace_known_left" (formula "21") (term "1") (ifseqformula "17")) + (builtin "One Step Simplification" (formula "21")) + (rule "applyEq" (formula "21") (term "0,1,0") (ifseqformula "14")) + (rule "eqSymm" (formula "21") (term "1,0")) + (rule "applyEq" (formula "21") (term "0,1,0,0,0") (ifseqformula "12")) + (rule "eqSymm" (formula "21") (term "1,0,0,0")) + (rule "applyEq" (formula "21") (term "0,1") (ifseqformula "15")) + (rule "eqSymm" (formula "21") (term "1")) + (rule "pullOutSelect" (formula "21") (term "2,0,0,0,0,0") (inst "selectSK=List_footprint_0")) + (rule "applyEq" (formula "22") (term "2,1,0,0,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "22") (term "0,1,0,0,0") (ifseqformula "1")) + (rule "simplifySelectOfCreate" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "20"))) + (rule "applyEqReverse" (formula "22") (term "2,0,0,0,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "22") (term "2,1,0,0,0,0") (ifseqformula "1")) + (rule "applyEqReverse" (formula "22") (term "0,1,0,0,0") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "22")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "elementOfUnionEQ" (formula "21") (term "0,0,0,0") (ifseqformula "12")) + (builtin "One Step Simplification" (formula "21")) + (rule "elementOfUnionEQ" (formula "21") (term "0,0,0") (ifseqformula "12")) + (builtin "One Step Simplification" (formula "21")) + (rule "pullOutSelect" (formula "21") (term "0,1,0") (inst "selectSK=LinkedList_first_0")) + (rule "simplifySelectOfCreate" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "20"))) + (rule "applyEqReverse" (formula "22") (term "0,1,0") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "22")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "pullOutSelect" (formula "21") (term "0,1") (inst "selectSK=LinkedList_last_0")) + (rule "simplifySelectOfCreate" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "20"))) + (rule "applyEqReverse" (formula "22") (term "0,1") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "22")) + (rule "allRight" (formula "22") (inst "sk=i_0")) + (rule "impRight" (formula "22")) + (rule "andLeft" (formula "1")) + (rule "hideAuxiliaryEq" (formula "3")) + (rule "polySimp_homoEq" (formula "23") (term "0,0,1")) + (rule "polySimp_addComm1" (formula "23") (term "0,0,0,1")) + (rule "inEqSimp_homoInEq0" (formula "2")) + (rule "polySimp_addComm1" (formula "2") (term "0")) + (rule "polySimp_sepPosMonomial" (formula "23") (term "0,0,1")) + (rule "polySimp_mulComm0" (formula "23") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "23") (term "1,0,0,1")) + (rule "mul_literals" (formula "23") (term "0,1,0,0,1")) + (rule "polySimp_mulLiterals" (formula "23") (term "1,1,0,0,1")) + (rule "polySimp_elimOne" (formula "23") (term "1,1,0,0,1")) + (rule "inEqSimp_sepPosMonomial1" (formula "2")) + (rule "polySimp_mulComm0" (formula "2") (term "1")) + (rule "polySimp_rightDist" (formula "2") (term "1")) + (rule "mul_literals" (formula "2") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,1")) + (rule "polySimp_elimOne" (formula "2") (term "1,1")) + (rule "pullOutSelect" (formula "23") (term "1,1") (inst "selectSK=Node_next_0")) + (rule "simplifySelectOfStore" (formula "1")) + (builtin "One Step Simplification" (formula "1")) + (rule "castDel" (formula "1") (term "1,0")) + (rule "eqSymm" (formula "1") (term "0,0")) + (rule "pullOutSelect" (formula "24") (term "0,1,0,0") (inst "selectSK=Node_data_0")) + (rule "simplifySelectOfStore" (formula "1")) + (builtin "One Step Simplification" (formula "1")) + (rule "castDel" (formula "1") (term "1,0")) + (rule "eqSymm" (formula "25") (term "1,0,0")) + (rule "eqSymm" (formula "1") (term "0,0")) + (rule "dismissNonSelectedField" (formula "1") (term "2,0")) + (rule "dismissNonSelectedField" (formula "1") (term "2,0")) + (rule "pullOutSelect" (formula "2") (term "2,0") (inst "selectSK=Node_next_1")) + (rule "simplifySelectOfCreate" (formula "2")) + (builtin "One Step Simplification" (formula "2") (ifInst "" (formula "24"))) + (rule "applyEqReverse" (formula "3") (term "2,0") (ifseqformula "2")) + (rule "hideAuxiliaryEq" (formula "2")) + (rule "pullOutSelect" (formula "1") (term "2,0") (inst "selectSK=Node_data_1")) + (rule "simplifySelectOfCreate" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "24"))) + (rule "applyEqReverse" (formula "2") (term "2,0") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "shift_paren_or" (formula "5") (term "0")) + (rule "nnf_imp2or" (formula "25") (term "0,1,0")) + (rule "shift_paren_or" (formula "7")) + (rule "nnf_imp2or" (formula "25") (term "1,0,1,0")) + (rule "nnf_notAnd" (formula "25") (term "0,0,1,0")) + (rule "inEqSimp_notLeq" (formula "25") (term "1,0,0,1,0")) + (rule "polySimp_rightDist" (formula "25") (term "1,0,0,1,0,0,1,0")) + (rule "mul_literals" (formula "25") (term "0,1,0,0,1,0,0,1,0")) + (rule "polySimp_addAssoc" (formula "25") (term "0,0,1,0,0,1,0")) + (rule "add_literals" (formula "25") (term "0,0,0,1,0,0,1,0")) + (rule "add_zero_left" (formula "25") (term "0,0,1,0,0,1,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "25") (term "1,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "25") (term "1,1,0,0,1,0")) + (rule "polySimp_elimOne" (formula "25") (term "1,1,0,0,1,0")) + (rule "inEqSimp_notGeq" (formula "25") (term "0,0,0,1,0")) + (rule "mul_literals" (formula "25") (term "1,0,0,0,0,0,1,0")) + (rule "add_literals" (formula "25") (term "0,0,0,0,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "25") (term "0,0,0,1,0")) + (rule "mul_literals" (formula "25") (term "1,0,0,0,1,0")) + (rule "ifthenelse_to_or_left" (formula "17") (term "1,1,0")) + (rule "eqSymm" (formula "17") (term "1,0,1,1,0")) + (rule "eqSymm" (formula "17") (term "1,1,1,1,0")) + (rule "shift_paren_or" (formula "17") (term "0,1,0,1,0")) + (rule "ifthenelse_split" (formula "18") (term "0")) + (branch "self.size = 0 TRUE" + (rule "eqSymm" (formula "19")) + (rule "replace_known_left" (formula "20") (term "0,0") (ifseqformula "18")) + (builtin "One Step Simplification" (formula "20")) + (rule "eqSymm" (formula "20")) + (rule "applyEq" (formula "17") (term "1,1,0,0") (ifseqformula "18")) + (rule "applyEq" (formula "9") (term "0") (ifseqformula "18")) + (rule "inEqSimp_homoInEq1" (formula "9")) + (rule "mul_literals" (formula "9") (term "1,0")) + (rule "add_zero_right" (formula "9") (term "0")) + (rule "applyEq" (formula "16") (term "1,1,1,0,0,1,0") (ifseqformula "18")) + (rule "add_literals" (formula "16") (term "1,1,0,0,1,0")) + (rule "applyEq" (formula "26") (term "0,0,0,1") (ifseqformula "18")) + (rule "polySimp_homoEq" (formula "26") (term "0,0,1")) + (rule "mul_literals" (formula "26") (term "1,0,0,0,1")) + (rule "add_zero_right" (formula "26") (term "0,0,0,1")) + (rule "applyEq" (formula "26") (term "1,1,0,0,1,0") (ifseqformula "18")) + (rule "applyEq" (formula "4") (term "0") (ifseqformula "18")) + (rule "inEqSimp_homoInEq1" (formula "4")) + (rule "times_zero_2" (formula "4") (term "1,0")) + (rule "add_zero_right" (formula "4") (term "0")) + (rule "applyEq" (formula "5") (term "1,1,0,0") (ifseqformula "18")) + (rule "applyEq" (formula "17") (term "1,1,0,0,0,1,0,1,0") (ifseqformula "18")) + (rule "applyEq" (formula "17") (term "1,1,0,0,0,1,1,0") (ifseqformula "18")) + (rule "add_literals" (formula "17") (term "1,0,0,0,1,1,0")) + (rule "applyEq" (formula "17") (term "1,1,0,1,1,1,0") (ifseqformula "18")) + (rule "add_literals" (formula "17") (term "1,0,1,1,1,0")) + (rule "applyEq" (formula "22") (term "1") (ifseqformula "18")) + (rule "applyEq" (formula "21") (term "1") (ifseqformula "18")) + (rule "polySimp_sepPosMonomial" (formula "26") (term "0,0,1")) + (rule "mul_literals" (formula "26") (term "1,0,0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "9")) + (rule "mul_literals" (formula "9") (term "1")) + (rule "inEqSimp_sepPosMonomial0" (formula "4")) + (rule "mul_literals" (formula "4") (term "1")) + (rule "inEqSimp_contradEq7" (formula "26") (term "0,0,1") (ifseqformula "3")) + (rule "add_zero_left" (formula "26") (term "0,0,0,0,1")) + (rule "mul_literals" (formula "26") (term "0,0,0,0,1")) + (rule "leq_literals" (formula "26") (term "0,0,0,1")) + (builtin "One Step Simplification" (formula "26")) + (rule "inEqSimp_contradInEq0" (formula "8") (ifseqformula "9")) + (rule "qeq_literals" (formula "8") (term "0")) + (builtin "One Step Simplification" (formula "8")) + (rule "closeFalse" (formula "8")) + ) + (branch "self.size = 0 FALSE" + (rule "replace_known_right" (formula "19") (term "0,0") (ifseqformula "22")) + (builtin "One Step Simplification" (formula "19")) + (rule "lenNonNegative" (formula "20") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "20")) + (rule "applyEq" (formula "20") (term "0") (ifseqformula "21")) + (rule "inEqSimp_strengthen1" (formula "20") (ifseqformula "23")) + (rule "add_literals" (formula "20") (term "1")) + (rule "inEqSimp_contradEq7" (formula "23") (ifseqformula "20")) + (rule "mul_literals" (formula "23") (term "1,0,0")) + (rule "add_literals" (formula "23") (term "0,0")) + (rule "leq_literals" (formula "23") (term "0")) + (builtin "One Step Simplification" (formula "23")) + (rule "false_right" (formula "23")) + (rule "lenNonNegative" (formula "22") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "22")) + (rule "applyEq" (formula "22") (term "0") (ifseqformula "23")) + (rule "inEqSimp_subsumption1" (formula "22") (ifseqformula "20")) + (rule "leq_literals" (formula "22") (term "0")) + (builtin "One Step Simplification" (formula "22")) + (rule "true_left" (formula "22")) + (rule "seqGetAlphaCast" (formula "10") (term "0")) + (rule "castedGetAny" (formula "10") (term "0")) + (builtin "One Step Simplification" (formula "10")) + (rule "true_left" (formula "10")) + (rule "commute_or_2" (formula "5") (term "0")) + (rule "commute_or" (formula "5") (term "0,0")) + (rule "commute_or" (formula "17") (term "0,1,1,0")) + (rule "commute_or" (formula "17") (term "1,1,1,0")) + (rule "commute_or_2" (formula "17") (term "0,0,1,0,1,0")) + (rule "commute_or" (formula "17") (term "0,0,0,1,0,1,0")) + (rule "ifthenelse_split" (formula "26") (term "0,1")) + (branch "self.size = 1 + i_0 TRUE" + (rule "eqSymm" (formula "27") (term "1")) + (rule "applyEq" (formula "21") (term "0") (ifseqformula "1")) + (rule "inEqSimp_homoInEq1" (formula "21")) + (rule "polySimp_mulComm0" (formula "21") (term "1,0")) + (rule "polySimp_rightDist" (formula "21") (term "1,0")) + (rule "mul_literals" (formula "21") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "21") (term "0")) + (rule "add_literals" (formula "21") (term "0,0")) + (rule "add_zero_left" (formula "21") (term "0")) + (rule "applyEq" (formula "6") (term "1,1,0") (ifseqformula "1")) + (rule "applyEq" (formula "17") (term "1,1,1,0,0,1,0") (ifseqformula "1")) + (rule "polySimp_addAssoc" (formula "17") (term "1,1,0,0,1,0")) + (rule "add_literals" (formula "17") (term "0,1,1,0,0,1,0")) + (rule "add_zero_left" (formula "17") (term "1,1,0,0,1,0")) + (rule "applyEq" (formula "18") (term "1,1,0,0,1,0,1,0") (ifseqformula "1")) + (rule "applyEq" (formula "20") (term "1,1,0") (ifseqformula "1")) + (rule "polySimp_addAssoc" (formula "20") (term "1,0")) + (rule "add_literals" (formula "20") (term "0,1,0")) + (rule "add_zero_left" (formula "20") (term "1,0")) + (rule "applyEq" (formula "18") (term "1,1,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "10") (term "0") (ifseqformula "1")) + (rule "inEqSimp_homoInEq1" (formula "10")) + (rule "polySimp_mulComm0" (formula "10") (term "1,0")) + (rule "polySimp_rightDist" (formula "10") (term "1,0")) + (rule "mul_literals" (formula "10") (term "0,1,0")) + (rule "polySimp_addComm1" (formula "10") (term "0")) + (rule "polySimp_addAssoc" (formula "10") (term "0,0")) + (rule "add_literals" (formula "10") (term "0,0,0")) + (rule "add_zero_left" (formula "10") (term "0,0")) + (rule "applyEq" (formula "27") (term "1,1,0,0,1,0") (ifseqformula "1")) + (rule "applyEq" (formula "5") (term "0") (ifseqformula "1")) + (rule "inEqSimp_homoInEq1" (formula "5")) + (rule "polySimp_pullOutFactor1" (formula "5") (term "0")) + (rule "add_literals" (formula "5") (term "1,0")) + (rule "times_zero_1" (formula "5") (term "0")) + (rule "leq_literals" (formula "5")) + (rule "true_left" (formula "5")) + (rule "applyEq" (formula "26") (term "1,0,0,1,0,1,0") (ifseqformula "19")) + (rule "applyEq" (formula "2") (term "1,2,0") (ifseqformula "19")) + (rule "applyEq" (formula "26") (term "0,0,0,0,0") (ifseqformula "19")) + (rule "applyEq" (formula "3") (term "1,2,0") (ifseqformula "19")) + (rule "applyEq" (formula "2") (term "0,0,0") (ifseqformula "19")) + (rule "applyEq" (formula "3") (term "0,0,0") (ifseqformula "19")) + (rule "applyEq" (formula "17") (term "1,1,0,1,0,1,1,0") (ifseqformula "1")) + (rule "polySimp_addAssoc" (formula "17") (term "1,0,1,0,1,1,0")) + (rule "add_literals" (formula "17") (term "0,1,0,1,0,1,1,0")) + (rule "add_zero_left" (formula "17") (term "1,0,1,0,1,1,0")) + (rule "applyEq" (formula "17") (term "1,1,1,1,1,1,0") (ifseqformula "1")) + (rule "polySimp_addAssoc" (formula "17") (term "1,1,1,1,1,0")) + (rule "add_literals" (formula "17") (term "0,1,1,1,1,1,0")) + (rule "add_zero_left" (formula "17") (term "1,1,1,1,1,0")) + (rule "applyEq" (formula "22") (term "1") (ifseqformula "1")) + (rule "applyEq" (formula "21") (term "1") (ifseqformula "1")) + (rule "inEqSimp_invertInEq0" (formula "20")) + (rule "mul_literals" (formula "20") (term "1")) + (rule "polySimp_mulLiterals" (formula "20") (term "0")) + (rule "polySimp_elimOne" (formula "20") (term "0")) + (rule "inEqSimp_sepPosMonomial0" (formula "9")) + (rule "polySimp_mulLiterals" (formula "9") (term "1")) + (rule "polySimp_elimOne" (formula "9") (term "1")) + (rule "inEqSimp_exactShadow3" (formula "8") (ifseqformula "9")) + (rule "mul_literals" (formula "8") (term "0,0")) + (rule "add_zero_left" (formula "8") (term "0")) + (rule "all_pull_out1" (formula "17") (term "0,1,0")) + (rule "seqGetAlphaCast" (formula "25") (term "0,1,0,0")) + (rule "castedGetAny" (formula "1") (term "0")) + (builtin "One Step Simplification" (formula "1")) + (rule "true_left" (formula "1")) + (rule "all_pull_out0" (formula "17") (term "1,0")) + (rule "shift_paren_and" (formula "17") (term "0,1,0")) + (rule "cut_direct" (formula "7") (term "1")) + (branch "CUT: fv_0 = java.lang.Object::#$initialized TRUE" + (builtin "One Step Simplification" (formula "8")) + (rule "true_left" (formula "8")) + (rule "all_pull_out3" (formula "17") (term "0")) + (rule "cnf_rightDist" (formula "17") (term "0,0")) + (rule "distr_forallAnd" (formula "17") (term "0")) + (builtin "One Step Simplification" (formula "17")) + (rule "distr_forallAnd" (formula "17")) + (rule "andLeft" (formula "17")) + (rule "shift_paren_or" (formula "18") (term "0")) + (rule "commute_or_2" (formula "18") (term "0,0")) + (rule "inEqSimp_or_weaken3" (formula "18") (term "0")) + (builtin "One Step Simplification" (formula "18")) + (rule "cnf_rightDist" (formula "17") (term "0,0")) + (rule "distr_forallAnd" (formula "17") (term "0")) + (builtin "One Step Simplification" (formula "17")) + (rule "distr_forallAnd" (formula "17")) + (rule "andLeft" (formula "17")) + (rule "commute_or_2" (formula "18") (term "0")) + (builtin "One Step Simplification" (formula "18")) + (rule "inEqSimp_homoInEq1" (formula "18") (term "1,1")) + (rule "polySimp_pullOutFactor1b" (formula "18") (term "0,1,1")) + (rule "add_literals" (formula "18") (term "1,1,0,1,1")) + (rule "times_zero_1" (formula "18") (term "1,0,1,1")) + (rule "add_literals" (formula "18") (term "0,1,1")) + (rule "leq_literals" (formula "18") (term "1,1")) + (builtin "One Step Simplification" (formula "18")) + (rule "applyEq" (formula "18") (term "1,0,0") (ifseqformula "21")) + (rule "inEqSimp_contradInEq1" (formula "18") (term "1") (ifseqformula "4")) + (rule "qeq_literals" (formula "18") (term "0,1")) + (builtin "One Step Simplification" (formula "18")) + (rule "applyEq" (formula "3") (term "2,0") (ifseqformula "18")) + (builtin "One Step Simplification" (formula "3")) + (rule "applyEqReverse" (formula "27") (term "0,1") (ifseqformula "3")) + (builtin "One Step Simplification" (formula "27")) + (rule "hideAuxiliaryEq" (formula "3")) + (rule "cnf_rightDist" (formula "16") (term "0,0")) + (rule "distr_forallAnd" (formula "16") (term "0")) + (builtin "One Step Simplification" (formula "16")) + (rule "distr_forallAnd" (formula "16")) + (rule "andLeft" (formula "16")) + (rule "commute_or_2" (formula "17") (term "0,0")) + (rule "commute_or_2" (formula "17") (term "0,0,0")) + (rule "cnf_rightDist" (formula "16") (term "0")) + (rule "distr_forallAnd" (formula "16")) + (rule "andLeft" (formula "16")) + (rule "commute_or" (formula "17") (term "0")) + (rule "commute_or_2" (formula "16") (term "0")) + (rule "commute_or" (formula "16") (term "0,0")) + (rule "commute_or_2" (formula "18") (term "0,0,0,0")) + (rule "shift_paren_or" (formula "18") (term "0,0,0,0,0")) + (rule "ifthenelse_split" (formula "2") (term "0")) + (branch "self.last = n_2 TRUE" + (rule "referencedObjectIsCreatedRightEQ" (formula "26") (ifseqformula "2") (ifseqformula "27")) + (rule "close" (formula "26") (ifseqformula "12")) + ) + (branch "self.last = n_2 FALSE" + (rule "applyEqReverse" (formula "29") (term "1,1,0") (ifseqformula "2")) + (rule "hideAuxiliaryEq" (formula "2")) + (rule "seqGetAlphaCast" (formula "20") (term "0")) + (rule "castedGetAny" (formula "20") (term "0")) + (builtin "One Step Simplification" (formula "20")) + (rule "true_left" (formula "20")) + (rule "onlyCreatedObjectsAreReferenced" (formula "20") (term "1") (ifseqformula "10")) + (rule "allLeft" (formula "3") (inst "t=i_0")) + (rule "inEqSimp_homoInEq1" (formula "3") (term "1")) + (rule "polySimp_pullOutFactor1b" (formula "3") (term "0,1")) + (rule "add_literals" (formula "3") (term "1,1,0,1")) + (rule "times_zero_1" (formula "3") (term "1,0,1")) + (rule "add_literals" (formula "3") (term "0,1")) + (rule "leq_literals" (formula "3") (term "1")) + (builtin "One Step Simplification" (formula "3")) + (rule "applyEq" (formula "3") (term "1,0,0") (ifseqformula "23")) + (rule "inEqSimp_contradInEq1" (formula "3") (term "1") (ifseqformula "2")) + (rule "qeq_literals" (formula "3") (term "0,1")) + (builtin "One Step Simplification" (formula "3")) + (rule "allLeft" (formula "4") (inst "t=i_0_0")) + (rule "applyEq" (formula "4") (term "1,0,0,0") (ifseqformula "10")) + (rule "replace_known_right" (formula "4") (term "0,0") (ifseqformula "28")) + (builtin "One Step Simplification" (formula "4")) + (rule "inEqSimp_contradInEq1" (formula "4") (term "0") (ifseqformula "8")) + (rule "qeq_literals" (formula "4") (term "0,0")) + (builtin "One Step Simplification" (formula "4")) + (rule "inEqSimp_contradInEq0" (formula "4") (ifseqformula "9")) + (rule "andLeft" (formula "4")) + (rule "inEqSimp_homoInEq1" (formula "4")) + (rule "polySimp_pullOutFactor1b" (formula "4") (term "0")) + (rule "add_literals" (formula "4") (term "1,1,0")) + (rule "times_zero_1" (formula "4") (term "1,0")) + (rule "add_literals" (formula "4") (term "0")) + (rule "leq_literals" (formula "4")) + (rule "closeFalse" (formula "4")) + ) + ) + (branch "CUT: fv_0 = java.lang.Object::#$initialized FALSE" + (builtin "One Step Simplification" (formula "7")) + (rule "all_pull_out3" (formula "17") (term "0")) + (rule "cnf_rightDist" (formula "17") (term "0,0")) + (rule "distr_forallAnd" (formula "17") (term "0")) + (builtin "One Step Simplification" (formula "17")) + (rule "distr_forallAnd" (formula "17")) + (rule "andLeft" (formula "17")) + (rule "shift_paren_or" (formula "18") (term "0")) + (rule "commute_or_2" (formula "18") (term "0,0")) + (rule "inEqSimp_or_weaken3" (formula "18") (term "0")) + (builtin "One Step Simplification" (formula "18")) + (rule "cnf_rightDist" (formula "17") (term "0,0")) + (rule "distr_forallAnd" (formula "17") (term "0")) + (builtin "One Step Simplification" (formula "17")) + (rule "distr_forallAnd" (formula "17")) + (rule "andLeft" (formula "17")) + (rule "commute_or_2" (formula "18") (term "0")) + (builtin "One Step Simplification" (formula "18")) + (rule "inEqSimp_homoInEq1" (formula "18") (term "1,1")) + (rule "polySimp_pullOutFactor1b" (formula "18") (term "0,1,1")) + (rule "add_literals" (formula "18") (term "1,1,0,1,1")) + (rule "times_zero_1" (formula "18") (term "1,0,1,1")) + (rule "add_literals" (formula "18") (term "0,1,1")) + (rule "leq_literals" (formula "18") (term "1,1")) + (builtin "One Step Simplification" (formula "18")) + (rule "applyEq" (formula "18") (term "1,0,0") (ifseqformula "21")) + (rule "inEqSimp_contradInEq1" (formula "18") (term "1") (ifseqformula "4")) + (rule "qeq_literals" (formula "18") (term "0,1")) + (builtin "One Step Simplification" (formula "18")) + (rule "applyEq" (formula "3") (term "2,0") (ifseqformula "18")) + (builtin "One Step Simplification" (formula "3")) + (rule "applyEqReverse" (formula "28") (term "0,1") (ifseqformula "3")) + (builtin "One Step Simplification" (formula "28")) + (rule "hideAuxiliaryEq" (formula "3")) + (rule "cnf_rightDist" (formula "16") (term "0,0")) + (rule "distr_forallAnd" (formula "16") (term "0")) + (builtin "One Step Simplification" (formula "16")) + (rule "distr_forallAnd" (formula "16")) + (rule "andLeft" (formula "16")) + (rule "commute_or_2" (formula "17") (term "0,0")) + (rule "commute_or_2" (formula "17") (term "0,0,0")) + (rule "cnf_rightDist" (formula "16") (term "0")) + (rule "distr_forallAnd" (formula "16")) + (rule "andLeft" (formula "16")) + (rule "commute_or_2" (formula "16") (term "0")) + (rule "commute_or" (formula "17") (term "0")) + (rule "commute_or" (formula "16") (term "0,0")) + (rule "commute_or_2" (formula "18") (term "0,0,0,0")) + (rule "shift_paren_or" (formula "18") (term "0,0,0,0,0")) + (rule "ifthenelse_split" (formula "2") (term "0")) + (branch "self.last = n_2 TRUE" + (rule "referencedObjectIsCreatedRightEQ" (formula "27") (ifseqformula "2") (ifseqformula "28")) + (rule "close" (formula "27") (ifseqformula "12")) + ) + (branch "self.last = n_2 FALSE" + (rule "applyEqReverse" (formula "30") (term "1,1,0") (ifseqformula "2")) + (rule "hideAuxiliaryEq" (formula "2")) + (rule "seqGetAlphaCast" (formula "20") (term "0")) + (rule "castedGetAny" (formula "20") (term "0")) + (builtin "One Step Simplification" (formula "20")) + (rule "true_left" (formula "20")) + (rule "onlyCreatedObjectsAreReferenced" (formula "20") (term "1") (ifseqformula "10")) + (rule "allLeft" (formula "3") (inst "t=i_0")) + (rule "inEqSimp_homoInEq1" (formula "3") (term "1")) + (rule "polySimp_pullOutFactor1b" (formula "3") (term "0,1")) + (rule "add_literals" (formula "3") (term "1,1,0,1")) + (rule "times_zero_1" (formula "3") (term "1,0,1")) + (rule "add_zero_right" (formula "3") (term "0,1")) + (rule "leq_literals" (formula "3") (term "1")) + (builtin "One Step Simplification" (formula "3")) + (rule "applyEq" (formula "3") (term "1,0,0") (ifseqformula "23")) + (rule "inEqSimp_contradInEq1" (formula "3") (term "1") (ifseqformula "2")) + (rule "qeq_literals" (formula "3") (term "0,1")) + (builtin "One Step Simplification" (formula "3")) + (rule "allLeft" (formula "4") (inst "t=i_0_0")) + (rule "applyEq" (formula "4") (term "1,0,0,0") (ifseqformula "10")) + (rule "replace_known_right" (formula "4") (term "0,0") (ifseqformula "29")) + (builtin "One Step Simplification" (formula "4")) + (rule "inEqSimp_contradInEq1" (formula "4") (term "0") (ifseqformula "8")) + (rule "qeq_literals" (formula "4") (term "0,0")) + (builtin "One Step Simplification" (formula "4")) + (rule "inEqSimp_contradInEq1" (formula "9") (ifseqformula "4")) + (rule "andLeft" (formula "9")) + (rule "inEqSimp_homoInEq1" (formula "9")) + (rule "polySimp_pullOutFactor1b" (formula "9") (term "0")) + (rule "add_literals" (formula "9") (term "1,1,0")) + (rule "times_zero_1" (formula "9") (term "1,0")) + (rule "add_zero_right" (formula "9") (term "0")) + (rule "leq_literals" (formula "9")) + (rule "closeFalse" (formula "9")) + ) + ) + ) + (branch "self.size = 1 + i_0 FALSE" + (rule "inEqSimp_strengthen1" (formula "4") (ifseqformula "26")) + (rule "polySimp_addAssoc" (formula "4") (term "1")) + (rule "add_literals" (formula "4") (term "0,1")) + (rule "inEqSimp_contradEq7" (formula "26") (ifseqformula "4")) + (rule "polySimp_rightDist" (formula "26") (term "1,0,0")) + (rule "mul_literals" (formula "26") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "26") (term "0,0")) + (rule "polySimp_addComm1" (formula "26") (term "0,0,0")) + (rule "add_literals" (formula "26") (term "0,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "26") (term "0,0")) + (rule "add_literals" (formula "26") (term "1,1,0,0")) + (rule "times_zero_1" (formula "26") (term "1,0,0")) + (rule "add_literals" (formula "26") (term "0,0")) + (rule "leq_literals" (formula "26") (term "0")) + (builtin "One Step Simplification" (formula "26")) + (rule "false_right" (formula "26")) + (rule "ifthenelse_split" (formula "2") (term "0")) + (branch "(Node)self.nodeseq[i_0] = n_2 TRUE" + (rule "applyEqReverse" (formula "27") (term "1,1") (ifseqformula "3")) + (rule "hideAuxiliaryEq" (formula "3")) + (rule "replace_known_left" (formula "1") (term "0,0") (ifseqformula "2")) + (builtin "One Step Simplification" (formula "1")) + (rule "applyEqReverse" (formula "26") (term "1,1,0,0") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "applyEq" (formula "25") (term "1,0,0,1,0,1,0") (ifseqformula "1")) + (rule "applyEq" (formula "25") (term "0,0,0,0,0") (ifseqformula "1")) + (rule "replace_known_right" (formula "25") (term "0,0,0,0") (ifseqformula "23")) + (builtin "One Step Simplification" (formula "25")) + (rule "all_pull_out1" (formula "16") (term "0,1,0")) + (rule "all_pull_out0" (formula "16") (term "1,0")) + (rule "shift_paren_and" (formula "16") (term "0,1,0")) + (rule "all_pull_out3" (formula "16") (term "0")) + (rule "cnf_rightDist" (formula "16") (term "0,0")) + (rule "distr_forallAnd" (formula "16") (term "0")) + (builtin "One Step Simplification" (formula "16")) + (rule "distr_forallAnd" (formula "16")) + (rule "andLeft" (formula "16")) + (rule "shift_paren_or" (formula "17") (term "0")) + (rule "commute_or_2" (formula "17") (term "0,0")) + (rule "inEqSimp_or_weaken3" (formula "17") (term "0")) + (rule "polySimp_addAssoc" (formula "17") (term "1,0,1,0")) + (rule "add_literals" (formula "17") (term "0,1,0,1,0")) + (rule "add_zero_left" (formula "17") (term "1,0,1,0")) + (builtin "One Step Simplification" (formula "17")) + (rule "cnf_rightDist" (formula "16") (term "0,0")) + (rule "distr_forallAnd" (formula "16") (term "0")) + (builtin "One Step Simplification" (formula "16")) + (rule "distr_forallAnd" (formula "16")) + (rule "andLeft" (formula "16")) + (rule "commute_or_2" (formula "17") (term "0")) + (builtin "One Step Simplification" (formula "17")) + (rule "inEqSimp_homoInEq1" (formula "17") (term "1,1")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,1,1")) + (rule "polySimp_rightDist" (formula "17") (term "1,0,1,1")) + (rule "mul_literals" (formula "17") (term "0,1,0,1,1")) + (rule "polySimp_addAssoc" (formula "17") (term "0,1,1")) + (rule "polySimp_addComm0" (formula "17") (term "0,0,1,1")) + (rule "polySimp_pullOutFactor1b" (formula "17") (term "0,1,1")) + (rule "add_literals" (formula "17") (term "1,1,0,1,1")) + (rule "times_zero_1" (formula "17") (term "1,0,1,1")) + (rule "add_literals" (formula "17") (term "0,1,1")) + (rule "leq_literals" (formula "17") (term "1,1")) + (builtin "One Step Simplification" (formula "17")) + (rule "inEqSimp_homoInEq0" (formula "17") (term "1")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,1")) + (rule "polySimp_rightDist" (formula "17") (term "1,0,1")) + (rule "mul_literals" (formula "17") (term "0,1,0,1")) + (rule "polySimp_addAssoc" (formula "17") (term "0,1")) + (rule "add_literals" (formula "17") (term "0,0,1")) + (rule "add_zero_left" (formula "17") (term "0,1")) + (rule "applyEq" (formula "17") (term "1,0,0") (ifseqformula "20")) + (rule "inEqSimp_invertInEq1" (formula "17") (term "1")) + (rule "polySimp_mulLiterals" (formula "17") (term "0,1")) + (rule "times_zero_2" (formula "17") (term "1,1")) + (rule "polySimp_elimOne" (formula "17") (term "0,1")) + (rule "inEqSimp_contradInEq1" (formula "17") (term "1") (ifseqformula "21")) + (rule "qeq_literals" (formula "17") (term "0,1")) + (builtin "One Step Simplification" (formula "17")) + (rule "cnf_rightDist" (formula "16") (term "0,0")) + (rule "distr_forallAnd" (formula "16") (term "0")) + (builtin "One Step Simplification" (formula "16")) + (rule "distr_forallAnd" (formula "16")) + (rule "andLeft" (formula "16")) + (rule "commute_or_2" (formula "17") (term "0,0")) + (rule "commute_or_2" (formula "17") (term "0,0,0")) + (rule "cnf_rightDist" (formula "16") (term "0")) + (rule "distr_forallAnd" (formula "16")) + (rule "andLeft" (formula "16")) + (rule "commute_or_2" (formula "16") (term "0")) + (rule "commute_or" (formula "17") (term "0")) + (rule "commute_or" (formula "16") (term "0,0")) + (rule "commute_or_2" (formula "18") (term "0,0,0,0")) + (rule "shift_paren_or" (formula "18") (term "0,0,0,0,0")) + (rule "allLeft" (formula "4") (inst "t=add(Z(1(#)), i_0)")) + (rule "inEqSimp_commuteGeq" (formula "4") (term "1")) + (rule "inEqSimp_homoInEq0" (formula "4") (term "1,0")) + (rule "polySimp_mulComm0" (formula "4") (term "1,0,1,0")) + (rule "polySimp_rightDist" (formula "4") (term "1,0,1,0")) + (rule "mul_literals" (formula "4") (term "0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "4") (term "0,1,0")) + (rule "add_literals" (formula "4") (term "0,0,1,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "4") (term "1,0")) + (rule "polySimp_mulLiterals" (formula "4") (term "0,1,0")) + (rule "polySimp_elimOne" (formula "4") (term "0,1,0")) + (rule "inEqSimp_contradInEq1" (formula "4") (term "1,0") (ifseqformula "2")) + (rule "qeq_literals" (formula "4") (term "0,1,0")) + (builtin "One Step Simplification" (formula "4")) + (rule "inEqSimp_contradInEq1" (formula "4") (term "1") (ifseqformula "3")) + (rule "inEqSimp_homoInEq1" (formula "4") (term "0,1")) + (rule "polySimp_mulComm0" (formula "4") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "4") (term "1,0,0,1")) + (rule "mul_literals" (formula "4") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "4") (term "0,0,1")) + (rule "polySimp_addComm1" (formula "4") (term "0,0,0,1")) + (rule "add_literals" (formula "4") (term "0,0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "4") (term "0,0,1")) + (rule "add_literals" (formula "4") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "4") (term "1,0,0,1")) + (rule "add_literals" (formula "4") (term "0,0,1")) + (rule "leq_literals" (formula "4") (term "0,1")) + (builtin "One Step Simplification" (formula "4")) + (rule "allLeft" (formula "5") (inst "t=add(Z(neglit(1(#))), + select<[int]>(heap, self, LinkedList::#size))")) + (rule "inEqSimp_homoInEq1" (formula "5") (term "1")) + (rule "polySimp_mulComm0" (formula "5") (term "1,0,1")) + (rule "polySimp_rightDist" (formula "5") (term "1,0,1")) + (rule "mul_literals" (formula "5") (term "0,1,0,1")) + (rule "polySimp_addAssoc" (formula "5") (term "0,1")) + (rule "polySimp_addComm0" (formula "5") (term "0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "5") (term "0,1")) + (rule "add_literals" (formula "5") (term "1,1,0,1")) + (rule "times_zero_1" (formula "5") (term "1,0,1")) + (rule "add_literals" (formula "5") (term "0,1")) + (rule "leq_literals" (formula "5") (term "1")) + (builtin "One Step Simplification" (formula "5")) + (rule "inEqSimp_homoInEq0" (formula "5") (term "1")) + (rule "polySimp_mulComm0" (formula "5") (term "1,0,1")) + (rule "polySimp_rightDist" (formula "5") (term "1,0,1")) + (rule "mul_literals" (formula "5") (term "0,1,0,1")) + (rule "polySimp_addAssoc" (formula "5") (term "0,1")) + (rule "add_literals" (formula "5") (term "0,0,1")) + (rule "add_zero_left" (formula "5") (term "0,1")) + (rule "applyEq" (formula "5") (term "1,0,0") (ifseqformula "24")) + (rule "inEqSimp_invertInEq1" (formula "5") (term "1")) + (rule "mul_literals" (formula "5") (term "1,1")) + (rule "polySimp_mulLiterals" (formula "5") (term "0,1")) + (rule "polySimp_elimOne" (formula "5") (term "0,1")) + (rule "inEqSimp_contradInEq1" (formula "5") (term "1") (ifseqformula "25")) + (rule "qeq_literals" (formula "5") (term "0,1")) + (builtin "One Step Simplification" (formula "5")) + (rule "allLeft" (formula "6") (inst "t=Z(0(#))")) + (rule "leq_literals" (formula "6") (term "1,0")) + (builtin "One Step Simplification" (formula "6")) + (rule "inEqSimp_commuteGeq" (formula "6") (term "1")) + (rule "applyEq" (formula "6") (term "1,0,0") (ifseqformula "24")) + (rule "inEqSimp_contradInEq1" (formula "6") (term "1") (ifseqformula "26")) + (rule "qeq_literals" (formula "6") (term "0,1")) + (builtin "One Step Simplification" (formula "6")) + (rule "allLeft" (formula "7") (inst "t=i_0_0")) + (rule "inEqSimp_commuteGeq" (formula "7") (term "1")) + (rule "applyEq" (formula "7") (term "1,0,0,0") (ifseqformula "13")) + (rule "replace_known_right" (formula "7") (term "0,0") (ifseqformula "30")) + (builtin "One Step Simplification" (formula "7")) + (rule "inEqSimp_contradInEq1" (formula "7") (term "0") (ifseqformula "11")) + (rule "qeq_literals" (formula "7") (term "0,0")) + (builtin "One Step Simplification" (formula "7")) + (rule "inEqSimp_contradInEq1" (formula "7") (ifseqformula "12")) + (rule "andLeft" (formula "7")) + (rule "inEqSimp_homoInEq1" (formula "7")) + (rule "polySimp_pullOutFactor1b" (formula "7") (term "0")) + (rule "add_literals" (formula "7") (term "1,1,0")) + (rule "times_zero_1" (formula "7") (term "1,0")) + (rule "add_literals" (formula "7") (term "0")) + (rule "leq_literals" (formula "7")) + (rule "closeFalse" (formula "7")) + ) + (branch "(Node)self.nodeseq[i_0] = n_2 FALSE" + (rule "applyEqReverse" (formula "27") (term "1,1") (ifseqformula "2")) + (rule "hideAuxiliaryEq" (formula "2")) + (rule "eqSymm" (formula "26") (term "1")) + (rule "replace_known_right" (formula "1") (term "0,0") (ifseqformula "22")) + (builtin "One Step Simplification" (formula "1")) + (rule "applyEqReverse" (formula "26") (term "1,1,0,0") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "all_pull_out1" (formula "15") (term "0,1,0")) + (rule "cut_direct" (formula "25") (term "0,0,0,0")) + (branch "CUT: (Node)self.nodeseq[i_0] = null TRUE" + (builtin "One Step Simplification" (formula "26")) + (rule "false_right" (formula "26")) + (rule "applyEq" (formula "22") (term "0") (ifseqformula "1")) + (rule "eqSymm" (formula "22")) + (rule "all_pull_out0" (formula "16") (term "1,0")) + (rule "shift_paren_and" (formula "16") (term "0,1,0")) + (rule "all_pull_out3" (formula "16") (term "0")) + (rule "cnf_rightDist" (formula "16") (term "0,0")) + (rule "distr_forallAnd" (formula "16") (term "0")) + (builtin "One Step Simplification" (formula "16")) + (rule "distr_forallAnd" (formula "16")) + (rule "andLeft" (formula "16")) + (rule "shift_paren_or" (formula "17") (term "0")) + (rule "commute_or_2" (formula "17") (term "0,0")) + (rule "inEqSimp_or_weaken3" (formula "17") (term "0")) + (rule "polySimp_addAssoc" (formula "17") (term "1,0,1,0")) + (rule "add_literals" (formula "17") (term "0,1,0,1,0")) + (rule "add_zero_left" (formula "17") (term "1,0,1,0")) + (builtin "One Step Simplification" (formula "17")) + (rule "cnf_rightDist" (formula "16") (term "0,0")) + (rule "distr_forallAnd" (formula "16") (term "0")) + (builtin "One Step Simplification" (formula "16")) + (rule "distr_forallAnd" (formula "16")) + (rule "andLeft" (formula "16")) + (rule "commute_or_2" (formula "17") (term "0")) + (builtin "One Step Simplification" (formula "17")) + (rule "inEqSimp_homoInEq0" (formula "17") (term "0,1")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "17") (term "1,0,0,1")) + (rule "mul_literals" (formula "17") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "17") (term "0,0,1")) + (rule "add_literals" (formula "17") (term "0,0,0,1")) + (rule "add_zero_left" (formula "17") (term "0,0,1")) + (rule "inEqSimp_homoInEq1" (formula "17") (term "1,1")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,1,1")) + (rule "polySimp_rightDist" (formula "17") (term "1,0,1,1")) + (rule "mul_literals" (formula "17") (term "0,1,0,1,1")) + (rule "polySimp_addAssoc" (formula "17") (term "0,1,1")) + (rule "polySimp_addComm0" (formula "17") (term "0,0,1,1")) + (rule "polySimp_pullOutFactor1b" (formula "17") (term "0,1,1")) + (rule "add_literals" (formula "17") (term "1,1,0,1,1")) + (rule "times_zero_1" (formula "17") (term "1,0,1,1")) + (rule "add_literals" (formula "17") (term "0,1,1")) + (rule "leq_literals" (formula "17") (term "1,1")) + (builtin "One Step Simplification" (formula "17")) + (rule "applyEq" (formula "17") (term "1,0,0") (ifseqformula "20")) + (rule "inEqSimp_invertInEq1" (formula "17") (term "1")) + (rule "polySimp_mulLiterals" (formula "17") (term "0,1")) + (rule "times_zero_2" (formula "17") (term "1,1")) + (rule "polySimp_elimOne" (formula "17") (term "0,1")) + (rule "inEqSimp_contradInEq1" (formula "17") (term "1") (ifseqformula "21")) + (rule "qeq_literals" (formula "17") (term "0,1")) + (builtin "One Step Simplification" (formula "17")) + (rule "cnf_rightDist" (formula "16") (term "0,0")) + (rule "distr_forallAnd" (formula "16") (term "0")) + (builtin "One Step Simplification" (formula "16")) + (rule "distr_forallAnd" (formula "16")) + (rule "andLeft" (formula "16")) + (rule "commute_or_2" (formula "17") (term "0,0")) + (rule "commute_or_2" (formula "17") (term "0,0,0")) + (rule "cnf_rightDist" (formula "16") (term "0")) + (rule "distr_forallAnd" (formula "16")) + (rule "andLeft" (formula "16")) + (rule "commute_or_2" (formula "16") (term "0")) + (rule "commute_or" (formula "17") (term "0")) + (rule "commute_or" (formula "16") (term "0,0")) + (rule "commute_or_2" (formula "18") (term "0,0,0,0")) + (rule "shift_paren_or" (formula "18") (term "0,0,0,0,0")) + (rule "allLeft" (formula "4") (inst "t=i_0")) + (rule "inEqSimp_commuteGeq" (formula "4") (term "1")) + (rule "applyEq" (formula "4") (term "1,0,0,0") (ifseqformula "1")) + (rule "inEqSimp_contradInEq1" (formula "4") (term "1,0") (ifseqformula "2")) + (rule "qeq_literals" (formula "4") (term "0,1,0")) + (builtin "One Step Simplification" (formula "4")) + (rule "inEqSimp_contradInEq1" (formula "4") (term "1") (ifseqformula "3")) + (rule "inEqSimp_homoInEq1" (formula "4") (term "0,1")) + (rule "polySimp_pullOutFactor1b" (formula "4") (term "0,0,1")) + (rule "add_literals" (formula "4") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "4") (term "1,0,0,1")) + (rule "add_literals" (formula "4") (term "0,0,1")) + (rule "leq_literals" (formula "4") (term "0,1")) + (builtin "One Step Simplification" (formula "4")) + (rule "allLeft" (formula "5") (inst "t=add(Z(neglit(1(#))), + select<[int]>(heap, self, LinkedList::#size))")) + (rule "inEqSimp_homoInEq0" (formula "5") (term "1,0")) + (rule "polySimp_mulComm0" (formula "5") (term "1,0,1,0")) + (rule "polySimp_rightDist" (formula "5") (term "1,0,1,0")) + (rule "mul_literals" (formula "5") (term "0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "5") (term "0,1,0")) + (rule "add_literals" (formula "5") (term "0,0,1,0")) + (rule "add_zero_left" (formula "5") (term "0,1,0")) + (rule "inEqSimp_homoInEq1" (formula "5") (term "1")) + (rule "polySimp_mulComm0" (formula "5") (term "1,0,1")) + (rule "polySimp_rightDist" (formula "5") (term "1,0,1")) + (rule "mul_literals" (formula "5") (term "0,1,0,1")) + (rule "polySimp_addAssoc" (formula "5") (term "0,1")) + (rule "polySimp_addComm0" (formula "5") (term "0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "5") (term "0,1")) + (rule "add_literals" (formula "5") (term "1,1,0,1")) + (rule "times_zero_1" (formula "5") (term "1,0,1")) + (rule "add_literals" (formula "5") (term "0,1")) + (rule "leq_literals" (formula "5") (term "1")) + (builtin "One Step Simplification" (formula "5")) + (rule "applyEq" (formula "5") (term "1,0,0") (ifseqformula "24")) + (rule "inEqSimp_invertInEq1" (formula "5") (term "1")) + (rule "polySimp_mulLiterals" (formula "5") (term "0,1")) + (rule "times_zero_2" (formula "5") (term "1,1")) + (rule "polySimp_elimOne" (formula "5") (term "0,1")) + (rule "inEqSimp_contradInEq1" (formula "5") (term "1") (ifseqformula "25")) + (rule "qeq_literals" (formula "5") (term "0,1")) + (builtin "One Step Simplification" (formula "5")) + (rule "allLeft" (formula "6") (inst "t=Z(0(#))")) + (rule "leq_literals" (formula "6") (term "1,0")) + (builtin "One Step Simplification" (formula "6")) + (rule "inEqSimp_commuteGeq" (formula "6") (term "1")) + (rule "applyEq" (formula "6") (term "1,0,0") (ifseqformula "24")) + (rule "inEqSimp_contradInEq1" (formula "6") (term "1") (ifseqformula "26")) + (rule "qeq_literals" (formula "6") (term "0,1")) + (builtin "One Step Simplification" (formula "6")) + (rule "allLeft" (formula "7") (inst "t=i_0_0")) + (rule "inEqSimp_commuteGeq" (formula "7") (term "1")) + (rule "applyEq" (formula "7") (term "1,0,0,0") (ifseqformula "13")) + (rule "replace_known_right" (formula "7") (term "0,0") (ifseqformula "30")) + (builtin "One Step Simplification" (formula "7")) + (rule "inEqSimp_contradInEq1" (formula "7") (term "1") (ifseqformula "12")) + (rule "inEqSimp_homoInEq1" (formula "7") (term "0,1")) + (rule "polySimp_pullOutFactor1b" (formula "7") (term "0,0,1")) + (rule "add_literals" (formula "7") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "7") (term "1,0,0,1")) + (rule "add_literals" (formula "7") (term "0,0,1")) + (rule "leq_literals" (formula "7") (term "0,1")) + (builtin "One Step Simplification" (formula "7")) + (rule "inEqSimp_contradInEq0" (formula "11") (ifseqformula "7")) + (rule "qeq_literals" (formula "11") (term "0")) + (builtin "One Step Simplification" (formula "11")) + (rule "closeFalse" (formula "11")) + ) + (branch "CUT: (Node)self.nodeseq[i_0] = null FALSE" + (builtin "One Step Simplification" (formula "26")) + (rule "all_pull_out0" (formula "15") (term "1,0")) + (rule "shift_paren_and" (formula "15") (term "0,1,0")) + (rule "all_pull_out3" (formula "15") (term "0")) + (rule "cnf_rightDist" (formula "15") (term "0,0")) + (rule "distr_forallAnd" (formula "15") (term "0")) + (builtin "One Step Simplification" (formula "15")) + (rule "distr_forallAnd" (formula "15")) + (rule "andLeft" (formula "15")) + (rule "shift_paren_or" (formula "16") (term "0")) + (rule "commute_or_2" (formula "16") (term "0,0")) + (rule "inEqSimp_or_weaken3" (formula "16") (term "0")) + (rule "polySimp_addAssoc" (formula "16") (term "1,0,1,0")) + (rule "add_literals" (formula "16") (term "0,1,0,1,0")) + (rule "add_zero_left" (formula "16") (term "1,0,1,0")) + (builtin "One Step Simplification" (formula "16")) + (rule "cnf_rightDist" (formula "15") (term "0,0")) + (rule "distr_forallAnd" (formula "15") (term "0")) + (builtin "One Step Simplification" (formula "15")) + (rule "distr_forallAnd" (formula "15")) + (rule "andLeft" (formula "15")) + (rule "commute_or_2" (formula "16") (term "0")) + (builtin "One Step Simplification" (formula "16")) + (rule "inEqSimp_homoInEq1" (formula "16") (term "1,1")) + (rule "polySimp_mulComm0" (formula "16") (term "1,0,1,1")) + (rule "polySimp_rightDist" (formula "16") (term "1,0,1,1")) + (rule "mul_literals" (formula "16") (term "0,1,0,1,1")) + (rule "polySimp_addAssoc" (formula "16") (term "0,1,1")) + (rule "polySimp_addComm0" (formula "16") (term "0,0,1,1")) + (rule "polySimp_pullOutFactor1b" (formula "16") (term "0,1,1")) + (rule "add_literals" (formula "16") (term "1,1,0,1,1")) + (rule "times_zero_1" (formula "16") (term "1,0,1,1")) + (rule "add_literals" (formula "16") (term "0,1,1")) + (rule "leq_literals" (formula "16") (term "1,1")) + (builtin "One Step Simplification" (formula "16")) + (rule "inEqSimp_homoInEq0" (formula "16") (term "1")) + (rule "polySimp_mulComm0" (formula "16") (term "1,0,1")) + (rule "polySimp_rightDist" (formula "16") (term "1,0,1")) + (rule "mul_literals" (formula "16") (term "0,1,0,1")) + (rule "polySimp_addAssoc" (formula "16") (term "0,1")) + (rule "add_literals" (formula "16") (term "0,0,1")) + (rule "add_zero_left" (formula "16") (term "0,1")) + (rule "applyEq" (formula "16") (term "1,0,0") (ifseqformula "19")) + (rule "inEqSimp_invertInEq1" (formula "16") (term "1")) + (rule "polySimp_mulLiterals" (formula "16") (term "0,1")) + (rule "mul_literals" (formula "16") (term "1,1")) + (rule "polySimp_elimOne" (formula "16") (term "0,1")) + (rule "inEqSimp_contradInEq1" (formula "16") (term "1") (ifseqformula "20")) + (rule "qeq_literals" (formula "16") (term "0,1")) + (builtin "One Step Simplification" (formula "16")) + (rule "cnf_rightDist" (formula "15") (term "0,0")) + (rule "distr_forallAnd" (formula "15") (term "0")) + (builtin "One Step Simplification" (formula "15")) + (rule "distr_forallAnd" (formula "15")) + (rule "andLeft" (formula "15")) + (rule "commute_or_2" (formula "16") (term "0,0")) + (rule "commute_or_2" (formula "16") (term "0,0,0")) + (rule "cnf_rightDist" (formula "15") (term "0")) + (rule "distr_forallAnd" (formula "15")) + (rule "andLeft" (formula "15")) + (rule "commute_or_2" (formula "15") (term "0")) + (rule "commute_or" (formula "16") (term "0")) + (rule "commute_or" (formula "15") (term "0,0")) + (rule "commute_or_2" (formula "17") (term "0,0,0,0")) + (rule "shift_paren_or" (formula "17") (term "0,0,0,0,0")) + (rule "allLeft" (formula "3") (inst "t=i_0")) + (rule "inEqSimp_commuteGeq" (formula "3") (term "1")) + (rule "inEqSimp_contradInEq1" (formula "3") (term "1") (ifseqformula "2")) + (rule "inEqSimp_homoInEq1" (formula "3") (term "0,1")) + (rule "polySimp_pullOutFactor1b" (formula "3") (term "0,0,1")) + (rule "add_literals" (formula "3") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "3") (term "1,0,0,1")) + (rule "add_literals" (formula "3") (term "0,0,1")) + (rule "leq_literals" (formula "3") (term "0,1")) + (builtin "One Step Simplification" (formula "3")) + (rule "inEqSimp_contradInEq1" (formula "3") (term "1") (ifseqformula "1")) + (rule "qeq_literals" (formula "3") (term "0,1")) + (builtin "One Step Simplification" (formula "3")) + (rule "allLeft" (formula "4") (inst "t=add(Z(1(#)), i_0)")) + (rule "inEqSimp_commuteGeq" (formula "4") (term "1")) + (rule "inEqSimp_homoInEq0" (formula "4") (term "1,0")) + (rule "polySimp_mulComm0" (formula "4") (term "1,0,1,0")) + (rule "polySimp_rightDist" (formula "4") (term "1,0,1,0")) + (rule "mul_literals" (formula "4") (term "0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "4") (term "0,1,0")) + (rule "add_literals" (formula "4") (term "0,0,1,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "4") (term "1,0")) + (rule "polySimp_mulLiterals" (formula "4") (term "0,1,0")) + (rule "polySimp_elimOne" (formula "4") (term "0,1,0")) + (rule "inEqSimp_contradInEq1" (formula "4") (term "1,0") (ifseqformula "1")) + (rule "qeq_literals" (formula "4") (term "0,1,0")) + (builtin "One Step Simplification" (formula "4")) + (rule "inEqSimp_contradInEq1" (formula "4") (term "1") (ifseqformula "2")) + (rule "inEqSimp_homoInEq1" (formula "4") (term "0,1")) + (rule "polySimp_mulComm0" (formula "4") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "4") (term "1,0,0,1")) + (rule "mul_literals" (formula "4") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "4") (term "0,0,1")) + (rule "polySimp_addComm1" (formula "4") (term "0,0,0,1")) + (rule "add_literals" (formula "4") (term "0,0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "4") (term "0,0,1")) + (rule "add_literals" (formula "4") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "4") (term "1,0,0,1")) + (rule "add_literals" (formula "4") (term "0,0,1")) + (rule "leq_literals" (formula "4") (term "0,1")) + (builtin "One Step Simplification" (formula "4")) + (rule "allLeft" (formula "5") (inst "t=add(Z(neglit(1(#))), + select<[int]>(heap, self, LinkedList::#size))")) + (rule "inEqSimp_homoInEq1" (formula "5") (term "1")) + (rule "polySimp_mulComm0" (formula "5") (term "1,0,1")) + (rule "polySimp_rightDist" (formula "5") (term "1,0,1")) + (rule "mul_literals" (formula "5") (term "0,1,0,1")) + (rule "polySimp_addAssoc" (formula "5") (term "0,1")) + (rule "polySimp_addComm0" (formula "5") (term "0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "5") (term "0,1")) + (rule "add_literals" (formula "5") (term "1,1,0,1")) + (rule "times_zero_1" (formula "5") (term "1,0,1")) + (rule "add_zero_right" (formula "5") (term "0,1")) + (rule "leq_literals" (formula "5") (term "1")) + (builtin "One Step Simplification" (formula "5")) + (rule "inEqSimp_homoInEq0" (formula "5") (term "1")) + (rule "polySimp_mulComm0" (formula "5") (term "1,0,1")) + (rule "polySimp_rightDist" (formula "5") (term "1,0,1")) + (rule "mul_literals" (formula "5") (term "0,1,0,1")) + (rule "polySimp_addAssoc" (formula "5") (term "0,1")) + (rule "add_literals" (formula "5") (term "0,0,1")) + (rule "add_zero_left" (formula "5") (term "0,1")) + (rule "applyEq" (formula "5") (term "1,0,0") (ifseqformula "24")) + (rule "inEqSimp_invertInEq1" (formula "5") (term "1")) + (rule "polySimp_mulLiterals" (formula "5") (term "0,1")) + (rule "mul_literals" (formula "5") (term "1,1")) + (rule "polySimp_elimOne" (formula "5") (term "0,1")) + (rule "inEqSimp_contradInEq1" (formula "5") (term "1") (ifseqformula "25")) + (rule "qeq_literals" (formula "5") (term "0,1")) + (builtin "One Step Simplification" (formula "5")) + (rule "allLeft" (formula "6") (inst "t=Z(0(#))")) + (rule "leq_literals" (formula "6") (term "1,0")) + (builtin "One Step Simplification" (formula "6")) + (rule "inEqSimp_commuteGeq" (formula "6") (term "1")) + (rule "applyEq" (formula "6") (term "1,0,0") (ifseqformula "24")) + (rule "inEqSimp_contradInEq1" (formula "6") (term "1") (ifseqformula "26")) + (rule "qeq_literals" (formula "6") (term "0,1")) + (builtin "One Step Simplification" (formula "6")) + (rule "allLeft" (formula "7") (inst "t=i_0_0")) + (rule "inEqSimp_commuteGeq" (formula "7") (term "1")) + (rule "applyEq" (formula "7") (term "1,0,0,0") (ifseqformula "13")) + (rule "replace_known_right" (formula "7") (term "0,0") (ifseqformula "31")) + (builtin "One Step Simplification" (formula "7")) + (rule "inEqSimp_contradInEq1" (formula "7") (term "0") (ifseqformula "11")) + (rule "qeq_literals" (formula "7") (term "0,0")) + (builtin "One Step Simplification" (formula "7")) + (rule "inEqSimp_contradInEq0" (formula "12") (ifseqformula "7")) + (rule "andLeft" (formula "12")) + (rule "inEqSimp_homoInEq1" (formula "12")) + (rule "polySimp_pullOutFactor1b" (formula "12") (term "0")) + (rule "add_literals" (formula "12") (term "1,1,0")) + (rule "times_zero_1" (formula "12") (term "1,0")) + (rule "add_zero_right" (formula "12") (term "0")) + (rule "leq_literals" (formula "12")) + (rule "closeFalse" (formula "12")) + ) + ) + ) + ) + ) + ) + (branch "inInt(i_0_0) & (0 <= i_0_0 & i_0_0 < self.size) FALSE" + (builtin "One Step Simplification" (formula "17")) + (builtin "One Step Simplification" (formula "12")) + (builtin "One Step Simplification" (formula "11")) + (builtin "One Step Simplification" (formula "3")) + (rule "closeFalse" (formula "3")) + ) + ) + ) + (branch "CUT: ov_0 = n_2 FALSE" + (builtin "One Step Simplification" (formula "11")) + (builtin "One Step Simplification" (formula "10")) + (builtin "One Step Simplification" (formula "2")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "16")) (ifInst "" (formula "16"))) + (rule "closeFalse" (formula "1")) + ) + ) + ) + (branch "Case 2" + (rule "replace_known_left" (formula "7") (term "1") (ifseqformula "6")) + (builtin "One Step Simplification" (formula "7") (ifInst "" (formula "11"))) + (rule "closeFalse" (formula "7")) + ) + ) + (branch + (builtin "One Step Simplification" (formula "10") (ifInst "" (formula "8"))) + (rule "closeTrue" (formula "10")) + ) + ) + ) + ) + ) + (branch + (builtin "One Step Simplification" (formula "10")) + (rule "closeTrue" (formula "10")) + ) + ) + (branch + (builtin "One Step Simplification" (formula "10")) + (rule "allRight" (formula "10") (inst "sk=f_0")) + (rule "allRight" (formula "10") (inst "sk=o_0_0")) + (rule "orRight" (formula "10")) + (rule "eqSymm" (formula "11")) + (rule "pullOutSelect" (formula "11") (term "0") (inst "selectSK=f_0_0")) + (rule "simplifySelectOfStore" (formula "1")) + (builtin "One Step Simplification" (formula "1")) + (rule "castDel" (formula "1") (term "1,0")) + (rule "eqSymm" (formula "12")) + (rule "eqSymm" (formula "1") (term "0,0,0")) + (rule "eqSymm" (formula "1") (term "1,0,0")) + (rule "pullOutSelect" (formula "1") (term "2,0") (inst "selectSK=f_0_1")) + (rule "simplifySelectOfStore" (formula "1")) + (builtin "One Step Simplification" (formula "1")) + (rule "castDel" (formula "1") (term "1,0")) + (rule "eqSymm" (formula "1") (term "0,0,0")) + (rule "eqSymm" (formula "1") (term "1,0,0")) + (rule "pullOutSelect" (formula "1") (term "2,0") (inst "selectSK=f_0_2")) + (rule "simplifySelectOfStore" (formula "1")) + (builtin "One Step Simplification" (formula "1")) + (rule "castDel" (formula "1") (term "1,0")) + (rule "eqSymm" (formula "1") (term "0,0,0")) + (rule "eqSymm" (formula "1") (term "1,0,0")) + (rule "pullOutSelect" (formula "1") (term "2,0") (inst "selectSK=f_0_3")) + (rule "simplifySelectOfCreate" (formula "1")) + (rule "castDel" (formula "1") (term "1,0")) + (rule "eqSymm" (formula "1") (term "0,0,0,0")) + (rule "replace_known_right" (formula "1") (term "0,1,0,0,0") (ifseqformula "12")) + (builtin "One Step Simplification" (formula "1")) + (rule "Class_invariant_axiom_for_LinkedList" (formula "10") (inst "i=i") (inst "j=j") (inst "i_0=i_0") (ifseqformula "13")) + (builtin "One Step Simplification" (formula "10")) + (rule "andLeft" (formula "10")) + (rule "andLeft" (formula "10")) + (rule "andLeft" (formula "12")) + (rule "andLeft" (formula "10")) + (rule "andLeft" (formula "10")) + (rule "andLeft" (formula "10")) + (rule "andLeft" (formula "10")) + (rule "eqSymm" (formula "15")) + (rule "eqSymm" (formula "16")) + (rule "eqSymm" (formula "17")) + (rule "eqSymm" (formula "14")) + (rule "eqSymm" (formula "13") (term "1,1,0,1,0,1,0")) + (rule "eqSymm" (formula "13") (term "0,1,0,1,0,1,0")) + (rule "eqSymm" (formula "13") (term "1,1,0")) + (rule "eqSymm" (formula "13") (term "1,0,0,1,0")) + (rule "eqSymm" (formula "12")) + (rule "polySimp_elimSub" (formula "15") (term "1,0,2,0")) + (rule "mul_literals" (formula "15") (term "1,1,0,2,0")) + (rule "polySimp_elimSub" (formula "13") (term "1,0,0,1,1,0")) + (rule "mul_literals" (formula "13") (term "1,1,0,0,1,1,0")) + (rule "polySimp_addComm0" (formula "13") (term "1,0,2,0,1,1,0")) + (rule "polySimp_addComm0" (formula "15") (term "1,0,2,0")) + (rule "polySimp_addComm0" (formula "13") (term "1,0,0,1,1,0")) + (rule "castedGetAny" (formula "13") (term "0,0,0,0,0,1,0")) + (rule "subsetSingletonLeft" (formula "11")) + (rule "subsetSingletonLeft" (formula "10")) + (rule "castedGetAny" (formula "14") (term "2,0")) + (rule "castedGetAny" (formula "13") (term "0,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "13") (term "1,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "13") (term "1,1,1,1,0")) + (rule "castedGetAny" (formula "13") (term "1,1,1,0,0,1,0")) + (rule "castedGetAny" (formula "13") (term "0,1,0,0,1,0")) + (rule "eqSymm" (formula "13") (term "1,0,0,1,0")) + (rule "castedGetAny" (formula "12") (term "0,1,0,1,0")) + (rule "castedGetAny" (formula "13") (term "2,0,1,1,0")) + (rule "castedGetAny" (formula "15") (term "2,0")) + (rule "inEqSimp_ltToLeq" (formula "13") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "13") (term "1,0,0,1,0,0")) + (rule "inEqSimp_ltToLeq" (formula "13") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "13") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "12") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "12") (term "1,0,0,1,0,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "13") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "13") (term "0,0,0,1,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "12") (term "0,0,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "13") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "13") (term "1,1,0,0")) + (rule "polySimp_rightDist" (formula "13") (term "1,1,0,0")) + (rule "polySimp_mulLiterals" (formula "13") (term "1,1,1,0,0")) + (rule "mul_literals" (formula "13") (term "0,1,1,0,0")) + (rule "polySimp_elimOne" (formula "13") (term "1,1,1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "13") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "13") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "13") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "13") (term "1,1,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "13") (term "0,1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "13") (term "1,1,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "12") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "12") (term "1,1,0,0,1,0")) + (rule "polySimp_rightDist" (formula "12") (term "1,1,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "12") (term "1,1,1,0,0,1,0")) + (rule "mul_literals" (formula "12") (term "0,1,1,0,0,1,0")) + (rule "polySimp_elimOne" (formula "12") (term "1,1,1,0,0,1,0")) + (rule "elementOfUnionEQ" (formula "10") (ifseqformula "12")) + (builtin "One Step Simplification" (formula "10")) + (rule "true_left" (formula "10")) + (rule "elementOfUnionEQ" (formula "10") (ifseqformula "11")) + (builtin "One Step Simplification" (formula "10")) + (rule "true_left" (formula "10")) + (rule "nnf_imp2or" (formula "11") (term "0")) + (rule "nnf_notAnd" (formula "11") (term "0,0")) + (rule "inEqSimp_notLeq" (formula "11") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "11") (term "1,0,0,1,0,0")) + (rule "mul_literals" (formula "11") (term "0,1,0,0,1,0,0")) + (rule "polySimp_addAssoc" (formula "11") (term "0,0,1,0,0")) + (rule "add_literals" (formula "11") (term "0,0,0,1,0,0")) + (rule "add_zero_left" (formula "11") (term "0,0,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "11") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "11") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "11") (term "1,1,0,0")) + (rule "inEqSimp_notGeq" (formula "11") (term "0,0,0")) + (rule "mul_literals" (formula "11") (term "1,0,0,0,0,0")) + (rule "add_zero_right" (formula "11") (term "0,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "11") (term "0,0,0")) + (rule "mul_literals" (formula "11") (term "1,0,0,0")) + (rule "nnf_imp2or" (formula "11") (term "0,1,0,1,0")) + (rule "nnf_imp2or" (formula "11") (term "1,0,1,0,1,0")) + (rule "nnf_notAnd" (formula "11") (term "0,0,1,0,1,0")) + (rule "inEqSimp_notLeq" (formula "11") (term "1,0,0,1,0,1,0")) + (rule "polySimp_rightDist" (formula "11") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "mul_literals" (formula "11") (term "0,1,0,0,1,0,0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "11") (term "0,0,1,0,0,1,0,1,0")) + (rule "add_literals" (formula "11") (term "0,0,0,1,0,0,1,0,1,0")) + (rule "add_zero_left" (formula "11") (term "0,0,1,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "11") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "11") (term "1,1,0,0,1,0,1,0")) + (rule "polySimp_elimOne" (formula "11") (term "1,1,0,0,1,0,1,0")) + (rule "inEqSimp_notGeq" (formula "11") (term "0,0,0,1,0,1,0")) + (rule "mul_literals" (formula "11") (term "1,0,0,0,0,0,1,0,1,0")) + (rule "add_zero_right" (formula "11") (term "0,0,0,0,0,1,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "11") (term "0,0,0,1,0,1,0")) + (rule "mul_literals" (formula "11") (term "1,0,0,0,1,0,1,0")) + (rule "commute_and" (formula "4") (term "0,0")) + (rule "commute_and" (formula "3") (term "0,0")) + (rule "commute_and" (formula "2") (term "0,0")) + (rule "commute_and" (formula "1") (term "0,0")) + (rule "shift_paren_or" (formula "11") (term "0,1,0,1,0")) + (rule "commute_or_2" (formula "11") (term "0,0,1,0,1,0")) + (rule "ifthenelse_to_or_left" (formula "11") (term "1,1,0")) + (rule "eqSymm" (formula "11") (term "1,0,1,1,0")) + (rule "eqSymm" (formula "11") (term "1,1,1,1,0")) + (rule "commute_or" (formula "11") (term "0,1,1,0")) + (rule "commute_or" (formula "11") (term "1,1,1,0")) + (rule "commute_or" (formula "11") (term "0,0,0,1,0,1,0")) + (rule "ifthenelse_split" (formula "12") (term "0")) + (branch "self.size = 0 TRUE" + (rule "eqSymm" (formula "13")) + (rule "replace_known_left" (formula "14") (term "0,0") (ifseqformula "12")) + (builtin "One Step Simplification" (formula "14")) + (rule "eqSymm" (formula "14")) + (rule "applyEq" (formula "11") (term "1,1,0,0,1,0,1,0") (ifseqformula "12")) + (rule "applyEq" (formula "11") (term "1,1,0,0") (ifseqformula "12")) + (rule "applyEq" (formula "10") (term "1,1,1,0,0,1,0") (ifseqformula "12")) + (rule "add_zero_right" (formula "10") (term "1,1,0,0,1,0")) + (rule "applyEq" (formula "15") (term "1") (ifseqformula "12")) + (rule "applyEq" (formula "16") (term "1") (ifseqformula "12")) + (rule "applyEq" (formula "11") (term "1,1,0,1,0,1,1,0") (ifseqformula "12")) + (rule "add_zero_right" (formula "11") (term "1,0,1,0,1,1,0")) + (rule "applyEq" (formula "11") (term "1,1,1,1,1,1,0") (ifseqformula "12")) + (rule "add_zero_right" (formula "11") (term "1,1,1,1,1,0")) + (rule "inEqSimp_or_tautInEq1" (formula "11") (term "0,0,1,0,1,0")) + (rule "add_zero_right" (formula "11") (term "1,1,0,0,1,0,1,0")) + (rule "qeq_literals" (formula "11") (term "1,0,0,1,0,1,0")) + (builtin "One Step Simplification" (formula "11")) + (rule "inEqSimp_or_tautInEq0" (formula "11") (term "0,0")) + (rule "add_zero_right" (formula "11") (term "1,1,0,0")) + (rule "qeq_literals" (formula "11") (term "1,0,0")) + (builtin "One Step Simplification" (formula "11")) + (rule "true_left" (formula "11")) + (rule "commute_and" (formula "10") (term "0,0,1,0")) + (rule "inEqSimp_and_contradInEq0" (formula "10") (term "0,0,1,0")) + (rule "qeq_literals" (formula "10") (term "1,0,0,1,0")) + (builtin "One Step Simplification" (formula "10")) + (rule "eqSymm" (formula "10")) + (rule "cut_direct" (formula "19") (term "0,0")) + (branch "CUT: o_0_0 = null TRUE" + (builtin "One Step Simplification" (formula "20")) + (rule "false_right" (formula "20")) + (rule "applyEqRigid" (formula "2") (term "0,1,0,0") (ifseqformula "1")) + (rule "eqSymm" (formula "2") (term "1,0,0")) + (rule "replace_known_right" (formula "2") (term "1,0,0") (ifseqformula "18")) + (builtin "One Step Simplification" (formula "2")) + (rule "applyEqReverse" (formula "3") (term "2,0") (ifseqformula "2")) + (rule "hideAuxiliaryEq" (formula "2")) + (rule "applyEq" (formula "4") (term "0,1,0,0") (ifseqformula "1")) + (rule "eqSymm" (formula "4") (term "1,0,0")) + (rule "replace_known_right" (formula "4") (term "1,0,0") (ifseqformula "17")) + (builtin "One Step Simplification" (formula "4")) + (rule "applyEqReverse" (formula "19") (term "1") (ifseqformula "4")) + (rule "hideAuxiliaryEq" (formula "4")) + (rule "applyEq" (formula "3") (term "0,1,0,0") (ifseqformula "1")) + (rule "eqSymm" (formula "3") (term "1,0,0")) + (rule "replace_known_right" (formula "3") (term "1,0,0") (ifseqformula "16")) + (builtin "One Step Simplification" (formula "3")) + (rule "applyEqReverse" (formula "18") (term "1") (ifseqformula "3")) + (rule "hideAuxiliaryEq" (formula "3")) + (rule "applyEqRigid" (formula "17") (term "1,0") (ifseqformula "1")) + (rule "applyEq" (formula "2") (term "0,1,0,0") (ifseqformula "1")) + (rule "eqSymm" (formula "2") (term "1,0,0")) + (rule "replace_known_right" (formula "2") (term "1,0,0") (ifseqformula "15")) + (builtin "One Step Simplification" (formula "2")) + (rule "applyEqReverse" (formula "17") (term "1") (ifseqformula "2")) + (rule "hideAuxiliaryEq" (formula "2")) + (rule "eqSymm" (formula "16")) + (rule "applyEqRigid" (formula "16") (term "1,0") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "16")) + (rule "closeTrue" (formula "16")) + ) + (branch "CUT: o_0_0 = null FALSE" + (builtin "One Step Simplification" (formula "20")) + (rule "notRight" (formula "20")) + (rule "lenNonNegative" (formula "15") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "15")) + (rule "applyEq" (formula "15") (term "0") (ifseqformula "16")) + (rule "qeq_literals" (formula "15")) + (rule "true_left" (formula "15")) + (rule "lenNonNegative" (formula "16") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "16")) + (rule "applyEq" (formula "16") (term "0") (ifseqformula "17")) + (rule "qeq_literals" (formula "16")) + (rule "true_left" (formula "16")) + (rule "ifthenelse_split" (formula "2") (term "0")) + (branch "f_0 = java.lang.Object::#$created & o_0_0 = n_2 TRUE" + (rule "andLeft" (formula "2")) + (rule "applyEqReverse" (formula "5") (term "2,0") (ifseqformula "4")) + (rule "hideAuxiliaryEq" (formula "4")) + (rule "replace_known_left" (formula "5") (term "1,0,0") (ifseqformula "3")) + (builtin "One Step Simplification" (formula "5")) + (rule "replace_known_left" (formula "4") (term "1,0,0") (ifseqformula "3")) + (builtin "One Step Simplification" (formula "4")) + (rule "replace_known_left" (formula "6") (term "1,0,0") (ifseqformula "3")) + (builtin "One Step Simplification" (formula "6")) + (rule "applyEq" (formula "22") (term "1,0") (ifseqformula "3")) + (rule "applyEq" (formula "5") (term "0,0,0") (ifseqformula "2")) + (builtin "One Step Simplification" (formula "5")) + (rule "applyEqReverse" (formula "6") (term "2,0") (ifseqformula "5")) + (rule "hideAuxiliaryEq" (formula "5")) + (rule "applyEq" (formula "1") (term "1,0") (ifseqformula "3")) + (rule "close" (formula "17") (ifseqformula "1")) + ) + (branch "f_0 = java.lang.Object::#$created & o_0_0 = n_2 FALSE" + (rule "applyEqReverse" (formula "3") (term "2,0") (ifseqformula "2")) + (rule "hideAuxiliaryEq" (formula "2")) + (rule "ifthenelse_split" (formula "2") (term "0")) + (branch "f_0 = Node::#next & o_0_0 = n_2 TRUE" + (rule "andLeft" (formula "2")) + (rule "applyEqReverse" (formula "5") (term "2,0") (ifseqformula "4")) + (rule "hideAuxiliaryEq" (formula "4")) + (rule "replace_known_left" (formula "5") (term "1,0,0") (ifseqformula "3")) + (builtin "One Step Simplification" (formula "5")) + (rule "replace_known_left" (formula "4") (term "1,0,0") (ifseqformula "3")) + (builtin "One Step Simplification" (formula "4")) + (rule "replace_known_left" (formula "17") (term "1") (ifseqformula "3")) + (builtin "One Step Simplification" (formula "17")) + (rule "applyEq" (formula "1") (term "1,0") (ifseqformula "3")) + (rule "close" (formula "18") (ifseqformula "1")) + ) + (branch "f_0 = Node::#next & o_0_0 = n_2 FALSE" + (rule "applyEqReverse" (formula "3") (term "2,0") (ifseqformula "2")) + (rule "hideAuxiliaryEq" (formula "2")) + (rule "ifthenelse_split" (formula "2") (term "0")) + (branch "f_0 = java.lang.Object::#$initialized & o_0_0 = n_2 TRUE" + (rule "andLeft" (formula "2")) + (rule "applyEqReverse" (formula "5") (term "2,0") (ifseqformula "4")) + (rule "hideAuxiliaryEq" (formula "4")) + (rule "replace_known_left" (formula "4") (term "1,0,0") (ifseqformula "3")) + (builtin "One Step Simplification" (formula "4")) + (rule "replace_known_left" (formula "16") (term "1") (ifseqformula "3")) + (builtin "One Step Simplification" (formula "16")) + (rule "replace_known_left" (formula "17") (term "1") (ifseqformula "3")) + (builtin "One Step Simplification" (formula "17")) + (rule "applyEq" (formula "22") (term "1,0") (ifseqformula "3")) + (rule "applyEq" (formula "22") (term "2,0") (ifseqformula "2")) + (rule "narrowSelectType" (formula "22") (term "0") (ifseqformula "6")) + (rule "eqSymm" (formula "22")) + (rule "applyEq" (formula "1") (term "1,0") (ifseqformula "3")) + (rule "close" (formula "18") (ifseqformula "1")) + ) + (branch "f_0 = java.lang.Object::#$initialized & o_0_0 = n_2 FALSE" + (rule "applyEqReverse" (formula "3") (term "2,0") (ifseqformula "2")) + (rule "hideAuxiliaryEq" (formula "2")) + (rule "ifthenelse_split" (formula "2") (term "0")) + (branch "f_0 = Node::#data & o_0_0 = n_2 TRUE" + (rule "andLeft" (formula "2")) + (rule "applyEqReverse" (formula "23") (term "1") (ifseqformula "4")) + (rule "hideAuxiliaryEq" (formula "4")) + (rule "replace_known_left" (formula "16") (term "1") (ifseqformula "3")) + (builtin "One Step Simplification" (formula "16")) + (rule "replace_known_left" (formula "17") (term "1") (ifseqformula "3")) + (builtin "One Step Simplification" (formula "17")) + (rule "replace_known_left" (formula "15") (term "1") (ifseqformula "3")) + (builtin "One Step Simplification" (formula "15")) + (rule "applyEq" (formula "15") (term "0") (ifseqformula "2")) + (builtin "One Step Simplification" (formula "15")) + (rule "false_right" (formula "15")) + (rule "applyEq" (formula "16") (term "0") (ifseqformula "2")) + (builtin "One Step Simplification" (formula "16")) + (rule "false_right" (formula "16")) + (rule "applyEq" (formula "19") (term "0") (ifseqformula "3")) + (rule "applyEq" (formula "19") (term "2,0") (ifseqformula "2")) + (rule "narrowSelectType" (formula "19") (term "0") (ifseqformula "5")) + (rule "applyEq" (formula "15") (term "0") (ifseqformula "2")) + (builtin "One Step Simplification" (formula "15")) + (rule "false_right" (formula "15")) + (rule "applyEq" (formula "1") (term "1,0") (ifseqformula "3")) + (rule "close" (formula "15") (ifseqformula "1")) + ) + (branch "f_0 = Node::#data & o_0_0 = n_2 FALSE" + (rule "close" (formula "22") (ifseqformula "2")) + ) + ) + ) + ) + ) + ) + (branch "self.size = 0 FALSE" + (rule "replace_known_right" (formula "13") (term "0,0") (ifseqformula "16")) + (builtin "One Step Simplification" (formula "13")) + (rule "cut_direct" (formula "20") (term "0,0")) + (branch "CUT: o_0_0 = null TRUE" + (builtin "One Step Simplification" (formula "21")) + (rule "false_right" (formula "21")) + (rule "applyEqRigid" (formula "5") (term "0,1,0,0") (ifseqformula "1")) + (rule "eqSymm" (formula "5") (term "1,0,0")) + (rule "replace_known_right" (formula "5") (term "1,0,0") (ifseqformula "19")) + (builtin "One Step Simplification" (formula "5")) + (rule "applyEqReverse" (formula "21") (term "1") (ifseqformula "5")) + (rule "hideAuxiliaryEq" (formula "5")) + (rule "applyEqRigid" (formula "2") (term "0,1,0,0") (ifseqformula "1")) + (rule "eqSymm" (formula "2") (term "1,0,0")) + (rule "replace_known_right" (formula "2") (term "1,0,0") (ifseqformula "18")) + (builtin "One Step Simplification" (formula "2")) + (rule "applyEqReverse" (formula "3") (term "2,0") (ifseqformula "2")) + (rule "hideAuxiliaryEq" (formula "2")) + (rule "applyEq" (formula "3") (term "0,1,0,0") (ifseqformula "1")) + (rule "eqSymm" (formula "3") (term "1,0,0")) + (rule "replace_known_right" (formula "3") (term "1,0,0") (ifseqformula "17")) + (builtin "One Step Simplification" (formula "3")) + (rule "applyEqReverse" (formula "19") (term "1") (ifseqformula "3")) + (rule "hideAuxiliaryEq" (formula "3")) + (rule "applyEq" (formula "18") (term "1,0") (ifseqformula "1")) + (rule "applyEqRigid" (formula "2") (term "0,1,0,0") (ifseqformula "1")) + (rule "eqSymm" (formula "2") (term "1,0,0")) + (rule "replace_known_right" (formula "2") (term "1,0,0") (ifseqformula "16")) + (builtin "One Step Simplification" (formula "2")) + (rule "applyEqReverse" (formula "18") (term "1") (ifseqformula "2")) + (rule "hideAuxiliaryEq" (formula "2")) + (rule "eqSymm" (formula "17")) + (rule "applyEq" (formula "17") (term "1,0") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "17")) + (rule "closeTrue" (formula "17")) + ) + (branch "CUT: o_0_0 = null FALSE" + (builtin "One Step Simplification" (formula "21")) + (rule "notRight" (formula "21")) + (rule "all_pull_out1" (formula "12") (term "0,1,0")) + (rule "all_pull_out0" (formula "12") (term "1,0")) + (rule "shift_paren_and" (formula "12") (term "0,1,0")) + (rule "all_pull_out3" (formula "12") (term "0")) + (rule "cnf_rightDist" (formula "12") (term "0,0")) + (rule "distr_forallAnd" (formula "12") (term "0")) + (builtin "One Step Simplification" (formula "12")) + (rule "distr_forallAnd" (formula "12")) + (rule "andLeft" (formula "12")) + (rule "shift_paren_or" (formula "13") (term "0")) + (rule "commute_or_2" (formula "13") (term "0,0")) + (rule "inEqSimp_or_weaken3" (formula "13") (term "0")) + (rule "polySimp_addAssoc" (formula "13") (term "1,0,1,0")) + (rule "add_literals" (formula "13") (term "0,1,0,1,0")) + (rule "add_zero_left" (formula "13") (term "1,0,1,0")) + (builtin "One Step Simplification" (formula "13")) + (rule "cnf_rightDist" (formula "12") (term "0,0")) + (rule "distr_forallAnd" (formula "12") (term "0")) + (builtin "One Step Simplification" (formula "12")) + (rule "distr_forallAnd" (formula "12")) + (rule "andLeft" (formula "12")) + (rule "commute_or_2" (formula "13") (term "0")) + (builtin "One Step Simplification" (formula "13")) + (rule "inEqSimp_homoInEq0" (formula "13") (term "0,1")) + (rule "polySimp_mulComm0" (formula "13") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "13") (term "1,0,0,1")) + (rule "mul_literals" (formula "13") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "13") (term "0,0,1")) + (rule "add_literals" (formula "13") (term "0,0,0,1")) + (rule "add_zero_left" (formula "13") (term "0,0,1")) + (rule "inEqSimp_homoInEq1" (formula "13") (term "1,1")) + (rule "polySimp_mulComm0" (formula "13") (term "1,0,1,1")) + (rule "polySimp_rightDist" (formula "13") (term "1,0,1,1")) + (rule "mul_literals" (formula "13") (term "0,1,0,1,1")) + (rule "polySimp_addAssoc" (formula "13") (term "0,1,1")) + (rule "polySimp_addComm0" (formula "13") (term "0,0,1,1")) + (rule "polySimp_pullOutFactor1b" (formula "13") (term "0,1,1")) + (rule "add_literals" (formula "13") (term "1,1,0,1,1")) + (rule "times_zero_1" (formula "13") (term "1,0,1,1")) + (rule "add_zero_right" (formula "13") (term "0,1,1")) + (rule "leq_literals" (formula "13") (term "1,1")) + (builtin "One Step Simplification" (formula "13")) + (rule "applyEq" (formula "13") (term "1,0,0") (ifseqformula "16")) + (rule "inEqSimp_invertInEq1" (formula "13") (term "1")) + (rule "times_zero_2" (formula "13") (term "1,1")) + (rule "polySimp_mulLiterals" (formula "13") (term "0,1")) + (rule "polySimp_elimOne" (formula "13") (term "0,1")) + (rule "cnf_rightDist" (formula "12") (term "0,0")) + (rule "distr_forallAnd" (formula "12") (term "0")) + (builtin "One Step Simplification" (formula "12")) + (rule "distr_forallAnd" (formula "12")) + (rule "andLeft" (formula "12")) + (rule "commute_or_2" (formula "13") (term "0,0")) + (rule "commute_or_2" (formula "13") (term "0,0,0")) + (rule "cnf_rightDist" (formula "12") (term "0")) + (rule "distr_forallAnd" (formula "12")) + (rule "andLeft" (formula "12")) + (rule "commute_or_2" (formula "12") (term "0")) + (rule "commute_or" (formula "13") (term "0")) + (rule "commute_or" (formula "12") (term "0,0")) + (rule "commute_or_2" (formula "14") (term "0,0,0,0")) + (rule "shift_paren_or" (formula "14") (term "0,0,0,0,0")) + (rule "lenNonNegative" (formula "19") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "19")) + (rule "applyEq" (formula "19") (term "0") (ifseqformula "20")) + (rule "inEqSimp_strengthen1" (formula "19") (ifseqformula "22")) + (rule "add_zero_right" (formula "19") (term "1")) + (rule "inEqSimp_contradEq7" (formula "22") (ifseqformula "19")) + (rule "times_zero_1" (formula "22") (term "1,0,0")) + (rule "add_zero_right" (formula "22") (term "0,0")) + (rule "leq_literals" (formula "22") (term "0")) + (builtin "One Step Simplification" (formula "22")) + (rule "false_right" (formula "22")) + (rule "inEqSimp_contradInEq1" (formula "15") (term "1") (ifseqformula "19")) + (rule "qeq_literals" (formula "15") (term "0,1")) + (builtin "One Step Simplification" (formula "15")) + (rule "lenNonNegative" (formula "21") (term "0")) + (rule "inEqSimp_commuteLeq" (formula "21")) + (rule "applyEq" (formula "21") (term "0") (ifseqformula "22")) + (rule "inEqSimp_subsumption1" (formula "21") (ifseqformula "19")) + (rule "leq_literals" (formula "21") (term "0")) + (builtin "One Step Simplification" (formula "21")) + (rule "true_left" (formula "21")) + (rule "ifthenelse_split" (formula "2") (term "0")) + (branch "f_0 = java.lang.Object::#$created & o_0_0 = n_2 TRUE" + (rule "andLeft" (formula "2")) + (rule "applyEqReverse" (formula "5") (term "2,0") (ifseqformula "4")) + (rule "hideAuxiliaryEq" (formula "4")) + (rule "replace_known_left" (formula "5") (term "1,0,0") (ifseqformula "3")) + (builtin "One Step Simplification" (formula "5")) + (rule "replace_known_left" (formula "6") (term "1,0,0") (ifseqformula "3")) + (builtin "One Step Simplification" (formula "6")) + (rule "replace_known_left" (formula "4") (term "1,0,0") (ifseqformula "3")) + (builtin "One Step Simplification" (formula "4")) + (rule "applyEqRigid" (formula "6") (term "0,0,0") (ifseqformula "2")) + (builtin "One Step Simplification" (formula "6")) + (rule "applyEqReverse" (formula "27") (term "1") (ifseqformula "6")) + (rule "hideAuxiliaryEq" (formula "6")) + (rule "applyEqRigid" (formula "4") (term "0,0,0") (ifseqformula "2")) + (builtin "One Step Simplification" (formula "4")) + (rule "applyEqReverse" (formula "5") (term "2,0") (ifseqformula "4")) + (builtin "One Step Simplification" (formula "5")) + (rule "applyEqReverse" (formula "26") (term "1") (ifseqformula "5")) + (rule "hideAuxiliaryEq" (formula "4")) + (rule "hideAuxiliaryEq" (formula "4")) + (rule "applyEq" (formula "1") (term "1,0") (ifseqformula "3")) + (rule "close" (formula "20") (ifseqformula "1")) + ) + (branch "f_0 = java.lang.Object::#$created & o_0_0 = n_2 FALSE" + (rule "applyEqReverse" (formula "3") (term "2,0") (ifseqformula "2")) + (rule "hideAuxiliaryEq" (formula "2")) + (rule "seqGetAlphaCast" (formula "16") (term "0")) + (rule "castedGetAny" (formula "16") (term "0")) + (builtin "One Step Simplification" (formula "16")) + (rule "true_left" (formula "16")) + (rule "allLeft" (formula "11") (inst "t=add(Z(neglit(1(#))), + select<[int]>(heap, self, LinkedList::#size))")) + (rule "inEqSimp_homoInEq1" (formula "11") (term "1")) + (rule "polySimp_mulComm0" (formula "11") (term "1,0,1")) + (rule "polySimp_rightDist" (formula "11") (term "1,0,1")) + (rule "mul_literals" (formula "11") (term "0,1,0,1")) + (rule "polySimp_addAssoc" (formula "11") (term "0,1")) + (rule "polySimp_addComm0" (formula "11") (term "0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "11") (term "0,1")) + (rule "add_literals" (formula "11") (term "1,1,0,1")) + (rule "times_zero_1" (formula "11") (term "1,0,1")) + (rule "add_literals" (formula "11") (term "0,1")) + (rule "leq_literals" (formula "11") (term "1")) + (builtin "One Step Simplification" (formula "11")) + (rule "inEqSimp_homoInEq0" (formula "11") (term "1")) + (rule "polySimp_mulComm0" (formula "11") (term "1,0,1")) + (rule "polySimp_rightDist" (formula "11") (term "1,0,1")) + (rule "mul_literals" (formula "11") (term "0,1,0,1")) + (rule "polySimp_addAssoc" (formula "11") (term "0,1")) + (rule "add_literals" (formula "11") (term "0,0,1")) + (rule "add_zero_left" (formula "11") (term "0,1")) + (rule "applyEq" (formula "11") (term "0,0,0") (ifseqformula "18")) + (rule "inEqSimp_invertInEq1" (formula "11") (term "1")) + (rule "times_zero_2" (formula "11") (term "1,1")) + (rule "polySimp_mulLiterals" (formula "11") (term "0,1")) + (rule "polySimp_elimOne" (formula "11") (term "0,1")) + (rule "inEqSimp_contradInEq1" (formula "11") (term "1") (ifseqformula "19")) + (rule "qeq_literals" (formula "11") (term "0,1")) + (builtin "One Step Simplification" (formula "11")) + (rule "notLeft" (formula "11")) + (rule "allLeft" (formula "12") (inst "t=add(Z(neglit(1(#))), + select<[int]>(heap, self, LinkedList::#size))")) + (rule "eqSymm" (formula "12") (term "1")) + (rule "inEqSimp_homoInEq1" (formula "12") (term "1,0")) + (rule "polySimp_mulComm0" (formula "12") (term "1,0,1,0")) + (rule "polySimp_rightDist" (formula "12") (term "1,0,1,0")) + (rule "mul_literals" (formula "12") (term "0,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "12") (term "0,1,0")) + (rule "polySimp_addComm0" (formula "12") (term "0,0,1,0")) + (rule "polySimp_pullOutFactor1b" (formula "12") (term "0,1,0")) + (rule "add_literals" (formula "12") (term "1,1,0,1,0")) + (rule "times_zero_1" (formula "12") (term "1,0,1,0")) + (rule "add_zero_right" (formula "12") (term "0,1,0")) + (rule "leq_literals" (formula "12") (term "1,0")) + (builtin "One Step Simplification" (formula "12")) + (rule "inEqSimp_homoInEq0" (formula "12") (term "0")) + (rule "polySimp_mulComm0" (formula "12") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "12") (term "1,0,0")) + (rule "mul_literals" (formula "12") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "12") (term "0,0")) + (rule "add_literals" (formula "12") (term "0,0,0")) + (rule "add_zero_left" (formula "12") (term "0,0")) + (rule "applyEq" (formula "12") (term "1,1,1") (ifseqformula "18")) + (rule "inEqSimp_invertInEq1" (formula "12") (term "0")) + (rule "times_zero_2" (formula "12") (term "1,0")) + (rule "polySimp_mulLiterals" (formula "12") (term "0,0")) + (rule "polySimp_elimOne" (formula "12") (term "0,0")) + (rule "inEqSimp_contradInEq1" (formula "12") (term "0") (ifseqformula "19")) + (rule "qeq_literals" (formula "12") (term "0,0")) + (builtin "One Step Simplification" (formula "12")) + (rule "allLeft" (formula "11") (inst "t=Z(0(#))")) + (rule "leq_literals" (formula "11") (term "1,0")) + (builtin "One Step Simplification" (formula "11")) + (rule "inEqSimp_commuteGeq" (formula "11") (term "1")) + (rule "applyEq" (formula "11") (term "0,0,0") (ifseqformula "18")) + (rule "inEqSimp_contradInEq1" (formula "11") (term "1") (ifseqformula "20")) + (rule "qeq_literals" (formula "11") (term "0,1")) + (builtin "One Step Simplification" (formula "11")) + (rule "notLeft" (formula "11")) + (rule "allLeft" (formula "13") (inst "t=Z(0(#))")) + (rule "leq_literals" (formula "13") (term "0,0")) + (builtin "One Step Simplification" (formula "13")) + (rule "eqSymm" (formula "13") (term "1")) + (rule "inEqSimp_commuteGeq" (formula "13") (term "0")) + (rule "applyEq" (formula "13") (term "1,1,1") (ifseqformula "18")) + (rule "inEqSimp_contradInEq1" (formula "13") (term "0") (ifseqformula "20")) + (rule "qeq_literals" (formula "13") (term "0,0")) + (builtin "One Step Simplification" (formula "13")) + (rule "seqGetAlphaCast" (formula "19") (term "0")) + (rule "castedGetAny" (formula "19") (term "0")) + (builtin "One Step Simplification" (formula "19")) + (rule "true_left" (formula "19")) + (rule "ifthenelse_split" (formula "2") (term "0")) + (branch "f_0 = Node::#next & o_0_0 = n_2 TRUE" + (rule "andLeft" (formula "2")) + (rule "applyEqReverse" (formula "5") (term "2,0") (ifseqformula "4")) + (rule "hideAuxiliaryEq" (formula "4")) + (rule "replace_known_left" (formula "5") (term "1,0,0") (ifseqformula "3")) + (builtin "One Step Simplification" (formula "5")) + (rule "replace_known_left" (formula "4") (term "1,0,0") (ifseqformula "3")) + (builtin "One Step Simplification" (formula "4")) + (rule "replace_known_left" (formula "26") (term "1") (ifseqformula "3")) + (builtin "One Step Simplification" (formula "26")) + (rule "applyEqRigid" (formula "5") (term "0,0,0") (ifseqformula "2")) + (builtin "One Step Simplification" (formula "5")) + (rule "applyEqReverse" (formula "31") (term "1") (ifseqformula "5")) + (rule "hideAuxiliaryEq" (formula "5")) + (rule "applyEq" (formula "1") (term "1,0") (ifseqformula "3")) + (rule "close" (formula "26") (ifseqformula "1")) + ) + (branch "f_0 = Node::#next & o_0_0 = n_2 FALSE" + (rule "applyEqReverse" (formula "3") (term "2,0") (ifseqformula "2")) + (rule "hideAuxiliaryEq" (formula "2")) + (rule "cut_direct" (formula "25") (term "1")) + (branch "CUT: o_0_0 = n_2 TRUE" + (builtin "One Step Simplification" (formula "26")) + (rule "replace_known_left" (formula "3") (term "1,0,0") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "3")) + (rule "replace_known_left" (formula "4") (term "1,0,0") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "4")) + (rule "replace_known_left" (formula "23") (term "1") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "23")) + (rule "applyEq" (formula "31") (term "1,0") (ifseqformula "1")) + (rule "applyEq" (formula "2") (term "1,0") (ifseqformula "1")) + (rule "close" (formula "27") (ifseqformula "2")) + ) + (branch "CUT: o_0_0 = n_2 FALSE" + (builtin "One Step Simplification" (formula "26")) + (rule "false_right" (formula "26")) + (rule "replace_known_right" (formula "3") (term "1,0,0") (ifseqformula "25")) + (builtin "One Step Simplification" (formula "3")) + (rule "applyEqReverse" (formula "30") (term "1") (ifseqformula "3")) + (rule "hideAuxiliaryEq" (formula "3")) + (rule "replace_known_right" (formula "2") (term "1,0,0") (ifseqformula "24")) + (builtin "One Step Simplification" (formula "2") (ifInst "" (formula "29"))) + (rule "closeFalse" (formula "2")) + ) + ) + ) + ) + ) + ) + ) + (branch "Null Reference (result = null)" + (rule "false_right" (formula "11")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "9"))) + (rule "closeFalse" (formula "1")) + ) +) +(branch "Null Reference (n = null)" + (rule "false_right" (formula "11")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "9"))) + (rule "closeFalse" (formula "1")) +) +) +} \ No newline at end of file diff --git a/key.ui/examples/heap/FM2024Tutorial/ArrayList/LinkedList_size.key b/key.ui/examples/heap/FM2024Tutorial/ArrayList/LinkedList_size.key new file mode 100644 index 00000000000..09797f144ae --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/ArrayList/LinkedList_size.key @@ -0,0 +1,88 @@ +\profile "Java Profile"; + +\settings { + "Choice" : { + "JavaCard" : "JavaCard:off", + "Strings" : "Strings:on", + "assertions" : "assertions:safe", + "bigint" : "bigint:on", + "finalFields" : "finalFields:immutable", + "floatRules" : "floatRules:strictfpOnly", + "initialisation" : "initialisation:disableStaticInitialisation", + "intRules" : "intRules:arithmeticSemanticsIgnoringOF", + "integerSimplificationRules" : "integerSimplificationRules:full", + "javaLoopTreatment" : "javaLoopTreatment:efficient", + "mergeGenerateIsWeakeningGoal" : "mergeGenerateIsWeakeningGoal:off", + "methodExpansion" : "methodExpansion:modularOnly", + "modelFields" : "modelFields:treatAsAxiom", + "moreSeqRules" : "moreSeqRules:on", + "permissions" : "permissions:off", + "programRules" : "programRules:Java", + "reach" : "reach:on", + "runtimeExceptions" : "runtimeExceptions:ban", + "sequences" : "sequences:on", + "soundDefaultContracts" : "soundDefaultContracts:on", + "wdChecks" : "wdChecks:off", + "wdOperator" : "wdOperator:L" + }, + "Labels" : { + "UseOriginLabels" : true + }, + "NewSMT" : { + "Axiomatisations" : "false", + "Presburger" : "false", + "sqrtSMTTranslation" : "SMT" + }, + "SMTSettings" : { + "SelectedTaclets" : [ + + ], + "UseBuiltUniqueness" : false, + "explicitTypeHierarchy" : false, + "instantiateHierarchyAssumptions" : true, + "integersMaximum" : 2147483645, + "integersMinimum" : -2147483645, + "invariantForall" : false, + "maxGenericSorts" : 2, + "useConstantsForBigOrSmallIntegers" : true, + "useUninterpretedMultiplication" : true + }, + "Strategy" : { + "ActiveStrategy" : "Modular JavaDL Strategy", + "MaximumNumberOfAutomaticApplications" : 10000, + "Timeout" : -1, + "options" : { + "AUTO_INDUCTION_OPTIONS_KEY" : "AUTO_INDUCTION_OFF", + "BLOCK_OPTIONS_KEY" : "BLOCK_CONTRACT_INTERNAL", + "CLASS_AXIOM_OPTIONS_KEY" : "CLASS_AXIOM_DELAYED", + "DEP_OPTIONS_KEY" : "DEP_ON", + "LOOP_OPTIONS_KEY" : "LOOP_INVARIANT", + "METHOD_OPTIONS_KEY" : "METHOD_CONTRACT", + "MPS_OPTIONS_KEY" : "MPS_MERGE", + "NON_LIN_ARITH_OPTIONS_KEY" : "NON_LIN_ARITH_DEF_OPS", + "OSS_OPTIONS_KEY" : "OSS_ON", + "QUANTIFIERS_OPTIONS_KEY" : "QUANTIFIERS_NON_SPLITTING_WITH_PROGS", + "QUERYAXIOM_OPTIONS_KEY" : "QUERYAXIOM_OFF", + "QUERY_NEW_OPTIONS_KEY" : "QUERY_OFF", + "SPLITTING_OPTIONS_KEY" : "SPLITTING_DELAYED", + "STOPMODE_OPTIONS_KEY" : "STOPMODE_DEFAULT", + "SYMBOLIC_EXECUTION_ALIAS_CHECK_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_ALIAS_CHECK_NEVER", + "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OFF", + "USER_TACLETS_OPTIONS_KEY1" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY2" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY3" : "USER_TACLETS_OFF", + "VBT_PHASE" : "VBT_SYM_EX" + } + } +} + + +\javaSource "src"; + +\proofObligation +// +{ + "class" : "de.uka.ilkd.key.proof.init.FunctionalOperationContractPO", + "contract" : "LinkedList[List::size()].JML normal_behavior operation contract.0", + "name" : "LinkedList[List::size()].JML normal_behavior operation contract.0" +} diff --git a/key.ui/examples/heap/FM2024Tutorial/ArrayList/LinkedList_size_acc.proof b/key.ui/examples/heap/FM2024Tutorial/ArrayList/LinkedList_size_acc.proof new file mode 100644 index 00000000000..b9601c9b5a7 --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/ArrayList/LinkedList_size_acc.proof @@ -0,0 +1,286 @@ +\profile "Java Profile"; + +\settings { + "Choice" : { + "JavaCard" : "JavaCard:off", + "Strings" : "Strings:on", + "assertions" : "assertions:safe", + "bigint" : "bigint:on", + "finalFields" : "finalFields:immutable", + "floatRules" : "floatRules:strictfpOnly", + "initialisation" : "initialisation:disableStaticInitialisation", + "intRules" : "intRules:arithmeticSemanticsIgnoringOF", + "integerSimplificationRules" : "integerSimplificationRules:full", + "javaLoopTreatment" : "javaLoopTreatment:efficient", + "mergeGenerateIsWeakeningGoal" : "mergeGenerateIsWeakeningGoal:off", + "methodExpansion" : "methodExpansion:modularOnly", + "modelFields" : "modelFields:treatAsAxiom", + "moreSeqRules" : "moreSeqRules:on", + "permissions" : "permissions:off", + "programRules" : "programRules:Java", + "reach" : "reach:on", + "runtimeExceptions" : "runtimeExceptions:ban", + "sequences" : "sequences:on", + "soundDefaultContracts" : "soundDefaultContracts:on", + "wdChecks" : "wdChecks:off", + "wdOperator" : "wdOperator:L" + }, + "Labels" : { + "UseOriginLabels" : true + }, + "NewSMT" : { + + }, + "SMTSettings" : { + "SelectedTaclets" : [ + + ], + "UseBuiltUniqueness" : false, + "explicitTypeHierarchy" : false, + "instantiateHierarchyAssumptions" : true, + "integersMaximum" : 2147483645, + "integersMinimum" : -2147483645, + "invariantForall" : false, + "maxGenericSorts" : 2, + "useConstantsForBigOrSmallIntegers" : true, + "useUninterpretedMultiplication" : true + }, + "Strategy" : { + "ActiveStrategy" : "Modular JavaDL Strategy", + "MaximumNumberOfAutomaticApplications" : 10000, + "Timeout" : -1, + "options" : { + "AUTO_INDUCTION_OPTIONS_KEY" : "AUTO_INDUCTION_OFF", + "BLOCK_OPTIONS_KEY" : "BLOCK_CONTRACT_INTERNAL", + "CLASS_AXIOM_OPTIONS_KEY" : "CLASS_AXIOM_DELAYED", + "DEP_OPTIONS_KEY" : "DEP_ON", + "LOOP_OPTIONS_KEY" : "LOOP_INVARIANT", + "METHOD_OPTIONS_KEY" : "METHOD_CONTRACT", + "MPS_OPTIONS_KEY" : "MPS_MERGE", + "NON_LIN_ARITH_OPTIONS_KEY" : "NON_LIN_ARITH_DEF_OPS", + "OSS_OPTIONS_KEY" : "OSS_ON", + "QUANTIFIERS_OPTIONS_KEY" : "QUANTIFIERS_NON_SPLITTING_WITH_PROGS", + "QUERYAXIOM_OPTIONS_KEY" : "QUERYAXIOM_OFF", + "QUERY_NEW_OPTIONS_KEY" : "QUERY_OFF", + "SPLITTING_OPTIONS_KEY" : "SPLITTING_DELAYED", + "STOPMODE_OPTIONS_KEY" : "STOPMODE_DEFAULT", + "SYMBOLIC_EXECUTION_ALIAS_CHECK_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_ALIAS_CHECK_NEVER", + "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OFF", + "USER_TACLETS_OPTIONS_KEY1" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY2" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY3" : "USER_TACLETS_OFF", + "VBT_PHASE" : "VBT_SYM_EX" + } + } +} + + +\javaSource "src"; + +\proofObligation +// +{ + "class" : "de.uka.ilkd.key.proof.init.DependencyContractPO", + "contract" : "LinkedList[List::size()].JML accessible clause.0", + "name" : "LinkedList[List::size()].JML accessible clause.0" +} + +\proof { +(keyLog "0" (keyUser "daniel" ) (keyVersion "e807486016cbcda7465f390848938e1ef6ea0ede")) + +(autoModeTime "27055") + +(branch "dummy ID" +(rule "impRight" (formula "1")) +(rule "andLeft" (formula "1")) +(rule "andLeft" (formula "1")) +(rule "andLeft" (formula "1")) +(rule "andLeft" (formula "1")) +(rule "andLeft" (formula "1")) +(rule "andLeft" (formula "1")) +(rule "notLeft" (formula "3")) + (builtin "Evaluate Query" (formula "8") (term "0") (newnames "self,anon_heap,callee,queryResult,res_size") (userinteraction)) +(rule "notLeft" (formula "1")) + (builtin "One Step Simplification" (formula "9")) +(rule "replaceKnownQuery_0" (formula "9") (term "0")) +(rule "eqSymm" (formula "7") (term "0,0,1")) +(rule "eqSymm" (formula "9")) +(rule "variableDeclaration" (formula "7") (term "1") (newnames "queryResult")) + (builtin "Use Operation Contract" (formula "7") (newnames "heapBefore_size,result_size,exc,heapAfter_size,anon_heap_size") (contract "LinkedList[List::size()].JML normal_behavior operation contract.0") (modality "diamond")) +(branch "Post (size)" + (builtin "One Step Simplification" (formula "9")) + (builtin "One Step Simplification" (formula "8")) + (rule "andLeft" (formula "8")) + (rule "andLeft" (formula "9")) + (rule "andLeft" (formula "10")) + (rule "andLeft" (formula "10")) + (rule "eqSymm" (formula "10")) + (rule "assignment" (formula "12") (term "1")) + (builtin "One Step Simplification" (formula "12")) + (rule "pullOutSelect" (formula "10") (term "0,0") (inst "selectSK=List_seq_0:Seq")) + (rule "simplifySelectOfAnonEQ" (formula "10") (ifseqformula "8")) + (builtin "One Step Simplification" (formula "10") (ifInst "" (formula "14")) (ifInst "" (formula "3"))) + (rule "hideAuxiliaryEq" (formula "10")) + (rule "replaceKnownAuxiliaryConstant_taclet0_2" (formula "10") (term "0,0")) + (rule "methodCallEmpty" (formula "12") (term "1")) + (builtin "One Step Simplification" (formula "12")) + (rule "emptyModality" (formula "12") (term "1")) + (builtin "One Step Simplification" (formula "12")) + (rule "notRight" (formula "12")) + (builtin "Evaluate Query" (formula "14") (term "0") (newnames "callee,queryResult_0,res_size_0") (userinteraction)) + (rule "notLeft" (formula "1")) + (rule "replaceKnownQuery0_3" (formula "15") (term "0")) + (rule "eqSymm" (formula "13") (term "0,0,1")) + (rule "eqSymm" (formula "1")) + (rule "variableDeclaration" (formula "13") (term "1") (newnames "queryResult_0")) + (builtin "Use Operation Contract" (formula "13") (newnames "heapBefore_size_0,result_size_0,exc_0,heapAfter_size_0,anon_heap_size_0") (contract "LinkedList[List::size()].JML normal_behavior operation contract.0") (modality "diamond")) + (branch "Post (size)" + (builtin "One Step Simplification" (formula "15")) + (builtin "One Step Simplification" (formula "14")) + (rule "andLeft" (formula "14")) + (rule "andLeft" (formula "15")) + (rule "andLeft" (formula "16")) + (rule "andLeft" (formula "16")) + (rule "eqSymm" (formula "16")) + (rule "assignment" (formula "18") (term "1")) + (builtin "One Step Simplification" (formula "18")) + (rule "pullOutSelect" (formula "16") (term "0,0") (inst "selectSK=List_seq_1:Seq")) + (rule "simplifySelectOfAnonEQ" (formula "16") (ifseqformula "14")) + (builtin "One Step Simplification" (formula "16") (ifInst "" (formula "20"))) + (rule "ifthenelse_negated" (formula "16") (term "0")) + (rule "selectCreatedOfAnonAsFormula" (formula "16") (term "0,0")) + (rule "replace_known_left" (formula "16") (term "0,0,0") (ifseqformula "4")) + (builtin "One Step Simplification" (formula "16")) + (rule "simplifySelectOfAnon" (formula "16")) + (builtin "One Step Simplification" (formula "16") (ifInst "" (formula "20")) (ifInst "" (formula "4"))) + (rule "elementOfSetMinus" (formula "16") (term "0,0")) + (builtin "One Step Simplification" (formula "16")) + (rule "ifthenelse_negated" (formula "16") (term "0")) + (rule "methodCallEmpty" (formula "19") (term "1")) + (builtin "One Step Simplification" (formula "19")) + (rule "emptyModality" (formula "19") (term "1")) + (builtin "One Step Simplification" (formula "19")) + (rule "notRight" (formula "19")) + (rule "eqSymm" (formula "1")) + (rule "applyEq" (formula "18") (term "1") (ifseqformula "1")) + (rule "applyEq" (formula "12") (term "1") (ifseqformula "2")) + (rule "Class_invariant_axiom_for_LinkedList" (formula "8") (inst "i=i") (inst "i_0=i_0") (inst "j=j") (ifseqformula "20")) + (builtin "One Step Simplification" (formula "8")) + (rule "andLeft" (formula "8")) + (rule "andLeft" (formula "8")) + (rule "andLeft" (formula "10")) + (rule "andLeft" (formula "8")) + (rule "andLeft" (formula "8")) + (rule "andLeft" (formula "8")) + (rule "andLeft" (formula "8")) + (rule "eqSymm" (formula "13")) + (rule "eqSymm" (formula "15")) + (rule "eqSymm" (formula "14")) + (rule "eqSymm" (formula "12")) + (rule "eqSymm" (formula "11") (term "1,0,0,1,0")) + (rule "eqSymm" (formula "11") (term "0,1,0,1,0,1,0")) + (rule "eqSymm" (formula "11") (term "1,1,0,1,0,1,0")) + (rule "eqSymm" (formula "11") (term "1,1,0")) + (rule "eqSymm" (formula "10")) + (rule "polySimp_elimSub" (formula "13") (term "1,0,2,0")) + (rule "mul_literals" (formula "13") (term "1,1,0,2,0")) + (rule "polySimp_elimSub" (formula "11") (term "1,0,0,1,1,0")) + (rule "mul_literals" (formula "11") (term "1,1,0,0,1,1,0")) + (rule "polySimp_addComm0" (formula "11") (term "1,0,2,0,1,1,0")) + (rule "polySimp_addComm0" (formula "13") (term "1,0,2,0")) + (rule "polySimp_addComm0" (formula "11") (term "1,0,0,1,1,0")) + (rule "castedGetAny" (formula "11") (term "0,0,0,0,0,1,0")) + (rule "subsetSingletonLeft" (formula "9")) + (rule "subsetSingletonLeft" (formula "8")) + (rule "replace_known_left" (formula "24") (term "0,0") (ifseqformula "8")) + (builtin "One Step Simplification" (formula "24")) + (rule "applyEqReverse" (formula "25") (term "0,0") (ifseqformula "24")) + (rule "hideAuxiliaryEq" (formula "24")) + (rule "castedGetAny" (formula "12") (term "2,0")) + (rule "castedGetAny" (formula "11") (term "0,1,0,0,1,0")) + (rule "eqSymm" (formula "11") (term "1,0,0,1,0")) + (rule "castedGetAny" (formula "11") (term "0,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "11") (term "1,0,1,0,1,0,1,0")) + (rule "castedGetAny" (formula "11") (term "1,1,1,1,0")) + (rule "castedGetAny" (formula "10") (term "0,1,0,1,0")) + (rule "castedGetAny" (formula "11") (term "2,0,1,1,0")) + (rule "castedGetAny" (formula "13") (term "2,0")) + (rule "inEqSimp_ltToLeq" (formula "11") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "11") (term "1,0,0,1,0,0")) + (rule "inEqSimp_ltToLeq" (formula "11") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulComm0" (formula "11") (term "1,0,0,1,0,0,1,0,1,0")) + (rule "castedGetAny" (formula "11") (term "1,0,1,0,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "10") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "10") (term "1,0,0,1,0,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "11") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "11") (term "0,0,0,1,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "10") (term "0,0,0,1,0")) + (rule "applyEq" (formula "19") (term "0") (ifseqformula "24")) + (rule "close" (formula "27") (ifseqformula "19")) + ) + (branch "Exceptional Post (size)" + (builtin "One Step Simplification" (formula "15")) + (builtin "One Step Simplification" (formula "14")) + (rule "andLeft" (formula "14")) + (rule "andLeft" (formula "15")) + (rule "andLeft" (formula "16")) + (rule "andLeft" (formula "15")) + (rule "andLeft" (formula "17")) + (rule "notLeft" (formula "15")) + (rule "close" (formula "19") (ifseqformula "18")) + ) + (branch "Pre (size)" + (builtin "One Step Simplification" (formula "13")) + (rule "andRight" (formula "13")) + (branch "Case 1" + (builtin "Use Dependency Contract" (formula "13") (ifInst "" (formula "7")) (contract "LinkedList[java.lang.Object::$inv()].JML accessible clause.0") (userinteraction)) + (rule "wellFormedAnon" (formula "13") (term "1,1,0,0,0")) + (rule "replace_known_right" (formula "13") (term "0,0,0,0,0,0") (ifseqformula "15")) + (builtin "One Step Simplification" (formula "13") (ifInst "" (formula "4")) (ifInst "" (formula "2")) (ifInst "" (formula "2")) (ifInst "" (formula "3")) (ifInst "" (formula "7")) (ifInst "" (formula "14")) (ifInst "" (formula "7"))) + (rule "notLeft" (formula "13")) + (rule "disjointDefinition" (formula "13")) + (builtin "One Step Simplification" (formula "13")) + (rule "closeTrue" (formula "13")) + ) + (branch "Case 2" + (rule "andRight" (formula "13")) + (branch "Case 1" + (rule "wellFormedAnon" (formula "13")) + (rule "replace_known_left" (formula "13") (term "0") (ifseqformula "2")) + (builtin "One Step Simplification" (formula "13") (ifInst "" (formula "3"))) + (rule "closeTrue" (formula "13")) + ) + (branch "Case 2" + (rule "applyEq" (formula "11") (term "1") (ifseqformula "1")) + (rule "selectCreatedOfAnonAsFormula" (formula "13")) + (rule "orRight" (formula "13")) + (rule "close" (formula "13") (ifseqformula "4")) + ) + ) + ) + (branch "Null reference (callee = null)" + (builtin "One Step Simplification" (formula "13") (ifInst "" (formula "14"))) + (rule "closeTrue" (formula "13")) + ) +) +(branch "Exceptional Post (size)" + (builtin "One Step Simplification" (formula "9")) + (builtin "One Step Simplification" (formula "8")) + (rule "andLeft" (formula "8")) + (rule "andLeft" (formula "9")) + (rule "andLeft" (formula "10")) + (rule "andLeft" (formula "9")) + (rule "andLeft" (formula "11")) + (rule "notLeft" (formula "9")) + (rule "close" (formula "13") (ifseqformula "12")) +) +(branch "Pre (size)" + (builtin "One Step Simplification" (formula "7") (ifInst "" (formula "6")) (ifInst "" (formula "1")) (ifInst "" (formula "3"))) + (rule "closeTrue" (formula "7")) +) +(branch "Null reference (callee = null)" + (builtin "One Step Simplification" (formula "7") (ifInst "" (formula "8"))) + (rule "closeTrue" (formula "7")) +) +) +} diff --git a/key.ui/examples/heap/FM2024Tutorial/ArrayList/README.txt b/key.ui/examples/heap/FM2024Tutorial/ArrayList/README.txt new file mode 100644 index 00000000000..57460ce5ac4 --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/ArrayList/README.txt @@ -0,0 +1,15 @@ +example.name = Array List and Linked List +example.path = FM 2024 Tutorial +example.additionalFile.1 = src/List.java +example.additionalFile.2 = src/ArrayList.java +example.additionalFile.3 = src/Node.java +example.additionalFile.4 = src/LinkedList.java +example.additionalFile.5 = src/Test.java + +The binary search examples from the paper "The Java verification tool KeY: A tutorial" presented as the Formal Methods Symposium 2024 in Milan. + +@author Bernhard Beckert, Richard Bubel, Daniel Drodt, Reiner Hähnle, Florian Lanzinger, Wolfram Pfeifer, Mattias Ulbrich, Alexander Weigl + +This example contains an interface for a List with operations "size", "get", "add", and "find." The interface is implemented as an ArrayList and a LinkedList of Nodes and highlights the usage of ghost fields and dynamic frames. + +Some proofs need manual proof interaction to close. \ No newline at end of file diff --git a/key.ui/examples/heap/FM2024Tutorial/ArrayList/project.key b/key.ui/examples/heap/FM2024Tutorial/ArrayList/project.key new file mode 100644 index 00000000000..2fd2bd4e44f --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/ArrayList/project.key @@ -0,0 +1,47 @@ +\profile "Java Profile"; + +\settings { +"#Proof-Settings-Config-File +#Tue Jan 09 21:12:58 CET 2024 +[Labels]UseOriginLabels=true +[StrategyProperty]QUERYAXIOM_OPTIONS_KEY=QUERYAXIOM_OFF +[SMTSettings]invariantForall=false +[Strategy]ActiveStrategy=JavaCardDLStrategy +[StrategyProperty]USER_TACLETS_OPTIONS_KEY1=USER_TACLETS_OFF +[StrategyProperty]QUANTIFIERS_OPTIONS_KEY=QUANTIFIERS_NON_SPLITTING_WITH_PROGS +[StrategyProperty]USER_TACLETS_OPTIONS_KEY2=USER_TACLETS_OFF +[Choice]DefaultChoices=JavaCard-JavaCard\\:off, Strings-Strings\\:on, assertions-assertions\\:safe, bigint-bigint\\:on, floatRules-floatRules\\:strictfpOnly, initialisation-initialisation\\:disableStaticInitialisation, intRules-intRules\\:arithmeticSemanticsIgnoringOF, integerSimplificationRules-integerSimplificationRules\\:full, javaLoopTreatment-javaLoopTreatment\\:efficient, mergeGenerateIsWeakeningGoal-mergeGenerateIsWeakeningGoal\\:off, methodExpansion-methodExpansion\\:modularOnly, modelFields-modelFields\\:treatAsAxiom, moreSeqRules-moreSeqRules\\:on, permissions-permissions\\:off, programRules-programRules\\:Java, reach-reach\\:on, runtimeExceptions-runtimeExceptions\\:ban, sequences-sequences\\:on, wdChecks-wdChecks\\:off, wdOperator-wdOperator\\:L +[StrategyProperty]LOOP_OPTIONS_KEY=LOOP_INVARIANT +[StrategyProperty]INF_FLOW_CHECK_PROPERTY=INF_FLOW_CHECK_FALSE +[SMTSettings]UseBuiltUniqueness=false +[SMTSettings]explicitTypeHierarchy=false +[SMTSettings]instantiateHierarchyAssumptions=true +[StrategyProperty]NON_LIN_ARITH_OPTIONS_KEY=NON_LIN_ARITH_DEF_OPS +[SMTSettings]SelectedTaclets= +[StrategyProperty]DEP_OPTIONS_KEY=DEP_ON +[StrategyProperty]AUTO_INDUCTION_OPTIONS_KEY=AUTO_INDUCTION_OFF +[Strategy]MaximumNumberOfAutomaticApplications=10000 +[StrategyProperty]STOPMODE_OPTIONS_KEY=STOPMODE_DEFAULT +[StrategyProperty]CLASS_AXIOM_OPTIONS_KEY=CLASS_AXIOM_DELAYED +[SMTSettings]useConstantsForBigOrSmallIntegers=true +[StrategyProperty]MPS_OPTIONS_KEY=MPS_MERGE +[StrategyProperty]SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OPTIONS_KEY=SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OFF +[Strategy]Timeout=-1 +[StrategyProperty]SYMBOLIC_EXECUTION_ALIAS_CHECK_OPTIONS_KEY=SYMBOLIC_EXECUTION_ALIAS_CHECK_NEVER +[StrategyProperty]QUERY_NEW_OPTIONS_KEY=QUERY_OFF +[SMTSettings]useUninterpretedMultiplication=true +[StrategyProperty]BLOCK_OPTIONS_KEY=BLOCK_CONTRACT_INTERNAL +[StrategyProperty]METHOD_OPTIONS_KEY=METHOD_CONTRACT +[StrategyProperty]USER_TACLETS_OPTIONS_KEY3=USER_TACLETS_OFF +[SMTSettings]maxGenericSorts=2 +[StrategyProperty]OSS_OPTIONS_KEY=OSS_ON +[StrategyProperty]SPLITTING_OPTIONS_KEY=SPLITTING_DELAYED +[SMTSettings]integersMinimum=-2147483645 +[StrategyProperty]VBT_PHASE=VBT_SYM_EX +[SMTSettings]integersMaximum=2147483645 +" +} + +\javaSource "src"; + +\chooseContract diff --git a/key.ui/examples/heap/FM2024Tutorial/ArrayList/src/ArrayList.java b/key.ui/examples/heap/FM2024Tutorial/ArrayList/src/ArrayList.java new file mode 100644 index 00000000000..d8555d473e4 --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/ArrayList/src/ArrayList.java @@ -0,0 +1,129 @@ +import java.util.Arrays; + +public class ArrayList implements List { + + private /*@ spec_public */ int[] array; + private int size = 0; + + /*@ + @ private invariant footprint == \set_union(array[*], this.*); + @ private invariant 0 <= size && size <= array.length; + @ + @ private invariant seq == \seq_sub(\array2seq(array), 0, size); + @*/ + + /*@ public normal_behaviour + @ ensures seq == \seq() && \fresh(footprint); + @*/ + public /*@ pure @*/ ArrayList() { + this.array = new int[10]; + //@ set seq = \seq(); + //@ set footprint = \locset(array[*], this.*); + } + + public int get(int index) { + return array[index]; + } + + public int size() { + return size; + } + + public void add(int o) { + if(size == array.length) { + array = Arrays.copyOf(array, array.length + 10); + } + array[size++] = o; + //@ set seq = seq + \seq(o); + //@ set footprint = \locset(array[*], this.*); + } + + public int find(int value) { + return binSearch(value); + } + + /*@ private normal_behaviour + @ requires (\forall int x; (\forall int y; 0<=x= 0 && array[\result] == v : \result == -1; + @ assignable \nothing; + @*/ + private int binSearch(int v) { + int l = 0; + int r = size - 1; + + if(size == 0) return -1; + if(size == 1) return array[0] == v ? 0 : -1; + + /*@ loop_invariant 0 <= l && l < r && r < size + @ && (\forall int x; 0 <= x && x < l; array[x] < v) + @ && (\forall int x; r < x && x < size; v < array[x]); + @ assignable \nothing; + @ decreases r - l; + @*/ + while(r > l + 1) { + int mid = l + (r - l) / 2; + if(array[mid] == v) { + return mid; + } else if(array[mid] > v) { + r = mid; + } else { + l = mid; + } + } + + if(array[l] == v) return l; + if(array[r] == v) return r; + return -1; + } + + /*@ public normal_behaviour + @ ensures \dl_seqPerm(\old(seq), seq); + @ ensures (\forall int x,y; 0<=x 0 ==> (\forall int m; i<=m 0; + @ loop_invariant i < j <= size; + @ loop_invariant i <= min < j; + @ loop_invariant (\forall int x; i<=x i == j) + @ && ((Node)nodeseq[i]).next == (i==size-1 ? null : (Node)nodeseq[i+1])); + @ + @ private invariant first == (size == 0 ? null : (Node)nodeseq[0]); + @ private invariant last == (size == 0 ? null : (Node)nodeseq[size-1]); + @ + @ private invariant size == seq.length && size == nodeseq.length; + @*/ + + /*@ normal_behaviour + @ ensures seq == \seq_empty; + @ ensures \fresh(footprint); + @*/ + public /*@pure@*/ LinkedList() { + //@ set footprint = \all_fields(this); + //@ set seq = \seq_empty; + //@ set nodeseq = \seq_empty; + first = null; + } + + public int size() { + return size; + } + + public int get(int index) { + if(index < 0 || size <= index) { + throw new IndexOutOfBoundsException(); + } + + Node node = first; + /*@ loop_invariant 0 <= i && i <= index && node == (Node)nodeseq[i]; + @ assignable \strictly_nothing; + @ decreases index - i; + @*/ + for(int i = 0; i < index; i++) { + node = node.next; + } + + return node.data; + } + + public int find(int value) { + if(size == 0) { + return -1; + } + + Node node = first; + /*@ loop_invariant 0 <= i && i <= size + @ && (i < size ==> node == (Node)nodeseq[i]) + @ && (i == size ==> node == null) + @ && (\forall int x; 0 <= x && x < i; (\bigint)seq[x] != value); + @ assignable \strictly_nothing; + @ decreases size - i; + @*/ + for(int i = 0; i < size; i++) { + if(node.data == value) { + return i; + } + node = node.next; + } + + return -1; + } + + /*@ private normal_behaviour + @ ensures \fresh(\result); + @ ensures \result.data == o; + @ ensures \result.next == null; + @ assignable \nothing; + @*/ + private Node newNode(int o) { + Node result = new Node(); + result.data = o; + return result; + } + + public void add(int value) { + Node node = newNode(value); + if(size == 0) { + first = node; + last = node; + } else { + last.next = node; + last = last.next; + } + //@ set seq = seq + \seq(value); + //@ set nodeseq = nodeseq + \seq(node); + //@ set footprint = footprint + \locset(node.*); + size++; + } +} \ No newline at end of file diff --git a/key.ui/examples/heap/FM2024Tutorial/ArrayList/src/List.java b/key.ui/examples/heap/FM2024Tutorial/ArrayList/src/List.java new file mode 100644 index 00000000000..15a08b41876 --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/ArrayList/src/List.java @@ -0,0 +1,38 @@ +public interface List { + + //@ public ghost instance \locset footprint; + //@ public ghost instance \seq seq; + + //@ public instance invariant \subset(\singleton(this.seq), footprint); + //@ public instance invariant \subset(\singleton(this.footprint), footprint); + //@ accessible \inv: footprint; + + /*@ public normal_behaviour + @ requires 0 <= index && index < seq.length; + @ accessible footprint; + @ ensures \result == (\bigint)seq[index]; + @*/ + public /*@pure@*/ int get(int index); + + /*@ public normal_behaviour + @ accessible footprint; + @ ensures \result == seq.length; + @*/ + public /*@pure@*/ int size(); + + /*@ public normal_behaviour + @ assignable footprint; + @ ensures seq == \old(seq) + \seq_singleton(o); + @ ensures \new_elems_fresh(footprint); + @*/ + public void add(int o); + + /*@ public normal_behaviour + @ requires (\forall int x; (\forall int y; 0<=x= 0 && (\bigint)seq[\result] == value : \result == -1; + @ assignable \nothing; + @*/ + public int find(int value); +} \ No newline at end of file diff --git a/key.ui/examples/heap/FM2024Tutorial/ArrayList/src/Node.java b/key.ui/examples/heap/FM2024Tutorial/ArrayList/src/Node.java new file mode 100644 index 00000000000..4ef168f97ec --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/ArrayList/src/Node.java @@ -0,0 +1,4 @@ +public final class Node { + public /*@nullable@*/ Node next; + public int data; +} \ No newline at end of file diff --git a/key.ui/examples/heap/FM2024Tutorial/ArrayList/src/Test.java b/key.ui/examples/heap/FM2024Tutorial/ArrayList/src/Test.java new file mode 100644 index 00000000000..d187e085766 --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/ArrayList/src/Test.java @@ -0,0 +1,18 @@ +public class Test { + //@ public normal_behaviour + //@ ensures true; + public void test() { + List l = new ArrayList(); + l.add(23); + assert l.get(0) == 23; + l.add(42); + assert l.get(0) == 23; + assert l.get(1) == 42; + + List l2 = new ArrayList(); + l2.add(100); + assert l2.get(0) == 100; + assert l.get(0) == 23; + assert l.get(1) == 42; + } +} \ No newline at end of file diff --git a/key.ui/examples/heap/FM2024Tutorial/BinarySearch/BinSearch_binSearchR.key b/key.ui/examples/heap/FM2024Tutorial/BinarySearch/BinSearch_binSearchR.key new file mode 100644 index 00000000000..a4ee8f00d86 --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/BinarySearch/BinSearch_binSearchR.key @@ -0,0 +1,88 @@ +\profile "Java Profile"; + +\settings { + "Choice" : { + "JavaCard" : "JavaCard:off", + "Strings" : "Strings:on", + "assertions" : "assertions:safe", + "bigint" : "bigint:on", + "finalFields" : "finalFields:immutable", + "floatRules" : "floatRules:strictfpOnly", + "initialisation" : "initialisation:disableStaticInitialisation", + "intRules" : "intRules:arithmeticSemanticsIgnoringOF", + "integerSimplificationRules" : "integerSimplificationRules:full", + "javaLoopTreatment" : "javaLoopTreatment:efficient", + "mergeGenerateIsWeakeningGoal" : "mergeGenerateIsWeakeningGoal:off", + "methodExpansion" : "methodExpansion:modularOnly", + "modelFields" : "modelFields:treatAsAxiom", + "moreSeqRules" : "moreSeqRules:off", + "permissions" : "permissions:off", + "programRules" : "programRules:Java", + "reach" : "reach:on", + "runtimeExceptions" : "runtimeExceptions:ban", + "sequences" : "sequences:on", + "soundDefaultContracts" : "soundDefaultContracts:on", + "wdChecks" : "wdChecks:off", + "wdOperator" : "wdOperator:L" + }, + "Labels" : { + "UseOriginLabels" : true + }, + "NewSMT" : { + "Axiomatisations" : "false", + "Presburger" : "false", + "sqrtSMTTranslation" : "SMT" + }, + "SMTSettings" : { + "SelectedTaclets" : [ + + ], + "UseBuiltUniqueness" : false, + "explicitTypeHierarchy" : false, + "instantiateHierarchyAssumptions" : true, + "integersMaximum" : 2147483645, + "integersMinimum" : -2147483645, + "invariantForall" : false, + "maxGenericSorts" : 2, + "useConstantsForBigOrSmallIntegers" : true, + "useUninterpretedMultiplication" : true + }, + "Strategy" : { + "ActiveStrategy" : "JavaCardDLStrategy", + "MaximumNumberOfAutomaticApplications" : 10000, + "Timeout" : -1, + "options" : { + "AUTO_INDUCTION_OPTIONS_KEY" : "AUTO_INDUCTION_OFF", + "BLOCK_OPTIONS_KEY" : "BLOCK_CONTRACT_INTERNAL", + "CLASS_AXIOM_OPTIONS_KEY" : "CLASS_AXIOM_DELAYED", + "DEP_OPTIONS_KEY" : "DEP_ON", + "LOOP_OPTIONS_KEY" : "LOOP_INVARIANT", + "METHOD_OPTIONS_KEY" : "METHOD_CONTRACT", + "MPS_OPTIONS_KEY" : "MPS_MERGE", + "NON_LIN_ARITH_OPTIONS_KEY" : "NON_LIN_ARITH_DEF_OPS", + "OSS_OPTIONS_KEY" : "OSS_ON", + "QUANTIFIERS_OPTIONS_KEY" : "QUANTIFIERS_NON_SPLITTING_WITH_PROGS", + "QUERYAXIOM_OPTIONS_KEY" : "QUERYAXIOM_OFF", + "QUERY_NEW_OPTIONS_KEY" : "QUERY_OFF", + "SPLITTING_OPTIONS_KEY" : "SPLITTING_DELAYED", + "STOPMODE_OPTIONS_KEY" : "STOPMODE_DEFAULT", + "SYMBOLIC_EXECUTION_ALIAS_CHECK_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_ALIAS_CHECK_NEVER", + "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OFF", + "USER_TACLETS_OPTIONS_KEY1" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY2" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY3" : "USER_TACLETS_OFF", + "VBT_PHASE" : "VBT_SYM_EX" + } + } +} + + +\javaSource "src"; + +\proofObligation +// +{ + "class" : "de.uka.ilkd.key.proof.init.FunctionalOperationContractPO", + "contract" : "BinSearch[BinSearch::binSearchR([I,int,int,int)].JML normal_behavior operation contract.0", + "name" : "BinSearch[BinSearch::binSearchR([I,int,int,int)].JML normal_behavior operation contract.0" +} diff --git a/key.ui/examples/heap/FM2024Tutorial/BinarySearch/BinSearch_binSearchR.key.proof b/key.ui/examples/heap/FM2024Tutorial/BinarySearch/BinSearch_binSearchR.key.proof new file mode 100644 index 00000000000..972078fa002 --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/BinarySearch/BinSearch_binSearchR.key.proof @@ -0,0 +1,3908 @@ +\profile "Java Profile"; + +\settings { + "Choice" : { + "JavaCard" : "JavaCard:off", + "Strings" : "Strings:on", + "assertions" : "assertions:safe", + "bigint" : "bigint:on", + "finalFields" : "finalFields:immutable", + "floatRules" : "floatRules:strictfpOnly", + "initialisation" : "initialisation:disableStaticInitialisation", + "intRules" : "intRules:arithmeticSemanticsIgnoringOF", + "integerSimplificationRules" : "integerSimplificationRules:full", + "javaLoopTreatment" : "javaLoopTreatment:efficient", + "mergeGenerateIsWeakeningGoal" : "mergeGenerateIsWeakeningGoal:off", + "methodExpansion" : "methodExpansion:modularOnly", + "modelFields" : "modelFields:treatAsAxiom", + "moreSeqRules" : "moreSeqRules:off", + "permissions" : "permissions:off", + "programRules" : "programRules:Java", + "reach" : "reach:on", + "runtimeExceptions" : "runtimeExceptions:ban", + "sequences" : "sequences:on", + "soundDefaultContracts" : "soundDefaultContracts:on", + "wdChecks" : "wdChecks:off", + "wdOperator" : "wdOperator:L" + }, + "Labels" : { + "UseOriginLabels" : true + }, + "NewSMT" : { + "Axiomatisations" : "false", + "Presburger" : "false", + "sqrtSMTTranslation" : "SMT" + }, + "SMTSettings" : { + "SelectedTaclets" : [ + + ], + "UseBuiltUniqueness" : false, + "explicitTypeHierarchy" : false, + "instantiateHierarchyAssumptions" : true, + "integersMaximum" : 2147483645, + "integersMinimum" : -2147483645, + "invariantForall" : false, + "maxGenericSorts" : 2, + "useConstantsForBigOrSmallIntegers" : true, + "useUninterpretedMultiplication" : true + }, + "Strategy" : { + "ActiveStrategy" : "Modular JavaDL Strategy", + "MaximumNumberOfAutomaticApplications" : 10000, + "Timeout" : -1, + "options" : { + "AUTO_INDUCTION_OPTIONS_KEY" : "AUTO_INDUCTION_OFF", + "BLOCK_OPTIONS_KEY" : "BLOCK_CONTRACT_INTERNAL", + "CLASS_AXIOM_OPTIONS_KEY" : "CLASS_AXIOM_DELAYED", + "DEP_OPTIONS_KEY" : "DEP_ON", + "LOOP_OPTIONS_KEY" : "LOOP_INVARIANT", + "METHOD_OPTIONS_KEY" : "METHOD_CONTRACT", + "MPS_OPTIONS_KEY" : "MPS_MERGE", + "NON_LIN_ARITH_OPTIONS_KEY" : "NON_LIN_ARITH_DEF_OPS", + "OSS_OPTIONS_KEY" : "OSS_ON", + "QUANTIFIERS_OPTIONS_KEY" : "QUANTIFIERS_NON_SPLITTING_WITH_PROGS", + "QUERYAXIOM_OPTIONS_KEY" : "QUERYAXIOM_OFF", + "QUERY_NEW_OPTIONS_KEY" : "QUERY_OFF", + "SPLITTING_OPTIONS_KEY" : "SPLITTING_DELAYED", + "STOPMODE_OPTIONS_KEY" : "STOPMODE_DEFAULT", + "SYMBOLIC_EXECUTION_ALIAS_CHECK_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_ALIAS_CHECK_NEVER", + "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OFF", + "USER_TACLETS_OPTIONS_KEY1" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY2" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY3" : "USER_TACLETS_OFF", + "VBT_PHASE" : "VBT_SYM_EX" + } + } +} + + +\bootclasspath "../../../../../key.core/build/resources/main/de/uka/ilkd/key/java/JavaRedux"; +\javaSource "src"; + +\proofObligation +// +{ + "class" : "de.uka.ilkd.key.proof.init.FunctionalOperationContractPO", + "contract" : "BinSearch[BinSearch::binSearchR([I,int,int,int)].JML normal_behavior operation contract.0", + "name" : "BinSearch[BinSearch::binSearchR([I,int,int,int)].JML normal_behavior operation contract.0" +} + +\proof { +(keyLog "0" (keyUser "daniel" ) (keyVersion "ba42c20cd404dc00d6aaa5695542be46eee5b0b6")) + +(autoModeTime "1710") + +(branch "dummy ID" + (builtin "One Step Simplification" (formula "1")) +(rule "impRight" (formula "1")) +(rule "andLeft" (formula "1")) +(rule "andLeft" (formula "1")) +(rule "andLeft" (formula "3")) +(rule "andLeft" (formula "1")) +(rule "andLeft" (formula "5")) +(rule "andLeft" (formula "4")) +(rule "andLeft" (formula "1")) +(rule "andLeft" (formula "8")) +(rule "andLeft" (formula "5")) +(rule "andLeft" (formula "1")) +(rule "notLeft" (formula "11")) +(rule "andLeft" (formula "1")) +(rule "notLeft" (formula "2")) +(rule "eqSymm" (formula "13") (term "1,0,0,1,0,1")) +(rule "replace_known_right" (formula "4") (term "0") (ifseqformula "12")) + (builtin "One Step Simplification" (formula "4")) +(rule "polySimp_elimSub" (formula "5") (term "0")) +(rule "polySimp_addComm0" (formula "5") (term "0")) +(rule "inEqSimp_ltToLeq" (formula "13") (term "1,1,0,0,0,0,1")) +(rule "polySimp_mulComm0" (formula "13") (term "1,0,0,1,1,0,0,0,0,1")) +(rule "polySimp_addComm1" (formula "13") (term "0,1,1,0,0,0,0,1")) +(rule "inEqSimp_ltToLeq" (formula "13") (term "1,0,0,0,0,1,0,0,0,1")) +(rule "polySimp_mulComm0" (formula "13") (term "1,0,0,1,0,0,0,0,1,0,0,0,1")) +(rule "inEqSimp_ltToLeq" (formula "9") (term "1,0,0,0,0")) +(rule "polySimp_mulComm0" (formula "9") (term "1,0,0,1,0,0,0,0")) +(rule "polySimp_addComm1" (formula "9") (term "0,1,0,0,0,0")) +(rule "inEqSimp_ltToLeq" (formula "9") (term "1,0,0,0")) +(rule "polySimp_mulComm0" (formula "9") (term "1,0,0,1,0,0,0")) +(rule "inEqSimp_commuteLeq" (formula "13") (term "0,1,0,0,0,0,1")) +(rule "inEqSimp_commuteLeq" (formula "13") (term "0,0,0,0,0,1,0,0,0,1")) +(rule "inEqSimp_commuteLeq" (formula "9") (term "0,0,0,0,0")) +(rule "inEqSimp_commuteLeq" (formula "9") (term "1,0,0")) +(rule "inEqSimp_commuteLeq" (formula "8")) +(rule "inEqSimp_commuteLeq" (formula "6")) +(rule "inEqSimp_commuteLeq" (formula "7")) +(rule "assignment" (formula "13") (term "1")) + (builtin "One Step Simplification" (formula "13")) +(rule "inEqSimp_sepNegMonomial0" (formula "9") (term "1,0,0,0,0")) +(rule "polySimp_mulLiterals" (formula "9") (term "0,1,0,0,0,0")) +(rule "polySimp_elimOne" (formula "9") (term "0,1,0,0,0,0")) +(rule "inEqSimp_sepPosMonomial0" (formula "9") (term "1,0,0,0")) +(rule "polySimp_mulComm0" (formula "9") (term "1,1,0,0,0")) +(rule "polySimp_rightDist" (formula "9") (term "1,1,0,0,0")) +(rule "mul_literals" (formula "9") (term "0,1,1,0,0,0")) +(rule "polySimp_mulLiterals" (formula "9") (term "1,1,1,0,0,0")) +(rule "polySimp_elimOne" (formula "9") (term "1,1,1,0,0,0")) +(rule "inEqSimp_sepNegMonomial0" (formula "13") (term "1,1,0,0,0,0,1")) +(rule "polySimp_mulLiterals" (formula "13") (term "0,1,1,0,0,0,0,1")) +(rule "polySimp_elimOne" (formula "13") (term "0,1,1,0,0,0,0,1")) +(rule "inEqSimp_sepPosMonomial0" (formula "13") (term "1,0,0,0,0,1,0,0,0,1")) +(rule "polySimp_mulComm0" (formula "13") (term "1,1,0,0,0,0,1,0,0,0,1")) +(rule "polySimp_rightDist" (formula "13") (term "1,1,0,0,0,0,1,0,0,0,1")) +(rule "mul_literals" (formula "13") (term "0,1,1,0,0,0,0,1,0,0,0,1")) +(rule "polySimp_mulLiterals" (formula "13") (term "1,1,1,0,0,0,0,1,0,0,0,1")) +(rule "polySimp_elimOne" (formula "13") (term "1,1,1,0,0,0,0,1,0,0,0,1")) +(rule "nnf_imp2or" (formula "9") (term "0,0")) +(rule "nnf_notAnd" (formula "9") (term "0,0,0")) +(rule "inEqSimp_notLeq" (formula "9") (term "1,0,0,0")) +(rule "polySimp_rightDist" (formula "9") (term "1,0,0,1,0,0,0")) +(rule "mul_literals" (formula "9") (term "0,1,0,0,1,0,0,0")) +(rule "polySimp_addAssoc" (formula "9") (term "0,0,1,0,0,0")) +(rule "add_literals" (formula "9") (term "0,0,0,1,0,0,0")) +(rule "add_zero_left" (formula "9") (term "0,0,1,0,0,0")) +(rule "inEqSimp_sepPosMonomial1" (formula "9") (term "1,0,0,0")) +(rule "polySimp_mulLiterals" (formula "9") (term "1,1,0,0,0")) +(rule "polySimp_elimOne" (formula "9") (term "1,1,0,0,0")) +(rule "nnf_notAnd" (formula "9") (term "0,0,0,0")) +(rule "inEqSimp_notGeq" (formula "9") (term "0,0,0,0,0")) +(rule "mul_literals" (formula "9") (term "1,0,0,0,0,0,0,0")) +(rule "add_literals" (formula "9") (term "0,0,0,0,0,0,0")) +(rule "inEqSimp_sepPosMonomial0" (formula "9") (term "0,0,0,0,0")) +(rule "mul_literals" (formula "9") (term "1,0,0,0,0,0")) +(rule "inEqSimp_notGeq" (formula "9") (term "1,0,0,0,0")) +(rule "polySimp_rightDist" (formula "9") (term "1,0,0,1,0,0,0,0")) +(rule "mul_literals" (formula "9") (term "0,1,0,0,1,0,0,0,0")) +(rule "polySimp_addAssoc" (formula "9") (term "0,0,1,0,0,0,0")) +(rule "add_literals" (formula "9") (term "0,0,0,1,0,0,0,0")) +(rule "add_zero_left" (formula "9") (term "0,0,1,0,0,0,0")) +(rule "inEqSimp_sepPosMonomial0" (formula "9") (term "1,0,0,0,0")) +(rule "polySimp_mulLiterals" (formula "9") (term "1,1,0,0,0,0")) +(rule "polySimp_elimOne" (formula "9") (term "1,1,0,0,0,0")) +(rule "commute_or_2" (formula "9") (term "0,0,0")) +(rule "methodBodyExpand" (formula "13") (term "1") (newnames "heapBefore_binSearchR,savedHeapBefore_binSearchR")) + (builtin "One Step Simplification" (formula "13")) +(rule "ifUnfold" (formula "13") (term "1") (inst "#boolv=b")) +(rule "variableDeclaration" (formula "13") (term "1") (newnames "b")) +(rule "less_than_comparison_simple" (formula "13") (term "1")) + (builtin "One Step Simplification" (formula "13")) +(rule "inEqSimp_ltToLeq" (formula "13") (term "0,0,1,0")) +(rule "polySimp_mulComm0" (formula "13") (term "1,0,0,0,0,1,0")) +(rule "polySimp_addComm1" (formula "13") (term "0,0,0,1,0")) +(rule "inEqSimp_sepNegMonomial0" (formula "13") (term "0,0,1,0")) +(rule "polySimp_mulLiterals" (formula "13") (term "0,0,0,1,0")) +(rule "polySimp_elimOne" (formula "13") (term "0,0,0,1,0")) +(rule "arrayLengthIsAnInt" (formula "8") (term "0")) + (builtin "One Step Simplification" (formula "8")) +(rule "true_left" (formula "8")) +(rule "arrayLengthNotNegative" (formula "8") (term "0")) +(rule "ifSplit" (formula "14")) +(branch "if b true" + (builtin "One Step Simplification" (formula "15")) + (builtin "One Step Simplification" (formula "1")) + (rule "variableDeclarationAssign" (formula "15") (term "1")) + (rule "variableDeclaration" (formula "15") (term "1") (newnames "mid")) + (rule "inEqSimp_subsumption1" (formula "8") (ifseqformula "1")) + (rule "inEqSimp_homoInEq0" (formula "8") (term "0")) + (rule "polySimp_pullOutFactor1b" (formula "8") (term "0,0")) + (rule "add_literals" (formula "8") (term "1,1,0,0")) + (rule "times_zero_1" (formula "8") (term "1,0,0")) + (rule "add_literals" (formula "8") (term "0,0")) + (rule "qeq_literals" (formula "8") (term "0")) + (builtin "One Step Simplification" (formula "8")) + (rule "true_left" (formula "8")) + (rule "compound_addition_2" (formula "14") (term "1") (inst "#v0=i") (inst "#v1=i_1")) + (rule "variableDeclarationAssign" (formula "14") (term "1")) + (rule "variableDeclaration" (formula "14") (term "1") (newnames "i")) + (rule "assignment" (formula "14") (term "1")) + (builtin "One Step Simplification" (formula "14")) + (rule "variableDeclarationAssign" (formula "14") (term "1")) + (rule "variableDeclaration" (formula "14") (term "1") (newnames "i_1")) + (rule "remove_parentheses_right" (formula "14") (term "1")) + (rule "compound_division_1" (formula "14") (term "1") (inst "#v=i_2")) + (rule "variableDeclarationAssign" (formula "14") (term "1")) + (rule "variableDeclaration" (formula "14") (term "1") (newnames "i_2")) + (rule "remove_parentheses_right" (formula "14") (term "1")) + (rule "assignmentSubtractionInt" (formula "14") (term "1")) + (builtin "One Step Simplification" (formula "14")) + (rule "translateJavaSubInt" (formula "14") (term "0,1,0")) + (rule "polySimp_elimSub" (formula "14") (term "0,1,0")) + (rule "polySimp_addComm0" (formula "14") (term "0,1,0")) + (rule "assignmentDivisionInt" (formula "14")) + (branch + (builtin "One Step Simplification" (formula "14")) + (rule "translateJavaDivInt" (formula "14") (term "0,1,0")) + (rule "assignmentAdditionInt" (formula "14") (term "1")) + (builtin "One Step Simplification" (formula "14")) + (rule "translateJavaAddInt" (formula "14") (term "0,1,0")) + (rule "ifElseUnfold" (formula "14") (term "1") (inst "#boolv=b_1")) + (rule "variableDeclaration" (formula "14") (term "1") (newnames "b_1")) + (rule "compound_equality_comparison_2" (formula "14") (term "1") (inst "#v0=i_3") (inst "#v1=i_4")) + (rule "variableDeclarationAssign" (formula "14") (term "1")) + (rule "variableDeclaration" (formula "14") (term "1") (newnames "i_3")) + (rule "assignment" (formula "14") (term "1")) + (builtin "One Step Simplification" (formula "14")) + (rule "variableDeclarationAssign" (formula "14") (term "1")) + (rule "variableDeclaration" (formula "14") (term "1") (newnames "i_4")) + (rule "assignment_array2" (formula "14")) + (branch "Normal Execution (_a != null)" + (builtin "One Step Simplification" (formula "14")) + (rule "equality_comparison_simple" (formula "14") (term "1")) + (builtin "One Step Simplification" (formula "14")) + (rule "eqSymm" (formula "14") (term "0,0,1,0")) + (rule "ifElseSplit" (formula "14")) + (branch "if b_1 true" + (builtin "One Step Simplification" (formula "15")) + (builtin "One Step Simplification" (formula "1")) + (rule "blockReturn" (formula "15") (term "1")) + (rule "blockReturn" (formula "15") (term "1")) + (rule "methodCallReturn" (formula "15") (term "1")) + (rule "assignment" (formula "15") (term "1")) + (builtin "One Step Simplification" (formula "15")) + (rule "methodCallEmpty" (formula "15") (term "1")) + (rule "tryEmpty" (formula "15") (term "1")) + (rule "emptyModality" (formula "15") (term "1")) + (builtin "One Step Simplification" (formula "15") (ifInst "" (formula "12")) (ifInst "" (formula "1"))) + (rule "polySimp_homoEq" (formula "15") (term "0,0")) + (rule "polySimp_homoEq" (formula "15") (term "2,1")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,0,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,2,1")) + (rule "polySimp_rightDist" (formula "15") (term "1,0,0,0")) + (rule "polySimp_mulComm0" (formula "15") (term "0,1,0,0,0")) + (rule "polySimp_rightDist" (formula "15") (term "1,0,2,1")) + (rule "polySimp_mulComm0" (formula "15") (term "0,1,0,2,1")) + (rule "polySimp_addAssoc" (formula "15") (term "1,1,1,0")) + (rule "polySimp_addAssoc" (formula "15") (term "0,0,0")) + (rule "polySimp_addAssoc" (formula "15") (term "0,2,1")) + (rule "inEqSimp_homoInEq1" (formula "15") (term "0,1,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,0,1,0")) + (rule "polySimp_rightDist" (formula "15") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "15") (term "0,1,0,0,1,0")) + (rule "polySimp_addAssoc" (formula "15") (term "0,0,1,0")) + (rule "polySimp_pullOutFactor1" (formula "15") (term "0,0,0,1,0")) + (rule "add_literals" (formula "15") (term "1,0,0,0,1,0")) + (rule "times_zero_1" (formula "15") (term "0,0,0,1,0")) + (rule "add_zero_left" (formula "15") (term "0,0,1,0")) + (rule "inEqSimp_homoInEq1" (formula "15") (term "1,1")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,1,1")) + (rule "polySimp_rightDist" (formula "15") (term "1,0,1,1")) + (rule "polySimp_mulComm0" (formula "15") (term "0,1,0,1,1")) + (rule "polySimp_addAssoc" (formula "15") (term "0,1,1")) + (rule "polySimp_pullOutFactor1" (formula "15") (term "0,0,1,1")) + (rule "add_literals" (formula "15") (term "1,0,0,1,1")) + (rule "times_zero_1" (formula "15") (term "0,0,1,1")) + (rule "add_zero_left" (formula "15") (term "0,1,1")) + (rule "inEqSimp_homoInEq1" (formula "15") (term "1,1,0")) + (rule "polySimp_addComm1" (formula "15") (term "0,1,1,0")) + (rule "polySimp_sepNegMonomial" (formula "15") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "0,0,0")) + (rule "polySimp_elimOne" (formula "15") (term "0,0,0")) + (rule "polySimp_sepNegMonomial" (formula "15") (term "2,1")) + (rule "polySimp_mulLiterals" (formula "15") (term "0,2,1")) + (rule "polySimp_elimOne" (formula "15") (term "0,2,1")) + (rule "inEqSimp_invertInEq0" (formula "15") (term "0,1,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "0,0,1,0")) + (rule "mul_literals" (formula "15") (term "1,0,1,0")) + (rule "polySimp_elimOne" (formula "15") (term "0,0,1,0")) + (rule "inEqSimp_invertInEq0" (formula "15") (term "1,1")) + (rule "polySimp_mulLiterals" (formula "15") (term "0,1,1")) + (rule "mul_literals" (formula "15") (term "1,1,1")) + (rule "polySimp_elimOne" (formula "15") (term "0,1,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "15") (term "1,1,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,1,1,0")) + (rule "polySimp_rightDist" (formula "15") (term "1,1,1,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,1,1,1,0")) + (rule "polySimp_elimOne" (formula "15") (term "1,1,1,1,0")) + (rule "polySimp_rightDist" (formula "15") (term "0,1,1,1,0")) + (rule "mul_literals" (formula "15") (term "0,0,1,1,1,0")) + (rule "Class_invariant_axiom_for_BinSearch" (formula "12") (ifseqformula "5")) + (rule "true_left" (formula "12")) + (rule "cnf_rightDist" (formula "14") (term "0")) + (rule "commute_or" (formula "14") (term "0,0")) + (rule "commute_or" (formula "14") (term "1,0")) + (rule "jdiv_axiom" (formula "1") (term "1,0,2,0")) + (rule "eqSymm" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "0,0,2,0")) + (rule "polySimp_rightDist" (formula "1") (term "0,0,2,0")) + (rule "polySimp_mulAssoc" (formula "1") (term "0,0,0,2,0")) + (rule "polySimp_mulComm0" (formula "1") (term "0,0,0,0,2,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "0,0,0,2,0")) + (rule "polySimp_elimOne" (formula "1") (term "0,0,0,2,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "1") (term "1,0,0")) + (rule "inEqSimp_subsumption1" (formula "1") (term "0,0") (ifseqformula "3")) + (rule "inEqSimp_homoInEq0" (formula "1") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "1") (term "0,0,0,0")) + (rule "add_literals" (formula "1") (term "1,1,0,0,0,0")) + (rule "times_zero_1" (formula "1") (term "1,0,0,0,0")) + (rule "add_literals" (formula "1") (term "0,0,0,0")) + (rule "qeq_literals" (formula "1") (term "0,0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "eqSymm" (formula "1")) + (rule "applyEq" (formula "15") (term "0,0,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "15") (term "0,1,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "15") (term "0,0,1,0") (ifseqformula "1")) + (rule "applyEq" (formula "15") (term "0,1,1,0") (ifseqformula "1")) + (rule "applyEq" (formula "15") (term "0,1,1") (ifseqformula "1")) + (rule "applyEq" (formula "15") (term "0,2,1") (ifseqformula "1")) + (rule "applyEq" (formula "2") (term "1,0,2,0") (ifseqformula "1")) + (rule "polyDiv_pullOut" (formula "15") (term "0,0,0,0") (inst "polyDivCoeff=mul(low, Z(neglit(1(#))))")) + (rule "equal_literals" (formula "15") (term "0,0,0,0,0")) + (builtin "One Step Simplification" (formula "15")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,0,0,0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,0,0,0,0,0,0")) + (rule "polySimp_addComm0" (formula "15") (term "0,0,0,0")) + (rule "polySimp_addComm1" (formula "15") (term "0,1,0,0,0,0")) + (rule "polySimp_pullOutFactor0" (formula "15") (term "0,0,1,0,0,0,0")) + (rule "add_literals" (formula "15") (term "1,0,0,1,0,0,0,0")) + (rule "polySimp_elimOne" (formula "15") (term "0,0,1,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "15") (term "0,0,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,0,0,0")) + (rule "polySimp_elimOne" (formula "15") (term "1,0,0,0")) + (rule "polyDiv_pullOut" (formula "1") (term "1") (inst "polyDivCoeff=mul(low, Z(neglit(1(#))))")) + (rule "equal_literals" (formula "1") (term "0,1")) + (builtin "One Step Simplification" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,0,0,1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,0,0,1")) + (rule "polySimp_addComm0" (formula "1") (term "1")) + (rule "polySimp_addComm1" (formula "1") (term "0,1,1")) + (rule "polySimp_pullOutFactor0" (formula "1") (term "0,0,1,1")) + (rule "add_literals" (formula "1") (term "1,0,0,1,1")) + (rule "polySimp_elimOne" (formula "1") (term "0,0,1,1")) + (rule "polyDiv_pullOut" (formula "2") (term "1,0,2,0") (inst "polyDivCoeff=mul(low, Z(neglit(1(#))))")) + (rule "equal_literals" (formula "2") (term "0,1,0,2,0")) + (builtin "One Step Simplification" (formula "2")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,0,0,1,0,2,0")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,0,0,1,0,2,0")) + (rule "polySimp_addComm0" (formula "2") (term "1,0,2,0")) + (rule "polySimp_addComm1" (formula "2") (term "0,1,1,0,2,0")) + (rule "polySimp_pullOutFactor0" (formula "2") (term "0,0,1,1,0,2,0")) + (rule "add_literals" (formula "2") (term "1,0,0,1,1,0,2,0")) + (rule "polySimp_elimOne" (formula "2") (term "0,0,1,1,0,2,0")) + (rule "polySimp_addAssoc" (formula "2") (term "0,2,0")) + (rule "polySimp_pullOutFactor1" (formula "2") (term "0,0,2,0")) + (rule "add_literals" (formula "2") (term "1,0,0,2,0")) + (rule "times_zero_1" (formula "2") (term "0,0,2,0")) + (rule "add_zero_left" (formula "2") (term "0,2,0")) + (rule "polyDiv_pullOut" (formula "15") (term "0,1,0,0") (inst "polyDivCoeff=mul(low, Z(neglit(1(#))))")) + (rule "equal_literals" (formula "15") (term "0,0,1,0,0")) + (builtin "One Step Simplification" (formula "15")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,0,0,0,1,0,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,0,0,0,1,0,0")) + (rule "polySimp_homoEq" (formula "15") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,1,0,0")) + (rule "polySimp_addComm0" (formula "15") (term "1,1,0,1,0,0")) + (rule "polySimp_addComm1" (formula "15") (term "0,1,1,1,0,1,0,0")) + (rule "polySimp_pullOutFactor0" (formula "15") (term "0,0,1,1,1,0,1,0,0")) + (rule "add_literals" (formula "15") (term "1,0,0,1,1,1,0,1,0,0")) + (rule "polySimp_elimOne" (formula "15") (term "0,0,1,1,1,0,1,0,0")) + (rule "polySimp_rightDist" (formula "15") (term "1,0,1,0,0")) + (rule "polySimp_mulAssoc" (formula "15") (term "0,1,0,1,0,0")) + (rule "polySimp_mulComm0" (formula "15") (term "0,0,1,0,1,0,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "0,1,0,1,0,0")) + (rule "polySimp_elimOne" (formula "15") (term "0,1,0,1,0,0")) + (rule "polySimp_addAssoc" (formula "15") (term "0,1,0,0")) + (rule "polySimp_pullOutFactor2b" (formula "15") (term "0,0,1,0,0")) + (rule "add_literals" (formula "15") (term "1,1,0,0,1,0,0")) + (rule "times_zero_1" (formula "15") (term "1,0,0,1,0,0")) + (rule "add_literals" (formula "15") (term "0,0,1,0,0")) + (rule "polySimp_sepNegMonomial" (formula "15") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "0,1,0,0")) + (rule "polySimp_elimOne" (formula "15") (term "0,1,0,0")) + (rule "polyDiv_pullOut" (formula "15") (term "0,0,1,0") (inst "polyDivCoeff=mul(low, Z(neglit(1(#))))")) + (rule "equal_literals" (formula "15") (term "0,0,0,1,0")) + (builtin "One Step Simplification" (formula "15")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,0,0,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,0,0,0,0,1,0")) + (rule "polySimp_homoEq" (formula "15") (term "0,1,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,0,1,0")) + (rule "polySimp_addComm0" (formula "15") (term "1,1,0,0,1,0")) + (rule "polySimp_addComm1" (formula "15") (term "0,1,1,1,0,0,1,0")) + (rule "polySimp_pullOutFactor0" (formula "15") (term "0,0,1,1,1,0,0,1,0")) + (rule "add_literals" (formula "15") (term "1,0,0,1,1,1,0,0,1,0")) + (rule "polySimp_elimOne" (formula "15") (term "0,0,1,1,1,0,0,1,0")) + (rule "polySimp_rightDist" (formula "15") (term "1,0,0,1,0")) + (rule "polySimp_mulAssoc" (formula "15") (term "0,1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "15") (term "0,0,1,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "0,1,0,0,1,0")) + (rule "polySimp_elimOne" (formula "15") (term "0,1,0,0,1,0")) + (rule "polySimp_addAssoc" (formula "15") (term "0,0,1,0")) + (rule "polySimp_pullOutFactor2b" (formula "15") (term "0,0,0,1,0")) + (rule "add_literals" (formula "15") (term "1,1,0,0,0,1,0")) + (rule "times_zero_1" (formula "15") (term "1,0,0,0,1,0")) + (rule "add_literals" (formula "15") (term "0,0,0,1,0")) + (rule "polySimp_sepNegMonomial" (formula "15") (term "0,1,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "0,0,1,0")) + (rule "polySimp_elimOne" (formula "15") (term "0,0,1,0")) + (rule "polyDiv_pullOut" (formula "15") (term "0,1,1,0") (inst "polyDivCoeff=mul(low, Z(neglit(1(#))))")) + (rule "equal_literals" (formula "15") (term "0,0,1,1,0")) + (builtin "One Step Simplification" (formula "15")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,0,0,0,1,1,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,0,0,0,1,1,0")) + (rule "polySimp_addComm0" (formula "15") (term "0,1,1,0")) + (rule "polySimp_addComm1" (formula "15") (term "0,1,0,1,1,0")) + (rule "polySimp_pullOutFactor0" (formula "15") (term "0,0,1,0,1,1,0")) + (rule "add_literals" (formula "15") (term "1,0,0,1,0,1,1,0")) + (rule "polySimp_elimOne" (formula "15") (term "0,0,1,0,1,1,0")) + (rule "inEqSimp_homoInEq0" (formula "15") (term "1,1,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,1,1,0")) + (rule "polySimp_rightDist" (formula "15") (term "1,0,1,1,0")) + (rule "polySimp_mulAssoc" (formula "15") (term "0,1,0,1,1,0")) + (rule "polySimp_mulComm0" (formula "15") (term "0,0,1,0,1,1,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "0,1,0,1,1,0")) + (rule "polySimp_elimOne" (formula "15") (term "0,1,0,1,1,0")) + (rule "polySimp_addAssoc" (formula "15") (term "0,1,1,0")) + (rule "polySimp_addComm1" (formula "15") (term "0,0,1,1,0")) + (rule "polySimp_pullOutFactor2b" (formula "15") (term "0,0,0,1,1,0")) + (rule "add_literals" (formula "15") (term "1,1,0,0,0,1,1,0")) + (rule "times_zero_1" (formula "15") (term "1,0,0,0,1,1,0")) + (rule "add_literals" (formula "15") (term "0,0,0,1,1,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "15") (term "1,1,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "0,1,1,0")) + (rule "polySimp_elimOne" (formula "15") (term "0,1,1,0")) + (rule "polyDiv_pullOut" (formula "15") (term "0,1,1") (inst "polyDivCoeff=mul(low, Z(neglit(1(#))))")) + (rule "equal_literals" (formula "15") (term "0,0,1,1")) + (builtin "One Step Simplification" (formula "15")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,0,0,0,1,1")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,0,0,0,1,1")) + (rule "polySimp_addComm0" (formula "15") (term "0,1,1")) + (rule "polySimp_addComm1" (formula "15") (term "0,1,0,1,1")) + (rule "polySimp_pullOutFactor0" (formula "15") (term "0,0,1,0,1,1")) + (rule "add_literals" (formula "15") (term "1,0,0,1,0,1,1")) + (rule "polySimp_elimOne" (formula "15") (term "0,0,1,0,1,1")) + (rule "inEqSimp_sepPosMonomial1" (formula "15") (term "1,1")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,1,1")) + (rule "polySimp_elimOne" (formula "15") (term "1,1,1")) + (rule "polyDiv_pullOut" (formula "15") (term "0,2,1") (inst "polyDivCoeff=mul(low, Z(neglit(1(#))))")) + (rule "equal_literals" (formula "15") (term "0,0,2,1")) + (builtin "One Step Simplification" (formula "15")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,0,0,0,2,1")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,0,0,0,2,1")) + (rule "polySimp_homoEq" (formula "15") (term "2,1")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,2,1")) + (rule "polySimp_addComm0" (formula "15") (term "1,1,0,2,1")) + (rule "polySimp_addComm1" (formula "15") (term "0,1,1,1,0,2,1")) + (rule "polySimp_pullOutFactor0" (formula "15") (term "0,0,1,1,1,0,2,1")) + (rule "add_literals" (formula "15") (term "1,0,0,1,1,1,0,2,1")) + (rule "polySimp_elimOne" (formula "15") (term "0,0,1,1,1,0,2,1")) + (rule "polySimp_rightDist" (formula "15") (term "1,0,2,1")) + (rule "polySimp_mulAssoc" (formula "15") (term "0,1,0,2,1")) + (rule "polySimp_mulComm0" (formula "15") (term "0,0,1,0,2,1")) + (rule "polySimp_mulLiterals" (formula "15") (term "0,1,0,2,1")) + (rule "polySimp_elimOne" (formula "15") (term "0,1,0,2,1")) + (rule "polySimp_addAssoc" (formula "15") (term "0,2,1")) + (rule "polySimp_pullOutFactor2b" (formula "15") (term "0,0,2,1")) + (rule "add_literals" (formula "15") (term "1,1,0,0,2,1")) + (rule "times_zero_1" (formula "15") (term "1,0,0,2,1")) + (rule "add_literals" (formula "15") (term "0,0,2,1")) + (rule "polySimp_sepNegMonomial" (formula "15") (term "2,1")) + (rule "polySimp_mulLiterals" (formula "15") (term "0,2,1")) + (rule "polySimp_elimOne" (formula "15") (term "0,2,1")) + (rule "commute_or" (formula "15") (term "0,0")) + (rule "div_axiom" (formula "1") (term "1,1") (inst "quotient=quotient_0")) + (rule "equal_literals" (formula "1") (term "0")) + (builtin "One Step Simplification" (formula "1")) + (rule "qeq_literals" (formula "1") (term "0,1")) + (builtin "One Step Simplification" (formula "1")) + (rule "mul_literals" (formula "1") (term "1,1,1")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "1")) + (rule "polySimp_addAssoc" (formula "3") (term "0,1")) + (rule "polySimp_addComm1" (formula "3") (term "1")) + (rule "polySimp_addComm1" (formula "3") (term "0,1")) + (rule "add_literals" (formula "3") (term "0,0,1")) + (rule "inEqSimp_homoInEq0" (formula "2")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,0")) + (rule "polySimp_addComm1" (formula "2") (term "0")) + (rule "polySimp_addComm0" (formula "2") (term "0,0")) + (rule "inEqSimp_homoInEq1" (formula "3")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,0")) + (rule "polySimp_addComm1" (formula "3") (term "0")) + (rule "polySimp_addComm1" (formula "3") (term "0,0")) + (rule "applyEq" (formula "18") (term "0,0,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "18") (term "0,1,0,0") (ifseqformula "1")) + (rule "inEqSimp_commuteGeq" (formula "18") (term "1,0,0")) + (rule "applyEq" (formula "18") (term "0,0,1,0") (ifseqformula "1")) + (rule "applyEq" (formula "18") (term "0,1,1,0") (ifseqformula "1")) + (rule "inEqSimp_homoInEq0" (formula "18") (term "1,1,0")) + (rule "polySimp_addComm1" (formula "18") (term "0,1,1,0")) + (rule "applyEq" (formula "18") (term "0,1,1") (ifseqformula "1")) + (rule "inEqSimp_commuteGeq" (formula "18") (term "1,1")) + (rule "applyEq" (formula "18") (term "0,2,1") (ifseqformula "1")) + (rule "applyEq" (formula "5") (term "0,2,0") (ifseqformula "1")) + (rule "applyEq" (formula "4") (term "1,1") (ifseqformula "1")) + (rule "polySimp_addComm0" (formula "4") (term "1")) + (rule "inEqSimp_sepPosMonomial1" (formula "2")) + (rule "polySimp_mulComm0" (formula "2") (term "1")) + (rule "polySimp_rightDist" (formula "2") (term "1")) + (rule "polySimp_mulComm0" (formula "2") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "2") (term "0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "3")) + (rule "polySimp_mulComm0" (formula "3") (term "1")) + (rule "polySimp_rightDist" (formula "3") (term "1")) + (rule "polySimp_rightDist" (formula "3") (term "0,1")) + (rule "mul_literals" (formula "3") (term "0,0,1")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,0,1")) + (rule "inEqSimp_sepPosMonomial1" (formula "18") (term "1,1,0")) + (rule "polySimp_mulComm0" (formula "18") (term "1,1,1,0")) + (rule "polySimp_rightDist" (formula "18") (term "1,1,1,0")) + (rule "mul_literals" (formula "18") (term "0,1,1,1,0")) + (rule "polySimp_mulLiterals" (formula "18") (term "1,1,1,1,0")) + (rule "polySimp_elimOne" (formula "18") (term "1,1,1,1,0")) + (rule "inEqSimp_exactShadow3" (formula "6") (ifseqformula "3")) + (rule "polySimp_rightDist" (formula "6") (term "0,0")) + (rule "mul_literals" (formula "6") (term "0,0,0")) + (rule "polySimp_addAssoc" (formula "6") (term "0")) + (rule "polySimp_addComm1" (formula "6") (term "0,0")) + (rule "polySimp_pullOutFactor0b" (formula "6") (term "0")) + (rule "add_literals" (formula "6") (term "1,1,0")) + (rule "polySimp_addAssoc" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "0,0,0")) + (rule "add_zero_left" (formula "6") (term "0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "6")) + (rule "polySimp_mulLiterals" (formula "6") (term "0")) + (rule "elimGcdLeq_antec" (formula "6") (inst "elimGcd=Z(2(#))") (inst "elimGcdLeftDiv=low") (inst "elimGcdRightDiv=quotient_0")) + (rule "leq_literals" (formula "6") (term "0,0")) + (builtin "One Step Simplification" (formula "6")) + (rule "neg_literal" (formula "6") (term "0,0,0,0,0,0")) + (rule "mul_literals" (formula "6") (term "0,1,0,0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "6") (term "1,0,0")) + (rule "polySimp_pullOutFactor0b" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "1,1,0,0")) + (rule "times_zero_1" (formula "6") (term "1,0,0")) + (rule "add_zero_right" (formula "6") (term "0,0")) + (rule "polySimp_mulComm0" (formula "6") (term "1,0,0,0")) + (rule "polySimp_pullOutFactor0b" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "1,1,0,0")) + (rule "times_zero_1" (formula "6") (term "1,0,0")) + (rule "add_literals" (formula "6") (term "0,0")) + (rule "qeq_literals" (formula "6") (term "0")) + (builtin "One Step Simplification" (formula "6")) + (rule "replace_known_left" (formula "19") (term "1,0,0") (ifseqformula "6")) + (builtin "One Step Simplification" (formula "19") (ifInst "" (formula "6"))) + (rule "inEqSimp_exactShadow3" (formula "13") (ifseqformula "6")) + (rule "mul_literals" (formula "13") (term "0,0")) + (rule "add_zero_left" (formula "13") (term "0")) + (rule "inEqSimp_contradEq7" (formula "20") (term "0,0") (ifseqformula "13")) + (rule "add_zero_left" (formula "20") (term "0,0,0,0")) + (rule "mul_literals" (formula "20") (term "0,0,0,0")) + (rule "leq_literals" (formula "20") (term "0,0,0")) + (builtin "One Step Simplification" (formula "20")) + (rule "inEqSimp_contradEq7" (formula "20") (term "2,1") (ifseqformula "13")) + (rule "add_zero_left" (formula "20") (term "0,0,2,1")) + (rule "mul_literals" (formula "20") (term "0,0,2,1")) + (rule "leq_literals" (formula "20") (term "0,2,1")) + (builtin "One Step Simplification" (formula "20")) + (rule "cut_direct" (formula "20") (term "0")) + (branch "CUT: up >= 1 + quotient_0 TRUE" + (builtin "One Step Simplification" (formula "21")) + (rule "inEqSimp_exactShadow3" (formula "1") (ifseqformula "4")) + (rule "polySimp_rightDist" (formula "1") (term "0,0")) + (rule "mul_literals" (formula "1") (term "0,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0")) + (rule "polySimp_addComm1" (formula "1") (term "0,0,0")) + (rule "add_literals" (formula "1") (term "0,0,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0,0")) + (rule "polySimp_pullOutFactor0" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "1") (term "0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "0")) + (rule "polySimp_elimOne" (formula "1") (term "0")) + (rule "nnf_ex2all" (formula "21")) + (rule "nnf_notAnd" (formula "1") (term "0")) + (rule "nnf_notAnd" (formula "1") (term "0,0")) + (rule "inEqSimp_notGeq" (formula "1") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0,0")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1,0,0,0")) + (rule "polySimp_elimOne" (formula "1") (term "1,1,0,0,0")) + (rule "inEqSimp_notLeq" (formula "1") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0,1,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0,1,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0,1,0,0")) + (rule "add_literals" (formula "1") (term "0,0,0,1,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "1") (term "1,1,0,0")) + (rule "allLeft" (formula "1") (inst "t=quotient_0:int")) + (rule "replace_known_left" (formula "1") (term "0,1") (ifseqformula "8")) + (builtin "One Step Simplification" (formula "1")) + (rule "inEqSimp_commuteGeq" (formula "1") (term "1")) + (rule "inEqSimp_homoInEq0" (formula "1") (term "0")) + (rule "polySimp_addComm1" (formula "1") (term "0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1") (term "0")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0")) + (rule "polySimp_rightDist" (formula "1") (term "1,0")) + (rule "mul_literals" (formula "1") (term "0,1,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1,0")) + (rule "polySimp_elimOne" (formula "1") (term "1,1,0")) + (rule "inEqSimp_contradInEq0" (formula "1") (term "0") (ifseqformula "9")) + (rule "inEqSimp_homoInEq1" (formula "1") (term "0,0")) + (rule "polySimp_pullOutFactor1b" (formula "1") (term "0,0,0")) + (rule "add_literals" (formula "1") (term "1,1,0,0,0")) + (rule "times_zero_1" (formula "1") (term "1,0,0,0")) + (rule "add_literals" (formula "1") (term "0,0,0")) + (rule "leq_literals" (formula "1") (term "0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "inEqSimp_contradInEq0" (formula "3") (ifseqformula "1")) + (rule "andLeft" (formula "3")) + (rule "inEqSimp_homoInEq1" (formula "3")) + (rule "polySimp_pullOutFactor1b" (formula "3") (term "0")) + (rule "add_literals" (formula "3") (term "1,1,0")) + (rule "times_zero_1" (formula "3") (term "1,0")) + (rule "add_literals" (formula "3") (term "0")) + (rule "leq_literals" (formula "3")) + (rule "closeFalse" (formula "3")) + ) + (branch "CUT: up >= 1 + quotient_0 FALSE" + (builtin "One Step Simplification" (formula "21")) + (rule "false_right" (formula "21")) + (rule "inEqSimp_geqRight" (formula "20")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "0,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1")) + (rule "polySimp_elimOne" (formula "1") (term "1")) + (rule "inEqSimp_exactShadow3" (formula "8") (ifseqformula "1")) + (rule "polySimp_rightDist" (formula "8") (term "0,0")) + (rule "mul_literals" (formula "8") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "8") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "8")) + (rule "polySimp_mulLiterals" (formula "8") (term "0")) + (rule "polySimp_elimOne" (formula "8") (term "0")) + (rule "inEqSimp_subsumption0" (formula "7") (ifseqformula "8")) + (rule "inEqSimp_homoInEq0" (formula "7") (term "0")) + (rule "polySimp_mulComm0" (formula "7") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "7") (term "1,0,0")) + (rule "mul_literals" (formula "7") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "7") (term "0,0")) + (rule "polySimp_addComm0" (formula "7") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "7") (term "0,0")) + (rule "add_literals" (formula "7") (term "1,1,0,0")) + (rule "times_zero_1" (formula "7") (term "1,0,0")) + (rule "add_literals" (formula "7") (term "0,0")) + (rule "qeq_literals" (formula "7") (term "0")) + (builtin "One Step Simplification" (formula "7")) + (rule "true_left" (formula "7")) + (rule "inEqSimp_exactShadow3" (formula "3") (ifseqformula "1")) + (rule "polySimp_rightDist" (formula "3") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "3") (term "1,0,0")) + (rule "polySimp_mulAssoc" (formula "3") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "3") (term "0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "3") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "3") (term "0")) + (rule "polySimp_pullOutFactor2" (formula "3") (term "0,0")) + (rule "add_literals" (formula "3") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "3")) + (rule "polySimp_mulLiterals" (formula "3") (term "1")) + (rule "polySimp_elimOne" (formula "3") (term "1")) + (rule "inEqSimp_contradInEq0" (formula "3") (ifseqformula "8")) + (rule "andLeft" (formula "3")) + (rule "inEqSimp_homoInEq1" (formula "3")) + (rule "polySimp_mulComm0" (formula "3") (term "1,0")) + (rule "polySimp_rightDist" (formula "3") (term "1,0")) + (rule "mul_literals" (formula "3") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "3") (term "0")) + (rule "polySimp_addComm0" (formula "3") (term "0,0")) + (rule "polySimp_pullOutFactor1b" (formula "3") (term "0")) + (rule "add_literals" (formula "3") (term "1,1,0")) + (rule "times_zero_1" (formula "3") (term "1,0")) + (rule "add_literals" (formula "3") (term "0")) + (rule "leq_literals" (formula "3")) + (rule "closeFalse" (formula "3")) + ) + ) + (branch "if b_1 false" + (builtin "One Step Simplification" (formula "15")) + (builtin "One Step Simplification" (formula "1")) + (rule "notLeft" (formula "1")) + (rule "elim_double_block_2" (formula "15") (term "1")) + (rule "jdiv_axiom" (formula "12") (term "1,0,2,0")) + (rule "eqSymm" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "0,0,2,0")) + (rule "polySimp_rightDist" (formula "1") (term "0,0,2,0")) + (rule "polySimp_mulAssoc" (formula "1") (term "0,0,0,2,0")) + (rule "polySimp_mulComm0" (formula "1") (term "0,0,0,0,2,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "0,0,0,2,0")) + (rule "polySimp_elimOne" (formula "1") (term "0,0,0,2,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "1") (term "1,0,0")) + (rule "inEqSimp_subsumption1" (formula "1") (term "0,0") (ifseqformula "2")) + (rule "inEqSimp_homoInEq0" (formula "1") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "1") (term "0,0,0,0")) + (rule "add_literals" (formula "1") (term "1,1,0,0,0,0")) + (rule "times_zero_1" (formula "1") (term "1,0,0,0,0")) + (rule "add_literals" (formula "1") (term "0,0,0,0")) + (rule "qeq_literals" (formula "1") (term "0,0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "eqSymm" (formula "1")) + (rule "applyEq" (formula "16") (term "1,0,1,0") (ifseqformula "1")) + (rule "applyEq" (formula "13") (term "1,0,2,0") (ifseqformula "1")) + (rule "polyDiv_pullOut" (formula "16") (term "1,0,1,0") (inst "polyDivCoeff=mul(low, Z(neglit(1(#))))")) + (rule "equal_literals" (formula "16") (term "0,1,0,1,0")) + (builtin "One Step Simplification" (formula "16")) + (rule "polySimp_mulLiterals" (formula "16") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "16") (term "1,0,0,1,0,1,0")) + (rule "polySimp_addComm0" (formula "16") (term "1,0,1,0")) + (rule "polySimp_addComm1" (formula "16") (term "0,1,1,0,1,0")) + (rule "polySimp_pullOutFactor0" (formula "16") (term "0,0,1,1,0,1,0")) + (rule "add_literals" (formula "16") (term "1,0,0,1,1,0,1,0")) + (rule "polySimp_elimOne" (formula "16") (term "0,0,1,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "16") (term "0,1,0")) + (rule "polySimp_pullOutFactor1" (formula "16") (term "0,0,1,0")) + (rule "add_literals" (formula "16") (term "1,0,0,1,0")) + (rule "times_zero_1" (formula "16") (term "0,0,1,0")) + (rule "add_zero_left" (formula "16") (term "0,1,0")) + (rule "polyDiv_pullOut" (formula "1") (term "1") (inst "polyDivCoeff=mul(low, Z(neglit(1(#))))")) + (rule "equal_literals" (formula "1") (term "0,1")) + (builtin "One Step Simplification" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,0,0,1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,0,0,1")) + (rule "polySimp_addComm0" (formula "1") (term "1")) + (rule "polySimp_addComm1" (formula "1") (term "0,1,1")) + (rule "polySimp_pullOutFactor0" (formula "1") (term "0,0,1,1")) + (rule "add_literals" (formula "1") (term "1,0,0,1,1")) + (rule "polySimp_elimOne" (formula "1") (term "0,0,1,1")) + (rule "polyDiv_pullOut" (formula "13") (term "1,0,2,0") (inst "polyDivCoeff=mul(low, Z(neglit(1(#))))")) + (rule "equal_literals" (formula "13") (term "0,1,0,2,0")) + (builtin "One Step Simplification" (formula "13")) + (rule "polySimp_mulLiterals" (formula "13") (term "1,0,0,1,0,2,0")) + (rule "polySimp_mulLiterals" (formula "13") (term "1,0,0,1,0,2,0")) + (rule "polySimp_addComm0" (formula "13") (term "1,0,2,0")) + (rule "polySimp_addComm1" (formula "13") (term "0,1,1,0,2,0")) + (rule "polySimp_pullOutFactor0" (formula "13") (term "0,0,1,1,0,2,0")) + (rule "add_literals" (formula "13") (term "1,0,0,1,1,0,2,0")) + (rule "polySimp_elimOne" (formula "13") (term "0,0,1,1,0,2,0")) + (rule "polySimp_addAssoc" (formula "13") (term "0,2,0")) + (rule "polySimp_pullOutFactor1" (formula "13") (term "0,0,2,0")) + (rule "add_literals" (formula "13") (term "1,0,0,2,0")) + (rule "times_zero_1" (formula "13") (term "0,0,2,0")) + (rule "add_zero_left" (formula "13") (term "0,2,0")) + (rule "ifElseUnfold" (formula "16") (term "1") (inst "#boolv=b_2")) + (rule "variableDeclaration" (formula "16") (term "1") (newnames "b_2")) + (rule "compound_less_than_comparison_2" (formula "16") (term "1") (inst "#v0=i_5") (inst "#v1=i_6")) + (rule "variableDeclarationAssign" (formula "16") (term "1")) + (rule "variableDeclaration" (formula "16") (term "1") (newnames "i_5")) + (rule "assignment" (formula "16") (term "1")) + (builtin "One Step Simplification" (formula "16")) + (rule "variableDeclarationAssign" (formula "16") (term "1")) + (rule "variableDeclaration" (formula "16") (term "1") (newnames "i_6")) + (rule "assignment_array2" (formula "16")) + (branch "Normal Execution (_a != null)" + (builtin "One Step Simplification" (formula "16")) + (rule "less_than_comparison_simple" (formula "16") (term "1")) + (builtin "One Step Simplification" (formula "16")) + (rule "inEqSimp_ltToLeq" (formula "16") (term "0,0,1,0")) + (rule "polySimp_mulComm0" (formula "16") (term "1,0,0,0,0,1,0")) + (rule "polySimp_addComm1" (formula "16") (term "0,0,0,1,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "16") (term "0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "16") (term "0,0,0,1,0")) + (rule "polySimp_elimOne" (formula "16") (term "0,0,0,1,0")) + (rule "div_axiom" (formula "1") (term "1,1") (inst "quotient=quotient_0")) + (rule "equal_literals" (formula "1") (term "0")) + (builtin "One Step Simplification" (formula "1")) + (rule "qeq_literals" (formula "1") (term "0,1")) + (builtin "One Step Simplification" (formula "1")) + (rule "mul_literals" (formula "1") (term "1,1,1")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "1")) + (rule "polySimp_addAssoc" (formula "3") (term "0,1")) + (rule "polySimp_addComm1" (formula "3") (term "1")) + (rule "polySimp_addComm1" (formula "3") (term "0,1")) + (rule "add_literals" (formula "3") (term "0,0,1")) + (rule "inEqSimp_homoInEq0" (formula "2")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,0")) + (rule "polySimp_addComm1" (formula "2") (term "0")) + (rule "polySimp_addComm0" (formula "2") (term "0,0")) + (rule "inEqSimp_homoInEq1" (formula "3")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,0")) + (rule "polySimp_addComm1" (formula "3") (term "0")) + (rule "polySimp_addComm1" (formula "3") (term "0,0")) + (rule "applyEq" (formula "19") (term "0,1,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "19") (term "0,2,0,0,0,1,0") (ifseqformula "1")) + (rule "applyEq" (formula "16") (term "0,2,0") (ifseqformula "1")) + (rule "applyEq" (formula "4") (term "1,1") (ifseqformula "1")) + (rule "polySimp_addComm0" (formula "4") (term "1")) + (rule "inEqSimp_sepPosMonomial1" (formula "2")) + (rule "polySimp_mulComm0" (formula "2") (term "1")) + (rule "polySimp_rightDist" (formula "2") (term "1")) + (rule "polySimp_mulComm0" (formula "2") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "2") (term "0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "3")) + (rule "polySimp_mulComm0" (formula "3") (term "1")) + (rule "polySimp_rightDist" (formula "3") (term "1")) + (rule "polySimp_rightDist" (formula "3") (term "0,1")) + (rule "mul_literals" (formula "3") (term "0,0,1")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,0,1")) + (rule "inEqSimp_exactShadow3" (formula "5") (ifseqformula "3")) + (rule "polySimp_rightDist" (formula "5") (term "0,0")) + (rule "mul_literals" (formula "5") (term "0,0,0")) + (rule "polySimp_addAssoc" (formula "5") (term "0")) + (rule "polySimp_addComm1" (formula "5") (term "0,0")) + (rule "polySimp_pullOutFactor0b" (formula "5") (term "0")) + (rule "add_literals" (formula "5") (term "1,1,0")) + (rule "polySimp_addAssoc" (formula "5") (term "0,0")) + (rule "add_literals" (formula "5") (term "0,0,0")) + (rule "add_zero_left" (formula "5") (term "0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "5")) + (rule "polySimp_mulLiterals" (formula "5") (term "0")) + (rule "elimGcdLeq_antec" (formula "5") (inst "elimGcd=Z(2(#))") (inst "elimGcdLeftDiv=low") (inst "elimGcdRightDiv=quotient_0")) + (rule "leq_literals" (formula "5") (term "0,0")) + (builtin "One Step Simplification" (formula "5")) + (rule "neg_literal" (formula "5") (term "0,0,0,0,0,0")) + (rule "mul_literals" (formula "5") (term "0,1,0,0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "5") (term "1,0,0")) + (rule "polySimp_pullOutFactor0b" (formula "5") (term "0,0")) + (rule "add_literals" (formula "5") (term "1,1,0,0")) + (rule "times_zero_1" (formula "5") (term "1,0,0")) + (rule "add_zero_right" (formula "5") (term "0,0")) + (rule "polySimp_mulComm0" (formula "5") (term "1,0,0,0")) + (rule "polySimp_pullOutFactor0b" (formula "5") (term "0,0")) + (rule "add_literals" (formula "5") (term "1,1,0,0")) + (rule "times_zero_1" (formula "5") (term "1,0,0")) + (rule "add_literals" (formula "5") (term "0,0")) + (rule "qeq_literals" (formula "5") (term "0")) + (builtin "One Step Simplification" (formula "5")) + (rule "inEqSimp_exactShadow3" (formula "12") (ifseqformula "5")) + (rule "mul_literals" (formula "12") (term "0,0")) + (rule "add_zero_left" (formula "12") (term "0")) + (rule "ifElseSplit" (formula "21")) + (branch "if b_2 true" + (builtin "One Step Simplification" (formula "22")) + (builtin "One Step Simplification" (formula "1")) + (rule "inEqSimp_contradEq7" (formula "19") (ifseqformula "1")) + (rule "polySimp_mulComm0" (formula "19") (term "1,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "19") (term "0,0")) + (rule "add_literals" (formula "19") (term "1,1,0,0")) + (rule "times_zero_1" (formula "19") (term "1,0,0")) + (rule "add_literals" (formula "19") (term "0,0")) + (rule "leq_literals" (formula "19") (term "0")) + (builtin "One Step Simplification" (formula "19")) + (rule "false_right" (formula "19")) + (rule "elim_double_block_2" (formula "21") (term "1")) + (rule "returnUnfold" (formula "21") (term "1") (inst "#v0=i_7")) + (rule "variableDeclarationAssign" (formula "21") (term "1")) + (rule "variableDeclaration" (formula "21") (term "1") (newnames "i_7")) + (builtin "Use Operation Contract" (formula "21") (newnames "heapBefore_binSearchR_0,result_binSearchR_0,exc_0,heapAfter_binSearchR,anon_heap_binSearchR") (contract "BinSearch[BinSearch::binSearchR([I,int,int,int)].JML normal_behavior operation contract.0") (modality "diamond")) + (branch "Post (binSearchR)" + (builtin "One Step Simplification" (formula "23")) + (builtin "One Step Simplification" (formula "20")) + (rule "andLeft" (formula "20")) + (rule "andLeft" (formula "21")) + (rule "andLeft" (formula "22")) + (rule "andLeft" (formula "22")) + (rule "andLeft" (formula "23")) + (rule "inEqSimp_ltToLeq" (formula "22") (term "1,1")) + (rule "polySimp_mulComm0" (formula "22") (term "1,0,0,1,1")) + (rule "inEqSimp_ltToLeq" (formula "23") (term "1,0,0,0")) + (rule "polySimp_mulComm0" (formula "23") (term "1,0,0,1,0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "22") (term "0,1")) + (rule "inEqSimp_commuteLeq" (formula "23") (term "0,0,0,0")) + (rule "assignment" (formula "27") (term "1")) + (builtin "One Step Simplification" (formula "27")) + (rule "blockReturn" (formula "27") (term "1")) + (rule "inEqSimp_sepPosMonomial0" (formula "22") (term "1,1")) + (rule "polySimp_mulComm0" (formula "22") (term "1,1,1")) + (rule "polySimp_rightDist" (formula "22") (term "1,1,1")) + (rule "mul_literals" (formula "22") (term "0,1,1,1")) + (rule "polySimp_mulLiterals" (formula "22") (term "1,1,1,1")) + (rule "polySimp_elimOne" (formula "22") (term "1,1,1,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "23") (term "1,0,0,0")) + (rule "polySimp_mulComm0" (formula "23") (term "1,1,0,0,0")) + (rule "polySimp_rightDist" (formula "23") (term "1,1,0,0,0")) + (rule "mul_literals" (formula "23") (term "0,1,1,0,0,0")) + (rule "polySimp_mulLiterals" (formula "23") (term "1,1,1,0,0,0")) + (rule "polySimp_elimOne" (formula "23") (term "1,1,1,0,0,0")) + (rule "pullOutSelect" (formula "23") (term "0,1,1") (inst "selectSK=arr_0:int")) + (rule "simplifySelectOfAnonEQ" (formula "23") (ifseqformula "20")) + (builtin "One Step Simplification" (formula "23") (ifInst "" (formula "27")) (ifInst "" (formula "11"))) + (rule "applyEqReverse" (formula "24") (term "0,1,1") (ifseqformula "23")) + (rule "hideAuxiliaryEq" (formula "23")) + (rule "cnf_rightDist" (formula "22")) + (rule "andLeft" (formula "22")) + (rule "commute_or" (formula "23")) + (rule "methodCallReturn" (formula "28") (term "1")) + (rule "assignment" (formula "28") (term "1")) + (builtin "One Step Simplification" (formula "28")) + (rule "methodCallEmpty" (formula "28") (term "1")) + (rule "tryEmpty" (formula "28") (term "1")) + (rule "emptyModality" (formula "28") (term "1")) + (builtin "One Step Simplification" (formula "28") (ifInst "" (formula "25"))) + (rule "replaceKnownSelect_taclet0001000_0" (formula "28") (term "0,1,1,1,0")) + (rule "replaceKnownAuxiliaryConstant_taclet0001000_1" (formula "28") (term "0,1,1,1,0")) + (rule "eqSymm" (formula "28") (term "1,0,0,1")) + (rule "Class_invariant_axiom_for_BinSearch" (formula "18") (ifseqformula "10")) + (rule "true_left" (formula "18")) + (rule "Class_invariant_axiom_for_BinSearch" (formula "24") (ifseqformula "10")) + (rule "true_left" (formula "24")) + (rule "cnf_rightDist" (formula "26") (term "0,0")) + (rule "replace_known_left" (formula "26") (term "0,0,0") (ifseqformula "21")) + (builtin "One Step Simplification" (formula "26")) + (rule "commute_or" (formula "26") (term "0,0")) + (rule "ifthenelse_split_for" (formula "23")) + (branch "exists int idx; ( idx >= low & idx <= -1 + quotient_0 & a[idx]@heapAfter_binSearchR = v) TRUE" + (rule "andLeft" (formula "24")) + (rule "exLeft" (formula "23") (inst "sk=idx_0:int")) + (rule "andLeft" (formula "23")) + (rule "andLeft" (formula "23")) + (rule "replace_known_left" (formula "21") (term "1") (ifseqformula "26")) + (builtin "One Step Simplification" (formula "21")) + (rule "true_left" (formula "21")) + (rule "replace_known_left" (formula "29") (term "0,1,1,0") (ifseqformula "25")) + (builtin "One Step Simplification" (formula "29") (ifInst "" (formula "26"))) + (rule "inEqSimp_commuteGeq" (formula "22")) + (rule "pullOutSelect" (formula "24") (term "0") (inst "selectSK=arr_1:int")) + (rule "simplifySelectOfAnonEQ" (formula "24") (ifseqformula "19")) + (builtin "One Step Simplification" (formula "24") (ifInst "" (formula "29")) (ifInst "" (formula "11"))) + (rule "applyEqReverse" (formula "25") (term "0") (ifseqformula "24")) + (rule "hideAuxiliaryEq" (formula "24")) + (rule "inEqSimp_exactShadow3" (formula "14") (ifseqformula "22")) + (rule "mul_literals" (formula "14") (term "0,0")) + (rule "add_zero_left" (formula "14") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "14") (ifseqformula "24")) + (rule "mul_literals" (formula "14") (term "0,0")) + (rule "add_zero_left" (formula "14") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "14")) + (rule "mul_literals" (formula "14") (term "1")) + (rule "inEqSimp_subsumption1" (formula "13") (ifseqformula "14")) + (rule "leq_literals" (formula "13") (term "0")) + (builtin "One Step Simplification" (formula "13")) + (rule "true_left" (formula "13")) + (rule "ifthenelse_split_for" (formula "30") (term "1,0")) + (branch "exists int idx; ( idx >= low & idx <= -1 + up & a[idx]@heapAfter_binSearchR = v) TRUE" + (builtin "One Step Simplification" (formula "31")) + (rule "exLeft" (formula "1") (inst "sk=idx_1:int")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "1")) + (rule "inEqSimp_commuteGeq" (formula "1")) + (rule "inEqSimp_homoInEq0" (formula "2")) + (rule "polySimp_addComm1" (formula "2") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "2")) + (rule "polySimp_mulComm0" (formula "2") (term "1")) + (rule "polySimp_rightDist" (formula "2") (term "1")) + (rule "mul_literals" (formula "2") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,1")) + (rule "polySimp_elimOne" (formula "2") (term "1,1")) + (rule "pullOutSelect" (formula "3") (term "0") (inst "selectSK=arr_2:int")) + (rule "simplifySelectOfAnonEQ" (formula "3") (ifseqformula "24")) + (builtin "One Step Simplification" (formula "3") (ifInst "" (formula "33")) (ifInst "" (formula "15"))) + (rule "applyEqReverse" (formula "4") (term "0") (ifseqformula "3")) + (rule "hideAuxiliaryEq" (formula "3")) + (rule "inEqSimp_exactShadow3" (formula "18") (ifseqformula "1")) + (rule "mul_literals" (formula "18") (term "0,0")) + (rule "add_zero_left" (formula "18") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "2") (ifseqformula "7")) + (rule "polySimp_rightDist" (formula "2") (term "0,0")) + (rule "mul_literals" (formula "2") (term "0,0,0")) + (rule "polySimp_addAssoc" (formula "2") (term "0")) + (rule "polySimp_addComm1" (formula "2") (term "0,0")) + (rule "polySimp_addAssoc" (formula "2") (term "0,0,0")) + (rule "add_literals" (formula "2") (term "0,0,0,0")) + (rule "add_zero_left" (formula "2") (term "0,0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "2")) + (rule "polySimp_mulLiterals" (formula "2") (term "0")) + (rule "polySimp_elimOne" (formula "2") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "20") (ifseqformula "2")) + (rule "mul_literals" (formula "20") (term "0,0")) + (rule "add_zero_left" (formula "20") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "20")) + (rule "polySimp_mulLiterals" (formula "20") (term "0")) + (rule "polySimp_elimOne" (formula "20") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "19") (ifseqformula "20")) + (rule "mul_literals" (formula "19") (term "0,0")) + (rule "add_zero_left" (formula "19") (term "0")) + (rule "inEqSimp_subsumption6" (formula "19") (ifseqformula "17")) + (rule "greater_literals" (formula "19") (term "0,0")) + (builtin "One Step Simplification" (formula "19")) + (rule "mul_literals" (formula "19") (term "1,0")) + (rule "leq_literals" (formula "19") (term "0")) + (builtin "One Step Simplification" (formula "19")) + (rule "true_left" (formula "19")) + (rule "andRight" (formula "36")) + (branch + (rule "orRight" (formula "36")) + (rule "replace_known_right" (formula "28") (term "0") (ifseqformula "36")) + (builtin "One Step Simplification" (formula "28")) + (rule "inEqSimp_geqRight" (formula "37")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "0,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1")) + (rule "polySimp_elimOne" (formula "1") (term "1")) + (rule "inEqSimp_exactShadow3" (formula "33") (ifseqformula "29")) + (rule "polySimp_mulComm0" (formula "33") (term "0,0")) + (rule "polySimp_addComm0" (formula "33") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "33")) + (rule "polySimp_mulLiterals" (formula "33") (term "0")) + (rule "polySimp_elimOne" (formula "33") (term "0")) + (rule "inEqSimp_subsumption0" (formula "11") (ifseqformula "33")) + (rule "inEqSimp_homoInEq0" (formula "11") (term "0")) + (rule "polySimp_mulComm0" (formula "11") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "11") (term "1,0,0")) + (rule "mul_literals" (formula "11") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "11") (term "0,0")) + (rule "polySimp_addComm0" (formula "11") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "11") (term "0,0")) + (rule "add_literals" (formula "11") (term "1,1,0,0")) + (rule "times_zero_1" (formula "11") (term "1,0,0")) + (rule "add_literals" (formula "11") (term "0,0")) + (rule "qeq_literals" (formula "11") (term "0")) + (builtin "One Step Simplification" (formula "11")) + (rule "true_left" (formula "11")) + (rule "inEqSimp_exactShadow3" (formula "4") (ifseqformula "1")) + (rule "polySimp_rightDist" (formula "4") (term "0,0")) + (rule "mul_literals" (formula "4") (term "0,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "4")) + (rule "polySimp_mulComm0" (formula "4") (term "1")) + (rule "polySimp_rightDist" (formula "4") (term "1")) + (rule "mul_literals" (formula "4") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "4") (term "1,1")) + (rule "polySimp_elimOne" (formula "4") (term "1,1")) + (rule "inEqSimp_exactShadow3" (formula "12") (ifseqformula "1")) + (rule "polySimp_rightDist" (formula "12") (term "0,0")) + (rule "mul_literals" (formula "12") (term "0,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "12")) + (rule "polySimp_mulComm0" (formula "12") (term "1")) + (rule "polySimp_rightDist" (formula "12") (term "1")) + (rule "mul_literals" (formula "12") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "12") (term "1,1")) + (rule "polySimp_elimOne" (formula "12") (term "1,1")) + (rule "inEqSimp_subsumption1" (formula "35") (ifseqformula "12")) + (rule "inEqSimp_homoInEq0" (formula "35") (term "0")) + (rule "polySimp_pullOutFactor1b" (formula "35") (term "0,0")) + (rule "add_literals" (formula "35") (term "1,1,0,0")) + (rule "times_zero_1" (formula "35") (term "1,0,0")) + (rule "add_literals" (formula "35") (term "0,0")) + (rule "qeq_literals" (formula "35") (term "0")) + (builtin "One Step Simplification" (formula "35")) + (rule "true_left" (formula "35")) + (rule "inEqSimp_exactShadow3" (formula "9") (ifseqformula "1")) + (rule "polySimp_rightDist" (formula "9") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "9") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "9") (term "1,0,0")) + (rule "polySimp_mulAssoc" (formula "9") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "9") (term "0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "9") (term "0,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "9")) + (rule "polySimp_mulComm0" (formula "9") (term "1")) + (rule "polySimp_rightDist" (formula "9") (term "1")) + (rule "polySimp_mulComm0" (formula "9") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "9") (term "0,1")) + (rule "inEqSimp_exactShadow3" (formula "24") (ifseqformula "35")) + (rule "mul_literals" (formula "24") (term "0,0")) + (rule "add_zero_left" (formula "24") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "24")) + (rule "mul_literals" (formula "24") (term "1")) + (rule "inEqSimp_exactShadow3" (formula "4") (ifseqformula "31")) + (rule "polySimp_rightDist" (formula "4") (term "0,0")) + (rule "mul_literals" (formula "4") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "4") (term "0")) + (rule "polySimp_addAssoc" (formula "4") (term "0,0")) + (rule "add_literals" (formula "4") (term "0,0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "4")) + (rule "polySimp_mulLiterals" (formula "4") (term "0")) + (rule "polySimp_elimOne" (formula "4") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "14") (ifseqformula "32")) + (rule "polySimp_rightDist" (formula "14") (term "0,0")) + (rule "mul_literals" (formula "14") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "14") (term "0")) + (rule "polySimp_addAssoc" (formula "14") (term "0,0")) + (rule "add_literals" (formula "14") (term "0,0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "14")) + (rule "polySimp_mulLiterals" (formula "14") (term "0")) + (rule "polySimp_elimOne" (formula "14") (term "0")) + (rule "inEqSimp_subsumption0" (formula "37") (ifseqformula "14")) + (rule "inEqSimp_homoInEq0" (formula "37") (term "0")) + (rule "polySimp_mulComm0" (formula "37") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "37") (term "1,0,0")) + (rule "mul_literals" (formula "37") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "37") (term "0,0")) + (rule "polySimp_addComm1" (formula "37") (term "0,0,0")) + (rule "add_literals" (formula "37") (term "0,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "37") (term "0,0")) + (rule "add_literals" (formula "37") (term "1,1,0,0")) + (rule "times_zero_1" (formula "37") (term "1,0,0")) + (rule "add_literals" (formula "37") (term "0,0")) + (rule "qeq_literals" (formula "37") (term "0")) + (builtin "One Step Simplification" (formula "37")) + (rule "true_left" (formula "37")) + (rule "inEqSimp_exactShadow3" (formula "10") (ifseqformula "33")) + (rule "polySimp_rightDist" (formula "10") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "10") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "10") (term "1,0,0")) + (rule "polySimp_mulAssoc" (formula "10") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "10") (term "0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "10") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "10") (term "0")) + (rule "polySimp_addAssoc" (formula "10") (term "0,0")) + (rule "polySimp_addComm0" (formula "10") (term "0,0,0")) + (rule "polySimp_pullOutFactor2b" (formula "10") (term "0,0")) + (rule "add_literals" (formula "10") (term "1,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "10")) + (rule "polySimp_mulComm0" (formula "10") (term "1")) + (rule "polySimp_rightDist" (formula "10") (term "1")) + (rule "mul_literals" (formula "10") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "10") (term "1,1")) + (rule "polySimp_elimOne" (formula "10") (term "1,1")) + (rule "inEqSimp_contradInEq0" (formula "10") (ifseqformula "15")) + (rule "andLeft" (formula "10")) + (rule "inEqSimp_homoInEq1" (formula "10")) + (rule "polySimp_mulComm0" (formula "10") (term "1,0")) + (rule "polySimp_rightDist" (formula "10") (term "1,0")) + (rule "mul_literals" (formula "10") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "10") (term "0")) + (rule "polySimp_addComm1" (formula "10") (term "0,0")) + (rule "add_literals" (formula "10") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "10") (term "0")) + (rule "add_literals" (formula "10") (term "1,1,0")) + (rule "times_zero_1" (formula "10") (term "1,0")) + (rule "add_literals" (formula "10") (term "0")) + (rule "leq_literals" (formula "10")) + (rule "closeFalse" (formula "10")) + ) + (branch + (rule "allRight" (formula "36") (inst "sk=f_0:Field")) + (rule "allRight" (formula "36") (inst "sk=o_0:java.lang.Object")) + (rule "orRight" (formula "36")) + (rule "pullOutSelect" (formula "37") (term "0") (inst "selectSK=f_0_0:any")) + (rule "simplifySelectOfAnonEQ" (formula "1") (ifseqformula "27")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "37"))) + (rule "applyEqReverse" (formula "38") (term "0") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "38")) + (rule "closeTrue" (formula "38")) + ) + ) + (branch "exists int idx; ( idx >= low & idx <= -1 + up & a[idx]@heapAfter_binSearchR = v) FALSE" + (rule "nnf_ex2all" (formula "30")) + (rule "nnf_notAnd" (formula "1") (term "0")) + (rule "nnf_notAnd" (formula "1") (term "0,0")) + (rule "inEqSimp_notGeq" (formula "1") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0,0")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1,0,0,0")) + (rule "polySimp_elimOne" (formula "1") (term "1,1,0,0,0")) + (rule "inEqSimp_notLeq" (formula "1") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0,1,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0,1,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0,1,0,0")) + (rule "add_literals" (formula "1") (term "0,0,0,1,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "1") (term "1,1,0,0")) + (rule "commute_and" (formula "31") (term "0")) + (rule "cut_direct" (formula "23") (term "1")) + (branch "CUT: result_binSearchR_0 <= -1 + quotient_0 TRUE" + (builtin "One Step Simplification" (formula "24")) + (rule "true_left" (formula "24")) + (rule "inEqSimp_exactShadow3" (formula "27") (ifseqformula "23")) + (rule "polySimp_mulComm0" (formula "27") (term "0,0")) + (rule "polySimp_addComm0" (formula "27") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "27")) + (rule "polySimp_mulLiterals" (formula "27") (term "0")) + (rule "polySimp_elimOne" (formula "27") (term "0")) + (rule "inEqSimp_subsumption0" (formula "7") (ifseqformula "27")) + (rule "inEqSimp_homoInEq0" (formula "7") (term "0")) + (rule "polySimp_mulComm0" (formula "7") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "7") (term "1,0,0")) + (rule "mul_literals" (formula "7") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "7") (term "0,0")) + (rule "polySimp_addComm0" (formula "7") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "7") (term "0,0")) + (rule "add_literals" (formula "7") (term "1,1,0,0")) + (rule "times_zero_1" (formula "7") (term "1,0,0")) + (rule "add_literals" (formula "7") (term "0,0")) + (rule "qeq_literals" (formula "7") (term "0")) + (builtin "One Step Simplification" (formula "7")) + (rule "true_left" (formula "7")) + (rule "inEqSimp_exactShadow3" (formula "15") (ifseqformula "26")) + (rule "mul_literals" (formula "15") (term "0,0")) + (rule "add_zero_left" (formula "15") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "15")) + (rule "mul_literals" (formula "15") (term "1")) + (rule "cut_direct" (formula "31") (term "0,0")) + (branch "CUT: result_binSearchR_0 = -1 TRUE" + (builtin "One Step Simplification" (formula "32") (ifInst "" (formula "1"))) + (rule "allRight" (formula "32") (inst "sk=f_0:Field")) + (rule "allRight" (formula "32") (inst "sk=o_0:java.lang.Object")) + (rule "orRight" (formula "32")) + (rule "applyEq" (formula "28") (term "0") (ifseqformula "1")) + (rule "inEqSimp_commuteGeq" (formula "28")) + (rule "applyEq" (formula "23") (term "0") (ifseqformula "1")) + (rule "inEqSimp_homoInEq0" (formula "23")) + (rule "mul_literals" (formula "23") (term "1,0")) + (rule "polySimp_addComm1" (formula "23") (term "0")) + (rule "add_literals" (formula "23") (term "0,0")) + (rule "add_zero_left" (formula "23") (term "0")) + (rule "applyEq" (formula "29") (term "0,2,0") (ifseqformula "1")) + (rule "inEqSimp_contradInEq0" (formula "16") (ifseqformula "28")) + (rule "qeq_literals" (formula "16") (term "0")) + (builtin "One Step Simplification" (formula "16")) + (rule "closeFalse" (formula "16")) + ) + (branch "CUT: result_binSearchR_0 = -1 FALSE" + (builtin "One Step Simplification" (formula "32") (ifInst "" (formula "31"))) + (rule "false_right" (formula "32")) + (rule "allLeft" (formula "18") (inst "t=result_binSearchR_0:int")) + (rule "inEqSimp_commuteGeq" (formula "18") (term "1,0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "18") (term "1,0,0")) + (rule "inEqSimp_commuteGeq" (formula "18") (term "1,0")) + (rule "applyEq" (formula "18") (term "1,1,0") (ifseqformula "29")) + (rule "commute_or_2" (formula "18") (term "0,0")) + (rule "commute_or_2" (formula "18") (term "0")) + (rule "cut_direct" (formula "18") (term "1,0")) + (branch "CUT: a.length <= result_binSearchR_0 TRUE" + (builtin "One Step Simplification" (formula "19")) + (rule "true_left" (formula "19")) + (rule "inEqSimp_exactShadow3" (formula "16") (ifseqformula "18")) + (rule "mul_literals" (formula "16") (term "0,0")) + (rule "add_zero_left" (formula "16") (term "0")) + (rule "inEqSimp_contradEq7" (formula "33") (ifseqformula "16")) + (rule "add_zero_left" (formula "33") (term "0,0")) + (rule "mul_literals" (formula "33") (term "0,0")) + (rule "leq_literals" (formula "33") (term "0")) + (builtin "One Step Simplification" (formula "33")) + (rule "false_right" (formula "33")) + (rule "inEqSimp_exactShadow3" (formula "18") (ifseqformula "19")) + (rule "polySimp_mulComm0" (formula "18") (term "0,0")) + (rule "polySimp_addComm0" (formula "18") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "18")) + (rule "polySimp_mulLiterals" (formula "18") (term "0")) + (rule "polySimp_elimOne" (formula "18") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "16") (ifseqformula "25")) + (rule "mul_literals" (formula "16") (term "0,0")) + (rule "add_zero_left" (formula "16") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "16")) + (rule "mul_literals" (formula "16") (term "1")) + (rule "inEqSimp_exactShadow3" (formula "7") (ifseqformula "18")) + (rule "polySimp_rightDist" (formula "7") (term "0,0")) + (rule "mul_literals" (formula "7") (term "0,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "7")) + (rule "polySimp_mulComm0" (formula "7") (term "1")) + (rule "polySimp_rightDist" (formula "7") (term "1")) + (rule "mul_literals" (formula "7") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "7") (term "1,1")) + (rule "polySimp_elimOne" (formula "7") (term "1,1")) + (rule "inEqSimp_subsumption1" (formula "31") (ifseqformula "7")) + (rule "inEqSimp_homoInEq0" (formula "31") (term "0")) + (rule "polySimp_pullOutFactor1b" (formula "31") (term "0,0")) + (rule "add_literals" (formula "31") (term "1,1,0,0")) + (rule "times_zero_1" (formula "31") (term "1,0,0")) + (rule "add_literals" (formula "31") (term "0,0")) + (rule "qeq_literals" (formula "31") (term "0")) + (builtin "One Step Simplification" (formula "31")) + (rule "true_left" (formula "31")) + (rule "inEqSimp_exactShadow3" (formula "4") (ifseqformula "19")) + (rule "polySimp_rightDist" (formula "4") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "4") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "4") (term "1,0,0")) + (rule "polySimp_mulAssoc" (formula "4") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "4") (term "0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "4") (term "0,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "4")) + (rule "polySimp_mulComm0" (formula "4") (term "1")) + (rule "polySimp_rightDist" (formula "4") (term "1")) + (rule "polySimp_mulComm0" (formula "4") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "4") (term "0,1")) + (rule "inEqSimp_exactShadow3" (formula "8") (ifseqformula "27")) + (rule "polySimp_rightDist" (formula "8") (term "0,0")) + (rule "mul_literals" (formula "8") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "8") (term "0")) + (rule "polySimp_addAssoc" (formula "8") (term "0,0")) + (rule "add_literals" (formula "8") (term "0,0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "8")) + (rule "polySimp_mulLiterals" (formula "8") (term "0")) + (rule "polySimp_elimOne" (formula "8") (term "0")) + (rule "inEqSimp_subsumption0" (formula "32") (ifseqformula "8")) + (rule "inEqSimp_homoInEq0" (formula "32") (term "0")) + (rule "polySimp_mulComm0" (formula "32") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "32") (term "1,0,0")) + (rule "mul_literals" (formula "32") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "32") (term "0,0")) + (rule "polySimp_addComm1" (formula "32") (term "0,0,0")) + (rule "add_literals" (formula "32") (term "0,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "32") (term "0,0")) + (rule "add_literals" (formula "32") (term "1,1,0,0")) + (rule "times_zero_1" (formula "32") (term "1,0,0")) + (rule "add_literals" (formula "32") (term "0,0")) + (rule "qeq_literals" (formula "32") (term "0")) + (builtin "One Step Simplification" (formula "32")) + (rule "true_left" (formula "32")) + (rule "inEqSimp_exactShadow3" (formula "4") (ifseqformula "28")) + (rule "polySimp_rightDist" (formula "4") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "4") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "4") (term "1,0,0")) + (rule "polySimp_mulAssoc" (formula "4") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "4") (term "0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "4") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "4") (term "0")) + (rule "polySimp_addAssoc" (formula "4") (term "0,0")) + (rule "polySimp_addComm0" (formula "4") (term "0,0,0")) + (rule "polySimp_pullOutFactor2b" (formula "4") (term "0,0")) + (rule "add_literals" (formula "4") (term "1,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "4")) + (rule "polySimp_mulComm0" (formula "4") (term "1")) + (rule "polySimp_rightDist" (formula "4") (term "1")) + (rule "mul_literals" (formula "4") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "4") (term "1,1")) + (rule "polySimp_elimOne" (formula "4") (term "1,1")) + (rule "inEqSimp_contradInEq0" (formula "4") (ifseqformula "9")) + (rule "andLeft" (formula "4")) + (rule "inEqSimp_homoInEq1" (formula "4")) + (rule "polySimp_mulComm0" (formula "4") (term "1,0")) + (rule "polySimp_rightDist" (formula "4") (term "1,0")) + (rule "mul_literals" (formula "4") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "4") (term "0")) + (rule "polySimp_addComm1" (formula "4") (term "0,0")) + (rule "add_literals" (formula "4") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "4") (term "0")) + (rule "add_literals" (formula "4") (term "1,1,0")) + (rule "times_zero_1" (formula "4") (term "1,0")) + (rule "add_literals" (formula "4") (term "0")) + (rule "leq_literals" (formula "4")) + (rule "closeFalse" (formula "4")) + ) + (branch "CUT: a.length <= result_binSearchR_0 FALSE" + (builtin "One Step Simplification" (formula "18")) + (rule "inEqSimp_leqRight" (formula "30")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "1")) + (rule "polySimp_rightDist" (formula "1") (term "1")) + (rule "mul_literals" (formula "1") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1")) + (rule "polySimp_elimOne" (formula "1") (term "1,1")) + (rule "allLeft" (formula "20") (inst "t=quotient_0:int")) + (rule "inEqSimp_commuteGeq" (formula "20") (term "1,0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "20") (term "1,0,0")) + (rule "inEqSimp_commuteGeq" (formula "20") (term "1,0")) + (rule "commute_or_2" (formula "20") (term "0,0")) + (rule "commute_or_2" (formula "20") (term "0")) + (rule "cut_direct" (formula "20") (term "1,0")) + (branch "CUT: a.length <= quotient_0 TRUE" + (builtin "One Step Simplification" (formula "21")) + (rule "true_left" (formula "21")) + (rule "inEqSimp_exactShadow3" (formula "17") (ifseqformula "20")) + (rule "mul_literals" (formula "17") (term "0,0")) + (rule "add_zero_left" (formula "17") (term "0")) + (rule "inEqSimp_subsumption1" (formula "17") (ifseqformula "14")) + (rule "leq_literals" (formula "17") (term "0")) + (builtin "One Step Simplification" (formula "17")) + (rule "true_left" (formula "17")) + (rule "inEqSimp_exactShadow3" (formula "1") (ifseqformula "20")) + (rule "polySimp_rightDist" (formula "1") (term "0,0")) + (rule "mul_literals" (formula "1") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "1") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "0")) + (rule "polySimp_elimOne" (formula "1") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "18") (ifseqformula "20")) + (rule "polySimp_mulComm0" (formula "18") (term "0,0")) + (rule "polySimp_addComm0" (formula "18") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "18")) + (rule "polySimp_mulLiterals" (formula "18") (term "0")) + (rule "polySimp_elimOne" (formula "18") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "8") (ifseqformula "18")) + (rule "polySimp_rightDist" (formula "8") (term "0,0")) + (rule "mul_literals" (formula "8") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "8") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "8")) + (rule "polySimp_mulLiterals" (formula "8") (term "0")) + (rule "polySimp_elimOne" (formula "8") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "5") (ifseqformula "18")) + (rule "polySimp_rightDist" (formula "5") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "5") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "5") (term "1,0,0")) + (rule "polySimp_mulAssoc" (formula "5") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "5") (term "0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "5") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "5") (term "0")) + (rule "polySimp_pullOutFactor2" (formula "5") (term "0,0")) + (rule "add_literals" (formula "5") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "5")) + (rule "polySimp_mulLiterals" (formula "5") (term "1")) + (rule "polySimp_elimOne" (formula "5") (term "1")) + (rule "inEqSimp_contradInEq0" (formula "5") (ifseqformula "31")) + (rule "andLeft" (formula "5")) + (rule "inEqSimp_homoInEq1" (formula "5")) + (rule "polySimp_mulComm0" (formula "5") (term "1,0")) + (rule "polySimp_rightDist" (formula "5") (term "1,0")) + (rule "mul_literals" (formula "5") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "5") (term "0")) + (rule "polySimp_addComm0" (formula "5") (term "0,0")) + (rule "polySimp_pullOutFactor1b" (formula "5") (term "0")) + (rule "add_literals" (formula "5") (term "1,1,0")) + (rule "times_zero_1" (formula "5") (term "1,0")) + (rule "add_literals" (formula "5") (term "0")) + (rule "leq_literals" (formula "5")) + (rule "closeFalse" (formula "5")) + ) + (branch "CUT: a.length <= quotient_0 FALSE" + (builtin "One Step Simplification" (formula "20")) + (rule "inEqSimp_leqRight" (formula "32")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "1")) + (rule "polySimp_rightDist" (formula "1") (term "1")) + (rule "mul_literals" (formula "1") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1")) + (rule "polySimp_elimOne" (formula "1") (term "1,1")) + (rule "allLeft" (formula "21") (inst "t=idx_0:int")) + (rule "inEqSimp_commuteLeq" (formula "21") (term "1")) + (rule "applyEq" (formula "21") (term "1,1") (ifseqformula "30")) + (rule "inEqSimp_contradInEq1" (formula "21") (term "0,0") (ifseqformula "16")) + (rule "qeq_literals" (formula "21") (term "0,0,0")) + (builtin "One Step Simplification" (formula "21")) + (rule "inEqSimp_contradInEq0" (formula "21") (term "0") (ifseqformula "29")) + (rule "inEqSimp_homoInEq1" (formula "21") (term "0,0")) + (rule "polySimp_mulComm0" (formula "21") (term "1,0,0,0")) + (rule "polySimp_rightDist" (formula "21") (term "1,0,0,0")) + (rule "mul_literals" (formula "21") (term "0,1,0,0,0")) + (rule "polySimp_addAssoc" (formula "21") (term "0,0,0")) + (rule "polySimp_addComm0" (formula "21") (term "0,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "21") (term "0,0,0")) + (rule "add_literals" (formula "21") (term "1,1,0,0,0")) + (rule "times_zero_1" (formula "21") (term "1,0,0,0")) + (rule "add_literals" (formula "21") (term "0,0,0")) + (rule "leq_literals" (formula "21") (term "0,0")) + (builtin "One Step Simplification" (formula "21")) + (rule "inEqSimp_subsumption1" (formula "21") (ifseqformula "4")) + (rule "inEqSimp_homoInEq0" (formula "21") (term "0")) + (rule "polySimp_pullOutFactor1b" (formula "21") (term "0,0")) + (rule "add_literals" (formula "21") (term "1,1,0,0")) + (rule "times_zero_1" (formula "21") (term "1,0,0")) + (rule "add_literals" (formula "21") (term "0,0")) + (rule "qeq_literals" (formula "21") (term "0")) + (builtin "One Step Simplification" (formula "21")) + (rule "true_left" (formula "21")) + (rule "allLeft" (formula "22") (inst "t=idx_0:int")) + (rule "inEqSimp_commuteGeq" (formula "22") (term "1,0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "22") (term "1,0,0")) + (rule "inEqSimp_commuteGeq" (formula "22") (term "1,0")) + (rule "applyEq" (formula "22") (term "1,1,0") (ifseqformula "30")) + (rule "commute_or_2" (formula "22") (term "0,0")) + (rule "commute_or_2" (formula "22") (term "0")) + (rule "cut_direct" (formula "22") (term "1,0")) + (branch "CUT: a.length <= idx_0 TRUE" + (builtin "One Step Simplification" (formula "23")) + (rule "true_left" (formula "23")) + (rule "inEqSimp_exactShadow3" (formula "18") (ifseqformula "22")) + (rule "mul_literals" (formula "18") (term "0,0")) + (rule "add_zero_left" (formula "18") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "1") (ifseqformula "22")) + (rule "polySimp_rightDist" (formula "1") (term "0,0")) + (rule "mul_literals" (formula "1") (term "0,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "1")) + (rule "polySimp_rightDist" (formula "1") (term "1")) + (rule "mul_literals" (formula "1") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1")) + (rule "polySimp_elimOne" (formula "1") (term "1,1")) + (rule "inEqSimp_contradInEq0" (formula "1") (ifseqformula "30")) + (rule "andLeft" (formula "1")) + (rule "inEqSimp_homoInEq1" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0")) + (rule "polySimp_rightDist" (formula "1") (term "1,0")) + (rule "mul_literals" (formula "1") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0")) + (rule "polySimp_addComm1" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "1") (term "0")) + (rule "add_literals" (formula "1") (term "1,1,0")) + (rule "times_zero_1" (formula "1") (term "1,0")) + (rule "add_literals" (formula "1") (term "0")) + (rule "leq_literals" (formula "1")) + (rule "closeFalse" (formula "1")) + ) + (branch "CUT: a.length <= idx_0 FALSE" + (builtin "One Step Simplification" (formula "22")) + (rule "inEqSimp_leqRight" (formula "34")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "1")) + (rule "polySimp_rightDist" (formula "1") (term "1")) + (rule "mul_literals" (formula "1") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1")) + (rule "polySimp_elimOne" (formula "1") (term "1,1")) + (rule "allLeft" (formula "4") (inst "t=idx_0:int")) + (rule "replaceKnownSelect_taclet00001000_2" (formula "4") (term "0,0,1")) + (rule "replaceKnownAuxiliaryConstant_taclet00001000_3" (formula "4") (term "0,0,1")) + (rule "replace_known_left" (formula "4") (term "0,1") (ifseqformula "32")) + (builtin "One Step Simplification" (formula "4")) + (rule "inEqSimp_commuteGeq" (formula "4") (term "1")) + (rule "inEqSimp_homoInEq0" (formula "4") (term "0")) + (rule "polySimp_addComm1" (formula "4") (term "0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "4") (term "0")) + (rule "polySimp_mulComm0" (formula "4") (term "1,0")) + (rule "polySimp_rightDist" (formula "4") (term "1,0")) + (rule "mul_literals" (formula "4") (term "0,1,0")) + (rule "polySimp_mulLiterals" (formula "4") (term "1,1,0")) + (rule "polySimp_elimOne" (formula "4") (term "1,1,0")) + (rule "inEqSimp_contradInEq0" (formula "4") (term "0") (ifseqformula "30")) + (rule "inEqSimp_homoInEq1" (formula "4") (term "0,0")) + (rule "polySimp_pullOutFactor1b" (formula "4") (term "0,0,0")) + (rule "add_literals" (formula "4") (term "1,1,0,0,0")) + (rule "times_zero_1" (formula "4") (term "1,0,0,0")) + (rule "add_literals" (formula "4") (term "0,0,0")) + (rule "leq_literals" (formula "4") (term "0,0")) + (builtin "One Step Simplification" (formula "4")) + (rule "inEqSimp_exactShadow3" (formula "11") (ifseqformula "4")) + (rule "polySimp_rightDist" (formula "11") (term "0,0")) + (rule "mul_literals" (formula "11") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "11") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "11")) + (rule "polySimp_mulLiterals" (formula "11") (term "0")) + (rule "polySimp_elimOne" (formula "11") (term "0")) + (rule "inEqSimp_subsumption0" (formula "31") (ifseqformula "11")) + (rule "inEqSimp_homoInEq0" (formula "31") (term "0")) + (rule "polySimp_mulComm0" (formula "31") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "31") (term "1,0,0")) + (rule "mul_literals" (formula "31") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "31") (term "0,0")) + (rule "polySimp_addComm0" (formula "31") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "31") (term "0,0")) + (rule "add_literals" (formula "31") (term "1,1,0,0")) + (rule "times_zero_1" (formula "31") (term "1,0,0")) + (rule "add_literals" (formula "31") (term "0,0")) + (rule "qeq_literals" (formula "31") (term "0")) + (builtin "One Step Simplification" (formula "31")) + (rule "true_left" (formula "31")) + (rule "inEqSimp_exactShadow3" (formula "8") (ifseqformula "4")) + (rule "polySimp_rightDist" (formula "8") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "8") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "8") (term "1,0,0")) + (rule "polySimp_mulAssoc" (formula "8") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "8") (term "0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "8") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "8") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "8")) + (rule "polySimp_mulComm0" (formula "8") (term "1")) + (rule "polySimp_rightDist" (formula "8") (term "1")) + (rule "polySimp_mulComm0" (formula "8") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "8") (term "0,1")) + (rule "inEqSimp_exactShadow3" (formula "21") (ifseqformula "12")) + (rule "mul_literals" (formula "21") (term "0,0")) + (rule "add_zero_left" (formula "21") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "21")) + (rule "mul_literals" (formula "21") (term "1")) + (rule "inEqSimp_subsumption1" (formula "20") (ifseqformula "21")) + (rule "leq_literals" (formula "20") (term "0")) + (builtin "One Step Simplification" (formula "20")) + (rule "true_left" (formula "20")) + (rule "inEqSimp_exactShadow3" (formula "20") (ifseqformula "32")) + (rule "mul_literals" (formula "20") (term "0,0")) + (rule "polySimp_addAssoc" (formula "20") (term "0")) + (rule "add_literals" (formula "20") (term "0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "20")) + (rule "mul_literals" (formula "20") (term "1")) + (rule "inEqSimp_subsumption1" (formula "19") (ifseqformula "20")) + (rule "leq_literals" (formula "19") (term "0")) + (builtin "One Step Simplification" (formula "19")) + (rule "true_left" (formula "19")) + (rule "inEqSimp_exactShadow3" (formula "8") (ifseqformula "12")) + (rule "polySimp_rightDist" (formula "8") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "8") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "8") (term "1,0,0")) + (rule "polySimp_mulAssoc" (formula "8") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "8") (term "0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "8") (term "0,0,0")) + (rule "polySimp_addAssoc" (formula "8") (term "0")) + (rule "polySimp_addComm1" (formula "8") (term "0,0")) + (rule "polySimp_pullOutFactor3b" (formula "8") (term "0")) + (rule "polySimp_addComm0" (formula "8") (term "0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "8")) + (rule "polySimp_mulComm0" (formula "8") (term "1")) + (rule "polySimp_rightDist" (formula "8") (term "1")) + (rule "mul_literals" (formula "8") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "8") (term "1,1")) + (rule "inEqSimp_contradInEq3" (formula "8") (ifseqformula "33")) + (rule "greater_literals" (formula "8") (term "0,0")) + (builtin "One Step Simplification" (formula "8")) + (rule "andLeft" (formula "8")) + (rule "polySimp_rightDist" (formula "8") (term "0")) + (rule "mul_literals" (formula "8") (term "0,0")) + (rule "inEqSimp_homoInEq1" (formula "8")) + (rule "polySimp_mulComm0" (formula "8") (term "1,0")) + (rule "polySimp_rightDist" (formula "8") (term "1,0")) + (rule "mul_literals" (formula "8") (term "0,1,0")) + (rule "polySimp_mulLiterals" (formula "8") (term "1,1,0")) + (rule "polySimp_addAssoc" (formula "8") (term "0")) + (rule "polySimp_addComm1" (formula "8") (term "0,0")) + (rule "add_literals" (formula "8") (term "0,0,0")) + (rule "polySimp_pullOutFactor0b" (formula "8") (term "0")) + (rule "add_literals" (formula "8") (term "1,1,0")) + (rule "times_zero_1" (formula "8") (term "1,0")) + (rule "add_literals" (formula "8") (term "0")) + (rule "leq_literals" (formula "8")) + (rule "closeFalse" (formula "8")) + ) + ) + ) + ) + ) + (branch "CUT: result_binSearchR_0 <= -1 + quotient_0 FALSE" + (builtin "One Step Simplification" (formula "23")) + (rule "replace_known_left" (formula "32") (term "0,0") (ifseqformula "23")) + (builtin "One Step Simplification" (formula "32") (ifInst "" (formula "23"))) + (rule "allRight" (formula "32") (inst "sk=f_0:Field")) + (rule "allRight" (formula "32") (inst "sk=o_0:java.lang.Object")) + (rule "orRight" (formula "32")) + (rule "inEqSimp_leqRight" (formula "29")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "0,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0")) + (rule "applyEq" (formula "28") (term "0") (ifseqformula "24")) + (rule "inEqSimp_commuteGeq" (formula "28")) + (rule "applyEq" (formula "1") (term "1,0") (ifseqformula "24")) + (rule "polySimp_addComm0" (formula "1") (term "0")) + (rule "applyEq" (formula "29") (term "0,2,0") (ifseqformula "24")) + (rule "inEqSimp_sepNegMonomial1" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "0")) + (rule "polySimp_elimOne" (formula "1") (term "0")) + (rule "inEqSimp_contradInEq0" (formula "17") (ifseqformula "28")) + (rule "qeq_literals" (formula "17") (term "0")) + (builtin "One Step Simplification" (formula "17")) + (rule "closeFalse" (formula "17")) + ) + ) + ) + (branch "exists int idx; ( idx >= low & idx <= -1 + quotient_0 & a[idx]@heapAfter_binSearchR = v) FALSE" + (rule "replace_known_left" (formula "21") (term "0") (ifseqformula "23")) + (builtin "One Step Simplification" (formula "21")) + (rule "true_left" (formula "21")) + (rule "replace_known_left" (formula "21") (term "0") (ifseqformula "22")) + (builtin "One Step Simplification" (formula "21")) + (rule "true_left" (formula "21")) + (rule "replace_known_left" (formula "25") (term "0,0,0") (ifseqformula "21")) + (builtin "One Step Simplification" (formula "25") (ifInst "" (formula "21"))) + (rule "applyEq" (formula "25") (term "0,0,1,0") (ifseqformula "21")) + (rule "inEqSimp_commuteGeq" (formula "25") (term "0,1,0")) + (rule "applyEq" (formula "25") (term "0,2,0,1,1,0") (ifseqformula "21")) + (rule "inEqSimp_contradInEq1" (formula "25") (term "0,1,0") (ifseqformula "14")) + (rule "qeq_literals" (formula "25") (term "0,0,1,0")) + (builtin "One Step Simplification" (formula "25")) + (rule "nnf_ex2all" (formula "22")) + (rule "nnf_notAnd" (formula "1") (term "0")) + (rule "nnf_notAnd" (formula "1") (term "0,0")) + (rule "inEqSimp_notGeq" (formula "1") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0,0")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1,0,0,0")) + (rule "polySimp_elimOne" (formula "1") (term "1,1,0,0,0")) + (rule "inEqSimp_notLeq" (formula "1") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0,1,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0,1,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0,1,0,0")) + (rule "add_literals" (formula "1") (term "0,0,0,1,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "1") (term "1,1,0,0")) + (rule "andRight" (formula "25")) + (branch + (rule "notRight" (formula "25")) + (rule "exLeft" (formula "1") (inst "sk=idx_0:int")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "1")) + (rule "inEqSimp_commuteGeq" (formula "1")) + (rule "inEqSimp_homoInEq0" (formula "2")) + (rule "polySimp_addComm1" (formula "2") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "2")) + (rule "polySimp_mulComm0" (formula "2") (term "1")) + (rule "polySimp_rightDist" (formula "2") (term "1")) + (rule "mul_literals" (formula "2") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,1")) + (rule "polySimp_elimOne" (formula "2") (term "1,1")) + (rule "pullOutSelect" (formula "3") (term "0") (inst "selectSK=arr_1:int")) + (rule "simplifySelectOfAnonEQ" (formula "3") (ifseqformula "24")) + (builtin "One Step Simplification" (formula "3") (ifInst "" (formula "28")) (ifInst "" (formula "16"))) + (rule "applyEqReverse" (formula "4") (term "0") (ifseqformula "3")) + (rule "hideAuxiliaryEq" (formula "3")) + (rule "inEqSimp_exactShadow3" (formula "18") (ifseqformula "1")) + (rule "mul_literals" (formula "18") (term "0,0")) + (rule "add_zero_left" (formula "18") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "2") (ifseqformula "8")) + (rule "polySimp_rightDist" (formula "2") (term "0,0")) + (rule "mul_literals" (formula "2") (term "0,0,0")) + (rule "polySimp_addAssoc" (formula "2") (term "0")) + (rule "polySimp_addComm1" (formula "2") (term "0,0")) + (rule "polySimp_addAssoc" (formula "2") (term "0,0,0")) + (rule "add_literals" (formula "2") (term "0,0,0,0")) + (rule "add_zero_left" (formula "2") (term "0,0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "2")) + (rule "polySimp_mulLiterals" (formula "2") (term "0")) + (rule "polySimp_elimOne" (formula "2") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "20") (ifseqformula "2")) + (rule "mul_literals" (formula "20") (term "0,0")) + (rule "add_zero_left" (formula "20") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "20")) + (rule "polySimp_mulLiterals" (formula "20") (term "0")) + (rule "polySimp_elimOne" (formula "20") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "19") (ifseqformula "20")) + (rule "mul_literals" (formula "19") (term "0,0")) + (rule "add_zero_left" (formula "19") (term "0")) + (rule "inEqSimp_subsumption6" (formula "19") (ifseqformula "18")) + (rule "greater_literals" (formula "19") (term "0,0")) + (builtin "One Step Simplification" (formula "19")) + (rule "mul_literals" (formula "19") (term "1,0")) + (rule "leq_literals" (formula "19") (term "0")) + (builtin "One Step Simplification" (formula "19")) + (rule "true_left" (formula "19")) + (rule "allLeft" (formula "24") (inst "t=quotient_0:int")) + (rule "inEqSimp_commuteGeq" (formula "24") (term "1,0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "24") (term "1,0,0")) + (rule "inEqSimp_commuteGeq" (formula "24") (term "1,0")) + (rule "commute_or_2" (formula "24") (term "0,0")) + (rule "commute_or_2" (formula "24") (term "0")) + (rule "cut_direct" (formula "24") (term "1,0")) + (branch "CUT: a.length <= quotient_0 TRUE" + (builtin "One Step Simplification" (formula "25")) + (rule "true_left" (formula "25")) + (rule "inEqSimp_exactShadow3" (formula "22") (ifseqformula "24")) + (rule "mul_literals" (formula "22") (term "0,0")) + (rule "add_zero_left" (formula "22") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "23") (ifseqformula "24")) + (rule "polySimp_mulComm0" (formula "23") (term "0,0")) + (rule "polySimp_addComm0" (formula "23") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "23")) + (rule "polySimp_mulLiterals" (formula "23") (term "0")) + (rule "polySimp_elimOne" (formula "23") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "3") (ifseqformula "23")) + (rule "polySimp_rightDist" (formula "3") (term "0,0")) + (rule "mul_literals" (formula "3") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "3") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "3")) + (rule "polySimp_mulLiterals" (formula "3") (term "0")) + (rule "polySimp_elimOne" (formula "3") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "13") (ifseqformula "24")) + (rule "polySimp_rightDist" (formula "13") (term "0,0")) + (rule "mul_literals" (formula "13") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "13") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "13")) + (rule "polySimp_mulLiterals" (formula "13") (term "0")) + (rule "polySimp_elimOne" (formula "13") (term "0")) + (rule "inEqSimp_subsumption0" (formula "12") (ifseqformula "13")) + (rule "inEqSimp_homoInEq0" (formula "12") (term "0")) + (rule "polySimp_mulComm0" (formula "12") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "12") (term "1,0,0")) + (rule "mul_literals" (formula "12") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "12") (term "0,0")) + (rule "polySimp_addComm0" (formula "12") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "12") (term "0,0")) + (rule "add_literals" (formula "12") (term "1,1,0,0")) + (rule "times_zero_1" (formula "12") (term "1,0,0")) + (rule "add_literals" (formula "12") (term "0,0")) + (rule "qeq_literals" (formula "12") (term "0")) + (builtin "One Step Simplification" (formula "12")) + (rule "true_left" (formula "12")) + (rule "inEqSimp_exactShadow3" (formula "9") (ifseqformula "24")) + (rule "polySimp_rightDist" (formula "9") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "9") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "9") (term "1,0,0")) + (rule "polySimp_mulAssoc" (formula "9") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "9") (term "0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "9") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "9") (term "0")) + (rule "polySimp_pullOutFactor2" (formula "9") (term "0,0")) + (rule "add_literals" (formula "9") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "9")) + (rule "polySimp_mulLiterals" (formula "9") (term "1")) + (rule "polySimp_elimOne" (formula "9") (term "1")) + (rule "inEqSimp_contradInEq0" (formula "9") (ifseqformula "13")) + (rule "andLeft" (formula "9")) + (rule "inEqSimp_homoInEq1" (formula "9")) + (rule "polySimp_mulComm0" (formula "9") (term "1,0")) + (rule "polySimp_rightDist" (formula "9") (term "1,0")) + (rule "mul_literals" (formula "9") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "9") (term "0")) + (rule "polySimp_addComm0" (formula "9") (term "0,0")) + (rule "polySimp_pullOutFactor1b" (formula "9") (term "0")) + (rule "add_literals" (formula "9") (term "1,1,0")) + (rule "times_zero_1" (formula "9") (term "1,0")) + (rule "add_literals" (formula "9") (term "0")) + (rule "leq_literals" (formula "9")) + (rule "closeFalse" (formula "9")) + ) + (branch "CUT: a.length <= quotient_0 FALSE" + (builtin "One Step Simplification" (formula "24")) + (rule "inEqSimp_leqRight" (formula "30")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "1")) + (rule "polySimp_rightDist" (formula "1") (term "1")) + (rule "mul_literals" (formula "1") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1")) + (rule "polySimp_elimOne" (formula "1") (term "1,1")) + (rule "allLeft" (formula "6") (inst "t=idx_0:int")) + (rule "replaceKnownSelect_taclet010001000_2" (formula "6") (term "0,0,1")) + (rule "replaceKnownAuxiliaryConstant_taclet010001000_3" (formula "6") (term "0,0,1")) + (rule "replace_known_left" (formula "6") (term "0,1") (ifseqformula "5")) + (builtin "One Step Simplification" (formula "6")) + (rule "inEqSimp_homoInEq0" (formula "6") (term "0")) + (rule "polySimp_addComm1" (formula "6") (term "0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "6") (term "0")) + (rule "polySimp_mulComm0" (formula "6") (term "1,0")) + (rule "polySimp_rightDist" (formula "6") (term "1,0")) + (rule "mul_literals" (formula "6") (term "0,1,0")) + (rule "polySimp_mulLiterals" (formula "6") (term "1,1,0")) + (rule "polySimp_elimOne" (formula "6") (term "1,1,0")) + (rule "inEqSimp_contradInEq0" (formula "6") (term "0") (ifseqformula "2")) + (rule "inEqSimp_homoInEq1" (formula "6") (term "0,0")) + (rule "polySimp_pullOutFactor1b" (formula "6") (term "0,0,0")) + (rule "add_literals" (formula "6") (term "1,1,0,0,0")) + (rule "times_zero_1" (formula "6") (term "1,0,0,0")) + (rule "add_literals" (formula "6") (term "0,0,0")) + (rule "leq_literals" (formula "6") (term "0,0")) + (builtin "One Step Simplification" (formula "6")) + (rule "inEqSimp_exactShadow3" (formula "6") (ifseqformula "22")) + (rule "polySimp_mulComm0" (formula "6") (term "0,0")) + (rule "polySimp_pullOutFactor0" (formula "6") (term "0")) + (rule "add_literals" (formula "6") (term "1,0")) + (rule "polySimp_elimOne" (formula "6") (term "0")) + (rule "allLeft" (formula "27") (inst "t=idx_0:int")) + (rule "inEqSimp_commuteGeq" (formula "27") (term "1,0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "27") (term "1,0,0")) + (rule "inEqSimp_commuteGeq" (formula "27") (term "1,0")) + (rule "applyEq" (formula "27") (term "1,1,0") (ifseqformula "5")) + (rule "commute_or_2" (formula "27") (term "0,0")) + (rule "commute_or_2" (formula "27") (term "0")) + (rule "cut_direct" (formula "27") (term "1,0")) + (branch "CUT: a.length <= idx_0 TRUE" + (builtin "One Step Simplification" (formula "28")) + (rule "true_left" (formula "28")) + (rule "inEqSimp_exactShadow3" (formula "24") (ifseqformula "27")) + (rule "mul_literals" (formula "24") (term "0,0")) + (rule "add_zero_left" (formula "24") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "1") (ifseqformula "27")) + (rule "polySimp_rightDist" (formula "1") (term "0,0")) + (rule "mul_literals" (formula "1") (term "0,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "1")) + (rule "polySimp_rightDist" (formula "1") (term "1")) + (rule "mul_literals" (formula "1") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1")) + (rule "polySimp_elimOne" (formula "1") (term "1,1")) + (rule "inEqSimp_subsumption1" (formula "7") (ifseqformula "1")) + (rule "inEqSimp_homoInEq0" (formula "7") (term "0")) + (rule "polySimp_pullOutFactor1b" (formula "7") (term "0,0")) + (rule "add_literals" (formula "7") (term "1,1,0,0")) + (rule "times_zero_1" (formula "7") (term "1,0,0")) + (rule "add_literals" (formula "7") (term "0,0")) + (rule "qeq_literals" (formula "7") (term "0")) + (builtin "One Step Simplification" (formula "7")) + (rule "true_left" (formula "7")) + (rule "inEqSimp_exactShadow3" (formula "25") (ifseqformula "27")) + (rule "polySimp_mulComm0" (formula "25") (term "0,0")) + (rule "polySimp_addComm0" (formula "25") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "25")) + (rule "polySimp_mulLiterals" (formula "25") (term "0")) + (rule "polySimp_elimOne" (formula "25") (term "0")) + (rule "inEqSimp_contradInEq0" (formula "5") (ifseqformula "25")) + (rule "andLeft" (formula "5")) + (rule "inEqSimp_homoInEq1" (formula "5")) + (rule "polySimp_pullOutFactor1b" (formula "5") (term "0")) + (rule "add_literals" (formula "5") (term "1,1,0")) + (rule "times_zero_1" (formula "5") (term "1,0")) + (rule "add_literals" (formula "5") (term "0")) + (rule "leq_literals" (formula "5")) + (rule "closeFalse" (formula "5")) + ) + (branch "CUT: a.length <= idx_0 FALSE" + (builtin "One Step Simplification" (formula "27")) + (rule "inEqSimp_leqRight" (formula "33")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "1")) + (rule "polySimp_rightDist" (formula "1") (term "1")) + (rule "mul_literals" (formula "1") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1")) + (rule "polySimp_elimOne" (formula "1") (term "1,1")) + (rule "allLeft" (formula "28") (inst "t=quotient_0:int")) + (rule "inEqSimp_commuteGeq" (formula "28") (term "1,0")) + (rule "inEqSimp_contradInEq1" (formula "28") (term "0,0") (ifseqformula "21")) + (rule "qeq_literals" (formula "28") (term "0,0,0")) + (builtin "One Step Simplification" (formula "28")) + (rule "inEqSimp_contradInEq1" (formula "28") (term "1") (ifseqformula "9")) + (rule "inEqSimp_homoInEq1" (formula "28") (term "0,1")) + (rule "polySimp_pullOutFactor1b" (formula "28") (term "0,0,1")) + (rule "add_literals" (formula "28") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "28") (term "1,0,0,1")) + (rule "add_literals" (formula "28") (term "0,0,1")) + (rule "leq_literals" (formula "28") (term "0,1")) + (builtin "One Step Simplification" (formula "28")) + (rule "inEqSimp_antiSymm" (formula "7") (ifseqformula "28")) + (rule "applyEq" (formula "23") (term "0") (ifseqformula "7")) + (rule "applyEq" (formula "8") (term "0") (ifseqformula "7")) + (rule "inEqSimp_homoInEq1" (formula "8")) + (rule "polySimp_pullOutFactor1" (formula "8") (term "0")) + (rule "add_literals" (formula "8") (term "1,0")) + (rule "times_zero_1" (formula "8") (term "0")) + (rule "leq_literals" (formula "8")) + (rule "true_left" (formula "8")) + (rule "applyEq" (formula "22") (term "0") (ifseqformula "7")) + (rule "inEqSimp_homoInEq0" (formula "22")) + (rule "polySimp_pullOutFactor0" (formula "22") (term "0")) + (rule "add_literals" (formula "22") (term "1,0")) + (rule "polySimp_elimOne" (formula "22") (term "0")) + (rule "applyEq" (formula "26") (term "0") (ifseqformula "7")) + (rule "inEqSimp_homoInEq0" (formula "26")) + (rule "polySimp_pullOutFactor1" (formula "26") (term "0")) + (rule "add_literals" (formula "26") (term "1,0")) + (rule "times_zero_1" (formula "26") (term "0")) + (rule "qeq_literals" (formula "26")) + (rule "true_left" (formula "26")) + (rule "applyEq" (formula "26") (term "1,1,0,0") (ifseqformula "7")) + (rule "applyEq" (formula "6") (term "0,2,0") (ifseqformula "7")) + (rule "applyEq" (formula "3") (term "1") (ifseqformula "7")) + (rule "applyEq" (formula "1") (term "1,1") (ifseqformula "6")) + (rule "applyEq" (formula "3") (term "1,1") (ifseqformula "5")) + (rule "applyEq" (formula "2") (term "0,1,1") (ifseqformula "5")) + (rule "polySimp_pullOutFactor0" (formula "2") (term "1")) + (rule "add_literals" (formula "2") (term "1,1")) + (rule "polySimp_elimOne" (formula "2") (term "1")) + (rule "applyEq" (formula "6") (term "0") (ifseqformula "3")) + (rule "inEqSimp_homoInEq1" (formula "6")) + (rule "polySimp_pullOutFactor1b" (formula "6") (term "0")) + (rule "add_literals" (formula "6") (term "1,1,0")) + (rule "times_zero_1" (formula "6") (term "1,0")) + (rule "add_literals" (formula "6") (term "0")) + (rule "leq_literals" (formula "6")) + (rule "closeFalse" (formula "6")) + ) + ) + ) + (branch + (rule "allRight" (formula "25") (inst "sk=f_0:Field")) + (rule "allRight" (formula "25") (inst "sk=o_0:java.lang.Object")) + (rule "orRight" (formula "25")) + (rule "pullOutSelect" (formula "26") (term "0") (inst "selectSK=f_0_0:any")) + (rule "simplifySelectOfAnonEQ" (formula "1") (ifseqformula "21")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "26"))) + (rule "applyEqReverse" (formula "27") (term "0") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "27")) + (rule "closeTrue" (formula "27")) + ) + ) + ) + (branch "Exceptional Post (binSearchR)" + (builtin "One Step Simplification" (formula "23")) + (builtin "One Step Simplification" (formula "20")) + (rule "andLeft" (formula "20")) + (rule "andLeft" (formula "21")) + (rule "andLeft" (formula "22")) + (rule "andLeft" (formula "21")) + (rule "andLeft" (formula "23")) + (rule "notLeft" (formula "21")) + (rule "close" (formula "25") (ifseqformula "24")) + ) + (branch "Pre (binSearchR)" + (builtin "One Step Simplification" (formula "21") (ifInst "" (formula "6")) (ifInst "" (formula "18")) (ifInst "" (formula "20")) (ifInst "" (formula "8")) (ifInst "" (formula "20")) (ifInst "" (formula "11"))) + (rule "polySimp_elimSub" (formula "21") (term "0,1")) + (rule "measuredByCheck" (formula "21") (term "1") (ifseqformula "12")) + (rule "precOfInt" (formula "21") (term "1")) + (rule "inEqSimp_ltToLeq" (formula "21") (term "1,0,0,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "21") (term "1,0,0,1,0,0,0,0,1,0")) + (rule "polySimp_addComm1" (formula "21") (term "0,1,0,0,0,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "21") (term "1,0,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "21") (term "1,0,0,1,0,0,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "21") (term "1,1")) + (rule "polySimp_rightDist" (formula "21") (term "1,0,0,1,1")) + (rule "polySimp_mulAssoc" (formula "21") (term "0,1,0,0,1,1")) + (rule "polySimp_mulComm0" (formula "21") (term "0,0,1,0,0,1,1")) + (rule "polySimp_mulLiterals" (formula "21") (term "0,1,0,0,1,1")) + (rule "polySimp_elimOne" (formula "21") (term "0,1,0,0,1,1")) + (rule "polySimp_addAssoc" (formula "21") (term "0,0,1,1")) + (rule "polySimp_addComm1" (formula "21") (term "0,1,1")) + (rule "polySimp_addAssoc" (formula "21") (term "0,0,1,1")) + (rule "polySimp_addComm1" (formula "21") (term "0,0,0,1,1")) + (rule "polySimp_pullOutFactor1b" (formula "21") (term "0,0,1,1")) + (rule "add_literals" (formula "21") (term "1,1,0,0,1,1")) + (rule "times_zero_1" (formula "21") (term "1,0,0,1,1")) + (rule "add_zero_right" (formula "21") (term "0,0,1,1")) + (rule "inEqSimp_commuteLeq" (formula "21") (term "0,0,0")) + (rule "replace_known_left" (formula "21") (term "0,0,0") (ifseqformula "14")) + (builtin "One Step Simplification" (formula "21")) + (rule "inEqSimp_commuteLeq" (formula "21") (term "0,0")) + (rule "inEqSimp_commuteLeq" (formula "21") (term "0,0,0,0,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "21") (term "1,0,0,1,0")) + (rule "inEqSimp_homoInEq0" (formula "21") (term "0,1")) + (rule "mul_literals" (formula "21") (term "1,0,0,1")) + (rule "add_zero_right" (formula "21") (term "0,0,1")) + (rule "inEqSimp_sepNegMonomial0" (formula "21") (term "1,0,0,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "21") (term "0,1,0,0,0,0,1,0")) + (rule "polySimp_elimOne" (formula "21") (term "0,1,0,0,0,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "21") (term "1,0,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "21") (term "1,1,0,0,0,1,0")) + (rule "polySimp_rightDist" (formula "21") (term "1,1,0,0,0,1,0")) + (rule "mul_literals" (formula "21") (term "0,1,1,0,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "21") (term "1,1,1,0,0,0,1,0")) + (rule "polySimp_elimOne" (formula "21") (term "1,1,1,0,0,0,1,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "21") (term "1,1")) + (rule "polySimp_mulLiterals" (formula "21") (term "0,1,1")) + (rule "polySimp_elimOne" (formula "21") (term "0,1,1")) + (rule "inEqSimp_sepNegMonomial1" (formula "21") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "21") (term "0,0,1")) + (rule "polySimp_elimOne" (formula "21") (term "0,0,1")) + (rule "replace_known_left" (formula "21") (term "0,1") (ifseqformula "6")) + (builtin "One Step Simplification" (formula "21")) + (rule "nnf_imp2or" (formula "21") (term "0,0,1,0")) + (rule "nnf_notAnd" (formula "21") (term "0,0,0,1,0")) + (rule "inEqSimp_notLeq" (formula "21") (term "1,0,0,0,1,0")) + (rule "polySimp_rightDist" (formula "21") (term "1,0,0,1,0,0,0,1,0")) + (rule "mul_literals" (formula "21") (term "0,1,0,0,1,0,0,0,1,0")) + (rule "polySimp_addAssoc" (formula "21") (term "0,0,1,0,0,0,1,0")) + (rule "add_literals" (formula "21") (term "0,0,0,1,0,0,0,1,0")) + (rule "add_zero_left" (formula "21") (term "0,0,1,0,0,0,1,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "21") (term "1,0,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "21") (term "1,1,0,0,0,1,0")) + (rule "polySimp_elimOne" (formula "21") (term "1,1,0,0,0,1,0")) + (rule "nnf_notAnd" (formula "21") (term "0,0,0,0,1,0")) + (rule "inEqSimp_notGeq" (formula "21") (term "0,0,0,0,0,1,0")) + (rule "mul_literals" (formula "21") (term "1,0,0,0,0,0,0,0,1,0")) + (rule "add_literals" (formula "21") (term "0,0,0,0,0,0,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "21") (term "0,0,0,0,0,1,0")) + (rule "mul_literals" (formula "21") (term "1,0,0,0,0,0,1,0")) + (rule "inEqSimp_notGeq" (formula "21") (term "1,0,0,0,0,1,0")) + (rule "polySimp_rightDist" (formula "21") (term "1,0,0,1,0,0,0,0,1,0")) + (rule "mul_literals" (formula "21") (term "0,1,0,0,1,0,0,0,0,1,0")) + (rule "polySimp_addAssoc" (formula "21") (term "0,0,1,0,0,0,0,1,0")) + (rule "add_literals" (formula "21") (term "0,0,0,1,0,0,0,0,1,0")) + (rule "add_zero_left" (formula "21") (term "0,0,1,0,0,0,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "21") (term "1,0,0,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "21") (term "1,1,0,0,0,0,1,0")) + (rule "polySimp_elimOne" (formula "21") (term "1,1,0,0,0,0,1,0")) + (rule "Class_invariant_axiom_for_BinSearch" (formula "18") (ifseqformula "10")) + (rule "true_left" (formula "18")) + (rule "cut_direct" (formula "20") (term "0,0")) + (branch "CUT: a.length >= quotient_0 TRUE" + (builtin "One Step Simplification" (formula "21")) + (rule "cut_direct" (formula "21") (term "1")) + (branch "CUT: up >= 1 + quotient_0 TRUE" + (builtin "One Step Simplification" (formula "22")) + (rule "allRight" (formula "22") (inst "sk=y_0:int")) + (rule "allRight" (formula "22") (inst "sk=x_0:int")) + (rule "orRight" (formula "22")) + (rule "orRight" (formula "22")) + (rule "orRight" (formula "22")) + (rule "inEqSimp_geqRight" (formula "25")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0")) + (rule "inEqSimp_geqRight" (formula "25")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0")) + (rule "polySimp_addComm1" (formula "1") (term "0")) + (rule "inEqSimp_leqRight" (formula "24")) + (rule "mul_literals" (formula "1") (term "1,0,0")) + (rule "add_literals" (formula "1") (term "0,0")) + (rule "add_zero_left" (formula "1") (term "0")) + (rule "inEqSimp_leqRight" (formula "25")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "4")) + (rule "polySimp_mulComm0" (formula "4") (term "1")) + (rule "polySimp_rightDist" (formula "4") (term "1")) + (rule "mul_literals" (formula "4") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "4") (term "1,1")) + (rule "polySimp_elimOne" (formula "4") (term "1,1")) + (rule "inEqSimp_sepNegMonomial0" (formula "3")) + (rule "polySimp_mulLiterals" (formula "3") (term "0")) + (rule "polySimp_elimOne" (formula "3") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "1")) + (rule "polySimp_rightDist" (formula "1") (term "1")) + (rule "mul_literals" (formula "1") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1")) + (rule "polySimp_elimOne" (formula "1") (term "1,1")) + (rule "inEqSimp_exactShadow3" (formula "5") (ifseqformula "10")) + (rule "polySimp_rightDist" (formula "5") (term "0,0")) + (rule "mul_literals" (formula "5") (term "0,0,0")) + (rule "polySimp_addAssoc" (formula "5") (term "0")) + (rule "polySimp_addAssoc" (formula "5") (term "0,0")) + (rule "polySimp_addComm1" (formula "5") (term "0,0,0")) + (rule "add_literals" (formula "5") (term "0,0,0,0")) + (rule "add_zero_left" (formula "5") (term "0,0,0")) + (rule "polySimp_pullOutFactor0" (formula "5") (term "0,0")) + (rule "add_literals" (formula "5") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "5") (term "0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "5")) + (rule "polySimp_mulLiterals" (formula "5") (term "0")) + (rule "polySimp_elimOne" (formula "5") (term "0")) + (rule "allLeft" (formula "23") (inst "t=y_0:int")) + (rule "inEqSimp_commuteGeq" (formula "23") (term "1,0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "23") (term "1,0,0")) + (rule "inEqSimp_commuteGeq" (formula "23") (term "1,0")) + (rule "inEqSimp_contradInEq1" (formula "23") (term "1,0,0,0") (ifseqformula "3")) + (rule "inEqSimp_homoInEq1" (formula "23") (term "0,1,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "23") (term "0,0,1,0,0,0")) + (rule "add_literals" (formula "23") (term "1,1,0,0,1,0,0,0")) + (rule "times_zero_1" (formula "23") (term "1,0,0,1,0,0,0")) + (rule "add_literals" (formula "23") (term "0,0,1,0,0,0")) + (rule "leq_literals" (formula "23") (term "0,1,0,0,0")) + (builtin "One Step Simplification" (formula "23")) + (rule "allLeft" (formula "23") (inst "t=x_0:int")) + (rule "inEqSimp_commuteGeq" (formula "23") (term "1,0")) + (rule "inEqSimp_commuteLeq" (formula "23") (term "1")) + (rule "inEqSimp_contradInEq1" (formula "23") (term "0,0") (ifseqformula "2")) + (rule "qeq_literals" (formula "23") (term "0,0,0")) + (builtin "One Step Simplification" (formula "23")) + (rule "inEqSimp_contradInEq1" (formula "23") (term "0") (ifseqformula "1")) + (rule "inEqSimp_homoInEq1" (formula "23") (term "0,0")) + (rule "polySimp_pullOutFactor1b" (formula "23") (term "0,0,0")) + (rule "add_literals" (formula "23") (term "1,1,0,0,0")) + (rule "times_zero_1" (formula "23") (term "1,0,0,0")) + (rule "add_literals" (formula "23") (term "0,0,0")) + (rule "leq_literals" (formula "23") (term "0,0")) + (builtin "One Step Simplification" (formula "23")) + (rule "inEqSimp_contradInEq0" (formula "23") (ifseqformula "4")) + (rule "andLeft" (formula "23")) + (rule "inEqSimp_homoInEq1" (formula "23")) + (rule "polySimp_mulComm0" (formula "23") (term "1,0")) + (rule "polySimp_rightDist" (formula "23") (term "1,0")) + (rule "mul_literals" (formula "23") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "23") (term "0")) + (rule "polySimp_addComm0" (formula "23") (term "0,0")) + (rule "polySimp_pullOutFactor1b" (formula "23") (term "0")) + (rule "add_literals" (formula "23") (term "1,1,0")) + (rule "times_zero_1" (formula "23") (term "1,0")) + (rule "add_literals" (formula "23") (term "0")) + (rule "leq_literals" (formula "23")) + (rule "closeFalse" (formula "23")) + ) + (branch "CUT: up >= 1 + quotient_0 FALSE" + (builtin "One Step Simplification" (formula "22")) + (rule "false_right" (formula "22")) + (rule "inEqSimp_geqRight" (formula "21")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "0,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1")) + (rule "polySimp_elimOne" (formula "1") (term "1")) + (rule "inEqSimp_exactShadow3" (formula "9") (ifseqformula "1")) + (rule "polySimp_rightDist" (formula "9") (term "0,0")) + (rule "mul_literals" (formula "9") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "9") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "9")) + (rule "polySimp_mulLiterals" (formula "9") (term "0")) + (rule "polySimp_elimOne" (formula "9") (term "0")) + (rule "inEqSimp_subsumption0" (formula "8") (ifseqformula "9")) + (rule "inEqSimp_homoInEq0" (formula "8") (term "0")) + (rule "polySimp_mulComm0" (formula "8") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "8") (term "1,0,0")) + (rule "mul_literals" (formula "8") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "8") (term "0,0")) + (rule "polySimp_addComm0" (formula "8") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "8") (term "0,0")) + (rule "add_literals" (formula "8") (term "1,1,0,0")) + (rule "times_zero_1" (formula "8") (term "1,0,0")) + (rule "add_literals" (formula "8") (term "0,0")) + (rule "qeq_literals" (formula "8") (term "0")) + (builtin "One Step Simplification" (formula "8")) + (rule "true_left" (formula "8")) + (rule "inEqSimp_exactShadow3" (formula "5") (ifseqformula "1")) + (rule "polySimp_rightDist" (formula "5") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "5") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "5") (term "1,0,0")) + (rule "polySimp_mulAssoc" (formula "5") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "5") (term "0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "5") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "5") (term "0")) + (rule "polySimp_pullOutFactor2" (formula "5") (term "0,0")) + (rule "add_literals" (formula "5") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "5")) + (rule "polySimp_mulLiterals" (formula "5") (term "1")) + (rule "polySimp_elimOne" (formula "5") (term "1")) + (rule "inEqSimp_contradInEq0" (formula "5") (ifseqformula "9")) + (rule "andLeft" (formula "5")) + (rule "inEqSimp_homoInEq1" (formula "5")) + (rule "polySimp_mulComm0" (formula "5") (term "1,0")) + (rule "polySimp_rightDist" (formula "5") (term "1,0")) + (rule "mul_literals" (formula "5") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "5") (term "0")) + (rule "polySimp_addComm0" (formula "5") (term "0,0")) + (rule "polySimp_pullOutFactor1b" (formula "5") (term "0")) + (rule "add_literals" (formula "5") (term "1,1,0")) + (rule "times_zero_1" (formula "5") (term "1,0")) + (rule "add_literals" (formula "5") (term "0")) + (rule "leq_literals" (formula "5")) + (rule "closeFalse" (formula "5")) + ) + ) + (branch "CUT: a.length >= quotient_0 FALSE" + (builtin "One Step Simplification" (formula "21")) + (rule "false_right" (formula "21")) + (rule "inEqSimp_geqRight" (formula "20")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "1")) + (rule "polySimp_rightDist" (formula "1") (term "1")) + (rule "mul_literals" (formula "1") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1")) + (rule "polySimp_elimOne" (formula "1") (term "1,1")) + (rule "inEqSimp_exactShadow3" (formula "16") (ifseqformula "1")) + (rule "mul_literals" (formula "16") (term "0,0")) + (rule "add_zero_left" (formula "16") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "16")) + (rule "mul_literals" (formula "16") (term "1")) + (rule "inEqSimp_subsumption1" (formula "14") (ifseqformula "16")) + (rule "leq_literals" (formula "14") (term "0")) + (builtin "One Step Simplification" (formula "14")) + (rule "true_left" (formula "14")) + (rule "inEqSimp_exactShadow3" (formula "17") (ifseqformula "1")) + (rule "polySimp_mulComm0" (formula "17") (term "0,0")) + (rule "polySimp_addComm0" (formula "17") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "17")) + (rule "polySimp_mulLiterals" (formula "17") (term "0")) + (rule "polySimp_elimOne" (formula "17") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "8") (ifseqformula "17")) + (rule "polySimp_rightDist" (formula "8") (term "0,0")) + (rule "mul_literals" (formula "8") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "8") (term "0")) + (rule "polySimp_addAssoc" (formula "8") (term "0,0")) + (rule "add_literals" (formula "8") (term "0,0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "8")) + (rule "polySimp_mulLiterals" (formula "8") (term "0")) + (rule "polySimp_elimOne" (formula "8") (term "0")) + (rule "inEqSimp_subsumption0" (formula "7") (ifseqformula "8")) + (rule "inEqSimp_homoInEq0" (formula "7") (term "0")) + (rule "polySimp_mulComm0" (formula "7") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "7") (term "1,0,0")) + (rule "mul_literals" (formula "7") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "7") (term "0,0")) + (rule "polySimp_addComm0" (formula "7") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "7") (term "0,0")) + (rule "add_literals" (formula "7") (term "1,1,0,0")) + (rule "times_zero_1" (formula "7") (term "1,0,0")) + (rule "add_literals" (formula "7") (term "0,0")) + (rule "qeq_literals" (formula "7") (term "0")) + (builtin "One Step Simplification" (formula "7")) + (rule "true_left" (formula "7")) + (rule "inEqSimp_exactShadow3" (formula "4") (ifseqformula "17")) + (rule "polySimp_rightDist" (formula "4") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "4") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "4") (term "1,0,0")) + (rule "polySimp_mulAssoc" (formula "4") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "4") (term "0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "4") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "4") (term "0")) + (rule "polySimp_addAssoc" (formula "4") (term "0,0")) + (rule "polySimp_addComm0" (formula "4") (term "0,0,0")) + (rule "polySimp_pullOutFactor2b" (formula "4") (term "0,0")) + (rule "add_literals" (formula "4") (term "1,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "4")) + (rule "polySimp_mulComm0" (formula "4") (term "1")) + (rule "polySimp_rightDist" (formula "4") (term "1")) + (rule "mul_literals" (formula "4") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "4") (term "1,1")) + (rule "polySimp_elimOne" (formula "4") (term "1,1")) + (rule "inEqSimp_contradInEq0" (formula "4") (ifseqformula "8")) + (rule "andLeft" (formula "4")) + (rule "inEqSimp_homoInEq1" (formula "4")) + (rule "polySimp_mulComm0" (formula "4") (term "1,0")) + (rule "polySimp_rightDist" (formula "4") (term "1,0")) + (rule "mul_literals" (formula "4") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "4") (term "0")) + (rule "polySimp_addComm1" (formula "4") (term "0,0")) + (rule "add_literals" (formula "4") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "4") (term "0")) + (rule "add_literals" (formula "4") (term "1,1,0")) + (rule "times_zero_1" (formula "4") (term "1,0")) + (rule "add_literals" (formula "4") (term "0")) + (rule "leq_literals" (formula "4")) + (rule "closeFalse" (formula "4")) + ) + ) + ) + (branch "if b_2 false" + (builtin "One Step Simplification" (formula "22")) + (builtin "One Step Simplification" (formula "1")) + (rule "notLeft" (formula "1")) + (rule "inEqSimp_geqRight" (formula "18")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "0,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1")) + (rule "polySimp_elimOne" (formula "1") (term "1")) + (rule "inEqSimp_strengthen0" (formula "1") (ifseqformula "19")) + (rule "inEqSimp_contradEq3" (formula "19") (ifseqformula "1")) + (rule "polySimp_mulComm0" (formula "19") (term "1,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "19") (term "0,0")) + (rule "add_literals" (formula "19") (term "1,1,0,0")) + (rule "times_zero_1" (formula "19") (term "1,0,0")) + (rule "add_literals" (formula "19") (term "0,0")) + (rule "qeq_literals" (formula "19") (term "0")) + (builtin "One Step Simplification" (formula "19")) + (rule "false_right" (formula "19")) + (rule "elim_double_block_2" (formula "21") (term "1")) + (rule "elim_double_block_2" (formula "21") (term "1")) + (rule "returnUnfold" (formula "21") (term "1") (inst "#v0=i_7")) + (rule "variableDeclarationAssign" (formula "21") (term "1")) + (rule "variableDeclaration" (formula "21") (term "1") (newnames "i_7")) + (rule "methodCallWithAssignmentUnfoldArguments" (formula "21") (term "1")) + (rule "variableDeclarationAssign" (formula "21") (term "1")) + (rule "variableDeclaration" (formula "21") (term "1") (newnames "var")) + (rule "assignment" (formula "21") (term "1")) + (builtin "One Step Simplification" (formula "21")) + (rule "variableDeclarationAssign" (formula "21") (term "1")) + (rule "variableDeclaration" (formula "21") (term "1") (newnames "var_1")) + (rule "assignment" (formula "21") (term "1")) + (builtin "One Step Simplification" (formula "21")) + (rule "variableDeclarationAssign" (formula "21") (term "1")) + (rule "variableDeclaration" (formula "21") (term "1") (newnames "var_2")) + (rule "assignmentAdditionInt" (formula "21") (term "1")) + (builtin "One Step Simplification" (formula "21")) + (rule "translateJavaAddInt" (formula "21") (term "0,1,0")) + (rule "polySimp_addComm0" (formula "21") (term "0,1,0")) + (rule "variableDeclarationAssign" (formula "21") (term "1")) + (rule "variableDeclaration" (formula "21") (term "1") (newnames "var_3")) + (rule "assignment" (formula "21") (term "1")) + (builtin "One Step Simplification" (formula "21")) + (builtin "Use Operation Contract" (formula "21") (newnames "heapBefore_binSearchR_0,result_binSearchR_0,exc_0,heapAfter_binSearchR,anon_heap_binSearchR") (contract "BinSearch[BinSearch::binSearchR([I,int,int,int)].JML normal_behavior operation contract.0") (modality "diamond")) + (branch "Post (binSearchR)" + (builtin "One Step Simplification" (formula "23")) + (builtin "One Step Simplification" (formula "20")) + (rule "andLeft" (formula "20")) + (rule "andLeft" (formula "21")) + (rule "andLeft" (formula "22")) + (rule "andLeft" (formula "22")) + (rule "andLeft" (formula "23")) + (rule "inEqSimp_ltToLeq" (formula "22") (term "1,1")) + (rule "polySimp_mulComm0" (formula "22") (term "1,0,0,1,1")) + (rule "polySimp_addComm1" (formula "22") (term "0,1,1")) + (rule "inEqSimp_ltToLeq" (formula "23") (term "1,0,0,0")) + (rule "polySimp_mulComm0" (formula "23") (term "1,0,0,1,0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "22") (term "0,1")) + (rule "inEqSimp_commuteLeq" (formula "23") (term "0,0,0,0")) + (rule "assignment" (formula "27") (term "1")) + (builtin "One Step Simplification" (formula "27")) + (rule "blockEmpty" (formula "27") (term "1")) + (rule "blockReturn" (formula "27") (term "1")) + (rule "inEqSimp_sepNegMonomial0" (formula "22") (term "1,1")) + (rule "polySimp_mulLiterals" (formula "22") (term "0,1,1")) + (rule "polySimp_elimOne" (formula "22") (term "0,1,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "23") (term "1,0,0,0")) + (rule "polySimp_mulComm0" (formula "23") (term "1,1,0,0,0")) + (rule "polySimp_rightDist" (formula "23") (term "1,1,0,0,0")) + (rule "mul_literals" (formula "23") (term "0,1,1,0,0,0")) + (rule "polySimp_mulLiterals" (formula "23") (term "1,1,1,0,0,0")) + (rule "polySimp_elimOne" (formula "23") (term "1,1,1,0,0,0")) + (rule "pullOutSelect" (formula "23") (term "0,1,1") (inst "selectSK=arr_0:int")) + (rule "simplifySelectOfAnonEQ" (formula "23") (ifseqformula "20")) + (builtin "One Step Simplification" (formula "23") (ifInst "" (formula "27")) (ifInst "" (formula "11"))) + (rule "applyEqReverse" (formula "24") (term "0,1,1") (ifseqformula "23")) + (rule "hideAuxiliaryEq" (formula "23")) + (rule "cnf_rightDist" (formula "22")) + (rule "andLeft" (formula "22")) + (rule "commute_or" (formula "23")) + (rule "methodCallReturn" (formula "28") (term "1")) + (rule "assignment" (formula "28") (term "1")) + (builtin "One Step Simplification" (formula "28")) + (rule "methodCallEmpty" (formula "28") (term "1")) + (rule "tryEmpty" (formula "28") (term "1")) + (rule "emptyModality" (formula "28") (term "1")) + (builtin "One Step Simplification" (formula "28") (ifInst "" (formula "25"))) + (rule "replaceKnownSelect_taclet0101000_0" (formula "28") (term "0,1,1,1,0")) + (rule "replaceKnownAuxiliaryConstant_taclet0101000_1" (formula "28") (term "0,1,1,1,0")) + (rule "eqSymm" (formula "28") (term "1,0,0,1")) + (rule "Class_invariant_axiom_for_BinSearch" (formula "18") (ifseqformula "10")) + (rule "true_left" (formula "18")) + (rule "Class_invariant_axiom_for_BinSearch" (formula "24") (ifseqformula "10")) + (rule "true_left" (formula "24")) + (rule "cnf_rightDist" (formula "26") (term "0,0")) + (rule "commute_or" (formula "26") (term "1,0,0")) + (rule "replace_known_left" (formula "26") (term "1,0,0") (ifseqformula "22")) + (builtin "One Step Simplification" (formula "26")) + (rule "ifthenelse_split_for" (formula "23")) + (branch "exists int idx; ( idx >= 1 + quotient_0 & idx <= -1 + up & a[idx]@heapAfter_binSearchR = v) TRUE" + (rule "andLeft" (formula "24")) + (rule "exLeft" (formula "23") (inst "sk=idx_0:int")) + (rule "andLeft" (formula "23")) + (rule "andLeft" (formula "23")) + (rule "replace_known_left" (formula "21") (term "1") (ifseqformula "26")) + (builtin "One Step Simplification" (formula "21")) + (rule "true_left" (formula "21")) + (rule "replace_known_left" (formula "29") (term "1,1,1,0") (ifseqformula "26")) + (builtin "One Step Simplification" (formula "29")) + (rule "inEqSimp_homoInEq0" (formula "23")) + (rule "polySimp_addComm1" (formula "23") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "23")) + (rule "polySimp_mulComm0" (formula "23") (term "1")) + (rule "polySimp_rightDist" (formula "23") (term "1")) + (rule "mul_literals" (formula "23") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "23") (term "1,1")) + (rule "polySimp_elimOne" (formula "23") (term "1,1")) + (rule "pullOutSelect" (formula "24") (term "0") (inst "selectSK=arr_1:int")) + (rule "simplifySelectOfAnonEQ" (formula "24") (ifseqformula "19")) + (builtin "One Step Simplification" (formula "24") (ifInst "" (formula "29")) (ifInst "" (formula "11"))) + (rule "applyEqReverse" (formula "25") (term "0") (ifseqformula "24")) + (rule "hideAuxiliaryEq" (formula "24")) + (rule "inEqSimp_exactShadow3" (formula "23") (ifseqformula "4")) + (rule "polySimp_rightDist" (formula "23") (term "0,0")) + (rule "mul_literals" (formula "23") (term "0,0,0")) + (rule "polySimp_addAssoc" (formula "23") (term "0")) + (rule "polySimp_addComm1" (formula "23") (term "0,0")) + (rule "polySimp_addAssoc" (formula "23") (term "0,0,0")) + (rule "add_literals" (formula "23") (term "0,0,0,0")) + (rule "add_zero_left" (formula "23") (term "0,0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "23")) + (rule "polySimp_mulLiterals" (formula "23") (term "0")) + (rule "polySimp_elimOne" (formula "23") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "14") (ifseqformula "23")) + (rule "mul_literals" (formula "14") (term "0,0")) + (rule "add_zero_left" (formula "14") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "14")) + (rule "polySimp_mulLiterals" (formula "14") (term "0")) + (rule "polySimp_elimOne" (formula "14") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "23") (ifseqformula "14")) + (rule "polySimp_rightDist" (formula "23") (term "0,0")) + (rule "mul_literals" (formula "23") (term "0,0,0")) + (rule "polySimp_pullOutFactor0b" (formula "23") (term "0")) + (rule "add_literals" (formula "23") (term "1,1,0")) + (rule "polySimp_elimOne" (formula "23") (term "1,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "23")) + (rule "mul_literals" (formula "23") (term "1")) + (rule "inEqSimp_subsumption1" (formula "13") (ifseqformula "23")) + (rule "leq_literals" (formula "13") (term "0")) + (builtin "One Step Simplification" (formula "13")) + (rule "true_left" (formula "13")) + (rule "ifthenelse_split_for" (formula "31") (term "1,0")) + (branch "exists int idx; ( idx >= low & idx <= -1 + up & a[idx]@heapAfter_binSearchR = v) TRUE" + (rule "exLeft" (formula "1") (inst "sk=idx_1:int")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "1")) + (rule "inEqSimp_commuteGeq" (formula "1")) + (rule "inEqSimp_homoInEq0" (formula "2")) + (rule "polySimp_addComm1" (formula "2") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "2")) + (rule "polySimp_mulComm0" (formula "2") (term "1")) + (rule "polySimp_rightDist" (formula "2") (term "1")) + (rule "mul_literals" (formula "2") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,1")) + (rule "polySimp_elimOne" (formula "2") (term "1,1")) + (rule "pullOutSelect" (formula "3") (term "0") (inst "selectSK=arr_2:int")) + (rule "simplifySelectOfAnonEQ" (formula "3") (ifseqformula "23")) + (builtin "One Step Simplification" (formula "3") (ifInst "" (formula "34")) (ifInst "" (formula "15"))) + (rule "applyEqReverse" (formula "4") (term "0") (ifseqformula "3")) + (rule "hideAuxiliaryEq" (formula "3")) + (rule "inEqSimp_exactShadow3" (formula "17") (ifseqformula "1")) + (rule "mul_literals" (formula "17") (term "0,0")) + (rule "add_zero_left" (formula "17") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "2") (ifseqformula "7")) + (rule "polySimp_rightDist" (formula "2") (term "0,0")) + (rule "mul_literals" (formula "2") (term "0,0,0")) + (rule "polySimp_addAssoc" (formula "2") (term "0")) + (rule "polySimp_addComm1" (formula "2") (term "0,0")) + (rule "polySimp_addAssoc" (formula "2") (term "0,0,0")) + (rule "add_literals" (formula "2") (term "0,0,0,0")) + (rule "add_zero_left" (formula "2") (term "0,0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "2")) + (rule "polySimp_mulLiterals" (formula "2") (term "0")) + (rule "polySimp_elimOne" (formula "2") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "19") (ifseqformula "2")) + (rule "mul_literals" (formula "19") (term "0,0")) + (rule "add_zero_left" (formula "19") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "19")) + (rule "polySimp_mulLiterals" (formula "19") (term "0")) + (rule "polySimp_elimOne" (formula "19") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "18") (ifseqformula "19")) + (rule "mul_literals" (formula "18") (term "0,0")) + (rule "add_zero_left" (formula "18") (term "0")) + (rule "inEqSimp_subsumption6" (formula "18") (ifseqformula "29")) + (rule "greater_literals" (formula "18") (term "0,0")) + (builtin "One Step Simplification" (formula "18")) + (rule "mul_literals" (formula "18") (term "1,0")) + (rule "leq_literals" (formula "18") (term "0")) + (builtin "One Step Simplification" (formula "18")) + (rule "true_left" (formula "18")) + (rule "commute_and" (formula "37") (term "0")) + (rule "cut_direct" (formula "27") (term "1")) + (branch "CUT: up >= 1 + result_binSearchR_0 TRUE" + (builtin "One Step Simplification" (formula "28")) + (rule "true_left" (formula "28")) + (rule "inEqSimp_exactShadow3" (formula "27") (ifseqformula "8")) + (rule "polySimp_rightDist" (formula "27") (term "0,0")) + (rule "mul_literals" (formula "27") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "27") (term "0")) + (rule "polySimp_addAssoc" (formula "27") (term "0,0")) + (rule "polySimp_addAssoc" (formula "27") (term "0,0,0")) + (rule "add_literals" (formula "27") (term "0,0,0,0")) + (rule "add_zero_left" (formula "27") (term "0,0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "27")) + (rule "polySimp_mulLiterals" (formula "27") (term "0")) + (rule "polySimp_elimOne" (formula "27") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "34") (ifseqformula "27")) + (rule "polySimp_rightDist" (formula "34") (term "0,0")) + (rule "mul_literals" (formula "34") (term "0,0,0")) + (rule "polySimp_addAssoc" (formula "34") (term "0")) + (rule "polySimp_pullOutFactor0b" (formula "34") (term "0,0")) + (rule "add_literals" (formula "34") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "34") (term "1,0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "34")) + (rule "polySimp_mulLiterals" (formula "34") (term "0")) + (rule "polySimp_elimOne" (formula "34") (term "0")) + (rule "inEqSimp_subsumption0" (formula "10") (ifseqformula "34")) + (rule "inEqSimp_homoInEq0" (formula "10") (term "0")) + (rule "polySimp_mulComm0" (formula "10") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "10") (term "1,0,0")) + (rule "mul_literals" (formula "10") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "10") (term "0,0")) + (rule "polySimp_addComm0" (formula "10") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "10") (term "0,0")) + (rule "add_literals" (formula "10") (term "1,1,0,0")) + (rule "times_zero_1" (formula "10") (term "1,0,0")) + (rule "add_literals" (formula "10") (term "0,0")) + (rule "qeq_literals" (formula "10") (term "0")) + (builtin "One Step Simplification" (formula "10")) + (rule "true_left" (formula "10")) + (rule "inEqSimp_exactShadow3" (formula "19") (ifseqformula "33")) + (rule "mul_literals" (formula "19") (term "0,0")) + (rule "add_zero_left" (formula "19") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "19")) + (rule "mul_literals" (formula "19") (term "1")) + (rule "cut_direct" (formula "38") (term "0,0")) + (branch "CUT: result_binSearchR_0 >= low TRUE" + (builtin "One Step Simplification" (formula "39") (ifInst "" (formula "1"))) + (rule "allRight" (formula "39") (inst "sk=f_0:Field")) + (rule "allRight" (formula "39") (inst "sk=o_0:java.lang.Object")) + (rule "orRight" (formula "39")) + (rule "pullOutSelect" (formula "40") (term "0") (inst "selectSK=f_0_0:any")) + (rule "simplifySelectOfAnonEQ" (formula "1") (ifseqformula "26")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "40"))) + (rule "applyEqReverse" (formula "41") (term "0") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "41")) + (rule "closeTrue" (formula "41")) + ) + (branch "CUT: result_binSearchR_0 >= low FALSE" + (builtin "One Step Simplification" (formula "39") (ifInst "" (formula "38"))) + (rule "false_right" (formula "39")) + (rule "inEqSimp_geqRight" (formula "38")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "1")) + (rule "polySimp_rightDist" (formula "1") (term "1")) + (rule "mul_literals" (formula "1") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1")) + (rule "polySimp_elimOne" (formula "1") (term "1,1")) + (rule "inEqSimp_exactShadow3" (formula "35") (ifseqformula "1")) + (rule "polySimp_rightDist" (formula "35") (term "0,0")) + (rule "mul_literals" (formula "35") (term "0,0,0")) + (rule "polySimp_addAssoc" (formula "35") (term "0")) + (rule "polySimp_addComm1" (formula "35") (term "0,0")) + (rule "add_literals" (formula "35") (term "0,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "35")) + (rule "polySimp_mulComm0" (formula "35") (term "1")) + (rule "polySimp_rightDist" (formula "35") (term "1")) + (rule "mul_literals" (formula "35") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "35") (term "1,1")) + (rule "polySimp_elimOne" (formula "35") (term "1,1")) + (rule "inEqSimp_contradInEq0" (formula "35") (ifseqformula "34")) + (rule "andLeft" (formula "35")) + (rule "inEqSimp_homoInEq1" (formula "35")) + (rule "polySimp_mulComm0" (formula "35") (term "1,0")) + (rule "polySimp_rightDist" (formula "35") (term "1,0")) + (rule "mul_literals" (formula "35") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "35") (term "0")) + (rule "polySimp_addComm1" (formula "35") (term "0,0")) + (rule "add_literals" (formula "35") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "35") (term "0")) + (rule "add_literals" (formula "35") (term "1,1,0")) + (rule "times_zero_1" (formula "35") (term "1,0")) + (rule "add_literals" (formula "35") (term "0")) + (rule "leq_literals" (formula "35")) + (rule "closeFalse" (formula "35")) + ) + ) + (branch "CUT: up >= 1 + result_binSearchR_0 FALSE" + (builtin "One Step Simplification" (formula "27")) + (rule "replace_known_left" (formula "38") (term "0,1,0") (ifseqformula "27")) + (builtin "One Step Simplification" (formula "38")) + (rule "inEqSimp_geqRight" (formula "35")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "0,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0")) + (rule "applyEq" (formula "38") (term "0,0") (ifseqformula "28")) + (rule "inEqSimp_commuteGeq" (formula "38") (term "0")) + (rule "applyEq" (formula "34") (term "0") (ifseqformula "28")) + (rule "inEqSimp_homoInEq1" (formula "34")) + (rule "mul_literals" (formula "34") (term "1,0")) + (rule "polySimp_addComm1" (formula "34") (term "0")) + (rule "add_literals" (formula "34") (term "0,0")) + (rule "applyEq" (formula "35") (term "0,2,0") (ifseqformula "28")) + (rule "applyEq" (formula "1") (term "0,0,0") (ifseqformula "28")) + (rule "mul_literals" (formula "1") (term "0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "34")) + (rule "mul_literals" (formula "34") (term "1")) + (rule "inEqSimp_sepPosMonomial0" (formula "1")) + (rule "mul_literals" (formula "1") (term "1")) + (rule "inEqSimp_contradInEq1" (formula "38") (term "0") (ifseqformula "21")) + (rule "qeq_literals" (formula "38") (term "0,0")) + (builtin "One Step Simplification" (formula "38")) + (rule "false_right" (formula "38")) + (rule "inEqSimp_contradInEq0" (formula "29") (ifseqformula "34")) + (rule "qeq_literals" (formula "29") (term "0")) + (builtin "One Step Simplification" (formula "29")) + (rule "closeFalse" (formula "29")) + ) + ) + (branch "exists int idx; ( idx >= low & idx <= -1 + up & a[idx]@heapAfter_binSearchR = v) FALSE" + (rule "nnf_ex2all" (formula "31")) + (rule "nnf_notAnd" (formula "1") (term "0")) + (rule "nnf_notAnd" (formula "1") (term "0,0")) + (rule "inEqSimp_notGeq" (formula "1") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0,0")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1,0,0,0")) + (rule "polySimp_elimOne" (formula "1") (term "1,1,0,0,0")) + (rule "inEqSimp_notLeq" (formula "1") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0,1,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0,1,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0,1,0,0")) + (rule "add_literals" (formula "1") (term "0,0,0,1,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "1") (term "1,1,0,0")) + (rule "commute_and" (formula "32") (term "0")) + (rule "cut_direct" (formula "22") (term "1")) + (branch "CUT: up >= 1 + result_binSearchR_0 TRUE" + (builtin "One Step Simplification" (formula "23")) + (rule "true_left" (formula "23")) + (rule "inEqSimp_exactShadow3" (formula "22") (ifseqformula "5")) + (rule "polySimp_rightDist" (formula "22") (term "0,0")) + (rule "mul_literals" (formula "22") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "22") (term "0")) + (rule "polySimp_addAssoc" (formula "22") (term "0,0")) + (rule "polySimp_addAssoc" (formula "22") (term "0,0,0")) + (rule "add_literals" (formula "22") (term "0,0,0,0")) + (rule "add_zero_left" (formula "22") (term "0,0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "22")) + (rule "polySimp_mulLiterals" (formula "22") (term "0")) + (rule "polySimp_elimOne" (formula "22") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "29") (ifseqformula "22")) + (rule "polySimp_rightDist" (formula "29") (term "0,0")) + (rule "mul_literals" (formula "29") (term "0,0,0")) + (rule "polySimp_addAssoc" (formula "29") (term "0")) + (rule "polySimp_pullOutFactor0b" (formula "29") (term "0,0")) + (rule "add_literals" (formula "29") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "29") (term "1,0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "29")) + (rule "polySimp_mulLiterals" (formula "29") (term "0")) + (rule "polySimp_elimOne" (formula "29") (term "0")) + (rule "inEqSimp_subsumption0" (formula "7") (ifseqformula "29")) + (rule "inEqSimp_homoInEq0" (formula "7") (term "0")) + (rule "polySimp_mulComm0" (formula "7") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "7") (term "1,0,0")) + (rule "mul_literals" (formula "7") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "7") (term "0,0")) + (rule "polySimp_addComm0" (formula "7") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "7") (term "0,0")) + (rule "add_literals" (formula "7") (term "1,1,0,0")) + (rule "times_zero_1" (formula "7") (term "1,0,0")) + (rule "add_literals" (formula "7") (term "0,0")) + (rule "qeq_literals" (formula "7") (term "0")) + (builtin "One Step Simplification" (formula "7")) + (rule "true_left" (formula "7")) + (rule "inEqSimp_exactShadow3" (formula "14") (ifseqformula "28")) + (rule "mul_literals" (formula "14") (term "0,0")) + (rule "add_zero_left" (formula "14") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "14")) + (rule "mul_literals" (formula "14") (term "1")) + (rule "cut_direct" (formula "33") (term "0,0")) + (branch "CUT: result_binSearchR_0 = -1 TRUE" + (builtin "One Step Simplification" (formula "34") (ifInst "" (formula "1"))) + (rule "allRight" (formula "34") (inst "sk=f_0:Field")) + (rule "allRight" (formula "34") (inst "sk=o_0:java.lang.Object")) + (rule "orRight" (formula "34")) + (rule "applyEq" (formula "30") (term "0") (ifseqformula "1")) + (rule "inEqSimp_homoInEq1" (formula "30")) + (rule "mul_literals" (formula "30") (term "1,0")) + (rule "polySimp_addComm1" (formula "30") (term "0")) + (rule "add_literals" (formula "30") (term "0,0")) + (rule "applyEq" (formula "22") (term "0") (ifseqformula "1")) + (rule "inEqSimp_homoInEq0" (formula "22")) + (rule "mul_literals" (formula "22") (term "1,0")) + (rule "polySimp_addComm1" (formula "22") (term "0")) + (rule "polySimp_addComm0" (formula "22") (term "0,0")) + (rule "applyEq" (formula "31") (term "0,2,0") (ifseqformula "1")) + (rule "applyEq" (formula "23") (term "1,1") (ifseqformula "1")) + (rule "add_literals" (formula "23") (term "1")) + (rule "inEqSimp_sepPosMonomial0" (formula "30")) + (rule "mul_literals" (formula "30") (term "1")) + (rule "inEqSimp_sepNegMonomial1" (formula "22")) + (rule "polySimp_mulLiterals" (formula "22") (term "0")) + (rule "polySimp_elimOne" (formula "22") (term "0")) + (rule "inEqSimp_contradInEq0" (formula "24") (ifseqformula "30")) + (rule "qeq_literals" (formula "24") (term "0")) + (builtin "One Step Simplification" (formula "24")) + (rule "closeFalse" (formula "24")) + ) + (branch "CUT: result_binSearchR_0 = -1 FALSE" + (builtin "One Step Simplification" (formula "34") (ifInst "" (formula "33"))) + (rule "false_right" (formula "34")) + (rule "allLeft" (formula "17") (inst "t=result_binSearchR_0:int")) + (rule "inEqSimp_commuteGeq" (formula "17") (term "1,0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "17") (term "1,0,0")) + (rule "inEqSimp_commuteGeq" (formula "17") (term "1,0")) + (rule "applyEq" (formula "17") (term "1,1,0") (ifseqformula "31")) + (rule "commute_or_2" (formula "17") (term "0,0")) + (rule "commute_or_2" (formula "17") (term "0")) + (rule "cut_direct" (formula "17") (term "1,0")) + (branch "CUT: a.length <= result_binSearchR_0 TRUE" + (builtin "One Step Simplification" (formula "18")) + (rule "true_left" (formula "18")) + (rule "inEqSimp_exactShadow3" (formula "15") (ifseqformula "17")) + (rule "mul_literals" (formula "15") (term "0,0")) + (rule "add_zero_left" (formula "15") (term "0")) + (rule "inEqSimp_contradEq7" (formula "35") (ifseqformula "15")) + (rule "add_zero_left" (formula "35") (term "0,0")) + (rule "mul_literals" (formula "35") (term "0,0")) + (rule "leq_literals" (formula "35") (term "0")) + (builtin "One Step Simplification" (formula "35")) + (rule "false_right" (formula "35")) + (rule "inEqSimp_exactShadow3" (formula "17") (ifseqformula "18")) + (rule "polySimp_mulComm0" (formula "17") (term "0,0")) + (rule "polySimp_addComm0" (formula "17") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "17")) + (rule "polySimp_mulLiterals" (formula "17") (term "0")) + (rule "polySimp_elimOne" (formula "17") (term "0")) + (rule "inEqSimp_contradInEq0" (formula "25") (ifseqformula "17")) + (rule "andLeft" (formula "25")) + (rule "inEqSimp_homoInEq1" (formula "25")) + (rule "polySimp_pullOutFactor1b" (formula "25") (term "0")) + (rule "add_literals" (formula "25") (term "1,1,0")) + (rule "times_zero_1" (formula "25") (term "1,0")) + (rule "add_literals" (formula "25") (term "0")) + (rule "leq_literals" (formula "25")) + (rule "closeFalse" (formula "25")) + ) + (branch "CUT: a.length <= result_binSearchR_0 FALSE" + (builtin "One Step Simplification" (formula "17")) + (rule "inEqSimp_leqRight" (formula "32")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "1")) + (rule "polySimp_rightDist" (formula "1") (term "1")) + (rule "mul_literals" (formula "1") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1")) + (rule "polySimp_elimOne" (formula "1") (term "1,1")) + (rule "allLeft" (formula "19") (inst "t=idx_0:int")) + (rule "inEqSimp_commuteGeq" (formula "19") (term "1,0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "19") (term "1,0,0")) + (rule "inEqSimp_commuteGeq" (formula "19") (term "1,0")) + (rule "applyEq" (formula "19") (term "1,1,0") (ifseqformula "30")) + (rule "commute_or_2" (formula "19") (term "0,0")) + (rule "commute_or_2" (formula "19") (term "0")) + (rule "cut_direct" (formula "19") (term "1,0")) + (branch "CUT: a.length <= idx_0 TRUE" + (builtin "One Step Simplification" (formula "20")) + (rule "true_left" (formula "20")) + (rule "inEqSimp_exactShadow3" (formula "16") (ifseqformula "19")) + (rule "mul_literals" (formula "16") (term "0,0")) + (rule "add_zero_left" (formula "16") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "1") (ifseqformula "20")) + (rule "polySimp_rightDist" (formula "1") (term "0,0")) + (rule "mul_literals" (formula "1") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "1") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "0")) + (rule "polySimp_elimOne" (formula "1") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "19") (ifseqformula "21")) + (rule "polySimp_mulComm0" (formula "19") (term "0,0")) + (rule "polySimp_addComm0" (formula "19") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "19")) + (rule "polySimp_mulLiterals" (formula "19") (term "0")) + (rule "polySimp_elimOne" (formula "19") (term "0")) + (rule "inEqSimp_contradInEq0" (formula "32") (ifseqformula "19")) + (rule "andLeft" (formula "32")) + (rule "inEqSimp_homoInEq1" (formula "32")) + (rule "polySimp_pullOutFactor1b" (formula "32") (term "0")) + (rule "add_literals" (formula "32") (term "1,1,0")) + (rule "times_zero_1" (formula "32") (term "1,0")) + (rule "add_literals" (formula "32") (term "0")) + (rule "leq_literals" (formula "32")) + (rule "closeFalse" (formula "32")) + ) + (branch "CUT: a.length <= idx_0 FALSE" + (builtin "One Step Simplification" (formula "19")) + (rule "inEqSimp_leqRight" (formula "34")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "1")) + (rule "polySimp_rightDist" (formula "1") (term "1")) + (rule "mul_literals" (formula "1") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1")) + (rule "polySimp_elimOne" (formula "1") (term "1,1")) + (rule "allLeft" (formula "3") (inst "t=idx_0:int")) + (rule "replaceKnownSelect_taclet00101000_2" (formula "3") (term "0,0,1")) + (rule "replaceKnownAuxiliaryConstant_taclet00101000_3" (formula "3") (term "0,0,1")) + (rule "replace_known_left" (formula "3") (term "0,1") (ifseqformula "32")) + (builtin "One Step Simplification" (formula "3")) + (rule "inEqSimp_commuteGeq" (formula "3") (term "1")) + (rule "inEqSimp_homoInEq0" (formula "3") (term "0")) + (rule "polySimp_addComm1" (formula "3") (term "0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "3") (term "0")) + (rule "polySimp_mulComm0" (formula "3") (term "1,0")) + (rule "polySimp_rightDist" (formula "3") (term "1,0")) + (rule "mul_literals" (formula "3") (term "0,1,0")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,1,0")) + (rule "polySimp_elimOne" (formula "3") (term "1,1,0")) + (rule "inEqSimp_contradInEq1" (formula "3") (term "1") (ifseqformula "31")) + (rule "inEqSimp_homoInEq1" (formula "3") (term "0,1")) + (rule "polySimp_pullOutFactor1b" (formula "3") (term "0,0,1")) + (rule "add_literals" (formula "3") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "3") (term "1,0,0,1")) + (rule "add_literals" (formula "3") (term "0,0,1")) + (rule "leq_literals" (formula "3") (term "0,1")) + (builtin "One Step Simplification" (formula "3")) + (rule "inEqSimp_exactShadow3" (formula "3") (ifseqformula "33")) + (rule "polySimp_rightDist" (formula "3") (term "0,0")) + (rule "mul_literals" (formula "3") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "3") (term "0")) + (rule "polySimp_addAssoc" (formula "3") (term "0,0")) + (rule "add_literals" (formula "3") (term "0,0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "3")) + (rule "polySimp_mulLiterals" (formula "3") (term "0")) + (rule "polySimp_elimOne" (formula "3") (term "0")) + (rule "inEqSimp_contradInEq0" (formula "30") (ifseqformula "3")) + (rule "andLeft" (formula "30")) + (rule "inEqSimp_homoInEq1" (formula "30")) + (rule "polySimp_mulComm0" (formula "30") (term "1,0")) + (rule "polySimp_rightDist" (formula "30") (term "1,0")) + (rule "mul_literals" (formula "30") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "30") (term "0")) + (rule "polySimp_addComm1" (formula "30") (term "0,0")) + (rule "add_literals" (formula "30") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "30") (term "0")) + (rule "add_literals" (formula "30") (term "1,1,0")) + (rule "times_zero_1" (formula "30") (term "1,0")) + (rule "add_literals" (formula "30") (term "0")) + (rule "leq_literals" (formula "30")) + (rule "closeFalse" (formula "30")) + ) + ) + ) + ) + (branch "CUT: up >= 1 + result_binSearchR_0 FALSE" + (builtin "One Step Simplification" (formula "22")) + (rule "replace_known_left" (formula "33") (term "0,0") (ifseqformula "22")) + (builtin "One Step Simplification" (formula "33") (ifInst "" (formula "22"))) + (rule "allRight" (formula "33") (inst "sk=f_0:Field")) + (rule "allRight" (formula "33") (inst "sk=o_0:java.lang.Object")) + (rule "orRight" (formula "33")) + (rule "inEqSimp_geqRight" (formula "30")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "0,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0")) + (rule "applyEq" (formula "29") (term "0") (ifseqformula "23")) + (rule "inEqSimp_homoInEq1" (formula "29")) + (rule "mul_literals" (formula "29") (term "1,0")) + (rule "polySimp_addComm1" (formula "29") (term "0")) + (rule "add_literals" (formula "29") (term "0,0")) + (rule "applyEq" (formula "30") (term "0,2,0") (ifseqformula "23")) + (rule "applyEq" (formula "1") (term "0,0,0") (ifseqformula "23")) + (rule "mul_literals" (formula "1") (term "0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "29")) + (rule "mul_literals" (formula "29") (term "1")) + (rule "inEqSimp_sepPosMonomial0" (formula "1")) + (rule "mul_literals" (formula "1") (term "1")) + (rule "inEqSimp_contradInEq0" (formula "24") (ifseqformula "29")) + (rule "qeq_literals" (formula "24") (term "0")) + (builtin "One Step Simplification" (formula "24")) + (rule "closeFalse" (formula "24")) + ) + ) + ) + (branch "exists int idx; ( idx >= 1 + quotient_0 & idx <= -1 + up & a[idx]@heapAfter_binSearchR = v) FALSE" + (rule "replace_known_left" (formula "21") (term "0") (ifseqformula "23")) + (builtin "One Step Simplification" (formula "21")) + (rule "true_left" (formula "21")) + (rule "replace_known_left" (formula "21") (term "0") (ifseqformula "22")) + (builtin "One Step Simplification" (formula "21")) + (rule "true_left" (formula "21")) + (rule "replace_known_left" (formula "25") (term "0,0,0") (ifseqformula "21")) + (builtin "One Step Simplification" (formula "25") (ifInst "" (formula "21"))) + (rule "applyEq" (formula "25") (term "0,0,1,0") (ifseqformula "21")) + (rule "inEqSimp_commuteGeq" (formula "25") (term "0,1,0")) + (rule "applyEq" (formula "25") (term "0,2,0,1,1,0") (ifseqformula "21")) + (rule "inEqSimp_contradInEq1" (formula "25") (term "0,1,0") (ifseqformula "14")) + (rule "qeq_literals" (formula "25") (term "0,0,1,0")) + (builtin "One Step Simplification" (formula "25")) + (rule "nnf_ex2all" (formula "22")) + (rule "nnf_notAnd" (formula "1") (term "0")) + (rule "nnf_notAnd" (formula "1") (term "0,0")) + (rule "inEqSimp_notGeq" (formula "1") (term "0,0,0")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0,0,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0,0,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0,0,0,0")) + (rule "add_literals" (formula "1") (term "0,0,0,0,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1") (term "0,0,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,0,0,0")) + (rule "polySimp_elimOne" (formula "1") (term "1,0,0,0")) + (rule "inEqSimp_notLeq" (formula "1") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0,1,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0,1,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0,1,0,0")) + (rule "add_literals" (formula "1") (term "0,0,0,1,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "1") (term "1,1,0,0")) + (rule "andRight" (formula "25")) + (branch + (rule "notRight" (formula "25")) + (rule "exLeft" (formula "1") (inst "sk=idx_0:int")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "1")) + (rule "inEqSimp_commuteGeq" (formula "1")) + (rule "inEqSimp_homoInEq0" (formula "2")) + (rule "polySimp_addComm1" (formula "2") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "2")) + (rule "polySimp_mulComm0" (formula "2") (term "1")) + (rule "polySimp_rightDist" (formula "2") (term "1")) + (rule "mul_literals" (formula "2") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,1")) + (rule "polySimp_elimOne" (formula "2") (term "1,1")) + (rule "pullOutSelect" (formula "3") (term "0") (inst "selectSK=arr_1:int")) + (rule "simplifySelectOfAnonEQ" (formula "3") (ifseqformula "24")) + (builtin "One Step Simplification" (formula "3") (ifInst "" (formula "28")) (ifInst "" (formula "16"))) + (rule "applyEqReverse" (formula "4") (term "0") (ifseqformula "3")) + (rule "hideAuxiliaryEq" (formula "3")) + (rule "inEqSimp_exactShadow3" (formula "18") (ifseqformula "1")) + (rule "mul_literals" (formula "18") (term "0,0")) + (rule "add_zero_left" (formula "18") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "2") (ifseqformula "8")) + (rule "polySimp_rightDist" (formula "2") (term "0,0")) + (rule "mul_literals" (formula "2") (term "0,0,0")) + (rule "polySimp_addAssoc" (formula "2") (term "0")) + (rule "polySimp_addComm1" (formula "2") (term "0,0")) + (rule "polySimp_addAssoc" (formula "2") (term "0,0,0")) + (rule "add_literals" (formula "2") (term "0,0,0,0")) + (rule "add_zero_left" (formula "2") (term "0,0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "2")) + (rule "polySimp_mulLiterals" (formula "2") (term "0")) + (rule "polySimp_elimOne" (formula "2") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "20") (ifseqformula "2")) + (rule "mul_literals" (formula "20") (term "0,0")) + (rule "add_zero_left" (formula "20") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "20")) + (rule "polySimp_mulLiterals" (formula "20") (term "0")) + (rule "polySimp_elimOne" (formula "20") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "19") (ifseqformula "20")) + (rule "mul_literals" (formula "19") (term "0,0")) + (rule "add_zero_left" (formula "19") (term "0")) + (rule "inEqSimp_subsumption6" (formula "19") (ifseqformula "18")) + (rule "greater_literals" (formula "19") (term "0,0")) + (builtin "One Step Simplification" (formula "19")) + (rule "mul_literals" (formula "19") (term "1,0")) + (rule "leq_literals" (formula "19") (term "0")) + (builtin "One Step Simplification" (formula "19")) + (rule "true_left" (formula "19")) + (rule "allLeft" (formula "24") (inst "t=quotient_0:int")) + (rule "inEqSimp_commuteGeq" (formula "24") (term "1,0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "24") (term "1,0,0")) + (rule "inEqSimp_commuteGeq" (formula "24") (term "1,0")) + (rule "commute_or_2" (formula "24") (term "0,0")) + (rule "commute_or_2" (formula "24") (term "0")) + (rule "cut_direct" (formula "24") (term "1,0")) + (branch "CUT: a.length <= quotient_0 TRUE" + (builtin "One Step Simplification" (formula "25")) + (rule "true_left" (formula "25")) + (rule "inEqSimp_exactShadow3" (formula "22") (ifseqformula "24")) + (rule "mul_literals" (formula "22") (term "0,0")) + (rule "add_zero_left" (formula "22") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "23") (ifseqformula "24")) + (rule "polySimp_mulComm0" (formula "23") (term "0,0")) + (rule "polySimp_addComm0" (formula "23") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "23")) + (rule "polySimp_mulLiterals" (formula "23") (term "0")) + (rule "polySimp_elimOne" (formula "23") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "3") (ifseqformula "23")) + (rule "polySimp_rightDist" (formula "3") (term "0,0")) + (rule "mul_literals" (formula "3") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "3") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "3")) + (rule "polySimp_mulLiterals" (formula "3") (term "0")) + (rule "polySimp_elimOne" (formula "3") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "13") (ifseqformula "24")) + (rule "polySimp_rightDist" (formula "13") (term "0,0")) + (rule "mul_literals" (formula "13") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "13") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "13")) + (rule "polySimp_mulLiterals" (formula "13") (term "0")) + (rule "polySimp_elimOne" (formula "13") (term "0")) + (rule "inEqSimp_subsumption0" (formula "12") (ifseqformula "13")) + (rule "inEqSimp_homoInEq0" (formula "12") (term "0")) + (rule "polySimp_mulComm0" (formula "12") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "12") (term "1,0,0")) + (rule "mul_literals" (formula "12") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "12") (term "0,0")) + (rule "polySimp_addComm0" (formula "12") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "12") (term "0,0")) + (rule "add_literals" (formula "12") (term "1,1,0,0")) + (rule "times_zero_1" (formula "12") (term "1,0,0")) + (rule "add_literals" (formula "12") (term "0,0")) + (rule "qeq_literals" (formula "12") (term "0")) + (builtin "One Step Simplification" (formula "12")) + (rule "true_left" (formula "12")) + (rule "inEqSimp_exactShadow3" (formula "9") (ifseqformula "24")) + (rule "polySimp_rightDist" (formula "9") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "9") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "9") (term "1,0,0")) + (rule "polySimp_mulAssoc" (formula "9") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "9") (term "0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "9") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "9") (term "0")) + (rule "polySimp_pullOutFactor2" (formula "9") (term "0,0")) + (rule "add_literals" (formula "9") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "9")) + (rule "polySimp_mulLiterals" (formula "9") (term "1")) + (rule "polySimp_elimOne" (formula "9") (term "1")) + (rule "inEqSimp_contradInEq0" (formula "9") (ifseqformula "13")) + (rule "andLeft" (formula "9")) + (rule "inEqSimp_homoInEq1" (formula "9")) + (rule "polySimp_mulComm0" (formula "9") (term "1,0")) + (rule "polySimp_rightDist" (formula "9") (term "1,0")) + (rule "mul_literals" (formula "9") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "9") (term "0")) + (rule "polySimp_addComm0" (formula "9") (term "0,0")) + (rule "polySimp_pullOutFactor1b" (formula "9") (term "0")) + (rule "add_literals" (formula "9") (term "1,1,0")) + (rule "times_zero_1" (formula "9") (term "1,0")) + (rule "add_literals" (formula "9") (term "0")) + (rule "leq_literals" (formula "9")) + (rule "closeFalse" (formula "9")) + ) + (branch "CUT: a.length <= quotient_0 FALSE" + (builtin "One Step Simplification" (formula "24")) + (rule "inEqSimp_leqRight" (formula "30")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "1")) + (rule "polySimp_rightDist" (formula "1") (term "1")) + (rule "mul_literals" (formula "1") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1")) + (rule "polySimp_elimOne" (formula "1") (term "1,1")) + (rule "allLeft" (formula "6") (inst "t=idx_0:int")) + (rule "replaceKnownSelect_taclet010101000_2" (formula "6") (term "0,0,1")) + (rule "replaceKnownAuxiliaryConstant_taclet010101000_3" (formula "6") (term "0,0,1")) + (rule "replace_known_left" (formula "6") (term "0,1") (ifseqformula "5")) + (builtin "One Step Simplification" (formula "6")) + (rule "inEqSimp_commuteGeq" (formula "6") (term "1")) + (rule "inEqSimp_contradInEq1" (formula "6") (term "1") (ifseqformula "4")) + (rule "inEqSimp_homoInEq1" (formula "6") (term "0,1")) + (rule "polySimp_pullOutFactor1b" (formula "6") (term "0,0,1")) + (rule "add_literals" (formula "6") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "6") (term "1,0,0,1")) + (rule "add_literals" (formula "6") (term "0,0,1")) + (rule "leq_literals" (formula "6") (term "0,1")) + (builtin "One Step Simplification" (formula "6")) + (rule "inEqSimp_exactShadow3" (formula "21") (ifseqformula "6")) + (rule "mul_literals" (formula "21") (term "0,0")) + (rule "add_zero_left" (formula "21") (term "0")) + (rule "allLeft" (formula "26") (inst "t=idx_0:int")) + (rule "inEqSimp_commuteLeq" (formula "26") (term "1")) + (rule "applyEq" (formula "26") (term "1,1") (ifseqformula "5")) + (rule "inEqSimp_contradInEq1" (formula "26") (term "0,0") (ifseqformula "21")) + (rule "qeq_literals" (formula "26") (term "0,0,0")) + (builtin "One Step Simplification" (formula "26")) + (rule "inEqSimp_contradInEq0" (formula "26") (term "1") (ifseqformula "8")) + (rule "inEqSimp_homoInEq1" (formula "26") (term "0,1")) + (rule "polySimp_mulComm0" (formula "26") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "26") (term "1,0,0,1")) + (rule "mul_literals" (formula "26") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "26") (term "0,0,1")) + (rule "polySimp_addComm0" (formula "26") (term "0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "26") (term "0,0,1")) + (rule "add_literals" (formula "26") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "26") (term "1,0,0,1")) + (rule "add_literals" (formula "26") (term "0,0,1")) + (rule "leq_literals" (formula "26") (term "0,1")) + (builtin "One Step Simplification" (formula "26")) + (rule "inEqSimp_antiSymm" (formula "26") (ifseqformula "6")) + (rule "applyEq" (formula "21") (term "0") (ifseqformula "26")) + (rule "applyEq" (formula "26") (term "0") (ifseqformula "25")) + (rule "inEqSimp_homoInEq1" (formula "26")) + (rule "polySimp_pullOutFactor1" (formula "26") (term "0")) + (rule "add_literals" (formula "26") (term "1,0")) + (rule "times_zero_1" (formula "26") (term "0")) + (rule "leq_literals" (formula "26")) + (rule "true_left" (formula "26")) + (rule "applyEq" (formula "21") (term "0") (ifseqformula "25")) + (rule "inEqSimp_homoInEq0" (formula "21")) + (rule "polySimp_pullOutFactor0" (formula "21") (term "0")) + (rule "add_literals" (formula "21") (term "1,0")) + (rule "polySimp_elimOne" (formula "21") (term "0")) + (rule "applyEq" (formula "6") (term "0") (ifseqformula "24")) + (rule "inEqSimp_homoInEq0" (formula "6")) + (rule "polySimp_pullOutFactor1" (formula "6") (term "0")) + (rule "add_literals" (formula "6") (term "1,0")) + (rule "times_zero_1" (formula "6") (term "0")) + (rule "qeq_literals" (formula "6")) + (rule "true_left" (formula "6")) + (rule "applyEq" (formula "5") (term "0,2,0") (ifseqformula "23")) + (rule "applyEq" (formula "2") (term "1") (ifseqformula "23")) + (rule "applyEq" (formula "3") (term "1,1") (ifseqformula "22")) + (rule "applyEq" (formula "2") (term "0,1,1") (ifseqformula "22")) + (rule "polySimp_pullOutFactor0" (formula "2") (term "1")) + (rule "add_literals" (formula "2") (term "1,1")) + (rule "polySimp_elimOne" (formula "2") (term "1")) + (rule "applyEq" (formula "5") (term "0") (ifseqformula "3")) + (rule "inEqSimp_homoInEq0" (formula "5")) + (rule "polySimp_pullOutFactor1b" (formula "5") (term "0")) + (rule "add_literals" (formula "5") (term "1,1,0")) + (rule "times_zero_1" (formula "5") (term "1,0")) + (rule "add_literals" (formula "5") (term "0")) + (rule "qeq_literals" (formula "5")) + (rule "closeFalse" (formula "5")) + ) + ) + (branch + (rule "allRight" (formula "25") (inst "sk=f_0:Field")) + (rule "allRight" (formula "25") (inst "sk=o_0:java.lang.Object")) + (rule "orRight" (formula "25")) + (rule "pullOutSelect" (formula "26") (term "0") (inst "selectSK=f_0_0:any")) + (rule "simplifySelectOfAnonEQ" (formula "1") (ifseqformula "21")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "26"))) + (rule "applyEqReverse" (formula "27") (term "0") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "27")) + (rule "closeTrue" (formula "27")) + ) + ) + ) + (branch "Exceptional Post (binSearchR)" + (builtin "One Step Simplification" (formula "23")) + (builtin "One Step Simplification" (formula "20")) + (rule "andLeft" (formula "20")) + (rule "andLeft" (formula "21")) + (rule "andLeft" (formula "22")) + (rule "andLeft" (formula "21")) + (rule "andLeft" (formula "23")) + (rule "notLeft" (formula "21")) + (rule "close" (formula "25") (ifseqformula "24")) + ) + (branch "Pre (binSearchR)" + (builtin "One Step Simplification" (formula "21") (ifInst "" (formula "18")) (ifInst "" (formula "20")) (ifInst "" (formula "8")) (ifInst "" (formula "20")) (ifInst "" (formula "11"))) + (rule "polySimp_elimSub" (formula "21") (term "0,1")) + (rule "polySimp_mulComm0" (formula "21") (term "1,0,1")) + (rule "polySimp_rightDist" (formula "21") (term "1,0,1")) + (rule "mul_literals" (formula "21") (term "0,1,0,1")) + (rule "polySimp_addComm0" (formula "21") (term "0,1")) + (rule "measuredByCheck" (formula "21") (term "1") (ifseqformula "12")) + (rule "precOfInt" (formula "21") (term "1")) + (rule "inEqSimp_ltToLeq" (formula "21") (term "1,0,0,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "21") (term "1,0,0,1,0,0,0,0,1,0")) + (rule "polySimp_addComm1" (formula "21") (term "0,1,0,0,0,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "21") (term "1,0,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "21") (term "1,0,0,1,0,0,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "21") (term "1,1")) + (rule "polySimp_rightDist" (formula "21") (term "1,0,0,1,1")) + (rule "polySimp_mulAssoc" (formula "21") (term "0,1,0,0,1,1")) + (rule "polySimp_mulComm0" (formula "21") (term "0,0,1,0,0,1,1")) + (rule "polySimp_mulLiterals" (formula "21") (term "0,1,0,0,1,1")) + (rule "polySimp_elimOne" (formula "21") (term "0,1,0,0,1,1")) + (rule "polySimp_addAssoc" (formula "21") (term "0,0,1,1")) + (rule "polySimp_addAssoc" (formula "21") (term "0,1,1")) + (rule "polySimp_addComm1" (formula "21") (term "0,0,1,1")) + (rule "polySimp_pullOutFactor2b" (formula "21") (term "0,1,1")) + (rule "add_literals" (formula "21") (term "1,1,0,1,1")) + (rule "times_zero_1" (formula "21") (term "1,0,1,1")) + (rule "add_zero_right" (formula "21") (term "0,1,1")) + (rule "polySimp_addComm1" (formula "21") (term "0,1,1")) + (rule "polySimp_addAssoc" (formula "21") (term "0,0,1,1")) + (rule "add_literals" (formula "21") (term "0,0,0,1,1")) + (rule "add_zero_left" (formula "21") (term "0,0,1,1")) + (rule "inEqSimp_commuteLeq" (formula "21") (term "1,0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "21") (term "1,0,0")) + (rule "replace_known_left" (formula "21") (term "1,0,0") (ifseqformula "16")) + (builtin "One Step Simplification" (formula "21")) + (rule "inEqSimp_commuteLeq" (formula "21") (term "0,0,0,0,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "21") (term "1,0,0,1,0")) + (rule "inEqSimp_homoInEq0" (formula "21") (term "0,0,0")) + (rule "mul_literals" (formula "21") (term "1,0,0,0,0")) + (rule "add_zero_right" (formula "21") (term "0,0,0,0")) + (rule "inEqSimp_homoInEq0" (formula "21") (term "0,1")) + (rule "mul_literals" (formula "21") (term "1,0,0,1")) + (rule "add_zero_right" (formula "21") (term "0,0,1")) + (rule "inEqSimp_sepNegMonomial0" (formula "21") (term "1,0,0,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "21") (term "0,1,0,0,0,0,1,0")) + (rule "polySimp_elimOne" (formula "21") (term "0,1,0,0,0,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "21") (term "1,0,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "21") (term "1,1,0,0,0,1,0")) + (rule "polySimp_rightDist" (formula "21") (term "1,1,0,0,0,1,0")) + (rule "mul_literals" (formula "21") (term "0,1,1,0,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "21") (term "1,1,1,0,0,0,1,0")) + (rule "polySimp_elimOne" (formula "21") (term "1,1,1,0,0,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "21") (term "1,1")) + (rule "polySimp_mulLiterals" (formula "21") (term "1,1,1")) + (rule "polySimp_elimOne" (formula "21") (term "1,1,1")) + (rule "replace_known_left" (formula "21") (term "1,1") (ifseqformula "6")) + (builtin "One Step Simplification" (formula "21")) + (rule "inEqSimp_sepPosMonomial1" (formula "21") (term "0,0,0")) + (rule "mul_literals" (formula "21") (term "1,0,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "21") (term "1")) + (rule "polySimp_mulComm0" (formula "21") (term "1,1")) + (rule "polySimp_rightDist" (formula "21") (term "1,1")) + (rule "mul_literals" (formula "21") (term "0,1,1")) + (rule "polySimp_mulLiterals" (formula "21") (term "1,1,1")) + (rule "polySimp_elimOne" (formula "21") (term "1,1,1")) + (rule "inEqSimp_subsumption1" (formula "21") (term "0,0,0") (ifseqformula "13")) + (rule "leq_literals" (formula "21") (term "0,0,0,0")) + (builtin "One Step Simplification" (formula "21")) + (rule "nnf_imp2or" (formula "21") (term "0,0,1,0")) + (rule "nnf_notAnd" (formula "21") (term "0,0,0,1,0")) + (rule "inEqSimp_notLeq" (formula "21") (term "1,0,0,0,1,0")) + (rule "polySimp_rightDist" (formula "21") (term "1,0,0,1,0,0,0,1,0")) + (rule "mul_literals" (formula "21") (term "0,1,0,0,1,0,0,0,1,0")) + (rule "polySimp_addAssoc" (formula "21") (term "0,0,1,0,0,0,1,0")) + (rule "add_literals" (formula "21") (term "0,0,0,1,0,0,0,1,0")) + (rule "add_zero_left" (formula "21") (term "0,0,1,0,0,0,1,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "21") (term "1,0,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "21") (term "1,1,0,0,0,1,0")) + (rule "polySimp_elimOne" (formula "21") (term "1,1,0,0,0,1,0")) + (rule "nnf_notAnd" (formula "21") (term "0,0,0,0,1,0")) + (rule "inEqSimp_notGeq" (formula "21") (term "0,0,0,0,0,1,0")) + (rule "mul_literals" (formula "21") (term "1,0,0,0,0,0,0,0,1,0")) + (rule "add_literals" (formula "21") (term "0,0,0,0,0,0,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "21") (term "0,0,0,0,0,1,0")) + (rule "mul_literals" (formula "21") (term "1,0,0,0,0,0,1,0")) + (rule "inEqSimp_notGeq" (formula "21") (term "1,0,0,0,0,1,0")) + (rule "polySimp_rightDist" (formula "21") (term "1,0,0,1,0,0,0,0,1,0")) + (rule "mul_literals" (formula "21") (term "0,1,0,0,1,0,0,0,0,1,0")) + (rule "polySimp_addAssoc" (formula "21") (term "0,0,1,0,0,0,0,1,0")) + (rule "add_literals" (formula "21") (term "0,0,0,1,0,0,0,0,1,0")) + (rule "add_zero_left" (formula "21") (term "0,0,1,0,0,0,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "21") (term "1,0,0,0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "21") (term "1,1,0,0,0,0,1,0")) + (rule "polySimp_elimOne" (formula "21") (term "1,1,0,0,0,0,1,0")) + (rule "Class_invariant_axiom_for_BinSearch" (formula "18") (ifseqformula "10")) + (rule "true_left" (formula "18")) + (rule "cut_direct" (formula "20") (term "0,0")) + (branch "CUT: up >= 1 + quotient_0 TRUE" + (builtin "One Step Simplification" (formula "21") (ifInst "" (formula "1"))) + (rule "allRight" (formula "21") (inst "sk=y_0:int")) + (rule "allRight" (formula "21") (inst "sk=x_0:int")) + (rule "orRight" (formula "21")) + (rule "orRight" (formula "21")) + (rule "orRight" (formula "21")) + (rule "inEqSimp_geqRight" (formula "24")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0")) + (rule "inEqSimp_geqRight" (formula "24")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0")) + (rule "polySimp_addComm1" (formula "1") (term "0")) + (rule "inEqSimp_leqRight" (formula "23")) + (rule "mul_literals" (formula "1") (term "1,0,0")) + (rule "add_literals" (formula "1") (term "0,0")) + (rule "add_zero_left" (formula "1") (term "0")) + (rule "inEqSimp_leqRight" (formula "24")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "4")) + (rule "polySimp_mulComm0" (formula "4") (term "1")) + (rule "polySimp_rightDist" (formula "4") (term "1")) + (rule "mul_literals" (formula "4") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "4") (term "1,1")) + (rule "polySimp_elimOne" (formula "4") (term "1,1")) + (rule "inEqSimp_sepNegMonomial0" (formula "3")) + (rule "polySimp_mulLiterals" (formula "3") (term "0")) + (rule "polySimp_elimOne" (formula "3") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "1")) + (rule "polySimp_rightDist" (formula "1") (term "1")) + (rule "mul_literals" (formula "1") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1")) + (rule "polySimp_elimOne" (formula "1") (term "1,1")) + (rule "inEqSimp_exactShadow3" (formula "5") (ifseqformula "9")) + (rule "polySimp_rightDist" (formula "5") (term "0,0")) + (rule "mul_literals" (formula "5") (term "0,0,0")) + (rule "polySimp_addAssoc" (formula "5") (term "0")) + (rule "polySimp_addAssoc" (formula "5") (term "0,0")) + (rule "polySimp_addComm1" (formula "5") (term "0,0,0")) + (rule "add_literals" (formula "5") (term "0,0,0,0")) + (rule "add_zero_left" (formula "5") (term "0,0,0")) + (rule "polySimp_pullOutFactor0" (formula "5") (term "0,0")) + (rule "add_literals" (formula "5") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "5") (term "0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "5")) + (rule "polySimp_mulLiterals" (formula "5") (term "0")) + (rule "polySimp_elimOne" (formula "5") (term "0")) + (rule "allLeft" (formula "22") (inst "t=y_0:int")) + (rule "inEqSimp_commuteGeq" (formula "22") (term "1,0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "22") (term "1,0,0")) + (rule "inEqSimp_commuteGeq" (formula "22") (term "1,0")) + (rule "inEqSimp_contradInEq1" (formula "22") (term "1,0,0,0") (ifseqformula "3")) + (rule "inEqSimp_homoInEq1" (formula "22") (term "0,1,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "22") (term "0,0,1,0,0,0")) + (rule "add_literals" (formula "22") (term "1,1,0,0,1,0,0,0")) + (rule "times_zero_1" (formula "22") (term "1,0,0,1,0,0,0")) + (rule "add_literals" (formula "22") (term "0,0,1,0,0,0")) + (rule "leq_literals" (formula "22") (term "0,1,0,0,0")) + (builtin "One Step Simplification" (formula "22")) + (rule "allLeft" (formula "22") (inst "t=x_0:int")) + (rule "inEqSimp_commuteGeq" (formula "22") (term "1,0")) + (rule "inEqSimp_commuteLeq" (formula "22") (term "1")) + (rule "inEqSimp_contradInEq1" (formula "22") (term "0,0") (ifseqformula "2")) + (rule "qeq_literals" (formula "22") (term "0,0,0")) + (builtin "One Step Simplification" (formula "22")) + (rule "inEqSimp_contradInEq1" (formula "22") (term "0") (ifseqformula "1")) + (rule "inEqSimp_homoInEq1" (formula "22") (term "0,0")) + (rule "polySimp_pullOutFactor1b" (formula "22") (term "0,0,0")) + (rule "add_literals" (formula "22") (term "1,1,0,0,0")) + (rule "times_zero_1" (formula "22") (term "1,0,0,0")) + (rule "add_literals" (formula "22") (term "0,0,0")) + (rule "leq_literals" (formula "22") (term "0,0")) + (builtin "One Step Simplification" (formula "22")) + (rule "inEqSimp_contradInEq0" (formula "22") (ifseqformula "4")) + (rule "andLeft" (formula "22")) + (rule "inEqSimp_homoInEq1" (formula "22")) + (rule "polySimp_mulComm0" (formula "22") (term "1,0")) + (rule "polySimp_rightDist" (formula "22") (term "1,0")) + (rule "mul_literals" (formula "22") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "22") (term "0")) + (rule "polySimp_addComm0" (formula "22") (term "0,0")) + (rule "polySimp_pullOutFactor1b" (formula "22") (term "0")) + (rule "add_literals" (formula "22") (term "1,1,0")) + (rule "times_zero_1" (formula "22") (term "1,0")) + (rule "add_literals" (formula "22") (term "0")) + (rule "leq_literals" (formula "22")) + (rule "closeFalse" (formula "22")) + ) + (branch "CUT: up >= 1 + quotient_0 FALSE" + (builtin "One Step Simplification" (formula "21") (ifInst "" (formula "20"))) + (rule "false_right" (formula "21")) + (rule "inEqSimp_geqRight" (formula "20")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "0,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1")) + (rule "polySimp_elimOne" (formula "1") (term "1")) + (rule "inEqSimp_exactShadow3" (formula "8") (ifseqformula "1")) + (rule "polySimp_rightDist" (formula "8") (term "0,0")) + (rule "mul_literals" (formula "8") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "8") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "8")) + (rule "polySimp_mulLiterals" (formula "8") (term "0")) + (rule "polySimp_elimOne" (formula "8") (term "0")) + (rule "inEqSimp_subsumption0" (formula "7") (ifseqformula "8")) + (rule "inEqSimp_homoInEq0" (formula "7") (term "0")) + (rule "polySimp_mulComm0" (formula "7") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "7") (term "1,0,0")) + (rule "mul_literals" (formula "7") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "7") (term "0,0")) + (rule "polySimp_addComm0" (formula "7") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "7") (term "0,0")) + (rule "add_literals" (formula "7") (term "1,1,0,0")) + (rule "times_zero_1" (formula "7") (term "1,0,0")) + (rule "add_literals" (formula "7") (term "0,0")) + (rule "qeq_literals" (formula "7") (term "0")) + (builtin "One Step Simplification" (formula "7")) + (rule "true_left" (formula "7")) + (rule "inEqSimp_exactShadow3" (formula "4") (ifseqformula "1")) + (rule "polySimp_rightDist" (formula "4") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "4") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "4") (term "1,0,0")) + (rule "polySimp_mulAssoc" (formula "4") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "4") (term "0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "4") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "4") (term "0")) + (rule "polySimp_pullOutFactor2" (formula "4") (term "0,0")) + (rule "add_literals" (formula "4") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "4")) + (rule "polySimp_mulLiterals" (formula "4") (term "1")) + (rule "polySimp_elimOne" (formula "4") (term "1")) + (rule "inEqSimp_contradInEq0" (formula "4") (ifseqformula "8")) + (rule "andLeft" (formula "4")) + (rule "inEqSimp_homoInEq1" (formula "4")) + (rule "polySimp_mulComm0" (formula "4") (term "1,0")) + (rule "polySimp_rightDist" (formula "4") (term "1,0")) + (rule "mul_literals" (formula "4") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "4") (term "0")) + (rule "polySimp_addComm0" (formula "4") (term "0,0")) + (rule "polySimp_pullOutFactor1b" (formula "4") (term "0")) + (rule "add_literals" (formula "4") (term "1,1,0")) + (rule "times_zero_1" (formula "4") (term "1,0")) + (rule "add_literals" (formula "4") (term "0")) + (rule "leq_literals" (formula "4")) + (rule "closeFalse" (formula "4")) + ) + ) + ) + ) + (branch "Null Reference (_a = null)" + (builtin "One Step Simplification" (formula "17")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "16"))) + (rule "close" (formula "17") (ifseqformula "1")) + ) + (branch "Index Out of Bounds (_a != null, but mid Out of Bounds!)" + (builtin "One Step Simplification" (formula "17")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "16"))) + (rule "false_right" (formula "17")) + (rule "inEqSimp_ltToLeq" (formula "1") (term "1")) + (rule "mul_literals" (formula "1") (term "1,0,0,1")) + (rule "add_literals" (formula "1") (term "0,0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "1") (term "1")) + (rule "mul_literals" (formula "1") (term "1,1")) + (rule "Class_invariant_axiom_for_BinSearch" (formula "13") (ifseqformula "6")) + (rule "true_left" (formula "13")) + (rule "commute_or" (formula "1")) + (rule "div_axiom" (formula "2") (term "1,1") (inst "quotient=quotient_0")) + (rule "equal_literals" (formula "2") (term "0")) + (builtin "One Step Simplification" (formula "2")) + (rule "qeq_literals" (formula "2") (term "0,1")) + (builtin "One Step Simplification" (formula "2")) + (rule "mul_literals" (formula "2") (term "1,1,1")) + (rule "andLeft" (formula "2")) + (rule "andLeft" (formula "2")) + (rule "polySimp_addAssoc" (formula "4") (term "0,1")) + (rule "polySimp_addComm1" (formula "4") (term "1")) + (rule "polySimp_addComm1" (formula "4") (term "0,1")) + (rule "add_literals" (formula "4") (term "0,0,1")) + (rule "inEqSimp_homoInEq0" (formula "3")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,0")) + (rule "polySimp_addComm1" (formula "3") (term "0")) + (rule "polySimp_addComm0" (formula "3") (term "0,0")) + (rule "inEqSimp_homoInEq1" (formula "4")) + (rule "polySimp_mulLiterals" (formula "4") (term "1,0")) + (rule "polySimp_addComm1" (formula "4") (term "0")) + (rule "polySimp_addComm1" (formula "4") (term "0,0")) + (rule "applyEq" (formula "16") (term "0,2,0") (ifseqformula "2")) + (rule "applyEq" (formula "1") (term "0,0") (ifseqformula "2")) + (rule "applyEq" (formula "1") (term "1,1") (ifseqformula "2")) + (rule "applyEq" (formula "5") (term "1,1") (ifseqformula "2")) + (rule "polySimp_addComm0" (formula "5") (term "1")) + (rule "inEqSimp_sepPosMonomial1" (formula "3")) + (rule "polySimp_mulComm0" (formula "3") (term "1")) + (rule "polySimp_rightDist" (formula "3") (term "1")) + (rule "polySimp_mulComm0" (formula "3") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "3") (term "0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "4")) + (rule "polySimp_mulComm0" (formula "4") (term "1")) + (rule "polySimp_rightDist" (formula "4") (term "1")) + (rule "polySimp_rightDist" (formula "4") (term "0,1")) + (rule "mul_literals" (formula "4") (term "0,0,1")) + (rule "polySimp_mulLiterals" (formula "4") (term "1,0,1")) + (rule "inEqSimp_exactShadow3" (formula "6") (ifseqformula "4")) + (rule "polySimp_rightDist" (formula "6") (term "0,0")) + (rule "mul_literals" (formula "6") (term "0,0,0")) + (rule "polySimp_addAssoc" (formula "6") (term "0")) + (rule "polySimp_addComm1" (formula "6") (term "0,0")) + (rule "polySimp_pullOutFactor0b" (formula "6") (term "0")) + (rule "add_literals" (formula "6") (term "1,1,0")) + (rule "polySimp_addAssoc" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "0,0,0")) + (rule "add_zero_left" (formula "6") (term "0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "6")) + (rule "polySimp_mulLiterals" (formula "6") (term "0")) + (rule "elimGcdLeq_antec" (formula "6") (inst "elimGcd=Z(2(#))") (inst "elimGcdLeftDiv=low") (inst "elimGcdRightDiv=quotient_0")) + (rule "leq_literals" (formula "6") (term "0,0")) + (builtin "One Step Simplification" (formula "6")) + (rule "neg_literal" (formula "6") (term "0,0,0,0,0,0")) + (rule "mul_literals" (formula "6") (term "0,1,0,0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "6") (term "1,0,0")) + (rule "polySimp_pullOutFactor0b" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "1,1,0,0")) + (rule "times_zero_1" (formula "6") (term "1,0,0")) + (rule "add_zero_right" (formula "6") (term "0,0")) + (rule "polySimp_mulComm0" (formula "6") (term "1,0,0,0")) + (rule "polySimp_pullOutFactor0b" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "1,1,0,0")) + (rule "times_zero_1" (formula "6") (term "1,0,0")) + (rule "add_literals" (formula "6") (term "0,0")) + (rule "qeq_literals" (formula "6") (term "0")) + (builtin "One Step Simplification" (formula "6")) + (rule "inEqSimp_exactShadow3" (formula "13") (ifseqformula "6")) + (rule "mul_literals" (formula "13") (term "0,0")) + (rule "add_zero_left" (formula "13") (term "0")) + (rule "inEqSimp_contradInEq1" (formula "1") (term "0") (ifseqformula "13")) + (rule "qeq_literals" (formula "1") (term "0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "inEqSimp_exactShadow3" (formula "15") (ifseqformula "1")) + (rule "mul_literals" (formula "15") (term "0,0")) + (rule "add_zero_left" (formula "15") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "16") (ifseqformula "1")) + (rule "polySimp_mulComm0" (formula "16") (term "0,0")) + (rule "polySimp_addComm0" (formula "16") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "16")) + (rule "polySimp_mulLiterals" (formula "16") (term "0")) + (rule "polySimp_elimOne" (formula "16") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "7") (ifseqformula "16")) + (rule "polySimp_rightDist" (formula "7") (term "0,0")) + (rule "mul_literals" (formula "7") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "7") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "7")) + (rule "polySimp_mulLiterals" (formula "7") (term "0")) + (rule "polySimp_elimOne" (formula "7") (term "0")) + (rule "inEqSimp_subsumption0" (formula "6") (ifseqformula "7")) + (rule "inEqSimp_homoInEq0" (formula "6") (term "0")) + (rule "polySimp_mulComm0" (formula "6") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "6") (term "1,0,0")) + (rule "mul_literals" (formula "6") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "6") (term "0,0")) + (rule "polySimp_addComm0" (formula "6") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "1,1,0,0")) + (rule "times_zero_1" (formula "6") (term "1,0,0")) + (rule "add_literals" (formula "6") (term "0,0")) + (rule "qeq_literals" (formula "6") (term "0")) + (builtin "One Step Simplification" (formula "6")) + (rule "true_left" (formula "6")) + (rule "inEqSimp_exactShadow3" (formula "3") (ifseqformula "16")) + (rule "polySimp_rightDist" (formula "3") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "3") (term "1,0,0")) + (rule "polySimp_mulAssoc" (formula "3") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "3") (term "0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "3") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "3") (term "0")) + (rule "polySimp_pullOutFactor2" (formula "3") (term "0,0")) + (rule "add_literals" (formula "3") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "3")) + (rule "polySimp_mulLiterals" (formula "3") (term "1")) + (rule "polySimp_elimOne" (formula "3") (term "1")) + (rule "inEqSimp_contradInEq0" (formula "3") (ifseqformula "7")) + (rule "andLeft" (formula "3")) + (rule "inEqSimp_homoInEq1" (formula "3")) + (rule "polySimp_mulComm0" (formula "3") (term "1,0")) + (rule "polySimp_rightDist" (formula "3") (term "1,0")) + (rule "mul_literals" (formula "3") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "3") (term "0")) + (rule "polySimp_addComm0" (formula "3") (term "0,0")) + (rule "polySimp_pullOutFactor1b" (formula "3") (term "0")) + (rule "add_literals" (formula "3") (term "1,1,0")) + (rule "times_zero_1" (formula "3") (term "1,0")) + (rule "add_literals" (formula "3") (term "0")) + (rule "leq_literals" (formula "3")) + (rule "closeFalse" (formula "3")) + ) + ) + ) + (branch "Null Reference (_a = null)" + (builtin "One Step Simplification" (formula "15")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "14"))) + (rule "close" (formula "15") (ifseqformula "1")) + ) + (branch "Index Out of Bounds (_a != null, but mid Out of Bounds!)" + (builtin "One Step Simplification" (formula "15")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "14"))) + (rule "false_right" (formula "15")) + (rule "inEqSimp_ltToLeq" (formula "1") (term "1")) + (rule "mul_literals" (formula "1") (term "1,0,0,1")) + (rule "add_literals" (formula "1") (term "0,0,1")) + (rule "polySimp_addAssoc" (formula "1") (term "0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "1") (term "1")) + (rule "polySimp_mulComm0" (formula "1") (term "1,1")) + (rule "polySimp_rightDist" (formula "1") (term "1,1")) + (rule "mul_literals" (formula "1") (term "0,1,1")) + (rule "Class_invariant_axiom_for_BinSearch" (formula "12") (ifseqformula "5")) + (rule "true_left" (formula "12")) + (rule "commute_or" (formula "1")) + (rule "jdiv_axiom" (formula "1") (term "0,0")) + (rule "eqSymm" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "0,0,2,0")) + (rule "polySimp_rightDist" (formula "1") (term "0,0,2,0")) + (rule "polySimp_mulAssoc" (formula "1") (term "0,0,0,2,0")) + (rule "polySimp_mulComm0" (formula "1") (term "0,0,0,0,2,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "0,0,0,2,0")) + (rule "polySimp_elimOne" (formula "1") (term "0,0,0,2,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "1") (term "1,0,0")) + (rule "inEqSimp_subsumption1" (formula "1") (term "0,0") (ifseqformula "3")) + (rule "inEqSimp_homoInEq0" (formula "1") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "1") (term "0,0,0,0")) + (rule "add_literals" (formula "1") (term "1,1,0,0,0,0")) + (rule "times_zero_1" (formula "1") (term "1,0,0,0,0")) + (rule "add_literals" (formula "1") (term "0,0,0,0")) + (rule "qeq_literals" (formula "1") (term "0,0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "eqSymm" (formula "1")) + (rule "applyEq" (formula "2") (term "0,0") (ifseqformula "1")) + (rule "applyEq" (formula "2") (term "1,1,1") (ifseqformula "1")) + (rule "polyDiv_pullOut" (formula "2") (term "0,0") (inst "polyDivCoeff=mul(low, Z(neglit(1(#))))")) + (rule "equal_literals" (formula "2") (term "0,0,0")) + (builtin "One Step Simplification" (formula "2")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,0,0,0,0")) + (rule "polySimp_addComm0" (formula "2") (term "0,0")) + (rule "polySimp_addComm1" (formula "2") (term "0,1,0,0")) + (rule "polySimp_pullOutFactor0" (formula "2") (term "0,0,1,0,0")) + (rule "add_literals" (formula "2") (term "1,0,0,1,0,0")) + (rule "polySimp_elimOne" (formula "2") (term "0,0,1,0,0")) + (rule "inEqSimp_homoInEq0" (formula "2") (term "0")) + (rule "polySimp_mulComm0" (formula "2") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "2") (term "1,0,0")) + (rule "polySimp_mulAssoc" (formula "2") (term "0,1,0,0")) + (rule "polySimp_mulComm0" (formula "2") (term "0,0,1,0,0")) + (rule "polySimp_mulLiterals" (formula "2") (term "0,1,0,0")) + (rule "polySimp_elimOne" (formula "2") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "2") (term "0,0")) + (rule "polySimp_pullOutFactor2b" (formula "2") (term "0,0,0")) + (rule "add_literals" (formula "2") (term "1,1,0,0,0")) + (rule "times_zero_1" (formula "2") (term "1,0,0,0")) + (rule "add_literals" (formula "2") (term "0,0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "2") (term "0")) + (rule "polySimp_mulLiterals" (formula "2") (term "0,0")) + (rule "polySimp_elimOne" (formula "2") (term "0,0")) + (rule "polyDiv_pullOut" (formula "1") (term "1") (inst "polyDivCoeff=mul(low, Z(neglit(1(#))))")) + (rule "equal_literals" (formula "1") (term "0,1")) + (builtin "One Step Simplification" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,0,0,1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,0,0,1")) + (rule "polySimp_addComm0" (formula "1") (term "1")) + (rule "polySimp_addComm1" (formula "1") (term "0,1,1")) + (rule "polySimp_pullOutFactor0" (formula "1") (term "0,0,1,1")) + (rule "add_literals" (formula "1") (term "1,0,0,1,1")) + (rule "polySimp_elimOne" (formula "1") (term "0,0,1,1")) + (rule "polyDiv_pullOut" (formula "2") (term "1,1,1") (inst "polyDivCoeff=mul(low, Z(neglit(1(#))))")) + (rule "equal_literals" (formula "2") (term "0,1,1,1")) + (builtin "One Step Simplification" (formula "2")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,0,0,1,1,1")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,0,0,1,1,1")) + (rule "polySimp_addComm0" (formula "2") (term "1,1,1")) + (rule "polySimp_addComm1" (formula "2") (term "0,1,1,1,1")) + (rule "polySimp_pullOutFactor0" (formula "2") (term "0,0,1,1,1,1")) + (rule "add_literals" (formula "2") (term "1,0,0,1,1,1,1")) + (rule "polySimp_elimOne" (formula "2") (term "0,0,1,1,1,1")) + (rule "polySimp_addAssoc" (formula "2") (term "1,1")) + (rule "polySimp_pullOutFactor1" (formula "2") (term "0,1,1")) + (rule "add_literals" (formula "2") (term "1,0,1,1")) + (rule "times_zero_1" (formula "2") (term "0,1,1")) + (rule "add_zero_left" (formula "2") (term "1,1")) + (rule "div_axiom" (formula "1") (term "1,1") (inst "quotient=quotient_0")) + (rule "equal_literals" (formula "1") (term "0")) + (builtin "One Step Simplification" (formula "1")) + (rule "qeq_literals" (formula "1") (term "0,1")) + (builtin "One Step Simplification" (formula "1")) + (rule "mul_literals" (formula "1") (term "1,1,1")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "1")) + (rule "polySimp_addAssoc" (formula "3") (term "0,1")) + (rule "polySimp_addComm1" (formula "3") (term "1")) + (rule "polySimp_addComm1" (formula "3") (term "0,1")) + (rule "add_literals" (formula "3") (term "0,0,1")) + (rule "inEqSimp_homoInEq0" (formula "2")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,0")) + (rule "polySimp_addComm1" (formula "2") (term "0")) + (rule "polySimp_addComm0" (formula "2") (term "0,0")) + (rule "inEqSimp_homoInEq1" (formula "3")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,0")) + (rule "polySimp_addComm1" (formula "3") (term "0")) + (rule "polySimp_addComm1" (formula "3") (term "0,0")) + (rule "applyEq" (formula "5") (term "0,0") (ifseqformula "1")) + (rule "applyEq" (formula "5") (term "1,1") (ifseqformula "1")) + (rule "applyEq" (formula "4") (term "1,1") (ifseqformula "1")) + (rule "polySimp_addComm0" (formula "4") (term "1")) + (rule "inEqSimp_sepPosMonomial1" (formula "2")) + (rule "polySimp_mulComm0" (formula "2") (term "1")) + (rule "polySimp_rightDist" (formula "2") (term "1")) + (rule "polySimp_mulComm0" (formula "2") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "2") (term "0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "3")) + (rule "polySimp_mulComm0" (formula "3") (term "1")) + (rule "polySimp_rightDist" (formula "3") (term "1")) + (rule "polySimp_rightDist" (formula "3") (term "0,1")) + (rule "mul_literals" (formula "3") (term "0,0,1")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,0,1")) + (rule "inEqSimp_exactShadow3" (formula "6") (ifseqformula "3")) + (rule "polySimp_rightDist" (formula "6") (term "0,0")) + (rule "mul_literals" (formula "6") (term "0,0,0")) + (rule "polySimp_addAssoc" (formula "6") (term "0")) + (rule "polySimp_addComm1" (formula "6") (term "0,0")) + (rule "polySimp_pullOutFactor0b" (formula "6") (term "0")) + (rule "add_literals" (formula "6") (term "1,1,0")) + (rule "polySimp_addAssoc" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "0,0,0")) + (rule "add_zero_left" (formula "6") (term "0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "6")) + (rule "polySimp_mulLiterals" (formula "6") (term "0")) + (rule "elimGcdLeq_antec" (formula "6") (inst "elimGcd=Z(2(#))") (inst "elimGcdLeftDiv=low") (inst "elimGcdRightDiv=quotient_0")) + (rule "leq_literals" (formula "6") (term "0,0")) + (builtin "One Step Simplification" (formula "6")) + (rule "neg_literal" (formula "6") (term "0,0,0,0,0,0")) + (rule "mul_literals" (formula "6") (term "0,1,0,0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "6") (term "1,0,0")) + (rule "polySimp_pullOutFactor0b" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "1,1,0,0")) + (rule "times_zero_1" (formula "6") (term "1,0,0")) + (rule "add_zero_right" (formula "6") (term "0,0")) + (rule "polySimp_mulComm0" (formula "6") (term "1,0,0,0")) + (rule "polySimp_pullOutFactor0b" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "1,1,0,0")) + (rule "times_zero_1" (formula "6") (term "1,0,0")) + (rule "add_literals" (formula "6") (term "0,0")) + (rule "qeq_literals" (formula "6") (term "0")) + (builtin "One Step Simplification" (formula "6")) + (rule "inEqSimp_exactShadow3" (formula "13") (ifseqformula "6")) + (rule "mul_literals" (formula "13") (term "0,0")) + (rule "add_zero_left" (formula "13") (term "0")) + (rule "inEqSimp_contradInEq1" (formula "5") (term "0") (ifseqformula "13")) + (rule "qeq_literals" (formula "5") (term "0,0")) + (builtin "One Step Simplification" (formula "5")) + (rule "inEqSimp_exactShadow3" (formula "15") (ifseqformula "5")) + (rule "mul_literals" (formula "15") (term "0,0")) + (rule "add_zero_left" (formula "15") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "16") (ifseqformula "5")) + (rule "polySimp_mulComm0" (formula "16") (term "0,0")) + (rule "polySimp_addComm0" (formula "16") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "16")) + (rule "polySimp_mulLiterals" (formula "16") (term "0")) + (rule "polySimp_elimOne" (formula "16") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "7") (ifseqformula "16")) + (rule "polySimp_rightDist" (formula "7") (term "0,0")) + (rule "mul_literals" (formula "7") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "7") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "7")) + (rule "polySimp_mulLiterals" (formula "7") (term "0")) + (rule "polySimp_elimOne" (formula "7") (term "0")) + (rule "inEqSimp_subsumption0" (formula "6") (ifseqformula "7")) + (rule "inEqSimp_homoInEq0" (formula "6") (term "0")) + (rule "polySimp_mulComm0" (formula "6") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "6") (term "1,0,0")) + (rule "mul_literals" (formula "6") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "6") (term "0,0")) + (rule "polySimp_addComm0" (formula "6") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "1,1,0,0")) + (rule "times_zero_1" (formula "6") (term "1,0,0")) + (rule "add_literals" (formula "6") (term "0,0")) + (rule "qeq_literals" (formula "6") (term "0")) + (builtin "One Step Simplification" (formula "6")) + (rule "true_left" (formula "6")) + (rule "inEqSimp_exactShadow3" (formula "2") (ifseqformula "16")) + (rule "polySimp_rightDist" (formula "2") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "2") (term "1,0,0")) + (rule "polySimp_mulAssoc" (formula "2") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "2") (term "0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "2") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "2") (term "0")) + (rule "polySimp_pullOutFactor2" (formula "2") (term "0,0")) + (rule "add_literals" (formula "2") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "2")) + (rule "polySimp_mulLiterals" (formula "2") (term "1")) + (rule "polySimp_elimOne" (formula "2") (term "1")) + (rule "inEqSimp_contradInEq0" (formula "2") (ifseqformula "7")) + (rule "andLeft" (formula "2")) + (rule "inEqSimp_homoInEq1" (formula "2")) + (rule "polySimp_mulComm0" (formula "2") (term "1,0")) + (rule "polySimp_rightDist" (formula "2") (term "1,0")) + (rule "mul_literals" (formula "2") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "2") (term "0")) + (rule "polySimp_addComm0" (formula "2") (term "0,0")) + (rule "polySimp_pullOutFactor1b" (formula "2") (term "0")) + (rule "add_literals" (formula "2") (term "1,1,0")) + (rule "times_zero_1" (formula "2") (term "1,0")) + (rule "add_literals" (formula "2") (term "0")) + (rule "leq_literals" (formula "2")) + (rule "closeFalse" (formula "2")) + ) + ) + (branch + (builtin "One Step Simplification" (formula "14")) + (rule "equal_literals" (formula "14") (term "0")) + (builtin "One Step Simplification" (formula "14")) + (rule "closeTrue" (formula "14")) + ) +) +(branch "if b false" + (builtin "One Step Simplification" (formula "15")) + (builtin "One Step Simplification" (formula "1")) + (rule "notLeft" (formula "1")) + (rule "inEqSimp_geqRight" (formula "12")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "0,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1")) + (rule "polySimp_elimOne" (formula "1") (term "1")) + (rule "inEqSimp_antiSymm" (formula "8") (ifseqformula "1")) + (rule "applyEq" (formula "9") (term "0") (ifseqformula "8")) + (rule "inEqSimp_homoInEq1" (formula "9")) + (rule "polySimp_pullOutFactor1" (formula "9") (term "0")) + (rule "add_literals" (formula "9") (term "1,0")) + (rule "times_zero_1" (formula "9") (term "0")) + (rule "leq_literals" (formula "9")) + (rule "true_left" (formula "9")) + (rule "applyEq" (formula "1") (term "0") (ifseqformula "8")) + (rule "inEqSimp_homoInEq0" (formula "1")) + (rule "polySimp_pullOutFactor1" (formula "1") (term "0")) + (rule "add_literals" (formula "1") (term "1,0")) + (rule "times_zero_1" (formula "1") (term "0")) + (rule "qeq_literals" (formula "1")) + (rule "true_left" (formula "1")) + (rule "applyEq" (formula "5") (term "1,0") (ifseqformula "7")) + (rule "polySimp_pullOutFactor2" (formula "5") (term "0")) + (rule "add_literals" (formula "5") (term "1,0")) + (rule "times_zero_1" (formula "5") (term "0")) + (rule "applyEq" (formula "9") (term "1") (ifseqformula "7")) + (rule "methodCallReturn" (formula "14") (term "1")) + (rule "assignment" (formula "14") (term "1")) + (builtin "One Step Simplification" (formula "14")) + (rule "methodCallEmpty" (formula "14") (term "1")) + (rule "tryEmpty" (formula "14") (term "1")) + (rule "emptyModality" (formula "14") (term "1")) + (builtin "One Step Simplification" (formula "14") (ifInst "" (formula "11"))) + (rule "inEqSimp_commuteGeq" (formula "14") (term "0,1")) + (rule "applyEq" (formula "14") (term "1,1,1,0,0,0") (ifseqformula "7")) + (rule "inEqSimp_contradInEq1" (formula "14") (term "0,1") (ifseqformula "6")) + (rule "qeq_literals" (formula "14") (term "0,0,1")) + (builtin "One Step Simplification" (formula "14")) + (rule "notRight" (formula "14")) + (rule "exLeft" (formula "1") (inst "sk=idx_0:int")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "1")) + (rule "inEqSimp_commuteGeq" (formula "1")) + (rule "inEqSimp_homoInEq0" (formula "2")) + (rule "polySimp_addComm1" (formula "2") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "2")) + (rule "polySimp_mulComm0" (formula "2") (term "1")) + (rule "polySimp_rightDist" (formula "2") (term "1")) + (rule "mul_literals" (formula "2") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,1")) + (rule "polySimp_elimOne" (formula "2") (term "1,1")) + (rule "inEqSimp_contradInEq0" (formula "2") (ifseqformula "1")) + (rule "andLeft" (formula "2")) + (rule "inEqSimp_homoInEq1" (formula "2")) + (rule "polySimp_pullOutFactor1b" (formula "2") (term "0")) + (rule "add_literals" (formula "2") (term "1,1,0")) + (rule "times_zero_1" (formula "2") (term "1,0")) + (rule "add_literals" (formula "2") (term "0")) + (rule "leq_literals" (formula "2")) + (rule "closeFalse" (formula "2")) +) +) +} diff --git a/key.ui/examples/heap/FM2024Tutorial/BinarySearch/BinSearch_binSearch_exc.key b/key.ui/examples/heap/FM2024Tutorial/BinarySearch/BinSearch_binSearch_exc.key new file mode 100644 index 00000000000..0ae1e697641 --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/BinarySearch/BinSearch_binSearch_exc.key @@ -0,0 +1,88 @@ +\profile "Java Profile"; + +\settings { + "Choice" : { + "JavaCard" : "JavaCard:off", + "Strings" : "Strings:on", + "assertions" : "assertions:safe", + "bigint" : "bigint:on", + "finalFields" : "finalFields:immutable", + "floatRules" : "floatRules:strictfpOnly", + "initialisation" : "initialisation:disableStaticInitialisation", + "intRules" : "intRules:arithmeticSemanticsIgnoringOF", + "integerSimplificationRules" : "integerSimplificationRules:full", + "javaLoopTreatment" : "javaLoopTreatment:efficient", + "mergeGenerateIsWeakeningGoal" : "mergeGenerateIsWeakeningGoal:off", + "methodExpansion" : "methodExpansion:modularOnly", + "modelFields" : "modelFields:treatAsAxiom", + "moreSeqRules" : "moreSeqRules:off", + "permissions" : "permissions:off", + "programRules" : "programRules:Java", + "reach" : "reach:on", + "runtimeExceptions" : "runtimeExceptions:ban", + "sequences" : "sequences:on", + "soundDefaultContracts" : "soundDefaultContracts:on", + "wdChecks" : "wdChecks:off", + "wdOperator" : "wdOperator:L" + }, + "Labels" : { + "UseOriginLabels" : true + }, + "NewSMT" : { + "Axiomatisations" : "false", + "Presburger" : "false", + "sqrtSMTTranslation" : "SMT" + }, + "SMTSettings" : { + "SelectedTaclets" : [ + + ], + "UseBuiltUniqueness" : false, + "explicitTypeHierarchy" : false, + "instantiateHierarchyAssumptions" : true, + "integersMaximum" : 2147483645, + "integersMinimum" : -2147483645, + "invariantForall" : false, + "maxGenericSorts" : 2, + "useConstantsForBigOrSmallIntegers" : true, + "useUninterpretedMultiplication" : true + }, + "Strategy" : { + "ActiveStrategy" : "JavaCardDLStrategy", + "MaximumNumberOfAutomaticApplications" : 10000, + "Timeout" : -1, + "options" : { + "AUTO_INDUCTION_OPTIONS_KEY" : "AUTO_INDUCTION_OFF", + "BLOCK_OPTIONS_KEY" : "BLOCK_CONTRACT_INTERNAL", + "CLASS_AXIOM_OPTIONS_KEY" : "CLASS_AXIOM_DELAYED", + "DEP_OPTIONS_KEY" : "DEP_ON", + "LOOP_OPTIONS_KEY" : "LOOP_INVARIANT", + "METHOD_OPTIONS_KEY" : "METHOD_CONTRACT", + "MPS_OPTIONS_KEY" : "MPS_MERGE", + "NON_LIN_ARITH_OPTIONS_KEY" : "NON_LIN_ARITH_DEF_OPS", + "OSS_OPTIONS_KEY" : "OSS_ON", + "QUANTIFIERS_OPTIONS_KEY" : "QUANTIFIERS_NON_SPLITTING_WITH_PROGS", + "QUERYAXIOM_OPTIONS_KEY" : "QUERYAXIOM_OFF", + "QUERY_NEW_OPTIONS_KEY" : "QUERY_OFF", + "SPLITTING_OPTIONS_KEY" : "SPLITTING_DELAYED", + "STOPMODE_OPTIONS_KEY" : "STOPMODE_DEFAULT", + "SYMBOLIC_EXECUTION_ALIAS_CHECK_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_ALIAS_CHECK_NEVER", + "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OFF", + "USER_TACLETS_OPTIONS_KEY1" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY2" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY3" : "USER_TACLETS_OFF", + "VBT_PHASE" : "VBT_SYM_EX" + } + } +} + + +\javaSource "src"; + +\proofObligation +// +{ + "class" : "de.uka.ilkd.key.proof.init.FunctionalOperationContractPO", + "contract" : "BinSearch[BinSearch::binSearch([I,int)].JML exceptional_behavior operation contract.0", + "name" : "BinSearch[BinSearch::binSearch([I,int)].JML exceptional_behavior operation contract.0" +} diff --git a/key.ui/examples/heap/FM2024Tutorial/BinarySearch/BinSearch_binSearch_exc.key.proof b/key.ui/examples/heap/FM2024Tutorial/BinarySearch/BinSearch_binSearch_exc.key.proof new file mode 100644 index 00000000000..a689f280d51 --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/BinarySearch/BinSearch_binSearch_exc.key.proof @@ -0,0 +1,2111 @@ +\profile "Java Profile"; + +\settings { + "Choice" : { + "JavaCard" : "JavaCard:off", + "Strings" : "Strings:on", + "assertions" : "assertions:safe", + "bigint" : "bigint:on", + "finalFields" : "finalFields:immutable", + "floatRules" : "floatRules:strictfpOnly", + "initialisation" : "initialisation:disableStaticInitialisation", + "intRules" : "intRules:arithmeticSemanticsIgnoringOF", + "integerSimplificationRules" : "integerSimplificationRules:full", + "javaLoopTreatment" : "javaLoopTreatment:efficient", + "mergeGenerateIsWeakeningGoal" : "mergeGenerateIsWeakeningGoal:off", + "methodExpansion" : "methodExpansion:modularOnly", + "modelFields" : "modelFields:treatAsAxiom", + "moreSeqRules" : "moreSeqRules:off", + "permissions" : "permissions:off", + "programRules" : "programRules:Java", + "reach" : "reach:on", + "runtimeExceptions" : "runtimeExceptions:ban", + "sequences" : "sequences:on", + "soundDefaultContracts" : "soundDefaultContracts:on", + "wdChecks" : "wdChecks:off", + "wdOperator" : "wdOperator:L" + }, + "Labels" : { + "UseOriginLabels" : true + }, + "NewSMT" : { + "Axiomatisations" : "false", + "Presburger" : "false", + "sqrtSMTTranslation" : "SMT" + }, + "SMTSettings" : { + "SelectedTaclets" : [ + + ], + "UseBuiltUniqueness" : false, + "explicitTypeHierarchy" : false, + "instantiateHierarchyAssumptions" : true, + "integersMaximum" : 2147483645, + "integersMinimum" : -2147483645, + "invariantForall" : false, + "maxGenericSorts" : 2, + "useConstantsForBigOrSmallIntegers" : true, + "useUninterpretedMultiplication" : true + }, + "Strategy" : { + "ActiveStrategy" : "Modular JavaDL Strategy", + "MaximumNumberOfAutomaticApplications" : 10000, + "Timeout" : -1, + "options" : { + "AUTO_INDUCTION_OPTIONS_KEY" : "AUTO_INDUCTION_OFF", + "BLOCK_OPTIONS_KEY" : "BLOCK_CONTRACT_INTERNAL", + "CLASS_AXIOM_OPTIONS_KEY" : "CLASS_AXIOM_DELAYED", + "DEP_OPTIONS_KEY" : "DEP_ON", + "LOOP_OPTIONS_KEY" : "LOOP_INVARIANT", + "METHOD_OPTIONS_KEY" : "METHOD_CONTRACT", + "MPS_OPTIONS_KEY" : "MPS_MERGE", + "NON_LIN_ARITH_OPTIONS_KEY" : "NON_LIN_ARITH_DEF_OPS", + "OSS_OPTIONS_KEY" : "OSS_ON", + "QUANTIFIERS_OPTIONS_KEY" : "QUANTIFIERS_NON_SPLITTING_WITH_PROGS", + "QUERYAXIOM_OPTIONS_KEY" : "QUERYAXIOM_OFF", + "QUERY_NEW_OPTIONS_KEY" : "QUERY_OFF", + "SPLITTING_OPTIONS_KEY" : "SPLITTING_DELAYED", + "STOPMODE_OPTIONS_KEY" : "STOPMODE_DEFAULT", + "SYMBOLIC_EXECUTION_ALIAS_CHECK_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_ALIAS_CHECK_NEVER", + "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OFF", + "USER_TACLETS_OPTIONS_KEY1" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY2" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY3" : "USER_TACLETS_OFF", + "VBT_PHASE" : "VBT_SYM_EX" + } + } +} + + +\bootclasspath "../../../../../key.core/build/resources/main/de/uka/ilkd/key/java/JavaRedux"; +\javaSource "src"; + +\proofObligation +// +{ + "class" : "de.uka.ilkd.key.proof.init.FunctionalOperationContractPO", + "contract" : "BinSearch[BinSearch::binSearch([I,int)].JML exceptional_behavior operation contract.0", + "name" : "BinSearch[BinSearch::binSearch([I,int)].JML exceptional_behavior operation contract.0" +} + +\proof { +(keyLog "0" (keyUser "daniel" ) (keyVersion "ba42c20cd404dc00d6aaa5695542be46eee5b0b6")) + +(autoModeTime "1257") + +(branch "dummy ID" + (builtin "One Step Simplification" (formula "1")) +(rule "impRight" (formula "1")) +(rule "andLeft" (formula "1")) +(rule "andLeft" (formula "1")) +(rule "andLeft" (formula "3")) +(rule "andLeft" (formula "1")) +(rule "andLeft" (formula "5")) +(rule "notLeft" (formula "4")) +(rule "andLeft" (formula "1")) +(rule "notLeft" (formula "6")) +(rule "andLeft" (formula "1")) +(rule "andLeft" (formula "1")) +(rule "notLeft" (formula "2")) +(rule "eqSymm" (formula "10") (term "1,0,0,1,0,1")) +(rule "replace_known_right" (formula "4") (term "0") (ifseqformula "8")) + (builtin "One Step Simplification" (formula "4")) +(rule "inEqSimp_ltToLeq" (formula "9") (term "1,0,0")) +(rule "polySimp_mulComm0" (formula "9") (term "1,0,0,1,0,0")) +(rule "inEqSimp_commuteLeq" (formula "9") (term "0,0,0")) +(rule "assignment" (formula "10") (term "1")) + (builtin "One Step Simplification" (formula "10")) +(rule "inEqSimp_sepPosMonomial0" (formula "9") (term "1,0,0")) +(rule "polySimp_mulComm0" (formula "9") (term "1,1,0,0")) +(rule "polySimp_rightDist" (formula "9") (term "1,1,0,0")) +(rule "mul_literals" (formula "9") (term "0,1,1,0,0")) +(rule "polySimp_mulLiterals" (formula "9") (term "1,1,1,0,0")) +(rule "polySimp_elimOne" (formula "9") (term "1,1,1,0,0")) +(rule "nnf_ex2all" (formula "9")) +(rule "nnf_notAnd" (formula "1") (term "0")) +(rule "nnf_notAnd" (formula "1") (term "0,0")) +(rule "inEqSimp_notGeq" (formula "1") (term "0,0,0")) +(rule "mul_literals" (formula "1") (term "1,0,0,0,0,0")) +(rule "add_literals" (formula "1") (term "0,0,0,0,0")) +(rule "inEqSimp_sepPosMonomial0" (formula "1") (term "0,0,0")) +(rule "mul_literals" (formula "1") (term "1,0,0,0")) +(rule "inEqSimp_notLeq" (formula "1") (term "1,0,0")) +(rule "polySimp_rightDist" (formula "1") (term "1,0,0,1,0,0")) +(rule "mul_literals" (formula "1") (term "0,1,0,0,1,0,0")) +(rule "polySimp_addAssoc" (formula "1") (term "0,0,1,0,0")) +(rule "add_literals" (formula "1") (term "0,0,0,1,0,0")) +(rule "add_zero_left" (formula "1") (term "0,0,1,0,0")) +(rule "inEqSimp_sepPosMonomial1" (formula "1") (term "1,0,0")) +(rule "polySimp_mulLiterals" (formula "1") (term "1,1,0,0")) +(rule "polySimp_elimOne" (formula "1") (term "1,1,0,0")) +(rule "methodBodyExpand" (formula "10") (term "1") (newnames "heapBefore_binSearch,savedHeapBefore_binSearch,_aBefore_binSearch,_vBefore_binSearch")) + (builtin "One Step Simplification" (formula "10")) +(rule "variableDeclarationAssign" (formula "10") (term "1")) +(rule "variableDeclaration" (formula "10") (term "1") (newnames "low")) +(rule "assignment" (formula "10") (term "1")) + (builtin "One Step Simplification" (formula "10")) +(rule "variableDeclarationAssign" (formula "10") (term "1")) +(rule "variableDeclaration" (formula "10") (term "1") (newnames "up")) +(rule "assignment_read_length" (formula "10")) +(branch "Normal Execution (_a != null)" + (builtin "One Step Simplification" (formula "10")) + (builtin "Loop Invariant" (formula "10") (newnames "variant,b,heapBefore_LOOP,lowBefore_LOOP,upBefore_LOOP,low_0,up_0,heap_After_LOOP,anon_heap_LOOP,o,f")) + (branch "Invariant Initially Valid" + (builtin "One Step Simplification" (formula "10") (ifInst "" (formula "2"))) + (rule "leq_literals" (formula "10") (term "0,0,0,0")) + (builtin "One Step Simplification" (formula "10")) + (rule "inEqSimp_ltToLeq" (formula "10") (term "1,0,0,1,0")) + (rule "mul_literals" (formula "10") (term "1,0,0,1,0,0,1,0")) + (rule "add_literals" (formula "10") (term "0,0,1,0,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "10") (term "1,0,0,1")) + (rule "polySimp_mulComm0" (formula "10") (term "1,0,0,1,0,0,1")) + (rule "inEqSimp_commuteLeq" (formula "10") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "10") (term "0,0,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "10") (term "0,0,0,1")) + (rule "inEqSimp_homoInEq0" (formula "10") (term "1,0,0")) + (rule "polySimp_pullOutFactor1" (formula "10") (term "0,1,0,0")) + (rule "add_literals" (formula "10") (term "1,0,1,0,0")) + (rule "times_zero_1" (formula "10") (term "0,1,0,0")) + (rule "qeq_literals" (formula "10") (term "1,0,0")) + (builtin "One Step Simplification" (formula "10")) + (rule "inEqSimp_sepPosMonomial0" (formula "10") (term "1,0,0,1,0")) + (rule "mul_literals" (formula "10") (term "1,1,0,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "10") (term "1,0,0,1")) + (rule "polySimp_mulComm0" (formula "10") (term "1,1,0,0,1")) + (rule "polySimp_rightDist" (formula "10") (term "1,1,0,0,1")) + (rule "mul_literals" (formula "10") (term "0,1,1,0,0,1")) + (rule "polySimp_mulLiterals" (formula "10") (term "1,1,1,0,0,1")) + (rule "polySimp_elimOne" (formula "10") (term "1,1,1,0,0,1")) + (rule "nnf_imp2or" (formula "10") (term "0,1")) + (rule "nnf_imp2or" (formula "10") (term "0,1,0")) + (rule "nnf_notAnd" (formula "10") (term "0,0,1")) + (rule "inEqSimp_notGeq" (formula "10") (term "0,0,0,1")) + (rule "polySimp_mulComm0" (formula "10") (term "1,0,0,0,0,0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "10") (term "0,0,0,1")) + (rule "polySimp_mulComm0" (formula "10") (term "1,0,0,0,1")) + (rule "polySimp_rightDist" (formula "10") (term "1,0,0,0,1")) + (rule "mul_literals" (formula "10") (term "0,1,0,0,0,1")) + (rule "polySimp_mulLiterals" (formula "10") (term "1,1,0,0,0,1")) + (rule "polySimp_elimOne" (formula "10") (term "1,1,0,0,0,1")) + (builtin "One Step Simplification" (formula "10")) + (rule "nnf_notAnd" (formula "10") (term "0,0,1")) + (rule "inEqSimp_notGeq" (formula "10") (term "0,0,0,1")) + (rule "mul_literals" (formula "10") (term "1,0,0,0,0,0,1")) + (rule "add_literals" (formula "10") (term "0,0,0,0,0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "10") (term "0,0,0,1")) + (rule "mul_literals" (formula "10") (term "1,0,0,0,1")) + (builtin "One Step Simplification" (formula "10")) + (rule "inEqSimp_geqRight" (formula "10")) + (rule "mul_literals" (formula "1") (term "1,0,0")) + (rule "add_literals" (formula "1") (term "0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1")) + (rule "mul_literals" (formula "1") (term "1")) + (rule "Class_invariant_axiom_for_BinSearch" (formula "8") (ifseqformula "5")) + (rule "true_left" (formula "8")) + (rule "arrayLengthIsAnInt" (formula "2") (term "1,1,0,0")) + (builtin "One Step Simplification" (formula "2")) + (rule "true_left" (formula "2")) + (rule "arrayLengthNotNegative" (formula "2") (term "1,1,0,0")) + (rule "inEqSimp_contradInEq0" (formula "2") (ifseqformula "1")) + (rule "qeq_literals" (formula "2") (term "0")) + (builtin "One Step Simplification" (formula "2")) + (rule "closeFalse" (formula "2")) + ) + (branch "Body Preserves Invariant" + (builtin "One Step Simplification" (formula "12")) + (builtin "One Step Simplification" (formula "9")) + (rule "impRight" (formula "12")) + (rule "andLeft" (formula "10")) + (rule "andLeft" (formula "10")) + (rule "andLeft" (formula "10")) + (rule "andLeft" (formula "10")) + (rule "eqSymm" (formula "17") (term "1,0,0,1,0,1,1,1,0,1")) + (rule "polySimp_elimSub" (formula "17") (term "0,1,1,1,0")) + (rule "polySimp_elimSub" (formula "17") (term "0,1,1,1,1,0,1")) + (rule "polySimp_addComm0" (formula "17") (term "0,1,1,1,0")) + (rule "polySimp_addComm0" (formula "17") (term "0,1,1,1,1,0,1")) + (rule "inEqSimp_ltToLeq" (formula "17") (term "1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,0,1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "inEqSimp_ltToLeq" (formula "17") (term "1,0,0,1,0,0,1,1,1,0,1")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,0,1,0,0,1,0,0,1,1,1,0,1")) + (rule "inEqSimp_ltToLeq" (formula "14") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "14") (term "1,0,0,1,0,0")) + (rule "inEqSimp_ltToLeq" (formula "13") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "13") (term "1,0,0,1,0,0")) + (rule "inEqSimp_commuteLeq" (formula "17") (term "0,0,0,0,0,0,1,1,1,0,1")) + (rule "inEqSimp_commuteLeq" (formula "17") (term "1,0,0,0,0,0,1,1,1,0,1")) + (rule "inEqSimp_commuteLeq" (formula "17") (term "1,0,0,0,0,1,1,1,0,1")) + (rule "inEqSimp_commuteLeq" (formula "17") (term "0,0,0,1,0,0,0,1,1,1,0,1")) + (rule "inEqSimp_commuteLeq" (formula "17") (term "0,0,0,1,0,0,1,1,1,0,1")) + (rule "inEqSimp_commuteLeq" (formula "14") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "13") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "12")) + (rule "inEqSimp_commuteLeq" (formula "10")) + (rule "inEqSimp_commuteLeq" (formula "11")) + (rule "variableDeclarationAssign" (formula "1") (term "1")) + (rule "variableDeclarationAssign" (formula "17") (term "1")) + (rule "variableDeclaration" (formula "1") (term "1") (newnames "b_1")) + (rule "variableDeclaration" (formula "17") (term "1") (newnames "rtrn")) + (rule "assignment" (formula "17") (term "1")) + (builtin "One Step Simplification" (formula "17")) + (rule "variableDeclaration" (formula "17") (term "1") (newnames "returnExpr")) + (rule "variableDeclarationAssign" (formula "17") (term "1")) + (rule "variableDeclaration" (formula "17") (term "1") (newnames "exc_1")) + (rule "assignment" (formula "17") (term "1")) + (builtin "One Step Simplification" (formula "17")) + (rule "variableDeclaration" (formula "17") (term "1") (newnames "thrownExc")) + (rule "blockThrow" (formula "17") (term "1,0,0,1")) + (rule "blockReturn" (formula "17") (term "1,0,1,0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "14") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "14") (term "1,1,0,0")) + (rule "polySimp_rightDist" (formula "14") (term "1,1,0,0")) + (rule "mul_literals" (formula "14") (term "0,1,1,0,0")) + (rule "polySimp_mulLiterals" (formula "14") (term "1,1,1,0,0")) + (rule "polySimp_elimOne" (formula "14") (term "1,1,1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "13") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "13") (term "1,1,0,0")) + (rule "polySimp_rightDist" (formula "13") (term "1,1,0,0")) + (rule "mul_literals" (formula "13") (term "0,1,1,0,0")) + (rule "polySimp_mulLiterals" (formula "13") (term "1,1,1,0,0")) + (rule "polySimp_elimOne" (formula "13") (term "1,1,1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "17") (term "1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "polySimp_mulComm0" (formula "17") (term "1,1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "polySimp_rightDist" (formula "17") (term "1,1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "mul_literals" (formula "17") (term "0,1,1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "polySimp_mulLiterals" (formula "17") (term "1,1,1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "polySimp_elimOne" (formula "17") (term "1,1,1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "17") (term "1,0,0,1,0,0,1,1,1,0,1")) + (rule "polySimp_mulComm0" (formula "17") (term "1,1,0,0,1,0,0,1,1,1,0,1")) + (rule "polySimp_rightDist" (formula "17") (term "1,1,0,0,1,0,0,1,1,1,0,1")) + (rule "mul_literals" (formula "17") (term "0,1,1,0,0,1,0,0,1,1,1,0,1")) + (rule "polySimp_mulLiterals" (formula "17") (term "1,1,1,0,0,1,0,0,1,1,1,0,1")) + (rule "polySimp_elimOne" (formula "17") (term "1,1,1,0,0,1,0,0,1,1,1,0,1")) + (rule "boxToDiamond" (formula "1") (term "1")) + (builtin "One Step Simplification" (formula "1")) + (rule "notLeft" (formula "1")) + (rule "nnf_imp2or" (formula "13") (term "0")) + (rule "nnf_imp2or" (formula "12") (term "0")) + (rule "nnf_notAnd" (formula "13") (term "0,0")) + (rule "inEqSimp_notGeq" (formula "13") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "13") (term "1,0,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "13") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "13") (term "1,0,0,0")) + (rule "polySimp_rightDist" (formula "13") (term "1,0,0,0")) + (rule "mul_literals" (formula "13") (term "0,1,0,0,0")) + (rule "polySimp_mulLiterals" (formula "13") (term "1,1,0,0,0")) + (rule "polySimp_elimOne" (formula "13") (term "1,1,0,0,0")) + (rule "inEqSimp_notLeq" (formula "13") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "13") (term "1,0,0,1,0,0")) + (rule "mul_literals" (formula "13") (term "0,1,0,0,1,0,0")) + (rule "polySimp_addAssoc" (formula "13") (term "0,0,1,0,0")) + (rule "add_literals" (formula "13") (term "0,0,0,1,0,0")) + (rule "add_zero_left" (formula "13") (term "0,0,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "13") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "13") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "13") (term "1,1,0,0")) + (rule "nnf_notAnd" (formula "12") (term "0,0")) + (rule "inEqSimp_notGeq" (formula "12") (term "0,0,0")) + (rule "mul_literals" (formula "12") (term "1,0,0,0,0,0")) + (rule "add_literals" (formula "12") (term "0,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "12") (term "0,0,0")) + (rule "mul_literals" (formula "12") (term "1,0,0,0")) + (rule "inEqSimp_notLeq" (formula "12") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "12") (term "1,0,0,1,0,0")) + (rule "mul_literals" (formula "12") (term "0,1,0,0,1,0,0")) + (rule "polySimp_addAssoc" (formula "12") (term "0,0,1,0,0")) + (rule "add_literals" (formula "12") (term "0,0,0,1,0,0")) + (rule "add_zero_left" (formula "12") (term "0,0,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "12") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "12") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "12") (term "1,1,0,0")) + (rule "nnf_imp2or" (formula "17") (term "0,1,0,0,1,1,1,0,1")) + (rule "nnf_imp2or" (formula "17") (term "0,1,0,0,0,1,1,1,0,1")) + (rule "nnf_notAnd" (formula "17") (term "0,0,1,0,0,1,1,1,0,1")) + (rule "inEqSimp_notGeq" (formula "17") (term "0,0,0,1,0,0,1,1,1,0,1")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,0,0,0,0,1,0,0,1,1,1,0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "17") (term "0,0,0,1,0,0,1,1,1,0,1")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,0,0,1,0,0,1,1,1,0,1")) + (rule "polySimp_rightDist" (formula "17") (term "1,0,0,0,1,0,0,1,1,1,0,1")) + (rule "mul_literals" (formula "17") (term "0,1,0,0,0,1,0,0,1,1,1,0,1")) + (rule "polySimp_mulLiterals" (formula "17") (term "1,1,0,0,0,1,0,0,1,1,1,0,1")) + (rule "polySimp_elimOne" (formula "17") (term "1,1,0,0,0,1,0,0,1,1,1,0,1")) + (rule "inEqSimp_notLeq" (formula "17") (term "1,0,0,1,0,0,1,1,1,0,1")) + (rule "polySimp_rightDist" (formula "17") (term "1,0,0,1,0,0,1,0,0,1,1,1,0,1")) + (rule "mul_literals" (formula "17") (term "0,1,0,0,1,0,0,1,0,0,1,1,1,0,1")) + (rule "polySimp_addAssoc" (formula "17") (term "0,0,1,0,0,1,0,0,1,1,1,0,1")) + (rule "add_literals" (formula "17") (term "0,0,0,1,0,0,1,0,0,1,1,1,0,1")) + (rule "add_zero_left" (formula "17") (term "0,0,1,0,0,1,0,0,1,1,1,0,1")) + (rule "inEqSimp_sepPosMonomial1" (formula "17") (term "1,0,0,1,0,0,1,1,1,0,1")) + (rule "polySimp_mulLiterals" (formula "17") (term "1,1,0,0,1,0,0,1,1,1,0,1")) + (rule "polySimp_elimOne" (formula "17") (term "1,1,0,0,1,0,0,1,1,1,0,1")) + (rule "nnf_notAnd" (formula "17") (term "0,0,1,0,0,0,1,1,1,0,1")) + (rule "inEqSimp_notGeq" (formula "17") (term "0,0,0,1,0,0,0,1,1,1,0,1")) + (rule "mul_literals" (formula "17") (term "1,0,0,0,0,0,1,0,0,0,1,1,1,0,1")) + (rule "add_literals" (formula "17") (term "0,0,0,0,0,1,0,0,0,1,1,1,0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "17") (term "0,0,0,1,0,0,0,1,1,1,0,1")) + (rule "mul_literals" (formula "17") (term "1,0,0,0,1,0,0,0,1,1,1,0,1")) + (rule "inEqSimp_notLeq" (formula "17") (term "1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "polySimp_rightDist" (formula "17") (term "1,0,0,1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "mul_literals" (formula "17") (term "0,1,0,0,1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "polySimp_addAssoc" (formula "17") (term "0,0,1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "add_literals" (formula "17") (term "0,0,0,1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "add_zero_left" (formula "17") (term "0,0,1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "inEqSimp_sepPosMonomial1" (formula "17") (term "1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "polySimp_mulLiterals" (formula "17") (term "1,1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "polySimp_elimOne" (formula "17") (term "1,1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "less_than_comparison_simple" (formula "14") (term "1")) + (builtin "One Step Simplification" (formula "14")) + (rule "inEqSimp_ltToLeq" (formula "14") (term "0,0,1,0")) + (rule "polySimp_mulComm0" (formula "14") (term "1,0,0,0,0,1,0")) + (rule "polySimp_addComm1" (formula "14") (term "0,0,0,1,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "14") (term "0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "14") (term "0,0,0,1,0")) + (rule "polySimp_elimOne" (formula "14") (term "0,0,0,1,0")) + (rule "methodCallEmpty" (formula "14") (term "1")) + (builtin "One Step Simplification" (formula "14")) + (rule "emptyModality" (formula "14") (term "1")) + (builtin "One Step Simplification" (formula "14")) + (rule "notRight" (formula "14")) + (rule "inEqSimp_subsumption1" (formula "11") (ifseqformula "1")) + (rule "inEqSimp_homoInEq0" (formula "11") (term "0")) + (rule "polySimp_pullOutFactor1b" (formula "11") (term "0,0")) + (rule "add_literals" (formula "11") (term "1,1,0,0")) + (rule "times_zero_1" (formula "11") (term "1,0,0")) + (rule "add_literals" (formula "11") (term "0,0")) + (rule "qeq_literals" (formula "11") (term "0")) + (builtin "One Step Simplification" (formula "11")) + (rule "true_left" (formula "11")) + (rule "arrayLengthIsAnInt" (formula "2") (term "1,1,0,0")) + (builtin "One Step Simplification" (formula "2")) + (rule "true_left" (formula "2")) + (rule "arrayLengthNotNegative" (formula "2") (term "1,1,0,0")) + (rule "ifUnfold" (formula "17") (term "1") (inst "#boolv=b_2")) + (rule "variableDeclaration" (formula "17") (term "1") (newnames "b_2")) + (rule "less_than_comparison_simple" (formula "17") (term "1")) + (builtin "One Step Simplification" (formula "17")) + (rule "inEqSimp_ltToLeq" (formula "17") (term "0,0,1,0")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,0,0,0,1,0")) + (rule "polySimp_addComm1" (formula "17") (term "0,0,0,1,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "17") (term "0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "17") (term "0,0,0,1,0")) + (rule "polySimp_elimOne" (formula "17") (term "0,0,0,1,0")) + (rule "replace_known_left" (formula "17") (term "0,0,1,0") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "17")) + (rule "ifSplit" (formula "17")) + (branch "if b_2 true" + (builtin "One Step Simplification" (formula "18")) + (builtin "One Step Simplification" (formula "1")) + (rule "true_left" (formula "1")) + (rule "variableDeclarationAssign" (formula "17") (term "1")) + (rule "variableDeclaration" (formula "17") (term "1") (newnames "mid")) + (rule "compound_addition_2" (formula "17") (term "1") (inst "#v0=i") (inst "#v1=i_1")) + (rule "variableDeclarationAssign" (formula "17") (term "1")) + (rule "variableDeclaration" (formula "17") (term "1") (newnames "i")) + (rule "assignment" (formula "17") (term "1")) + (builtin "One Step Simplification" (formula "17")) + (rule "variableDeclarationAssign" (formula "17") (term "1")) + (rule "variableDeclaration" (formula "17") (term "1") (newnames "i_1")) + (rule "remove_parentheses_right" (formula "17") (term "1")) + (rule "compound_division_1" (formula "17") (term "1") (inst "#v=i_2")) + (rule "variableDeclarationAssign" (formula "17") (term "1")) + (rule "variableDeclaration" (formula "17") (term "1") (newnames "i_2")) + (rule "remove_parentheses_right" (formula "17") (term "1")) + (rule "assignmentSubtractionInt" (formula "17") (term "1")) + (builtin "One Step Simplification" (formula "17")) + (rule "translateJavaSubInt" (formula "17") (term "0,1,0")) + (rule "polySimp_elimSub" (formula "17") (term "0,1,0")) + (rule "polySimp_addComm0" (formula "17") (term "0,1,0")) + (rule "assignmentDivisionInt" (formula "17")) + (branch + (builtin "One Step Simplification" (formula "17")) + (rule "translateJavaDivInt" (formula "17") (term "0,1,0")) + (rule "assignmentAdditionInt" (formula "17") (term "1")) + (builtin "One Step Simplification" (formula "17")) + (rule "translateJavaAddInt" (formula "17") (term "0,1,0")) + (rule "ifElseUnfold" (formula "17") (term "1") (inst "#boolv=b_3")) + (rule "variableDeclaration" (formula "17") (term "1") (newnames "b_3")) + (rule "compound_equality_comparison_2" (formula "17") (term "1") (inst "#v0=i_3") (inst "#v1=i_4")) + (rule "variableDeclarationAssign" (formula "17") (term "1")) + (rule "variableDeclaration" (formula "17") (term "1") (newnames "i_3")) + (rule "assignment" (formula "17") (term "1")) + (builtin "One Step Simplification" (formula "17")) + (rule "variableDeclarationAssign" (formula "17") (term "1")) + (rule "variableDeclaration" (formula "17") (term "1") (newnames "i_4")) + (rule "assignment_array2" (formula "17")) + (branch "Normal Execution (_a != null)" + (builtin "One Step Simplification" (formula "17")) + (rule "pullOutSelect" (formula "17") (term "0,1,0") (inst "selectSK=arr_0:int")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "17")) (ifInst "" (formula "8"))) + (rule "applyEqReverse" (formula "18") (term "0,1,0") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "equality_comparison_simple" (formula "17") (term "1")) + (builtin "One Step Simplification" (formula "17")) + (rule "eqSymm" (formula "17") (term "0,0,1,0")) + (rule "ifElseSplit" (formula "17")) + (branch "if b_3 true" + (builtin "One Step Simplification" (formula "18")) + (builtin "One Step Simplification" (formula "1")) + (rule "assignment" (formula "18") (term "1")) + (builtin "One Step Simplification" (formula "18")) + (rule "assignment" (formula "18") (term "1")) + (builtin "One Step Simplification" (formula "18")) + (rule "break" (formula "18") (term "1")) + (rule "blockEmpty" (formula "18") (term "1")) + (rule "tryEmpty" (formula "18") (term "1")) + (rule "methodCallEmpty" (formula "18") (term "1")) + (rule "emptyModality" (formula "18") (term "1")) + (builtin "One Step Simplification" (formula "18")) + (rule "methodCallReturn" (formula "18") (term "1")) + (rule "assignment" (formula "18") (term "1")) + (builtin "One Step Simplification" (formula "18")) + (rule "methodCallEmpty" (formula "18") (term "1")) + (rule "tryEmpty" (formula "18") (term "1")) + (rule "emptyModality" (formula "18") (term "1")) + (builtin "One Step Simplification" (formula "18")) + (rule "false_right" (formula "18")) + (rule "Class_invariant_axiom_for_BinSearch" (formula "10") (ifseqformula "7")) + (rule "true_left" (formula "10")) + (rule "jdiv_axiom" (formula "1") (term "1,0,2,0")) + (rule "eqSymm" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "0,0,2,0")) + (rule "polySimp_rightDist" (formula "1") (term "0,0,2,0")) + (rule "polySimp_mulAssoc" (formula "1") (term "0,0,0,2,0")) + (rule "polySimp_mulComm0" (formula "1") (term "0,0,0,0,2,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "0,0,0,2,0")) + (rule "polySimp_elimOne" (formula "1") (term "0,0,0,2,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "1") (term "1,0,0")) + (rule "inEqSimp_subsumption1" (formula "1") (term "0,0") (ifseqformula "3")) + (rule "inEqSimp_homoInEq0" (formula "1") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "1") (term "0,0,0,0")) + (rule "add_literals" (formula "1") (term "1,1,0,0,0,0")) + (rule "times_zero_1" (formula "1") (term "1,0,0,0,0")) + (rule "add_literals" (formula "1") (term "0,0,0,0")) + (rule "qeq_literals" (formula "1") (term "0,0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "eqSymm" (formula "1")) + (rule "applyEq" (formula "2") (term "1,0,2,0") (ifseqformula "1")) + (rule "polyDiv_pullOut" (formula "2") (term "1,0,2,0") (inst "polyDivCoeff=mul(low_0, Z(neglit(1(#))))")) + (rule "equal_literals" (formula "2") (term "0,1,0,2,0")) + (builtin "One Step Simplification" (formula "2")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,0,0,1,0,2,0")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,0,0,1,0,2,0")) + (rule "polySimp_addComm0" (formula "2") (term "1,0,2,0")) + (rule "polySimp_addComm1" (formula "2") (term "0,1,1,0,2,0")) + (rule "polySimp_pullOutFactor0" (formula "2") (term "0,0,1,1,0,2,0")) + (rule "add_literals" (formula "2") (term "1,0,0,1,1,0,2,0")) + (rule "polySimp_elimOne" (formula "2") (term "0,0,1,1,0,2,0")) + (rule "polySimp_addAssoc" (formula "2") (term "0,2,0")) + (rule "polySimp_pullOutFactor1" (formula "2") (term "0,0,2,0")) + (rule "add_literals" (formula "2") (term "1,0,0,2,0")) + (rule "times_zero_1" (formula "2") (term "0,0,2,0")) + (rule "add_zero_left" (formula "2") (term "0,2,0")) + (rule "polyDiv_pullOut" (formula "1") (term "1") (inst "polyDivCoeff=mul(low_0, Z(neglit(1(#))))")) + (rule "equal_literals" (formula "1") (term "0,1")) + (builtin "One Step Simplification" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,0,0,1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,0,0,1")) + (rule "polySimp_addComm0" (formula "1") (term "1")) + (rule "polySimp_addComm1" (formula "1") (term "0,1,1")) + (rule "polySimp_pullOutFactor0" (formula "1") (term "0,0,1,1")) + (rule "add_literals" (formula "1") (term "1,0,0,1,1")) + (rule "polySimp_elimOne" (formula "1") (term "0,0,1,1")) + (rule "div_axiom" (formula "2") (term "0,2,0") (inst "quotient=quotient_0")) + (rule "equal_literals" (formula "2") (term "0")) + (builtin "One Step Simplification" (formula "2")) + (rule "qeq_literals" (formula "2") (term "0,1")) + (builtin "One Step Simplification" (formula "2")) + (rule "mul_literals" (formula "2") (term "1,1,1")) + (rule "andLeft" (formula "2")) + (rule "andLeft" (formula "2")) + (rule "polySimp_addAssoc" (formula "4") (term "0,1")) + (rule "polySimp_addComm1" (formula "4") (term "1")) + (rule "polySimp_addComm1" (formula "4") (term "0,1")) + (rule "add_literals" (formula "4") (term "0,0,1")) + (rule "inEqSimp_homoInEq0" (formula "3")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,0")) + (rule "polySimp_addComm1" (formula "3") (term "0")) + (rule "polySimp_addComm0" (formula "3") (term "0,0")) + (rule "inEqSimp_homoInEq1" (formula "4")) + (rule "polySimp_mulLiterals" (formula "4") (term "1,0")) + (rule "polySimp_addComm1" (formula "4") (term "0")) + (rule "polySimp_addComm1" (formula "4") (term "0,0")) + (rule "applyEq" (formula "5") (term "0,2,0") (ifseqformula "2")) + (rule "applyEq" (formula "1") (term "1,1") (ifseqformula "2")) + (rule "polySimp_addComm0" (formula "1") (term "1")) + (rule "inEqSimp_sepPosMonomial1" (formula "3")) + (rule "polySimp_mulComm0" (formula "3") (term "1")) + (rule "polySimp_rightDist" (formula "3") (term "1")) + (rule "polySimp_mulComm0" (formula "3") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "3") (term "0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "4")) + (rule "polySimp_mulComm0" (formula "4") (term "1")) + (rule "polySimp_rightDist" (formula "4") (term "1")) + (rule "polySimp_rightDist" (formula "4") (term "0,1")) + (rule "mul_literals" (formula "4") (term "0,0,1")) + (rule "polySimp_mulLiterals" (formula "4") (term "1,0,1")) + (rule "inEqSimp_exactShadow3" (formula "6") (ifseqformula "4")) + (rule "polySimp_rightDist" (formula "6") (term "0,0")) + (rule "mul_literals" (formula "6") (term "0,0,0")) + (rule "polySimp_addAssoc" (formula "6") (term "0")) + (rule "polySimp_addComm1" (formula "6") (term "0,0")) + (rule "polySimp_pullOutFactor0b" (formula "6") (term "0")) + (rule "add_literals" (formula "6") (term "1,1,0")) + (rule "polySimp_addAssoc" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "0,0,0")) + (rule "add_zero_left" (formula "6") (term "0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "6")) + (rule "polySimp_mulLiterals" (formula "6") (term "0")) + (rule "elimGcdLeq_antec" (formula "6") (inst "elimGcd=Z(2(#))") (inst "elimGcdLeftDiv=low_0") (inst "elimGcdRightDiv=quotient_0")) + (rule "leq_literals" (formula "6") (term "0,0")) + (builtin "One Step Simplification" (formula "6")) + (rule "neg_literal" (formula "6") (term "0,0,0,0,0,0")) + (rule "mul_literals" (formula "6") (term "0,1,0,0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "6") (term "1,0,0")) + (rule "polySimp_pullOutFactor0b" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "1,1,0,0")) + (rule "times_zero_1" (formula "6") (term "1,0,0")) + (rule "add_zero_right" (formula "6") (term "0,0")) + (rule "polySimp_mulComm0" (formula "6") (term "1,0,0,0")) + (rule "polySimp_pullOutFactor0b" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "1,1,0,0")) + (rule "times_zero_1" (formula "6") (term "1,0,0")) + (rule "add_literals" (formula "6") (term "0,0")) + (rule "qeq_literals" (formula "6") (term "0")) + (builtin "One Step Simplification" (formula "6")) + (rule "inEqSimp_exactShadow3" (formula "16") (ifseqformula "6")) + (rule "mul_literals" (formula "16") (term "0,0")) + (rule "add_zero_left" (formula "16") (term "0")) + (rule "allLeft" (formula "9") (inst "t=quotient_0:int")) + (rule "replace_known_left" (formula "9") (term "0,1") (ifseqformula "5")) + (builtin "One Step Simplification" (formula "9")) + (rule "inEqSimp_commuteGeq" (formula "9") (term "1")) + (rule "inEqSimp_contradInEq1" (formula "9") (term "0") (ifseqformula "17")) + (rule "qeq_literals" (formula "9") (term "0,0")) + (builtin "One Step Simplification" (formula "9")) + (rule "inEqSimp_exactShadow3" (formula "8") (ifseqformula "9")) + (rule "mul_literals" (formula "8") (term "0,0")) + (rule "add_zero_left" (formula "8") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "19") (ifseqformula "9")) + (rule "polySimp_mulComm0" (formula "19") (term "0,0")) + (rule "polySimp_addComm0" (formula "19") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "19")) + (rule "polySimp_mulLiterals" (formula "19") (term "0")) + (rule "polySimp_elimOne" (formula "19") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "7") (ifseqformula "19")) + (rule "polySimp_rightDist" (formula "7") (term "0,0")) + (rule "mul_literals" (formula "7") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "7") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "7")) + (rule "polySimp_mulLiterals" (formula "7") (term "0")) + (rule "polySimp_elimOne" (formula "7") (term "0")) + (rule "inEqSimp_subsumption0" (formula "6") (ifseqformula "7")) + (rule "inEqSimp_homoInEq0" (formula "6") (term "0")) + (rule "polySimp_mulComm0" (formula "6") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "6") (term "1,0,0")) + (rule "mul_literals" (formula "6") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "6") (term "0,0")) + (rule "polySimp_addComm0" (formula "6") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "1,1,0,0")) + (rule "times_zero_1" (formula "6") (term "1,0,0")) + (rule "add_literals" (formula "6") (term "0,0")) + (rule "qeq_literals" (formula "6") (term "0")) + (builtin "One Step Simplification" (formula "6")) + (rule "true_left" (formula "6")) + (rule "inEqSimp_exactShadow3" (formula "3") (ifseqformula "19")) + (rule "polySimp_rightDist" (formula "3") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "3") (term "1,0,0")) + (rule "polySimp_mulAssoc" (formula "3") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "3") (term "0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "3") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "3") (term "0")) + (rule "polySimp_pullOutFactor2" (formula "3") (term "0,0")) + (rule "add_literals" (formula "3") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "3")) + (rule "polySimp_mulLiterals" (formula "3") (term "1")) + (rule "polySimp_elimOne" (formula "3") (term "1")) + (rule "inEqSimp_contradInEq0" (formula "3") (ifseqformula "7")) + (rule "andLeft" (formula "3")) + (rule "inEqSimp_homoInEq1" (formula "3")) + (rule "polySimp_mulComm0" (formula "3") (term "1,0")) + (rule "polySimp_rightDist" (formula "3") (term "1,0")) + (rule "mul_literals" (formula "3") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "3") (term "0")) + (rule "polySimp_addComm0" (formula "3") (term "0,0")) + (rule "polySimp_pullOutFactor1b" (formula "3") (term "0")) + (rule "add_literals" (formula "3") (term "1,1,0")) + (rule "times_zero_1" (formula "3") (term "1,0")) + (rule "add_literals" (formula "3") (term "0")) + (rule "leq_literals" (formula "3")) + (rule "closeFalse" (formula "3")) + ) + (branch "if b_3 false" + (builtin "One Step Simplification" (formula "18")) + (builtin "One Step Simplification" (formula "1")) + (rule "notLeft" (formula "1")) + (rule "unusedLabel" (formula "18") (term "1")) + (rule "jdiv_axiom" (formula "15") (term "1,0,2,0")) + (rule "eqSymm" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "0,0,2,0")) + (rule "polySimp_rightDist" (formula "1") (term "0,0,2,0")) + (rule "polySimp_mulAssoc" (formula "1") (term "0,0,0,2,0")) + (rule "polySimp_mulComm0" (formula "1") (term "0,0,0,0,2,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "0,0,0,2,0")) + (rule "polySimp_elimOne" (formula "1") (term "0,0,0,2,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "1") (term "1,0,0")) + (rule "inEqSimp_subsumption1" (formula "1") (term "0,0") (ifseqformula "2")) + (rule "inEqSimp_homoInEq0" (formula "1") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "1") (term "0,0,0,0")) + (rule "add_literals" (formula "1") (term "1,1,0,0,0,0")) + (rule "times_zero_1" (formula "1") (term "1,0,0,0,0")) + (rule "add_literals" (formula "1") (term "0,0,0,0")) + (rule "qeq_literals" (formula "1") (term "0,0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "eqSymm" (formula "1")) + (rule "applyEq" (formula "19") (term "1,0,1,0") (ifseqformula "1")) + (rule "applyEq" (formula "16") (term "1,0,2,0") (ifseqformula "1")) + (rule "polyDiv_pullOut" (formula "19") (term "1,0,1,0") (inst "polyDivCoeff=mul(low_0, Z(neglit(1(#))))")) + (rule "equal_literals" (formula "19") (term "0,1,0,1,0")) + (builtin "One Step Simplification" (formula "19")) + (rule "polySimp_mulLiterals" (formula "19") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "19") (term "1,0,0,1,0,1,0")) + (rule "polySimp_addComm0" (formula "19") (term "1,0,1,0")) + (rule "polySimp_addComm1" (formula "19") (term "0,1,1,0,1,0")) + (rule "polySimp_pullOutFactor0" (formula "19") (term "0,0,1,1,0,1,0")) + (rule "add_literals" (formula "19") (term "1,0,0,1,1,0,1,0")) + (rule "polySimp_elimOne" (formula "19") (term "0,0,1,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "19") (term "0,1,0")) + (rule "polySimp_pullOutFactor1" (formula "19") (term "0,0,1,0")) + (rule "add_literals" (formula "19") (term "1,0,0,1,0")) + (rule "times_zero_1" (formula "19") (term "0,0,1,0")) + (rule "add_zero_left" (formula "19") (term "0,1,0")) + (rule "polyDiv_pullOut" (formula "1") (term "1") (inst "polyDivCoeff=mul(low_0, Z(neglit(1(#))))")) + (rule "equal_literals" (formula "1") (term "0,1")) + (builtin "One Step Simplification" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,0,0,1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,0,0,1")) + (rule "polySimp_addComm0" (formula "1") (term "1")) + (rule "polySimp_addComm1" (formula "1") (term "0,1,1")) + (rule "polySimp_pullOutFactor0" (formula "1") (term "0,0,1,1")) + (rule "add_literals" (formula "1") (term "1,0,0,1,1")) + (rule "polySimp_elimOne" (formula "1") (term "0,0,1,1")) + (rule "polyDiv_pullOut" (formula "16") (term "1,0,2,0") (inst "polyDivCoeff=mul(low_0, Z(neglit(1(#))))")) + (rule "equal_literals" (formula "16") (term "0,1,0,2,0")) + (builtin "One Step Simplification" (formula "16")) + (rule "polySimp_mulLiterals" (formula "16") (term "1,0,0,1,0,2,0")) + (rule "polySimp_mulLiterals" (formula "16") (term "1,0,0,1,0,2,0")) + (rule "polySimp_addComm0" (formula "16") (term "1,0,2,0")) + (rule "polySimp_addComm1" (formula "16") (term "0,1,1,0,2,0")) + (rule "polySimp_pullOutFactor0" (formula "16") (term "0,0,1,1,0,2,0")) + (rule "add_literals" (formula "16") (term "1,0,0,1,1,0,2,0")) + (rule "polySimp_elimOne" (formula "16") (term "0,0,1,1,0,2,0")) + (rule "polySimp_addAssoc" (formula "16") (term "0,2,0")) + (rule "polySimp_pullOutFactor1" (formula "16") (term "0,0,2,0")) + (rule "add_literals" (formula "16") (term "1,0,0,2,0")) + (rule "times_zero_1" (formula "16") (term "0,0,2,0")) + (rule "add_zero_left" (formula "16") (term "0,2,0")) + (rule "ifElseUnfold" (formula "19") (term "1") (inst "#boolv=b_4")) + (rule "variableDeclaration" (formula "19") (term "1") (newnames "b_4")) + (rule "compound_less_than_comparison_2" (formula "19") (term "1") (inst "#v0=i_5") (inst "#v1=i_6")) + (rule "variableDeclarationAssign" (formula "19") (term "1")) + (rule "variableDeclaration" (formula "19") (term "1") (newnames "i_5")) + (rule "assignment" (formula "19") (term "1")) + (builtin "One Step Simplification" (formula "19")) + (rule "variableDeclarationAssign" (formula "19") (term "1")) + (rule "variableDeclaration" (formula "19") (term "1") (newnames "i_6")) + (rule "assignment_array2" (formula "19")) + (branch "Normal Execution (_a != null)" + (builtin "One Step Simplification" (formula "19")) + (rule "pullOutSelect" (formula "19") (term "0,1,0") (inst "selectSK=arr_1:int")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "19")) (ifInst "" (formula "9"))) + (rule "applyEqReverse" (formula "20") (term "0,1,0") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "less_than_comparison_simple" (formula "19") (term "1")) + (builtin "One Step Simplification" (formula "19")) + (rule "inEqSimp_ltToLeq" (formula "19") (term "0,0,1,0")) + (rule "polySimp_mulComm0" (formula "19") (term "1,0,0,0,0,1,0")) + (rule "polySimp_addComm1" (formula "19") (term "0,0,0,1,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "19") (term "0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "19") (term "0,0,0,1,0")) + (rule "polySimp_elimOne" (formula "19") (term "0,0,0,1,0")) + (rule "div_axiom" (formula "1") (term "1,1") (inst "quotient=quotient_0")) + (rule "equal_literals" (formula "1") (term "0")) + (builtin "One Step Simplification" (formula "1")) + (rule "qeq_literals" (formula "1") (term "0,1")) + (builtin "One Step Simplification" (formula "1")) + (rule "mul_literals" (formula "1") (term "1,1,1")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "1")) + (rule "polySimp_addAssoc" (formula "3") (term "0,1")) + (rule "polySimp_addComm1" (formula "3") (term "1")) + (rule "polySimp_addComm1" (formula "3") (term "0,1")) + (rule "add_literals" (formula "3") (term "0,0,1")) + (rule "inEqSimp_homoInEq0" (formula "2")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,0")) + (rule "polySimp_addComm1" (formula "2") (term "0")) + (rule "polySimp_addComm0" (formula "2") (term "0,0")) + (rule "inEqSimp_homoInEq1" (formula "3")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,0")) + (rule "polySimp_addComm1" (formula "3") (term "0")) + (rule "polySimp_addComm1" (formula "3") (term "0,0")) + (rule "applyEq" (formula "22") (term "0,1,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "22") (term "0,2,0,0,0,1,0") (ifseqformula "1")) + (rule "applyEq" (formula "19") (term "0,2,0") (ifseqformula "1")) + (rule "applyEq" (formula "4") (term "1,1") (ifseqformula "1")) + (rule "polySimp_addComm0" (formula "4") (term "1")) + (rule "inEqSimp_sepPosMonomial1" (formula "2")) + (rule "polySimp_mulComm0" (formula "2") (term "1")) + (rule "polySimp_rightDist" (formula "2") (term "1")) + (rule "polySimp_mulComm0" (formula "2") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "2") (term "0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "3")) + (rule "polySimp_mulComm0" (formula "3") (term "1")) + (rule "polySimp_rightDist" (formula "3") (term "1")) + (rule "polySimp_rightDist" (formula "3") (term "0,1")) + (rule "mul_literals" (formula "3") (term "0,0,1")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,0,1")) + (rule "inEqSimp_exactShadow3" (formula "5") (ifseqformula "3")) + (rule "polySimp_rightDist" (formula "5") (term "0,0")) + (rule "mul_literals" (formula "5") (term "0,0,0")) + (rule "polySimp_addAssoc" (formula "5") (term "0")) + (rule "polySimp_addComm1" (formula "5") (term "0,0")) + (rule "polySimp_pullOutFactor0b" (formula "5") (term "0")) + (rule "add_literals" (formula "5") (term "1,1,0")) + (rule "polySimp_addAssoc" (formula "5") (term "0,0")) + (rule "add_literals" (formula "5") (term "0,0,0")) + (rule "add_zero_left" (formula "5") (term "0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "5")) + (rule "polySimp_mulLiterals" (formula "5") (term "0")) + (rule "elimGcdLeq_antec" (formula "5") (inst "elimGcd=Z(2(#))") (inst "elimGcdLeftDiv=low_0") (inst "elimGcdRightDiv=quotient_0")) + (rule "leq_literals" (formula "5") (term "0,0")) + (builtin "One Step Simplification" (formula "5")) + (rule "neg_literal" (formula "5") (term "0,0,0,0,0,0")) + (rule "mul_literals" (formula "5") (term "0,1,0,0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "5") (term "1,0,0")) + (rule "polySimp_pullOutFactor0b" (formula "5") (term "0,0")) + (rule "add_literals" (formula "5") (term "1,1,0,0")) + (rule "times_zero_1" (formula "5") (term "1,0,0")) + (rule "add_zero_right" (formula "5") (term "0,0")) + (rule "polySimp_mulComm0" (formula "5") (term "1,0,0,0")) + (rule "polySimp_pullOutFactor0b" (formula "5") (term "0,0")) + (rule "add_literals" (formula "5") (term "1,1,0,0")) + (rule "times_zero_1" (formula "5") (term "1,0,0")) + (rule "add_literals" (formula "5") (term "0,0")) + (rule "qeq_literals" (formula "5") (term "0")) + (builtin "One Step Simplification" (formula "5")) + (rule "inEqSimp_exactShadow3" (formula "16") (ifseqformula "5")) + (rule "mul_literals" (formula "16") (term "0,0")) + (rule "add_zero_left" (formula "16") (term "0")) + (rule "ifElseSplit" (formula "24")) + (branch "if b_4 true" + (builtin "One Step Simplification" (formula "25")) + (builtin "One Step Simplification" (formula "1")) + (rule "assignment" (formula "25") (term "1")) + (builtin "One Step Simplification" (formula "25")) + (rule "inEqSimp_contradEq7" (formula "22") (ifseqformula "1")) + (rule "polySimp_mulComm0" (formula "22") (term "1,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "22") (term "0,0")) + (rule "add_literals" (formula "22") (term "1,1,0,0")) + (rule "times_zero_1" (formula "22") (term "1,0,0")) + (rule "add_literals" (formula "22") (term "0,0")) + (rule "leq_literals" (formula "22") (term "0")) + (builtin "One Step Simplification" (formula "22")) + (rule "false_right" (formula "22")) + (rule "tryEmpty" (formula "24") (term "1")) + (rule "methodCallEmpty" (formula "24") (term "1")) + (rule "emptyModality" (formula "24") (term "1")) + (builtin "One Step Simplification" (formula "24") (ifInst "" (formula "18")) (ifInst "" (formula "20"))) + (rule "eqSymm" (formula "24") (term "1,0,0,1,0")) + (rule "polySimp_addComm0" (formula "24") (term "0,1")) + (rule "precOfInt" (formula "24") (term "1")) + (rule "inEqSimp_ltToLeq" (formula "24") (term "1,1")) + (rule "polySimp_rightDist" (formula "24") (term "1,0,0,1,1")) + (rule "polySimp_mulAssoc" (formula "24") (term "0,1,0,0,1,1")) + (rule "polySimp_mulComm0" (formula "24") (term "0,0,1,0,0,1,1")) + (rule "polySimp_mulLiterals" (formula "24") (term "0,1,0,0,1,1")) + (rule "polySimp_elimOne" (formula "24") (term "0,1,0,0,1,1")) + (rule "polySimp_addAssoc" (formula "24") (term "0,0,1,1")) + (rule "polySimp_addComm1" (formula "24") (term "0,1,1")) + (rule "polySimp_addAssoc" (formula "24") (term "0,0,1,1")) + (rule "polySimp_addComm1" (formula "24") (term "0,0,0,1,1")) + (rule "polySimp_pullOutFactor1b" (formula "24") (term "0,0,1,1")) + (rule "add_literals" (formula "24") (term "1,1,0,0,1,1")) + (rule "times_zero_1" (formula "24") (term "1,0,0,1,1")) + (rule "add_zero_right" (formula "24") (term "0,0,1,1")) + (rule "inEqSimp_commuteGeq" (formula "24") (term "0,0,0,0")) + (rule "replace_known_left" (formula "24") (term "0,0,0,0") (ifseqformula "6")) + (builtin "One Step Simplification" (formula "24")) + (rule "inEqSimp_homoInEq0" (formula "24") (term "0,1")) + (rule "mul_literals" (formula "24") (term "1,0,0,1")) + (rule "add_zero_right" (formula "24") (term "0,0,1")) + (rule "inEqSimp_sepNegMonomial0" (formula "24") (term "1,1")) + (rule "polySimp_mulLiterals" (formula "24") (term "0,1,1")) + (rule "polySimp_elimOne" (formula "24") (term "0,1,1")) + (rule "inEqSimp_sepNegMonomial1" (formula "24") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "24") (term "0,0,1")) + (rule "polySimp_elimOne" (formula "24") (term "0,0,1")) + (rule "replace_known_left" (formula "24") (term "0,1") (ifseqformula "6")) + (builtin "One Step Simplification" (formula "24")) + (rule "Class_invariant_axiom_for_BinSearch" (formula "15") (ifseqformula "12")) + (rule "true_left" (formula "15")) + (rule "cut_direct" (formula "23") (term "0,0,0")) + (branch "CUT: a.length >= quotient_0 TRUE" + (builtin "One Step Simplification" (formula "24")) + (rule "cut_direct" (formula "24") (term "1")) + (branch "CUT: up_0 >= 1 + quotient_0 TRUE" + (builtin "One Step Simplification" (formula "25")) + (rule "inEqSimp_exactShadow3" (formula "1") (ifseqformula "6")) + (rule "polySimp_rightDist" (formula "1") (term "0,0")) + (rule "mul_literals" (formula "1") (term "0,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0")) + (rule "polySimp_addComm1" (formula "1") (term "0,0,0")) + (rule "add_literals" (formula "1") (term "0,0,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0,0")) + (rule "polySimp_pullOutFactor0" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "1") (term "0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "0")) + (rule "polySimp_elimOne" (formula "1") (term "0")) + (rule "andRight" (formula "25")) + (branch + (rule "allRight" (formula "25") (inst "sk=x_0:int")) + (rule "orRight" (formula "25")) + (rule "notRight" (formula "26")) + (rule "orRight" (formula "26")) + (rule "inEqSimp_geqRight" (formula "27")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0")) + (rule "polySimp_addComm1" (formula "1") (term "0")) + (rule "inEqSimp_leqRight" (formula "27")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "0,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "2")) + (rule "polySimp_mulLiterals" (formula "2") (term "0")) + (rule "polySimp_elimOne" (formula "2") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1")) + (rule "polySimp_elimOne" (formula "1") (term "1")) + (rule "pullOutSelect" (formula "3") (term "0") (inst "selectSK=arr_2:int")) + (rule "simplifySelectOfAnon" (formula "3")) + (builtin "One Step Simplification" (formula "3") (ifInst "" (formula "28")) (ifInst "" (formula "19"))) + (rule "applyEqReverse" (formula "4") (term "0") (ifseqformula "3")) + (rule "hideAuxiliaryEq" (formula "3")) + (rule "allLeft" (formula "14") (inst "t=x_0:int")) + (rule "replace_known_left" (formula "14") (term "0,1") (ifseqformula "3")) + (builtin "One Step Simplification" (formula "14")) + (rule "inEqSimp_commuteGeq" (formula "14") (term "1")) + (rule "inEqSimp_contradInEq1" (formula "14") (term "1") (ifseqformula "2")) + (rule "inEqSimp_homoInEq1" (formula "14") (term "0,1")) + (rule "polySimp_pullOutFactor1b" (formula "14") (term "0,0,1")) + (rule "add_literals" (formula "14") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "14") (term "1,0,0,1")) + (rule "add_literals" (formula "14") (term "0,0,1")) + (rule "leq_literals" (formula "14") (term "0,1")) + (builtin "One Step Simplification" (formula "14")) + (rule "inEqSimp_exactShadow3" (formula "1") (ifseqformula "14")) + (rule "polySimp_mulComm0" (formula "1") (term "0,0")) + (rule "polySimp_addComm0" (formula "1") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "0")) + (rule "polySimp_elimOne" (formula "1") (term "0")) + (rule "inEqSimp_contradInEq0" (formula "23") (ifseqformula "1")) + (rule "qeq_literals" (formula "23") (term "0")) + (builtin "One Step Simplification" (formula "23")) + (rule "closeFalse" (formula "23")) + ) + (branch + (rule "allRight" (formula "25") (inst "sk=f_0:Field")) + (rule "allRight" (formula "25") (inst "sk=o_0:java.lang.Object")) + (rule "orRight" (formula "25")) + (rule "pullOutSelect" (formula "26") (term "0") (inst "selectSK=f_0_0:any")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "26"))) + (rule "applyEqReverse" (formula "27") (term "0") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "27")) + (rule "closeTrue" (formula "27")) + ) + ) + (branch "CUT: up_0 >= 1 + quotient_0 FALSE" + (builtin "One Step Simplification" (formula "25")) + (rule "false_right" (formula "25")) + (rule "inEqSimp_geqRight" (formula "24")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "0,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1")) + (rule "polySimp_elimOne" (formula "1") (term "1")) + (rule "inEqSimp_exactShadow3" (formula "9") (ifseqformula "1")) + (rule "polySimp_rightDist" (formula "9") (term "0,0")) + (rule "mul_literals" (formula "9") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "9") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "9")) + (rule "polySimp_mulLiterals" (formula "9") (term "0")) + (rule "polySimp_elimOne" (formula "9") (term "0")) + (rule "inEqSimp_subsumption0" (formula "8") (ifseqformula "9")) + (rule "inEqSimp_homoInEq0" (formula "8") (term "0")) + (rule "polySimp_mulComm0" (formula "8") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "8") (term "1,0,0")) + (rule "mul_literals" (formula "8") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "8") (term "0,0")) + (rule "polySimp_addComm0" (formula "8") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "8") (term "0,0")) + (rule "add_literals" (formula "8") (term "1,1,0,0")) + (rule "times_zero_1" (formula "8") (term "1,0,0")) + (rule "add_literals" (formula "8") (term "0,0")) + (rule "qeq_literals" (formula "8") (term "0")) + (builtin "One Step Simplification" (formula "8")) + (rule "true_left" (formula "8")) + (rule "inEqSimp_exactShadow3" (formula "5") (ifseqformula "1")) + (rule "polySimp_rightDist" (formula "5") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "5") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "5") (term "1,0,0")) + (rule "polySimp_mulAssoc" (formula "5") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "5") (term "0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "5") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "5") (term "0")) + (rule "polySimp_pullOutFactor2" (formula "5") (term "0,0")) + (rule "add_literals" (formula "5") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "5")) + (rule "polySimp_mulLiterals" (formula "5") (term "1")) + (rule "polySimp_elimOne" (formula "5") (term "1")) + (rule "inEqSimp_contradInEq0" (formula "5") (ifseqformula "9")) + (rule "andLeft" (formula "5")) + (rule "inEqSimp_homoInEq1" (formula "5")) + (rule "polySimp_mulComm0" (formula "5") (term "1,0")) + (rule "polySimp_rightDist" (formula "5") (term "1,0")) + (rule "mul_literals" (formula "5") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "5") (term "0")) + (rule "polySimp_addComm0" (formula "5") (term "0,0")) + (rule "polySimp_pullOutFactor1b" (formula "5") (term "0")) + (rule "add_literals" (formula "5") (term "1,1,0")) + (rule "times_zero_1" (formula "5") (term "1,0")) + (rule "add_literals" (formula "5") (term "0")) + (rule "leq_literals" (formula "5")) + (rule "closeFalse" (formula "5")) + ) + ) + (branch "CUT: a.length >= quotient_0 FALSE" + (builtin "One Step Simplification" (formula "24")) + (rule "false_right" (formula "24")) + (rule "inEqSimp_geqRight" (formula "23")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "1")) + (rule "polySimp_rightDist" (formula "1") (term "1")) + (rule "mul_literals" (formula "1") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1")) + (rule "polySimp_elimOne" (formula "1") (term "1,1")) + (rule "inEqSimp_exactShadow3" (formula "9") (ifseqformula "1")) + (rule "mul_literals" (formula "9") (term "0,0")) + (rule "add_zero_left" (formula "9") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "9")) + (rule "mul_literals" (formula "9") (term "1")) + (rule "inEqSimp_subsumption1" (formula "18") (ifseqformula "9")) + (rule "leq_literals" (formula "18") (term "0")) + (builtin "One Step Simplification" (formula "18")) + (rule "true_left" (formula "18")) + (rule "inEqSimp_exactShadow3" (formula "19") (ifseqformula "1")) + (rule "polySimp_mulComm0" (formula "19") (term "0,0")) + (rule "polySimp_addComm0" (formula "19") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "19")) + (rule "polySimp_mulLiterals" (formula "19") (term "0")) + (rule "polySimp_elimOne" (formula "19") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "8") (ifseqformula "19")) + (rule "polySimp_rightDist" (formula "8") (term "0,0")) + (rule "mul_literals" (formula "8") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "8") (term "0")) + (rule "polySimp_addAssoc" (formula "8") (term "0,0")) + (rule "add_literals" (formula "8") (term "0,0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "8")) + (rule "polySimp_mulLiterals" (formula "8") (term "0")) + (rule "polySimp_elimOne" (formula "8") (term "0")) + (rule "inEqSimp_subsumption0" (formula "7") (ifseqformula "8")) + (rule "inEqSimp_homoInEq0" (formula "7") (term "0")) + (rule "polySimp_mulComm0" (formula "7") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "7") (term "1,0,0")) + (rule "mul_literals" (formula "7") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "7") (term "0,0")) + (rule "polySimp_addComm0" (formula "7") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "7") (term "0,0")) + (rule "add_literals" (formula "7") (term "1,1,0,0")) + (rule "times_zero_1" (formula "7") (term "1,0,0")) + (rule "add_literals" (formula "7") (term "0,0")) + (rule "qeq_literals" (formula "7") (term "0")) + (builtin "One Step Simplification" (formula "7")) + (rule "true_left" (formula "7")) + (rule "inEqSimp_exactShadow3" (formula "4") (ifseqformula "19")) + (rule "polySimp_rightDist" (formula "4") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "4") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "4") (term "1,0,0")) + (rule "polySimp_mulAssoc" (formula "4") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "4") (term "0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "4") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "4") (term "0")) + (rule "polySimp_addAssoc" (formula "4") (term "0,0")) + (rule "polySimp_addComm0" (formula "4") (term "0,0,0")) + (rule "polySimp_pullOutFactor2b" (formula "4") (term "0,0")) + (rule "add_literals" (formula "4") (term "1,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "4")) + (rule "polySimp_mulComm0" (formula "4") (term "1")) + (rule "polySimp_rightDist" (formula "4") (term "1")) + (rule "mul_literals" (formula "4") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "4") (term "1,1")) + (rule "polySimp_elimOne" (formula "4") (term "1,1")) + (rule "inEqSimp_contradInEq0" (formula "4") (ifseqformula "8")) + (rule "andLeft" (formula "4")) + (rule "inEqSimp_homoInEq1" (formula "4")) + (rule "polySimp_mulComm0" (formula "4") (term "1,0")) + (rule "polySimp_rightDist" (formula "4") (term "1,0")) + (rule "mul_literals" (formula "4") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "4") (term "0")) + (rule "polySimp_addComm1" (formula "4") (term "0,0")) + (rule "add_literals" (formula "4") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "4") (term "0")) + (rule "add_literals" (formula "4") (term "1,1,0")) + (rule "times_zero_1" (formula "4") (term "1,0")) + (rule "add_literals" (formula "4") (term "0")) + (rule "leq_literals" (formula "4")) + (rule "closeFalse" (formula "4")) + ) + ) + (branch "if b_4 false" + (builtin "One Step Simplification" (formula "25")) + (builtin "One Step Simplification" (formula "1")) + (rule "notLeft" (formula "1")) + (rule "inEqSimp_geqRight" (formula "21")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "0,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1")) + (rule "polySimp_elimOne" (formula "1") (term "1")) + (rule "inEqSimp_strengthen0" (formula "1") (ifseqformula "22")) + (rule "inEqSimp_contradEq3" (formula "22") (ifseqformula "1")) + (rule "polySimp_mulComm0" (formula "22") (term "1,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "22") (term "0,0")) + (rule "add_literals" (formula "22") (term "1,1,0,0")) + (rule "times_zero_1" (formula "22") (term "1,0,0")) + (rule "add_literals" (formula "22") (term "0,0")) + (rule "qeq_literals" (formula "22") (term "0")) + (builtin "One Step Simplification" (formula "22")) + (rule "false_right" (formula "22")) + (rule "assignmentAdditionInt" (formula "24") (term "1")) + (builtin "One Step Simplification" (formula "24")) + (rule "translateJavaAddInt" (formula "24") (term "0,1,0")) + (rule "polySimp_addComm0" (formula "24") (term "0,1,0")) + (rule "tryEmpty" (formula "24") (term "1")) + (rule "methodCallEmpty" (formula "24") (term "1")) + (rule "emptyModality" (formula "24") (term "1")) + (builtin "One Step Simplification" (formula "24") (ifInst "" (formula "19")) (ifInst "" (formula "21"))) + (rule "eqSymm" (formula "24") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "24") (term "0,0,1")) + (rule "polySimp_rightDist" (formula "24") (term "0,0,1")) + (rule "mul_literals" (formula "24") (term "0,0,0,1")) + (rule "precOfInt" (formula "24") (term "1")) + (rule "inEqSimp_ltToLeq" (formula "24") (term "1,1")) + (rule "polySimp_rightDist" (formula "24") (term "1,0,0,1,1")) + (rule "polySimp_mulAssoc" (formula "24") (term "0,1,0,0,1,1")) + (rule "polySimp_mulComm0" (formula "24") (term "0,0,1,0,0,1,1")) + (rule "polySimp_mulLiterals" (formula "24") (term "0,1,0,0,1,1")) + (rule "polySimp_elimOne" (formula "24") (term "0,1,0,0,1,1")) + (rule "polySimp_addAssoc" (formula "24") (term "0,0,1,1")) + (rule "polySimp_addAssoc" (formula "24") (term "0,1,1")) + (rule "polySimp_addComm1" (formula "24") (term "0,0,1,1")) + (rule "polySimp_pullOutFactor2b" (formula "24") (term "0,1,1")) + (rule "add_literals" (formula "24") (term "1,1,0,1,1")) + (rule "times_zero_1" (formula "24") (term "1,0,1,1")) + (rule "add_zero_right" (formula "24") (term "0,1,1")) + (rule "polySimp_addComm1" (formula "24") (term "0,1,1")) + (rule "polySimp_addAssoc" (formula "24") (term "0,0,1,1")) + (rule "add_literals" (formula "24") (term "0,0,0,1,1")) + (rule "add_zero_left" (formula "24") (term "0,0,1,1")) + (rule "inEqSimp_homoInEq0" (formula "24") (term "0,1")) + (rule "mul_literals" (formula "24") (term "1,0,0,1")) + (rule "add_zero_right" (formula "24") (term "0,0,1")) + (rule "inEqSimp_sepPosMonomial1" (formula "24") (term "0,0,0,0")) + (rule "mul_literals" (formula "24") (term "1,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "24") (term "1,1")) + (rule "polySimp_mulLiterals" (formula "24") (term "1,1,1")) + (rule "polySimp_elimOne" (formula "24") (term "1,1,1")) + (rule "replace_known_left" (formula "24") (term "1,1") (ifseqformula "6")) + (builtin "One Step Simplification" (formula "24")) + (rule "inEqSimp_sepPosMonomial1" (formula "24") (term "1")) + (rule "polySimp_mulComm0" (formula "24") (term "1,1")) + (rule "polySimp_rightDist" (formula "24") (term "1,1")) + (rule "mul_literals" (formula "24") (term "0,1,1")) + (rule "polySimp_mulLiterals" (formula "24") (term "1,1,1")) + (rule "polySimp_elimOne" (formula "24") (term "1,1,1")) + (rule "inEqSimp_subsumption1" (formula "24") (term "0,0,0,0") (ifseqformula "17")) + (rule "leq_literals" (formula "24") (term "0,0,0,0,0")) + (builtin "One Step Simplification" (formula "24")) + (rule "Class_invariant_axiom_for_BinSearch" (formula "15") (ifseqformula "12")) + (rule "true_left" (formula "15")) + (rule "cut_direct" (formula "23") (term "0,0,0")) + (branch "CUT: up_0 >= 1 + quotient_0 TRUE" + (builtin "One Step Simplification" (formula "24") (ifInst "" (formula "1"))) + (rule "inEqSimp_exactShadow3" (formula "1") (ifseqformula "5")) + (rule "polySimp_rightDist" (formula "1") (term "0,0")) + (rule "mul_literals" (formula "1") (term "0,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0")) + (rule "polySimp_addComm1" (formula "1") (term "0,0,0")) + (rule "add_literals" (formula "1") (term "0,0,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0,0")) + (rule "polySimp_pullOutFactor0" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "1") (term "0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "0")) + (rule "polySimp_elimOne" (formula "1") (term "0")) + (rule "andRight" (formula "24")) + (branch + (rule "allRight" (formula "24") (inst "sk=x_0:int")) + (rule "orRight" (formula "24")) + (rule "notRight" (formula "25")) + (rule "orRight" (formula "25")) + (rule "inEqSimp_geqRight" (formula "26")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "0,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0")) + (rule "inEqSimp_leqRight" (formula "26")) + (rule "mul_literals" (formula "1") (term "1,0,0")) + (rule "add_literals" (formula "1") (term "0,0")) + (rule "add_zero_left" (formula "1") (term "0")) + (rule "inEqSimp_sepPosMonomial0" (formula "2")) + (rule "polySimp_mulLiterals" (formula "2") (term "1")) + (rule "polySimp_elimOne" (formula "2") (term "1")) + (rule "pullOutSelect" (formula "3") (term "0") (inst "selectSK=arr_2:int")) + (rule "simplifySelectOfAnon" (formula "3")) + (builtin "One Step Simplification" (formula "3") (ifInst "" (formula "27")) (ifInst "" (formula "18"))) + (rule "applyEqReverse" (formula "4") (term "0") (ifseqformula "3")) + (rule "hideAuxiliaryEq" (formula "3")) + (rule "inEqSimp_exactShadow3" (formula "1") (ifseqformula "2")) + (rule "mul_literals" (formula "1") (term "0,0")) + (rule "add_zero_left" (formula "1") (term "0")) + (rule "allLeft" (formula "13") (inst "t=x_0:int")) + (rule "replace_known_left" (formula "13") (term "0,1") (ifseqformula "3")) + (builtin "One Step Simplification" (formula "13")) + (rule "inEqSimp_commuteGeq" (formula "13") (term "1")) + (rule "inEqSimp_contradInEq1" (formula "13") (term "0") (ifseqformula "1")) + (rule "qeq_literals" (formula "13") (term "0,0")) + (builtin "One Step Simplification" (formula "13")) + (rule "inEqSimp_exactShadow3" (formula "12") (ifseqformula "13")) + (rule "mul_literals" (formula "12") (term "0,0")) + (rule "add_zero_left" (formula "12") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "23") (ifseqformula "13")) + (rule "polySimp_mulComm0" (formula "23") (term "0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "23")) + (rule "polySimp_mulLiterals" (formula "23") (term "1")) + (rule "polySimp_elimOne" (formula "23") (term "1")) + (rule "inEqSimp_exactShadow3" (formula "23") (ifseqformula "2")) + (rule "polySimp_mulComm0" (formula "23") (term "0,0")) + (rule "polySimp_addComm0" (formula "23") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "23")) + (rule "polySimp_mulLiterals" (formula "23") (term "0")) + (rule "polySimp_elimOne" (formula "23") (term "0")) + (rule "inEqSimp_contradInEq0" (formula "4") (ifseqformula "23")) + (rule "andLeft" (formula "4")) + (rule "inEqSimp_homoInEq1" (formula "4")) + (rule "polySimp_pullOutFactor1b" (formula "4") (term "0")) + (rule "add_literals" (formula "4") (term "1,1,0")) + (rule "times_zero_1" (formula "4") (term "1,0")) + (rule "add_literals" (formula "4") (term "0")) + (rule "leq_literals" (formula "4")) + (rule "closeFalse" (formula "4")) + ) + (branch + (rule "allRight" (formula "24") (inst "sk=f_0:Field")) + (rule "allRight" (formula "24") (inst "sk=o_0:java.lang.Object")) + (rule "orRight" (formula "24")) + (rule "pullOutSelect" (formula "25") (term "0") (inst "selectSK=f_0_0:any")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "25"))) + (rule "applyEqReverse" (formula "26") (term "0") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "26")) + (rule "closeTrue" (formula "26")) + ) + ) + (branch "CUT: up_0 >= 1 + quotient_0 FALSE" + (builtin "One Step Simplification" (formula "24") (ifInst "" (formula "23"))) + (rule "false_right" (formula "24")) + (rule "inEqSimp_geqRight" (formula "23")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "0,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1")) + (rule "polySimp_elimOne" (formula "1") (term "1")) + (rule "inEqSimp_exactShadow3" (formula "8") (ifseqformula "1")) + (rule "polySimp_rightDist" (formula "8") (term "0,0")) + (rule "mul_literals" (formula "8") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "8") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "8")) + (rule "polySimp_mulLiterals" (formula "8") (term "0")) + (rule "polySimp_elimOne" (formula "8") (term "0")) + (rule "inEqSimp_subsumption0" (formula "7") (ifseqformula "8")) + (rule "inEqSimp_homoInEq0" (formula "7") (term "0")) + (rule "polySimp_mulComm0" (formula "7") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "7") (term "1,0,0")) + (rule "mul_literals" (formula "7") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "7") (term "0,0")) + (rule "polySimp_addComm0" (formula "7") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "7") (term "0,0")) + (rule "add_literals" (formula "7") (term "1,1,0,0")) + (rule "times_zero_1" (formula "7") (term "1,0,0")) + (rule "add_literals" (formula "7") (term "0,0")) + (rule "qeq_literals" (formula "7") (term "0")) + (builtin "One Step Simplification" (formula "7")) + (rule "true_left" (formula "7")) + (rule "inEqSimp_exactShadow3" (formula "4") (ifseqformula "1")) + (rule "polySimp_rightDist" (formula "4") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "4") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "4") (term "1,0,0")) + (rule "polySimp_mulAssoc" (formula "4") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "4") (term "0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "4") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "4") (term "0")) + (rule "polySimp_pullOutFactor2" (formula "4") (term "0,0")) + (rule "add_literals" (formula "4") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "4")) + (rule "polySimp_mulLiterals" (formula "4") (term "1")) + (rule "polySimp_elimOne" (formula "4") (term "1")) + (rule "inEqSimp_contradInEq0" (formula "4") (ifseqformula "8")) + (rule "andLeft" (formula "4")) + (rule "inEqSimp_homoInEq1" (formula "4")) + (rule "polySimp_mulComm0" (formula "4") (term "1,0")) + (rule "polySimp_rightDist" (formula "4") (term "1,0")) + (rule "mul_literals" (formula "4") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "4") (term "0")) + (rule "polySimp_addComm0" (formula "4") (term "0,0")) + (rule "polySimp_pullOutFactor1b" (formula "4") (term "0")) + (rule "add_literals" (formula "4") (term "1,1,0")) + (rule "times_zero_1" (formula "4") (term "1,0")) + (rule "add_literals" (formula "4") (term "0")) + (rule "leq_literals" (formula "4")) + (rule "closeFalse" (formula "4")) + ) + ) + ) + (branch "Null Reference (_a = null)" + (builtin "One Step Simplification" (formula "20")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "19"))) + (rule "close" (formula "20") (ifseqformula "1")) + ) + (branch "Index Out of Bounds (_a != null, but mid Out of Bounds!)" + (builtin "One Step Simplification" (formula "20")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "19"))) + (rule "false_right" (formula "20")) + (rule "inEqSimp_ltToLeq" (formula "1") (term "1")) + (rule "mul_literals" (formula "1") (term "1,0,0,1")) + (rule "add_literals" (formula "1") (term "0,0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "1") (term "1")) + (rule "mul_literals" (formula "1") (term "1,1")) + (rule "Class_invariant_axiom_for_BinSearch" (formula "11") (ifseqformula "8")) + (rule "true_left" (formula "11")) + (rule "commute_or" (formula "1")) + (rule "div_axiom" (formula "2") (term "1,1") (inst "quotient=quotient_0")) + (rule "equal_literals" (formula "2") (term "0")) + (builtin "One Step Simplification" (formula "2")) + (rule "qeq_literals" (formula "2") (term "0,1")) + (builtin "One Step Simplification" (formula "2")) + (rule "mul_literals" (formula "2") (term "1,1,1")) + (rule "andLeft" (formula "2")) + (rule "andLeft" (formula "2")) + (rule "polySimp_addAssoc" (formula "4") (term "0,1")) + (rule "polySimp_addComm1" (formula "4") (term "1")) + (rule "polySimp_addComm1" (formula "4") (term "0,1")) + (rule "add_literals" (formula "4") (term "0,0,1")) + (rule "inEqSimp_homoInEq0" (formula "3")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,0")) + (rule "polySimp_addComm1" (formula "3") (term "0")) + (rule "polySimp_addComm0" (formula "3") (term "0,0")) + (rule "inEqSimp_homoInEq1" (formula "4")) + (rule "polySimp_mulLiterals" (formula "4") (term "1,0")) + (rule "polySimp_addComm1" (formula "4") (term "0")) + (rule "polySimp_addComm1" (formula "4") (term "0,0")) + (rule "applyEq" (formula "19") (term "0,2,0") (ifseqformula "2")) + (rule "applyEq" (formula "1") (term "0,0") (ifseqformula "2")) + (rule "applyEq" (formula "1") (term "1,1") (ifseqformula "2")) + (rule "applyEq" (formula "5") (term "1,1") (ifseqformula "2")) + (rule "polySimp_addComm0" (formula "5") (term "1")) + (rule "inEqSimp_sepPosMonomial1" (formula "3")) + (rule "polySimp_mulComm0" (formula "3") (term "1")) + (rule "polySimp_rightDist" (formula "3") (term "1")) + (rule "polySimp_mulComm0" (formula "3") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "3") (term "0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "4")) + (rule "polySimp_mulComm0" (formula "4") (term "1")) + (rule "polySimp_rightDist" (formula "4") (term "1")) + (rule "polySimp_rightDist" (formula "4") (term "0,1")) + (rule "mul_literals" (formula "4") (term "0,0,1")) + (rule "polySimp_mulLiterals" (formula "4") (term "1,0,1")) + (rule "inEqSimp_exactShadow3" (formula "6") (ifseqformula "4")) + (rule "polySimp_rightDist" (formula "6") (term "0,0")) + (rule "mul_literals" (formula "6") (term "0,0,0")) + (rule "polySimp_addAssoc" (formula "6") (term "0")) + (rule "polySimp_addComm1" (formula "6") (term "0,0")) + (rule "polySimp_pullOutFactor0b" (formula "6") (term "0")) + (rule "add_literals" (formula "6") (term "1,1,0")) + (rule "polySimp_addAssoc" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "0,0,0")) + (rule "add_zero_left" (formula "6") (term "0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "6")) + (rule "polySimp_mulLiterals" (formula "6") (term "0")) + (rule "elimGcdLeq_antec" (formula "6") (inst "elimGcd=Z(2(#))") (inst "elimGcdLeftDiv=low_0") (inst "elimGcdRightDiv=quotient_0")) + (rule "leq_literals" (formula "6") (term "0,0")) + (builtin "One Step Simplification" (formula "6")) + (rule "neg_literal" (formula "6") (term "0,0,0,0,0,0")) + (rule "mul_literals" (formula "6") (term "0,1,0,0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "6") (term "1,0,0")) + (rule "polySimp_pullOutFactor0b" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "1,1,0,0")) + (rule "times_zero_1" (formula "6") (term "1,0,0")) + (rule "add_zero_right" (formula "6") (term "0,0")) + (rule "polySimp_mulComm0" (formula "6") (term "1,0,0,0")) + (rule "polySimp_pullOutFactor0b" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "1,1,0,0")) + (rule "times_zero_1" (formula "6") (term "1,0,0")) + (rule "add_literals" (formula "6") (term "0,0")) + (rule "qeq_literals" (formula "6") (term "0")) + (builtin "One Step Simplification" (formula "6")) + (rule "inEqSimp_exactShadow3" (formula "16") (ifseqformula "6")) + (rule "mul_literals" (formula "16") (term "0,0")) + (rule "add_zero_left" (formula "16") (term "0")) + (rule "inEqSimp_contradInEq1" (formula "1") (term "0") (ifseqformula "16")) + (rule "qeq_literals" (formula "1") (term "0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "inEqSimp_exactShadow3" (formula "8") (ifseqformula "1")) + (rule "mul_literals" (formula "8") (term "0,0")) + (rule "add_zero_left" (formula "8") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "18") (ifseqformula "1")) + (rule "polySimp_mulComm0" (formula "18") (term "0,0")) + (rule "polySimp_addComm0" (formula "18") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "18")) + (rule "polySimp_mulLiterals" (formula "18") (term "0")) + (rule "polySimp_elimOne" (formula "18") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "7") (ifseqformula "18")) + (rule "polySimp_rightDist" (formula "7") (term "0,0")) + (rule "mul_literals" (formula "7") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "7") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "7")) + (rule "polySimp_mulLiterals" (formula "7") (term "0")) + (rule "polySimp_elimOne" (formula "7") (term "0")) + (rule "inEqSimp_subsumption0" (formula "6") (ifseqformula "7")) + (rule "inEqSimp_homoInEq0" (formula "6") (term "0")) + (rule "polySimp_mulComm0" (formula "6") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "6") (term "1,0,0")) + (rule "mul_literals" (formula "6") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "6") (term "0,0")) + (rule "polySimp_addComm0" (formula "6") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "1,1,0,0")) + (rule "times_zero_1" (formula "6") (term "1,0,0")) + (rule "add_literals" (formula "6") (term "0,0")) + (rule "qeq_literals" (formula "6") (term "0")) + (builtin "One Step Simplification" (formula "6")) + (rule "true_left" (formula "6")) + (rule "inEqSimp_exactShadow3" (formula "3") (ifseqformula "18")) + (rule "polySimp_rightDist" (formula "3") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "3") (term "1,0,0")) + (rule "polySimp_mulAssoc" (formula "3") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "3") (term "0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "3") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "3") (term "0")) + (rule "polySimp_pullOutFactor2" (formula "3") (term "0,0")) + (rule "add_literals" (formula "3") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "3")) + (rule "polySimp_mulLiterals" (formula "3") (term "1")) + (rule "polySimp_elimOne" (formula "3") (term "1")) + (rule "inEqSimp_contradInEq0" (formula "3") (ifseqformula "7")) + (rule "andLeft" (formula "3")) + (rule "inEqSimp_homoInEq1" (formula "3")) + (rule "polySimp_mulComm0" (formula "3") (term "1,0")) + (rule "polySimp_rightDist" (formula "3") (term "1,0")) + (rule "mul_literals" (formula "3") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "3") (term "0")) + (rule "polySimp_addComm0" (formula "3") (term "0,0")) + (rule "polySimp_pullOutFactor1b" (formula "3") (term "0")) + (rule "add_literals" (formula "3") (term "1,1,0")) + (rule "times_zero_1" (formula "3") (term "1,0")) + (rule "add_literals" (formula "3") (term "0")) + (rule "leq_literals" (formula "3")) + (rule "closeFalse" (formula "3")) + ) + ) + ) + (branch "Null Reference (_a = null)" + (builtin "One Step Simplification" (formula "18")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "17"))) + (rule "close" (formula "18") (ifseqformula "1")) + ) + (branch "Index Out of Bounds (_a != null, but mid Out of Bounds!)" + (builtin "One Step Simplification" (formula "18")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "17"))) + (rule "false_right" (formula "18")) + (rule "inEqSimp_ltToLeq" (formula "1") (term "1")) + (rule "mul_literals" (formula "1") (term "1,0,0,1")) + (rule "add_literals" (formula "1") (term "0,0,1")) + (rule "polySimp_addAssoc" (formula "1") (term "0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "1") (term "1")) + (rule "polySimp_mulComm0" (formula "1") (term "1,1")) + (rule "polySimp_rightDist" (formula "1") (term "1,1")) + (rule "mul_literals" (formula "1") (term "0,1,1")) + (rule "Class_invariant_axiom_for_BinSearch" (formula "10") (ifseqformula "7")) + (rule "true_left" (formula "10")) + (rule "commute_or" (formula "1")) + (rule "jdiv_axiom" (formula "1") (term "0,0")) + (rule "eqSymm" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "0,0,2,0")) + (rule "polySimp_rightDist" (formula "1") (term "0,0,2,0")) + (rule "polySimp_mulAssoc" (formula "1") (term "0,0,0,2,0")) + (rule "polySimp_mulComm0" (formula "1") (term "0,0,0,0,2,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "0,0,0,2,0")) + (rule "polySimp_elimOne" (formula "1") (term "0,0,0,2,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "1") (term "1,0,0")) + (rule "inEqSimp_subsumption1" (formula "1") (term "0,0") (ifseqformula "3")) + (rule "inEqSimp_homoInEq0" (formula "1") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "1") (term "0,0,0,0")) + (rule "add_literals" (formula "1") (term "1,1,0,0,0,0")) + (rule "times_zero_1" (formula "1") (term "1,0,0,0,0")) + (rule "add_literals" (formula "1") (term "0,0,0,0")) + (rule "qeq_literals" (formula "1") (term "0,0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "eqSymm" (formula "1")) + (rule "applyEq" (formula "2") (term "0,0") (ifseqformula "1")) + (rule "applyEq" (formula "2") (term "1,1,1") (ifseqformula "1")) + (rule "polyDiv_pullOut" (formula "2") (term "0,0") (inst "polyDivCoeff=mul(low_0, Z(neglit(1(#))))")) + (rule "equal_literals" (formula "2") (term "0,0,0")) + (builtin "One Step Simplification" (formula "2")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,0,0,0,0")) + (rule "polySimp_addComm0" (formula "2") (term "0,0")) + (rule "polySimp_addComm1" (formula "2") (term "0,1,0,0")) + (rule "polySimp_pullOutFactor0" (formula "2") (term "0,0,1,0,0")) + (rule "add_literals" (formula "2") (term "1,0,0,1,0,0")) + (rule "polySimp_elimOne" (formula "2") (term "0,0,1,0,0")) + (rule "inEqSimp_homoInEq0" (formula "2") (term "0")) + (rule "polySimp_mulComm0" (formula "2") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "2") (term "1,0,0")) + (rule "polySimp_mulAssoc" (formula "2") (term "0,1,0,0")) + (rule "polySimp_mulComm0" (formula "2") (term "0,0,1,0,0")) + (rule "polySimp_mulLiterals" (formula "2") (term "0,1,0,0")) + (rule "polySimp_elimOne" (formula "2") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "2") (term "0,0")) + (rule "polySimp_pullOutFactor2b" (formula "2") (term "0,0,0")) + (rule "add_literals" (formula "2") (term "1,1,0,0,0")) + (rule "times_zero_1" (formula "2") (term "1,0,0,0")) + (rule "add_literals" (formula "2") (term "0,0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "2") (term "0")) + (rule "polySimp_mulLiterals" (formula "2") (term "0,0")) + (rule "polySimp_elimOne" (formula "2") (term "0,0")) + (rule "polyDiv_pullOut" (formula "1") (term "1") (inst "polyDivCoeff=mul(low_0, Z(neglit(1(#))))")) + (rule "equal_literals" (formula "1") (term "0,1")) + (builtin "One Step Simplification" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,0,0,1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,0,0,1")) + (rule "polySimp_addComm0" (formula "1") (term "1")) + (rule "polySimp_addComm1" (formula "1") (term "0,1,1")) + (rule "polySimp_pullOutFactor0" (formula "1") (term "0,0,1,1")) + (rule "add_literals" (formula "1") (term "1,0,0,1,1")) + (rule "polySimp_elimOne" (formula "1") (term "0,0,1,1")) + (rule "polyDiv_pullOut" (formula "2") (term "1,1,1") (inst "polyDivCoeff=mul(low_0, Z(neglit(1(#))))")) + (rule "equal_literals" (formula "2") (term "0,1,1,1")) + (builtin "One Step Simplification" (formula "2")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,0,0,1,1,1")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,0,0,1,1,1")) + (rule "polySimp_addComm0" (formula "2") (term "1,1,1")) + (rule "polySimp_addComm1" (formula "2") (term "0,1,1,1,1")) + (rule "polySimp_pullOutFactor0" (formula "2") (term "0,0,1,1,1,1")) + (rule "add_literals" (formula "2") (term "1,0,0,1,1,1,1")) + (rule "polySimp_elimOne" (formula "2") (term "0,0,1,1,1,1")) + (rule "polySimp_addAssoc" (formula "2") (term "1,1")) + (rule "polySimp_pullOutFactor1" (formula "2") (term "0,1,1")) + (rule "add_literals" (formula "2") (term "1,0,1,1")) + (rule "times_zero_1" (formula "2") (term "0,1,1")) + (rule "add_zero_left" (formula "2") (term "1,1")) + (rule "div_axiom" (formula "1") (term "1,1") (inst "quotient=quotient_0")) + (rule "equal_literals" (formula "1") (term "0")) + (builtin "One Step Simplification" (formula "1")) + (rule "qeq_literals" (formula "1") (term "0,1")) + (builtin "One Step Simplification" (formula "1")) + (rule "mul_literals" (formula "1") (term "1,1,1")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "1")) + (rule "polySimp_addAssoc" (formula "3") (term "0,1")) + (rule "polySimp_addComm1" (formula "3") (term "1")) + (rule "polySimp_addComm1" (formula "3") (term "0,1")) + (rule "add_literals" (formula "3") (term "0,0,1")) + (rule "inEqSimp_homoInEq0" (formula "2")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,0")) + (rule "polySimp_addComm1" (formula "2") (term "0")) + (rule "polySimp_addComm0" (formula "2") (term "0,0")) + (rule "inEqSimp_homoInEq1" (formula "3")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,0")) + (rule "polySimp_addComm1" (formula "3") (term "0")) + (rule "polySimp_addComm1" (formula "3") (term "0,0")) + (rule "applyEq" (formula "5") (term "0,0") (ifseqformula "1")) + (rule "applyEq" (formula "5") (term "1,1") (ifseqformula "1")) + (rule "applyEq" (formula "4") (term "1,1") (ifseqformula "1")) + (rule "polySimp_addComm0" (formula "4") (term "1")) + (rule "inEqSimp_sepPosMonomial1" (formula "2")) + (rule "polySimp_mulComm0" (formula "2") (term "1")) + (rule "polySimp_rightDist" (formula "2") (term "1")) + (rule "polySimp_mulComm0" (formula "2") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "2") (term "0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "3")) + (rule "polySimp_mulComm0" (formula "3") (term "1")) + (rule "polySimp_rightDist" (formula "3") (term "1")) + (rule "polySimp_rightDist" (formula "3") (term "0,1")) + (rule "mul_literals" (formula "3") (term "0,0,1")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,0,1")) + (rule "inEqSimp_exactShadow3" (formula "6") (ifseqformula "3")) + (rule "polySimp_rightDist" (formula "6") (term "0,0")) + (rule "mul_literals" (formula "6") (term "0,0,0")) + (rule "polySimp_addAssoc" (formula "6") (term "0")) + (rule "polySimp_addComm1" (formula "6") (term "0,0")) + (rule "polySimp_pullOutFactor0b" (formula "6") (term "0")) + (rule "add_literals" (formula "6") (term "1,1,0")) + (rule "polySimp_addAssoc" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "0,0,0")) + (rule "add_zero_left" (formula "6") (term "0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "6")) + (rule "polySimp_mulLiterals" (formula "6") (term "0")) + (rule "elimGcdLeq_antec" (formula "6") (inst "elimGcd=Z(2(#))") (inst "elimGcdLeftDiv=low_0") (inst "elimGcdRightDiv=quotient_0")) + (rule "leq_literals" (formula "6") (term "0,0")) + (builtin "One Step Simplification" (formula "6")) + (rule "neg_literal" (formula "6") (term "0,0,0,0,0,0")) + (rule "mul_literals" (formula "6") (term "0,1,0,0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "6") (term "1,0,0")) + (rule "polySimp_pullOutFactor0b" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "1,1,0,0")) + (rule "times_zero_1" (formula "6") (term "1,0,0")) + (rule "add_zero_right" (formula "6") (term "0,0")) + (rule "polySimp_mulComm0" (formula "6") (term "1,0,0,0")) + (rule "polySimp_pullOutFactor0b" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "1,1,0,0")) + (rule "times_zero_1" (formula "6") (term "1,0,0")) + (rule "add_literals" (formula "6") (term "0,0")) + (rule "qeq_literals" (formula "6") (term "0")) + (builtin "One Step Simplification" (formula "6")) + (rule "inEqSimp_exactShadow3" (formula "16") (ifseqformula "6")) + (rule "mul_literals" (formula "16") (term "0,0")) + (rule "add_zero_left" (formula "16") (term "0")) + (rule "inEqSimp_contradInEq1" (formula "5") (term "0") (ifseqformula "16")) + (rule "qeq_literals" (formula "5") (term "0,0")) + (builtin "One Step Simplification" (formula "5")) + (rule "inEqSimp_exactShadow3" (formula "8") (ifseqformula "5")) + (rule "mul_literals" (formula "8") (term "0,0")) + (rule "add_zero_left" (formula "8") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "18") (ifseqformula "5")) + (rule "polySimp_mulComm0" (formula "18") (term "0,0")) + (rule "polySimp_addComm0" (formula "18") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "18")) + (rule "polySimp_mulLiterals" (formula "18") (term "0")) + (rule "polySimp_elimOne" (formula "18") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "7") (ifseqformula "18")) + (rule "polySimp_rightDist" (formula "7") (term "0,0")) + (rule "mul_literals" (formula "7") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "7") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "7")) + (rule "polySimp_mulLiterals" (formula "7") (term "0")) + (rule "polySimp_elimOne" (formula "7") (term "0")) + (rule "inEqSimp_subsumption0" (formula "6") (ifseqformula "7")) + (rule "inEqSimp_homoInEq0" (formula "6") (term "0")) + (rule "polySimp_mulComm0" (formula "6") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "6") (term "1,0,0")) + (rule "mul_literals" (formula "6") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "6") (term "0,0")) + (rule "polySimp_addComm0" (formula "6") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "1,1,0,0")) + (rule "times_zero_1" (formula "6") (term "1,0,0")) + (rule "add_literals" (formula "6") (term "0,0")) + (rule "qeq_literals" (formula "6") (term "0")) + (builtin "One Step Simplification" (formula "6")) + (rule "true_left" (formula "6")) + (rule "inEqSimp_exactShadow3" (formula "2") (ifseqformula "18")) + (rule "polySimp_rightDist" (formula "2") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "2") (term "1,0,0")) + (rule "polySimp_mulAssoc" (formula "2") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "2") (term "0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "2") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "2") (term "0")) + (rule "polySimp_pullOutFactor2" (formula "2") (term "0,0")) + (rule "add_literals" (formula "2") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "2")) + (rule "polySimp_mulLiterals" (formula "2") (term "1")) + (rule "polySimp_elimOne" (formula "2") (term "1")) + (rule "inEqSimp_contradInEq0" (formula "2") (ifseqformula "7")) + (rule "andLeft" (formula "2")) + (rule "inEqSimp_homoInEq1" (formula "2")) + (rule "polySimp_mulComm0" (formula "2") (term "1,0")) + (rule "polySimp_rightDist" (formula "2") (term "1,0")) + (rule "mul_literals" (formula "2") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "2") (term "0")) + (rule "polySimp_addComm0" (formula "2") (term "0,0")) + (rule "polySimp_pullOutFactor1b" (formula "2") (term "0")) + (rule "add_literals" (formula "2") (term "1,1,0")) + (rule "times_zero_1" (formula "2") (term "1,0")) + (rule "add_literals" (formula "2") (term "0")) + (rule "leq_literals" (formula "2")) + (rule "closeFalse" (formula "2")) + ) + ) + (branch + (builtin "One Step Simplification" (formula "17")) + (rule "equal_literals" (formula "17") (term "0")) + (builtin "One Step Simplification" (formula "17")) + (rule "closeTrue" (formula "17")) + ) + ) + (branch "if b_2 false" + (builtin "One Step Simplification" (formula "18")) + (builtin "One Step Simplification" (formula "1")) + (rule "closeFalse" (formula "1")) + ) + ) + (branch "Use Case" + (builtin "One Step Simplification" (formula "12")) + (builtin "One Step Simplification" (formula "9")) + (rule "andLeft" (formula "9")) + (rule "andLeft" (formula "9")) + (rule "andLeft" (formula "9")) + (rule "andLeft" (formula "9")) + (rule "inEqSimp_ltToLeq" (formula "13") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "13") (term "1,0,0,1,0,0")) + (rule "inEqSimp_ltToLeq" (formula "12") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "12") (term "1,0,0,1,0,0")) + (rule "inEqSimp_commuteLeq" (formula "13") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "12") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "11")) + (rule "inEqSimp_commuteLeq" (formula "9")) + (rule "inEqSimp_commuteLeq" (formula "10")) + (rule "variableDeclarationAssign" (formula "16") (term "1")) + (rule "variableDeclaration" (formula "16") (term "1") (newnames "b_1")) + (rule "inEqSimp_sepPosMonomial0" (formula "13") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "13") (term "1,1,0,0")) + (rule "polySimp_rightDist" (formula "13") (term "1,1,0,0")) + (rule "mul_literals" (formula "13") (term "0,1,1,0,0")) + (rule "polySimp_mulLiterals" (formula "13") (term "1,1,1,0,0")) + (rule "polySimp_elimOne" (formula "13") (term "1,1,1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "12") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "12") (term "1,1,0,0")) + (rule "polySimp_rightDist" (formula "12") (term "1,1,0,0")) + (rule "mul_literals" (formula "12") (term "0,1,1,0,0")) + (rule "polySimp_mulLiterals" (formula "12") (term "1,1,1,0,0")) + (rule "polySimp_elimOne" (formula "12") (term "1,1,1,0,0")) + (rule "nnf_imp2or" (formula "13") (term "0")) + (rule "nnf_imp2or" (formula "12") (term "0")) + (rule "nnf_notAnd" (formula "13") (term "0,0")) + (rule "inEqSimp_notGeq" (formula "13") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "13") (term "1,0,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "13") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "13") (term "1,0,0,0")) + (rule "polySimp_rightDist" (formula "13") (term "1,0,0,0")) + (rule "mul_literals" (formula "13") (term "0,1,0,0,0")) + (rule "polySimp_mulLiterals" (formula "13") (term "1,1,0,0,0")) + (rule "polySimp_elimOne" (formula "13") (term "1,1,0,0,0")) + (rule "inEqSimp_notLeq" (formula "13") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "13") (term "1,0,0,1,0,0")) + (rule "mul_literals" (formula "13") (term "0,1,0,0,1,0,0")) + (rule "polySimp_addAssoc" (formula "13") (term "0,0,1,0,0")) + (rule "add_literals" (formula "13") (term "0,0,0,1,0,0")) + (rule "add_zero_left" (formula "13") (term "0,0,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "13") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "13") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "13") (term "1,1,0,0")) + (rule "nnf_notAnd" (formula "12") (term "0,0")) + (rule "inEqSimp_notGeq" (formula "12") (term "0,0,0")) + (rule "mul_literals" (formula "12") (term "1,0,0,0,0,0")) + (rule "add_literals" (formula "12") (term "0,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "12") (term "0,0,0")) + (rule "mul_literals" (formula "12") (term "1,0,0,0")) + (rule "inEqSimp_notLeq" (formula "12") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "12") (term "1,0,0,1,0,0")) + (rule "mul_literals" (formula "12") (term "0,1,0,0,1,0,0")) + (rule "polySimp_addAssoc" (formula "12") (term "0,0,1,0,0")) + (rule "add_literals" (formula "12") (term "0,0,0,1,0,0")) + (rule "add_zero_left" (formula "12") (term "0,0,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "12") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "12") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "12") (term "1,1,0,0")) + (rule "less_than_comparison_simple" (formula "16") (term "1")) + (builtin "One Step Simplification" (formula "16")) + (rule "inEqSimp_ltToLeq" (formula "16") (term "0,0,1,0")) + (rule "polySimp_mulComm0" (formula "16") (term "1,0,0,0,0,1,0")) + (rule "polySimp_addComm1" (formula "16") (term "0,0,0,1,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "16") (term "0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "16") (term "0,0,0,1,0")) + (rule "polySimp_elimOne" (formula "16") (term "0,0,0,1,0")) + (rule "methodCallEmpty" (formula "16") (term "1")) + (rule "emptyModality" (formula "16") (term "1")) + (builtin "One Step Simplification" (formula "16")) + (rule "impRight" (formula "16")) + (rule "notLeft" (formula "1")) + (rule "inEqSimp_geqRight" (formula "14")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "0,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1")) + (rule "polySimp_elimOne" (formula "1") (term "1")) + (rule "inEqSimp_antiSymm" (formula "11") (ifseqformula "1")) + (rule "applyEq" (formula "12") (term "0") (ifseqformula "11")) + (rule "inEqSimp_homoInEq1" (formula "12")) + (rule "polySimp_pullOutFactor1" (formula "12") (term "0")) + (rule "add_literals" (formula "12") (term "1,0")) + (rule "times_zero_1" (formula "12") (term "0")) + (rule "leq_literals" (formula "12")) + (rule "true_left" (formula "12")) + (rule "applyEq" (formula "1") (term "0") (ifseqformula "11")) + (rule "inEqSimp_homoInEq0" (formula "1")) + (rule "polySimp_pullOutFactor1" (formula "1") (term "0")) + (rule "add_literals" (formula "1") (term "1,0")) + (rule "times_zero_1" (formula "1") (term "0")) + (rule "qeq_literals" (formula "1")) + (rule "true_left" (formula "1")) + (rule "applyEq" (formula "13") (term "1,1,0,0,0") (ifseqformula "10")) + (rule "applyEq" (formula "11") (term "1") (ifseqformula "10")) + (rule "throwUnfold" (formula "16") (term "1") (inst "#v0=r")) + (rule "variableDeclarationAssign" (formula "16") (term "1")) + (rule "variableDeclaration" (formula "16") (term "1") (newnames "r")) + (rule "arrayLengthIsAnInt" (formula "1") (term "1,1,0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "true_left" (formula "1")) + (rule "arrayLengthNotNegative" (formula "1") (term "1,1,0,0")) + (rule "instanceCreationAssignment" (formula "17") (term "1") (inst "#v0=r_1")) + (rule "variableDeclarationAssign" (formula "17") (term "1")) + (rule "variableDeclaration" (formula "17") (term "1") (newnames "r_1")) + (rule "staticMethodCallStaticWithAssignmentViaTypereference" (formula "17") (term "1") (inst "#v0=r_2")) + (rule "variableDeclaration" (formula "17") (term "1") (newnames "r_2")) + (rule "methodBodyExpand" (formula "17") (term "1") (newnames "heapBefore_$createObject,savedHeapBefore_$createObject")) + (builtin "One Step Simplification" (formula "17")) + (rule "variableDeclaration" (formula "17") (term "1") (newnames "__NEW__")) + (rule "staticMethodCallStaticWithAssignmentViaTypereference" (formula "17") (term "1") (inst "#v0=r_3")) + (rule "variableDeclaration" (formula "17") (term "1") (newnames "r_3")) + (rule "allocateInstance" (formula "17")) + (builtin "One Step Simplification" (formula "18")) + (builtin "One Step Simplification" (formula "1")) + (rule "wellFormedAnon" (formula "1") (term "0,1,0")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "1")) + (rule "notLeft" (formula "1")) + (rule "replace_known_left" (formula "1") (term "0,0") (ifseqformula "5")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "11"))) + (rule "notLeft" (formula "1")) + (rule "blockEmpty" (formula "20") (term "1")) + (rule "assignment" (formula "20") (term "1")) + (builtin "One Step Simplification" (formula "20")) + (rule "selectCreatedOfAnonAsFormula" (formula "16")) + (rule "orRight" (formula "16")) + (rule "methodBodyExpand" (formula "21") (term "1") (newnames "heapBefore_$create,savedHeapBefore_$create")) + (builtin "One Step Simplification" (formula "21")) + (rule "assignment_write_attribute_this" (formula "21")) + (builtin "One Step Simplification" (formula "21")) + (rule "methodCallWithinClass" (formula "21") (term "1")) + (rule "methodBodyExpand" (formula "21") (term "1") (newnames "heapBefore_$prepareEnter,savedHeapBefore_$prepareEnter")) + (builtin "One Step Simplification" (formula "21")) + (rule "methodCallSuper" (formula "21") (term "1")) + (rule "methodBodyExpand" (formula "21") (term "1") (newnames "heapBefore_$prepare,savedHeapBefore_$prepare")) + (builtin "One Step Simplification" (formula "21")) + (rule "methodCallSuper" (formula "21") (term "1")) + (rule "methodBodyExpand" (formula "21") (term "1") (newnames "heapBefore_$prepare_0,savedHeapBefore_$prepare_0")) + (builtin "One Step Simplification" (formula "21")) + (rule "methodCallSuper" (formula "21") (term "1")) + (rule "methodBodyExpand" (formula "21") (term "1") (newnames "heapBefore_$prepare_1,savedHeapBefore_$prepare_1")) + (builtin "One Step Simplification" (formula "21")) + (rule "methodCallEmpty" (formula "21") (term "1")) + (rule "blockEmpty" (formula "21") (term "1")) + (rule "assignment_write_attribute_this" (formula "21")) + (builtin "One Step Simplification" (formula "21")) + (rule "assignment_write_attribute_this" (formula "21")) + (builtin "One Step Simplification" (formula "21")) + (rule "methodCallEmpty" (formula "21") (term "1")) + (rule "methodCallEmpty" (formula "21") (term "1")) + (rule "methodCallEmpty" (formula "21") (term "1")) + (rule "blockEmpty" (formula "21") (term "1")) + (rule "methodCallReturnIgnoreResult" (formula "21") (term "1")) + (rule "methodCallReturn" (formula "21") (term "1")) + (rule "assignment" (formula "21") (term "1")) + (builtin "One Step Simplification" (formula "21")) + (rule "methodCallEmpty" (formula "21") (term "1")) + (rule "blockEmpty" (formula "21") (term "1")) + (rule "assignment" (formula "21") (term "1")) + (builtin "One Step Simplification" (formula "21")) + (rule "methodBodyExpand" (formula "21") (term "1") (newnames "heapBefore_$init,savedHeapBefore_$init")) + (builtin "One Step Simplification" (formula "21")) + (rule "methodCallSuper" (formula "21") (term "1")) + (rule "methodBodyExpand" (formula "21") (term "1") (newnames "heapBefore_$init_0,savedHeapBefore_$init_0")) + (builtin "One Step Simplification" (formula "21")) + (rule "methodCallSuper" (formula "21") (term "1")) + (rule "methodBodyExpand" (formula "21") (term "1") (newnames "heapBefore_$init_1,savedHeapBefore_$init_1")) + (builtin "One Step Simplification" (formula "21")) + (rule "methodCallSuper" (formula "21") (term "1")) + (rule "methodBodyExpand" (formula "21") (term "1") (newnames "heapBefore_$init_2,savedHeapBefore_$init_2")) + (builtin "One Step Simplification" (formula "21")) + (rule "methodCallEmpty" (formula "21") (term "1")) + (rule "methodCallEmpty" (formula "21") (term "1")) + (rule "methodCallEmpty" (formula "21") (term "1")) + (rule "methodCallEmpty" (formula "21") (term "1")) + (rule "blockEmpty" (formula "21") (term "1")) + (rule "assignment_write_attribute" (formula "21")) + (branch "Normal Execution (r_1 != null)" + (builtin "One Step Simplification" (formula "21")) + (rule "assignment" (formula "21") (term "1")) + (builtin "One Step Simplification" (formula "21")) + (rule "methodCallParamThrow" (formula "21") (term "1")) + (rule "tryCatchThrow" (formula "21") (term "1")) + (branch "Null reference in throw" + (builtin "One Step Simplification" (formula "22")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "19"))) + (rule "closeFalse" (formula "1")) + ) + (branch "Normal execution" + (builtin "One Step Simplification" (formula "21") (ifInst "" (formula "18"))) + (rule "false_right" (formula "21")) + (rule "ifElseSplit" (formula "21")) + (branch "if r instanceof java.lang.Throwable true" + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "19"))) + (rule "true_left" (formula "1")) + (rule "variableDeclaration" (formula "21") (term "1") (newnames "e")) + (rule "delete_unnecessary_cast" (formula "21") (term "1")) + (builtin "One Step Simplification" (formula "22")) + (builtin "One Step Simplification" (formula "1")) + (rule "true_left" (formula "1")) + (rule "assignment" (formula "21") (term "1")) + (builtin "One Step Simplification" (formula "21")) + (rule "emptyModality" (formula "21") (term "1")) + (builtin "One Step Simplification" (formula "21") (ifInst "" (formula "18"))) + (rule "eqSymm" (formula "21") (term "1,0,0,1")) + (rule "Class_invariant_axiom_for_BinSearch" (formula "9") (ifseqformula "6")) + (rule "true_left" (formula "9")) + (rule "Class_invariant_axiom_for_BinSearch" (formula "20") (term "0") (ifseqformula "6")) + (builtin "One Step Simplification" (formula "20")) + (rule "allRight" (formula "20") (inst "sk=f_0:Field")) + (rule "allRight" (formula "20") (inst "sk=o_0:java.lang.Object")) + (rule "orRight" (formula "20")) + (rule "pullOutSelect" (formula "21") (term "0") (inst "selectSK=f_0_0:any")) + (rule "simplifySelectOfStore" (formula "1")) + (builtin "One Step Simplification" (formula "1")) + (rule "castDel" (formula "1") (term "1,0")) + (rule "eqSymm" (formula "22")) + (rule "eqSymm" (formula "1") (term "0,0,0")) + (rule "eqSymm" (formula "1") (term "1,0,0")) + (rule "pullOutSelect" (formula "1") (term "2,0") (inst "selectSK=f_0_1:any")) + (rule "simplifySelectOfStore" (formula "1")) + (builtin "One Step Simplification" (formula "1")) + (rule "castDel" (formula "1") (term "1,0")) + (rule "eqSymm" (formula "1") (term "0,0,0")) + (rule "eqSymm" (formula "1") (term "1,0,0")) + (rule "pullOutSelect" (formula "1") (term "2,0") (inst "selectSK=f_0_2:any")) + (rule "simplifySelectOfStore" (formula "1")) + (builtin "One Step Simplification" (formula "1")) + (rule "castDel" (formula "1") (term "1,0")) + (rule "eqSymm" (formula "1") (term "0,0,0")) + (rule "eqSymm" (formula "1") (term "1,0,0")) + (rule "pullOutSelect" (formula "1") (term "2,0") (inst "selectSK=f_0_3:any")) + (rule "simplifySelectOfCreate" (formula "1")) + (rule "castDel" (formula "1") (term "1,0")) + (rule "eqSymm" (formula "1") (term "0,0,0,0")) + (rule "replace_known_right" (formula "1") (term "0,1,0,0,0") (ifseqformula "21")) + (builtin "One Step Simplification" (formula "1")) + (rule "pullOutSelect" (formula "1") (term "2,0") (inst "selectSK=f_0_4:any")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "25"))) + (rule "applyEqReverse" (formula "2") (term "2,0") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "commute_and" (formula "4") (term "0,0")) + (rule "commute_and" (formula "3") (term "0,0")) + (rule "commute_and" (formula "2") (term "0,0")) + (rule "commute_and" (formula "1") (term "0,0")) + (rule "ifthenelse_split" (formula "1") (term "0")) + (branch "f_0 = java.lang.Object::#$created & o_0 = r_3 TRUE" + (rule "andLeft" (formula "1")) + (rule "applyEqReverse" (formula "4") (term "2,0") (ifseqformula "3")) + (rule "hideAuxiliaryEq" (formula "3")) + (rule "replace_known_left" (formula "5") (term "1,0,0") (ifseqformula "2")) + (builtin "One Step Simplification" (formula "5")) + (rule "replace_known_left" (formula "4") (term "1,0,0") (ifseqformula "2")) + (builtin "One Step Simplification" (formula "4")) + (rule "replace_known_left" (formula "3") (term "1,0,0") (ifseqformula "2")) + (builtin "One Step Simplification" (formula "3")) + (rule "applyEq" (formula "25") (term "0,0,0") (ifseqformula "2")) + (rule "replace_known_right" (formula "25") (term "0,0") (ifseqformula "22")) + (builtin "One Step Simplification" (formula "25")) + (rule "notRight" (formula "25")) + (rule "applyEq" (formula "26") (term "1,0") (ifseqformula "3")) + (rule "applyEq" (formula "26") (term "2,0") (ifseqformula "2")) + (rule "narrowSelectType" (formula "26") (term "0") (ifseqformula "10")) + (rule "eqSymm" (formula "26")) + (rule "applyEq" (formula "6") (term "0,0,0") (ifseqformula "2")) + (builtin "One Step Simplification" (formula "6")) + (rule "applyEqReverse" (formula "26") (term "0") (ifseqformula "6")) + (rule "hideAuxiliaryEq" (formula "6")) + (rule "applyEq" (formula "5") (term "0,0,0") (ifseqformula "2")) + (builtin "One Step Simplification" (formula "5")) + (rule "applyEqReverse" (formula "25") (term "0") (ifseqformula "5")) + (rule "hideAuxiliaryEq" (formula "5")) + (rule "applyEq" (formula "4") (term "0,0,0") (ifseqformula "2")) + (builtin "One Step Simplification" (formula "4")) + (rule "applyEqReverse" (formula "24") (term "0") (ifseqformula "4")) + (rule "hideAuxiliaryEq" (formula "4")) + (rule "eqSymm" (formula "23")) + (rule "applyEq" (formula "1") (term "1,0") (ifseqformula "3")) + (rule "close" (formula "18") (ifseqformula "1")) + ) + (branch "f_0 = java.lang.Object::#$created & o_0 = r_3 FALSE" + (rule "applyEqReverse" (formula "2") (term "2,0") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "ifthenelse_split" (formula "1") (term "0")) + (branch "f_0 = java.lang.Throwable::#message & o_0 = r_3 TRUE" + (rule "andLeft" (formula "1")) + (rule "applyEqReverse" (formula "4") (term "2,0") (ifseqformula "3")) + (builtin "One Step Simplification" (formula "4") (ifInst "" (formula "2"))) + (rule "applyEqReverse" (formula "5") (term "2,0") (ifseqformula "4")) + (rule "hideAuxiliaryEq" (formula "3")) + (rule "hideAuxiliaryEq" (formula "3")) + (rule "replace_known_left" (formula "3") (term "1,0,0") (ifseqformula "2")) + (builtin "One Step Simplification" (formula "3")) + (rule "replace_known_left" (formula "18") (term "1") (ifseqformula "2")) + (builtin "One Step Simplification" (formula "18")) + (rule "applyEq" (formula "18") (term "0") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "18")) + (rule "false_right" (formula "18")) + (rule "applyEq" (formula "23") (term "0,0,0") (ifseqformula "2")) + (rule "replace_known_right" (formula "23") (term "0,0") (ifseqformula "20")) + (builtin "One Step Simplification" (formula "23")) + (rule "notRight" (formula "23")) + (rule "applyEq" (formula "24") (term "1,0") (ifseqformula "3")) + (rule "applyEq" (formula "24") (term "2,0") (ifseqformula "2")) + (rule "narrowSelectType" (formula "24") (term "0") (ifseqformula "8")) + (rule "eqSymm" (formula "24")) + (rule "applyEq" (formula "4") (term "0,0,0") (ifseqformula "2")) + (builtin "One Step Simplification" (formula "4")) + (rule "applyEqReverse" (formula "24") (term "0") (ifseqformula "4")) + (rule "hideAuxiliaryEq" (formula "4")) + (rule "eqSymm" (formula "23")) + (rule "applyEq" (formula "1") (term "1,0") (ifseqformula "3")) + (rule "close" (formula "18") (ifseqformula "1")) + ) + (branch "f_0 = java.lang.Throwable::#message & o_0 = r_3 FALSE" + (rule "applyEqReverse" (formula "2") (term "2,0") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "ifthenelse_split" (formula "1") (term "0")) + (branch "f_0 = java.lang.Throwable::#cause & o_0 = r_3 TRUE" + (rule "andLeft" (formula "1")) + (rule "applyEqReverse" (formula "4") (term "2,0") (ifseqformula "3")) + (rule "hideAuxiliaryEq" (formula "3")) + (rule "replace_known_left" (formula "3") (term "1,0,0") (ifseqformula "2")) + (builtin "One Step Simplification" (formula "3")) + (rule "replace_known_left" (formula "19") (term "1") (ifseqformula "2")) + (builtin "One Step Simplification" (formula "19")) + (rule "replace_known_left" (formula "18") (term "1") (ifseqformula "2")) + (builtin "One Step Simplification" (formula "18")) + (rule "applyEq" (formula "19") (term "0") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "19")) + (rule "false_right" (formula "19")) + (rule "applyEq" (formula "18") (term "0") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "18")) + (rule "false_right" (formula "18")) + (rule "applyEq" (formula "23") (term "0,0,0") (ifseqformula "2")) + (rule "replace_known_right" (formula "23") (term "0,0") (ifseqformula "20")) + (builtin "One Step Simplification" (formula "23")) + (rule "notRight" (formula "23")) + (rule "applyEq" (formula "24") (term "1,0") (ifseqformula "3")) + (rule "applyEq" (formula "24") (term "2,0") (ifseqformula "2")) + (rule "narrowSelectType" (formula "24") (term "0") (ifseqformula "8")) + (rule "eqSymm" (formula "24")) + (rule "applyEq" (formula "4") (term "0,0,0") (ifseqformula "2")) + (builtin "One Step Simplification" (formula "4")) + (rule "applyEqReverse" (formula "24") (term "0") (ifseqformula "4")) + (rule "hideAuxiliaryEq" (formula "4")) + (rule "eqSymm" (formula "23")) + (rule "applyEq" (formula "1") (term "1,0") (ifseqformula "3")) + (rule "close" (formula "18") (ifseqformula "1")) + ) + (branch "f_0 = java.lang.Throwable::#cause & o_0 = r_3 FALSE" + (rule "applyEqReverse" (formula "2") (term "2,0") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "ifthenelse_split" (formula "1") (term "0")) + (branch "f_0 = java.lang.Object::#$initialized & o_0 = r_3 TRUE" + (rule "andLeft" (formula "1")) + (rule "applyEqReverse" (formula "27") (term "1") (ifseqformula "3")) + (rule "hideAuxiliaryEq" (formula "3")) + (rule "replace_known_left" (formula "19") (term "1") (ifseqformula "2")) + (builtin "One Step Simplification" (formula "19")) + (rule "replace_known_left" (formula "17") (term "1") (ifseqformula "2")) + (builtin "One Step Simplification" (formula "17")) + (rule "replace_known_left" (formula "18") (term "1") (ifseqformula "2")) + (builtin "One Step Simplification" (formula "18")) + (rule "applyEq" (formula "19") (term "0") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "19")) + (rule "false_right" (formula "19")) + (rule "applyEq" (formula "17") (term "0") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "17")) + (rule "false_right" (formula "17")) + (rule "applyEq" (formula "17") (term "0") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "17")) + (rule "false_right" (formula "17")) + (rule "applyEq" (formula "22") (term "0,0,0") (ifseqformula "2")) + (rule "replace_known_right" (formula "22") (term "0,0") (ifseqformula "19")) + (builtin "One Step Simplification" (formula "22")) + (rule "notRight" (formula "22")) + (rule "applyEq" (formula "23") (term "1,0") (ifseqformula "3")) + (rule "applyEq" (formula "23") (term "2,0") (ifseqformula "2")) + (rule "narrowSelectType" (formula "23") (term "0") (ifseqformula "7")) + (rule "applyEq" (formula "1") (term "1,0") (ifseqformula "3")) + (rule "close" (formula "18") (ifseqformula "1")) + ) + (branch "f_0 = java.lang.Object::#$initialized & o_0 = r_3 FALSE" + (rule "close" (formula "26") (ifseqformula "1")) + ) + ) + ) + ) + ) + (branch "if r instanceof java.lang.Throwable false" + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "19"))) + (rule "closeFalse" (formula "1")) + ) + ) + ) + (branch "Null Reference (r_1 = null)" + (builtin "One Step Simplification" (formula "22")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "19"))) + (rule "close" (formula "22") (ifseqformula "1")) + ) + ) +) +(branch "Null Reference (_a = null)" + (builtin "One Step Simplification" (formula "11")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "10"))) + (rule "close" (formula "11") (ifseqformula "1")) +) +) +} diff --git a/key.ui/examples/heap/FM2024Tutorial/BinarySearch/BinSearch_binSearch_normal.key b/key.ui/examples/heap/FM2024Tutorial/BinarySearch/BinSearch_binSearch_normal.key new file mode 100644 index 00000000000..f2b8e76401b --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/BinarySearch/BinSearch_binSearch_normal.key @@ -0,0 +1,88 @@ +\profile "Java Profile"; + +\settings { + "Choice" : { + "JavaCard" : "JavaCard:off", + "Strings" : "Strings:on", + "assertions" : "assertions:safe", + "bigint" : "bigint:on", + "finalFields" : "finalFields:immutable", + "floatRules" : "floatRules:strictfpOnly", + "initialisation" : "initialisation:disableStaticInitialisation", + "intRules" : "intRules:arithmeticSemanticsIgnoringOF", + "integerSimplificationRules" : "integerSimplificationRules:full", + "javaLoopTreatment" : "javaLoopTreatment:efficient", + "mergeGenerateIsWeakeningGoal" : "mergeGenerateIsWeakeningGoal:off", + "methodExpansion" : "methodExpansion:modularOnly", + "modelFields" : "modelFields:treatAsAxiom", + "moreSeqRules" : "moreSeqRules:off", + "permissions" : "permissions:off", + "programRules" : "programRules:Java", + "reach" : "reach:on", + "runtimeExceptions" : "runtimeExceptions:ban", + "sequences" : "sequences:on", + "soundDefaultContracts" : "soundDefaultContracts:on", + "wdChecks" : "wdChecks:off", + "wdOperator" : "wdOperator:L" + }, + "Labels" : { + "UseOriginLabels" : true + }, + "NewSMT" : { + "Axiomatisations" : "false", + "Presburger" : "false", + "sqrtSMTTranslation" : "SMT" + }, + "SMTSettings" : { + "SelectedTaclets" : [ + + ], + "UseBuiltUniqueness" : false, + "explicitTypeHierarchy" : false, + "instantiateHierarchyAssumptions" : true, + "integersMaximum" : 2147483645, + "integersMinimum" : -2147483645, + "invariantForall" : false, + "maxGenericSorts" : 2, + "useConstantsForBigOrSmallIntegers" : true, + "useUninterpretedMultiplication" : true + }, + "Strategy" : { + "ActiveStrategy" : "JavaCardDLStrategy", + "MaximumNumberOfAutomaticApplications" : 10000, + "Timeout" : -1, + "options" : { + "AUTO_INDUCTION_OPTIONS_KEY" : "AUTO_INDUCTION_OFF", + "BLOCK_OPTIONS_KEY" : "BLOCK_CONTRACT_INTERNAL", + "CLASS_AXIOM_OPTIONS_KEY" : "CLASS_AXIOM_DELAYED", + "DEP_OPTIONS_KEY" : "DEP_ON", + "LOOP_OPTIONS_KEY" : "LOOP_INVARIANT", + "METHOD_OPTIONS_KEY" : "METHOD_CONTRACT", + "MPS_OPTIONS_KEY" : "MPS_MERGE", + "NON_LIN_ARITH_OPTIONS_KEY" : "NON_LIN_ARITH_DEF_OPS", + "OSS_OPTIONS_KEY" : "OSS_ON", + "QUANTIFIERS_OPTIONS_KEY" : "QUANTIFIERS_NON_SPLITTING_WITH_PROGS", + "QUERYAXIOM_OPTIONS_KEY" : "QUERYAXIOM_OFF", + "QUERY_NEW_OPTIONS_KEY" : "QUERY_OFF", + "SPLITTING_OPTIONS_KEY" : "SPLITTING_DELAYED", + "STOPMODE_OPTIONS_KEY" : "STOPMODE_DEFAULT", + "SYMBOLIC_EXECUTION_ALIAS_CHECK_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_ALIAS_CHECK_NEVER", + "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OFF", + "USER_TACLETS_OPTIONS_KEY1" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY2" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY3" : "USER_TACLETS_OFF", + "VBT_PHASE" : "VBT_SYM_EX" + } + } +} + + +\javaSource "src"; + +\proofObligation +// +{ + "class" : "de.uka.ilkd.key.proof.init.FunctionalOperationContractPO", + "contract" : "BinSearch[BinSearch::binSearch([I,int)].JML normal_behavior operation contract.0", + "name" : "BinSearch[BinSearch::binSearch([I,int)].JML normal_behavior operation contract.0" +} diff --git a/key.ui/examples/heap/FM2024Tutorial/BinarySearch/BinSearch_binSearch_normal.key.proof b/key.ui/examples/heap/FM2024Tutorial/BinarySearch/BinSearch_binSearch_normal.key.proof new file mode 100644 index 00000000000..3ecf0688e64 --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/BinarySearch/BinSearch_binSearch_normal.key.proof @@ -0,0 +1,2644 @@ +\profile "Java Profile"; + +\settings { + "Choice" : { + "JavaCard" : "JavaCard:off", + "Strings" : "Strings:on", + "assertions" : "assertions:safe", + "bigint" : "bigint:on", + "finalFields" : "finalFields:immutable", + "floatRules" : "floatRules:strictfpOnly", + "initialisation" : "initialisation:disableStaticInitialisation", + "intRules" : "intRules:arithmeticSemanticsIgnoringOF", + "integerSimplificationRules" : "integerSimplificationRules:full", + "javaLoopTreatment" : "javaLoopTreatment:efficient", + "mergeGenerateIsWeakeningGoal" : "mergeGenerateIsWeakeningGoal:off", + "methodExpansion" : "methodExpansion:modularOnly", + "modelFields" : "modelFields:treatAsAxiom", + "moreSeqRules" : "moreSeqRules:off", + "permissions" : "permissions:off", + "programRules" : "programRules:Java", + "reach" : "reach:on", + "runtimeExceptions" : "runtimeExceptions:ban", + "sequences" : "sequences:on", + "soundDefaultContracts" : "soundDefaultContracts:on", + "wdChecks" : "wdChecks:off", + "wdOperator" : "wdOperator:L" + }, + "Labels" : { + "UseOriginLabels" : true + }, + "NewSMT" : { + "Axiomatisations" : "false", + "Presburger" : "false", + "sqrtSMTTranslation" : "SMT" + }, + "SMTSettings" : { + "SelectedTaclets" : [ + + ], + "UseBuiltUniqueness" : false, + "explicitTypeHierarchy" : false, + "instantiateHierarchyAssumptions" : true, + "integersMaximum" : 2147483645, + "integersMinimum" : -2147483645, + "invariantForall" : false, + "maxGenericSorts" : 2, + "useConstantsForBigOrSmallIntegers" : true, + "useUninterpretedMultiplication" : true + }, + "Strategy" : { + "ActiveStrategy" : "Modular JavaDL Strategy", + "MaximumNumberOfAutomaticApplications" : 10000, + "Timeout" : -1, + "options" : { + "AUTO_INDUCTION_OPTIONS_KEY" : "AUTO_INDUCTION_OFF", + "BLOCK_OPTIONS_KEY" : "BLOCK_CONTRACT_INTERNAL", + "CLASS_AXIOM_OPTIONS_KEY" : "CLASS_AXIOM_DELAYED", + "DEP_OPTIONS_KEY" : "DEP_ON", + "LOOP_OPTIONS_KEY" : "LOOP_INVARIANT", + "METHOD_OPTIONS_KEY" : "METHOD_CONTRACT", + "MPS_OPTIONS_KEY" : "MPS_MERGE", + "NON_LIN_ARITH_OPTIONS_KEY" : "NON_LIN_ARITH_DEF_OPS", + "OSS_OPTIONS_KEY" : "OSS_ON", + "QUANTIFIERS_OPTIONS_KEY" : "QUANTIFIERS_NON_SPLITTING_WITH_PROGS", + "QUERYAXIOM_OPTIONS_KEY" : "QUERYAXIOM_OFF", + "QUERY_NEW_OPTIONS_KEY" : "QUERY_OFF", + "SPLITTING_OPTIONS_KEY" : "SPLITTING_DELAYED", + "STOPMODE_OPTIONS_KEY" : "STOPMODE_DEFAULT", + "SYMBOLIC_EXECUTION_ALIAS_CHECK_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_ALIAS_CHECK_NEVER", + "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OPTIONS_KEY" : "SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OFF", + "USER_TACLETS_OPTIONS_KEY1" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY2" : "USER_TACLETS_OFF", + "USER_TACLETS_OPTIONS_KEY3" : "USER_TACLETS_OFF", + "VBT_PHASE" : "VBT_SYM_EX" + } + } +} + + +\bootclasspath "../../../../../key.core/build/resources/main/de/uka/ilkd/key/java/JavaRedux"; +\javaSource "src"; + +\proofObligation +// +{ + "class" : "de.uka.ilkd.key.proof.init.FunctionalOperationContractPO", + "contract" : "BinSearch[BinSearch::binSearch([I,int)].JML normal_behavior operation contract.0", + "name" : "BinSearch[BinSearch::binSearch([I,int)].JML normal_behavior operation contract.0" +} + +\proof { +(keyLog "0" (keyUser "daniel" ) (keyVersion "ba42c20cd404dc00d6aaa5695542be46eee5b0b6")) + +(autoModeTime "1744") + +(branch "dummy ID" + (builtin "One Step Simplification" (formula "1")) +(rule "impRight" (formula "1")) +(rule "andLeft" (formula "1")) +(rule "andLeft" (formula "1")) +(rule "andLeft" (formula "3")) +(rule "andLeft" (formula "1")) +(rule "andLeft" (formula "5")) +(rule "andLeft" (formula "1")) +(rule "andLeft" (formula "7")) +(rule "andLeft" (formula "1")) +(rule "notLeft" (formula "9")) +(rule "andLeft" (formula "1")) +(rule "notLeft" (formula "2")) +(rule "exLeft" (formula "6") (inst "sk=idx_0:int")) +(rule "andLeft" (formula "6")) +(rule "andLeft" (formula "6")) +(rule "eqSymm" (formula "13") (term "1,0,0,1,0,1")) +(rule "replace_known_right" (formula "4") (term "0") (ifseqformula "12")) + (builtin "One Step Simplification" (formula "4")) +(rule "inEqSimp_ltToLeq" (formula "13") (term "1,0,0,0,0,1")) +(rule "polySimp_mulComm0" (formula "13") (term "1,0,0,1,0,0,0,0,1")) +(rule "polySimp_addComm1" (formula "13") (term "0,1,0,0,0,0,1")) +(rule "inEqSimp_ltToLeq" (formula "9") (term "1,0,0,0,0")) +(rule "polySimp_mulComm0" (formula "9") (term "1,0,0,1,0,0,0,0")) +(rule "polySimp_addComm1" (formula "9") (term "0,1,0,0,0,0")) +(rule "inEqSimp_ltToLeq" (formula "9") (term "1,0,0,0")) +(rule "polySimp_mulComm0" (formula "9") (term "1,0,0,1,0,0,0")) +(rule "inEqSimp_ltToLeq" (formula "7")) +(rule "polySimp_mulComm0" (formula "7") (term "1,0,0")) +(rule "polySimp_addComm1" (formula "7") (term "0")) +(rule "inEqSimp_commuteLeq" (formula "13") (term "0,0,0,0,0,1")) +(rule "inEqSimp_commuteLeq" (formula "9") (term "0,0,0,0,0")) +(rule "inEqSimp_commuteLeq" (formula "9") (term "1,0,0")) +(rule "inEqSimp_commuteLeq" (formula "6")) +(rule "assignment" (formula "13") (term "1")) + (builtin "One Step Simplification" (formula "13")) +(rule "inEqSimp_sepNegMonomial0" (formula "9") (term "1,0,0,0,0")) +(rule "polySimp_mulLiterals" (formula "9") (term "0,1,0,0,0,0")) +(rule "polySimp_elimOne" (formula "9") (term "0,1,0,0,0,0")) +(rule "inEqSimp_sepPosMonomial0" (formula "9") (term "1,0,0,0")) +(rule "polySimp_mulComm0" (formula "9") (term "1,1,0,0,0")) +(rule "polySimp_rightDist" (formula "9") (term "1,1,0,0,0")) +(rule "mul_literals" (formula "9") (term "0,1,1,0,0,0")) +(rule "polySimp_mulLiterals" (formula "9") (term "1,1,1,0,0,0")) +(rule "polySimp_elimOne" (formula "9") (term "1,1,1,0,0,0")) +(rule "inEqSimp_sepNegMonomial0" (formula "7")) +(rule "polySimp_mulLiterals" (formula "7") (term "0")) +(rule "polySimp_elimOne" (formula "7") (term "0")) +(rule "inEqSimp_sepNegMonomial0" (formula "13") (term "1,0,0,0,0,1")) +(rule "polySimp_mulLiterals" (formula "13") (term "0,1,0,0,0,0,1")) +(rule "polySimp_elimOne" (formula "13") (term "0,1,0,0,0,0,1")) +(rule "nnf_imp2or" (formula "9") (term "0,0")) +(rule "nnf_notAnd" (formula "9") (term "0,0,0")) +(rule "inEqSimp_notLeq" (formula "9") (term "1,0,0,0")) +(rule "polySimp_rightDist" (formula "9") (term "1,0,0,1,0,0,0")) +(rule "mul_literals" (formula "9") (term "0,1,0,0,1,0,0,0")) +(rule "polySimp_addAssoc" (formula "9") (term "0,0,1,0,0,0")) +(rule "add_literals" (formula "9") (term "0,0,0,1,0,0,0")) +(rule "add_zero_left" (formula "9") (term "0,0,1,0,0,0")) +(rule "inEqSimp_sepPosMonomial1" (formula "9") (term "1,0,0,0")) +(rule "polySimp_mulLiterals" (formula "9") (term "1,1,0,0,0")) +(rule "polySimp_elimOne" (formula "9") (term "1,1,0,0,0")) +(rule "nnf_notAnd" (formula "9") (term "0,0,0,0")) +(rule "inEqSimp_notGeq" (formula "9") (term "0,0,0,0,0")) +(rule "mul_literals" (formula "9") (term "1,0,0,0,0,0,0,0")) +(rule "add_literals" (formula "9") (term "0,0,0,0,0,0,0")) +(rule "inEqSimp_sepPosMonomial0" (formula "9") (term "0,0,0,0,0")) +(rule "mul_literals" (formula "9") (term "1,0,0,0,0,0")) +(rule "inEqSimp_notGeq" (formula "9") (term "1,0,0,0,0")) +(rule "polySimp_rightDist" (formula "9") (term "1,0,0,1,0,0,0,0")) +(rule "mul_literals" (formula "9") (term "0,1,0,0,1,0,0,0,0")) +(rule "polySimp_addAssoc" (formula "9") (term "0,0,1,0,0,0,0")) +(rule "add_literals" (formula "9") (term "0,0,0,1,0,0,0,0")) +(rule "add_zero_left" (formula "9") (term "0,0,1,0,0,0,0")) +(rule "inEqSimp_sepPosMonomial0" (formula "9") (term "1,0,0,0,0")) +(rule "polySimp_mulLiterals" (formula "9") (term "1,1,0,0,0,0")) +(rule "polySimp_elimOne" (formula "9") (term "1,1,0,0,0,0")) +(rule "commute_or_2" (formula "9") (term "0,0,0")) +(rule "methodBodyExpand" (formula "13") (term "1") (newnames "heapBefore_binSearch,savedHeapBefore_binSearch,_aBefore_binSearch,_vBefore_binSearch")) + (builtin "One Step Simplification" (formula "13")) +(rule "variableDeclarationAssign" (formula "13") (term "1")) +(rule "variableDeclaration" (formula "13") (term "1") (newnames "low")) +(rule "assignment" (formula "13") (term "1")) + (builtin "One Step Simplification" (formula "13")) +(rule "variableDeclarationAssign" (formula "13") (term "1")) +(rule "variableDeclaration" (formula "13") (term "1") (newnames "up")) +(rule "assignment_read_length" (formula "13")) +(branch "Normal Execution (_a != null)" + (builtin "One Step Simplification" (formula "13")) + (builtin "Loop Invariant" (formula "13") (newnames "variant,b,heapBefore_LOOP,lowBefore_LOOP,upBefore_LOOP,low_0,up_0,heap_After_LOOP,anon_heap_LOOP,o,f")) + (branch "Invariant Initially Valid" + (builtin "One Step Simplification" (formula "13") (ifInst "" (formula "1"))) + (rule "leq_literals" (formula "13") (term "0,0,0,0")) + (builtin "One Step Simplification" (formula "13")) + (rule "inEqSimp_ltToLeq" (formula "13") (term "1,0,0,1,0")) + (rule "mul_literals" (formula "13") (term "1,0,0,1,0,0,1,0")) + (rule "add_literals" (formula "13") (term "0,0,1,0,0,1,0")) + (rule "inEqSimp_ltToLeq" (formula "13") (term "1,0,0,1")) + (rule "polySimp_mulComm0" (formula "13") (term "1,0,0,1,0,0,1")) + (rule "inEqSimp_commuteLeq" (formula "13") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "13") (term "0,0,0,1,0")) + (rule "inEqSimp_commuteLeq" (formula "13") (term "0,0,0,1")) + (rule "inEqSimp_homoInEq0" (formula "13") (term "1,0,0")) + (rule "polySimp_pullOutFactor1" (formula "13") (term "0,1,0,0")) + (rule "add_literals" (formula "13") (term "1,0,1,0,0")) + (rule "times_zero_1" (formula "13") (term "0,1,0,0")) + (rule "qeq_literals" (formula "13") (term "1,0,0")) + (builtin "One Step Simplification" (formula "13")) + (rule "inEqSimp_sepPosMonomial0" (formula "13") (term "1,0,0,1,0")) + (rule "mul_literals" (formula "13") (term "1,1,0,0,1,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "13") (term "1,0,0,1")) + (rule "polySimp_mulComm0" (formula "13") (term "1,1,0,0,1")) + (rule "polySimp_rightDist" (formula "13") (term "1,1,0,0,1")) + (rule "mul_literals" (formula "13") (term "0,1,1,0,0,1")) + (rule "polySimp_mulLiterals" (formula "13") (term "1,1,1,0,0,1")) + (rule "polySimp_elimOne" (formula "13") (term "1,1,1,0,0,1")) + (rule "nnf_imp2or" (formula "13") (term "0,1")) + (rule "nnf_imp2or" (formula "13") (term "0,1,0")) + (rule "nnf_notAnd" (formula "13") (term "0,0,1")) + (rule "inEqSimp_notGeq" (formula "13") (term "0,0,0,1")) + (rule "polySimp_mulComm0" (formula "13") (term "1,0,0,0,0,0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "13") (term "0,0,0,1")) + (rule "polySimp_mulComm0" (formula "13") (term "1,0,0,0,1")) + (rule "polySimp_rightDist" (formula "13") (term "1,0,0,0,1")) + (rule "mul_literals" (formula "13") (term "0,1,0,0,0,1")) + (rule "polySimp_mulLiterals" (formula "13") (term "1,1,0,0,0,1")) + (rule "polySimp_elimOne" (formula "13") (term "1,1,0,0,0,1")) + (builtin "One Step Simplification" (formula "13")) + (rule "nnf_notAnd" (formula "13") (term "0,0,1")) + (rule "inEqSimp_notGeq" (formula "13") (term "0,0,0,1")) + (rule "mul_literals" (formula "13") (term "1,0,0,0,0,0,1")) + (rule "add_literals" (formula "13") (term "0,0,0,0,0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "13") (term "0,0,0,1")) + (rule "mul_literals" (formula "13") (term "1,0,0,0,1")) + (builtin "One Step Simplification" (formula "13")) + (rule "inEqSimp_geqRight" (formula "13")) + (rule "mul_literals" (formula "1") (term "1,0,0")) + (rule "add_literals" (formula "1") (term "0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1")) + (rule "mul_literals" (formula "1") (term "1")) + (rule "inEqSimp_exactShadow3" (formula "8") (ifseqformula "1")) + (rule "polySimp_rightDist" (formula "8") (term "0,0")) + (rule "mul_literals" (formula "8") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "8") (term "0")) + (rule "add_literals" (formula "8") (term "0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "8")) + (rule "polySimp_mulLiterals" (formula "8") (term "0")) + (rule "polySimp_elimOne" (formula "8") (term "0")) + (rule "inEqSimp_contradInEq0" (formula "7") (ifseqformula "8")) + (rule "qeq_literals" (formula "7") (term "0")) + (builtin "One Step Simplification" (formula "7")) + (rule "closeFalse" (formula "7")) + ) + (branch "Body Preserves Invariant" + (builtin "One Step Simplification" (formula "15")) + (builtin "One Step Simplification" (formula "12")) + (rule "impRight" (formula "15")) + (rule "andLeft" (formula "13")) + (rule "andLeft" (formula "13")) + (rule "andLeft" (formula "13")) + (rule "andLeft" (formula "13")) + (rule "eqSymm" (formula "20") (term "1,0,0,1,0,1,1,1,0,1")) + (rule "polySimp_elimSub" (formula "20") (term "0,1,1,1,0")) + (rule "polySimp_elimSub" (formula "20") (term "0,1,1,1,1,0,1")) + (rule "polySimp_addComm0" (formula "20") (term "0,1,1,1,0")) + (rule "polySimp_addComm0" (formula "20") (term "0,1,1,1,1,0,1")) + (rule "inEqSimp_ltToLeq" (formula "20") (term "1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "polySimp_mulComm0" (formula "20") (term "1,0,0,1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "inEqSimp_ltToLeq" (formula "20") (term "1,0,0,1,0,0,1,1,1,0,1")) + (rule "polySimp_mulComm0" (formula "20") (term "1,0,0,1,0,0,1,0,0,1,1,1,0,1")) + (rule "inEqSimp_ltToLeq" (formula "17") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,0,1,0,0")) + (rule "inEqSimp_ltToLeq" (formula "16") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "16") (term "1,0,0,1,0,0")) + (rule "inEqSimp_commuteLeq" (formula "20") (term "0,0,0,0,0,0,1,1,1,0,1")) + (rule "inEqSimp_commuteLeq" (formula "20") (term "1,0,0,0,0,0,1,1,1,0,1")) + (rule "inEqSimp_commuteLeq" (formula "20") (term "1,0,0,0,0,1,1,1,0,1")) + (rule "inEqSimp_commuteLeq" (formula "20") (term "0,0,0,1,0,0,0,1,1,1,0,1")) + (rule "inEqSimp_commuteLeq" (formula "20") (term "0,0,0,1,0,0,1,1,1,0,1")) + (rule "inEqSimp_commuteLeq" (formula "17") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "16") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "15")) + (rule "inEqSimp_commuteLeq" (formula "13")) + (rule "inEqSimp_commuteLeq" (formula "14")) + (rule "variableDeclarationAssign" (formula "1") (term "1")) + (rule "variableDeclarationAssign" (formula "20") (term "1")) + (rule "variableDeclaration" (formula "1") (term "1") (newnames "b_1")) + (rule "variableDeclaration" (formula "20") (term "1") (newnames "rtrn")) + (rule "assignment" (formula "20") (term "1")) + (builtin "One Step Simplification" (formula "20")) + (rule "variableDeclaration" (formula "20") (term "1") (newnames "returnExpr")) + (rule "variableDeclarationAssign" (formula "20") (term "1")) + (rule "variableDeclaration" (formula "20") (term "1") (newnames "exc_1")) + (rule "assignment" (formula "20") (term "1")) + (builtin "One Step Simplification" (formula "20")) + (rule "variableDeclaration" (formula "20") (term "1") (newnames "thrownExc")) + (rule "blockThrow" (formula "20") (term "1,0,0,1")) + (rule "blockReturn" (formula "20") (term "1,0,1,0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "17") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "17") (term "1,1,0,0")) + (rule "polySimp_rightDist" (formula "17") (term "1,1,0,0")) + (rule "mul_literals" (formula "17") (term "0,1,1,0,0")) + (rule "polySimp_mulLiterals" (formula "17") (term "1,1,1,0,0")) + (rule "polySimp_elimOne" (formula "17") (term "1,1,1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "16") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "16") (term "1,1,0,0")) + (rule "polySimp_rightDist" (formula "16") (term "1,1,0,0")) + (rule "mul_literals" (formula "16") (term "0,1,1,0,0")) + (rule "polySimp_mulLiterals" (formula "16") (term "1,1,1,0,0")) + (rule "polySimp_elimOne" (formula "16") (term "1,1,1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "20") (term "1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "polySimp_mulComm0" (formula "20") (term "1,1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "polySimp_rightDist" (formula "20") (term "1,1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "mul_literals" (formula "20") (term "0,1,1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "polySimp_mulLiterals" (formula "20") (term "1,1,1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "polySimp_elimOne" (formula "20") (term "1,1,1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "20") (term "1,0,0,1,0,0,1,1,1,0,1")) + (rule "polySimp_mulComm0" (formula "20") (term "1,1,0,0,1,0,0,1,1,1,0,1")) + (rule "polySimp_rightDist" (formula "20") (term "1,1,0,0,1,0,0,1,1,1,0,1")) + (rule "mul_literals" (formula "20") (term "0,1,1,0,0,1,0,0,1,1,1,0,1")) + (rule "polySimp_mulLiterals" (formula "20") (term "1,1,1,0,0,1,0,0,1,1,1,0,1")) + (rule "polySimp_elimOne" (formula "20") (term "1,1,1,0,0,1,0,0,1,1,1,0,1")) + (rule "boxToDiamond" (formula "1") (term "1")) + (builtin "One Step Simplification" (formula "1")) + (rule "notLeft" (formula "1")) + (rule "nnf_imp2or" (formula "16") (term "0")) + (rule "nnf_imp2or" (formula "15") (term "0")) + (rule "nnf_notAnd" (formula "16") (term "0,0")) + (rule "inEqSimp_notGeq" (formula "16") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "16") (term "1,0,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "16") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "16") (term "1,0,0,0")) + (rule "polySimp_rightDist" (formula "16") (term "1,0,0,0")) + (rule "mul_literals" (formula "16") (term "0,1,0,0,0")) + (rule "polySimp_mulLiterals" (formula "16") (term "1,1,0,0,0")) + (rule "polySimp_elimOne" (formula "16") (term "1,1,0,0,0")) + (rule "inEqSimp_notLeq" (formula "16") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "16") (term "1,0,0,1,0,0")) + (rule "mul_literals" (formula "16") (term "0,1,0,0,1,0,0")) + (rule "polySimp_addAssoc" (formula "16") (term "0,0,1,0,0")) + (rule "add_literals" (formula "16") (term "0,0,0,1,0,0")) + (rule "add_zero_left" (formula "16") (term "0,0,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "16") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "16") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "16") (term "1,1,0,0")) + (rule "nnf_notAnd" (formula "15") (term "0,0")) + (rule "inEqSimp_notGeq" (formula "15") (term "0,0,0")) + (rule "mul_literals" (formula "15") (term "1,0,0,0,0,0")) + (rule "add_literals" (formula "15") (term "0,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "15") (term "0,0,0")) + (rule "mul_literals" (formula "15") (term "1,0,0,0")) + (rule "inEqSimp_notLeq" (formula "15") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "15") (term "1,0,0,1,0,0")) + (rule "mul_literals" (formula "15") (term "0,1,0,0,1,0,0")) + (rule "polySimp_addAssoc" (formula "15") (term "0,0,1,0,0")) + (rule "add_literals" (formula "15") (term "0,0,0,1,0,0")) + (rule "add_zero_left" (formula "15") (term "0,0,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "15") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "15") (term "1,1,0,0")) + (rule "nnf_imp2or" (formula "20") (term "0,1,0,0,1,1,1,0,1")) + (rule "nnf_imp2or" (formula "20") (term "0,1,0,0,0,1,1,1,0,1")) + (rule "nnf_notAnd" (formula "20") (term "0,0,1,0,0,1,1,1,0,1")) + (rule "inEqSimp_notGeq" (formula "20") (term "0,0,0,1,0,0,1,1,1,0,1")) + (rule "polySimp_mulComm0" (formula "20") (term "1,0,0,0,0,0,1,0,0,1,1,1,0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "20") (term "0,0,0,1,0,0,1,1,1,0,1")) + (rule "polySimp_mulComm0" (formula "20") (term "1,0,0,0,1,0,0,1,1,1,0,1")) + (rule "polySimp_rightDist" (formula "20") (term "1,0,0,0,1,0,0,1,1,1,0,1")) + (rule "mul_literals" (formula "20") (term "0,1,0,0,0,1,0,0,1,1,1,0,1")) + (rule "polySimp_mulLiterals" (formula "20") (term "1,1,0,0,0,1,0,0,1,1,1,0,1")) + (rule "polySimp_elimOne" (formula "20") (term "1,1,0,0,0,1,0,0,1,1,1,0,1")) + (rule "inEqSimp_notLeq" (formula "20") (term "1,0,0,1,0,0,1,1,1,0,1")) + (rule "polySimp_rightDist" (formula "20") (term "1,0,0,1,0,0,1,0,0,1,1,1,0,1")) + (rule "mul_literals" (formula "20") (term "0,1,0,0,1,0,0,1,0,0,1,1,1,0,1")) + (rule "polySimp_addAssoc" (formula "20") (term "0,0,1,0,0,1,0,0,1,1,1,0,1")) + (rule "add_literals" (formula "20") (term "0,0,0,1,0,0,1,0,0,1,1,1,0,1")) + (rule "add_zero_left" (formula "20") (term "0,0,1,0,0,1,0,0,1,1,1,0,1")) + (rule "inEqSimp_sepPosMonomial1" (formula "20") (term "1,0,0,1,0,0,1,1,1,0,1")) + (rule "polySimp_mulLiterals" (formula "20") (term "1,1,0,0,1,0,0,1,1,1,0,1")) + (rule "polySimp_elimOne" (formula "20") (term "1,1,0,0,1,0,0,1,1,1,0,1")) + (rule "nnf_notAnd" (formula "20") (term "0,0,1,0,0,0,1,1,1,0,1")) + (rule "inEqSimp_notGeq" (formula "20") (term "0,0,0,1,0,0,0,1,1,1,0,1")) + (rule "mul_literals" (formula "20") (term "1,0,0,0,0,0,1,0,0,0,1,1,1,0,1")) + (rule "add_literals" (formula "20") (term "0,0,0,0,0,1,0,0,0,1,1,1,0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "20") (term "0,0,0,1,0,0,0,1,1,1,0,1")) + (rule "mul_literals" (formula "20") (term "1,0,0,0,1,0,0,0,1,1,1,0,1")) + (rule "inEqSimp_notLeq" (formula "20") (term "1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "polySimp_rightDist" (formula "20") (term "1,0,0,1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "mul_literals" (formula "20") (term "0,1,0,0,1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "polySimp_addAssoc" (formula "20") (term "0,0,1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "add_literals" (formula "20") (term "0,0,0,1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "add_zero_left" (formula "20") (term "0,0,1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "inEqSimp_sepPosMonomial1" (formula "20") (term "1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "polySimp_mulLiterals" (formula "20") (term "1,1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "polySimp_elimOne" (formula "20") (term "1,1,0,0,1,0,0,0,1,1,1,0,1")) + (rule "less_than_comparison_simple" (formula "17") (term "1")) + (builtin "One Step Simplification" (formula "17")) + (rule "inEqSimp_ltToLeq" (formula "17") (term "0,0,1,0")) + (rule "polySimp_mulComm0" (formula "17") (term "1,0,0,0,0,1,0")) + (rule "polySimp_addComm1" (formula "17") (term "0,0,0,1,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "17") (term "0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "17") (term "0,0,0,1,0")) + (rule "polySimp_elimOne" (formula "17") (term "0,0,0,1,0")) + (rule "methodCallEmpty" (formula "17") (term "1")) + (builtin "One Step Simplification" (formula "17")) + (rule "emptyModality" (formula "17") (term "1")) + (builtin "One Step Simplification" (formula "17")) + (rule "notRight" (formula "17")) + (rule "inEqSimp_subsumption1" (formula "14") (ifseqformula "1")) + (rule "inEqSimp_homoInEq0" (formula "14") (term "0")) + (rule "polySimp_pullOutFactor1b" (formula "14") (term "0,0")) + (rule "add_literals" (formula "14") (term "1,1,0,0")) + (rule "times_zero_1" (formula "14") (term "1,0,0")) + (rule "add_literals" (formula "14") (term "0,0")) + (rule "qeq_literals" (formula "14") (term "0")) + (builtin "One Step Simplification" (formula "14")) + (rule "true_left" (formula "14")) + (rule "arrayLengthIsAnInt" (formula "8") (term "0")) + (builtin "One Step Simplification" (formula "8")) + (rule "true_left" (formula "8")) + (rule "arrayLengthNotNegative" (formula "8") (term "0")) + (rule "ifUnfold" (formula "20") (term "1") (inst "#boolv=b_2")) + (rule "variableDeclaration" (formula "20") (term "1") (newnames "b_2")) + (rule "less_than_comparison_simple" (formula "20") (term "1")) + (builtin "One Step Simplification" (formula "20")) + (rule "inEqSimp_ltToLeq" (formula "20") (term "0,0,1,0")) + (rule "polySimp_mulComm0" (formula "20") (term "1,0,0,0,0,1,0")) + (rule "polySimp_addComm1" (formula "20") (term "0,0,0,1,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "20") (term "0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "20") (term "0,0,0,1,0")) + (rule "polySimp_elimOne" (formula "20") (term "0,0,0,1,0")) + (rule "replace_known_left" (formula "20") (term "0,0,1,0") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "20")) + (rule "ifSplit" (formula "20")) + (branch "if b_2 true" + (builtin "One Step Simplification" (formula "21")) + (builtin "One Step Simplification" (formula "1")) + (rule "true_left" (formula "1")) + (rule "variableDeclarationAssign" (formula "20") (term "1")) + (rule "variableDeclaration" (formula "20") (term "1") (newnames "mid")) + (rule "compound_addition_2" (formula "20") (term "1") (inst "#v0=i") (inst "#v1=i_1")) + (rule "variableDeclarationAssign" (formula "20") (term "1")) + (rule "variableDeclaration" (formula "20") (term "1") (newnames "i")) + (rule "assignment" (formula "20") (term "1")) + (builtin "One Step Simplification" (formula "20")) + (rule "variableDeclarationAssign" (formula "20") (term "1")) + (rule "variableDeclaration" (formula "20") (term "1") (newnames "i_1")) + (rule "remove_parentheses_right" (formula "20") (term "1")) + (rule "compound_division_1" (formula "20") (term "1") (inst "#v=i_2")) + (rule "variableDeclarationAssign" (formula "20") (term "1")) + (rule "variableDeclaration" (formula "20") (term "1") (newnames "i_2")) + (rule "remove_parentheses_right" (formula "20") (term "1")) + (rule "assignmentSubtractionInt" (formula "20") (term "1")) + (builtin "One Step Simplification" (formula "20")) + (rule "translateJavaSubInt" (formula "20") (term "0,1,0")) + (rule "polySimp_elimSub" (formula "20") (term "0,1,0")) + (rule "polySimp_addComm0" (formula "20") (term "0,1,0")) + (rule "assignmentDivisionInt" (formula "20")) + (branch + (builtin "One Step Simplification" (formula "20")) + (rule "translateJavaDivInt" (formula "20") (term "0,1,0")) + (rule "assignmentAdditionInt" (formula "20") (term "1")) + (builtin "One Step Simplification" (formula "20")) + (rule "translateJavaAddInt" (formula "20") (term "0,1,0")) + (rule "ifElseUnfold" (formula "20") (term "1") (inst "#boolv=b_3")) + (rule "variableDeclaration" (formula "20") (term "1") (newnames "b_3")) + (rule "compound_equality_comparison_2" (formula "20") (term "1") (inst "#v0=i_3") (inst "#v1=i_4")) + (rule "variableDeclarationAssign" (formula "20") (term "1")) + (rule "variableDeclaration" (formula "20") (term "1") (newnames "i_3")) + (rule "assignment" (formula "20") (term "1")) + (builtin "One Step Simplification" (formula "20")) + (rule "variableDeclarationAssign" (formula "20") (term "1")) + (rule "variableDeclaration" (formula "20") (term "1") (newnames "i_4")) + (rule "assignment_array2" (formula "20")) + (branch "Normal Execution (_a != null)" + (builtin "One Step Simplification" (formula "20")) + (rule "pullOutSelect" (formula "20") (term "0,1,0") (inst "selectSK=arr_0:int")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "20")) (ifInst "" (formula "6"))) + (rule "applyEqReverse" (formula "21") (term "0,1,0") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "equality_comparison_simple" (formula "20") (term "1")) + (builtin "One Step Simplification" (formula "20")) + (rule "eqSymm" (formula "20") (term "0,0,1,0")) + (rule "ifElseSplit" (formula "20")) + (branch "if b_3 true" + (builtin "One Step Simplification" (formula "21")) + (builtin "One Step Simplification" (formula "1")) + (rule "assignment" (formula "21") (term "1")) + (builtin "One Step Simplification" (formula "21")) + (rule "assignment" (formula "21") (term "1")) + (builtin "One Step Simplification" (formula "21")) + (rule "break" (formula "21") (term "1")) + (rule "blockEmpty" (formula "21") (term "1")) + (rule "tryEmpty" (formula "21") (term "1")) + (rule "methodCallEmpty" (formula "21") (term "1")) + (rule "emptyModality" (formula "21") (term "1")) + (builtin "One Step Simplification" (formula "21")) + (rule "methodCallReturn" (formula "21") (term "1")) + (rule "assignment" (formula "21") (term "1")) + (builtin "One Step Simplification" (formula "21")) + (rule "methodCallEmpty" (formula "21") (term "1")) + (rule "tryEmpty" (formula "21") (term "1")) + (rule "emptyModality" (formula "21") (term "1")) + (builtin "One Step Simplification" (formula "21")) + (rule "replaceKnownSelect_taclet00010_0" (formula "21") (term "0,0,1,0")) + (rule "replaceKnownAuxiliaryConstant_taclet00010_1" (formula "21") (term "0,0,1,0")) + (rule "eqSymm" (formula "21") (term "1,0,0,1")) + (rule "replace_known_left" (formula "21") (term "0,1,0") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "21")) + (rule "polySimp_addAssoc" (formula "21") (term "1,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "21") (term "0,0,0")) + (rule "Class_invariant_axiom_for_BinSearch" (formula "13") (ifseqformula "5")) + (rule "true_left" (formula "13")) + (rule "Class_invariant_axiom_for_BinSearch" (formula "20") (term "1,0") (ifseqformula "5")) + (builtin "One Step Simplification" (formula "20")) + (rule "jdiv_axiom" (formula "1") (term "1,0,2,0")) + (rule "eqSymm" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "0,0,2,0")) + (rule "polySimp_rightDist" (formula "1") (term "0,0,2,0")) + (rule "polySimp_mulAssoc" (formula "1") (term "0,0,0,2,0")) + (rule "polySimp_mulComm0" (formula "1") (term "0,0,0,0,2,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "0,0,0,2,0")) + (rule "polySimp_elimOne" (formula "1") (term "0,0,0,2,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "1") (term "1,0,0")) + (rule "inEqSimp_subsumption1" (formula "1") (term "0,0") (ifseqformula "3")) + (rule "inEqSimp_homoInEq0" (formula "1") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "1") (term "0,0,0,0")) + (rule "add_literals" (formula "1") (term "1,1,0,0,0,0")) + (rule "times_zero_1" (formula "1") (term "1,0,0,0,0")) + (rule "add_literals" (formula "1") (term "0,0,0,0")) + (rule "qeq_literals" (formula "1") (term "0,0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "eqSymm" (formula "1")) + (rule "applyEq" (formula "21") (term "0,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "21") (term "1,1,1,0") (ifseqformula "1")) + (rule "applyEq" (formula "2") (term "1,0,2,0") (ifseqformula "1")) + (rule "polyDiv_pullOut" (formula "21") (term "0,0,0") (inst "polyDivCoeff=mul(low_0, Z(neglit(1(#))))")) + (rule "equal_literals" (formula "21") (term "0,0,0,0")) + (builtin "One Step Simplification" (formula "21")) + (rule "polySimp_mulLiterals" (formula "21") (term "1,0,0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "21") (term "1,0,0,0,0,0")) + (rule "polySimp_addComm0" (formula "21") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "21") (term "0,1,0,0,0")) + (rule "polySimp_pullOutFactor0" (formula "21") (term "0,0,1,0,0,0")) + (rule "add_literals" (formula "21") (term "1,0,0,1,0,0,0")) + (rule "polySimp_elimOne" (formula "21") (term "0,0,1,0,0,0")) + (rule "inEqSimp_homoInEq1" (formula "21") (term "0,0")) + (rule "polySimp_mulComm0" (formula "21") (term "1,0,0,0")) + (rule "polySimp_rightDist" (formula "21") (term "1,0,0,0")) + (rule "polySimp_mulAssoc" (formula "21") (term "0,1,0,0,0")) + (rule "polySimp_mulComm0" (formula "21") (term "0,0,1,0,0,0")) + (rule "polySimp_mulLiterals" (formula "21") (term "0,1,0,0,0")) + (rule "polySimp_elimOne" (formula "21") (term "0,1,0,0,0")) + (rule "polySimp_addAssoc" (formula "21") (term "0,0,0")) + (rule "polySimp_pullOutFactor2" (formula "21") (term "0,0,0,0")) + (rule "add_literals" (formula "21") (term "1,0,0,0,0")) + (rule "times_zero_1" (formula "21") (term "0,0,0,0")) + (rule "add_zero_left" (formula "21") (term "0,0,0")) + (rule "inEqSimp_invertInEq0" (formula "21") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "21") (term "0,0,0")) + (rule "mul_literals" (formula "21") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "21") (term "0,0,0")) + (rule "polyDiv_pullOut" (formula "1") (term "1") (inst "polyDivCoeff=mul(low_0, Z(neglit(1(#))))")) + (rule "equal_literals" (formula "1") (term "0,1")) + (builtin "One Step Simplification" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,0,0,1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,0,0,1")) + (rule "polySimp_addComm0" (formula "1") (term "1")) + (rule "polySimp_addComm1" (formula "1") (term "0,1,1")) + (rule "polySimp_pullOutFactor0" (formula "1") (term "0,0,1,1")) + (rule "add_literals" (formula "1") (term "1,0,0,1,1")) + (rule "polySimp_elimOne" (formula "1") (term "0,0,1,1")) + (rule "polyDiv_pullOut" (formula "2") (term "1,0,2,0") (inst "polyDivCoeff=mul(low_0, Z(neglit(1(#))))")) + (rule "equal_literals" (formula "2") (term "0,1,0,2,0")) + (builtin "One Step Simplification" (formula "2")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,0,0,1,0,2,0")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,0,0,1,0,2,0")) + (rule "polySimp_addComm0" (formula "2") (term "1,0,2,0")) + (rule "polySimp_addComm1" (formula "2") (term "0,1,1,0,2,0")) + (rule "polySimp_pullOutFactor0" (formula "2") (term "0,0,1,1,0,2,0")) + (rule "add_literals" (formula "2") (term "1,0,0,1,1,0,2,0")) + (rule "polySimp_elimOne" (formula "2") (term "0,0,1,1,0,2,0")) + (rule "polySimp_addAssoc" (formula "2") (term "0,2,0")) + (rule "polySimp_pullOutFactor1" (formula "2") (term "0,0,2,0")) + (rule "add_literals" (formula "2") (term "1,0,0,2,0")) + (rule "times_zero_1" (formula "2") (term "0,0,2,0")) + (rule "add_zero_left" (formula "2") (term "0,2,0")) + (rule "polyDiv_pullOut" (formula "21") (term "1,1,1,0") (inst "polyDivCoeff=mul(low_0, Z(neglit(1(#))))")) + (rule "equal_literals" (formula "21") (term "0,1,1,1,0")) + (builtin "One Step Simplification" (formula "21")) + (rule "polySimp_mulLiterals" (formula "21") (term "1,0,0,1,1,1,0")) + (rule "polySimp_mulLiterals" (formula "21") (term "1,0,0,1,1,1,0")) + (rule "polySimp_addComm0" (formula "21") (term "1,1,1,0")) + (rule "polySimp_addComm1" (formula "21") (term "0,1,1,1,1,0")) + (rule "polySimp_pullOutFactor0" (formula "21") (term "0,0,1,1,1,1,0")) + (rule "add_literals" (formula "21") (term "1,0,0,1,1,1,1,0")) + (rule "polySimp_elimOne" (formula "21") (term "0,0,1,1,1,1,0")) + (rule "polySimp_addAssoc" (formula "21") (term "1,1,0")) + (rule "polySimp_pullOutFactor1b" (formula "21") (term "0,1,1,0")) + (rule "add_literals" (formula "21") (term "1,1,0,1,1,0")) + (rule "times_zero_1" (formula "21") (term "1,0,1,1,0")) + (rule "add_literals" (formula "21") (term "0,1,1,0")) + (rule "div_axiom" (formula "1") (term "1,1") (inst "quotient=quotient_0")) + (rule "equal_literals" (formula "1") (term "0")) + (builtin "One Step Simplification" (formula "1")) + (rule "qeq_literals" (formula "1") (term "0,1")) + (builtin "One Step Simplification" (formula "1")) + (rule "mul_literals" (formula "1") (term "1,1,1")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "1")) + (rule "polySimp_addAssoc" (formula "3") (term "0,1")) + (rule "polySimp_addComm1" (formula "3") (term "1")) + (rule "polySimp_addComm1" (formula "3") (term "0,1")) + (rule "add_literals" (formula "3") (term "0,0,1")) + (rule "inEqSimp_homoInEq0" (formula "2")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,0")) + (rule "polySimp_addComm1" (formula "2") (term "0")) + (rule "polySimp_addComm0" (formula "2") (term "0,0")) + (rule "inEqSimp_homoInEq1" (formula "3")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,0")) + (rule "polySimp_addComm1" (formula "3") (term "0")) + (rule "polySimp_addComm1" (formula "3") (term "0,0")) + (rule "applyEq" (formula "24") (term "0,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "24") (term "1,1,1,0") (ifseqformula "1")) + (rule "applyEq" (formula "5") (term "0,2,0") (ifseqformula "1")) + (rule "applyEq" (formula "4") (term "1,1") (ifseqformula "1")) + (rule "polySimp_addComm0" (formula "4") (term "1")) + (rule "inEqSimp_sepPosMonomial1" (formula "2")) + (rule "polySimp_mulComm0" (formula "2") (term "1")) + (rule "polySimp_rightDist" (formula "2") (term "1")) + (rule "polySimp_mulComm0" (formula "2") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "2") (term "0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "3")) + (rule "polySimp_mulComm0" (formula "3") (term "1")) + (rule "polySimp_rightDist" (formula "3") (term "1")) + (rule "polySimp_rightDist" (formula "3") (term "0,1")) + (rule "mul_literals" (formula "3") (term "0,0,1")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,0,1")) + (rule "inEqSimp_exactShadow3" (formula "6") (ifseqformula "3")) + (rule "polySimp_rightDist" (formula "6") (term "0,0")) + (rule "mul_literals" (formula "6") (term "0,0,0")) + (rule "polySimp_addAssoc" (formula "6") (term "0")) + (rule "polySimp_addComm1" (formula "6") (term "0,0")) + (rule "polySimp_pullOutFactor0b" (formula "6") (term "0")) + (rule "add_literals" (formula "6") (term "1,1,0")) + (rule "polySimp_addAssoc" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "0,0,0")) + (rule "add_zero_left" (formula "6") (term "0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "6")) + (rule "polySimp_mulLiterals" (formula "6") (term "0")) + (rule "elimGcdLeq_antec" (formula "6") (inst "elimGcd=Z(2(#))") (inst "elimGcdLeftDiv=low_0") (inst "elimGcdRightDiv=quotient_0")) + (rule "leq_literals" (formula "6") (term "0,0")) + (builtin "One Step Simplification" (formula "6")) + (rule "neg_literal" (formula "6") (term "0,0,0,0,0,0")) + (rule "mul_literals" (formula "6") (term "0,1,0,0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "6") (term "1,0,0")) + (rule "polySimp_pullOutFactor0b" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "1,1,0,0")) + (rule "times_zero_1" (formula "6") (term "1,0,0")) + (rule "add_zero_right" (formula "6") (term "0,0")) + (rule "polySimp_mulComm0" (formula "6") (term "1,0,0,0")) + (rule "polySimp_pullOutFactor0b" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "1,1,0,0")) + (rule "times_zero_1" (formula "6") (term "1,0,0")) + (rule "add_literals" (formula "6") (term "0,0")) + (rule "qeq_literals" (formula "6") (term "0")) + (builtin "One Step Simplification" (formula "6")) + (rule "inEqSimp_exactShadow3" (formula "19") (ifseqformula "6")) + (rule "mul_literals" (formula "19") (term "0,0")) + (rule "add_zero_left" (formula "19") (term "0")) + (rule "replace_known_left" (formula "26") (term "0,0") (ifseqformula "19")) + (builtin "One Step Simplification" (formula "26")) + (rule "cut_direct" (formula "26") (term "0")) + (branch "CUT: a.length >= 1 + quotient_0 TRUE" + (builtin "One Step Simplification" (formula "27")) + (rule "allRight" (formula "27") (inst "sk=f_0:Field")) + (rule "allRight" (formula "27") (inst "sk=o_0:java.lang.Object")) + (rule "orRight" (formula "27")) + (rule "pullOutSelect" (formula "28") (term "0") (inst "selectSK=f_0_0:any")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "28"))) + (rule "applyEqReverse" (formula "29") (term "0") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "29")) + (rule "closeTrue" (formula "29")) + ) + (branch "CUT: a.length >= 1 + quotient_0 FALSE" + (builtin "One Step Simplification" (formula "27")) + (rule "false_right" (formula "27")) + (rule "inEqSimp_geqRight" (formula "26")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "0,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1")) + (rule "polySimp_elimOne" (formula "1") (term "1")) + (rule "inEqSimp_exactShadow3" (formula "15") (ifseqformula "1")) + (rule "mul_literals" (formula "15") (term "0,0")) + (rule "add_zero_left" (formula "15") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "16") (ifseqformula "1")) + (rule "polySimp_rightDist" (formula "16") (term "0,0")) + (rule "mul_literals" (formula "16") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "16") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "16")) + (rule "polySimp_mulLiterals" (formula "16") (term "0")) + (rule "polySimp_elimOne" (formula "16") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "23") (ifseqformula "1")) + (rule "polySimp_mulComm0" (formula "23") (term "0,0")) + (rule "polySimp_addComm0" (formula "23") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "23")) + (rule "polySimp_mulLiterals" (formula "23") (term "0")) + (rule "polySimp_elimOne" (formula "23") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "14") (ifseqformula "16")) + (rule "mul_literals" (formula "14") (term "0,0")) + (rule "add_zero_left" (formula "14") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "14")) + (rule "mul_literals" (formula "14") (term "1")) + (rule "inEqSimp_subsumption1" (formula "22") (ifseqformula "14")) + (rule "leq_literals" (formula "22") (term "0")) + (builtin "One Step Simplification" (formula "22")) + (rule "true_left" (formula "22")) + (rule "inEqSimp_exactShadow3" (formula "8") (ifseqformula "23")) + (rule "polySimp_rightDist" (formula "8") (term "0,0")) + (rule "mul_literals" (formula "8") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "8") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "8")) + (rule "polySimp_mulLiterals" (formula "8") (term "0")) + (rule "polySimp_elimOne" (formula "8") (term "0")) + (rule "inEqSimp_subsumption0" (formula "7") (ifseqformula "8")) + (rule "inEqSimp_homoInEq0" (formula "7") (term "0")) + (rule "polySimp_mulComm0" (formula "7") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "7") (term "1,0,0")) + (rule "mul_literals" (formula "7") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "7") (term "0,0")) + (rule "polySimp_addComm0" (formula "7") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "7") (term "0,0")) + (rule "add_literals" (formula "7") (term "1,1,0,0")) + (rule "times_zero_1" (formula "7") (term "1,0,0")) + (rule "add_literals" (formula "7") (term "0,0")) + (rule "qeq_literals" (formula "7") (term "0")) + (builtin "One Step Simplification" (formula "7")) + (rule "true_left" (formula "7")) + (rule "inEqSimp_exactShadow3" (formula "3") (ifseqformula "23")) + (rule "polySimp_rightDist" (formula "3") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "3") (term "1,0,0")) + (rule "polySimp_mulAssoc" (formula "3") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "3") (term "0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "3") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "3") (term "0")) + (rule "polySimp_pullOutFactor2" (formula "3") (term "0,0")) + (rule "add_literals" (formula "3") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "3")) + (rule "polySimp_mulLiterals" (formula "3") (term "1")) + (rule "polySimp_elimOne" (formula "3") (term "1")) + (rule "inEqSimp_contradInEq0" (formula "3") (ifseqformula "8")) + (rule "andLeft" (formula "3")) + (rule "inEqSimp_homoInEq1" (formula "3")) + (rule "polySimp_mulComm0" (formula "3") (term "1,0")) + (rule "polySimp_rightDist" (formula "3") (term "1,0")) + (rule "mul_literals" (formula "3") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "3") (term "0")) + (rule "polySimp_addComm0" (formula "3") (term "0,0")) + (rule "polySimp_pullOutFactor1b" (formula "3") (term "0")) + (rule "add_literals" (formula "3") (term "1,1,0")) + (rule "times_zero_1" (formula "3") (term "1,0")) + (rule "add_literals" (formula "3") (term "0")) + (rule "leq_literals" (formula "3")) + (rule "closeFalse" (formula "3")) + ) + ) + (branch "if b_3 false" + (builtin "One Step Simplification" (formula "21")) + (builtin "One Step Simplification" (formula "1")) + (rule "notLeft" (formula "1")) + (rule "unusedLabel" (formula "21") (term "1")) + (rule "jdiv_axiom" (formula "18") (term "1,0,2,0")) + (rule "eqSymm" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "0,0,2,0")) + (rule "polySimp_rightDist" (formula "1") (term "0,0,2,0")) + (rule "polySimp_mulAssoc" (formula "1") (term "0,0,0,2,0")) + (rule "polySimp_mulComm0" (formula "1") (term "0,0,0,0,2,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "0,0,0,2,0")) + (rule "polySimp_elimOne" (formula "1") (term "0,0,0,2,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "1") (term "1,0,0")) + (rule "inEqSimp_subsumption1" (formula "1") (term "0,0") (ifseqformula "2")) + (rule "inEqSimp_homoInEq0" (formula "1") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "1") (term "0,0,0,0")) + (rule "add_literals" (formula "1") (term "1,1,0,0,0,0")) + (rule "times_zero_1" (formula "1") (term "1,0,0,0,0")) + (rule "add_literals" (formula "1") (term "0,0,0,0")) + (rule "qeq_literals" (formula "1") (term "0,0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "eqSymm" (formula "1")) + (rule "applyEq" (formula "22") (term "1,0,1,0") (ifseqformula "1")) + (rule "applyEq" (formula "19") (term "1,0,2,0") (ifseqformula "1")) + (rule "polyDiv_pullOut" (formula "22") (term "1,0,1,0") (inst "polyDivCoeff=mul(low_0, Z(neglit(1(#))))")) + (rule "equal_literals" (formula "22") (term "0,1,0,1,0")) + (builtin "One Step Simplification" (formula "22")) + (rule "polySimp_mulLiterals" (formula "22") (term "1,0,0,1,0,1,0")) + (rule "polySimp_mulLiterals" (formula "22") (term "1,0,0,1,0,1,0")) + (rule "polySimp_addComm0" (formula "22") (term "1,0,1,0")) + (rule "polySimp_addComm1" (formula "22") (term "0,1,1,0,1,0")) + (rule "polySimp_pullOutFactor0" (formula "22") (term "0,0,1,1,0,1,0")) + (rule "add_literals" (formula "22") (term "1,0,0,1,1,0,1,0")) + (rule "polySimp_elimOne" (formula "22") (term "0,0,1,1,0,1,0")) + (rule "polySimp_addAssoc" (formula "22") (term "0,1,0")) + (rule "polySimp_pullOutFactor1" (formula "22") (term "0,0,1,0")) + (rule "add_literals" (formula "22") (term "1,0,0,1,0")) + (rule "times_zero_1" (formula "22") (term "0,0,1,0")) + (rule "add_zero_left" (formula "22") (term "0,1,0")) + (rule "polyDiv_pullOut" (formula "1") (term "1") (inst "polyDivCoeff=mul(low_0, Z(neglit(1(#))))")) + (rule "equal_literals" (formula "1") (term "0,1")) + (builtin "One Step Simplification" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,0,0,1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,0,0,1")) + (rule "polySimp_addComm0" (formula "1") (term "1")) + (rule "polySimp_addComm1" (formula "1") (term "0,1,1")) + (rule "polySimp_pullOutFactor0" (formula "1") (term "0,0,1,1")) + (rule "add_literals" (formula "1") (term "1,0,0,1,1")) + (rule "polySimp_elimOne" (formula "1") (term "0,0,1,1")) + (rule "polyDiv_pullOut" (formula "19") (term "1,0,2,0") (inst "polyDivCoeff=mul(low_0, Z(neglit(1(#))))")) + (rule "equal_literals" (formula "19") (term "0,1,0,2,0")) + (builtin "One Step Simplification" (formula "19")) + (rule "polySimp_mulLiterals" (formula "19") (term "1,0,0,1,0,2,0")) + (rule "polySimp_mulLiterals" (formula "19") (term "1,0,0,1,0,2,0")) + (rule "polySimp_addComm0" (formula "19") (term "1,0,2,0")) + (rule "polySimp_addComm1" (formula "19") (term "0,1,1,0,2,0")) + (rule "polySimp_pullOutFactor0" (formula "19") (term "0,0,1,1,0,2,0")) + (rule "add_literals" (formula "19") (term "1,0,0,1,1,0,2,0")) + (rule "polySimp_elimOne" (formula "19") (term "0,0,1,1,0,2,0")) + (rule "polySimp_addAssoc" (formula "19") (term "0,2,0")) + (rule "polySimp_pullOutFactor1" (formula "19") (term "0,0,2,0")) + (rule "add_literals" (formula "19") (term "1,0,0,2,0")) + (rule "times_zero_1" (formula "19") (term "0,0,2,0")) + (rule "add_zero_left" (formula "19") (term "0,2,0")) + (rule "ifElseUnfold" (formula "22") (term "1") (inst "#boolv=b_4")) + (rule "variableDeclaration" (formula "22") (term "1") (newnames "b_4")) + (rule "compound_less_than_comparison_2" (formula "22") (term "1") (inst "#v0=i_5") (inst "#v1=i_6")) + (rule "variableDeclarationAssign" (formula "22") (term "1")) + (rule "variableDeclaration" (formula "22") (term "1") (newnames "i_5")) + (rule "assignment" (formula "22") (term "1")) + (builtin "One Step Simplification" (formula "22")) + (rule "variableDeclarationAssign" (formula "22") (term "1")) + (rule "variableDeclaration" (formula "22") (term "1") (newnames "i_6")) + (rule "assignment_array2" (formula "22")) + (branch "Normal Execution (_a != null)" + (builtin "One Step Simplification" (formula "22")) + (rule "pullOutSelect" (formula "22") (term "0,1,0") (inst "selectSK=arr_1:int")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "22")) (ifInst "" (formula "7"))) + (rule "applyEqReverse" (formula "23") (term "0,1,0") (ifseqformula "1")) + (rule "hideAuxiliaryEq" (formula "1")) + (rule "less_than_comparison_simple" (formula "22") (term "1")) + (builtin "One Step Simplification" (formula "22")) + (rule "inEqSimp_ltToLeq" (formula "22") (term "0,0,1,0")) + (rule "polySimp_mulComm0" (formula "22") (term "1,0,0,0,0,1,0")) + (rule "polySimp_addComm1" (formula "22") (term "0,0,0,1,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "22") (term "0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "22") (term "0,0,0,1,0")) + (rule "polySimp_elimOne" (formula "22") (term "0,0,0,1,0")) + (rule "div_axiom" (formula "1") (term "1,1") (inst "quotient=quotient_0")) + (rule "equal_literals" (formula "1") (term "0")) + (builtin "One Step Simplification" (formula "1")) + (rule "qeq_literals" (formula "1") (term "0,1")) + (builtin "One Step Simplification" (formula "1")) + (rule "mul_literals" (formula "1") (term "1,1,1")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "1")) + (rule "polySimp_addAssoc" (formula "3") (term "0,1")) + (rule "polySimp_addComm1" (formula "3") (term "1")) + (rule "polySimp_addComm1" (formula "3") (term "0,1")) + (rule "add_literals" (formula "3") (term "0,0,1")) + (rule "inEqSimp_homoInEq0" (formula "2")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,0")) + (rule "polySimp_addComm1" (formula "2") (term "0")) + (rule "polySimp_addComm0" (formula "2") (term "0,0")) + (rule "inEqSimp_homoInEq1" (formula "3")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,0")) + (rule "polySimp_addComm1" (formula "3") (term "0")) + (rule "polySimp_addComm1" (formula "3") (term "0,0")) + (rule "applyEq" (formula "25") (term "0,1,0,0") (ifseqformula "1")) + (rule "applyEq" (formula "25") (term "0,2,0,0,0,1,0") (ifseqformula "1")) + (rule "applyEq" (formula "22") (term "0,2,0") (ifseqformula "1")) + (rule "applyEq" (formula "4") (term "1,1") (ifseqformula "1")) + (rule "polySimp_addComm0" (formula "4") (term "1")) + (rule "inEqSimp_sepPosMonomial1" (formula "2")) + (rule "polySimp_mulComm0" (formula "2") (term "1")) + (rule "polySimp_rightDist" (formula "2") (term "1")) + (rule "polySimp_mulComm0" (formula "2") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "2") (term "0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "3")) + (rule "polySimp_mulComm0" (formula "3") (term "1")) + (rule "polySimp_rightDist" (formula "3") (term "1")) + (rule "polySimp_rightDist" (formula "3") (term "0,1")) + (rule "mul_literals" (formula "3") (term "0,0,1")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,0,1")) + (rule "inEqSimp_exactShadow3" (formula "5") (ifseqformula "3")) + (rule "polySimp_rightDist" (formula "5") (term "0,0")) + (rule "mul_literals" (formula "5") (term "0,0,0")) + (rule "polySimp_addAssoc" (formula "5") (term "0")) + (rule "polySimp_addComm1" (formula "5") (term "0,0")) + (rule "polySimp_pullOutFactor0b" (formula "5") (term "0")) + (rule "add_literals" (formula "5") (term "1,1,0")) + (rule "polySimp_addAssoc" (formula "5") (term "0,0")) + (rule "add_literals" (formula "5") (term "0,0,0")) + (rule "add_zero_left" (formula "5") (term "0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "5")) + (rule "polySimp_mulLiterals" (formula "5") (term "0")) + (rule "elimGcdLeq_antec" (formula "5") (inst "elimGcd=Z(2(#))") (inst "elimGcdLeftDiv=low_0") (inst "elimGcdRightDiv=quotient_0")) + (rule "leq_literals" (formula "5") (term "0,0")) + (builtin "One Step Simplification" (formula "5")) + (rule "neg_literal" (formula "5") (term "0,0,0,0,0,0")) + (rule "mul_literals" (formula "5") (term "0,1,0,0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "5") (term "1,0,0")) + (rule "polySimp_pullOutFactor0b" (formula "5") (term "0,0")) + (rule "add_literals" (formula "5") (term "1,1,0,0")) + (rule "times_zero_1" (formula "5") (term "1,0,0")) + (rule "add_zero_right" (formula "5") (term "0,0")) + (rule "polySimp_mulComm0" (formula "5") (term "1,0,0,0")) + (rule "polySimp_pullOutFactor0b" (formula "5") (term "0,0")) + (rule "add_literals" (formula "5") (term "1,1,0,0")) + (rule "times_zero_1" (formula "5") (term "1,0,0")) + (rule "add_literals" (formula "5") (term "0,0")) + (rule "qeq_literals" (formula "5") (term "0")) + (builtin "One Step Simplification" (formula "5")) + (rule "inEqSimp_exactShadow3" (formula "19") (ifseqformula "5")) + (rule "mul_literals" (formula "19") (term "0,0")) + (rule "add_zero_left" (formula "19") (term "0")) + (rule "ifElseSplit" (formula "27")) + (branch "if b_4 true" + (builtin "One Step Simplification" (formula "28")) + (builtin "One Step Simplification" (formula "1")) + (rule "assignment" (formula "28") (term "1")) + (builtin "One Step Simplification" (formula "28")) + (rule "inEqSimp_contradEq7" (formula "25") (ifseqformula "1")) + (rule "polySimp_mulComm0" (formula "25") (term "1,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "25") (term "0,0")) + (rule "add_literals" (formula "25") (term "1,1,0,0")) + (rule "times_zero_1" (formula "25") (term "1,0,0")) + (rule "add_literals" (formula "25") (term "0,0")) + (rule "leq_literals" (formula "25") (term "0")) + (builtin "One Step Simplification" (formula "25")) + (rule "false_right" (formula "25")) + (rule "tryEmpty" (formula "27") (term "1")) + (rule "methodCallEmpty" (formula "27") (term "1")) + (rule "emptyModality" (formula "27") (term "1")) + (builtin "One Step Simplification" (formula "27") (ifInst "" (formula "21")) (ifInst "" (formula "23"))) + (rule "eqSymm" (formula "27") (term "1,0,0,1,0")) + (rule "polySimp_addComm0" (formula "27") (term "0,1")) + (rule "precOfInt" (formula "27") (term "1")) + (rule "inEqSimp_ltToLeq" (formula "27") (term "1,1")) + (rule "polySimp_rightDist" (formula "27") (term "1,0,0,1,1")) + (rule "polySimp_mulAssoc" (formula "27") (term "0,1,0,0,1,1")) + (rule "polySimp_mulComm0" (formula "27") (term "0,0,1,0,0,1,1")) + (rule "polySimp_mulLiterals" (formula "27") (term "0,1,0,0,1,1")) + (rule "polySimp_elimOne" (formula "27") (term "0,1,0,0,1,1")) + (rule "polySimp_addAssoc" (formula "27") (term "0,0,1,1")) + (rule "polySimp_addComm1" (formula "27") (term "0,1,1")) + (rule "polySimp_addAssoc" (formula "27") (term "0,0,1,1")) + (rule "polySimp_addComm1" (formula "27") (term "0,0,0,1,1")) + (rule "polySimp_pullOutFactor1b" (formula "27") (term "0,0,1,1")) + (rule "add_literals" (formula "27") (term "1,1,0,0,1,1")) + (rule "times_zero_1" (formula "27") (term "1,0,0,1,1")) + (rule "add_zero_right" (formula "27") (term "0,0,1,1")) + (rule "inEqSimp_commuteGeq" (formula "27") (term "0,0,0,0")) + (rule "replace_known_left" (formula "27") (term "0,0,0,0") (ifseqformula "6")) + (builtin "One Step Simplification" (formula "27")) + (rule "inEqSimp_homoInEq0" (formula "27") (term "0,1")) + (rule "mul_literals" (formula "27") (term "1,0,0,1")) + (rule "add_zero_right" (formula "27") (term "0,0,1")) + (rule "inEqSimp_sepNegMonomial0" (formula "27") (term "1,1")) + (rule "polySimp_mulLiterals" (formula "27") (term "0,1,1")) + (rule "polySimp_elimOne" (formula "27") (term "0,1,1")) + (rule "inEqSimp_sepNegMonomial1" (formula "27") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "27") (term "0,0,1")) + (rule "polySimp_elimOne" (formula "27") (term "0,0,1")) + (rule "replace_known_left" (formula "27") (term "0,1") (ifseqformula "6")) + (builtin "One Step Simplification" (formula "27")) + (rule "Class_invariant_axiom_for_BinSearch" (formula "18") (ifseqformula "10")) + (rule "true_left" (formula "18")) + (rule "cut_direct" (formula "26") (term "0,0,0")) + (branch "CUT: a.length >= quotient_0 TRUE" + (builtin "One Step Simplification" (formula "27")) + (rule "cut_direct" (formula "27") (term "1")) + (branch "CUT: up_0 >= 1 + quotient_0 TRUE" + (builtin "One Step Simplification" (formula "28")) + (rule "inEqSimp_exactShadow3" (formula "1") (ifseqformula "6")) + (rule "polySimp_rightDist" (formula "1") (term "0,0")) + (rule "mul_literals" (formula "1") (term "0,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0")) + (rule "polySimp_addComm1" (formula "1") (term "0,0,0")) + (rule "add_literals" (formula "1") (term "0,0,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0,0")) + (rule "polySimp_pullOutFactor0" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "1") (term "0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "0")) + (rule "polySimp_elimOne" (formula "1") (term "0")) + (rule "andRight" (formula "28")) + (branch + (rule "allRight" (formula "28") (inst "sk=x_0:int")) + (rule "orRight" (formula "28")) + (rule "notRight" (formula "29")) + (rule "orRight" (formula "29")) + (rule "inEqSimp_geqRight" (formula "30")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0")) + (rule "polySimp_addComm1" (formula "1") (term "0")) + (rule "inEqSimp_leqRight" (formula "30")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "0,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "2")) + (rule "polySimp_mulLiterals" (formula "2") (term "0")) + (rule "polySimp_elimOne" (formula "2") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1")) + (rule "polySimp_elimOne" (formula "1") (term "1")) + (rule "pullOutSelect" (formula "3") (term "0") (inst "selectSK=arr_2:int")) + (rule "simplifySelectOfAnon" (formula "3")) + (builtin "One Step Simplification" (formula "3") (ifInst "" (formula "31")) (ifInst "" (formula "17"))) + (rule "applyEqReverse" (formula "4") (term "0") (ifseqformula "3")) + (rule "hideAuxiliaryEq" (formula "3")) + (rule "allLeft" (formula "22") (inst "t=idx_0:int")) + (rule "inEqSimp_commuteGeq" (formula "22") (term "1,0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "22") (term "1,0,0")) + (rule "inEqSimp_commuteGeq" (formula "22") (term "1,0")) + (rule "applyEq" (formula "22") (term "1,1,0") (ifseqformula "21")) + (rule "inEqSimp_contradInEq1" (formula "22") (term "1,0,0,0") (ifseqformula "20")) + (rule "inEqSimp_homoInEq1" (formula "22") (term "0,1,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "22") (term "0,0,1,0,0,0")) + (rule "add_literals" (formula "22") (term "1,1,0,0,1,0,0,0")) + (rule "times_zero_1" (formula "22") (term "1,0,0,1,0,0,0")) + (rule "add_literals" (formula "22") (term "0,0,1,0,0,0")) + (rule "leq_literals" (formula "22") (term "0,1,0,0,0")) + (builtin "One Step Simplification" (formula "22")) + (rule "allLeft" (formula "22") (inst "t=quotient_0:int")) + (rule "inEqSimp_commuteGeq" (formula "22") (term "1,0")) + (rule "inEqSimp_contradInEq1" (formula "22") (term "0,0") (ifseqformula "26")) + (rule "qeq_literals" (formula "22") (term "0,0,0")) + (builtin "One Step Simplification" (formula "22")) + (rule "inEqSimp_contradInEq1" (formula "22") (term "1") (ifseqformula "6")) + (rule "inEqSimp_homoInEq1" (formula "22") (term "0,1")) + (rule "polySimp_pullOutFactor1b" (formula "22") (term "0,0,1")) + (rule "add_literals" (formula "22") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "22") (term "1,0,0,1")) + (rule "add_literals" (formula "22") (term "0,0,1")) + (rule "leq_literals" (formula "22") (term "0,1")) + (builtin "One Step Simplification" (formula "22")) + (rule "inEqSimp_exactShadow3" (formula "18") (ifseqformula "22")) + (rule "mul_literals" (formula "18") (term "0,0")) + (rule "add_zero_left" (formula "18") (term "0")) + (rule "allLeft" (formula "29") (inst "t=idx_0:int")) + (rule "inEqSimp_commuteGeq" (formula "29") (term "1,0")) + (rule "inEqSimp_contradInEq1" (formula "29") (term "0,0") (ifseqformula "18")) + (rule "qeq_literals" (formula "29") (term "0,0,0")) + (builtin "One Step Simplification" (formula "29")) + (rule "pullOutSelect" (formula "29") (term "0,0,1") (inst "selectSK=arr_3:int")) + (rule "simplifySelectOfAnon" (formula "29")) + (builtin "One Step Simplification" (formula "29") (ifInst "" (formula "34")) (ifInst "" (formula "16"))) + (rule "applyEqReverse" (formula "30") (term "0,0,1") (ifseqformula "29")) + (rule "hideAuxiliaryEq" (formula "29")) + (rule "replace_known_left" (formula "29") (term "0,1") (ifseqformula "21")) + (builtin "One Step Simplification" (formula "29")) + (rule "inEqSimp_exactShadow3" (formula "27") (ifseqformula "29")) + (rule "mul_literals" (formula "27") (term "0,0")) + (rule "add_zero_left" (formula "27") (term "0")) + (rule "allLeft" (formula "31") (inst "t=idx_0:int")) + (rule "replaceKnownSelect_taclet00000100010_6" (formula "31") (term "0,0,1")) + (rule "replaceKnownAuxiliaryConstant_taclet00000100010_7" (formula "31") (term "0,0,1")) + (rule "replace_known_left" (formula "31") (term "0,1") (ifseqformula "21")) + (builtin "One Step Simplification" (formula "31")) + (rule "inEqSimp_commuteGeq" (formula "31") (term "1")) + (rule "inEqSimp_homoInEq0" (formula "31") (term "0")) + (rule "polySimp_addComm1" (formula "31") (term "0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "31") (term "0")) + (rule "polySimp_mulComm0" (formula "31") (term "1,0")) + (rule "polySimp_rightDist" (formula "31") (term "1,0")) + (rule "mul_literals" (formula "31") (term "0,1,0")) + (rule "polySimp_mulLiterals" (formula "31") (term "1,1,0")) + (rule "polySimp_elimOne" (formula "31") (term "1,1,0")) + (rule "inEqSimp_contradInEq1" (formula "31") (term "1") (ifseqformula "20")) + (rule "inEqSimp_homoInEq1" (formula "31") (term "0,1")) + (rule "polySimp_pullOutFactor1b" (formula "31") (term "0,0,1")) + (rule "add_literals" (formula "31") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "31") (term "1,0,0,1")) + (rule "add_literals" (formula "31") (term "0,0,1")) + (rule "leq_literals" (formula "31") (term "0,1")) + (builtin "One Step Simplification" (formula "31")) + (rule "inEqSimp_exactShadow3" (formula "31") (ifseqformula "9")) + (rule "polySimp_rightDist" (formula "31") (term "0,0")) + (rule "mul_literals" (formula "31") (term "0,0,0")) + (rule "polySimp_addAssoc" (formula "31") (term "0")) + (rule "polySimp_addComm1" (formula "31") (term "0,0")) + (rule "polySimp_addAssoc" (formula "31") (term "0,0,0")) + (rule "add_literals" (formula "31") (term "0,0,0,0")) + (rule "add_zero_left" (formula "31") (term "0,0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "31")) + (rule "polySimp_mulLiterals" (formula "31") (term "0")) + (rule "polySimp_elimOne" (formula "31") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "27") (ifseqformula "31")) + (rule "mul_literals" (formula "27") (term "0,0")) + (rule "add_zero_left" (formula "27") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "27")) + (rule "polySimp_mulLiterals" (formula "27") (term "0")) + (rule "polySimp_elimOne" (formula "27") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "18") (ifseqformula "27")) + (rule "mul_literals" (formula "18") (term "0,0")) + (rule "add_zero_left" (formula "18") (term "0")) + (rule "inEqSimp_subsumption6" (formula "18") (ifseqformula "27")) + (rule "greater_literals" (formula "18") (term "0,0")) + (builtin "One Step Simplification" (formula "18")) + (rule "mul_literals" (formula "18") (term "1,0")) + (rule "leq_literals" (formula "18") (term "0")) + (builtin "One Step Simplification" (formula "18")) + (rule "true_left" (formula "18")) + (rule "allLeft" (formula "24") (inst "t=quotient_0:int")) + (rule "inEqSimp_commuteGeq" (formula "24") (term "1,0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "24") (term "1,0,0")) + (rule "inEqSimp_commuteGeq" (formula "24") (term "1,0")) + (rule "commute_or_2" (formula "24") (term "0,0")) + (rule "commute_or_2" (formula "24") (term "0")) + (rule "cut_direct" (formula "24") (term "1,0")) + (branch "CUT: a.length <= quotient_0 TRUE" + (builtin "One Step Simplification" (formula "25")) + (rule "true_left" (formula "25")) + (rule "inEqSimp_antiSymm" (formula "5") (ifseqformula "24")) + (rule "applyEq" (formula "20") (term "0") (ifseqformula "5")) + (rule "applyEq" (formula "20") (term "0") (ifseqformula "5")) + (rule "inEqSimp_homoInEq1" (formula "20")) + (rule "polySimp_addComm1" (formula "20") (term "0")) + (rule "applyEq" (formula "2") (term "0") (ifseqformula "5")) + (rule "inEqSimp_homoInEq1" (formula "2")) + (rule "polySimp_addComm1" (formula "2") (term "0")) + (rule "applyEq" (formula "6") (term "0") (ifseqformula "5")) + (rule "inEqSimp_homoInEq1" (formula "6")) + (rule "polySimp_pullOutFactor1" (formula "6") (term "0")) + (rule "add_literals" (formula "6") (term "1,0")) + (rule "times_zero_1" (formula "6") (term "0")) + (rule "leq_literals" (formula "6")) + (rule "true_left" (formula "6")) + (rule "applyEq" (formula "29") (term "0") (ifseqformula "5")) + (rule "inEqSimp_commuteGeq" (formula "29")) + (rule "applyEq" (formula "23") (term "0") (ifseqformula "5")) + (rule "inEqSimp_homoInEq0" (formula "23")) + (rule "polySimp_pullOutFactor1" (formula "23") (term "0")) + (rule "add_literals" (formula "23") (term "1,0")) + (rule "times_zero_1" (formula "23") (term "0")) + (rule "qeq_literals" (formula "23")) + (rule "true_left" (formula "23")) + (rule "applyEq" (formula "23") (term "1,1,0,0,0,0") (ifseqformula "5")) + (rule "applyEq" (formula "33") (term "1,1,0,0") (ifseqformula "5")) + (rule "inEqSimp_sepPosMonomial0" (formula "19")) + (rule "polySimp_mulComm0" (formula "19") (term "1")) + (rule "polySimp_rightDist" (formula "19") (term "1")) + (rule "mul_literals" (formula "19") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "19") (term "1,1")) + (rule "polySimp_elimOne" (formula "19") (term "1,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "2")) + (rule "polySimp_mulComm0" (formula "2") (term "1")) + (rule "polySimp_rightDist" (formula "2") (term "1")) + (rule "mul_literals" (formula "2") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,1")) + (rule "polySimp_elimOne" (formula "2") (term "1,1")) + (rule "inEqSimp_contradInEq0" (formula "4") (ifseqformula "28")) + (rule "andLeft" (formula "4")) + (rule "inEqSimp_homoInEq1" (formula "4")) + (rule "polySimp_pullOutFactor1b" (formula "4") (term "0")) + (rule "add_literals" (formula "4") (term "1,1,0")) + (rule "times_zero_1" (formula "4") (term "1,0")) + (rule "add_literals" (formula "4") (term "0")) + (rule "leq_literals" (formula "4")) + (rule "closeFalse" (formula "4")) + ) + (branch "CUT: a.length <= quotient_0 FALSE" + (builtin "One Step Simplification" (formula "24")) + (rule "inEqSimp_leqRight" (formula "36")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "1")) + (rule "polySimp_rightDist" (formula "1") (term "1")) + (rule "mul_literals" (formula "1") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1")) + (rule "polySimp_elimOne" (formula "1") (term "1,1")) + (rule "inEqSimp_subsumption1" (formula "6") (ifseqformula "1")) + (rule "inEqSimp_homoInEq0" (formula "6") (term "0")) + (rule "polySimp_pullOutFactor1b" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "1,1,0,0")) + (rule "times_zero_1" (formula "6") (term "1,0,0")) + (rule "add_literals" (formula "6") (term "0,0")) + (rule "qeq_literals" (formula "6") (term "0")) + (builtin "One Step Simplification" (formula "6")) + (rule "true_left" (formula "6")) + (rule "allLeft" (formula "25") (inst "t=x_0:int")) + (rule "inEqSimp_commuteGeq" (formula "25") (term "1,0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "25") (term "1,0,0")) + (rule "inEqSimp_commuteGeq" (formula "25") (term "1,0")) + (rule "applyEq" (formula "25") (term "1,1,0") (ifseqformula "4")) + (rule "inEqSimp_contradInEq1" (formula "25") (term "1,0,0,0") (ifseqformula "3")) + (rule "inEqSimp_homoInEq1" (formula "25") (term "0,1,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "25") (term "0,0,1,0,0,0")) + (rule "add_literals" (formula "25") (term "1,1,0,0,1,0,0,0")) + (rule "times_zero_1" (formula "25") (term "1,0,0,1,0,0,0")) + (rule "add_literals" (formula "25") (term "0,0,1,0,0,0")) + (rule "leq_literals" (formula "25") (term "0,1,0,0,0")) + (builtin "One Step Simplification" (formula "25")) + (rule "allLeft" (formula "25") (inst "t=quotient_0:int")) + (rule "inEqSimp_commuteGeq" (formula "25") (term "1,0")) + (rule "inEqSimp_contradInEq1" (formula "25") (term "0,0") (ifseqformula "29")) + (rule "qeq_literals" (formula "25") (term "0,0,0")) + (builtin "One Step Simplification" (formula "25")) + (rule "inEqSimp_contradInEq1" (formula "25") (term "1") (ifseqformula "6")) + (rule "inEqSimp_homoInEq1" (formula "25") (term "0,1")) + (rule "polySimp_pullOutFactor1b" (formula "25") (term "0,0,1")) + (rule "add_literals" (formula "25") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "25") (term "1,0,0,1")) + (rule "add_literals" (formula "25") (term "0,0,1")) + (rule "leq_literals" (formula "25") (term "0,1")) + (builtin "One Step Simplification" (formula "25")) + (rule "inEqSimp_antiSymm" (formula "2") (ifseqformula "25")) + (rule "applyEq" (formula "3") (term "0") (ifseqformula "2")) + (rule "inEqSimp_homoInEq1" (formula "3")) + (rule "polySimp_pullOutFactor1" (formula "3") (term "0")) + (rule "add_literals" (formula "3") (term "1,0")) + (rule "times_zero_1" (formula "3") (term "0")) + (rule "leq_literals" (formula "3")) + (rule "true_left" (formula "3")) + (rule "applyEq" (formula "25") (term "0") (ifseqformula "2")) + (rule "inEqSimp_homoInEq0" (formula "25")) + (rule "polySimp_pullOutFactor1" (formula "25") (term "0")) + (rule "add_literals" (formula "25") (term "1,0")) + (rule "times_zero_1" (formula "25") (term "0")) + (rule "qeq_literals" (formula "25")) + (rule "true_left" (formula "25")) + (rule "applyEq" (formula "25") (term "1,1,0,0") (ifseqformula "2")) + (rule "applyEq" (formula "4") (term "0,2,0") (ifseqformula "2")) + (rule "applyEq" (formula "3") (term "1,1") (ifseqformula "2")) + (rule "applyEq" (formula "5") (term "0") (ifseqformula "3")) + (rule "inEqSimp_homoInEq1" (formula "5")) + (rule "polySimp_pullOutFactor1b" (formula "5") (term "0")) + (rule "add_literals" (formula "5") (term "1,1,0")) + (rule "times_zero_1" (formula "5") (term "1,0")) + (rule "add_literals" (formula "5") (term "0")) + (rule "leq_literals" (formula "5")) + (rule "closeFalse" (formula "5")) + ) + ) + (branch + (rule "allRight" (formula "28") (inst "sk=f_0:Field")) + (rule "allRight" (formula "28") (inst "sk=o_0:java.lang.Object")) + (rule "orRight" (formula "28")) + (rule "pullOutSelect" (formula "29") (term "0") (inst "selectSK=f_0_0:any")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "29"))) + (rule "applyEqReverse" (formula "30") (term "0") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "30")) + (rule "closeTrue" (formula "30")) + ) + ) + (branch "CUT: up_0 >= 1 + quotient_0 FALSE" + (builtin "One Step Simplification" (formula "28")) + (rule "false_right" (formula "28")) + (rule "inEqSimp_geqRight" (formula "27")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "0,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1")) + (rule "polySimp_elimOne" (formula "1") (term "1")) + (rule "inEqSimp_exactShadow3" (formula "9") (ifseqformula "1")) + (rule "polySimp_rightDist" (formula "9") (term "0,0")) + (rule "mul_literals" (formula "9") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "9") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "9")) + (rule "polySimp_mulLiterals" (formula "9") (term "0")) + (rule "polySimp_elimOne" (formula "9") (term "0")) + (rule "inEqSimp_subsumption0" (formula "8") (ifseqformula "9")) + (rule "inEqSimp_homoInEq0" (formula "8") (term "0")) + (rule "polySimp_mulComm0" (formula "8") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "8") (term "1,0,0")) + (rule "mul_literals" (formula "8") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "8") (term "0,0")) + (rule "polySimp_addComm0" (formula "8") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "8") (term "0,0")) + (rule "add_literals" (formula "8") (term "1,1,0,0")) + (rule "times_zero_1" (formula "8") (term "1,0,0")) + (rule "add_literals" (formula "8") (term "0,0")) + (rule "qeq_literals" (formula "8") (term "0")) + (builtin "One Step Simplification" (formula "8")) + (rule "true_left" (formula "8")) + (rule "inEqSimp_exactShadow3" (formula "5") (ifseqformula "1")) + (rule "polySimp_rightDist" (formula "5") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "5") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "5") (term "1,0,0")) + (rule "polySimp_mulAssoc" (formula "5") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "5") (term "0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "5") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "5") (term "0")) + (rule "polySimp_pullOutFactor2" (formula "5") (term "0,0")) + (rule "add_literals" (formula "5") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "5")) + (rule "polySimp_mulLiterals" (formula "5") (term "1")) + (rule "polySimp_elimOne" (formula "5") (term "1")) + (rule "inEqSimp_contradInEq0" (formula "5") (ifseqformula "9")) + (rule "andLeft" (formula "5")) + (rule "inEqSimp_homoInEq1" (formula "5")) + (rule "polySimp_mulComm0" (formula "5") (term "1,0")) + (rule "polySimp_rightDist" (formula "5") (term "1,0")) + (rule "mul_literals" (formula "5") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "5") (term "0")) + (rule "polySimp_addComm0" (formula "5") (term "0,0")) + (rule "polySimp_pullOutFactor1b" (formula "5") (term "0")) + (rule "add_literals" (formula "5") (term "1,1,0")) + (rule "times_zero_1" (formula "5") (term "1,0")) + (rule "add_literals" (formula "5") (term "0")) + (rule "leq_literals" (formula "5")) + (rule "closeFalse" (formula "5")) + ) + ) + (branch "CUT: a.length >= quotient_0 FALSE" + (builtin "One Step Simplification" (formula "27")) + (rule "false_right" (formula "27")) + (rule "inEqSimp_geqRight" (formula "26")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "1")) + (rule "polySimp_rightDist" (formula "1") (term "1")) + (rule "mul_literals" (formula "1") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1")) + (rule "polySimp_elimOne" (formula "1") (term "1,1")) + (rule "inEqSimp_exactShadow3" (formula "15") (ifseqformula "1")) + (rule "mul_literals" (formula "15") (term "0,0")) + (rule "add_zero_left" (formula "15") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "15")) + (rule "mul_literals" (formula "15") (term "1")) + (rule "inEqSimp_subsumption1" (formula "21") (ifseqformula "15")) + (rule "leq_literals" (formula "21") (term "0")) + (builtin "One Step Simplification" (formula "21")) + (rule "true_left" (formula "21")) + (rule "inEqSimp_exactShadow3" (formula "17") (ifseqformula "1")) + (rule "polySimp_rightDist" (formula "17") (term "0,0")) + (rule "mul_literals" (formula "17") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "17") (term "0")) + (rule "polySimp_addAssoc" (formula "17") (term "0,0")) + (rule "add_literals" (formula "17") (term "0,0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "17")) + (rule "polySimp_mulLiterals" (formula "17") (term "0")) + (rule "polySimp_elimOne" (formula "17") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "23") (ifseqformula "1")) + (rule "polySimp_mulComm0" (formula "23") (term "0,0")) + (rule "polySimp_addComm0" (formula "23") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "23")) + (rule "polySimp_mulLiterals" (formula "23") (term "0")) + (rule "polySimp_elimOne" (formula "23") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "14") (ifseqformula "17")) + (rule "mul_literals" (formula "14") (term "0,0")) + (rule "add_zero_left" (formula "14") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "14")) + (rule "mul_literals" (formula "14") (term "1")) + (rule "inEqSimp_subsumption1" (formula "16") (ifseqformula "14")) + (rule "leq_literals" (formula "16") (term "0")) + (builtin "One Step Simplification" (formula "16")) + (rule "true_left" (formula "16")) + (rule "inEqSimp_exactShadow3" (formula "8") (ifseqformula "23")) + (rule "polySimp_rightDist" (formula "8") (term "0,0")) + (rule "mul_literals" (formula "8") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "8") (term "0")) + (rule "polySimp_addAssoc" (formula "8") (term "0,0")) + (rule "add_literals" (formula "8") (term "0,0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "8")) + (rule "polySimp_mulLiterals" (formula "8") (term "0")) + (rule "polySimp_elimOne" (formula "8") (term "0")) + (rule "inEqSimp_subsumption0" (formula "7") (ifseqformula "8")) + (rule "inEqSimp_homoInEq0" (formula "7") (term "0")) + (rule "polySimp_mulComm0" (formula "7") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "7") (term "1,0,0")) + (rule "mul_literals" (formula "7") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "7") (term "0,0")) + (rule "polySimp_addComm0" (formula "7") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "7") (term "0,0")) + (rule "add_literals" (formula "7") (term "1,1,0,0")) + (rule "times_zero_1" (formula "7") (term "1,0,0")) + (rule "add_literals" (formula "7") (term "0,0")) + (rule "qeq_literals" (formula "7") (term "0")) + (builtin "One Step Simplification" (formula "7")) + (rule "true_left" (formula "7")) + (rule "inEqSimp_exactShadow3" (formula "4") (ifseqformula "23")) + (rule "polySimp_rightDist" (formula "4") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "4") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "4") (term "1,0,0")) + (rule "polySimp_mulAssoc" (formula "4") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "4") (term "0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "4") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "4") (term "0")) + (rule "polySimp_addAssoc" (formula "4") (term "0,0")) + (rule "polySimp_addComm0" (formula "4") (term "0,0,0")) + (rule "polySimp_pullOutFactor2b" (formula "4") (term "0,0")) + (rule "add_literals" (formula "4") (term "1,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "4")) + (rule "polySimp_mulComm0" (formula "4") (term "1")) + (rule "polySimp_rightDist" (formula "4") (term "1")) + (rule "mul_literals" (formula "4") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "4") (term "1,1")) + (rule "polySimp_elimOne" (formula "4") (term "1,1")) + (rule "inEqSimp_contradInEq0" (formula "4") (ifseqformula "8")) + (rule "andLeft" (formula "4")) + (rule "inEqSimp_homoInEq1" (formula "4")) + (rule "polySimp_mulComm0" (formula "4") (term "1,0")) + (rule "polySimp_rightDist" (formula "4") (term "1,0")) + (rule "mul_literals" (formula "4") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "4") (term "0")) + (rule "polySimp_addComm1" (formula "4") (term "0,0")) + (rule "add_literals" (formula "4") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "4") (term "0")) + (rule "add_literals" (formula "4") (term "1,1,0")) + (rule "times_zero_1" (formula "4") (term "1,0")) + (rule "add_literals" (formula "4") (term "0")) + (rule "leq_literals" (formula "4")) + (rule "closeFalse" (formula "4")) + ) + ) + (branch "if b_4 false" + (builtin "One Step Simplification" (formula "28")) + (builtin "One Step Simplification" (formula "1")) + (rule "notLeft" (formula "1")) + (rule "inEqSimp_geqRight" (formula "24")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "0,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1")) + (rule "polySimp_elimOne" (formula "1") (term "1")) + (rule "inEqSimp_strengthen0" (formula "1") (ifseqformula "25")) + (rule "inEqSimp_contradEq3" (formula "25") (ifseqformula "1")) + (rule "polySimp_mulComm0" (formula "25") (term "1,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "25") (term "0,0")) + (rule "add_literals" (formula "25") (term "1,1,0,0")) + (rule "times_zero_1" (formula "25") (term "1,0,0")) + (rule "add_literals" (formula "25") (term "0,0")) + (rule "qeq_literals" (formula "25") (term "0")) + (builtin "One Step Simplification" (formula "25")) + (rule "false_right" (formula "25")) + (rule "assignmentAdditionInt" (formula "27") (term "1")) + (builtin "One Step Simplification" (formula "27")) + (rule "translateJavaAddInt" (formula "27") (term "0,1,0")) + (rule "polySimp_addComm0" (formula "27") (term "0,1,0")) + (rule "tryEmpty" (formula "27") (term "1")) + (rule "methodCallEmpty" (formula "27") (term "1")) + (rule "emptyModality" (formula "27") (term "1")) + (builtin "One Step Simplification" (formula "27") (ifInst "" (formula "22")) (ifInst "" (formula "24"))) + (rule "eqSymm" (formula "27") (term "1,0,0,1,0")) + (rule "polySimp_mulComm0" (formula "27") (term "0,0,1")) + (rule "polySimp_rightDist" (formula "27") (term "0,0,1")) + (rule "mul_literals" (formula "27") (term "0,0,0,1")) + (rule "precOfInt" (formula "27") (term "1")) + (rule "inEqSimp_ltToLeq" (formula "27") (term "1,1")) + (rule "polySimp_rightDist" (formula "27") (term "1,0,0,1,1")) + (rule "polySimp_mulAssoc" (formula "27") (term "0,1,0,0,1,1")) + (rule "polySimp_mulComm0" (formula "27") (term "0,0,1,0,0,1,1")) + (rule "polySimp_mulLiterals" (formula "27") (term "0,1,0,0,1,1")) + (rule "polySimp_elimOne" (formula "27") (term "0,1,0,0,1,1")) + (rule "polySimp_addAssoc" (formula "27") (term "0,0,1,1")) + (rule "polySimp_addAssoc" (formula "27") (term "0,1,1")) + (rule "polySimp_addComm1" (formula "27") (term "0,0,1,1")) + (rule "polySimp_pullOutFactor2b" (formula "27") (term "0,1,1")) + (rule "add_literals" (formula "27") (term "1,1,0,1,1")) + (rule "times_zero_1" (formula "27") (term "1,0,1,1")) + (rule "add_zero_right" (formula "27") (term "0,1,1")) + (rule "polySimp_addComm1" (formula "27") (term "0,1,1")) + (rule "polySimp_addAssoc" (formula "27") (term "0,0,1,1")) + (rule "add_literals" (formula "27") (term "0,0,0,1,1")) + (rule "add_zero_left" (formula "27") (term "0,0,1,1")) + (rule "inEqSimp_homoInEq0" (formula "27") (term "0,1")) + (rule "mul_literals" (formula "27") (term "1,0,0,1")) + (rule "add_zero_right" (formula "27") (term "0,0,1")) + (rule "inEqSimp_sepPosMonomial1" (formula "27") (term "0,0,0,0")) + (rule "mul_literals" (formula "27") (term "1,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "27") (term "1,1")) + (rule "polySimp_mulLiterals" (formula "27") (term "1,1,1")) + (rule "polySimp_elimOne" (formula "27") (term "1,1,1")) + (rule "replace_known_left" (formula "27") (term "1,1") (ifseqformula "6")) + (builtin "One Step Simplification" (formula "27")) + (rule "inEqSimp_sepPosMonomial1" (formula "27") (term "1")) + (rule "polySimp_mulComm0" (formula "27") (term "1,1")) + (rule "polySimp_rightDist" (formula "27") (term "1,1")) + (rule "mul_literals" (formula "27") (term "0,1,1")) + (rule "polySimp_mulLiterals" (formula "27") (term "1,1,1")) + (rule "polySimp_elimOne" (formula "27") (term "1,1,1")) + (rule "inEqSimp_subsumption1" (formula "27") (term "0,0,0,0") (ifseqformula "20")) + (rule "leq_literals" (formula "27") (term "0,0,0,0,0")) + (builtin "One Step Simplification" (formula "27")) + (rule "Class_invariant_axiom_for_BinSearch" (formula "18") (ifseqformula "10")) + (rule "true_left" (formula "18")) + (rule "cut_direct" (formula "26") (term "0,0,0")) + (branch "CUT: up_0 >= 1 + quotient_0 TRUE" + (builtin "One Step Simplification" (formula "27") (ifInst "" (formula "1"))) + (rule "inEqSimp_exactShadow3" (formula "1") (ifseqformula "5")) + (rule "polySimp_rightDist" (formula "1") (term "0,0")) + (rule "mul_literals" (formula "1") (term "0,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0")) + (rule "polySimp_addComm1" (formula "1") (term "0,0,0")) + (rule "add_literals" (formula "1") (term "0,0,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0,0")) + (rule "polySimp_pullOutFactor0" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "1") (term "0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "0")) + (rule "polySimp_elimOne" (formula "1") (term "0")) + (rule "andRight" (formula "27")) + (branch + (rule "allRight" (formula "27") (inst "sk=x_0:int")) + (rule "orRight" (formula "27")) + (rule "notRight" (formula "28")) + (rule "orRight" (formula "28")) + (rule "inEqSimp_geqRight" (formula "29")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "0,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0")) + (rule "inEqSimp_leqRight" (formula "29")) + (rule "mul_literals" (formula "1") (term "1,0,0")) + (rule "add_literals" (formula "1") (term "0,0")) + (rule "add_zero_left" (formula "1") (term "0")) + (rule "inEqSimp_sepPosMonomial0" (formula "2")) + (rule "polySimp_mulLiterals" (formula "2") (term "1")) + (rule "polySimp_elimOne" (formula "2") (term "1")) + (rule "pullOutSelect" (formula "3") (term "0") (inst "selectSK=arr_2:int")) + (rule "simplifySelectOfAnon" (formula "3")) + (builtin "One Step Simplification" (formula "3") (ifInst "" (formula "30")) (ifInst "" (formula "16"))) + (rule "applyEqReverse" (formula "4") (term "0") (ifseqformula "3")) + (rule "hideAuxiliaryEq" (formula "3")) + (rule "inEqSimp_exactShadow3" (formula "1") (ifseqformula "2")) + (rule "mul_literals" (formula "1") (term "0,0")) + (rule "add_zero_left" (formula "1") (term "0")) + (rule "allLeft" (formula "21") (inst "t=idx_0:int")) + (rule "inEqSimp_commuteGeq" (formula "21") (term "1,0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "21") (term "1,0,0")) + (rule "inEqSimp_commuteGeq" (formula "21") (term "1,0")) + (rule "applyEq" (formula "21") (term "1,1,0") (ifseqformula "20")) + (rule "inEqSimp_contradInEq1" (formula "21") (term "1,0,0,0") (ifseqformula "19")) + (rule "inEqSimp_homoInEq1" (formula "21") (term "0,1,0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "21") (term "0,0,1,0,0,0")) + (rule "add_literals" (formula "21") (term "1,1,0,0,1,0,0,0")) + (rule "times_zero_1" (formula "21") (term "1,0,0,1,0,0,0")) + (rule "add_literals" (formula "21") (term "0,0,1,0,0,0")) + (rule "leq_literals" (formula "21") (term "0,1,0,0,0")) + (builtin "One Step Simplification" (formula "21")) + (rule "allLeft" (formula "27") (inst "t=idx_0:int")) + (rule "inEqSimp_commuteGeq" (formula "27") (term "1,0")) + (rule "inEqSimp_contradInEq1" (formula "27") (term "0,0") (ifseqformula "17")) + (rule "qeq_literals" (formula "27") (term "0,0,0")) + (builtin "One Step Simplification" (formula "27")) + (rule "pullOutSelect" (formula "27") (term "0,0,1") (inst "selectSK=arr_3:int")) + (rule "simplifySelectOfAnon" (formula "27")) + (builtin "One Step Simplification" (formula "27") (ifInst "" (formula "32")) (ifInst "" (formula "15"))) + (rule "applyEqReverse" (formula "28") (term "0,0,1") (ifseqformula "27")) + (rule "hideAuxiliaryEq" (formula "27")) + (rule "replace_known_left" (formula "27") (term "0,1") (ifseqformula "20")) + (builtin "One Step Simplification" (formula "27")) + (rule "inEqSimp_exactShadow3" (formula "25") (ifseqformula "27")) + (rule "mul_literals" (formula "25") (term "0,0")) + (rule "add_zero_left" (formula "25") (term "0")) + (rule "allLeft" (formula "29") (inst "t=idx_0:int")) + (rule "replaceKnownSelect_taclet0010100010_6" (formula "29") (term "0,0,1")) + (rule "replaceKnownAuxiliaryConstant_taclet0010100010_7" (formula "29") (term "0,0,1")) + (rule "replace_known_left" (formula "29") (term "0,1") (ifseqformula "20")) + (builtin "One Step Simplification" (formula "29")) + (rule "inEqSimp_commuteGeq" (formula "29") (term "1")) + (rule "inEqSimp_homoInEq0" (formula "29") (term "0")) + (rule "polySimp_addComm1" (formula "29") (term "0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "29") (term "0")) + (rule "polySimp_mulComm0" (formula "29") (term "1,0")) + (rule "polySimp_rightDist" (formula "29") (term "1,0")) + (rule "mul_literals" (formula "29") (term "0,1,0")) + (rule "polySimp_mulLiterals" (formula "29") (term "1,1,0")) + (rule "polySimp_elimOne" (formula "29") (term "1,1,0")) + (rule "inEqSimp_contradInEq1" (formula "29") (term "1") (ifseqformula "19")) + (rule "inEqSimp_homoInEq1" (formula "29") (term "0,1")) + (rule "polySimp_pullOutFactor1b" (formula "29") (term "0,0,1")) + (rule "add_literals" (formula "29") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "29") (term "1,0,0,1")) + (rule "add_literals" (formula "29") (term "0,0,1")) + (rule "leq_literals" (formula "29") (term "0,1")) + (builtin "One Step Simplification" (formula "29")) + (rule "inEqSimp_exactShadow3" (formula "29") (ifseqformula "8")) + (rule "polySimp_rightDist" (formula "29") (term "0,0")) + (rule "mul_literals" (formula "29") (term "0,0,0")) + (rule "polySimp_addAssoc" (formula "29") (term "0")) + (rule "polySimp_addComm1" (formula "29") (term "0,0")) + (rule "polySimp_addAssoc" (formula "29") (term "0,0,0")) + (rule "add_literals" (formula "29") (term "0,0,0,0")) + (rule "add_zero_left" (formula "29") (term "0,0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "29")) + (rule "polySimp_mulLiterals" (formula "29") (term "0")) + (rule "polySimp_elimOne" (formula "29") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "25") (ifseqformula "29")) + (rule "mul_literals" (formula "25") (term "0,0")) + (rule "add_zero_left" (formula "25") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "25")) + (rule "polySimp_mulLiterals" (formula "25") (term "0")) + (rule "polySimp_elimOne" (formula "25") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "17") (ifseqformula "25")) + (rule "mul_literals" (formula "17") (term "0,0")) + (rule "add_zero_left" (formula "17") (term "0")) + (rule "inEqSimp_subsumption6" (formula "17") (ifseqformula "25")) + (rule "greater_literals" (formula "17") (term "0,0")) + (builtin "One Step Simplification" (formula "17")) + (rule "mul_literals" (formula "17") (term "1,0")) + (rule "leq_literals" (formula "17") (term "0")) + (builtin "One Step Simplification" (formula "17")) + (rule "true_left" (formula "17")) + (rule "allLeft" (formula "22") (inst "t=quotient_0:int")) + (rule "inEqSimp_commuteGeq" (formula "22") (term "1,0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "22") (term "1,0,0")) + (rule "inEqSimp_commuteGeq" (formula "22") (term "1,0")) + (rule "commute_or_2" (formula "22") (term "0,0")) + (rule "commute_or_2" (formula "22") (term "0")) + (rule "cut_direct" (formula "22") (term "1,0")) + (branch "CUT: a.length <= quotient_0 TRUE" + (builtin "One Step Simplification" (formula "23")) + (rule "true_left" (formula "23")) + (rule "inEqSimp_exactShadow3" (formula "18") (ifseqformula "22")) + (rule "mul_literals" (formula "18") (term "0,0")) + (rule "add_zero_left" (formula "18") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "19") (ifseqformula "22")) + (rule "polySimp_rightDist" (formula "19") (term "0,0")) + (rule "mul_literals" (formula "19") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "19") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "19")) + (rule "polySimp_mulLiterals" (formula "19") (term "0")) + (rule "polySimp_elimOne" (formula "19") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "29") (ifseqformula "23")) + (rule "polySimp_mulComm0" (formula "29") (term "0,0")) + (rule "polySimp_addComm0" (formula "29") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "29")) + (rule "polySimp_mulLiterals" (formula "29") (term "0")) + (rule "polySimp_elimOne" (formula "29") (term "0")) + (rule "inEqSimp_contradInEq0" (formula "4") (ifseqformula "29")) + (rule "andLeft" (formula "4")) + (rule "inEqSimp_homoInEq1" (formula "4")) + (rule "polySimp_pullOutFactor1b" (formula "4") (term "0")) + (rule "add_literals" (formula "4") (term "1,1,0")) + (rule "times_zero_1" (formula "4") (term "1,0")) + (rule "add_literals" (formula "4") (term "0")) + (rule "leq_literals" (formula "4")) + (rule "closeFalse" (formula "4")) + ) + (branch "CUT: a.length <= quotient_0 FALSE" + (builtin "One Step Simplification" (formula "22")) + (rule "inEqSimp_leqRight" (formula "34")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "1")) + (rule "polySimp_rightDist" (formula "1") (term "1")) + (rule "mul_literals" (formula "1") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1")) + (rule "polySimp_elimOne" (formula "1") (term "1,1")) + (rule "allLeft" (formula "31") (inst "t=x_0:int")) + (rule "replaceKnownSelect_taclet0010100010_4" (formula "31") (term "0,0,1")) + (rule "replaceKnownAuxiliaryConstant_taclet0010100010_5" (formula "31") (term "0,0,1")) + (rule "replace_known_left" (formula "31") (term "0,1") (ifseqformula "4")) + (builtin "One Step Simplification" (formula "31")) + (rule "inEqSimp_contradInEq1" (formula "31") (term "0") (ifseqformula "2")) + (rule "qeq_literals" (formula "31") (term "0,0")) + (builtin "One Step Simplification" (formula "31")) + (rule "inEqSimp_exactShadow3" (formula "31") (ifseqformula "3")) + (rule "polySimp_mulComm0" (formula "31") (term "0,0")) + (rule "polySimp_addComm0" (formula "31") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "31")) + (rule "polySimp_mulLiterals" (formula "31") (term "0")) + (rule "polySimp_elimOne" (formula "31") (term "0")) + (rule "allLeft" (formula "24") (inst "t=x_0:int")) + (rule "inEqSimp_commuteGeq" (formula "24") (term "1,0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "24") (term "1,0,0")) + (rule "inEqSimp_commuteGeq" (formula "24") (term "1,0")) + (rule "applyEq" (formula "24") (term "1,1,0") (ifseqformula "4")) + (rule "commute_or_2" (formula "24") (term "0,0")) + (rule "commute_or_2" (formula "24") (term "0")) + (rule "cut_direct" (formula "24") (term "1,0")) + (branch "CUT: a.length <= x_0 TRUE" + (builtin "One Step Simplification" (formula "25")) + (rule "true_left" (formula "25")) + (rule "inEqSimp_exactShadow3" (formula "19") (ifseqformula "24")) + (rule "mul_literals" (formula "19") (term "0,0")) + (rule "add_zero_left" (formula "19") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "20") (ifseqformula "24")) + (rule "polySimp_rightDist" (formula "20") (term "0,0")) + (rule "mul_literals" (formula "20") (term "0,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "20")) + (rule "polySimp_mulComm0" (formula "20") (term "1")) + (rule "polySimp_rightDist" (formula "20") (term "1")) + (rule "mul_literals" (formula "20") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "20") (term "1,1")) + (rule "polySimp_elimOne" (formula "20") (term "1,1")) + (rule "inEqSimp_exactShadow3" (formula "1") (ifseqformula "25")) + (rule "polySimp_rightDist" (formula "1") (term "0,0")) + (rule "mul_literals" (formula "1") (term "0,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "1")) + (rule "polySimp_rightDist" (formula "1") (term "1")) + (rule "mul_literals" (formula "1") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1")) + (rule "polySimp_elimOne" (formula "1") (term "1,1")) + (rule "inEqSimp_contradInEq0" (formula "1") (ifseqformula "4")) + (rule "andLeft" (formula "1")) + (rule "inEqSimp_homoInEq1" (formula "1")) + (rule "polySimp_pullOutFactor1b" (formula "1") (term "0")) + (rule "add_literals" (formula "1") (term "1,1,0")) + (rule "times_zero_1" (formula "1") (term "1,0")) + (rule "add_literals" (formula "1") (term "0")) + (rule "leq_literals" (formula "1")) + (rule "closeFalse" (formula "1")) + ) + (branch "CUT: a.length <= x_0 FALSE" + (builtin "One Step Simplification" (formula "24")) + (rule "inEqSimp_leqRight" (formula "37")) + (rule "polySimp_mulComm0" (formula "1") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "1")) + (rule "polySimp_rightDist" (formula "1") (term "1")) + (rule "mul_literals" (formula "1") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,1")) + (rule "polySimp_elimOne" (formula "1") (term "1,1")) + (rule "allLeft" (formula "37") (inst "t=x_0:int")) + (rule "replaceKnownSelect_taclet0010100010_4" (formula "37") (term "0,0,1")) + (rule "replaceKnownAuxiliaryConstant_taclet0010100010_5" (formula "37") (term "0,0,1")) + (rule "replace_known_left" (formula "37") (term "0,1") (ifseqformula "5")) + (builtin "One Step Simplification" (formula "37")) + (rule "inEqSimp_commuteGeq" (formula "37") (term "1")) + (rule "inEqSimp_contradInEq1" (formula "37") (term "1") (ifseqformula "1")) + (rule "inEqSimp_homoInEq1" (formula "37") (term "0,1")) + (rule "polySimp_pullOutFactor1b" (formula "37") (term "0,0,1")) + (rule "add_literals" (formula "37") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "37") (term "1,0,0,1")) + (rule "add_literals" (formula "37") (term "0,0,1")) + (rule "leq_literals" (formula "37") (term "0,1")) + (builtin "One Step Simplification" (formula "37")) + (rule "inEqSimp_exactShadow3" (formula "3") (ifseqformula "37")) + (rule "mul_literals" (formula "3") (term "0,0")) + (rule "add_zero_left" (formula "3") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "3")) + (rule "mul_literals" (formula "3") (term "1")) + (rule "inEqSimp_exactShadow3" (formula "34") (ifseqformula "38")) + (rule "polySimp_mulComm0" (formula "34") (term "0,0")) + (rule "polySimp_addAssoc" (formula "34") (term "0")) + (rule "polySimp_addComm0" (formula "34") (term "0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "34")) + (rule "polySimp_mulComm0" (formula "34") (term "1")) + (rule "polySimp_rightDist" (formula "34") (term "1")) + (rule "mul_literals" (formula "34") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "34") (term "1,1")) + (rule "polySimp_elimOne" (formula "34") (term "1,1")) + (rule "inEqSimp_exactShadow3" (formula "3") (ifseqformula "11")) + (rule "mul_literals" (formula "3") (term "0,0")) + (rule "polySimp_addAssoc" (formula "3") (term "0")) + (rule "polySimp_addAssoc" (formula "3") (term "0,0")) + (rule "add_literals" (formula "3") (term "0,0,0")) + (rule "add_zero_left" (formula "3") (term "0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "3")) + (rule "polySimp_mulLiterals" (formula "3") (term "0")) + (rule "polySimp_elimOne" (formula "3") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "32") (ifseqformula "3")) + (rule "mul_literals" (formula "32") (term "0,0")) + (rule "add_zero_left" (formula "32") (term "0")) + (rule "inEqSimp_subsumption6" (formula "32") (ifseqformula "30")) + (rule "greater_literals" (formula "32") (term "0,0")) + (builtin "One Step Simplification" (formula "32")) + (rule "mul_literals" (formula "32") (term "1,0")) + (rule "leq_literals" (formula "32") (term "0")) + (builtin "One Step Simplification" (formula "32")) + (rule "true_left" (formula "32")) + (rule "allLeft" (formula "25") (inst "t=x_0:int")) + (rule "applyEq" (formula "25") (term "0,1") (ifseqformula "7")) + (rule "inEqSimp_homoInEq0" (formula "25") (term "1")) + (rule "polySimp_pullOutFactor1" (formula "25") (term "0,1")) + (rule "add_literals" (formula "25") (term "1,0,1")) + (rule "times_zero_1" (formula "25") (term "0,1")) + (rule "qeq_literals" (formula "25") (term "1")) + (builtin "One Step Simplification" (formula "25")) + (rule "true_left" (formula "25")) + (rule "allLeft" (formula "26") (inst "t=idx_0:int")) + (rule "inEqSimp_commuteLeq" (formula "26") (term "1")) + (rule "applyEq" (formula "26") (term "1,1") (ifseqformula "24")) + (rule "inEqSimp_contradInEq1" (formula "26") (term "0,0") (ifseqformula "21")) + (rule "qeq_literals" (formula "26") (term "0,0,0")) + (builtin "One Step Simplification" (formula "26")) + (rule "inEqSimp_contradInEq0" (formula "26") (term "1") (ifseqformula "9")) + (rule "inEqSimp_homoInEq1" (formula "26") (term "0,1")) + (rule "polySimp_mulComm0" (formula "26") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "26") (term "1,0,0,1")) + (rule "mul_literals" (formula "26") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "26") (term "0,0,1")) + (rule "polySimp_addComm0" (formula "26") (term "0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "26") (term "0,0,1")) + (rule "add_literals" (formula "26") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "26") (term "1,0,0,1")) + (rule "add_literals" (formula "26") (term "0,0,1")) + (rule "leq_literals" (formula "26") (term "0,1")) + (builtin "One Step Simplification" (formula "26")) + (rule "inEqSimp_exactShadow3" (formula "26") (ifseqformula "32")) + (rule "polySimp_mulComm0" (formula "26") (term "0,0")) + (rule "polySimp_pullOutFactor0" (formula "26") (term "0")) + (rule "add_literals" (formula "26") (term "1,0")) + (rule "polySimp_elimOne" (formula "26") (term "0")) + (rule "allLeft" (formula "27") (inst "t=x_0:int")) + (rule "applyEq" (formula "27") (term "0,1") (ifseqformula "7")) + (rule "inEqSimp_commuteLeq" (formula "27") (term "1")) + (rule "inEqSimp_contradInEq1" (formula "27") (term "0,0") (ifseqformula "5")) + (rule "qeq_literals" (formula "27") (term "0,0,0")) + (builtin "One Step Simplification" (formula "27")) + (rule "inEqSimp_contradInEq0" (formula "27") (term "1") (ifseqformula "9")) + (rule "inEqSimp_homoInEq1" (formula "27") (term "0,1")) + (rule "polySimp_mulComm0" (formula "27") (term "1,0,0,1")) + (rule "polySimp_rightDist" (formula "27") (term "1,0,0,1")) + (rule "mul_literals" (formula "27") (term "0,1,0,0,1")) + (rule "polySimp_addAssoc" (formula "27") (term "0,0,1")) + (rule "polySimp_addComm0" (formula "27") (term "0,0,0,1")) + (rule "polySimp_pullOutFactor1b" (formula "27") (term "0,0,1")) + (rule "add_literals" (formula "27") (term "1,1,0,0,1")) + (rule "times_zero_1" (formula "27") (term "1,0,0,1")) + (rule "add_literals" (formula "27") (term "0,0,1")) + (rule "leq_literals" (formula "27") (term "0,1")) + (builtin "One Step Simplification" (formula "27")) + (rule "inEqSimp_antiSymm" (formula "27") (ifseqformula "6")) + (rule "applyEq" (formula "5") (term "0") (ifseqformula "27")) + (rule "applyEq" (formula "37") (term "0") (ifseqformula "26")) + (rule "inEqSimp_commuteGeq" (formula "37")) + (rule "applyEq" (formula "27") (term "0") (ifseqformula "26")) + (rule "inEqSimp_homoInEq1" (formula "27")) + (rule "polySimp_pullOutFactor1" (formula "27") (term "0")) + (rule "add_literals" (formula "27") (term "1,0")) + (rule "times_zero_1" (formula "27") (term "0")) + (rule "leq_literals" (formula "27")) + (rule "true_left" (formula "27")) + (rule "applyEq" (formula "39") (term "0") (ifseqformula "26")) + (rule "inEqSimp_homoInEq0" (formula "39")) + (rule "polySimp_addComm1" (formula "39") (term "0")) + (rule "applyEq" (formula "5") (term "0") (ifseqformula "26")) + (rule "inEqSimp_homoInEq0" (formula "5")) + (rule "polySimp_pullOutFactor1" (formula "5") (term "0")) + (rule "add_literals" (formula "5") (term "1,0")) + (rule "times_zero_1" (formula "5") (term "0")) + (rule "qeq_literals" (formula "5")) + (rule "true_left" (formula "5")) + (rule "applyEq" (formula "27") (term "1,1,0,0") (ifseqformula "25")) + (rule "applyEq" (formula "5") (term "0,2,0") (ifseqformula "25")) + (rule "applyEq" (formula "1") (term "1,1") (ifseqformula "25")) + (rule "applyEq" (formula "6") (term "0") (ifseqformula "4")) + (rule "inEqSimp_homoInEq0" (formula "6")) + (rule "polySimp_pullOutFactor1b" (formula "6") (term "0")) + (rule "add_literals" (formula "6") (term "1,1,0")) + (rule "times_zero_1" (formula "6") (term "1,0")) + (rule "add_literals" (formula "6") (term "0")) + (rule "qeq_literals" (formula "6")) + (rule "closeFalse" (formula "6")) + ) + ) + ) + (branch + (rule "allRight" (formula "27") (inst "sk=f_0:Field")) + (rule "allRight" (formula "27") (inst "sk=o_0:java.lang.Object")) + (rule "orRight" (formula "27")) + (rule "pullOutSelect" (formula "28") (term "0") (inst "selectSK=f_0_0:any")) + (rule "simplifySelectOfAnon" (formula "1")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "28"))) + (rule "applyEqReverse" (formula "29") (term "0") (ifseqformula "1")) + (builtin "One Step Simplification" (formula "29")) + (rule "closeTrue" (formula "29")) + ) + ) + (branch "CUT: up_0 >= 1 + quotient_0 FALSE" + (builtin "One Step Simplification" (formula "27") (ifInst "" (formula "26"))) + (rule "false_right" (formula "27")) + (rule "inEqSimp_geqRight" (formula "26")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "0,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1")) + (rule "polySimp_elimOne" (formula "1") (term "1")) + (rule "inEqSimp_exactShadow3" (formula "8") (ifseqformula "1")) + (rule "polySimp_rightDist" (formula "8") (term "0,0")) + (rule "mul_literals" (formula "8") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "8") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "8")) + (rule "polySimp_mulLiterals" (formula "8") (term "0")) + (rule "polySimp_elimOne" (formula "8") (term "0")) + (rule "inEqSimp_subsumption0" (formula "7") (ifseqformula "8")) + (rule "inEqSimp_homoInEq0" (formula "7") (term "0")) + (rule "polySimp_mulComm0" (formula "7") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "7") (term "1,0,0")) + (rule "mul_literals" (formula "7") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "7") (term "0,0")) + (rule "polySimp_addComm0" (formula "7") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "7") (term "0,0")) + (rule "add_literals" (formula "7") (term "1,1,0,0")) + (rule "times_zero_1" (formula "7") (term "1,0,0")) + (rule "add_literals" (formula "7") (term "0,0")) + (rule "qeq_literals" (formula "7") (term "0")) + (builtin "One Step Simplification" (formula "7")) + (rule "true_left" (formula "7")) + (rule "inEqSimp_exactShadow3" (formula "4") (ifseqformula "1")) + (rule "polySimp_rightDist" (formula "4") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "4") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "4") (term "1,0,0")) + (rule "polySimp_mulAssoc" (formula "4") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "4") (term "0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "4") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "4") (term "0")) + (rule "polySimp_pullOutFactor2" (formula "4") (term "0,0")) + (rule "add_literals" (formula "4") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "4")) + (rule "polySimp_mulLiterals" (formula "4") (term "1")) + (rule "polySimp_elimOne" (formula "4") (term "1")) + (rule "inEqSimp_contradInEq0" (formula "4") (ifseqformula "8")) + (rule "andLeft" (formula "4")) + (rule "inEqSimp_homoInEq1" (formula "4")) + (rule "polySimp_mulComm0" (formula "4") (term "1,0")) + (rule "polySimp_rightDist" (formula "4") (term "1,0")) + (rule "mul_literals" (formula "4") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "4") (term "0")) + (rule "polySimp_addComm0" (formula "4") (term "0,0")) + (rule "polySimp_pullOutFactor1b" (formula "4") (term "0")) + (rule "add_literals" (formula "4") (term "1,1,0")) + (rule "times_zero_1" (formula "4") (term "1,0")) + (rule "add_literals" (formula "4") (term "0")) + (rule "leq_literals" (formula "4")) + (rule "closeFalse" (formula "4")) + ) + ) + ) + (branch "Null Reference (_a = null)" + (builtin "One Step Simplification" (formula "23")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "22"))) + (rule "close" (formula "23") (ifseqformula "1")) + ) + (branch "Index Out of Bounds (_a != null, but mid Out of Bounds!)" + (builtin "One Step Simplification" (formula "23")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "22"))) + (rule "false_right" (formula "23")) + (rule "inEqSimp_ltToLeq" (formula "1") (term "1")) + (rule "mul_literals" (formula "1") (term "1,0,0,1")) + (rule "add_literals" (formula "1") (term "0,0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "1") (term "1")) + (rule "mul_literals" (formula "1") (term "1,1")) + (rule "Class_invariant_axiom_for_BinSearch" (formula "14") (ifseqformula "6")) + (rule "true_left" (formula "14")) + (rule "commute_or" (formula "1")) + (rule "div_axiom" (formula "2") (term "1,1") (inst "quotient=quotient_0")) + (rule "equal_literals" (formula "2") (term "0")) + (builtin "One Step Simplification" (formula "2")) + (rule "qeq_literals" (formula "2") (term "0,1")) + (builtin "One Step Simplification" (formula "2")) + (rule "mul_literals" (formula "2") (term "1,1,1")) + (rule "andLeft" (formula "2")) + (rule "andLeft" (formula "2")) + (rule "polySimp_addAssoc" (formula "4") (term "0,1")) + (rule "polySimp_addComm1" (formula "4") (term "1")) + (rule "polySimp_addComm1" (formula "4") (term "0,1")) + (rule "add_literals" (formula "4") (term "0,0,1")) + (rule "inEqSimp_homoInEq0" (formula "3")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,0")) + (rule "polySimp_addComm1" (formula "3") (term "0")) + (rule "polySimp_addComm0" (formula "3") (term "0,0")) + (rule "inEqSimp_homoInEq1" (formula "4")) + (rule "polySimp_mulLiterals" (formula "4") (term "1,0")) + (rule "polySimp_addComm1" (formula "4") (term "0")) + (rule "polySimp_addComm1" (formula "4") (term "0,0")) + (rule "applyEq" (formula "22") (term "0,2,0") (ifseqformula "2")) + (rule "applyEq" (formula "1") (term "0,0") (ifseqformula "2")) + (rule "applyEq" (formula "1") (term "1,1") (ifseqformula "2")) + (rule "applyEq" (formula "5") (term "1,1") (ifseqformula "2")) + (rule "polySimp_addComm0" (formula "5") (term "1")) + (rule "inEqSimp_sepPosMonomial1" (formula "3")) + (rule "polySimp_mulComm0" (formula "3") (term "1")) + (rule "polySimp_rightDist" (formula "3") (term "1")) + (rule "polySimp_mulComm0" (formula "3") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "3") (term "0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "4")) + (rule "polySimp_mulComm0" (formula "4") (term "1")) + (rule "polySimp_rightDist" (formula "4") (term "1")) + (rule "polySimp_rightDist" (formula "4") (term "0,1")) + (rule "mul_literals" (formula "4") (term "0,0,1")) + (rule "polySimp_mulLiterals" (formula "4") (term "1,0,1")) + (rule "inEqSimp_exactShadow3" (formula "6") (ifseqformula "4")) + (rule "polySimp_rightDist" (formula "6") (term "0,0")) + (rule "mul_literals" (formula "6") (term "0,0,0")) + (rule "polySimp_addAssoc" (formula "6") (term "0")) + (rule "polySimp_addComm1" (formula "6") (term "0,0")) + (rule "polySimp_pullOutFactor0b" (formula "6") (term "0")) + (rule "add_literals" (formula "6") (term "1,1,0")) + (rule "polySimp_addAssoc" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "0,0,0")) + (rule "add_zero_left" (formula "6") (term "0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "6")) + (rule "polySimp_mulLiterals" (formula "6") (term "0")) + (rule "elimGcdLeq_antec" (formula "6") (inst "elimGcd=Z(2(#))") (inst "elimGcdLeftDiv=low_0") (inst "elimGcdRightDiv=quotient_0")) + (rule "leq_literals" (formula "6") (term "0,0")) + (builtin "One Step Simplification" (formula "6")) + (rule "neg_literal" (formula "6") (term "0,0,0,0,0,0")) + (rule "mul_literals" (formula "6") (term "0,1,0,0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "6") (term "1,0,0")) + (rule "polySimp_pullOutFactor0b" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "1,1,0,0")) + (rule "times_zero_1" (formula "6") (term "1,0,0")) + (rule "add_zero_right" (formula "6") (term "0,0")) + (rule "polySimp_mulComm0" (formula "6") (term "1,0,0,0")) + (rule "polySimp_pullOutFactor0b" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "1,1,0,0")) + (rule "times_zero_1" (formula "6") (term "1,0,0")) + (rule "add_literals" (formula "6") (term "0,0")) + (rule "qeq_literals" (formula "6") (term "0")) + (builtin "One Step Simplification" (formula "6")) + (rule "inEqSimp_exactShadow3" (formula "19") (ifseqformula "6")) + (rule "mul_literals" (formula "19") (term "0,0")) + (rule "add_zero_left" (formula "19") (term "0")) + (rule "inEqSimp_contradInEq1" (formula "1") (term "0") (ifseqformula "19")) + (rule "qeq_literals" (formula "1") (term "0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "inEqSimp_exactShadow3" (formula "14") (ifseqformula "1")) + (rule "mul_literals" (formula "14") (term "0,0")) + (rule "add_zero_left" (formula "14") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "15") (ifseqformula "1")) + (rule "polySimp_rightDist" (formula "15") (term "0,0")) + (rule "mul_literals" (formula "15") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "15") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "15")) + (rule "polySimp_mulLiterals" (formula "15") (term "0")) + (rule "polySimp_elimOne" (formula "15") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "22") (ifseqformula "1")) + (rule "polySimp_mulComm0" (formula "22") (term "0,0")) + (rule "polySimp_addComm0" (formula "22") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "22")) + (rule "polySimp_mulLiterals" (formula "22") (term "0")) + (rule "polySimp_elimOne" (formula "22") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "13") (ifseqformula "15")) + (rule "mul_literals" (formula "13") (term "0,0")) + (rule "add_zero_left" (formula "13") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "13")) + (rule "mul_literals" (formula "13") (term "1")) + (rule "inEqSimp_subsumption1" (formula "21") (ifseqformula "13")) + (rule "leq_literals" (formula "21") (term "0")) + (builtin "One Step Simplification" (formula "21")) + (rule "true_left" (formula "21")) + (rule "inEqSimp_exactShadow3" (formula "7") (ifseqformula "22")) + (rule "polySimp_rightDist" (formula "7") (term "0,0")) + (rule "mul_literals" (formula "7") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "7") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "7")) + (rule "polySimp_mulLiterals" (formula "7") (term "0")) + (rule "polySimp_elimOne" (formula "7") (term "0")) + (rule "inEqSimp_subsumption0" (formula "6") (ifseqformula "7")) + (rule "inEqSimp_homoInEq0" (formula "6") (term "0")) + (rule "polySimp_mulComm0" (formula "6") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "6") (term "1,0,0")) + (rule "mul_literals" (formula "6") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "6") (term "0,0")) + (rule "polySimp_addComm0" (formula "6") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "1,1,0,0")) + (rule "times_zero_1" (formula "6") (term "1,0,0")) + (rule "add_literals" (formula "6") (term "0,0")) + (rule "qeq_literals" (formula "6") (term "0")) + (builtin "One Step Simplification" (formula "6")) + (rule "true_left" (formula "6")) + (rule "inEqSimp_exactShadow3" (formula "3") (ifseqformula "22")) + (rule "polySimp_rightDist" (formula "3") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "3") (term "1,0,0")) + (rule "polySimp_mulAssoc" (formula "3") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "3") (term "0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "3") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "3") (term "0")) + (rule "polySimp_pullOutFactor2" (formula "3") (term "0,0")) + (rule "add_literals" (formula "3") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "3")) + (rule "polySimp_mulLiterals" (formula "3") (term "1")) + (rule "polySimp_elimOne" (formula "3") (term "1")) + (rule "inEqSimp_contradInEq0" (formula "3") (ifseqformula "7")) + (rule "andLeft" (formula "3")) + (rule "inEqSimp_homoInEq1" (formula "3")) + (rule "polySimp_mulComm0" (formula "3") (term "1,0")) + (rule "polySimp_rightDist" (formula "3") (term "1,0")) + (rule "mul_literals" (formula "3") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "3") (term "0")) + (rule "polySimp_addComm0" (formula "3") (term "0,0")) + (rule "polySimp_pullOutFactor1b" (formula "3") (term "0")) + (rule "add_literals" (formula "3") (term "1,1,0")) + (rule "times_zero_1" (formula "3") (term "1,0")) + (rule "add_literals" (formula "3") (term "0")) + (rule "leq_literals" (formula "3")) + (rule "closeFalse" (formula "3")) + ) + ) + ) + (branch "Null Reference (_a = null)" + (builtin "One Step Simplification" (formula "21")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "20"))) + (rule "close" (formula "21") (ifseqformula "1")) + ) + (branch "Index Out of Bounds (_a != null, but mid Out of Bounds!)" + (builtin "One Step Simplification" (formula "21")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "20"))) + (rule "false_right" (formula "21")) + (rule "inEqSimp_ltToLeq" (formula "1") (term "1")) + (rule "mul_literals" (formula "1") (term "1,0,0,1")) + (rule "add_literals" (formula "1") (term "0,0,1")) + (rule "polySimp_addAssoc" (formula "1") (term "0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "1") (term "1")) + (rule "polySimp_mulComm0" (formula "1") (term "1,1")) + (rule "polySimp_rightDist" (formula "1") (term "1,1")) + (rule "mul_literals" (formula "1") (term "0,1,1")) + (rule "Class_invariant_axiom_for_BinSearch" (formula "13") (ifseqformula "5")) + (rule "true_left" (formula "13")) + (rule "commute_or" (formula "1")) + (rule "jdiv_axiom" (formula "1") (term "0,0")) + (rule "eqSymm" (formula "1")) + (rule "polySimp_mulComm0" (formula "1") (term "0,0,2,0")) + (rule "polySimp_rightDist" (formula "1") (term "0,0,2,0")) + (rule "polySimp_mulAssoc" (formula "1") (term "0,0,0,2,0")) + (rule "polySimp_mulComm0" (formula "1") (term "0,0,0,0,2,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "0,0,0,2,0")) + (rule "polySimp_elimOne" (formula "1") (term "0,0,0,2,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "1") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "1") (term "1,0,0")) + (rule "inEqSimp_subsumption1" (formula "1") (term "0,0") (ifseqformula "3")) + (rule "inEqSimp_homoInEq0" (formula "1") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "1") (term "0,0,0,0")) + (rule "add_literals" (formula "1") (term "1,1,0,0,0,0")) + (rule "times_zero_1" (formula "1") (term "1,0,0,0,0")) + (rule "add_literals" (formula "1") (term "0,0,0,0")) + (rule "qeq_literals" (formula "1") (term "0,0,0")) + (builtin "One Step Simplification" (formula "1")) + (rule "eqSymm" (formula "1")) + (rule "applyEq" (formula "2") (term "0,0") (ifseqformula "1")) + (rule "applyEq" (formula "2") (term "1,1,1") (ifseqformula "1")) + (rule "polyDiv_pullOut" (formula "2") (term "0,0") (inst "polyDivCoeff=mul(low_0, Z(neglit(1(#))))")) + (rule "equal_literals" (formula "2") (term "0,0,0")) + (builtin "One Step Simplification" (formula "2")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,0,0,0,0")) + (rule "polySimp_addComm0" (formula "2") (term "0,0")) + (rule "polySimp_addComm1" (formula "2") (term "0,1,0,0")) + (rule "polySimp_pullOutFactor0" (formula "2") (term "0,0,1,0,0")) + (rule "add_literals" (formula "2") (term "1,0,0,1,0,0")) + (rule "polySimp_elimOne" (formula "2") (term "0,0,1,0,0")) + (rule "inEqSimp_homoInEq0" (formula "2") (term "0")) + (rule "polySimp_mulComm0" (formula "2") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "2") (term "1,0,0")) + (rule "polySimp_mulAssoc" (formula "2") (term "0,1,0,0")) + (rule "polySimp_mulComm0" (formula "2") (term "0,0,1,0,0")) + (rule "polySimp_mulLiterals" (formula "2") (term "0,1,0,0")) + (rule "polySimp_elimOne" (formula "2") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "2") (term "0,0")) + (rule "polySimp_pullOutFactor2b" (formula "2") (term "0,0,0")) + (rule "add_literals" (formula "2") (term "1,1,0,0,0")) + (rule "times_zero_1" (formula "2") (term "1,0,0,0")) + (rule "add_literals" (formula "2") (term "0,0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "2") (term "0")) + (rule "polySimp_mulLiterals" (formula "2") (term "0,0")) + (rule "polySimp_elimOne" (formula "2") (term "0,0")) + (rule "polyDiv_pullOut" (formula "1") (term "1") (inst "polyDivCoeff=mul(low_0, Z(neglit(1(#))))")) + (rule "equal_literals" (formula "1") (term "0,1")) + (builtin "One Step Simplification" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,0,0,1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1,0,0,1")) + (rule "polySimp_addComm0" (formula "1") (term "1")) + (rule "polySimp_addComm1" (formula "1") (term "0,1,1")) + (rule "polySimp_pullOutFactor0" (formula "1") (term "0,0,1,1")) + (rule "add_literals" (formula "1") (term "1,0,0,1,1")) + (rule "polySimp_elimOne" (formula "1") (term "0,0,1,1")) + (rule "polyDiv_pullOut" (formula "2") (term "1,1,1") (inst "polyDivCoeff=mul(low_0, Z(neglit(1(#))))")) + (rule "equal_literals" (formula "2") (term "0,1,1,1")) + (builtin "One Step Simplification" (formula "2")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,0,0,1,1,1")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,0,0,1,1,1")) + (rule "polySimp_addComm0" (formula "2") (term "1,1,1")) + (rule "polySimp_addComm1" (formula "2") (term "0,1,1,1,1")) + (rule "polySimp_pullOutFactor0" (formula "2") (term "0,0,1,1,1,1")) + (rule "add_literals" (formula "2") (term "1,0,0,1,1,1,1")) + (rule "polySimp_elimOne" (formula "2") (term "0,0,1,1,1,1")) + (rule "polySimp_addAssoc" (formula "2") (term "1,1")) + (rule "polySimp_pullOutFactor1" (formula "2") (term "0,1,1")) + (rule "add_literals" (formula "2") (term "1,0,1,1")) + (rule "times_zero_1" (formula "2") (term "0,1,1")) + (rule "add_zero_left" (formula "2") (term "1,1")) + (rule "div_axiom" (formula "1") (term "1,1") (inst "quotient=quotient_0")) + (rule "equal_literals" (formula "1") (term "0")) + (builtin "One Step Simplification" (formula "1")) + (rule "qeq_literals" (formula "1") (term "0,1")) + (builtin "One Step Simplification" (formula "1")) + (rule "mul_literals" (formula "1") (term "1,1,1")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "1")) + (rule "polySimp_addAssoc" (formula "3") (term "0,1")) + (rule "polySimp_addComm1" (formula "3") (term "1")) + (rule "polySimp_addComm1" (formula "3") (term "0,1")) + (rule "add_literals" (formula "3") (term "0,0,1")) + (rule "inEqSimp_homoInEq0" (formula "2")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,0")) + (rule "polySimp_addComm1" (formula "2") (term "0")) + (rule "polySimp_addComm0" (formula "2") (term "0,0")) + (rule "inEqSimp_homoInEq1" (formula "3")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,0")) + (rule "polySimp_addComm1" (formula "3") (term "0")) + (rule "polySimp_addComm1" (formula "3") (term "0,0")) + (rule "applyEq" (formula "5") (term "0,0") (ifseqformula "1")) + (rule "applyEq" (formula "5") (term "1,1") (ifseqformula "1")) + (rule "applyEq" (formula "4") (term "1,1") (ifseqformula "1")) + (rule "polySimp_addComm0" (formula "4") (term "1")) + (rule "inEqSimp_sepPosMonomial1" (formula "2")) + (rule "polySimp_mulComm0" (formula "2") (term "1")) + (rule "polySimp_rightDist" (formula "2") (term "1")) + (rule "polySimp_mulComm0" (formula "2") (term "0,1")) + (rule "polySimp_mulLiterals" (formula "2") (term "0,1")) + (rule "inEqSimp_sepPosMonomial0" (formula "3")) + (rule "polySimp_mulComm0" (formula "3") (term "1")) + (rule "polySimp_rightDist" (formula "3") (term "1")) + (rule "polySimp_rightDist" (formula "3") (term "0,1")) + (rule "mul_literals" (formula "3") (term "0,0,1")) + (rule "polySimp_mulLiterals" (formula "3") (term "1,0,1")) + (rule "inEqSimp_exactShadow3" (formula "6") (ifseqformula "3")) + (rule "polySimp_rightDist" (formula "6") (term "0,0")) + (rule "mul_literals" (formula "6") (term "0,0,0")) + (rule "polySimp_addAssoc" (formula "6") (term "0")) + (rule "polySimp_addComm1" (formula "6") (term "0,0")) + (rule "polySimp_pullOutFactor0b" (formula "6") (term "0")) + (rule "add_literals" (formula "6") (term "1,1,0")) + (rule "polySimp_addAssoc" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "0,0,0")) + (rule "add_zero_left" (formula "6") (term "0,0")) + (rule "inEqSimp_sepNegMonomial1" (formula "6")) + (rule "polySimp_mulLiterals" (formula "6") (term "0")) + (rule "elimGcdLeq_antec" (formula "6") (inst "elimGcd=Z(2(#))") (inst "elimGcdLeftDiv=low_0") (inst "elimGcdRightDiv=quotient_0")) + (rule "leq_literals" (formula "6") (term "0,0")) + (builtin "One Step Simplification" (formula "6")) + (rule "neg_literal" (formula "6") (term "0,0,0,0,0,0")) + (rule "mul_literals" (formula "6") (term "0,1,0,0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "6") (term "1,0,0")) + (rule "polySimp_pullOutFactor0b" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "1,1,0,0")) + (rule "times_zero_1" (formula "6") (term "1,0,0")) + (rule "add_zero_right" (formula "6") (term "0,0")) + (rule "polySimp_mulComm0" (formula "6") (term "1,0,0,0")) + (rule "polySimp_pullOutFactor0b" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "1,1,0,0")) + (rule "times_zero_1" (formula "6") (term "1,0,0")) + (rule "add_literals" (formula "6") (term "0,0")) + (rule "qeq_literals" (formula "6") (term "0")) + (builtin "One Step Simplification" (formula "6")) + (rule "inEqSimp_exactShadow3" (formula "19") (ifseqformula "6")) + (rule "mul_literals" (formula "19") (term "0,0")) + (rule "add_zero_left" (formula "19") (term "0")) + (rule "inEqSimp_contradInEq1" (formula "5") (term "0") (ifseqformula "19")) + (rule "qeq_literals" (formula "5") (term "0,0")) + (builtin "One Step Simplification" (formula "5")) + (rule "inEqSimp_exactShadow3" (formula "14") (ifseqformula "5")) + (rule "mul_literals" (formula "14") (term "0,0")) + (rule "add_zero_left" (formula "14") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "15") (ifseqformula "5")) + (rule "polySimp_rightDist" (formula "15") (term "0,0")) + (rule "mul_literals" (formula "15") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "15") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "15")) + (rule "polySimp_mulLiterals" (formula "15") (term "0")) + (rule "polySimp_elimOne" (formula "15") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "22") (ifseqformula "5")) + (rule "polySimp_mulComm0" (formula "22") (term "0,0")) + (rule "polySimp_addComm0" (formula "22") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "22")) + (rule "polySimp_mulLiterals" (formula "22") (term "0")) + (rule "polySimp_elimOne" (formula "22") (term "0")) + (rule "inEqSimp_exactShadow3" (formula "13") (ifseqformula "15")) + (rule "mul_literals" (formula "13") (term "0,0")) + (rule "add_zero_left" (formula "13") (term "0")) + (rule "inEqSimp_sepPosMonomial1" (formula "13")) + (rule "mul_literals" (formula "13") (term "1")) + (rule "inEqSimp_subsumption1" (formula "21") (ifseqformula "13")) + (rule "leq_literals" (formula "21") (term "0")) + (builtin "One Step Simplification" (formula "21")) + (rule "true_left" (formula "21")) + (rule "inEqSimp_exactShadow3" (formula "7") (ifseqformula "22")) + (rule "polySimp_rightDist" (formula "7") (term "0,0")) + (rule "mul_literals" (formula "7") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "7") (term "0")) + (rule "inEqSimp_sepNegMonomial1" (formula "7")) + (rule "polySimp_mulLiterals" (formula "7") (term "0")) + (rule "polySimp_elimOne" (formula "7") (term "0")) + (rule "inEqSimp_subsumption0" (formula "6") (ifseqformula "7")) + (rule "inEqSimp_homoInEq0" (formula "6") (term "0")) + (rule "polySimp_mulComm0" (formula "6") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "6") (term "1,0,0")) + (rule "mul_literals" (formula "6") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "6") (term "0,0")) + (rule "polySimp_addComm0" (formula "6") (term "0,0,0")) + (rule "polySimp_pullOutFactor1b" (formula "6") (term "0,0")) + (rule "add_literals" (formula "6") (term "1,1,0,0")) + (rule "times_zero_1" (formula "6") (term "1,0,0")) + (rule "add_literals" (formula "6") (term "0,0")) + (rule "qeq_literals" (formula "6") (term "0")) + (builtin "One Step Simplification" (formula "6")) + (rule "true_left" (formula "6")) + (rule "inEqSimp_exactShadow3" (formula "2") (ifseqformula "22")) + (rule "polySimp_rightDist" (formula "2") (term "0,0")) + (rule "polySimp_mulLiterals" (formula "2") (term "1,0,0")) + (rule "polySimp_elimOne" (formula "2") (term "1,0,0")) + (rule "polySimp_mulAssoc" (formula "2") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "2") (term "0,0,0,0")) + (rule "polySimp_mulLiterals" (formula "2") (term "0,0,0")) + (rule "polySimp_addComm1" (formula "2") (term "0")) + (rule "polySimp_pullOutFactor2" (formula "2") (term "0,0")) + (rule "add_literals" (formula "2") (term "1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "2")) + (rule "polySimp_mulLiterals" (formula "2") (term "1")) + (rule "polySimp_elimOne" (formula "2") (term "1")) + (rule "inEqSimp_contradInEq0" (formula "2") (ifseqformula "7")) + (rule "andLeft" (formula "2")) + (rule "inEqSimp_homoInEq1" (formula "2")) + (rule "polySimp_mulComm0" (formula "2") (term "1,0")) + (rule "polySimp_rightDist" (formula "2") (term "1,0")) + (rule "mul_literals" (formula "2") (term "0,1,0")) + (rule "polySimp_addAssoc" (formula "2") (term "0")) + (rule "polySimp_addComm0" (formula "2") (term "0,0")) + (rule "polySimp_pullOutFactor1b" (formula "2") (term "0")) + (rule "add_literals" (formula "2") (term "1,1,0")) + (rule "times_zero_1" (formula "2") (term "1,0")) + (rule "add_literals" (formula "2") (term "0")) + (rule "leq_literals" (formula "2")) + (rule "closeFalse" (formula "2")) + ) + ) + (branch + (builtin "One Step Simplification" (formula "20")) + (rule "equal_literals" (formula "20") (term "0")) + (builtin "One Step Simplification" (formula "20")) + (rule "closeTrue" (formula "20")) + ) + ) + (branch "if b_2 false" + (builtin "One Step Simplification" (formula "21")) + (builtin "One Step Simplification" (formula "1")) + (rule "closeFalse" (formula "1")) + ) + ) + (branch "Use Case" + (builtin "One Step Simplification" (formula "15")) + (builtin "One Step Simplification" (formula "12")) + (rule "andLeft" (formula "12")) + (rule "andLeft" (formula "12")) + (rule "andLeft" (formula "12")) + (rule "andLeft" (formula "12")) + (rule "inEqSimp_ltToLeq" (formula "16") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "16") (term "1,0,0,1,0,0")) + (rule "inEqSimp_ltToLeq" (formula "15") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,0,0,1,0,0")) + (rule "inEqSimp_commuteLeq" (formula "16") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "15") (term "0,0,0")) + (rule "inEqSimp_commuteLeq" (formula "14")) + (rule "inEqSimp_commuteLeq" (formula "12")) + (rule "inEqSimp_commuteLeq" (formula "13")) + (rule "variableDeclarationAssign" (formula "19") (term "1")) + (rule "variableDeclaration" (formula "19") (term "1") (newnames "b_1")) + (rule "inEqSimp_sepPosMonomial0" (formula "16") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "16") (term "1,1,0,0")) + (rule "polySimp_rightDist" (formula "16") (term "1,1,0,0")) + (rule "mul_literals" (formula "16") (term "0,1,1,0,0")) + (rule "polySimp_mulLiterals" (formula "16") (term "1,1,1,0,0")) + (rule "polySimp_elimOne" (formula "16") (term "1,1,1,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "15") (term "1,0,0")) + (rule "polySimp_mulComm0" (formula "15") (term "1,1,0,0")) + (rule "polySimp_rightDist" (formula "15") (term "1,1,0,0")) + (rule "mul_literals" (formula "15") (term "0,1,1,0,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,1,1,0,0")) + (rule "polySimp_elimOne" (formula "15") (term "1,1,1,0,0")) + (rule "nnf_imp2or" (formula "16") (term "0")) + (rule "nnf_imp2or" (formula "15") (term "0")) + (rule "nnf_notAnd" (formula "16") (term "0,0")) + (rule "inEqSimp_notGeq" (formula "16") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "16") (term "1,0,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "16") (term "0,0,0")) + (rule "polySimp_mulComm0" (formula "16") (term "1,0,0,0")) + (rule "polySimp_rightDist" (formula "16") (term "1,0,0,0")) + (rule "mul_literals" (formula "16") (term "0,1,0,0,0")) + (rule "polySimp_mulLiterals" (formula "16") (term "1,1,0,0,0")) + (rule "polySimp_elimOne" (formula "16") (term "1,1,0,0,0")) + (rule "inEqSimp_notLeq" (formula "16") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "16") (term "1,0,0,1,0,0")) + (rule "mul_literals" (formula "16") (term "0,1,0,0,1,0,0")) + (rule "polySimp_addAssoc" (formula "16") (term "0,0,1,0,0")) + (rule "add_literals" (formula "16") (term "0,0,0,1,0,0")) + (rule "add_zero_left" (formula "16") (term "0,0,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "16") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "16") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "16") (term "1,1,0,0")) + (rule "nnf_notAnd" (formula "15") (term "0,0")) + (rule "inEqSimp_notGeq" (formula "15") (term "0,0,0")) + (rule "mul_literals" (formula "15") (term "1,0,0,0,0,0")) + (rule "add_literals" (formula "15") (term "0,0,0,0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "15") (term "0,0,0")) + (rule "mul_literals" (formula "15") (term "1,0,0,0")) + (rule "inEqSimp_notLeq" (formula "15") (term "1,0,0")) + (rule "polySimp_rightDist" (formula "15") (term "1,0,0,1,0,0")) + (rule "mul_literals" (formula "15") (term "0,1,0,0,1,0,0")) + (rule "polySimp_addAssoc" (formula "15") (term "0,0,1,0,0")) + (rule "add_literals" (formula "15") (term "0,0,0,1,0,0")) + (rule "add_zero_left" (formula "15") (term "0,0,1,0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "15") (term "1,0,0")) + (rule "polySimp_mulLiterals" (formula "15") (term "1,1,0,0")) + (rule "polySimp_elimOne" (formula "15") (term "1,1,0,0")) + (rule "less_than_comparison_simple" (formula "19") (term "1")) + (builtin "One Step Simplification" (formula "19")) + (rule "inEqSimp_ltToLeq" (formula "19") (term "0,0,1,0")) + (rule "polySimp_mulComm0" (formula "19") (term "1,0,0,0,0,1,0")) + (rule "polySimp_addComm1" (formula "19") (term "0,0,0,1,0")) + (rule "inEqSimp_sepNegMonomial0" (formula "19") (term "0,0,1,0")) + (rule "polySimp_mulLiterals" (formula "19") (term "0,0,0,1,0")) + (rule "polySimp_elimOne" (formula "19") (term "0,0,0,1,0")) + (rule "methodCallEmpty" (formula "19") (term "1")) + (rule "emptyModality" (formula "19") (term "1")) + (builtin "One Step Simplification" (formula "19")) + (rule "impRight" (formula "19")) + (rule "notLeft" (formula "1")) + (rule "inEqSimp_geqRight" (formula "17")) + (rule "polySimp_rightDist" (formula "1") (term "1,0,0")) + (rule "mul_literals" (formula "1") (term "0,1,0,0")) + (rule "polySimp_addAssoc" (formula "1") (term "0,0")) + (rule "add_literals" (formula "1") (term "0,0,0")) + (rule "add_zero_left" (formula "1") (term "0,0")) + (rule "inEqSimp_sepPosMonomial0" (formula "1")) + (rule "polySimp_mulLiterals" (formula "1") (term "1")) + (rule "polySimp_elimOne" (formula "1") (term "1")) + (rule "inEqSimp_antiSymm" (formula "14") (ifseqformula "1")) + (rule "applyEq" (formula "15") (term "0") (ifseqformula "14")) + (rule "inEqSimp_homoInEq1" (formula "15")) + (rule "polySimp_pullOutFactor1" (formula "15") (term "0")) + (rule "add_literals" (formula "15") (term "1,0")) + (rule "times_zero_1" (formula "15") (term "0")) + (rule "leq_literals" (formula "15")) + (rule "true_left" (formula "15")) + (rule "applyEq" (formula "1") (term "0") (ifseqformula "14")) + (rule "inEqSimp_homoInEq0" (formula "1")) + (rule "polySimp_pullOutFactor1" (formula "1") (term "0")) + (rule "add_literals" (formula "1") (term "1,0")) + (rule "times_zero_1" (formula "1") (term "0")) + (rule "qeq_literals" (formula "1")) + (rule "true_left" (formula "1")) + (rule "applyEq" (formula "16") (term "1,1,0,0,0") (ifseqformula "13")) + (rule "applyEq" (formula "14") (term "1") (ifseqformula "13")) + (rule "throwUnfold" (formula "19") (term "1") (inst "#v0=r")) + (rule "variableDeclarationAssign" (formula "19") (term "1")) + (rule "variableDeclaration" (formula "19") (term "1") (newnames "r")) + (rule "arrayLengthIsAnInt" (formula "7") (term "0")) + (builtin "One Step Simplification" (formula "7")) + (rule "true_left" (formula "7")) + (rule "arrayLengthNotNegative" (formula "7") (term "0")) + (rule "instanceCreationAssignment" (formula "20") (term "1") (inst "#v0=r_1")) + (rule "variableDeclarationAssign" (formula "20") (term "1")) + (rule "variableDeclaration" (formula "20") (term "1") (newnames "r_1")) + (rule "staticMethodCallStaticWithAssignmentViaTypereference" (formula "20") (term "1") (inst "#v0=r_2")) + (rule "variableDeclaration" (formula "20") (term "1") (newnames "r_2")) + (rule "methodBodyExpand" (formula "20") (term "1") (newnames "heapBefore_$createObject,savedHeapBefore_$createObject")) + (builtin "One Step Simplification" (formula "20")) + (rule "variableDeclaration" (formula "20") (term "1") (newnames "__NEW__")) + (rule "staticMethodCallStaticWithAssignmentViaTypereference" (formula "20") (term "1") (inst "#v0=r_3")) + (rule "variableDeclaration" (formula "20") (term "1") (newnames "r_3")) + (rule "allocateInstance" (formula "20")) + (builtin "One Step Simplification" (formula "21")) + (builtin "One Step Simplification" (formula "1")) + (rule "wellFormedAnon" (formula "1") (term "0,1,0")) + (rule "andLeft" (formula "1")) + (rule "andLeft" (formula "1")) + (rule "notLeft" (formula "1")) + (rule "replace_known_left" (formula "1") (term "0,0") (ifseqformula "3")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "14"))) + (rule "notLeft" (formula "1")) + (rule "blockEmpty" (formula "23") (term "1")) + (rule "assignment" (formula "23") (term "1")) + (builtin "One Step Simplification" (formula "23")) + (rule "selectCreatedOfAnonAsFormula" (formula "19")) + (rule "orRight" (formula "19")) + (rule "methodBodyExpand" (formula "24") (term "1") (newnames "heapBefore_$create,savedHeapBefore_$create")) + (builtin "One Step Simplification" (formula "24")) + (rule "assignment_write_attribute_this" (formula "24")) + (builtin "One Step Simplification" (formula "24")) + (rule "methodCallWithinClass" (formula "24") (term "1")) + (rule "methodBodyExpand" (formula "24") (term "1") (newnames "heapBefore_$prepareEnter,savedHeapBefore_$prepareEnter")) + (builtin "One Step Simplification" (formula "24")) + (rule "methodCallSuper" (formula "24") (term "1")) + (rule "methodBodyExpand" (formula "24") (term "1") (newnames "heapBefore_$prepare,savedHeapBefore_$prepare")) + (builtin "One Step Simplification" (formula "24")) + (rule "methodCallSuper" (formula "24") (term "1")) + (rule "methodBodyExpand" (formula "24") (term "1") (newnames "heapBefore_$prepare_0,savedHeapBefore_$prepare_0")) + (builtin "One Step Simplification" (formula "24")) + (rule "methodCallSuper" (formula "24") (term "1")) + (rule "methodBodyExpand" (formula "24") (term "1") (newnames "heapBefore_$prepare_1,savedHeapBefore_$prepare_1")) + (builtin "One Step Simplification" (formula "24")) + (rule "methodCallEmpty" (formula "24") (term "1")) + (rule "blockEmpty" (formula "24") (term "1")) + (rule "assignment_write_attribute_this" (formula "24")) + (builtin "One Step Simplification" (formula "24")) + (rule "assignment_write_attribute_this" (formula "24")) + (builtin "One Step Simplification" (formula "24")) + (rule "methodCallEmpty" (formula "24") (term "1")) + (rule "methodCallEmpty" (formula "24") (term "1")) + (rule "methodCallEmpty" (formula "24") (term "1")) + (rule "blockEmpty" (formula "24") (term "1")) + (rule "methodCallReturnIgnoreResult" (formula "24") (term "1")) + (rule "methodCallReturn" (formula "24") (term "1")) + (rule "assignment" (formula "24") (term "1")) + (builtin "One Step Simplification" (formula "24")) + (rule "methodCallEmpty" (formula "24") (term "1")) + (rule "blockEmpty" (formula "24") (term "1")) + (rule "assignment" (formula "24") (term "1")) + (builtin "One Step Simplification" (formula "24")) + (rule "methodBodyExpand" (formula "24") (term "1") (newnames "heapBefore_$init,savedHeapBefore_$init")) + (builtin "One Step Simplification" (formula "24")) + (rule "methodCallSuper" (formula "24") (term "1")) + (rule "methodBodyExpand" (formula "24") (term "1") (newnames "heapBefore_$init_0,savedHeapBefore_$init_0")) + (builtin "One Step Simplification" (formula "24")) + (rule "methodCallSuper" (formula "24") (term "1")) + (rule "methodBodyExpand" (formula "24") (term "1") (newnames "heapBefore_$init_1,savedHeapBefore_$init_1")) + (builtin "One Step Simplification" (formula "24")) + (rule "methodCallSuper" (formula "24") (term "1")) + (rule "methodBodyExpand" (formula "24") (term "1") (newnames "heapBefore_$init_2,savedHeapBefore_$init_2")) + (builtin "One Step Simplification" (formula "24")) + (rule "methodCallEmpty" (formula "24") (term "1")) + (rule "methodCallEmpty" (formula "24") (term "1")) + (rule "methodCallEmpty" (formula "24") (term "1")) + (rule "methodCallEmpty" (formula "24") (term "1")) + (rule "blockEmpty" (formula "24") (term "1")) + (rule "assignment_write_attribute" (formula "24")) + (branch "Normal Execution (r_1 != null)" + (builtin "One Step Simplification" (formula "24")) + (rule "assignment" (formula "24") (term "1")) + (builtin "One Step Simplification" (formula "24")) + (rule "methodCallParamThrow" (formula "24") (term "1")) + (rule "tryCatchThrow" (formula "24") (term "1")) + (branch "Null reference in throw" + (builtin "One Step Simplification" (formula "25")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "22"))) + (rule "closeFalse" (formula "1")) + ) + (branch "Normal execution" + (builtin "One Step Simplification" (formula "24") (ifInst "" (formula "21"))) + (rule "false_right" (formula "24")) + (rule "ifElseSplit" (formula "24")) + (branch "if r instanceof java.lang.Throwable true" + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "22"))) + (rule "true_left" (formula "1")) + (rule "variableDeclaration" (formula "24") (term "1") (newnames "e")) + (rule "delete_unnecessary_cast" (formula "24") (term "1")) + (builtin "One Step Simplification" (formula "25")) + (builtin "One Step Simplification" (formula "1")) + (rule "true_left" (formula "1")) + (rule "assignment" (formula "24") (term "1")) + (builtin "One Step Simplification" (formula "24")) + (rule "emptyModality" (formula "24") (term "1")) + (builtin "One Step Simplification" (formula "24") (ifInst "" (formula "21"))) + (rule "false_right" (formula "24")) + (rule "Class_invariant_axiom_for_BinSearch" (formula "12") (ifseqformula "4")) + (rule "true_left" (formula "12")) + (rule "allLeft" (formula "16") (inst "t=idx_0:int")) + (rule "inEqSimp_commuteGeq" (formula "16") (term "1,0")) + (rule "inEqSimp_contradInEq1" (formula "16") (term "0,0") (ifseqformula "7")) + (rule "qeq_literals" (formula "16") (term "0,0,0")) + (builtin "One Step Simplification" (formula "16")) + (rule "pullOutSelect" (formula "16") (term "0,0,1") (inst "selectSK=arr_0:int")) + (rule "simplifySelectOfAnon" (formula "16")) + (builtin "One Step Simplification" (formula "16") (ifInst "" (formula "24")) (ifInst "" (formula "5"))) + (rule "applyEqReverse" (formula "17") (term "0,0,1") (ifseqformula "16")) + (rule "hideAuxiliaryEq" (formula "16")) + (rule "replace_known_left" (formula "16") (term "0,1") (ifseqformula "10")) + (builtin "One Step Simplification" (formula "16")) + (rule "inEqSimp_exactShadow3" (formula "13") (ifseqformula "16")) + (rule "mul_literals" (formula "13") (term "0,0")) + (rule "add_zero_left" (formula "13") (term "0")) + (rule "allLeft" (formula "18") (inst "t=idx_0:int")) + (rule "replaceKnownSelect_taclet01020_0" (formula "18") (term "0,0,1")) + (rule "replaceKnownAuxiliaryConstant_taclet01020_1" (formula "18") (term "0,0,1")) + (rule "replace_known_left" (formula "18") (term "0,1") (ifseqformula "10")) + (builtin "One Step Simplification" (formula "18")) + (rule "inEqSimp_commuteGeq" (formula "18") (term "1")) + (rule "inEqSimp_homoInEq0" (formula "18") (term "0")) + (rule "polySimp_addComm1" (formula "18") (term "0,0")) + (rule "inEqSimp_sepPosMonomial1" (formula "18") (term "0")) + (rule "polySimp_mulComm0" (formula "18") (term "1,0")) + (rule "polySimp_rightDist" (formula "18") (term "1,0")) + (rule "mul_literals" (formula "18") (term "0,1,0")) + (rule "polySimp_mulLiterals" (formula "18") (term "1,1,0")) + (rule "polySimp_elimOne" (formula "18") (term "1,1,0")) + (rule "inEqSimp_contradInEq0" (formula "18") (term "0") (ifseqformula "16")) + (rule "inEqSimp_homoInEq1" (formula "18") (term "0,0")) + (rule "polySimp_pullOutFactor1b" (formula "18") (term "0,0,0")) + (rule "add_literals" (formula "18") (term "1,1,0,0,0")) + (rule "times_zero_1" (formula "18") (term "1,0,0,0")) + (rule "add_literals" (formula "18") (term "0,0,0")) + (rule "leq_literals" (formula "18") (term "0,0")) + (builtin "One Step Simplification" (formula "18")) + (rule "inEqSimp_contradInEq0" (formula "9") (ifseqformula "18")) + (rule "andLeft" (formula "9")) + (rule "inEqSimp_homoInEq1" (formula "9")) + (rule "polySimp_pullOutFactor1b" (formula "9") (term "0")) + (rule "add_literals" (formula "9") (term "1,1,0")) + (rule "times_zero_1" (formula "9") (term "1,0")) + (rule "add_literals" (formula "9") (term "0")) + (rule "leq_literals" (formula "9")) + (rule "closeFalse" (formula "9")) + ) + (branch "if r instanceof java.lang.Throwable false" + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "22"))) + (rule "closeFalse" (formula "1")) + ) + ) + ) + (branch "Null Reference (r_1 = null)" + (builtin "One Step Simplification" (formula "25")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "22"))) + (rule "close" (formula "25") (ifseqformula "1")) + ) + ) +) +(branch "Null Reference (_a = null)" + (builtin "One Step Simplification" (formula "14")) + (builtin "One Step Simplification" (formula "1") (ifInst "" (formula "13"))) + (rule "close" (formula "14") (ifseqformula "1")) +) +) +} diff --git a/key.ui/examples/heap/FM2024Tutorial/BinarySearch/README.txt b/key.ui/examples/heap/FM2024Tutorial/BinarySearch/README.txt new file mode 100644 index 00000000000..c11d876b7b0 --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/BinarySearch/README.txt @@ -0,0 +1,11 @@ +example.name = Binary Search +example.path = FM 2024 Tutorial +example.additionalFile.1 = src/BinSearch.java + +The binary search examples from the paper "The Java verification tool KeY: A tutorial" presented as the Formal Methods Symposium 2024 in Milan. + +@author Bernhard Beckert, Richard Bubel, Daniel Drodt, Reiner Hähnle, Florian Lanzinger, Wolfram Pfeifer, Mattias Ulbrich, Alexander Weigl + +Binary search returns the index of a given element in a sorted array if it exists. + +The example contains two implementations of binary search: recursive and iterative. The former return -1 if the element is not found; the latter throws an exception in that case. Both example close without user interaction. \ No newline at end of file diff --git a/key.ui/examples/heap/FM2024Tutorial/BinarySearch/project.key b/key.ui/examples/heap/FM2024Tutorial/BinarySearch/project.key new file mode 100644 index 00000000000..e192e845899 --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/BinarySearch/project.key @@ -0,0 +1,47 @@ +\profile "Java Profile"; + +\settings { +"#Proof-Settings-Config-File +#Tue Jan 09 21:12:58 CET 2024 +[Labels]UseOriginLabels=true +[StrategyProperty]QUERYAXIOM_OPTIONS_KEY=QUERYAXIOM_OFF +[SMTSettings]invariantForall=false +[Strategy]ActiveStrategy=JavaCardDLStrategy +[StrategyProperty]USER_TACLETS_OPTIONS_KEY1=USER_TACLETS_OFF +[StrategyProperty]QUANTIFIERS_OPTIONS_KEY=QUANTIFIERS_NON_SPLITTING_WITH_PROGS +[StrategyProperty]USER_TACLETS_OPTIONS_KEY2=USER_TACLETS_OFF +[Choice]DefaultChoices=JavaCard-JavaCard\\:off, Strings-Strings\\:on, assertions-assertions\\:safe, bigint-bigint\\:on, floatRules-floatRules\\:strictfpOnly, initialisation-initialisation\\:disableStaticInitialisation, intRules-intRules\\:arithmeticSemanticsIgnoringOF, integerSimplificationRules-integerSimplificationRules\\:full, javaLoopTreatment-javaLoopTreatment\\:efficient, mergeGenerateIsWeakeningGoal-mergeGenerateIsWeakeningGoal\\:off, methodExpansion-methodExpansion\\:modularOnly, modelFields-modelFields\\:treatAsAxiom, moreSeqRules-moreSeqRules\\:off, permissions-permissions\\:off, programRules-programRules\\:Java, reach-reach\\:on, runtimeExceptions-runtimeExceptions\\:ban, sequences-sequences\\:on, wdChecks-wdChecks\\:off, wdOperator-wdOperator\\:L +[StrategyProperty]LOOP_OPTIONS_KEY=LOOP_INVARIANT +[StrategyProperty]INF_FLOW_CHECK_PROPERTY=INF_FLOW_CHECK_FALSE +[SMTSettings]UseBuiltUniqueness=false +[SMTSettings]explicitTypeHierarchy=false +[SMTSettings]instantiateHierarchyAssumptions=true +[StrategyProperty]NON_LIN_ARITH_OPTIONS_KEY=NON_LIN_ARITH_DEF_OPS +[SMTSettings]SelectedTaclets= +[StrategyProperty]DEP_OPTIONS_KEY=DEP_ON +[StrategyProperty]AUTO_INDUCTION_OPTIONS_KEY=AUTO_INDUCTION_OFF +[Strategy]MaximumNumberOfAutomaticApplications=10000 +[StrategyProperty]STOPMODE_OPTIONS_KEY=STOPMODE_DEFAULT +[StrategyProperty]CLASS_AXIOM_OPTIONS_KEY=CLASS_AXIOM_DELAYED +[SMTSettings]useConstantsForBigOrSmallIntegers=true +[StrategyProperty]MPS_OPTIONS_KEY=MPS_MERGE +[StrategyProperty]SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OPTIONS_KEY=SYMBOLIC_EXECUTION_NON_EXECUTION_BRANCH_HIDING_OFF +[Strategy]Timeout=-1 +[StrategyProperty]SYMBOLIC_EXECUTION_ALIAS_CHECK_OPTIONS_KEY=SYMBOLIC_EXECUTION_ALIAS_CHECK_NEVER +[StrategyProperty]QUERY_NEW_OPTIONS_KEY=QUERY_OFF +[SMTSettings]useUninterpretedMultiplication=true +[StrategyProperty]BLOCK_OPTIONS_KEY=BLOCK_CONTRACT_INTERNAL +[StrategyProperty]METHOD_OPTIONS_KEY=METHOD_CONTRACT +[StrategyProperty]USER_TACLETS_OPTIONS_KEY3=USER_TACLETS_OFF +[SMTSettings]maxGenericSorts=2 +[StrategyProperty]OSS_OPTIONS_KEY=OSS_ON +[StrategyProperty]SPLITTING_OPTIONS_KEY=SPLITTING_DELAYED +[SMTSettings]integersMinimum=-2147483645 +[StrategyProperty]VBT_PHASE=VBT_SYM_EX +[SMTSettings]integersMaximum=2147483645 +" +} + +\javaSource "src"; + +\chooseContract \ No newline at end of file diff --git a/key.ui/examples/heap/FM2024Tutorial/BinarySearch/src/BinSearch.java b/key.ui/examples/heap/FM2024Tutorial/BinarySearch/src/BinSearch.java new file mode 100644 index 00000000000..3cf4c85570e --- /dev/null +++ b/key.ui/examples/heap/FM2024Tutorial/BinarySearch/src/BinSearch.java @@ -0,0 +1,61 @@ +class BinSearch { + + /*@ private normal_behavior + @ requires (\exists int idx; 0 <= idx < a.length; a[idx] == v); + @ requires (\forall int x, y; 0 <= x < y < a.length; a[x] <= a[y]); + @ ensures 0 <= \result < a.length; + @ ensures a[\result] == v; + @ assignable \nothing; + @ also + @ private exceptional_behavior + @ requires !(\exists int idx; 0 <= idx < a.length; a[idx] == v); + @ assignable \nothing; + @ signals_only RuntimeException; + @*/ + private int binSearch(int[] a, int v) { + int low = 0; + int up = a.length; + + /*@ loop_invariant 0 <= low <= up <= a.length; + @ loop_invariant (\forall int x; 0 <= x < low; a[x] != v); + @ loop_invariant (\forall int x; up <= x < a.length; a[x] != v); + @ assignable \nothing; + @ decreases up - low; + @*/ + while (low < up) { + int mid = low + ((up - low) / 2); + if (v == a[mid]) { + return mid; + } else if (v < a[mid]) { + up = mid; + } else { + low = mid + 1; + } + } + + throw new RuntimeException(); + } + + /*@ private normal_behavior + @ requires 0 <= low <= up <= a.length; + @ requires (\forall int x, y; 0 <= x < y < a.length; a[x] <= a[y]); + @ ensures \result == -1 || low <= \result < up; + @ ensures (\exists int idx; low <= idx < up; a[idx] == v) ? + @ \result >= low && a[\result] == v : \result == -1; + @ assignable \nothing; + @ measured_by up - low; + @*/ + private int binSearchR(int[] a, int v, int low, int up) { + if (low < up) { + int mid = low + ((up - low) / 2); + if (v == a[mid]) { + return mid; + } else if (v < a[mid]) { + return binSearchR(a, v, low, mid); + } else { + return binSearchR(a, v, mid + 1, up); + } + } + return -1; + } +} \ No newline at end of file diff --git a/key.ui/examples/heap/removeDups/README.txt b/key.ui/examples/heap/removeDups/README.txt index 8ddcce3b664..81bb68aa765 100644 --- a/key.ui/examples/heap/removeDups/README.txt +++ b/key.ui/examples/heap/removeDups/README.txt @@ -3,7 +3,7 @@ example.path = Getting Started example.additionalFile.1 = RemoveDup.unspecified example.additionalFile.2 = RemoveDup.java -This is a simple excercise for JML and KeY. +This is a simple exercise for JML and KeY. @author Mattias Ulbrich diff --git a/key.ui/examples/index/samplesIndex.txt b/key.ui/examples/index/samplesIndex.txt index afa89037598..666003ded24 100644 --- a/key.ui/examples/index/samplesIndex.txt +++ b/key.ui/examples/index/samplesIndex.txt @@ -20,6 +20,10 @@ firstTouch/09-Quicktour/README.txt firstTouch/10-SITA/README.txt firstTouch/11-StateMerging/README.txt +# FM 2024 Tutorial +heap/FM2024Tutorial/BinarySearch/README.txt +heap/FM2024Tutorial/ArrayList/README.txt + # Java Features Java/MultiCatch/README.txt Java/Records/README.txt diff --git a/key.ui/examples/newBook/Chapter_16/Sort/Sort.java b/key.ui/examples/newBook/Chapter_16/Sort/Sort.java index 4a14d0923e1..29fe71ab084 100644 --- a/key.ui/examples/newBook/Chapter_16/Sort/Sort.java +++ b/key.ui/examples/newBook/Chapter_16/Sort/Sort.java @@ -6,7 +6,7 @@ public class Sort { @ ensures (\forall int i; start <= i && i= a[i]); @ ensures start <= \result && \result < a.length; @ */ - int /*@ strictly_pure @*/ max(int start) { + /*@ strictly_pure @*/ int max(int start) { int counter = start; int idx = start; /*@ loop_invariant start<=counter && counter<=a.length @ && start<=idx && idx= a[i]); @ ensures start <= \result && \result < a.length; @*/ - int /*@ strictly_pure @*/ max(int start) { + /*@ strictly_pure @*/ int max(int start) { int counter = start; int idx = start; /*@ loop_invariant start<=counter && counter<=a.length diff --git a/key.ui/examples/standard_key/java_dl/payCardJML/paycard/LimitedIntContainer.java b/key.ui/examples/standard_key/java_dl/payCardJML/paycard/LimitedIntContainer.java index 6100333c72c..6882d449cc3 100644 --- a/key.ui/examples/standard_key/java_dl/payCardJML/paycard/LimitedIntContainer.java +++ b/key.ui/examples/standard_key/java_dl/payCardJML/paycard/LimitedIntContainer.java @@ -12,5 +12,5 @@ public interface LimitedIntContainer { /*@ public normal_behavior @ ensures regularState ==> \result == value; @*/ - int /*@ pure @*/ available(); + /*@ pure @*/ int available(); } diff --git a/key.ui/examples/standard_key/visualdebugger/src/paycard/LimitedIntContainer.java b/key.ui/examples/standard_key/visualdebugger/src/paycard/LimitedIntContainer.java index a70776551c7..57ed1721678 100644 --- a/key.ui/examples/standard_key/visualdebugger/src/paycard/LimitedIntContainer.java +++ b/key.ui/examples/standard_key/visualdebugger/src/paycard/LimitedIntContainer.java @@ -10,6 +10,6 @@ public interface LimitedIntContainer{ /*@ public normal_behavior @ ensures regularState ==> \result == value; @*/ - int /*@ pure @*/ available(); + /*@ pure @*/ int available(); } diff --git a/key.ui/src/main/java/de/uka/ilkd/key/core/Main.java b/key.ui/src/main/java/de/uka/ilkd/key/core/Main.java index df7e0ae1d05..bfa21270330 100644 --- a/key.ui/src/main/java/de/uka/ilkd/key/core/Main.java +++ b/key.ui/src/main/java/de/uka/ilkd/key/core/Main.java @@ -12,6 +12,7 @@ import java.util.List; import java.util.Locale; import java.util.concurrent.Callable; +import java.util.prefs.Preferences; import javax.xml.parsers.ParserConfigurationException; import de.uka.ilkd.key.control.UserInterfaceControl; @@ -118,6 +119,9 @@ public final class Main implements Callable { @Option(names = "--debug", description = "start KeY in debug mode") private boolean debug = false; + @Option(names = "--clear-prefs", description = "clear the GUI preferences") + private boolean clearPrefs = false; + @Option(names = "--macro", paramLabel = "STRING", description = "apply automatic proof macro") private @Nullable String macro = null; @@ -244,6 +248,17 @@ public Integer call() throws Exception { LOGGER.info("Assertion evaluation is enabled."); } + if (clearPrefs) { + try { + var prefs = Preferences.userNodeForPackage(MainWindow.class); + if (prefs != null) { + prefs.clear(); + } + } finally { + // nothing to do + } + } + if (tacletDir != null) { System.setProperty(RuleSourceFactory.STD_TACLET_DIR_PROP_KEY, tacletDir.toAbsolutePath().toString()); diff --git a/key.ui/src/main/java/de/uka/ilkd/key/gui/MainWindow.java b/key.ui/src/main/java/de/uka/ilkd/key/gui/MainWindow.java index 3542f7c505b..05fcb992a4a 100644 --- a/key.ui/src/main/java/de/uka/ilkd/key/gui/MainWindow.java +++ b/key.ui/src/main/java/de/uka/ilkd/key/gui/MainWindow.java @@ -332,7 +332,14 @@ private MainWindow() { notificationManager = new NotificationManager(mediator, this); recentFileMenu = new RecentFileMenu(this); // Postpone load for faster UI creation. - SwingUtilities.invokeLater(recentFileMenu::loadEntries); + SwingUtilities.invokeLater(() -> { + recentFileMenu.loadEntries(); + // otherwise open most recent cannot be used with a fresh started KeY + if (openMostRecentFileAction != null) { + // should always be the case, but better safe than sorry + openMostRecentFileAction.updateEnabledStatus(); + } + }); proofTreeView = new ProofTreeView(mediator); infoView = new InfoView(mediator); diff --git a/key.ui/src/main/java/de/uka/ilkd/key/gui/RecentFileMenu.java b/key.ui/src/main/java/de/uka/ilkd/key/gui/RecentFileMenu.java index 1416a019c2a..7c645310d72 100644 --- a/key.ui/src/main/java/de/uka/ilkd/key/gui/RecentFileMenu.java +++ b/key.ui/src/main/java/de/uka/ilkd/key/gui/RecentFileMenu.java @@ -183,7 +183,7 @@ public JMenu getMenu() { /** * read the recent files from the given properties file */ - public final void loadFrom(Path filename) { + final void loadFrom(Path filename) { try { if (!Files.exists(filename)) { return; diff --git a/key.ui/src/main/java/de/uka/ilkd/key/gui/actions/AboutAction.java b/key.ui/src/main/java/de/uka/ilkd/key/gui/actions/AboutAction.java index a1f5b133083..1fb5cb65aa3 100644 --- a/key.ui/src/main/java/de/uka/ilkd/key/gui/actions/AboutAction.java +++ b/key.ui/src/main/java/de/uka/ilkd/key/gui/actions/AboutAction.java @@ -22,7 +22,6 @@ public AboutAction(MainWindow mainWindow) { super(mainWindow); setName("About KeY"); setIcon(IconFactory.help(16)); - // About KeY } @Override @@ -31,21 +30,10 @@ public void actionPerformed(ActionEvent e) { } public void showAbout() { - JOptionPane.showMessageDialog(mainWindow, new Object[] { IconFactory.keyVersionLogo(), KeYConstants.COPYRIGHT.replace("and", "\n" + UnicodeHelper.emSpaces(8) + "and") + "\n\nWWW: http://key-project.org/" + "\n\nVersion " + KeYConstants.VERSION }, "The KeY Project", JOptionPane.INFORMATION_MESSAGE); - - // JOptionPane pane = new JOptionPane( - // KeYConstants.COPYRIGHT.replace("and", "\n"+UnicodeHelper.emSpaces(8)+"and") - // + "\n\nWWW: http://key-project.org/" - // + "\n\nVersion " + KeYConstants.VERSION - // , JOptionPane.INFORMATION_MESSAGE, - // JOptionPane.DEFAULT_OPTION, IconFactory.keyVersionLogo(108, 68)); - // JDialog dialog = pane.createDialog(mainWindow, "The KeY Project"); - // dialog.setVisible(true); } - } diff --git a/key.ui/src/main/java/de/uka/ilkd/key/gui/actions/OpenFileAction.java b/key.ui/src/main/java/de/uka/ilkd/key/gui/actions/OpenFileAction.java index e7ff2c091cd..06465bf2ad8 100644 --- a/key.ui/src/main/java/de/uka/ilkd/key/gui/actions/OpenFileAction.java +++ b/key.ui/src/main/java/de/uka/ilkd/key/gui/actions/OpenFileAction.java @@ -30,6 +30,8 @@ public OpenFileAction(MainWindow mainWindow) { public void actionPerformed(ActionEvent e) { KeYFileChooser fc = new KeYFileChooser(lastSelectedPath); fc.setDialogTitle("Select file to load proof or problem"); + fc.setSelectedFile(KeYFileChooser.getFileChooser("Select file to load proof or problem") + .getSelectedFile()); KeYFileChooserLoadingOptions options = fc.addLoadingOptions(); fc.addBookmarkPanel(); fc.prepare(); diff --git a/key.ui/src/main/java/de/uka/ilkd/key/gui/actions/OpenMostRecentFileAction.java b/key.ui/src/main/java/de/uka/ilkd/key/gui/actions/OpenMostRecentFileAction.java index c9750f1d060..3216866acae 100644 --- a/key.ui/src/main/java/de/uka/ilkd/key/gui/actions/OpenMostRecentFileAction.java +++ b/key.ui/src/main/java/de/uka/ilkd/key/gui/actions/OpenMostRecentFileAction.java @@ -27,9 +27,13 @@ public OpenMostRecentFileAction(MainWindow mainWindow) { setName("Reload"); setIcon(IconFactory.openMostRecent(MainWindow.TOOLBAR_ICON_SIZE)); setTooltip("Reload last opened file."); + updateEnabledStatus(); + mainWindow.getMediator().addKeYSelectionListener(this); + } + + public void updateEnabledStatus() { setEnabled(mainWindow.getRecentFiles() != null && mainWindow.getRecentFiles().getMostRecent() != null); - mainWindow.getMediator().addKeYSelectionListener(this); } public void actionPerformed(ActionEvent e) { diff --git a/key.ui/src/main/java/de/uka/ilkd/key/gui/actions/SettingsTreeModel.java b/key.ui/src/main/java/de/uka/ilkd/key/gui/actions/SettingsTreeModel.java index e9336b37363..31051db3517 100644 --- a/key.ui/src/main/java/de/uka/ilkd/key/gui/actions/SettingsTreeModel.java +++ b/key.ui/src/main/java/de/uka/ilkd/key/gui/actions/SettingsTreeModel.java @@ -12,6 +12,7 @@ import javax.swing.tree.DefaultTreeModel; import de.uka.ilkd.key.gui.smt.OptionContentNode; +import de.uka.ilkd.key.proof.Proof; import de.uka.ilkd.key.settings.ChoiceSettings; import de.uka.ilkd.key.settings.ProofIndependentSettings; import de.uka.ilkd.key.settings.ProofSettings; @@ -19,6 +20,9 @@ import org.key_project.logic.Choice; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + /** * * A swing model for {@link ShowActiveSettingsAction}. @@ -28,18 +32,21 @@ public class SettingsTreeModel extends DefaultTreeModel { + private static final Logger LOGGER = LoggerFactory.getLogger(SettingsTreeModel.class); + private static final long serialVersionUID = -3282304543262262159L; private final ProofSettings proofSettings; private final ProofIndependentSettings independentSettings; + private final Proof proof; private OptionContentNode tacletOptionsItem; - public SettingsTreeModel(ProofSettings proofSettings, - ProofIndependentSettings independentSettings) { + public SettingsTreeModel(Proof proof) { super(new DefaultMutableTreeNode("All Settings")); - this.proofSettings = proofSettings; - this.independentSettings = independentSettings; + this.proof = proof; + this.proofSettings = proof == null ? null : proof.getSettings(); + this.independentSettings = ProofIndependentSettings.DEFAULT_INSTANCE; generateTree(); } @@ -56,7 +63,6 @@ private void generateTree() { "These are the proof dependent settings."); root.add(proofSettingsNode); - // ChoiceSettings choiceSettings = proofSettings.getChoiceSettings(); ChoiceSettings choiceSettings = proofSettings.getChoiceSettings(); tacletOptionsItem = generateTableNode("Taclet Options", choiceSettings); proofSettingsNode.add(tacletOptionsItem); @@ -99,8 +105,23 @@ public JComponent getStartComponent() { private Properties getChoicesAsProperties(ChoiceSettings settings) { Properties prop = new Properties(); - for (Choice choice : settings.getDefaultChoicesAsSet()) { + // Issue https://github.com/KeYProject/key/issues/3934 revealed a bug that the + // choices in proof settings were inconsistent with the actual settings the proof uses + // (determined by initConfig). We use the authorative source here and log inconsistencies + // for + // bug finding + + // settings.getDefaultChoicesAsSet() + for (Choice choice : proof.getInitConfig().getActivatedChoices()) { prop.put(choice.category(), choice.name()); + + final String choiceName = settings.getDefaultChoices().get(choice.category()); + if (choiceName != null && !choiceName.equals(choice.name().toString())) { + LOGGER.warn("Inconsistent proof settings for taclet option " + choice.category()); + } else if (choiceName == null) { + LOGGER.warn("Taclet option active in proof but unknown by its choice settings " + + choice.category()); + } } return prop; diff --git a/key.ui/src/main/java/de/uka/ilkd/key/gui/actions/ShowActiveSettingsAction.java b/key.ui/src/main/java/de/uka/ilkd/key/gui/actions/ShowActiveSettingsAction.java index 40d266773b2..dd6f1c9a7b0 100644 --- a/key.ui/src/main/java/de/uka/ilkd/key/gui/actions/ShowActiveSettingsAction.java +++ b/key.ui/src/main/java/de/uka/ilkd/key/gui/actions/ShowActiveSettingsAction.java @@ -14,8 +14,6 @@ import de.uka.ilkd.key.gui.MainWindow; import de.uka.ilkd.key.gui.fonticons.IconFactory; import de.uka.ilkd.key.gui.smt.OptionContentNode; -import de.uka.ilkd.key.settings.ProofIndependentSettings; -import de.uka.ilkd.key.settings.ProofSettings; /** * for debugging - opens a window with the settings from current Proof and the default settings @@ -36,11 +34,7 @@ public void actionPerformed(ActionEvent e) { } private ViewSettingsDialog showDialog() { - ProofSettings settings = - (getMediator().getSelectedProof() == null) ? null - : getMediator().getSelectedProof().getSettings(); - SettingsTreeModel model = - new SettingsTreeModel(settings, ProofIndependentSettings.DEFAULT_INSTANCE); + SettingsTreeModel model = new SettingsTreeModel(getMediator().getSelectedProof()); ViewSettingsDialog dialog = new ViewSettingsDialog(model, model.getStartComponent()); dialog.setTitle("All active settings"); dialog.setLocationRelativeTo(mainWindow); diff --git a/key.ui/src/main/java/de/uka/ilkd/key/gui/fonticons/IconFactory.java b/key.ui/src/main/java/de/uka/ilkd/key/gui/fonticons/IconFactory.java index bd5006b3a56..d3503a96fcc 100644 --- a/key.ui/src/main/java/de/uka/ilkd/key/gui/fonticons/IconFactory.java +++ b/key.ui/src/main/java/de/uka/ilkd/key/gui/fonticons/IconFactory.java @@ -169,7 +169,7 @@ public final class IconFactory { private static final Image keyLogo = getImage("images/key-color.png"); private static final Image keyLogoShadow = getImage("images/key-shadow.png"); // The following should be updated with every major version step. - private static final Image keyVersionLogo = getImage("images/key-shadow-2.12.png"); + private static final Image keyVersionLogo = getImage("images/key-shadow-3.0.png"); private static final Image keyLogoSmall = getImage("images/key-color-icon-square.gif"); private static final Image oneStepSimplifier = getImage("images/toolbar/oneStepSimplifier.png"); diff --git a/key.ui/src/main/java/de/uka/ilkd/key/gui/keyshortcuts/KeyStrokeSettings.java b/key.ui/src/main/java/de/uka/ilkd/key/gui/keyshortcuts/KeyStrokeSettings.java index b1f617a2a7b..0cdfefc4741 100644 --- a/key.ui/src/main/java/de/uka/ilkd/key/gui/keyshortcuts/KeyStrokeSettings.java +++ b/key.ui/src/main/java/de/uka/ilkd/key/gui/keyshortcuts/KeyStrokeSettings.java @@ -196,7 +196,6 @@ KeyStroke getKeyStroke(String key, KeyStroke defaultValue) { } public void save() { - LOGGER.info("Save keyboard shortcuts to: {}", SETTINGS_FILE.toAbsolutePath()); try { Files.createDirectories(SETTINGS_FILE.getParent()); LOGGER.info("Save keyboard shortcuts to: {}", SETTINGS_FILE.toAbsolutePath()); diff --git a/key.ui/src/main/java/de/uka/ilkd/key/gui/prooftree/ProofTreeView.java b/key.ui/src/main/java/de/uka/ilkd/key/gui/prooftree/ProofTreeView.java index 9852ef0119d..8e5bb4ea167 100644 --- a/key.ui/src/main/java/de/uka/ilkd/key/gui/prooftree/ProofTreeView.java +++ b/key.ui/src/main/java/de/uka/ilkd/key/gui/prooftree/ProofTreeView.java @@ -1472,7 +1472,7 @@ public Component getTreeCellRendererComponent(JTree tree, Object value, boolean setBorder(BorderFactory.createLineBorder(style.border)); } else { // set default - setBorder(BorderFactory.createLineBorder(UIManager.getColor("Panel.background"))); + setBorder(null); } setFont(getFont().deriveFont(Font.PLAIN)); diff --git a/key.ui/src/main/java/de/uka/ilkd/key/gui/tacletmatch/TacletMatchDialog.java b/key.ui/src/main/java/de/uka/ilkd/key/gui/tacletmatch/TacletMatchDialog.java index 459e373774e..4fae38b9035 100644 --- a/key.ui/src/main/java/de/uka/ilkd/key/gui/tacletmatch/TacletMatchDialog.java +++ b/key.ui/src/main/java/de/uka/ilkd/key/gui/tacletmatch/TacletMatchDialog.java @@ -162,7 +162,7 @@ private JComponent createInstantiationPanel() { alternatives = new JTabbedPane(); for (int i = 0; i < model.length; i++) { - alternatives.addTab("Match " + (i + 1) + " of " + model.length, buildAlternative(i)); + alternatives.addTab("Match " + (i + 1), buildAlternative(i)); } alternatives.addChangeListener(e -> refreshStatus(current())); return alternatives; @@ -181,8 +181,8 @@ private JComponent createFooter() { ButtonListener listener = new ButtonListener(); cancelButton.addActionListener(listener); applyButton.addActionListener(listener); - buttons.add(cancelButton); buttons.add(applyButton); + buttons.add(cancelButton); footer.add(buttons, BorderLayout.EAST); setStatus(model[current()].getStatusString()); diff --git a/key.ui/src/main/resources/de/uka/ilkd/key/gui/THIRD_PARTY_LICENSES.txt b/key.ui/src/main/resources/de/uka/ilkd/key/gui/THIRD_PARTY_LICENSES.txt index 777b1ff1bb0..d2c52785cc5 100644 --- a/key.ui/src/main/resources/de/uka/ilkd/key/gui/THIRD_PARTY_LICENSES.txt +++ b/key.ui/src/main/resources/de/uka/ilkd/key/gui/THIRD_PARTY_LICENSES.txt @@ -1,71 +1,232 @@ -=============================================================================== -Font Awesome 5.9 -Icons — CC BY 4.0 License -https://fontawesome.com/license/free - -=============================================================================== -Docking Frames 1.1.3p1 -Project URL: http://www.docking-frames.org/ -License: LGPL 2.1 - https://www.gnu.org/licenses/old-licenses/lgpl-2.1.en.html - -=============================================================================== -Group: antlr Name: antlr Version: 2.7.7 -POM Project URL: http://www.antlr.org/ -POM License: BSD License - http://www.antlr.org/license.html - -=============================================================================== -Group: com.atlassian.commonmark Name: commonmark Version: 0.15.2 -POM License: Apache License, Version 2.0 - https://www.apache.org/licenses/LICENSE-2.0.txt -POM License: Atlassian Customer Agreement - https://www.atlassian.com/legal/customer-agreement -POM License: BSD 2-Clause License - http://opensource.org/licenses/BSD-2-Clause - -=============================================================================== -4. Group: com.atlassian.commonmark Name: commonmark-ext-gfm-tables Version: 0.15.2 -POM License: Apache License, Version 2.0 - https://www.apache.org/licenses/LICENSE-2.0.txt -POM License: Atlassian Customer Agreement - https://www.atlassian.com/legal/customer-agreement -POM License: BSD 2-Clause License - http://opensource.org/licenses/BSD-2-Clause - -=============================================================================== -Group: com.miglayout Name: miglayout-core Version: 5.2 +Dependency and their licenses of KeY +This report was generated at Fri Jul 17 16:07:09 CEST 2026 . + +--- + +1. Group: ch.qos.logback Name: logback-classic Version: 1.5.37 + +Manifest Project URL: http://www.qos.ch +POM License: EPL-2.0 - https://www.eclipse.org/legal/epl-v20.html +POM License: LGPL-2.1-only - https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html + +2. Group: ch.qos.logback Name: logback-core Version: 1.5.37 + +Manifest Project URL: http://www.qos.ch +POM License: EPL-2.0 - https://www.eclipse.org/legal/epl-v20.html +POM License: LGPL-2.1-only - https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html + +3. Group: com.formdev Name: flatlaf Version: 3.7.1 + +POM Project URL: https://github.com/JFormDesigner/FlatLaf +POM License: The Apache License, Version 2.0 - https://www.apache.org/licenses/LICENSE-2.0.txt +Embedded license files: flatlaf-3.7.1.jar/META-INF/LICENSE + +4. Group: com.google.errorprone Name: error_prone_annotations Version: 2.41.0 + +Manifest Project URL: https://errorprone.info/error_prone_annotations +Manifest License: Apache 2.0 +POM License: Apache 2.0 - http://www.apache.org/licenses/LICENSE-2.0.txt + +5. Group: com.google.guava Name: failureaccess Version: 1.0.3 + +Manifest Project URL: https://github.com/google/guava/ +POM License: Apache License, Version 2.0 - http://www.apache.org/licenses/LICENSE-2.0.txt +Embedded license files: failureaccess-1.0.3.jar/META-INF/LICENSE + +6. Group: com.google.guava Name: guava Version: 33.5.0-jre + +Manifest Project URL: https://github.com/google/guava/ +POM Project URL: https://github.com/google/guava +POM License: Apache License, Version 2.0 - http://www.apache.org/licenses/LICENSE-2.0.txt + +Embedded license files: guava-33.5.0-jre.jar/META-INF/LICENSE + +7. Group: com.google.guava Name: listenablefuture Version: 9999.0-empty-to-avoid-conflict-with-guava + +POM License: The Apache Software License, Version 2.0 - http://www.apache.org/licenses/LICENSE-2.0.txt + +8. Group: com.google.j2objc Name: j2objc-annotations Version: 3.1 + +POM Project URL: https://github.com/google/j2objc/ +POM License: Apache License, Version 2.0 - http://www.apache.org/licenses/LICENSE-2.0.txt + +9. Group: com.ibm.icu Name: icu4j Version: 75.1 + +POM License: Unicode-3.0 - https://raw.githubusercontent.com/unicode-org/icu/main/LICENSE +Embedded license files: icu4j-75.1.jar/LICENSE + +10. Group: com.miglayout Name: miglayout-core Version: 11.4.3 + +POM Project URL: http://www.miglayout.com/ POM License: BSD - http://www.debian.org/misc/bsd.license -=============================================================================== -Group: com.miglayout Name: miglayout-swing Version: 5.2 +11. Group: com.miglayout Name: miglayout-swing Version: 11.4.3 + +POM Project URL: http://www.miglayout.com/ POM License: BSD - http://www.debian.org/misc/bsd.license -=============================================================================== -Group: javax.activation Name: javax.activation-api Version: 1.2.0 -Manifest Project URL: http://www.oracle.com -POM License: CDDL/GPLv2+CE - https://github.com/javaee/activation/blob/master/LICENSE.txt - -=============================================================================== -Group: javax.xml.bind Name: jaxb-api Version: 2.4.0-b180830.0359 -Manifest Project URL: http://www.oracle.com/ -POM License: CDDL 1.1 - https://oss.oracle.com/licenses/CDDL+GPL-1.1 -POM License: GPL2 w/ CPE - https://oss.oracle.com/licenses/CDDL+GPL-1.1 - -=============================================================================== -Group: net.java.dev.javacc Name: javacc Version: 4.0 -POM Project URL: http://javacc.dev.java.net/ -POM License: The BSD License - http://www.opensource.org/licenses/bsd-license.html - -=============================================================================== -Group: org.antlr Name: ST4 Version: 4.0.8 -POM Project URL: http://www.stringtemplate.org -POM License: BSD licence - http://antlr.org/license.html +12. Group: com.squareup Name: javapoet Version: 1.13.0 -=============================================================================== -Group: org.antlr Name: antlr Version: 3.5.2 -POM License: BSD licence - http://antlr.org/license.html +POM Project URL: http://github.com/square/javapoet/ +POM License: Apache 2.0 - http://www.apache.org/licenses/LICENSE-2.0.txt + +13. Group: commons-io Name: commons-io Version: 2.16.1 + +Project URL: https://commons.apache.org/proper/commons-io/ +POM License: Apache-2.0 - https://www.apache.org/licenses/LICENSE-2.0.txt + +Embedded license files: commons-io-2.16.1.jar/META-INF/LICENSE.txt +commons-io-2.16.1.jar/META-INF/NOTICE.txt + +14. Group: de.unruh Name: java-patterns Version: 0.1.0 + +POM Project URL: https://github.com/dominique-unruh/java-patterns +POM License: MIT - https://raw.githubusercontent.com/dominique-unruh/java-patterns/655c7cc5c71eb9ea0fcfee0ae797269e61845d8a/LICENSE + +15. Group: de.unruh Name: scala-isabelle_2.13 Version: 0.4.5 + +POM Project URL: https://dominique-unruh.github.io/scala-isabelle +POM License: Isabelle - https://raw.githubusercontent.com/dominique-unruh/scala-isabelle/5f28d8e6248f39dd7a31649d92c9850498e3985c/COPYRIGHT.Isabelle +POM License: MIT - https://raw.githubusercontent.com/dominique-unruh/scala-isabelle/5f28d8e6248f39dd7a31649d92c9850498e3985c/LICENSE + +16. Group: info.picocli Name: picocli Version: 4.7.7 + +POM Project URL: https://picocli.info +POM License: The Apache Software License, version 2.0 - http://www.apache.org/licenses/LICENSE-2.0.txt + +17. Group: jakarta.json Name: jakarta.json-api Version: 2.1.3 + +Manifest Project URL: https://www.eclipse.org +POM Project URL: https://github.com/eclipse-ee4j/jsonp +POM License: Eclipse Public License 2.0 - https://projects.eclipse.org/license/epl-2.0 +POM License: GNU General Public License, version 2 with the GNU Classpath Exception - https://projects.eclipse.org/license/secondary-gpl-2.0-cp + +Embedded license files: jakarta.json-api-2.1.3.jar/META-INF/LICENSE.md + +18. Group: org.antlr Name: ST4 Version: 4.3.4 + +POM License: The BSD License - http://www.antlr.org/license.html + +19. Group: org.antlr Name: antlr-runtime Version: 3.5.3 -=============================================================================== -Group: org.antlr Name: antlr-runtime Version: 3.5.2 POM Project URL: http://www.antlr.org POM License: BSD licence - http://antlr.org/license.html -=============================================================================== -Group: org.jetbrains Name: annotations Version: 20.1.0 +20. Group: org.antlr Name: antlr4-runtime Version: 4.13.2 + +Manifest Project URL: https://www.antlr.org/ +POM License: BSD-3-Clause - https://www.antlr.org/license.html + +21. Group: org.apache.commons Name: commons-lang3 Version: 3.14.0 + +Project URL: https://commons.apache.org/proper/commons-lang/ +POM License: Apache-2.0 - https://www.apache.org/licenses/LICENSE-2.0.txt + +Embedded license files: commons-lang3-3.14.0.jar/META-INF/LICENSE.txt + +22. Group: org.apache.commons Name: commons-text Version: 1.12.0 + +Project URL: https://commons.apache.org/proper/commons-text +POM License: Apache-2.0 - https://www.apache.org/licenses/LICENSE-2.0.txt + +23. Group: org.checkerframework Name: checker-qual Version: 3.53.0 + +Manifest License: MIT +POM Project URL: https://checkerframework.org/ +POM License: The MIT License - http://opensource.org/licenses/MIT + +24. Group: org.javassist Name: javassist Version: 3.30.2-GA + +POM Project URL: https://www.javassist.org/ +POM License: Apache License 2.0 - https://www.apache.org/licenses/LICENSE-2.0 +POM License: LGPL 2.1 - https://www.gnu.org/licenses/lgpl-2.1.html +POM License: MPL 1.1 - https://www.mozilla.org/en-US/MPL/1.1/ + +25. Group: org.jetbrains Name: annotations Version: 24.1.0 + POM Project URL: https://github.com/JetBrains/java-annotations POM License: The Apache Software License, Version 2.0 - https://www.apache.org/licenses/LICENSE-2.0.txt +26. Group: org.jspecify Name: jspecify Version: 1.0.0 + +Manifest Project URL: https://jspecify.dev/docs/start-here +POM Project URL: http://jspecify.org/ +POM License: The Apache License, Version 2.0 - http://www.apache.org/licenses/LICENSE-2.0.txt + +27. Group: org.junit Name: junit-bom Version: 5.14.2 + +POM Project URL: https://junit.org/ +POM License: Eclipse Public License v2.0 - https://www.eclipse.org/legal/epl-v20.html + +28. Group: org.junit.jupiter Name: junit-jupiter-api Version: 5.14.2 + +POM Project URL: https://junit.org/ +POM License: Eclipse Public License v2.0 - https://www.eclipse.org/legal/epl-v20.html + + +29. Group: org.junit.jupiter Name: junit-jupiter-engine Version: 5.14.2 + +POM Project URL: https://junit.org/ +POM License: Eclipse Public License v2.0 - https://www.eclipse.org/legal/epl-v20.html + +30. Group: org.junit.platform Name: junit-platform-commons Version: 1.14.2 + +POM Project URL: https://junit.org/ +POM License: Eclipse Public License v2.0 - https://www.eclipse.org/legal/epl-v20.html + + +31. Group: org.junit.platform Name: junit-platform-engine Version: 1.14.2 + +POM Project URL: https://junit.org/ +POM License: Eclipse Public License v2.0 - https://www.eclipse.org/legal/epl-v20.html + + +32. Group: org.key-project.proofjava Name: javaparser-core Version: 3.28.0-K13.5 + +Manifest Project URL: https://javaparser.org +Manifest License: Apache License, Version 2.0 +Manifest License: GNU Lesser General Public License + +POM Project URL: https://github.com/javaparser +POM License: Apache License, Version 2.0 - http://www.apache.org/licenses/LICENSE-2.0.txt +POM License: GNU Lesser General Public License - http://www.gnu.org/licenses/lgpl-3.0.html + +33. Group: org.key-project.proofjava Name: javaparser-core-serialization Version: 3.28.0-K13.5 + +POM Project URL: https://github.com/javaparser +POM License: Apache License, Version 2.0 - http://www.apache.org/licenses/LICENSE-2.0.txt +POM License: GNU Lesser General Public License - http://www.gnu.org/licenses/lgpl-3.0.html + +34. Group: org.key-project.proofjava Name: javaparser-symbol-solver-core Version: 3.28.0-K13.5 + +POM Project URL: https://github.com/javaparser +POM License: Apache License, Version 2.0 - http://www.apache.org/licenses/LICENSE-2.0.txt +POM License: GNU Lesser General Public License - http://www.gnu.org/licenses/lgpl-3.0.html + +35. Group: org.log4s Name: log4s_2.13 Version: 1.10.0 + +POM Project URL: http://log4s.org/ +POM License: Apache License, Version 2.0 - http://www.apache.org/licenses/LICENSE-2.0.txt + +36. Group: org.opentest4j Name: opentest4j Version: 1.3.0 + +Manifest License: The Apache License, Version 2.0 +POM Project URL: https://github.com/ota4j-team/opentest4j +POM License: The Apache License, Version 2.0 - https://www.apache.org/licenses/LICENSE-2.0.txt + +Embedded license files: opentest4j-1.3.0.jar/META-INF/LICENSE + +37. Group: org.scala-lang Name: scala-library Version: 2.13.14 + +POM Project URL: https://www.scala-lang.org/ +POM License: Apache-2.0 - https://www.apache.org/licenses/LICENSE-2.0 + +38. Group: org.scalaz Name: scalaz-core_2.13 Version: 7.3.8 + +POM Project URL: http://scalaz.org +POM License: BSD-style - https://opensource.org/licenses/BSD-3-Clause + +39. Group: org.slf4j Name: slf4j-api Version: 2.0.18 +Project URL: http://www.slf4j.org +POM License: MIT - https://opensource.org/license/mit diff --git a/key.ui/src/main/resources/de/uka/ilkd/key/gui/images/key-shadow-3.0.png b/key.ui/src/main/resources/de/uka/ilkd/key/gui/images/key-shadow-3.0.png new file mode 100644 index 00000000000..d900bee497e Binary files /dev/null and b/key.ui/src/main/resources/de/uka/ilkd/key/gui/images/key-shadow-3.0.png differ diff --git a/key.util/src/main/java/org/key_project/util/java/IOUtil.java b/key.util/src/main/java/org/key_project/util/java/IOUtil.java index ea7caf8d9b3..1d866ac0fd1 100644 --- a/key.util/src/main/java/org/key_project/util/java/IOUtil.java +++ b/key.util/src/main/java/org/key_project/util/java/IOUtil.java @@ -908,11 +908,11 @@ public static String safePath(Path path) { public static String safePathRelativeTo(Path source, Path basePath) { if (Objects.equals(source.getRoot(), basePath.getRoot())) { // required on Windows - var abs = source.toAbsolutePath(); + var abs = source.toAbsolutePath().normalize(); return safePath(basePath.relativize(abs)); } else { // fallback: return absolute path - return safePath(source.toAbsolutePath()); + return safePath(source.toAbsolutePath().normalize()); } } } diff --git a/keyext.isabelletranslation/src/main/java/org/key_project/isabelletranslation/IsabelleTranslationSettings.java b/keyext.isabelletranslation/src/main/java/org/key_project/isabelletranslation/IsabelleTranslationSettings.java index 0e3674527d5..d63f7ffadc7 100644 --- a/keyext.isabelletranslation/src/main/java/org/key_project/isabelletranslation/IsabelleTranslationSettings.java +++ b/keyext.isabelletranslation/src/main/java/org/key_project/isabelletranslation/IsabelleTranslationSettings.java @@ -156,7 +156,7 @@ public void save() { public void readSettings(Properties props) { isabellePath = Path.of(props.getProperty(isabellePathKey)); Path newTranslationPath = Path.of(props.getProperty(translationPathKey)); - if (newTranslationPath != translationPath) { + if (!newTranslationPath.equals(translationPath)) { translationPath = newTranslationPath; createSessionFiles(); } @@ -180,7 +180,7 @@ public void readSettings(@NonNull Configuration props) { Path newTranslationPath = Path.of(props.getString(translationPathKey, translationPath.toString())); - if (newTranslationPath != translationPath) { + if (!newTranslationPath.equals(translationPath)) { translationPath = newTranslationPath; createSessionFiles(); }