./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/nla-digbench-scaling/fermat1-ll_valuebound5.c --full-output -ea --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 03d7b7b3 Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -ea -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/nla-digbench-scaling/fermat1-ll_valuebound5.c -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness.graphml --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash ee7efdbf8e082fecbcf7a0b7187f01592d4dffd310592a1175678347e3e281b9 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 17:25:00,046 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 17:25:00,048 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 17:25:00,080 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 17:25:00,080 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 17:25:00,082 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 17:25:00,083 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 17:25:00,085 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 17:25:00,087 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 17:25:00,090 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 17:25:00,090 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 17:25:00,091 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 17:25:00,092 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 17:25:00,093 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 17:25:00,094 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 17:25:00,097 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 17:25:00,098 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 17:25:00,098 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 17:25:00,100 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 17:25:00,105 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 17:25:00,106 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 17:25:00,107 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 17:25:00,108 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 17:25:00,108 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 17:25:00,113 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 17:25:00,113 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 17:25:00,113 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 17:25:00,114 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 17:25:00,115 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 17:25:00,115 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 17:25:00,115 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 17:25:00,116 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 17:25:00,117 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 17:25:00,118 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 17:25:00,119 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 17:25:00,119 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 17:25:00,119 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 17:25:00,119 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 17:25:00,120 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 17:25:00,120 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 17:25:00,120 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 17:25:00,121 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2022-02-20 17:25:00,145 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 17:25:00,145 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 17:25:00,146 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 17:25:00,146 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 17:25:00,146 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 17:25:00,146 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 17:25:00,147 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 17:25:00,147 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 17:25:00,147 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 17:25:00,147 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 17:25:00,148 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 17:25:00,148 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 17:25:00,148 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 17:25:00,148 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 17:25:00,149 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-20 17:25:00,149 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 17:25:00,149 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-20 17:25:00,149 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 17:25:00,149 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-20 17:25:00,149 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 17:25:00,149 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-20 17:25:00,149 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 17:25:00,150 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 17:25:00,150 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 17:25:00,150 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 17:25:00,150 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 17:25:00,150 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 17:25:00,150 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-20 17:25:00,151 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 17:25:00,151 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 17:25:00,151 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-02-20 17:25:00,151 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-02-20 17:25:00,151 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-20 17:25:00,152 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness.graphml Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> ee7efdbf8e082fecbcf7a0b7187f01592d4dffd310592a1175678347e3e281b9 [2022-02-20 17:25:00,287 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 17:25:00,305 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 17:25:00,307 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 17:25:00,308 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 17:25:00,309 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 17:25:00,309 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/nla-digbench-scaling/fermat1-ll_valuebound5.c [2022-02-20 17:25:00,373 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/426067849/2198f335227d48bb9f89083eca7821f7/FLAGac8eee24f [2022-02-20 17:25:00,708 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 17:25:00,709 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/nla-digbench-scaling/fermat1-ll_valuebound5.c [2022-02-20 17:25:00,713 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/426067849/2198f335227d48bb9f89083eca7821f7/FLAGac8eee24f [2022-02-20 17:25:00,723 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/426067849/2198f335227d48bb9f89083eca7821f7 [2022-02-20 17:25:00,725 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 17:25:00,726 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 17:25:00,727 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 17:25:00,727 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 17:25:00,729 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 17:25:00,730 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 05:25:00" (1/1) ... [2022-02-20 17:25:00,731 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5edcaa0e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:25:00, skipping insertion in model container [2022-02-20 17:25:00,731 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 05:25:00" (1/1) ... [2022-02-20 17:25:00,735 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 17:25:00,743 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 17:25:00,860 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/nla-digbench-scaling/fermat1-ll_valuebound5.c[535,548] [2022-02-20 17:25:00,875 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 17:25:00,880 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 17:25:00,887 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/nla-digbench-scaling/fermat1-ll_valuebound5.c[535,548] [2022-02-20 17:25:00,895 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 17:25:00,903 INFO L208 MainTranslator]: Completed translation [2022-02-20 17:25:00,903 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:25:00 WrapperNode [2022-02-20 17:25:00,903 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 17:25:00,904 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 17:25:00,904 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 17:25:00,904 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 17:25:00,909 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:25:00" (1/1) ... [2022-02-20 17:25:00,913 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:25:00" (1/1) ... [2022-02-20 17:25:00,928 INFO L137 Inliner]: procedures = 14, calls = 15, calls flagged for inlining = 2, calls inlined = 2, statements flattened = 56 [2022-02-20 17:25:00,929 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 17:25:00,929 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 17:25:00,929 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 17:25:00,929 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 17:25:00,934 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:25:00" (1/1) ... [2022-02-20 17:25:00,934 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:25:00" (1/1) ... [2022-02-20 17:25:00,935 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:25:00" (1/1) ... [2022-02-20 17:25:00,935 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:25:00" (1/1) ... [2022-02-20 17:25:00,938 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:25:00" (1/1) ... [2022-02-20 17:25:00,941 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:25:00" (1/1) ... [2022-02-20 17:25:00,942 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:25:00" (1/1) ... [2022-02-20 17:25:00,943 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 17:25:00,943 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 17:25:00,944 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 17:25:00,944 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 17:25:00,946 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:25:00" (1/1) ... [2022-02-20 17:25:00,951 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 17:25:00,959 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:25:00,993 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-02-20 17:25:01,007 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-02-20 17:25:01,022 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 17:25:01,023 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-02-20 17:25:01,023 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-02-20 17:25:01,023 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 17:25:01,023 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 17:25:01,023 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 17:25:01,023 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-02-20 17:25:01,023 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-02-20 17:25:01,059 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 17:25:01,060 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 17:25:01,181 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 17:25:01,186 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 17:25:01,186 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-02-20 17:25:01,187 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 05:25:01 BoogieIcfgContainer [2022-02-20 17:25:01,188 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 17:25:01,189 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 17:25:01,189 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 17:25:01,191 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 17:25:01,207 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 05:25:00" (1/3) ... [2022-02-20 17:25:01,208 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@62487918 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 05:25:01, skipping insertion in model container [2022-02-20 17:25:01,208 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:25:00" (2/3) ... [2022-02-20 17:25:01,209 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@62487918 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 05:25:01, skipping insertion in model container [2022-02-20 17:25:01,209 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 05:25:01" (3/3) ... [2022-02-20 17:25:01,210 INFO L111 eAbstractionObserver]: Analyzing ICFG fermat1-ll_valuebound5.c [2022-02-20 17:25:01,213 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 17:25:01,214 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-02-20 17:25:01,276 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 17:25:01,281 INFO L339 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mLoopAccelerationTechnique=FAST_UPR [2022-02-20 17:25:01,281 INFO L340 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-02-20 17:25:01,311 INFO L276 IsEmpty]: Start isEmpty. Operand has 32 states, 20 states have (on average 1.6) internal successors, (32), 21 states have internal predecessors, (32), 8 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 17:25:01,315 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-02-20 17:25:01,321 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:25:01,322 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:25:01,323 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:25:01,326 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:25:01,329 INFO L85 PathProgramCache]: Analyzing trace with hash -2017412251, now seen corresponding path program 1 times [2022-02-20 17:25:01,336 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:25:01,341 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [99028985] [2022-02-20 17:25:01,342 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:25:01,343 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:25:01,456 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:25:01,502 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 2 [2022-02-20 17:25:01,512 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:25:01,528 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-02-20 17:25:01,529 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-02-20 17:25:01,529 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} assume true; {36#false} is VALID [2022-02-20 17:25:01,530 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {35#true} #87#return; {36#false} is VALID [2022-02-20 17:25:01,530 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 8 [2022-02-20 17:25:01,536 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:25:01,546 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-02-20 17:25:01,546 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-02-20 17:25:01,547 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} assume true; {36#false} is VALID [2022-02-20 17:25:01,547 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {36#false} #89#return; {36#false} is VALID [2022-02-20 17:25:01,547 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 13 [2022-02-20 17:25:01,552 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:25:01,560 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-02-20 17:25:01,560 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-02-20 17:25:01,561 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} assume true; {36#false} is VALID [2022-02-20 17:25:01,561 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {36#false} #91#return; {36#false} is VALID [2022-02-20 17:25:01,562 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 18 [2022-02-20 17:25:01,571 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:25:01,578 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-02-20 17:25:01,579 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-02-20 17:25:01,580 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} assume true; {36#false} is VALID [2022-02-20 17:25:01,580 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {36#false} #93#return; {36#false} is VALID [2022-02-20 17:25:01,580 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3); {35#true} is VALID [2022-02-20 17:25:01,581 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_~A~0#1, main_~R~0#1, main_~u~0#1, main_~v~0#1, main_~r~0#1;havoc main_~A~0#1;havoc main_~R~0#1;havoc main_~u~0#1;havoc main_~v~0#1;havoc main_~r~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~A~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {35#true} is VALID [2022-02-20 17:25:01,581 INFO L272 TraceCheckUtils]: 2: Hoare triple {35#true} call assume_abort_if_not((if main_~A~0#1 >= 0 && main_~A~0#1 <= 5 then 1 else 0)); {35#true} is VALID [2022-02-20 17:25:01,581 INFO L290 TraceCheckUtils]: 3: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-02-20 17:25:01,582 INFO L290 TraceCheckUtils]: 4: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-02-20 17:25:01,582 INFO L290 TraceCheckUtils]: 5: Hoare triple {36#false} assume true; {36#false} is VALID [2022-02-20 17:25:01,582 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {36#false} {35#true} #87#return; {36#false} is VALID [2022-02-20 17:25:01,583 INFO L290 TraceCheckUtils]: 7: Hoare triple {36#false} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~R~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {36#false} is VALID [2022-02-20 17:25:01,584 INFO L272 TraceCheckUtils]: 8: Hoare triple {36#false} call assume_abort_if_not((if main_~R~0#1 >= 0 && main_~R~0#1 <= 5 then 1 else 0)); {35#true} is VALID [2022-02-20 17:25:01,584 INFO L290 TraceCheckUtils]: 9: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-02-20 17:25:01,584 INFO L290 TraceCheckUtils]: 10: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-02-20 17:25:01,585 INFO L290 TraceCheckUtils]: 11: Hoare triple {36#false} assume true; {36#false} is VALID [2022-02-20 17:25:01,585 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {36#false} {36#false} #89#return; {36#false} is VALID [2022-02-20 17:25:01,585 INFO L272 TraceCheckUtils]: 13: Hoare triple {36#false} call assume_abort_if_not((if (main_~R~0#1 - 1) * (main_~R~0#1 - 1) < main_~A~0#1 then 1 else 0)); {35#true} is VALID [2022-02-20 17:25:01,585 INFO L290 TraceCheckUtils]: 14: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-02-20 17:25:01,586 INFO L290 TraceCheckUtils]: 15: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-02-20 17:25:01,586 INFO L290 TraceCheckUtils]: 16: Hoare triple {36#false} assume true; {36#false} is VALID [2022-02-20 17:25:01,586 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {36#false} {36#false} #91#return; {36#false} is VALID [2022-02-20 17:25:01,586 INFO L272 TraceCheckUtils]: 18: Hoare triple {36#false} call assume_abort_if_not((if 1 == (if main_~A~0#1 < 0 && 0 != main_~A~0#1 % 2 then main_~A~0#1 % 2 - 2 else main_~A~0#1 % 2) then 1 else 0)); {35#true} is VALID [2022-02-20 17:25:01,587 INFO L290 TraceCheckUtils]: 19: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-02-20 17:25:01,587 INFO L290 TraceCheckUtils]: 20: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-02-20 17:25:01,587 INFO L290 TraceCheckUtils]: 21: Hoare triple {36#false} assume true; {36#false} is VALID [2022-02-20 17:25:01,588 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {36#false} {36#false} #93#return; {36#false} is VALID [2022-02-20 17:25:01,588 INFO L290 TraceCheckUtils]: 23: Hoare triple {36#false} main_~u~0#1 := 1 + 2 * main_~R~0#1;main_~v~0#1 := 1;main_~r~0#1 := main_~R~0#1 * main_~R~0#1 - main_~A~0#1; {36#false} is VALID [2022-02-20 17:25:01,588 INFO L290 TraceCheckUtils]: 24: Hoare triple {36#false} assume !false; {36#false} is VALID [2022-02-20 17:25:01,588 INFO L272 TraceCheckUtils]: 25: Hoare triple {36#false} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {36#false} is VALID [2022-02-20 17:25:01,588 INFO L290 TraceCheckUtils]: 26: Hoare triple {36#false} ~cond := #in~cond; {36#false} is VALID [2022-02-20 17:25:01,589 INFO L290 TraceCheckUtils]: 27: Hoare triple {36#false} assume 0 == ~cond; {36#false} is VALID [2022-02-20 17:25:01,589 INFO L290 TraceCheckUtils]: 28: Hoare triple {36#false} assume !false; {36#false} is VALID [2022-02-20 17:25:01,589 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-02-20 17:25:01,590 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:25:01,590 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [99028985] [2022-02-20 17:25:01,591 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [99028985] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:25:01,591 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:25:01,591 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 17:25:01,592 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2144418688] [2022-02-20 17:25:01,593 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:25:01,596 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 1 states have call predecessors, (4), 2 states have call successors, (4) Word has length 29 [2022-02-20 17:25:01,598 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:25:01,600 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 1 states have call predecessors, (4), 2 states have call successors, (4) [2022-02-20 17:25:01,637 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:25:01,637 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-20 17:25:01,637 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:25:01,668 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-20 17:25:01,669 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 17:25:01,672 INFO L87 Difference]: Start difference. First operand has 32 states, 20 states have (on average 1.6) internal successors, (32), 21 states have internal predecessors, (32), 8 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 1 states have call predecessors, (4), 2 states have call successors, (4) [2022-02-20 17:25:01,741 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:25:01,742 INFO L93 Difference]: Finished difference Result 61 states and 100 transitions. [2022-02-20 17:25:01,742 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-20 17:25:01,742 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 1 states have call predecessors, (4), 2 states have call successors, (4) Word has length 29 [2022-02-20 17:25:01,742 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:25:01,743 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 1 states have call predecessors, (4), 2 states have call successors, (4) [2022-02-20 17:25:01,749 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 100 transitions. [2022-02-20 17:25:01,750 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 1 states have call predecessors, (4), 2 states have call successors, (4) [2022-02-20 17:25:01,755 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 100 transitions. [2022-02-20 17:25:01,755 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 100 transitions. [2022-02-20 17:25:01,853 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 100 edges. 100 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:25:01,858 INFO L225 Difference]: With dead ends: 61 [2022-02-20 17:25:01,859 INFO L226 Difference]: Without dead ends: 28 [2022-02-20 17:25:01,861 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 14 GetRequests, 14 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 17:25:01,865 INFO L933 BasicCegarLoop]: 40 mSDtfsCounter, 0 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 40 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 17:25:01,869 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 40 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 17:25:01,881 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28 states. [2022-02-20 17:25:01,894 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28 to 28. [2022-02-20 17:25:01,895 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:25:01,895 INFO L82 GeneralOperation]: Start isEquivalent. First operand 28 states. Second operand has 28 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 8 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 17:25:01,896 INFO L74 IsIncluded]: Start isIncluded. First operand 28 states. Second operand has 28 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 8 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 17:25:01,896 INFO L87 Difference]: Start difference. First operand 28 states. Second operand has 28 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 8 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 17:25:01,900 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:25:01,900 INFO L93 Difference]: Finished difference Result 28 states and 36 transitions. [2022-02-20 17:25:01,900 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 36 transitions. [2022-02-20 17:25:01,901 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:25:01,901 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:25:01,901 INFO L74 IsIncluded]: Start isIncluded. First operand has 28 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 8 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 28 states. [2022-02-20 17:25:01,902 INFO L87 Difference]: Start difference. First operand has 28 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 8 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 28 states. [2022-02-20 17:25:01,904 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:25:01,904 INFO L93 Difference]: Finished difference Result 28 states and 36 transitions. [2022-02-20 17:25:01,904 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 36 transitions. [2022-02-20 17:25:01,906 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:25:01,906 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:25:01,906 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:25:01,906 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:25:01,907 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 8 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 17:25:01,909 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 36 transitions. [2022-02-20 17:25:01,910 INFO L78 Accepts]: Start accepts. Automaton has 28 states and 36 transitions. Word has length 29 [2022-02-20 17:25:01,910 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:25:01,910 INFO L470 AbstractCegarLoop]: Abstraction has 28 states and 36 transitions. [2022-02-20 17:25:01,910 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 5.5) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 1 states have call predecessors, (4), 2 states have call successors, (4) [2022-02-20 17:25:01,910 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 36 transitions. [2022-02-20 17:25:01,911 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-02-20 17:25:01,911 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:25:01,911 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:25:01,911 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 17:25:01,912 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:25:01,912 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:25:01,912 INFO L85 PathProgramCache]: Analyzing trace with hash 398101033, now seen corresponding path program 1 times [2022-02-20 17:25:01,912 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:25:01,913 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1913979790] [2022-02-20 17:25:01,913 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:25:01,913 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:25:01,929 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:25:01,930 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1559768451] [2022-02-20 17:25:01,930 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:25:01,930 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:25:01,930 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:25:01,932 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 17:25:01,933 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-02-20 17:25:01,978 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:25:01,980 INFO L263 TraceCheckSpWp]: Trace formula consists of 83 conjuncts, 11 conjunts are in the unsatisfiable core [2022-02-20 17:25:02,003 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:25:02,006 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:25:04,942 INFO L290 TraceCheckUtils]: 0: Hoare triple {237#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3); {237#true} is VALID [2022-02-20 17:25:04,942 INFO L290 TraceCheckUtils]: 1: Hoare triple {237#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_~A~0#1, main_~R~0#1, main_~u~0#1, main_~v~0#1, main_~r~0#1;havoc main_~A~0#1;havoc main_~R~0#1;havoc main_~u~0#1;havoc main_~v~0#1;havoc main_~r~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~A~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {237#true} is VALID [2022-02-20 17:25:04,942 INFO L272 TraceCheckUtils]: 2: Hoare triple {237#true} call assume_abort_if_not((if main_~A~0#1 >= 0 && main_~A~0#1 <= 5 then 1 else 0)); {237#true} is VALID [2022-02-20 17:25:04,942 INFO L290 TraceCheckUtils]: 3: Hoare triple {237#true} ~cond := #in~cond; {237#true} is VALID [2022-02-20 17:25:04,946 INFO L290 TraceCheckUtils]: 4: Hoare triple {237#true} assume !(0 == ~cond); {237#true} is VALID [2022-02-20 17:25:04,946 INFO L290 TraceCheckUtils]: 5: Hoare triple {237#true} assume true; {237#true} is VALID [2022-02-20 17:25:04,946 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {237#true} {237#true} #87#return; {237#true} is VALID [2022-02-20 17:25:04,946 INFO L290 TraceCheckUtils]: 7: Hoare triple {237#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~R~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {237#true} is VALID [2022-02-20 17:25:04,947 INFO L272 TraceCheckUtils]: 8: Hoare triple {237#true} call assume_abort_if_not((if main_~R~0#1 >= 0 && main_~R~0#1 <= 5 then 1 else 0)); {237#true} is VALID [2022-02-20 17:25:04,947 INFO L290 TraceCheckUtils]: 9: Hoare triple {237#true} ~cond := #in~cond; {237#true} is VALID [2022-02-20 17:25:04,947 INFO L290 TraceCheckUtils]: 10: Hoare triple {237#true} assume !(0 == ~cond); {237#true} is VALID [2022-02-20 17:25:04,948 INFO L290 TraceCheckUtils]: 11: Hoare triple {237#true} assume true; {237#true} is VALID [2022-02-20 17:25:04,949 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {237#true} {237#true} #89#return; {237#true} is VALID [2022-02-20 17:25:04,949 INFO L272 TraceCheckUtils]: 13: Hoare triple {237#true} call assume_abort_if_not((if (main_~R~0#1 - 1) * (main_~R~0#1 - 1) < main_~A~0#1 then 1 else 0)); {237#true} is VALID [2022-02-20 17:25:04,950 INFO L290 TraceCheckUtils]: 14: Hoare triple {237#true} ~cond := #in~cond; {237#true} is VALID [2022-02-20 17:25:04,950 INFO L290 TraceCheckUtils]: 15: Hoare triple {237#true} assume !(0 == ~cond); {237#true} is VALID [2022-02-20 17:25:04,950 INFO L290 TraceCheckUtils]: 16: Hoare triple {237#true} assume true; {237#true} is VALID [2022-02-20 17:25:04,950 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {237#true} {237#true} #91#return; {237#true} is VALID [2022-02-20 17:25:04,950 INFO L272 TraceCheckUtils]: 18: Hoare triple {237#true} call assume_abort_if_not((if 1 == (if main_~A~0#1 < 0 && 0 != main_~A~0#1 % 2 then main_~A~0#1 % 2 - 2 else main_~A~0#1 % 2) then 1 else 0)); {237#true} is VALID [2022-02-20 17:25:04,950 INFO L290 TraceCheckUtils]: 19: Hoare triple {237#true} ~cond := #in~cond; {237#true} is VALID [2022-02-20 17:25:04,951 INFO L290 TraceCheckUtils]: 20: Hoare triple {237#true} assume !(0 == ~cond); {237#true} is VALID [2022-02-20 17:25:04,951 INFO L290 TraceCheckUtils]: 21: Hoare triple {237#true} assume true; {237#true} is VALID [2022-02-20 17:25:04,952 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {237#true} {237#true} #93#return; {237#true} is VALID [2022-02-20 17:25:06,964 WARN L290 TraceCheckUtils]: 23: Hoare triple {237#true} main_~u~0#1 := 1 + 2 * main_~R~0#1;main_~v~0#1 := 1;main_~r~0#1 := main_~R~0#1 * main_~R~0#1 - main_~A~0#1; {311#(and (= (mod (+ |ULTIMATE.start_main_~u~0#1| 1) 2) 0) (= |ULTIMATE.start_main_~v~0#1| 1) (= (+ (* (div (+ (- 1) |ULTIMATE.start_main_~u~0#1|) 2) (div (+ (- 1) |ULTIMATE.start_main_~u~0#1|) 2)) (* (- 1) |ULTIMATE.start_main_~A~0#1|)) |ULTIMATE.start_main_~r~0#1|))} is UNKNOWN [2022-02-20 17:25:06,965 INFO L290 TraceCheckUtils]: 24: Hoare triple {311#(and (= (mod (+ |ULTIMATE.start_main_~u~0#1| 1) 2) 0) (= |ULTIMATE.start_main_~v~0#1| 1) (= (+ (* (div (+ (- 1) |ULTIMATE.start_main_~u~0#1|) 2) (div (+ (- 1) |ULTIMATE.start_main_~u~0#1|) 2)) (* (- 1) |ULTIMATE.start_main_~A~0#1|)) |ULTIMATE.start_main_~r~0#1|))} assume !false; {311#(and (= (mod (+ |ULTIMATE.start_main_~u~0#1| 1) 2) 0) (= |ULTIMATE.start_main_~v~0#1| 1) (= (+ (* (div (+ (- 1) |ULTIMATE.start_main_~u~0#1|) 2) (div (+ (- 1) |ULTIMATE.start_main_~u~0#1|) 2)) (* (- 1) |ULTIMATE.start_main_~A~0#1|)) |ULTIMATE.start_main_~r~0#1|))} is VALID [2022-02-20 17:25:07,039 INFO L272 TraceCheckUtils]: 25: Hoare triple {311#(and (= (mod (+ |ULTIMATE.start_main_~u~0#1| 1) 2) 0) (= |ULTIMATE.start_main_~v~0#1| 1) (= (+ (* (div (+ (- 1) |ULTIMATE.start_main_~u~0#1|) 2) (div (+ (- 1) |ULTIMATE.start_main_~u~0#1|) 2)) (* (- 1) |ULTIMATE.start_main_~A~0#1|)) |ULTIMATE.start_main_~r~0#1|))} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {318#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:25:07,040 INFO L290 TraceCheckUtils]: 26: Hoare triple {318#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {322#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:25:07,040 INFO L290 TraceCheckUtils]: 27: Hoare triple {322#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {238#false} is VALID [2022-02-20 17:25:07,040 INFO L290 TraceCheckUtils]: 28: Hoare triple {238#false} assume !false; {238#false} is VALID [2022-02-20 17:25:07,041 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-02-20 17:25:07,041 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 17:25:07,041 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:25:07,041 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1913979790] [2022-02-20 17:25:07,041 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:25:07,041 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1559768451] [2022-02-20 17:25:07,041 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1559768451] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:25:07,042 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:25:07,042 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 17:25:07,042 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1716951997] [2022-02-20 17:25:07,042 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:25:07,043 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) Word has length 29 [2022-02-20 17:25:07,043 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:25:07,043 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 17:25:09,426 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 19 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-02-20 17:25:09,426 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 17:25:09,426 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:25:09,426 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 17:25:09,427 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 17:25:09,427 INFO L87 Difference]: Start difference. First operand 28 states and 36 transitions. Second operand has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 17:25:16,700 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:25:16,701 INFO L93 Difference]: Finished difference Result 44 states and 57 transitions. [2022-02-20 17:25:16,701 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 17:25:16,701 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) Word has length 29 [2022-02-20 17:25:16,701 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:25:16,701 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 17:25:16,703 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 57 transitions. [2022-02-20 17:25:16,703 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 17:25:16,705 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 57 transitions. [2022-02-20 17:25:16,705 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 57 transitions. [2022-02-20 17:25:21,906 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:25:21,908 INFO L225 Difference]: With dead ends: 44 [2022-02-20 17:25:21,908 INFO L226 Difference]: Without dead ends: 42 [2022-02-20 17:25:21,908 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 29 GetRequests, 25 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-02-20 17:25:21,909 INFO L933 BasicCegarLoop]: 28 mSDtfsCounter, 11 mSDsluCounter, 78 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 106 SdHoareTripleChecker+Invalid, 49 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 46 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.8s IncrementalHoareTripleChecker+Time [2022-02-20 17:25:21,909 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 106 Invalid, 49 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 1.8s Time] [2022-02-20 17:25:21,910 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 42 states. [2022-02-20 17:25:21,919 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 42 to 41. [2022-02-20 17:25:21,919 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:25:21,920 INFO L82 GeneralOperation]: Start isEquivalent. First operand 42 states. Second operand has 41 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 27 states have internal predecessors, (33), 11 states have call successors, (11), 3 states have call predecessors, (11), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 17:25:21,921 INFO L74 IsIncluded]: Start isIncluded. First operand 42 states. Second operand has 41 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 27 states have internal predecessors, (33), 11 states have call successors, (11), 3 states have call predecessors, (11), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 17:25:21,923 INFO L87 Difference]: Start difference. First operand 42 states. Second operand has 41 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 27 states have internal predecessors, (33), 11 states have call successors, (11), 3 states have call predecessors, (11), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 17:25:21,925 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:25:21,926 INFO L93 Difference]: Finished difference Result 42 states and 55 transitions. [2022-02-20 17:25:21,926 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 55 transitions. [2022-02-20 17:25:21,926 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:25:21,926 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:25:21,927 INFO L74 IsIncluded]: Start isIncluded. First operand has 41 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 27 states have internal predecessors, (33), 11 states have call successors, (11), 3 states have call predecessors, (11), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 42 states. [2022-02-20 17:25:21,927 INFO L87 Difference]: Start difference. First operand has 41 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 27 states have internal predecessors, (33), 11 states have call successors, (11), 3 states have call predecessors, (11), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand 42 states. [2022-02-20 17:25:21,930 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:25:21,930 INFO L93 Difference]: Finished difference Result 42 states and 55 transitions. [2022-02-20 17:25:21,930 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 55 transitions. [2022-02-20 17:25:21,930 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:25:21,931 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:25:21,931 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:25:21,931 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:25:21,931 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 27 states have internal predecessors, (33), 11 states have call successors, (11), 3 states have call predecessors, (11), 3 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-02-20 17:25:21,933 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 54 transitions. [2022-02-20 17:25:21,933 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 54 transitions. Word has length 29 [2022-02-20 17:25:21,933 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:25:21,934 INFO L470 AbstractCegarLoop]: Abstraction has 41 states and 54 transitions. [2022-02-20 17:25:21,934 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 1 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 17:25:21,934 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 54 transitions. [2022-02-20 17:25:21,935 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-02-20 17:25:21,935 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:25:21,935 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:25:21,953 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-02-20 17:25:22,135 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:25:22,136 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:25:22,136 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:25:22,136 INFO L85 PathProgramCache]: Analyzing trace with hash 744651016, now seen corresponding path program 1 times [2022-02-20 17:25:22,137 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:25:22,137 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [937891839] [2022-02-20 17:25:22,137 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:25:22,137 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:25:22,149 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:25:22,150 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1119195291] [2022-02-20 17:25:22,150 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:25:22,150 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:25:22,150 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:25:22,155 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 17:25:22,157 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-02-20 17:25:22,220 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:25:22,221 INFO L263 TraceCheckSpWp]: Trace formula consists of 94 conjuncts, 10 conjunts are in the unsatisfiable core [2022-02-20 17:25:22,228 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:25:22,230 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:25:22,378 INFO L290 TraceCheckUtils]: 0: Hoare triple {536#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3); {536#true} is VALID [2022-02-20 17:25:22,379 INFO L290 TraceCheckUtils]: 1: Hoare triple {536#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_~A~0#1, main_~R~0#1, main_~u~0#1, main_~v~0#1, main_~r~0#1;havoc main_~A~0#1;havoc main_~R~0#1;havoc main_~u~0#1;havoc main_~v~0#1;havoc main_~r~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~A~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {536#true} is VALID [2022-02-20 17:25:22,379 INFO L272 TraceCheckUtils]: 2: Hoare triple {536#true} call assume_abort_if_not((if main_~A~0#1 >= 0 && main_~A~0#1 <= 5 then 1 else 0)); {536#true} is VALID [2022-02-20 17:25:22,379 INFO L290 TraceCheckUtils]: 3: Hoare triple {536#true} ~cond := #in~cond; {536#true} is VALID [2022-02-20 17:25:22,379 INFO L290 TraceCheckUtils]: 4: Hoare triple {536#true} assume !(0 == ~cond); {536#true} is VALID [2022-02-20 17:25:22,379 INFO L290 TraceCheckUtils]: 5: Hoare triple {536#true} assume true; {536#true} is VALID [2022-02-20 17:25:22,380 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {536#true} {536#true} #87#return; {536#true} is VALID [2022-02-20 17:25:22,380 INFO L290 TraceCheckUtils]: 7: Hoare triple {536#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~R~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {536#true} is VALID [2022-02-20 17:25:22,380 INFO L272 TraceCheckUtils]: 8: Hoare triple {536#true} call assume_abort_if_not((if main_~R~0#1 >= 0 && main_~R~0#1 <= 5 then 1 else 0)); {536#true} is VALID [2022-02-20 17:25:22,380 INFO L290 TraceCheckUtils]: 9: Hoare triple {536#true} ~cond := #in~cond; {536#true} is VALID [2022-02-20 17:25:22,380 INFO L290 TraceCheckUtils]: 10: Hoare triple {536#true} assume !(0 == ~cond); {536#true} is VALID [2022-02-20 17:25:22,380 INFO L290 TraceCheckUtils]: 11: Hoare triple {536#true} assume true; {536#true} is VALID [2022-02-20 17:25:22,381 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {536#true} {536#true} #89#return; {536#true} is VALID [2022-02-20 17:25:22,381 INFO L272 TraceCheckUtils]: 13: Hoare triple {536#true} call assume_abort_if_not((if (main_~R~0#1 - 1) * (main_~R~0#1 - 1) < main_~A~0#1 then 1 else 0)); {536#true} is VALID [2022-02-20 17:25:22,381 INFO L290 TraceCheckUtils]: 14: Hoare triple {536#true} ~cond := #in~cond; {536#true} is VALID [2022-02-20 17:25:22,381 INFO L290 TraceCheckUtils]: 15: Hoare triple {536#true} assume !(0 == ~cond); {536#true} is VALID [2022-02-20 17:25:22,381 INFO L290 TraceCheckUtils]: 16: Hoare triple {536#true} assume true; {536#true} is VALID [2022-02-20 17:25:22,381 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {536#true} {536#true} #91#return; {536#true} is VALID [2022-02-20 17:25:22,382 INFO L272 TraceCheckUtils]: 18: Hoare triple {536#true} call assume_abort_if_not((if 1 == (if main_~A~0#1 < 0 && 0 != main_~A~0#1 % 2 then main_~A~0#1 % 2 - 2 else main_~A~0#1 % 2) then 1 else 0)); {536#true} is VALID [2022-02-20 17:25:22,382 INFO L290 TraceCheckUtils]: 19: Hoare triple {536#true} ~cond := #in~cond; {536#true} is VALID [2022-02-20 17:25:22,382 INFO L290 TraceCheckUtils]: 20: Hoare triple {536#true} assume !(0 == ~cond); {536#true} is VALID [2022-02-20 17:25:22,382 INFO L290 TraceCheckUtils]: 21: Hoare triple {536#true} assume true; {536#true} is VALID [2022-02-20 17:25:22,382 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {536#true} {536#true} #93#return; {536#true} is VALID [2022-02-20 17:25:22,382 INFO L290 TraceCheckUtils]: 23: Hoare triple {536#true} main_~u~0#1 := 1 + 2 * main_~R~0#1;main_~v~0#1 := 1;main_~r~0#1 := main_~R~0#1 * main_~R~0#1 - main_~A~0#1; {536#true} is VALID [2022-02-20 17:25:22,383 INFO L290 TraceCheckUtils]: 24: Hoare triple {536#true} assume !false; {536#true} is VALID [2022-02-20 17:25:22,383 INFO L272 TraceCheckUtils]: 25: Hoare triple {536#true} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {536#true} is VALID [2022-02-20 17:25:22,383 INFO L290 TraceCheckUtils]: 26: Hoare triple {536#true} ~cond := #in~cond; {619#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:25:22,384 INFO L290 TraceCheckUtils]: 27: Hoare triple {619#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {623#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-02-20 17:25:22,384 INFO L290 TraceCheckUtils]: 28: Hoare triple {623#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {623#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-02-20 17:25:22,385 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {623#(not (= |__VERIFIER_assert_#in~cond| 0))} {536#true} #95#return; {630#(= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~r~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|)))} is VALID [2022-02-20 17:25:22,385 INFO L290 TraceCheckUtils]: 30: Hoare triple {630#(= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~r~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|)))} assume !(0 != main_~r~0#1); {634#(= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|)))} is VALID [2022-02-20 17:25:22,386 INFO L272 TraceCheckUtils]: 31: Hoare triple {634#(= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|)))} call __VERIFIER_assert((if 4 * main_~A~0#1 == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {638#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:25:22,387 INFO L290 TraceCheckUtils]: 32: Hoare triple {638#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {642#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:25:22,387 INFO L290 TraceCheckUtils]: 33: Hoare triple {642#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {537#false} is VALID [2022-02-20 17:25:22,387 INFO L290 TraceCheckUtils]: 34: Hoare triple {537#false} assume !false; {537#false} is VALID [2022-02-20 17:25:22,388 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-02-20 17:25:22,388 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 17:25:22,790 INFO L290 TraceCheckUtils]: 34: Hoare triple {537#false} assume !false; {537#false} is VALID [2022-02-20 17:25:22,790 INFO L290 TraceCheckUtils]: 33: Hoare triple {642#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {537#false} is VALID [2022-02-20 17:25:22,791 INFO L290 TraceCheckUtils]: 32: Hoare triple {638#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {642#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:25:22,791 INFO L272 TraceCheckUtils]: 31: Hoare triple {634#(= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|)))} call __VERIFIER_assert((if 4 * main_~A~0#1 == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {638#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:25:22,792 INFO L290 TraceCheckUtils]: 30: Hoare triple {661#(or (not (= |ULTIMATE.start_main_~r~0#1| 0)) (= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|))))} assume !(0 != main_~r~0#1); {634#(= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|)))} is VALID [2022-02-20 17:25:22,793 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {623#(not (= |__VERIFIER_assert_#in~cond| 0))} {536#true} #95#return; {661#(or (not (= |ULTIMATE.start_main_~r~0#1| 0)) (= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|))))} is VALID [2022-02-20 17:25:22,793 INFO L290 TraceCheckUtils]: 28: Hoare triple {623#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {623#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-02-20 17:25:22,793 INFO L290 TraceCheckUtils]: 27: Hoare triple {674#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {623#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-02-20 17:25:22,794 INFO L290 TraceCheckUtils]: 26: Hoare triple {536#true} ~cond := #in~cond; {674#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-02-20 17:25:22,794 INFO L272 TraceCheckUtils]: 25: Hoare triple {536#true} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {536#true} is VALID [2022-02-20 17:25:22,794 INFO L290 TraceCheckUtils]: 24: Hoare triple {536#true} assume !false; {536#true} is VALID [2022-02-20 17:25:22,794 INFO L290 TraceCheckUtils]: 23: Hoare triple {536#true} main_~u~0#1 := 1 + 2 * main_~R~0#1;main_~v~0#1 := 1;main_~r~0#1 := main_~R~0#1 * main_~R~0#1 - main_~A~0#1; {536#true} is VALID [2022-02-20 17:25:22,794 INFO L284 TraceCheckUtils]: 22: Hoare quadruple {536#true} {536#true} #93#return; {536#true} is VALID [2022-02-20 17:25:22,795 INFO L290 TraceCheckUtils]: 21: Hoare triple {536#true} assume true; {536#true} is VALID [2022-02-20 17:25:22,795 INFO L290 TraceCheckUtils]: 20: Hoare triple {536#true} assume !(0 == ~cond); {536#true} is VALID [2022-02-20 17:25:22,795 INFO L290 TraceCheckUtils]: 19: Hoare triple {536#true} ~cond := #in~cond; {536#true} is VALID [2022-02-20 17:25:22,795 INFO L272 TraceCheckUtils]: 18: Hoare triple {536#true} call assume_abort_if_not((if 1 == (if main_~A~0#1 < 0 && 0 != main_~A~0#1 % 2 then main_~A~0#1 % 2 - 2 else main_~A~0#1 % 2) then 1 else 0)); {536#true} is VALID [2022-02-20 17:25:22,795 INFO L284 TraceCheckUtils]: 17: Hoare quadruple {536#true} {536#true} #91#return; {536#true} is VALID [2022-02-20 17:25:22,795 INFO L290 TraceCheckUtils]: 16: Hoare triple {536#true} assume true; {536#true} is VALID [2022-02-20 17:25:22,796 INFO L290 TraceCheckUtils]: 15: Hoare triple {536#true} assume !(0 == ~cond); {536#true} is VALID [2022-02-20 17:25:22,796 INFO L290 TraceCheckUtils]: 14: Hoare triple {536#true} ~cond := #in~cond; {536#true} is VALID [2022-02-20 17:25:22,796 INFO L272 TraceCheckUtils]: 13: Hoare triple {536#true} call assume_abort_if_not((if (main_~R~0#1 - 1) * (main_~R~0#1 - 1) < main_~A~0#1 then 1 else 0)); {536#true} is VALID [2022-02-20 17:25:22,796 INFO L284 TraceCheckUtils]: 12: Hoare quadruple {536#true} {536#true} #89#return; {536#true} is VALID [2022-02-20 17:25:22,796 INFO L290 TraceCheckUtils]: 11: Hoare triple {536#true} assume true; {536#true} is VALID [2022-02-20 17:25:22,796 INFO L290 TraceCheckUtils]: 10: Hoare triple {536#true} assume !(0 == ~cond); {536#true} is VALID [2022-02-20 17:25:22,796 INFO L290 TraceCheckUtils]: 9: Hoare triple {536#true} ~cond := #in~cond; {536#true} is VALID [2022-02-20 17:25:22,797 INFO L272 TraceCheckUtils]: 8: Hoare triple {536#true} call assume_abort_if_not((if main_~R~0#1 >= 0 && main_~R~0#1 <= 5 then 1 else 0)); {536#true} is VALID [2022-02-20 17:25:22,797 INFO L290 TraceCheckUtils]: 7: Hoare triple {536#true} assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~R~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {536#true} is VALID [2022-02-20 17:25:22,797 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {536#true} {536#true} #87#return; {536#true} is VALID [2022-02-20 17:25:22,797 INFO L290 TraceCheckUtils]: 5: Hoare triple {536#true} assume true; {536#true} is VALID [2022-02-20 17:25:22,797 INFO L290 TraceCheckUtils]: 4: Hoare triple {536#true} assume !(0 == ~cond); {536#true} is VALID [2022-02-20 17:25:22,797 INFO L290 TraceCheckUtils]: 3: Hoare triple {536#true} ~cond := #in~cond; {536#true} is VALID [2022-02-20 17:25:22,798 INFO L272 TraceCheckUtils]: 2: Hoare triple {536#true} call assume_abort_if_not((if main_~A~0#1 >= 0 && main_~A~0#1 <= 5 then 1 else 0)); {536#true} is VALID [2022-02-20 17:25:22,798 INFO L290 TraceCheckUtils]: 1: Hoare triple {536#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_~A~0#1, main_~R~0#1, main_~u~0#1, main_~v~0#1, main_~r~0#1;havoc main_~A~0#1;havoc main_~R~0#1;havoc main_~u~0#1;havoc main_~v~0#1;havoc main_~r~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~A~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1; {536#true} is VALID [2022-02-20 17:25:22,798 INFO L290 TraceCheckUtils]: 0: Hoare triple {536#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(13, 2);call #Ultimate.allocInit(12, 3); {536#true} is VALID [2022-02-20 17:25:22,798 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-02-20 17:25:22,798 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:25:22,798 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [937891839] [2022-02-20 17:25:22,799 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:25:22,799 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1119195291] [2022-02-20 17:25:22,799 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1119195291] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 17:25:22,799 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 17:25:22,799 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-02-20 17:25:22,799 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1265123503] [2022-02-20 17:25:22,799 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 17:25:22,800 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.0) internal successors, (18), 7 states have internal predecessors, (18), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (6), 3 states have call predecessors, (6), 1 states have call successors, (6) Word has length 35 [2022-02-20 17:25:22,800 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:25:22,800 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.0) internal successors, (18), 7 states have internal predecessors, (18), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (6), 3 states have call predecessors, (6), 1 states have call successors, (6) [2022-02-20 17:25:22,819 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:25:22,819 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 17:25:22,820 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:25:22,820 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 17:25:22,820 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=67, Unknown=0, NotChecked=0, Total=90 [2022-02-20 17:25:22,820 INFO L87 Difference]: Start difference. First operand 41 states and 54 transitions. Second operand has 10 states, 9 states have (on average 2.0) internal successors, (18), 7 states have internal predecessors, (18), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (6), 3 states have call predecessors, (6), 1 states have call successors, (6) [2022-02-20 17:25:23,095 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:25:23,095 INFO L93 Difference]: Finished difference Result 41 states and 54 transitions. [2022-02-20 17:25:23,095 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 17:25:23,095 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.0) internal successors, (18), 7 states have internal predecessors, (18), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (6), 3 states have call predecessors, (6), 1 states have call successors, (6) Word has length 35 [2022-02-20 17:25:23,095 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:25:23,095 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.0) internal successors, (18), 7 states have internal predecessors, (18), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (6), 3 states have call predecessors, (6), 1 states have call successors, (6) [2022-02-20 17:25:23,098 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 36 transitions. [2022-02-20 17:25:23,098 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.0) internal successors, (18), 7 states have internal predecessors, (18), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (6), 3 states have call predecessors, (6), 1 states have call successors, (6) [2022-02-20 17:25:23,099 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 36 transitions. [2022-02-20 17:25:23,099 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 36 transitions. [2022-02-20 17:25:23,130 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:25:23,130 INFO L225 Difference]: With dead ends: 41 [2022-02-20 17:25:23,130 INFO L226 Difference]: Without dead ends: 0 [2022-02-20 17:25:23,130 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 70 GetRequests, 59 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=35, Invalid=97, Unknown=0, NotChecked=0, Total=132 [2022-02-20 17:25:23,131 INFO L933 BasicCegarLoop]: 23 mSDtfsCounter, 15 mSDsluCounter, 115 mSDsCounter, 0 mSdLazyCounter, 60 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 138 SdHoareTripleChecker+Invalid, 70 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 60 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 17:25:23,131 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [17 Valid, 138 Invalid, 70 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 60 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 17:25:23,132 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-02-20 17:25:23,132 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-02-20 17:25:23,132 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:25:23,132 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 17:25:23,132 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 17:25:23,132 INFO L87 Difference]: Start difference. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 17:25:23,132 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:25:23,132 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-02-20 17:25:23,132 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-02-20 17:25:23,132 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:25:23,132 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:25:23,132 INFO L74 IsIncluded]: Start isIncluded. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-02-20 17:25:23,133 INFO L87 Difference]: Start difference. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-02-20 17:25:23,133 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:25:23,133 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-02-20 17:25:23,133 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-02-20 17:25:23,133 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:25:23,133 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:25:23,133 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:25:23,133 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:25:23,133 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 17:25:23,133 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-02-20 17:25:23,133 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 35 [2022-02-20 17:25:23,133 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:25:23,133 INFO L470 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-02-20 17:25:23,134 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.0) internal successors, (18), 7 states have internal predecessors, (18), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (6), 3 states have call predecessors, (6), 1 states have call successors, (6) [2022-02-20 17:25:23,134 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-02-20 17:25:23,144 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:25:23,145 INFO L764 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-02-20 17:25:23,164 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-02-20 17:25:23,355 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-02-20 17:25:23,357 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-02-20 17:25:23,388 INFO L854 garLoopResultBuilder]: At program point L35-2(lines 35 55) the Hoare annotation is: (let ((.cse0 (* |ULTIMATE.start_main_~A~0#1| 4)) (.cse1 (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|)) (.cse2 (* 2 |ULTIMATE.start_main_~u~0#1|)) (.cse3 (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|)))) (and (= (+ .cse0 (* |ULTIMATE.start_main_~r~0#1| 4) .cse1 .cse2) .cse3) (= (+ .cse0 .cse1 .cse2) .cse3))) [2022-02-20 17:25:23,391 INFO L861 garLoopResultBuilder]: At program point L23(line 23) the Hoare annotation is: true [2022-02-20 17:25:23,391 INFO L858 garLoopResultBuilder]: For program point L23-1(line 23) no Hoare annotation was computed. [2022-02-20 17:25:23,392 INFO L858 garLoopResultBuilder]: For program point L48-1(lines 35 55) no Hoare annotation was computed. [2022-02-20 17:25:23,392 INFO L854 garLoopResultBuilder]: At program point L48-2(lines 35 55) the Hoare annotation is: (= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~r~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|))) [2022-02-20 17:25:23,392 INFO L854 garLoopResultBuilder]: At program point L40-2(lines 40 46) the Hoare annotation is: (= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~r~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|))) [2022-02-20 17:25:23,392 INFO L854 garLoopResultBuilder]: At program point L36(line 36) the Hoare annotation is: (= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~r~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|))) [2022-02-20 17:25:23,392 INFO L858 garLoopResultBuilder]: For program point L36-1(lines 35 55) no Hoare annotation was computed. [2022-02-20 17:25:23,392 INFO L858 garLoopResultBuilder]: For program point L-1(line -1) no Hoare annotation was computed. [2022-02-20 17:25:23,392 INFO L858 garLoopResultBuilder]: For program point ULTIMATE.startENTRY(line -1) no Hoare annotation was computed. [2022-02-20 17:25:23,394 INFO L858 garLoopResultBuilder]: For program point ULTIMATE.startFINAL(line -1) no Hoare annotation was computed. [2022-02-20 17:25:23,394 INFO L858 garLoopResultBuilder]: For program point L28(line 28) no Hoare annotation was computed. [2022-02-20 17:25:23,396 INFO L858 garLoopResultBuilder]: For program point L57(line 57) no Hoare annotation was computed. [2022-02-20 17:25:23,396 INFO L854 garLoopResultBuilder]: At program point L49(line 49) the Hoare annotation is: (= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~r~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|))) [2022-02-20 17:25:23,397 INFO L858 garLoopResultBuilder]: For program point L49-1(lines 48 54) no Hoare annotation was computed. [2022-02-20 17:25:23,397 INFO L854 garLoopResultBuilder]: At program point L41(line 41) the Hoare annotation is: (= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~r~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|))) [2022-02-20 17:25:23,397 INFO L858 garLoopResultBuilder]: For program point L41-1(lines 40 46) no Hoare annotation was computed. [2022-02-20 17:25:23,397 INFO L858 garLoopResultBuilder]: For program point ULTIMATE.startEXIT(line -1) no Hoare annotation was computed. [2022-02-20 17:25:23,397 INFO L861 garLoopResultBuilder]: At program point L58(lines 19 59) the Hoare annotation is: true [2022-02-20 17:25:23,397 INFO L861 garLoopResultBuilder]: At program point L25(line 25) the Hoare annotation is: true [2022-02-20 17:25:23,397 INFO L861 garLoopResultBuilder]: At program point L25-1(line 25) the Hoare annotation is: true [2022-02-20 17:25:23,397 INFO L861 garLoopResultBuilder]: At program point L26(line 26) the Hoare annotation is: true [2022-02-20 17:25:23,398 INFO L861 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 8 10) the Hoare annotation is: true [2022-02-20 17:25:23,398 INFO L858 garLoopResultBuilder]: For program point L9(line 9) no Hoare annotation was computed. [2022-02-20 17:25:23,398 INFO L858 garLoopResultBuilder]: For program point L9-2(lines 8 10) no Hoare annotation was computed. [2022-02-20 17:25:23,398 INFO L858 garLoopResultBuilder]: For program point assume_abort_if_notEXIT(lines 8 10) no Hoare annotation was computed. [2022-02-20 17:25:23,399 INFO L861 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 11 17) the Hoare annotation is: true [2022-02-20 17:25:23,399 INFO L858 garLoopResultBuilder]: For program point L13(lines 13 14) no Hoare annotation was computed. [2022-02-20 17:25:23,399 INFO L858 garLoopResultBuilder]: For program point L12(lines 12 15) no Hoare annotation was computed. [2022-02-20 17:25:23,399 INFO L858 garLoopResultBuilder]: For program point L12-2(lines 11 17) no Hoare annotation was computed. [2022-02-20 17:25:23,399 INFO L858 garLoopResultBuilder]: For program point __VERIFIER_assertEXIT(lines 11 17) no Hoare annotation was computed. [2022-02-20 17:25:23,400 INFO L858 garLoopResultBuilder]: For program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 14) no Hoare annotation was computed. [2022-02-20 17:25:23,402 INFO L732 BasicCegarLoop]: Path program histogram: [1, 1, 1] [2022-02-20 17:25:23,403 INFO L180 ceAbstractionStarter]: Computing trace abstraction results [2022-02-20 17:25:23,407 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-02-20 17:25:23,407 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-02-20 17:25:23,407 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-02-20 17:25:23,407 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-02-20 17:25:23,407 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-02-20 17:25:23,408 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-02-20 17:25:23,408 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-02-20 17:25:23,408 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-02-20 17:25:23,408 WARN L170 areAnnotationChecker]: L23-1 has no Hoare annotation [2022-02-20 17:25:23,408 WARN L170 areAnnotationChecker]: L9-2 has no Hoare annotation [2022-02-20 17:25:23,408 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-02-20 17:25:23,408 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-02-20 17:25:23,408 WARN L170 areAnnotationChecker]: L12-2 has no Hoare annotation [2022-02-20 17:25:23,408 WARN L170 areAnnotationChecker]: L23-1 has no Hoare annotation [2022-02-20 17:25:23,408 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-02-20 17:25:23,409 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-02-20 17:25:23,409 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-02-20 17:25:23,409 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-02-20 17:25:23,409 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-02-20 17:25:23,409 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-02-20 17:25:23,409 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-02-20 17:25:23,409 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-02-20 17:25:23,409 WARN L170 areAnnotationChecker]: L28 has no Hoare annotation [2022-02-20 17:25:23,409 WARN L170 areAnnotationChecker]: L28 has no Hoare annotation [2022-02-20 17:25:23,409 WARN L170 areAnnotationChecker]: L36-1 has no Hoare annotation [2022-02-20 17:25:23,409 WARN L170 areAnnotationChecker]: L36-1 has no Hoare annotation [2022-02-20 17:25:23,410 WARN L170 areAnnotationChecker]: L41-1 has no Hoare annotation [2022-02-20 17:25:23,410 WARN L170 areAnnotationChecker]: L41-1 has no Hoare annotation [2022-02-20 17:25:23,410 WARN L170 areAnnotationChecker]: L49-1 has no Hoare annotation [2022-02-20 17:25:23,410 WARN L170 areAnnotationChecker]: L49-1 has no Hoare annotation [2022-02-20 17:25:23,410 WARN L170 areAnnotationChecker]: L57 has no Hoare annotation [2022-02-20 17:25:23,411 WARN L170 areAnnotationChecker]: L57 has no Hoare annotation [2022-02-20 17:25:23,411 WARN L170 areAnnotationChecker]: L48-1 has no Hoare annotation [2022-02-20 17:25:23,411 WARN L170 areAnnotationChecker]: L48-1 has no Hoare annotation [2022-02-20 17:25:23,412 WARN L170 areAnnotationChecker]: L48-1 has no Hoare annotation [2022-02-20 17:25:23,412 WARN L170 areAnnotationChecker]: L48-1 has no Hoare annotation [2022-02-20 17:25:23,414 WARN L170 areAnnotationChecker]: L48-1 has no Hoare annotation [2022-02-20 17:25:23,414 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-02-20 17:25:23,414 WARN L170 areAnnotationChecker]: L36-1 has no Hoare annotation [2022-02-20 17:25:23,414 WARN L170 areAnnotationChecker]: L41-1 has no Hoare annotation [2022-02-20 17:25:23,414 WARN L170 areAnnotationChecker]: L49-1 has no Hoare annotation [2022-02-20 17:25:23,414 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-02-20 17:25:23,415 INFO L163 areAnnotationChecker]: CFG has 12 edges. 12 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-02-20 17:25:23,429 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 20.02 05:25:23 BoogieIcfgContainer [2022-02-20 17:25:23,429 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-02-20 17:25:23,430 INFO L113 PluginConnector]: ------------------------Witness Printer---------------------------- [2022-02-20 17:25:23,430 INFO L271 PluginConnector]: Initializing Witness Printer... [2022-02-20 17:25:23,430 INFO L275 PluginConnector]: Witness Printer initialized [2022-02-20 17:25:23,430 INFO L185 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 05:25:01" (3/4) ... [2022-02-20 17:25:23,432 INFO L137 WitnessPrinter]: Generating witness for correct program [2022-02-20 17:25:23,435 INFO L354 RCFGBacktranslator]: Ignoring RootEdge to procedure assume_abort_if_not [2022-02-20 17:25:23,435 INFO L354 RCFGBacktranslator]: Ignoring RootEdge to procedure __VERIFIER_assert [2022-02-20 17:25:23,439 INFO L910 BoogieBacktranslator]: Reduced CFG by removing 13 nodes and edges [2022-02-20 17:25:23,439 INFO L910 BoogieBacktranslator]: Reduced CFG by removing 5 nodes and edges [2022-02-20 17:25:23,439 INFO L910 BoogieBacktranslator]: Reduced CFG by removing 2 nodes and edges [2022-02-20 17:25:23,439 INFO L910 BoogieBacktranslator]: Reduced CFG by removing 1 nodes and edges [2022-02-20 17:25:23,465 INFO L141 WitnessManager]: Wrote witness to /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/witness.graphml [2022-02-20 17:25:23,465 INFO L132 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2022-02-20 17:25:23,466 INFO L158 Benchmark]: Toolchain (without parser) took 22740.35ms. Allocated memory is still 140.5MB. Free memory was 108.0MB in the beginning and 106.1MB in the end (delta: 1.9MB). Peak memory consumption was 2.3MB. Max. memory is 16.1GB. [2022-02-20 17:25:23,466 INFO L158 Benchmark]: CDTParser took 0.14ms. Allocated memory is still 83.9MB. Free memory was 39.5MB in the beginning and 39.4MB in the end (delta: 40.6kB). There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 17:25:23,467 INFO L158 Benchmark]: CACSL2BoogieTranslator took 176.79ms. Allocated memory is still 140.5MB. Free memory was 107.8MB in the beginning and 115.7MB in the end (delta: -7.9MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2022-02-20 17:25:23,467 INFO L158 Benchmark]: Boogie Procedure Inliner took 24.58ms. Allocated memory is still 140.5MB. Free memory was 115.7MB in the beginning and 114.1MB in the end (delta: 1.5MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2022-02-20 17:25:23,467 INFO L158 Benchmark]: Boogie Preprocessor took 13.74ms. Allocated memory is still 140.5MB. Free memory was 114.1MB in the beginning and 112.8MB in the end (delta: 1.3MB). There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 17:25:23,467 INFO L158 Benchmark]: RCFGBuilder took 244.23ms. Allocated memory is still 140.5MB. Free memory was 112.8MB in the beginning and 101.1MB in the end (delta: 11.7MB). Peak memory consumption was 12.6MB. Max. memory is 16.1GB. [2022-02-20 17:25:23,468 INFO L158 Benchmark]: TraceAbstraction took 22240.67ms. Allocated memory is still 140.5MB. Free memory was 100.7MB in the beginning and 109.2MB in the end (delta: -8.6MB). There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 17:25:23,468 INFO L158 Benchmark]: Witness Printer took 35.63ms. Allocated memory is still 140.5MB. Free memory was 109.2MB in the beginning and 106.1MB in the end (delta: 3.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2022-02-20 17:25:23,469 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.14ms. Allocated memory is still 83.9MB. Free memory was 39.5MB in the beginning and 39.4MB in the end (delta: 40.6kB). There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 176.79ms. Allocated memory is still 140.5MB. Free memory was 107.8MB in the beginning and 115.7MB in the end (delta: -7.9MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 24.58ms. Allocated memory is still 140.5MB. Free memory was 115.7MB in the beginning and 114.1MB in the end (delta: 1.5MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Boogie Preprocessor took 13.74ms. Allocated memory is still 140.5MB. Free memory was 114.1MB in the beginning and 112.8MB in the end (delta: 1.3MB). There was no memory consumed. Max. memory is 16.1GB. * RCFGBuilder took 244.23ms. Allocated memory is still 140.5MB. Free memory was 112.8MB in the beginning and 101.1MB in the end (delta: 11.7MB). Peak memory consumption was 12.6MB. Max. memory is 16.1GB. * TraceAbstraction took 22240.67ms. Allocated memory is still 140.5MB. Free memory was 100.7MB in the beginning and 109.2MB in the end (delta: -8.6MB). There was no memory consumed. Max. memory is 16.1GB. * Witness Printer took 35.63ms. Allocated memory is still 140.5MB. Free memory was 109.2MB in the beginning and 106.1MB in the end (delta: 3.1MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - PositiveResult [Line: 14]: call to reach_error is unreachable For all program executions holds that call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data CFG has 3 procedures, 32 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 22.1s, OverallIterations: 3, TraceHistogramMax: 4, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 13.0s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 31 SdHoareTripleChecker+Valid, 1.9s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 26 mSDsluCounter, 284 SdHoareTripleChecker+Invalid, 1.9s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 193 mSDsCounter, 13 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 106 IncrementalHoareTripleChecker+Invalid, 119 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 13 mSolverCounterUnsat, 91 mSDtfsCounter, 106 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 113 GetRequests, 98 SyntacticMatches, 1 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.1s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=41occurred in iteration=2, InterpolantAutomatonStates: 13, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.1s AutomataMinimizationTime, 3 MinimizatonAttempts, 1 StatesRemovedByMinimization, 1 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 13 LocationsWithAnnotation, 29 PreInvPairs, 44 NumberOfFragments, 152 HoareAnnotationTreeSize, 29 FomulaSimplifications, 250 FormulaSimplificationTreeSizeReduction, 0.0s HoareSimplificationTime, 13 FomulaSimplificationsInter, 0 FormulaSimplificationTreeSizeReductionInter, 0.0s HoareSimplificationTimeInter, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 5.8s InterpolantComputationTime, 93 NumberOfCodeBlocks, 93 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 124 ConstructedInterpolants, 0 QuantifiedInterpolants, 287 SizeOfPredicates, 9 NumberOfNonLiveVariables, 177 ConjunctsInSsa, 21 ConjunctsInUnsatCore, 4 InterpolantComputations, 2 PerfectInterpolantSequences, 98/100 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold - InvariantResult [Line: 35]: Loop Invariant Derived loop invariant: A * 4 + r * 4 + v * v + 2 * u == 2 * v + u * u - InvariantResult [Line: 40]: Loop Invariant Derived loop invariant: A * 4 + r * 4 + v * v + 2 * u == 2 * v + u * u - InvariantResult [Line: 19]: Loop Invariant Derived loop invariant: 1 RESULT: Ultimate proved your program to be correct! [2022-02-20 17:25:23,503 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Writing output log to file Ultimate.log Result: TRUE