/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerCTransformed.xml -s ../../../trunk/examples/settings/loopacceleration/qvasr/qvasr_64.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/fermat1-ll_unwindbound5.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-28 00:07:39,545 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-28 00:07:39,546 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-28 00:07:39,573 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-28 00:07:39,574 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-28 00:07:39,575 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-28 00:07:39,576 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-28 00:07:39,577 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-28 00:07:39,578 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-28 00:07:39,579 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-28 00:07:39,580 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-28 00:07:39,581 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-28 00:07:39,581 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-28 00:07:39,582 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-28 00:07:39,583 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-28 00:07:39,583 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-28 00:07:39,584 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-28 00:07:39,585 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-28 00:07:39,586 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-28 00:07:39,587 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-28 00:07:39,589 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-28 00:07:39,591 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-28 00:07:39,592 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-28 00:07:39,593 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-28 00:07:39,593 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-28 00:07:39,596 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-28 00:07:39,596 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-28 00:07:39,596 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-28 00:07:39,597 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-28 00:07:39,597 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-28 00:07:39,598 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-28 00:07:39,598 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-28 00:07:39,599 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-28 00:07:39,600 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-28 00:07:39,600 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-28 00:07:39,601 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-28 00:07:39,601 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-28 00:07:39,602 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-28 00:07:39,602 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-28 00:07:39,602 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-28 00:07:39,602 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-28 00:07:39,603 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-28 00:07:39,604 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/loopacceleration/qvasr/qvasr_64.epf [2022-04-28 00:07:39,625 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-28 00:07:39,625 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-28 00:07:39,626 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-04-28 00:07:39,626 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-04-28 00:07:39,626 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-04-28 00:07:39,627 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-04-28 00:07:39,627 INFO L138 SettingsManager]: * Use SBE=true [2022-04-28 00:07:39,627 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-28 00:07:39,627 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-28 00:07:39,627 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-28 00:07:39,627 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-28 00:07:39,627 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-28 00:07:39,628 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-28 00:07:39,628 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-28 00:07:39,628 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-28 00:07:39,628 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-28 00:07:39,628 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-28 00:07:39,628 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-28 00:07:39,628 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-28 00:07:39,628 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 00:07:39,629 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-28 00:07:39,629 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-04-28 00:07:39,629 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-04-28 00:07:39,629 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-28 00:07:39,629 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-04-28 00:07:39,629 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-28 00:07:39,629 INFO L138 SettingsManager]: * Trace refinement exception blacklist=NONE [2022-04-28 00:07:39,629 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-04-28 00:07:39,630 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-28 00:07:39,630 INFO L138 SettingsManager]: * TransformationType=LOOP_ACCELERATION_QVASR 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.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-28 00:07:39,833 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-28 00:07:39,864 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-28 00:07:39,866 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-28 00:07:39,867 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-28 00:07:39,875 INFO L275 PluginConnector]: CDTParser initialized [2022-04-28 00:07:39,877 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/fermat1-ll_unwindbound5.c [2022-04-28 00:07:39,935 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/40d7b9199/af3a32c77ebe46298c3fcb4b9f6df858/FLAG933cfa66f [2022-04-28 00:07:40,342 INFO L306 CDTParser]: Found 1 translation units. [2022-04-28 00:07:40,342 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/fermat1-ll_unwindbound5.c [2022-04-28 00:07:40,348 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/40d7b9199/af3a32c77ebe46298c3fcb4b9f6df858/FLAG933cfa66f [2022-04-28 00:07:40,751 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/40d7b9199/af3a32c77ebe46298c3fcb4b9f6df858 [2022-04-28 00:07:40,753 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-28 00:07:40,754 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-28 00:07:40,755 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-28 00:07:40,756 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-28 00:07:40,760 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-28 00:07:40,761 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 12:07:40" (1/1) ... [2022-04-28 00:07:40,761 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@47fe0ef3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:07:40, skipping insertion in model container [2022-04-28 00:07:40,761 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 12:07:40" (1/1) ... [2022-04-28 00:07:40,767 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-28 00:07:40,778 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-28 00:07:40,887 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/fermat1-ll_unwindbound5.c[535,548] [2022-04-28 00:07:40,912 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 00:07:40,937 INFO L203 MainTranslator]: Completed pre-run [2022-04-28 00:07:40,967 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/fermat1-ll_unwindbound5.c[535,548] [2022-04-28 00:07:40,979 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 00:07:40,992 INFO L208 MainTranslator]: Completed translation [2022-04-28 00:07:40,993 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:07:40 WrapperNode [2022-04-28 00:07:40,994 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-28 00:07:40,996 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-28 00:07:40,996 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-28 00:07:40,996 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-28 00:07:41,007 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:07:40" (1/1) ... [2022-04-28 00:07:41,008 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:07:40" (1/1) ... [2022-04-28 00:07:41,023 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:07:40" (1/1) ... [2022-04-28 00:07:41,023 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:07:40" (1/1) ... [2022-04-28 00:07:41,029 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:07:40" (1/1) ... [2022-04-28 00:07:41,033 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:07:40" (1/1) ... [2022-04-28 00:07:41,034 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:07:40" (1/1) ... [2022-04-28 00:07:41,039 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-28 00:07:41,040 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-28 00:07:41,040 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-28 00:07:41,040 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-28 00:07:41,041 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:07:40" (1/1) ... [2022-04-28 00:07:41,050 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 00:07:41,060 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 00:07:41,074 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-04-28 00:07:41,087 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-04-28 00:07:41,111 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-28 00:07:41,111 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-28 00:07:41,111 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-28 00:07:41,111 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-28 00:07:41,111 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-28 00:07:41,111 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-28 00:07:41,112 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-28 00:07:41,112 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-28 00:07:41,112 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-28 00:07:41,112 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-28 00:07:41,112 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-28 00:07:41,112 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-28 00:07:41,112 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-28 00:07:41,112 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-28 00:07:41,112 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-28 00:07:41,112 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-28 00:07:41,113 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-28 00:07:41,113 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-28 00:07:41,113 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-28 00:07:41,113 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-28 00:07:41,164 INFO L234 CfgBuilder]: Building ICFG [2022-04-28 00:07:41,165 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-28 00:07:41,355 INFO L275 CfgBuilder]: Performing block encoding [2022-04-28 00:07:41,361 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-28 00:07:41,362 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-04-28 00:07:41,363 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 12:07:41 BoogieIcfgContainer [2022-04-28 00:07:41,363 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-28 00:07:41,364 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-28 00:07:41,364 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-28 00:07:41,368 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-28 00:07:41,371 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 12:07:41" (1/1) ... [2022-04-28 00:07:41,375 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_QVASR [2022-04-28 00:07:41,413 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 28.04 12:07:41 BasicIcfg [2022-04-28 00:07:41,413 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-28 00:07:41,414 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-28 00:07:41,415 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-28 00:07:41,417 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-28 00:07:41,417 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.04 12:07:40" (1/4) ... [2022-04-28 00:07:41,418 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@68ca089e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 12:07:41, skipping insertion in model container [2022-04-28 00:07:41,418 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 12:07:40" (2/4) ... [2022-04-28 00:07:41,418 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@68ca089e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 12:07:41, skipping insertion in model container [2022-04-28 00:07:41,418 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 12:07:41" (3/4) ... [2022-04-28 00:07:41,419 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@68ca089e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 28.04 12:07:41, skipping insertion in model container [2022-04-28 00:07:41,419 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 28.04 12:07:41" (4/4) ... [2022-04-28 00:07:41,420 INFO L111 eAbstractionObserver]: Analyzing ICFG fermat1-ll_unwindbound5.cqvasr [2022-04-28 00:07:41,431 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-04-28 00:07:41,431 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-28 00:07:41,469 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-28 00:07:41,474 INFO L357 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=FINITE_AUTOMATA, 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, mPorIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@2a5ed499, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@19d539ea [2022-04-28 00:07:41,474 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-28 00:07:41,483 INFO L276 IsEmpty]: Start isEmpty. Operand has 37 states, 23 states have (on average 1.5217391304347827) internal successors, (35), 24 states have internal predecessors, (35), 8 states have call successors, (8), 4 states have call predecessors, (8), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 00:07:41,489 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-04-28 00:07:41,490 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 00:07:41,490 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 00:07:41,491 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 00:07:41,494 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 00:07:41,495 INFO L85 PathProgramCache]: Analyzing trace with hash -758992103, now seen corresponding path program 1 times [2022-04-28 00:07:41,502 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 00:07:41,502 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [775465881] [2022-04-28 00:07:41,502 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 00:07:41,503 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 00:07:41,575 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 00:07:41,576 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [472191283] [2022-04-28 00:07:41,576 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 00:07:41,576 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 00:07:41,576 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 00:07:41,578 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-04-28 00:07:41,590 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-04-28 00:07:41,680 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 00:07:41,682 INFO L263 TraceCheckSpWp]: Trace formula consists of 89 conjuncts, 1 conjunts are in the unsatisfiable core [2022-04-28 00:07:41,696 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 00:07:41,699 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 00:07:41,797 INFO L272 TraceCheckUtils]: 0: Hoare triple {40#true} [105] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {40#true} is VALID [2022-04-28 00:07:41,798 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} [107] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= v_~counter~0_7 0) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_7, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {40#true} is VALID [2022-04-28 00:07:41,798 INFO L290 TraceCheckUtils]: 2: Hoare triple {40#true} [110] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {40#true} is VALID [2022-04-28 00:07:41,798 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40#true} {40#true} [148] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {40#true} is VALID [2022-04-28 00:07:41,798 INFO L272 TraceCheckUtils]: 4: Hoare triple {40#true} [106] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {40#true} is VALID [2022-04-28 00:07:41,799 INFO L290 TraceCheckUtils]: 5: Hoare triple {40#true} [109] mainENTRY-->L25: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~R~0_1 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~A~0_2 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~A~0=v_main_~A~0_2, main_~R~0=v_main_~R~0_1, main_~u~0=v_main_~u~0_2, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~A~0, main_~R~0, main_~u~0, main_~r~0] {40#true} is VALID [2022-04-28 00:07:41,799 INFO L272 TraceCheckUtils]: 6: Hoare triple {40#true} [111] L25-->assume_abort_if_notENTRY: Formula: (= (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_11)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_11, main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {40#true} is VALID [2022-04-28 00:07:41,799 INFO L290 TraceCheckUtils]: 7: Hoare triple {40#true} [113] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {40#true} is VALID [2022-04-28 00:07:41,800 INFO L290 TraceCheckUtils]: 8: Hoare triple {40#true} [115] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-28 00:07:41,800 INFO L290 TraceCheckUtils]: 9: Hoare triple {41#false} [119] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-28 00:07:41,800 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {41#false} {40#true} [149] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_11)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_11, main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {41#false} is VALID [2022-04-28 00:07:41,801 INFO L272 TraceCheckUtils]: 11: Hoare triple {41#false} [112] L25-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_12 2))) (ite (and (< v_main_~A~0_12 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {41#false} is VALID [2022-04-28 00:07:41,801 INFO L290 TraceCheckUtils]: 12: Hoare triple {41#false} [113] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {41#false} is VALID [2022-04-28 00:07:41,801 INFO L290 TraceCheckUtils]: 13: Hoare triple {41#false} [115] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-28 00:07:41,801 INFO L290 TraceCheckUtils]: 14: Hoare triple {41#false} [119] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-28 00:07:41,802 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {41#false} {41#false} [150] assume_abort_if_notEXIT-->L27: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_12 2))) (ite (and (< v_main_~A~0_12 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {41#false} is VALID [2022-04-28 00:07:41,802 INFO L290 TraceCheckUtils]: 16: Hoare triple {41#false} [114] L27-->L47-3: Formula: (and (= v_main_~v~0_3 1) (= v_main_~r~0_2 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_7))) (= v_main_~u~0_3 (+ (* v_main_~R~0_5 2) 1))) InVars {main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5} OutVars{main_~v~0=v_main_~v~0_3, main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {41#false} is VALID [2022-04-28 00:07:41,802 INFO L290 TraceCheckUtils]: 17: Hoare triple {41#false} [117] L47-3-->L34-3: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-28 00:07:41,802 INFO L272 TraceCheckUtils]: 18: Hoare triple {41#false} [120] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~u~0_12 (- 2)) (* v_main_~v~0_12 2) (* v_main_~u~0_12 v_main_~u~0_12) (* (- 1) (* v_main_~v~0_12 v_main_~v~0_12))) (* v_main_~A~0_16 4)) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~v~0=v_main_~v~0_12, main_~A~0=v_main_~A~0_16, main_~u~0=v_main_~u~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0] {41#false} is VALID [2022-04-28 00:07:41,803 INFO L290 TraceCheckUtils]: 19: Hoare triple {41#false} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {41#false} is VALID [2022-04-28 00:07:41,803 INFO L290 TraceCheckUtils]: 20: Hoare triple {41#false} [127] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-28 00:07:41,803 INFO L290 TraceCheckUtils]: 21: Hoare triple {41#false} [131] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-28 00:07:41,804 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-28 00:07:41,804 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 00:07:41,804 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 00:07:41,805 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [775465881] [2022-04-28 00:07:41,805 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 00:07:41,805 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [472191283] [2022-04-28 00:07:41,805 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [472191283] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 00:07:41,806 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 00:07:41,806 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-04-28 00:07:41,807 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [742810486] [2022-04-28 00:07:41,808 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 00:07:41,813 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 6.5) internal successors, (13), 2 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 22 [2022-04-28 00:07:41,814 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 00:07:41,817 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 2 states, 2 states have (on average 6.5) internal successors, (13), 2 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 00:07:41,838 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 21 edges. 21 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 00:07:41,838 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-04-28 00:07:41,838 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 00:07:41,856 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-04-28 00:07:41,856 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-04-28 00:07:41,858 INFO L87 Difference]: Start difference. First operand has 37 states, 23 states have (on average 1.5217391304347827) internal successors, (35), 24 states have internal predecessors, (35), 8 states have call successors, (8), 4 states have call predecessors, (8), 4 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 6.5) internal successors, (13), 2 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 00:07:41,930 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 00:07:41,930 INFO L93 Difference]: Finished difference Result 67 states and 100 transitions. [2022-04-28 00:07:41,930 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-04-28 00:07:41,931 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 6.5) internal successors, (13), 2 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 22 [2022-04-28 00:07:41,931 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 00:07:41,932 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 6.5) internal successors, (13), 2 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 00:07:41,940 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 100 transitions. [2022-04-28 00:07:41,940 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 6.5) internal successors, (13), 2 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 00:07:41,959 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 100 transitions. [2022-04-28 00:07:41,960 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 2 states and 100 transitions. [2022-04-28 00:07:42,074 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 100 edges. 100 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 00:07:42,089 INFO L225 Difference]: With dead ends: 67 [2022-04-28 00:07:42,089 INFO L226 Difference]: Without dead ends: 32 [2022-04-28 00:07:42,093 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 21 GetRequests, 21 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-04-28 00:07:42,101 INFO L413 NwaCegarLoop]: 46 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, 46 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-04-28 00:07:42,102 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 00:07:42,116 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2022-04-28 00:07:42,131 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 32. [2022-04-28 00:07:42,132 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 00:07:42,134 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand has 32 states, 20 states have (on average 1.35) internal successors, (27), 21 states have internal predecessors, (27), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 00:07:42,138 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand has 32 states, 20 states have (on average 1.35) internal successors, (27), 21 states have internal predecessors, (27), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 00:07:42,139 INFO L87 Difference]: Start difference. First operand 32 states. Second operand has 32 states, 20 states have (on average 1.35) internal successors, (27), 21 states have internal predecessors, (27), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 00:07:42,145 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 00:07:42,145 INFO L93 Difference]: Finished difference Result 32 states and 41 transitions. [2022-04-28 00:07:42,145 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 41 transitions. [2022-04-28 00:07:42,146 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 00:07:42,146 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 00:07:42,147 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 20 states have (on average 1.35) internal successors, (27), 21 states have internal predecessors, (27), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 32 states. [2022-04-28 00:07:42,147 INFO L87 Difference]: Start difference. First operand has 32 states, 20 states have (on average 1.35) internal successors, (27), 21 states have internal predecessors, (27), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 32 states. [2022-04-28 00:07:42,150 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 00:07:42,150 INFO L93 Difference]: Finished difference Result 32 states and 41 transitions. [2022-04-28 00:07:42,150 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 41 transitions. [2022-04-28 00:07:42,151 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 00:07:42,151 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 00:07:42,151 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 00:07:42,151 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 00:07:42,152 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 20 states have (on average 1.35) internal successors, (27), 21 states have internal predecessors, (27), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 00:07:42,154 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 41 transitions. [2022-04-28 00:07:42,156 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 41 transitions. Word has length 22 [2022-04-28 00:07:42,156 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 00:07:42,156 INFO L495 AbstractCegarLoop]: Abstraction has 32 states and 41 transitions. [2022-04-28 00:07:42,156 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 6.5) internal successors, (13), 2 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 00:07:42,156 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 41 transitions. [2022-04-28 00:07:42,157 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-28 00:07:42,157 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 00:07:42,157 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 00:07:42,177 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-04-28 00:07:42,371 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable0 [2022-04-28 00:07:42,372 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 00:07:42,372 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 00:07:42,372 INFO L85 PathProgramCache]: Analyzing trace with hash -713449777, now seen corresponding path program 1 times [2022-04-28 00:07:42,373 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 00:07:42,373 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1626862568] [2022-04-28 00:07:42,373 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 00:07:42,373 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 00:07:42,394 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 00:07:42,395 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1718010986] [2022-04-28 00:07:42,395 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 00:07:42,395 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 00:07:42,395 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 00:07:42,396 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-04-28 00:07:42,420 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-04-28 00:07:42,458 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 00:07:42,459 INFO L263 TraceCheckSpWp]: Trace formula consists of 93 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-28 00:07:42,473 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 00:07:42,474 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 00:07:42,667 INFO L272 TraceCheckUtils]: 0: Hoare triple {307#true} [105] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {307#true} is VALID [2022-04-28 00:07:42,668 INFO L290 TraceCheckUtils]: 1: Hoare triple {307#true} [107] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= v_~counter~0_7 0) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_7, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {315#(<= ~counter~0 0)} is VALID [2022-04-28 00:07:42,668 INFO L290 TraceCheckUtils]: 2: Hoare triple {315#(<= ~counter~0 0)} [110] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {315#(<= ~counter~0 0)} is VALID [2022-04-28 00:07:42,669 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {315#(<= ~counter~0 0)} {307#true} [148] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {315#(<= ~counter~0 0)} is VALID [2022-04-28 00:07:42,670 INFO L272 TraceCheckUtils]: 4: Hoare triple {315#(<= ~counter~0 0)} [106] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {315#(<= ~counter~0 0)} is VALID [2022-04-28 00:07:42,670 INFO L290 TraceCheckUtils]: 5: Hoare triple {315#(<= ~counter~0 0)} [109] mainENTRY-->L25: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~R~0_1 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~A~0_2 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~A~0=v_main_~A~0_2, main_~R~0=v_main_~R~0_1, main_~u~0=v_main_~u~0_2, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~A~0, main_~R~0, main_~u~0, main_~r~0] {315#(<= ~counter~0 0)} is VALID [2022-04-28 00:07:42,671 INFO L272 TraceCheckUtils]: 6: Hoare triple {315#(<= ~counter~0 0)} [111] L25-->assume_abort_if_notENTRY: Formula: (= (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_11)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_11, main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {315#(<= ~counter~0 0)} is VALID [2022-04-28 00:07:42,671 INFO L290 TraceCheckUtils]: 7: Hoare triple {315#(<= ~counter~0 0)} [113] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {315#(<= ~counter~0 0)} is VALID [2022-04-28 00:07:42,672 INFO L290 TraceCheckUtils]: 8: Hoare triple {315#(<= ~counter~0 0)} [116] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {315#(<= ~counter~0 0)} is VALID [2022-04-28 00:07:42,672 INFO L290 TraceCheckUtils]: 9: Hoare triple {315#(<= ~counter~0 0)} [119] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {315#(<= ~counter~0 0)} is VALID [2022-04-28 00:07:42,673 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {315#(<= ~counter~0 0)} {315#(<= ~counter~0 0)} [149] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_11)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_11, main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {315#(<= ~counter~0 0)} is VALID [2022-04-28 00:07:42,674 INFO L272 TraceCheckUtils]: 11: Hoare triple {315#(<= ~counter~0 0)} [112] L25-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_12 2))) (ite (and (< v_main_~A~0_12 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {315#(<= ~counter~0 0)} is VALID [2022-04-28 00:07:42,674 INFO L290 TraceCheckUtils]: 12: Hoare triple {315#(<= ~counter~0 0)} [113] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {315#(<= ~counter~0 0)} is VALID [2022-04-28 00:07:42,675 INFO L290 TraceCheckUtils]: 13: Hoare triple {315#(<= ~counter~0 0)} [116] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {315#(<= ~counter~0 0)} is VALID [2022-04-28 00:07:42,675 INFO L290 TraceCheckUtils]: 14: Hoare triple {315#(<= ~counter~0 0)} [119] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {315#(<= ~counter~0 0)} is VALID [2022-04-28 00:07:42,676 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {315#(<= ~counter~0 0)} {315#(<= ~counter~0 0)} [150] assume_abort_if_notEXIT-->L27: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_12 2))) (ite (and (< v_main_~A~0_12 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {315#(<= ~counter~0 0)} is VALID [2022-04-28 00:07:42,676 INFO L290 TraceCheckUtils]: 16: Hoare triple {315#(<= ~counter~0 0)} [114] L27-->L47-3: Formula: (and (= v_main_~v~0_3 1) (= v_main_~r~0_2 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_7))) (= v_main_~u~0_3 (+ (* v_main_~R~0_5 2) 1))) InVars {main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5} OutVars{main_~v~0=v_main_~v~0_3, main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {315#(<= ~counter~0 0)} is VALID [2022-04-28 00:07:42,677 INFO L290 TraceCheckUtils]: 17: Hoare triple {315#(<= ~counter~0 0)} [118] L47-3-->L34-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {364#(<= |main_#t~post6| 0)} is VALID [2022-04-28 00:07:42,678 INFO L290 TraceCheckUtils]: 18: Hoare triple {364#(<= |main_#t~post6| 0)} [121] L34-1-->L34-3: Formula: (not (< |v_main_#t~post6_3| 5)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {308#false} is VALID [2022-04-28 00:07:42,679 INFO L272 TraceCheckUtils]: 19: Hoare triple {308#false} [120] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~u~0_12 (- 2)) (* v_main_~v~0_12 2) (* v_main_~u~0_12 v_main_~u~0_12) (* (- 1) (* v_main_~v~0_12 v_main_~v~0_12))) (* v_main_~A~0_16 4)) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~v~0=v_main_~v~0_12, main_~A~0=v_main_~A~0_16, main_~u~0=v_main_~u~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0] {308#false} is VALID [2022-04-28 00:07:42,681 INFO L290 TraceCheckUtils]: 20: Hoare triple {308#false} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {308#false} is VALID [2022-04-28 00:07:42,681 INFO L290 TraceCheckUtils]: 21: Hoare triple {308#false} [127] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {308#false} is VALID [2022-04-28 00:07:42,682 INFO L290 TraceCheckUtils]: 22: Hoare triple {308#false} [131] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {308#false} is VALID [2022-04-28 00:07:42,682 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 00:07:42,682 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 00:07:42,682 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 00:07:42,682 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1626862568] [2022-04-28 00:07:42,682 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 00:07:42,683 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1718010986] [2022-04-28 00:07:42,683 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1718010986] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 00:07:42,683 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 00:07:42,683 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 00:07:42,683 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [668371699] [2022-04-28 00:07:42,683 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 00:07:42,685 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-28 00:07:42,685 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 00:07:42,685 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 00:07:42,704 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 00:07:42,704 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-28 00:07:42,704 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 00:07:42,705 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-28 00:07:42,705 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-28 00:07:42,705 INFO L87 Difference]: Start difference. First operand 32 states and 41 transitions. Second operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 00:07:42,799 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 00:07:42,799 INFO L93 Difference]: Finished difference Result 41 states and 50 transitions. [2022-04-28 00:07:42,799 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-28 00:07:42,799 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-28 00:07:42,800 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 00:07:42,800 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 00:07:42,806 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 50 transitions. [2022-04-28 00:07:42,807 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 00:07:42,810 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 50 transitions. [2022-04-28 00:07:42,811 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 50 transitions. [2022-04-28 00:07:42,859 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 00:07:42,862 INFO L225 Difference]: With dead ends: 41 [2022-04-28 00:07:42,862 INFO L226 Difference]: Without dead ends: 34 [2022-04-28 00:07:42,862 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 22 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-28 00:07:42,863 INFO L413 NwaCegarLoop]: 39 mSDtfsCounter, 0 mSDsluCounter, 62 mSDsCounter, 0 mSdLazyCounter, 9 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 101 SdHoareTripleChecker+Invalid, 9 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 9 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 00:07:42,864 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 101 Invalid, 9 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 9 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 00:07:42,864 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-28 00:07:42,871 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 34. [2022-04-28 00:07:42,871 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 00:07:42,871 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand has 34 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 00:07:42,872 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand has 34 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 00:07:42,872 INFO L87 Difference]: Start difference. First operand 34 states. Second operand has 34 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 00:07:42,874 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 00:07:42,874 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-28 00:07:42,874 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-28 00:07:42,875 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 00:07:42,875 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 00:07:42,875 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 34 states. [2022-04-28 00:07:42,876 INFO L87 Difference]: Start difference. First operand has 34 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 34 states. [2022-04-28 00:07:42,878 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 00:07:42,878 INFO L93 Difference]: Finished difference Result 34 states and 43 transitions. [2022-04-28 00:07:42,878 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-28 00:07:42,879 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 00:07:42,879 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 00:07:42,879 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 00:07:42,879 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 00:07:42,879 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 22 states have (on average 1.3181818181818181) internal successors, (29), 23 states have internal predecessors, (29), 8 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 00:07:42,881 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 43 transitions. [2022-04-28 00:07:42,881 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 43 transitions. Word has length 23 [2022-04-28 00:07:42,881 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 00:07:42,881 INFO L495 AbstractCegarLoop]: Abstraction has 34 states and 43 transitions. [2022-04-28 00:07:42,881 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-28 00:07:42,882 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 43 transitions. [2022-04-28 00:07:42,882 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-28 00:07:42,882 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 00:07:42,882 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 00:07:42,905 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-04-28 00:07:43,083 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable1 [2022-04-28 00:07:43,083 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 00:07:43,084 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 00:07:43,084 INFO L85 PathProgramCache]: Analyzing trace with hash -712377301, now seen corresponding path program 1 times [2022-04-28 00:07:43,084 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 00:07:43,084 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1652725302] [2022-04-28 00:07:43,084 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 00:07:43,084 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 00:07:43,099 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 00:07:43,099 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [4341274] [2022-04-28 00:07:43,100 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 00:07:43,100 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 00:07:43,100 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 00:07:43,101 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 00:07:43,135 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-28 00:07:43,156 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 00:07:43,158 INFO L263 TraceCheckSpWp]: Trace formula consists of 93 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-28 00:07:43,169 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 00:07:43,170 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 00:07:43,526 INFO L272 TraceCheckUtils]: 0: Hoare triple {554#true} [105] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {554#true} is VALID [2022-04-28 00:07:43,526 INFO L290 TraceCheckUtils]: 1: Hoare triple {554#true} [107] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= v_~counter~0_7 0) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_7, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {554#true} is VALID [2022-04-28 00:07:43,527 INFO L290 TraceCheckUtils]: 2: Hoare triple {554#true} [110] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {554#true} is VALID [2022-04-28 00:07:43,527 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {554#true} {554#true} [148] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {554#true} is VALID [2022-04-28 00:07:43,527 INFO L272 TraceCheckUtils]: 4: Hoare triple {554#true} [106] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {554#true} is VALID [2022-04-28 00:07:43,527 INFO L290 TraceCheckUtils]: 5: Hoare triple {554#true} [109] mainENTRY-->L25: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~R~0_1 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~A~0_2 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~A~0=v_main_~A~0_2, main_~R~0=v_main_~R~0_1, main_~u~0=v_main_~u~0_2, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~A~0, main_~R~0, main_~u~0, main_~r~0] {554#true} is VALID [2022-04-28 00:07:43,528 INFO L272 TraceCheckUtils]: 6: Hoare triple {554#true} [111] L25-->assume_abort_if_notENTRY: Formula: (= (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_11)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_11, main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {554#true} is VALID [2022-04-28 00:07:43,528 INFO L290 TraceCheckUtils]: 7: Hoare triple {554#true} [113] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {554#true} is VALID [2022-04-28 00:07:43,528 INFO L290 TraceCheckUtils]: 8: Hoare triple {554#true} [116] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {554#true} is VALID [2022-04-28 00:07:43,528 INFO L290 TraceCheckUtils]: 9: Hoare triple {554#true} [119] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {554#true} is VALID [2022-04-28 00:07:43,528 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {554#true} {554#true} [149] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_11)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_11, main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {554#true} is VALID [2022-04-28 00:07:43,529 INFO L272 TraceCheckUtils]: 11: Hoare triple {554#true} [112] L25-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_12 2))) (ite (and (< v_main_~A~0_12 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {554#true} is VALID [2022-04-28 00:07:43,529 INFO L290 TraceCheckUtils]: 12: Hoare triple {554#true} [113] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {554#true} is VALID [2022-04-28 00:07:43,529 INFO L290 TraceCheckUtils]: 13: Hoare triple {554#true} [116] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {554#true} is VALID [2022-04-28 00:07:43,529 INFO L290 TraceCheckUtils]: 14: Hoare triple {554#true} [119] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {554#true} is VALID [2022-04-28 00:07:43,529 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {554#true} {554#true} [150] assume_abort_if_notEXIT-->L27: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_12 2))) (ite (and (< v_main_~A~0_12 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {554#true} is VALID [2022-04-28 00:07:43,760 INFO L290 TraceCheckUtils]: 16: Hoare triple {554#true} [114] L27-->L47-3: Formula: (and (= v_main_~v~0_3 1) (= v_main_~r~0_2 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_7))) (= v_main_~u~0_3 (+ (* v_main_~R~0_5 2) 1))) InVars {main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5} OutVars{main_~v~0=v_main_~v~0_3, main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {607#(and (= (+ (* (- 1) main_~A~0) (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) main_~r~0) (= (mod (+ main_~u~0 1) 2) 0) (= main_~v~0 1))} is VALID [2022-04-28 00:07:43,761 INFO L290 TraceCheckUtils]: 17: Hoare triple {607#(and (= (+ (* (- 1) main_~A~0) (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) main_~r~0) (= (mod (+ main_~u~0 1) 2) 0) (= main_~v~0 1))} [118] L47-3-->L34-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {607#(and (= (+ (* (- 1) main_~A~0) (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) main_~r~0) (= (mod (+ main_~u~0 1) 2) 0) (= main_~v~0 1))} is VALID [2022-04-28 00:07:43,762 INFO L290 TraceCheckUtils]: 18: Hoare triple {607#(and (= (+ (* (- 1) main_~A~0) (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) main_~r~0) (= (mod (+ main_~u~0 1) 2) 0) (= main_~v~0 1))} [122] L34-1-->L35: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {607#(and (= (+ (* (- 1) main_~A~0) (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) main_~r~0) (= (mod (+ main_~u~0 1) 2) 0) (= main_~v~0 1))} is VALID [2022-04-28 00:07:45,767 WARN L272 TraceCheckUtils]: 19: Hoare triple {607#(and (= (+ (* (- 1) main_~A~0) (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) main_~r~0) (= (mod (+ main_~u~0 1) 2) 0) (= main_~v~0 1))} [125] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_13 4) (* v_main_~r~0_14 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_13, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {617#(<= 1 |__VERIFIER_assert_#in~cond|)} is UNKNOWN [2022-04-28 00:07:45,768 INFO L290 TraceCheckUtils]: 20: Hoare triple {617#(<= 1 |__VERIFIER_assert_#in~cond|)} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {621#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 00:07:45,769 INFO L290 TraceCheckUtils]: 21: Hoare triple {621#(<= 1 __VERIFIER_assert_~cond)} [127] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {555#false} is VALID [2022-04-28 00:07:45,769 INFO L290 TraceCheckUtils]: 22: Hoare triple {555#false} [131] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {555#false} is VALID [2022-04-28 00:07:45,769 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 00:07:45,769 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 00:07:45,770 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 00:07:45,770 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1652725302] [2022-04-28 00:07:45,770 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 00:07:45,770 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [4341274] [2022-04-28 00:07:45,770 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [4341274] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 00:07:45,770 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 00:07:45,770 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 00:07:45,770 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [109289779] [2022-04-28 00:07:45,770 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 00:07:45,771 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 23 [2022-04-28 00:07:45,771 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 00:07:45,771 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 00:07:47,259 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 00:07:47,259 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 00:07:47,260 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 00:07:47,260 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 00:07:47,260 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-28 00:07:47,260 INFO L87 Difference]: Start difference. First operand 34 states and 43 transitions. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 00:08:01,139 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.54s for a HTC check with result VALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-28 00:08:01,195 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 00:08:01,196 INFO L93 Difference]: Finished difference Result 53 states and 70 transitions. [2022-04-28 00:08:01,196 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 00:08:01,196 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) Word has length 23 [2022-04-28 00:08:01,196 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 00:08:01,196 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 00:08:01,198 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 68 transitions. [2022-04-28 00:08:01,199 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 00:08:01,201 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 68 transitions. [2022-04-28 00:08:01,201 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 68 transitions. [2022-04-28 00:08:08,882 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 66 inductive. 0 not inductive. 2 times theorem prover too weak to decide inductivity. [2022-04-28 00:08:08,884 INFO L225 Difference]: With dead ends: 53 [2022-04-28 00:08:08,885 INFO L226 Difference]: Without dead ends: 51 [2022-04-28 00:08:08,885 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 23 GetRequests, 19 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-04-28 00:08:08,886 INFO L413 NwaCegarLoop]: 33 mSDtfsCounter, 16 mSDsluCounter, 83 mSDsCounter, 0 mSdLazyCounter, 56 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 6.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 19 SdHoareTripleChecker+Valid, 116 SdHoareTripleChecker+Invalid, 59 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 56 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 6.2s IncrementalHoareTripleChecker+Time [2022-04-28 00:08:08,886 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [19 Valid, 116 Invalid, 59 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 56 Invalid, 0 Unknown, 0 Unchecked, 6.2s Time] [2022-04-28 00:08:08,887 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 51 states. [2022-04-28 00:08:08,902 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 51 to 50. [2022-04-28 00:08:08,902 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 00:08:08,903 INFO L82 GeneralOperation]: Start isEquivalent. First operand 51 states. Second operand has 50 states, 34 states have (on average 1.3823529411764706) internal successors, (47), 35 states have internal predecessors, (47), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 00:08:08,903 INFO L74 IsIncluded]: Start isIncluded. First operand 51 states. Second operand has 50 states, 34 states have (on average 1.3823529411764706) internal successors, (47), 35 states have internal predecessors, (47), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 00:08:08,904 INFO L87 Difference]: Start difference. First operand 51 states. Second operand has 50 states, 34 states have (on average 1.3823529411764706) internal successors, (47), 35 states have internal predecessors, (47), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 00:08:08,907 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 00:08:08,907 INFO L93 Difference]: Finished difference Result 51 states and 68 transitions. [2022-04-28 00:08:08,907 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 68 transitions. [2022-04-28 00:08:08,908 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 00:08:08,908 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 00:08:08,908 INFO L74 IsIncluded]: Start isIncluded. First operand has 50 states, 34 states have (on average 1.3823529411764706) internal successors, (47), 35 states have internal predecessors, (47), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 51 states. [2022-04-28 00:08:08,908 INFO L87 Difference]: Start difference. First operand has 50 states, 34 states have (on average 1.3823529411764706) internal successors, (47), 35 states have internal predecessors, (47), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) Second operand 51 states. [2022-04-28 00:08:08,914 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 00:08:08,914 INFO L93 Difference]: Finished difference Result 51 states and 68 transitions. [2022-04-28 00:08:08,914 INFO L276 IsEmpty]: Start isEmpty. Operand 51 states and 68 transitions. [2022-04-28 00:08:08,915 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 00:08:08,915 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 00:08:08,915 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 00:08:08,915 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 00:08:08,916 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 50 states, 34 states have (on average 1.3823529411764706) internal successors, (47), 35 states have internal predecessors, (47), 11 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 9 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-28 00:08:08,918 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 67 transitions. [2022-04-28 00:08:08,918 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 67 transitions. Word has length 23 [2022-04-28 00:08:08,918 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 00:08:08,918 INFO L495 AbstractCegarLoop]: Abstraction has 50 states and 67 transitions. [2022-04-28 00:08:08,919 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-28 00:08:08,919 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 67 transitions. [2022-04-28 00:08:08,920 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-28 00:08:08,920 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 00:08:08,920 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 00:08:08,938 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-28 00:08:09,120 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 00:08:09,121 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 00:08:09,121 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 00:08:09,121 INFO L85 PathProgramCache]: Analyzing trace with hash 740915101, now seen corresponding path program 1 times [2022-04-28 00:08:09,121 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 00:08:09,121 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1467737808] [2022-04-28 00:08:09,121 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 00:08:09,121 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 00:08:09,142 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 00:08:09,142 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [655701414] [2022-04-28 00:08:09,142 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 00:08:09,142 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 00:08:09,142 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 00:08:09,145 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 00:08:09,146 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-28 00:08:09,199 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 00:08:09,200 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-28 00:08:09,209 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 00:08:09,210 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 00:08:09,465 INFO L272 TraceCheckUtils]: 0: Hoare triple {877#true} [105] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {877#true} is VALID [2022-04-28 00:08:09,465 INFO L290 TraceCheckUtils]: 1: Hoare triple {877#true} [107] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= v_~counter~0_7 0) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_7, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {877#true} is VALID [2022-04-28 00:08:09,465 INFO L290 TraceCheckUtils]: 2: Hoare triple {877#true} [110] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {877#true} is VALID [2022-04-28 00:08:09,466 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {877#true} {877#true} [148] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {877#true} is VALID [2022-04-28 00:08:09,466 INFO L272 TraceCheckUtils]: 4: Hoare triple {877#true} [106] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {877#true} is VALID [2022-04-28 00:08:09,466 INFO L290 TraceCheckUtils]: 5: Hoare triple {877#true} [109] mainENTRY-->L25: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~R~0_1 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~A~0_2 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~A~0=v_main_~A~0_2, main_~R~0=v_main_~R~0_1, main_~u~0=v_main_~u~0_2, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~A~0, main_~R~0, main_~u~0, main_~r~0] {877#true} is VALID [2022-04-28 00:08:09,466 INFO L272 TraceCheckUtils]: 6: Hoare triple {877#true} [111] L25-->assume_abort_if_notENTRY: Formula: (= (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_11)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_11, main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {877#true} is VALID [2022-04-28 00:08:09,466 INFO L290 TraceCheckUtils]: 7: Hoare triple {877#true} [113] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {877#true} is VALID [2022-04-28 00:08:09,467 INFO L290 TraceCheckUtils]: 8: Hoare triple {877#true} [116] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {877#true} is VALID [2022-04-28 00:08:09,467 INFO L290 TraceCheckUtils]: 9: Hoare triple {877#true} [119] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {877#true} is VALID [2022-04-28 00:08:09,467 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {877#true} {877#true} [149] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_11)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_11, main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {877#true} is VALID [2022-04-28 00:08:09,468 INFO L272 TraceCheckUtils]: 11: Hoare triple {877#true} [112] L25-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_12 2))) (ite (and (< v_main_~A~0_12 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {877#true} is VALID [2022-04-28 00:08:09,468 INFO L290 TraceCheckUtils]: 12: Hoare triple {877#true} [113] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {877#true} is VALID [2022-04-28 00:08:09,468 INFO L290 TraceCheckUtils]: 13: Hoare triple {877#true} [116] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {877#true} is VALID [2022-04-28 00:08:09,468 INFO L290 TraceCheckUtils]: 14: Hoare triple {877#true} [119] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {877#true} is VALID [2022-04-28 00:08:09,469 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {877#true} {877#true} [150] assume_abort_if_notEXIT-->L27: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_12 2))) (ite (and (< v_main_~A~0_12 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {877#true} is VALID [2022-04-28 00:08:09,469 INFO L290 TraceCheckUtils]: 16: Hoare triple {877#true} [114] L27-->L47-3: Formula: (and (= v_main_~v~0_3 1) (= v_main_~r~0_2 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_7))) (= v_main_~u~0_3 (+ (* v_main_~R~0_5 2) 1))) InVars {main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5} OutVars{main_~v~0=v_main_~v~0_3, main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {877#true} is VALID [2022-04-28 00:08:09,470 INFO L290 TraceCheckUtils]: 17: Hoare triple {877#true} [118] L47-3-->L34-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {877#true} is VALID [2022-04-28 00:08:09,470 INFO L290 TraceCheckUtils]: 18: Hoare triple {877#true} [122] L34-1-->L35: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {877#true} is VALID [2022-04-28 00:08:09,472 INFO L272 TraceCheckUtils]: 19: Hoare triple {877#true} [125] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_13 4) (* v_main_~r~0_14 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_13, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {877#true} is VALID [2022-04-28 00:08:09,472 INFO L290 TraceCheckUtils]: 20: Hoare triple {877#true} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {942#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-28 00:08:09,473 INFO L290 TraceCheckUtils]: 21: Hoare triple {942#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [128] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {946#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 00:08:09,473 INFO L290 TraceCheckUtils]: 22: Hoare triple {946#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {946#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 00:08:09,474 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {946#(not (= |__VERIFIER_assert_#in~cond| 0))} {877#true} [152] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_13 4) (* v_main_~r~0_14 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_13, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {953#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4) (* main_~r~0 4)))} is VALID [2022-04-28 00:08:09,475 INFO L290 TraceCheckUtils]: 24: Hoare triple {953#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4) (* main_~r~0 4)))} [129] L35-1-->L34-3: Formula: (= v_main_~r~0_4 0) InVars {main_~r~0=v_main_~r~0_4} OutVars{main_~r~0=v_main_~r~0_4} AuxVars[] AssignedVars[] {957#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4)))} is VALID [2022-04-28 00:08:09,476 INFO L272 TraceCheckUtils]: 25: Hoare triple {957#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4)))} [120] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~u~0_12 (- 2)) (* v_main_~v~0_12 2) (* v_main_~u~0_12 v_main_~u~0_12) (* (- 1) (* v_main_~v~0_12 v_main_~v~0_12))) (* v_main_~A~0_16 4)) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~v~0=v_main_~v~0_12, main_~A~0=v_main_~A~0_16, main_~u~0=v_main_~u~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0] {961#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 00:08:09,476 INFO L290 TraceCheckUtils]: 26: Hoare triple {961#(<= 1 |__VERIFIER_assert_#in~cond|)} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {965#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 00:08:09,477 INFO L290 TraceCheckUtils]: 27: Hoare triple {965#(<= 1 __VERIFIER_assert_~cond)} [127] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {878#false} is VALID [2022-04-28 00:08:09,477 INFO L290 TraceCheckUtils]: 28: Hoare triple {878#false} [131] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {878#false} is VALID [2022-04-28 00:08:09,477 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 00:08:09,477 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 00:08:09,931 INFO L290 TraceCheckUtils]: 28: Hoare triple {878#false} [131] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {878#false} is VALID [2022-04-28 00:08:09,931 INFO L290 TraceCheckUtils]: 27: Hoare triple {965#(<= 1 __VERIFIER_assert_~cond)} [127] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {878#false} is VALID [2022-04-28 00:08:09,932 INFO L290 TraceCheckUtils]: 26: Hoare triple {961#(<= 1 |__VERIFIER_assert_#in~cond|)} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {965#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-28 00:08:09,933 INFO L272 TraceCheckUtils]: 25: Hoare triple {957#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4)))} [120] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~u~0_12 (- 2)) (* v_main_~v~0_12 2) (* v_main_~u~0_12 v_main_~u~0_12) (* (- 1) (* v_main_~v~0_12 v_main_~v~0_12))) (* v_main_~A~0_16 4)) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~v~0=v_main_~v~0_12, main_~A~0=v_main_~A~0_16, main_~u~0=v_main_~u~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0] {961#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-28 00:08:09,933 INFO L290 TraceCheckUtils]: 24: Hoare triple {984#(or (not (= main_~r~0 0)) (= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4))))} [129] L35-1-->L34-3: Formula: (= v_main_~r~0_4 0) InVars {main_~r~0=v_main_~r~0_4} OutVars{main_~r~0=v_main_~r~0_4} AuxVars[] AssignedVars[] {957#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4)))} is VALID [2022-04-28 00:08:09,936 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {946#(not (= |__VERIFIER_assert_#in~cond| 0))} {877#true} [152] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_13 4) (* v_main_~r~0_14 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_13, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {984#(or (not (= main_~r~0 0)) (= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4))))} is VALID [2022-04-28 00:08:09,941 INFO L290 TraceCheckUtils]: 22: Hoare triple {946#(not (= |__VERIFIER_assert_#in~cond| 0))} [133] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {946#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 00:08:09,942 INFO L290 TraceCheckUtils]: 21: Hoare triple {997#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [128] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {946#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 00:08:09,942 INFO L290 TraceCheckUtils]: 20: Hoare triple {877#true} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {997#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 00:08:09,942 INFO L272 TraceCheckUtils]: 19: Hoare triple {877#true} [125] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_13 4) (* v_main_~r~0_14 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_13, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {877#true} is VALID [2022-04-28 00:08:09,942 INFO L290 TraceCheckUtils]: 18: Hoare triple {877#true} [122] L34-1-->L35: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {877#true} is VALID [2022-04-28 00:08:09,943 INFO L290 TraceCheckUtils]: 17: Hoare triple {877#true} [118] L47-3-->L34-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {877#true} is VALID [2022-04-28 00:08:09,943 INFO L290 TraceCheckUtils]: 16: Hoare triple {877#true} [114] L27-->L47-3: Formula: (and (= v_main_~v~0_3 1) (= v_main_~r~0_2 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_7))) (= v_main_~u~0_3 (+ (* v_main_~R~0_5 2) 1))) InVars {main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5} OutVars{main_~v~0=v_main_~v~0_3, main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {877#true} is VALID [2022-04-28 00:08:09,943 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {877#true} {877#true} [150] assume_abort_if_notEXIT-->L27: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_12 2))) (ite (and (< v_main_~A~0_12 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {877#true} is VALID [2022-04-28 00:08:09,943 INFO L290 TraceCheckUtils]: 14: Hoare triple {877#true} [119] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {877#true} is VALID [2022-04-28 00:08:09,943 INFO L290 TraceCheckUtils]: 13: Hoare triple {877#true} [116] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {877#true} is VALID [2022-04-28 00:08:09,944 INFO L290 TraceCheckUtils]: 12: Hoare triple {877#true} [113] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {877#true} is VALID [2022-04-28 00:08:09,944 INFO L272 TraceCheckUtils]: 11: Hoare triple {877#true} [112] L25-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_12 2))) (ite (and (< v_main_~A~0_12 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {877#true} is VALID [2022-04-28 00:08:09,944 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {877#true} {877#true} [149] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_11)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_11, main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {877#true} is VALID [2022-04-28 00:08:09,944 INFO L290 TraceCheckUtils]: 9: Hoare triple {877#true} [119] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {877#true} is VALID [2022-04-28 00:08:09,944 INFO L290 TraceCheckUtils]: 8: Hoare triple {877#true} [116] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {877#true} is VALID [2022-04-28 00:08:09,945 INFO L290 TraceCheckUtils]: 7: Hoare triple {877#true} [113] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {877#true} is VALID [2022-04-28 00:08:09,945 INFO L272 TraceCheckUtils]: 6: Hoare triple {877#true} [111] L25-->assume_abort_if_notENTRY: Formula: (= (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_11)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_11, main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {877#true} is VALID [2022-04-28 00:08:09,945 INFO L290 TraceCheckUtils]: 5: Hoare triple {877#true} [109] mainENTRY-->L25: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~R~0_1 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~A~0_2 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~A~0=v_main_~A~0_2, main_~R~0=v_main_~R~0_1, main_~u~0=v_main_~u~0_2, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~A~0, main_~R~0, main_~u~0, main_~r~0] {877#true} is VALID [2022-04-28 00:08:09,945 INFO L272 TraceCheckUtils]: 4: Hoare triple {877#true} [106] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {877#true} is VALID [2022-04-28 00:08:09,945 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {877#true} {877#true} [148] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {877#true} is VALID [2022-04-28 00:08:09,945 INFO L290 TraceCheckUtils]: 2: Hoare triple {877#true} [110] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {877#true} is VALID [2022-04-28 00:08:09,946 INFO L290 TraceCheckUtils]: 1: Hoare triple {877#true} [107] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= v_~counter~0_7 0) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_7, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {877#true} is VALID [2022-04-28 00:08:09,946 INFO L272 TraceCheckUtils]: 0: Hoare triple {877#true} [105] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {877#true} is VALID [2022-04-28 00:08:09,946 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 00:08:09,946 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 00:08:09,946 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1467737808] [2022-04-28 00:08:09,946 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 00:08:09,947 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [655701414] [2022-04-28 00:08:09,947 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [655701414] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 00:08:09,947 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 00:08:09,947 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-28 00:08:09,947 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1217062426] [2022-04-28 00:08:09,947 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-28 00:08:09,948 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.111111111111111) internal successors, (19), 7 states have internal predecessors, (19), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) Word has length 29 [2022-04-28 00:08:09,948 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 00:08:09,948 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.111111111111111) internal successors, (19), 7 states have internal predecessors, (19), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 00:08:09,969 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 00:08:09,969 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-28 00:08:09,969 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 00:08:09,970 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-28 00:08:09,970 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=67, Unknown=0, NotChecked=0, Total=90 [2022-04-28 00:08:09,970 INFO L87 Difference]: Start difference. First operand 50 states and 67 transitions. Second operand has 10 states, 9 states have (on average 2.111111111111111) internal successors, (19), 7 states have internal predecessors, (19), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 00:08:10,516 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 00:08:10,516 INFO L93 Difference]: Finished difference Result 57 states and 73 transitions. [2022-04-28 00:08:10,516 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 00:08:10,516 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.111111111111111) internal successors, (19), 7 states have internal predecessors, (19), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) Word has length 29 [2022-04-28 00:08:10,517 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 00:08:10,517 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.111111111111111) internal successors, (19), 7 states have internal predecessors, (19), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 00:08:10,518 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-28 00:08:10,518 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.111111111111111) internal successors, (19), 7 states have internal predecessors, (19), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 00:08:10,520 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 47 transitions. [2022-04-28 00:08:10,520 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 47 transitions. [2022-04-28 00:08:10,565 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 00:08:10,567 INFO L225 Difference]: With dead ends: 57 [2022-04-28 00:08:10,567 INFO L226 Difference]: Without dead ends: 52 [2022-04-28 00:08:10,567 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 60 GetRequests, 48 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=41, Invalid=115, Unknown=0, NotChecked=0, Total=156 [2022-04-28 00:08:10,568 INFO L413 NwaCegarLoop]: 29 mSDtfsCounter, 24 mSDsluCounter, 142 mSDsCounter, 0 mSdLazyCounter, 105 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 26 SdHoareTripleChecker+Valid, 171 SdHoareTripleChecker+Invalid, 113 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 105 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 00:08:10,569 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [26 Valid, 171 Invalid, 113 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 105 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 00:08:10,569 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 52 states. [2022-04-28 00:08:10,582 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 52 to 36. [2022-04-28 00:08:10,582 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 00:08:10,583 INFO L82 GeneralOperation]: Start isEquivalent. First operand 52 states. Second operand has 36 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 24 states have internal predecessors, (29), 8 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 00:08:10,584 INFO L74 IsIncluded]: Start isIncluded. First operand 52 states. Second operand has 36 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 24 states have internal predecessors, (29), 8 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 00:08:10,584 INFO L87 Difference]: Start difference. First operand 52 states. Second operand has 36 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 24 states have internal predecessors, (29), 8 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 00:08:10,591 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 00:08:10,591 INFO L93 Difference]: Finished difference Result 52 states and 66 transitions. [2022-04-28 00:08:10,591 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 66 transitions. [2022-04-28 00:08:10,592 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 00:08:10,592 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 00:08:10,592 INFO L74 IsIncluded]: Start isIncluded. First operand has 36 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 24 states have internal predecessors, (29), 8 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 52 states. [2022-04-28 00:08:10,593 INFO L87 Difference]: Start difference. First operand has 36 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 24 states have internal predecessors, (29), 8 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 52 states. [2022-04-28 00:08:10,595 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 00:08:10,595 INFO L93 Difference]: Finished difference Result 52 states and 66 transitions. [2022-04-28 00:08:10,595 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 66 transitions. [2022-04-28 00:08:10,595 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 00:08:10,595 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 00:08:10,595 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 00:08:10,596 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 00:08:10,596 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 24 states have (on average 1.2083333333333333) internal successors, (29), 24 states have internal predecessors, (29), 8 states have call successors, (8), 5 states have call predecessors, (8), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 00:08:10,597 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 43 transitions. [2022-04-28 00:08:10,597 INFO L78 Accepts]: Start accepts. Automaton has 36 states and 43 transitions. Word has length 29 [2022-04-28 00:08:10,597 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 00:08:10,597 INFO L495 AbstractCegarLoop]: Abstraction has 36 states and 43 transitions. [2022-04-28 00:08:10,598 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.111111111111111) internal successors, (19), 7 states have internal predecessors, (19), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-28 00:08:10,598 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 43 transitions. [2022-04-28 00:08:10,604 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-04-28 00:08:10,604 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 00:08:10,605 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 00:08:10,630 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-28 00:08:10,819 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 00:08:10,819 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 00:08:10,820 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 00:08:10,820 INFO L85 PathProgramCache]: Analyzing trace with hash -1345250901, now seen corresponding path program 1 times [2022-04-28 00:08:10,820 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 00:08:10,820 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1494898063] [2022-04-28 00:08:10,820 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 00:08:10,820 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 00:08:10,832 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 00:08:10,832 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [754355569] [2022-04-28 00:08:10,833 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 00:08:10,833 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 00:08:10,833 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 00:08:10,834 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 00:08:10,849 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-28 00:08:10,897 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 00:08:10,898 INFO L263 TraceCheckSpWp]: Trace formula consists of 118 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 00:08:10,917 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 00:08:10,918 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 00:08:11,096 INFO L272 TraceCheckUtils]: 0: Hoare triple {1302#true} [105] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1302#true} is VALID [2022-04-28 00:08:11,097 INFO L290 TraceCheckUtils]: 1: Hoare triple {1302#true} [107] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= v_~counter~0_7 0) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_7, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {1310#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:11,098 INFO L290 TraceCheckUtils]: 2: Hoare triple {1310#(<= ~counter~0 0)} [110] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1310#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:11,098 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1310#(<= ~counter~0 0)} {1302#true} [148] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1310#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:11,099 INFO L272 TraceCheckUtils]: 4: Hoare triple {1310#(<= ~counter~0 0)} [106] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1310#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:11,099 INFO L290 TraceCheckUtils]: 5: Hoare triple {1310#(<= ~counter~0 0)} [109] mainENTRY-->L25: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~R~0_1 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~A~0_2 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~A~0=v_main_~A~0_2, main_~R~0=v_main_~R~0_1, main_~u~0=v_main_~u~0_2, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~A~0, main_~R~0, main_~u~0, main_~r~0] {1310#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:11,100 INFO L272 TraceCheckUtils]: 6: Hoare triple {1310#(<= ~counter~0 0)} [111] L25-->assume_abort_if_notENTRY: Formula: (= (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_11)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_11, main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {1310#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:11,100 INFO L290 TraceCheckUtils]: 7: Hoare triple {1310#(<= ~counter~0 0)} [113] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1310#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:11,101 INFO L290 TraceCheckUtils]: 8: Hoare triple {1310#(<= ~counter~0 0)} [116] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1310#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:11,101 INFO L290 TraceCheckUtils]: 9: Hoare triple {1310#(<= ~counter~0 0)} [119] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1310#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:11,102 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1310#(<= ~counter~0 0)} {1310#(<= ~counter~0 0)} [149] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_11)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_11, main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {1310#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:11,102 INFO L272 TraceCheckUtils]: 11: Hoare triple {1310#(<= ~counter~0 0)} [112] L25-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_12 2))) (ite (and (< v_main_~A~0_12 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {1310#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:11,103 INFO L290 TraceCheckUtils]: 12: Hoare triple {1310#(<= ~counter~0 0)} [113] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1310#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:11,103 INFO L290 TraceCheckUtils]: 13: Hoare triple {1310#(<= ~counter~0 0)} [116] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1310#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:11,104 INFO L290 TraceCheckUtils]: 14: Hoare triple {1310#(<= ~counter~0 0)} [119] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1310#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:11,104 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1310#(<= ~counter~0 0)} {1310#(<= ~counter~0 0)} [150] assume_abort_if_notEXIT-->L27: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_12 2))) (ite (and (< v_main_~A~0_12 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {1310#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:11,105 INFO L290 TraceCheckUtils]: 16: Hoare triple {1310#(<= ~counter~0 0)} [114] L27-->L47-3: Formula: (and (= v_main_~v~0_3 1) (= v_main_~r~0_2 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_7))) (= v_main_~u~0_3 (+ (* v_main_~R~0_5 2) 1))) InVars {main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5} OutVars{main_~v~0=v_main_~v~0_3, main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {1310#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:11,105 INFO L290 TraceCheckUtils]: 17: Hoare triple {1310#(<= ~counter~0 0)} [118] L47-3-->L34-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1359#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:11,106 INFO L290 TraceCheckUtils]: 18: Hoare triple {1359#(<= ~counter~0 1)} [122] L34-1-->L35: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1359#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:11,107 INFO L272 TraceCheckUtils]: 19: Hoare triple {1359#(<= ~counter~0 1)} [125] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_13 4) (* v_main_~r~0_14 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_13, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {1359#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:11,107 INFO L290 TraceCheckUtils]: 20: Hoare triple {1359#(<= ~counter~0 1)} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1359#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:11,108 INFO L290 TraceCheckUtils]: 21: Hoare triple {1359#(<= ~counter~0 1)} [128] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1359#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:11,108 INFO L290 TraceCheckUtils]: 22: Hoare triple {1359#(<= ~counter~0 1)} [133] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1359#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:11,109 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1359#(<= ~counter~0 1)} {1359#(<= ~counter~0 1)} [152] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_13 4) (* v_main_~r~0_14 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_13, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {1359#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:11,109 INFO L290 TraceCheckUtils]: 24: Hoare triple {1359#(<= ~counter~0 1)} [130] L35-1-->L39-3: Formula: (not (= v_main_~r~0_5 0)) InVars {main_~r~0=v_main_~r~0_5} OutVars{main_~r~0=v_main_~r~0_5} AuxVars[] AssignedVars[] {1359#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:11,110 INFO L290 TraceCheckUtils]: 25: Hoare triple {1359#(<= ~counter~0 1)} [135] L39-3-->L39-1: Formula: (and (= |v_main_#t~post7_1| v_~counter~0_4) (= (+ |v_main_#t~post7_1| 1) v_~counter~0_3)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post7] {1384#(<= |main_#t~post7| 1)} is VALID [2022-04-28 00:08:11,110 INFO L290 TraceCheckUtils]: 26: Hoare triple {1384#(<= |main_#t~post7| 1)} [138] L39-1-->L47-2: Formula: (not (< |v_main_#t~post7_3| 5)) InVars {main_#t~post7=|v_main_#t~post7_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post7] {1303#false} is VALID [2022-04-28 00:08:11,111 INFO L290 TraceCheckUtils]: 27: Hoare triple {1303#false} [137] L47-2-->L47: Formula: (and (= (+ |v_main_#t~post8_1| 1) v_~counter~0_5) (= |v_main_#t~post8_1| v_~counter~0_6)) InVars {~counter~0=v_~counter~0_6} OutVars{main_#t~post8=|v_main_#t~post8_1|, ~counter~0=v_~counter~0_5} AuxVars[] AssignedVars[~counter~0, main_#t~post8] {1303#false} is VALID [2022-04-28 00:08:11,111 INFO L290 TraceCheckUtils]: 28: Hoare triple {1303#false} [144] L47-->L47-3: Formula: (not (< |v_main_#t~post8_3| 5)) InVars {main_#t~post8=|v_main_#t~post8_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post8] {1303#false} is VALID [2022-04-28 00:08:11,111 INFO L290 TraceCheckUtils]: 29: Hoare triple {1303#false} [118] L47-3-->L34-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1303#false} is VALID [2022-04-28 00:08:11,111 INFO L290 TraceCheckUtils]: 30: Hoare triple {1303#false} [121] L34-1-->L34-3: Formula: (not (< |v_main_#t~post6_3| 5)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1303#false} is VALID [2022-04-28 00:08:11,111 INFO L272 TraceCheckUtils]: 31: Hoare triple {1303#false} [120] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~u~0_12 (- 2)) (* v_main_~v~0_12 2) (* v_main_~u~0_12 v_main_~u~0_12) (* (- 1) (* v_main_~v~0_12 v_main_~v~0_12))) (* v_main_~A~0_16 4)) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~v~0=v_main_~v~0_12, main_~A~0=v_main_~A~0_16, main_~u~0=v_main_~u~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0] {1303#false} is VALID [2022-04-28 00:08:11,111 INFO L290 TraceCheckUtils]: 32: Hoare triple {1303#false} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1303#false} is VALID [2022-04-28 00:08:11,111 INFO L290 TraceCheckUtils]: 33: Hoare triple {1303#false} [127] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {1303#false} is VALID [2022-04-28 00:08:11,112 INFO L290 TraceCheckUtils]: 34: Hoare triple {1303#false} [131] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1303#false} is VALID [2022-04-28 00:08:11,112 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 00:08:11,112 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 00:08:11,112 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 00:08:11,112 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1494898063] [2022-04-28 00:08:11,112 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 00:08:11,112 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [754355569] [2022-04-28 00:08:11,112 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [754355569] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 00:08:11,112 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 00:08:11,113 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 00:08:11,113 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1619867524] [2022-04-28 00:08:11,113 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 00:08:11,113 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) Word has length 35 [2022-04-28 00:08:11,113 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 00:08:11,115 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 00:08:11,153 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 00:08:11,153 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 00:08:11,154 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 00:08:11,154 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 00:08:11,154 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-28 00:08:11,154 INFO L87 Difference]: Start difference. First operand 36 states and 43 transitions. Second operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 00:08:11,273 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 00:08:11,274 INFO L93 Difference]: Finished difference Result 65 states and 79 transitions. [2022-04-28 00:08:11,274 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 00:08:11,274 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) Word has length 35 [2022-04-28 00:08:11,274 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 00:08:11,274 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 00:08:11,276 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 77 transitions. [2022-04-28 00:08:11,276 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 00:08:11,278 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 77 transitions. [2022-04-28 00:08:11,278 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 77 transitions. [2022-04-28 00:08:11,338 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 00:08:11,339 INFO L225 Difference]: With dead ends: 65 [2022-04-28 00:08:11,339 INFO L226 Difference]: Without dead ends: 44 [2022-04-28 00:08:11,340 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 34 GetRequests, 31 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-28 00:08:11,341 INFO L413 NwaCegarLoop]: 38 mSDtfsCounter, 6 mSDsluCounter, 82 mSDsCounter, 0 mSdLazyCounter, 17 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 120 SdHoareTripleChecker+Invalid, 24 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 17 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 00:08:11,341 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [6 Valid, 120 Invalid, 24 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 17 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 00:08:11,342 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 44 states. [2022-04-28 00:08:11,354 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 44 to 44. [2022-04-28 00:08:11,354 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 00:08:11,355 INFO L82 GeneralOperation]: Start isEquivalent. First operand 44 states. Second operand has 44 states, 30 states have (on average 1.1666666666666667) internal successors, (35), 30 states have internal predecessors, (35), 9 states have call successors, (9), 6 states have call predecessors, (9), 4 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 00:08:11,355 INFO L74 IsIncluded]: Start isIncluded. First operand 44 states. Second operand has 44 states, 30 states have (on average 1.1666666666666667) internal successors, (35), 30 states have internal predecessors, (35), 9 states have call successors, (9), 6 states have call predecessors, (9), 4 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 00:08:11,355 INFO L87 Difference]: Start difference. First operand 44 states. Second operand has 44 states, 30 states have (on average 1.1666666666666667) internal successors, (35), 30 states have internal predecessors, (35), 9 states have call successors, (9), 6 states have call predecessors, (9), 4 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 00:08:11,357 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 00:08:11,357 INFO L93 Difference]: Finished difference Result 44 states and 51 transitions. [2022-04-28 00:08:11,357 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 51 transitions. [2022-04-28 00:08:11,357 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 00:08:11,357 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 00:08:11,358 INFO L74 IsIncluded]: Start isIncluded. First operand has 44 states, 30 states have (on average 1.1666666666666667) internal successors, (35), 30 states have internal predecessors, (35), 9 states have call successors, (9), 6 states have call predecessors, (9), 4 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 44 states. [2022-04-28 00:08:11,358 INFO L87 Difference]: Start difference. First operand has 44 states, 30 states have (on average 1.1666666666666667) internal successors, (35), 30 states have internal predecessors, (35), 9 states have call successors, (9), 6 states have call predecessors, (9), 4 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 44 states. [2022-04-28 00:08:11,360 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 00:08:11,360 INFO L93 Difference]: Finished difference Result 44 states and 51 transitions. [2022-04-28 00:08:11,360 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 51 transitions. [2022-04-28 00:08:11,360 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 00:08:11,360 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 00:08:11,360 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 00:08:11,360 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 00:08:11,361 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 44 states, 30 states have (on average 1.1666666666666667) internal successors, (35), 30 states have internal predecessors, (35), 9 states have call successors, (9), 6 states have call predecessors, (9), 4 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 00:08:11,362 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 51 transitions. [2022-04-28 00:08:11,362 INFO L78 Accepts]: Start accepts. Automaton has 44 states and 51 transitions. Word has length 35 [2022-04-28 00:08:11,363 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 00:08:11,363 INFO L495 AbstractCegarLoop]: Abstraction has 44 states and 51 transitions. [2022-04-28 00:08:11,363 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 4 states have call successors, (6), 4 states have call predecessors, (6), 2 states have return successors, (4), 2 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-28 00:08:11,363 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 51 transitions. [2022-04-28 00:08:11,364 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-28 00:08:11,364 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 00:08:11,364 INFO L195 NwaCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 00:08:11,390 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-28 00:08:11,584 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 00:08:11,585 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 00:08:11,585 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 00:08:11,585 INFO L85 PathProgramCache]: Analyzing trace with hash -516919762, now seen corresponding path program 1 times [2022-04-28 00:08:11,585 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 00:08:11,586 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1615119078] [2022-04-28 00:08:11,586 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 00:08:11,586 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 00:08:11,599 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 00:08:11,599 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [340149780] [2022-04-28 00:08:11,599 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 00:08:11,599 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 00:08:11,599 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 00:08:11,600 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 00:08:11,609 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-28 00:08:11,648 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 00:08:11,649 INFO L263 TraceCheckSpWp]: Trace formula consists of 128 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 00:08:11,660 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 00:08:11,661 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 00:08:11,859 INFO L272 TraceCheckUtils]: 0: Hoare triple {1654#true} [105] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1654#true} is VALID [2022-04-28 00:08:11,859 INFO L290 TraceCheckUtils]: 1: Hoare triple {1654#true} [107] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= v_~counter~0_7 0) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_7, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {1662#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:11,867 INFO L290 TraceCheckUtils]: 2: Hoare triple {1662#(<= ~counter~0 0)} [110] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1662#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:11,868 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1662#(<= ~counter~0 0)} {1654#true} [148] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1662#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:11,868 INFO L272 TraceCheckUtils]: 4: Hoare triple {1662#(<= ~counter~0 0)} [106] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1662#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:11,869 INFO L290 TraceCheckUtils]: 5: Hoare triple {1662#(<= ~counter~0 0)} [109] mainENTRY-->L25: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~R~0_1 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~A~0_2 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~A~0=v_main_~A~0_2, main_~R~0=v_main_~R~0_1, main_~u~0=v_main_~u~0_2, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~A~0, main_~R~0, main_~u~0, main_~r~0] {1662#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:11,870 INFO L272 TraceCheckUtils]: 6: Hoare triple {1662#(<= ~counter~0 0)} [111] L25-->assume_abort_if_notENTRY: Formula: (= (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_11)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_11, main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {1662#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:11,870 INFO L290 TraceCheckUtils]: 7: Hoare triple {1662#(<= ~counter~0 0)} [113] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1662#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:11,871 INFO L290 TraceCheckUtils]: 8: Hoare triple {1662#(<= ~counter~0 0)} [116] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1662#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:11,871 INFO L290 TraceCheckUtils]: 9: Hoare triple {1662#(<= ~counter~0 0)} [119] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1662#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:11,872 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1662#(<= ~counter~0 0)} {1662#(<= ~counter~0 0)} [149] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_11)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_11, main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {1662#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:11,872 INFO L272 TraceCheckUtils]: 11: Hoare triple {1662#(<= ~counter~0 0)} [112] L25-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_12 2))) (ite (and (< v_main_~A~0_12 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {1662#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:11,873 INFO L290 TraceCheckUtils]: 12: Hoare triple {1662#(<= ~counter~0 0)} [113] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1662#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:11,873 INFO L290 TraceCheckUtils]: 13: Hoare triple {1662#(<= ~counter~0 0)} [116] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1662#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:11,874 INFO L290 TraceCheckUtils]: 14: Hoare triple {1662#(<= ~counter~0 0)} [119] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1662#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:11,874 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1662#(<= ~counter~0 0)} {1662#(<= ~counter~0 0)} [150] assume_abort_if_notEXIT-->L27: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_12 2))) (ite (and (< v_main_~A~0_12 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {1662#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:11,875 INFO L290 TraceCheckUtils]: 16: Hoare triple {1662#(<= ~counter~0 0)} [114] L27-->L47-3: Formula: (and (= v_main_~v~0_3 1) (= v_main_~r~0_2 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_7))) (= v_main_~u~0_3 (+ (* v_main_~R~0_5 2) 1))) InVars {main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5} OutVars{main_~v~0=v_main_~v~0_3, main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {1662#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:11,876 INFO L290 TraceCheckUtils]: 17: Hoare triple {1662#(<= ~counter~0 0)} [118] L47-3-->L34-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1711#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:11,876 INFO L290 TraceCheckUtils]: 18: Hoare triple {1711#(<= ~counter~0 1)} [122] L34-1-->L35: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1711#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:11,877 INFO L272 TraceCheckUtils]: 19: Hoare triple {1711#(<= ~counter~0 1)} [125] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_13 4) (* v_main_~r~0_14 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_13, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {1711#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:11,877 INFO L290 TraceCheckUtils]: 20: Hoare triple {1711#(<= ~counter~0 1)} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1711#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:11,878 INFO L290 TraceCheckUtils]: 21: Hoare triple {1711#(<= ~counter~0 1)} [128] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1711#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:11,878 INFO L290 TraceCheckUtils]: 22: Hoare triple {1711#(<= ~counter~0 1)} [133] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1711#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:11,879 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1711#(<= ~counter~0 1)} {1711#(<= ~counter~0 1)} [152] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_13 4) (* v_main_~r~0_14 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_13, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {1711#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:11,882 INFO L290 TraceCheckUtils]: 24: Hoare triple {1711#(<= ~counter~0 1)} [130] L35-1-->L39-3: Formula: (not (= v_main_~r~0_5 0)) InVars {main_~r~0=v_main_~r~0_5} OutVars{main_~r~0=v_main_~r~0_5} AuxVars[] AssignedVars[] {1711#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:11,883 INFO L290 TraceCheckUtils]: 25: Hoare triple {1711#(<= ~counter~0 1)} [135] L39-3-->L39-1: Formula: (and (= |v_main_#t~post7_1| v_~counter~0_4) (= (+ |v_main_#t~post7_1| 1) v_~counter~0_3)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post7] {1736#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:11,883 INFO L290 TraceCheckUtils]: 26: Hoare triple {1736#(<= ~counter~0 2)} [139] L39-1-->L40: Formula: (< |v_main_#t~post7_5| 5) InVars {main_#t~post7=|v_main_#t~post7_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post7] {1736#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:11,884 INFO L272 TraceCheckUtils]: 27: Hoare triple {1736#(<= ~counter~0 2)} [146] L40-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (+ (* v_main_~v~0_10 2) (* (- 1) (* v_main_~v~0_10 v_main_~v~0_10)) (* v_main_~u~0_10 (- 2)) (* v_main_~u~0_10 v_main_~u~0_10)) (+ (* v_main_~A~0_14 4) (* v_main_~r~0_15 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_10, main_~A~0=v_main_~A~0_14, main_~u~0=v_main_~u~0_10, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {1736#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:11,884 INFO L290 TraceCheckUtils]: 28: Hoare triple {1736#(<= ~counter~0 2)} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1736#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:11,885 INFO L290 TraceCheckUtils]: 29: Hoare triple {1736#(<= ~counter~0 2)} [128] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1736#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:11,885 INFO L290 TraceCheckUtils]: 30: Hoare triple {1736#(<= ~counter~0 2)} [133] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1736#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:11,886 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {1736#(<= ~counter~0 2)} {1736#(<= ~counter~0 2)} [153] __VERIFIER_assertEXIT-->L40-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (+ (* v_main_~v~0_10 2) (* (- 1) (* v_main_~v~0_10 v_main_~v~0_10)) (* v_main_~u~0_10 (- 2)) (* v_main_~u~0_10 v_main_~u~0_10)) (+ (* v_main_~A~0_14 4) (* v_main_~r~0_15 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_10, main_~A~0=v_main_~A~0_14, main_~u~0=v_main_~u~0_10, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {1736#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:11,886 INFO L290 TraceCheckUtils]: 32: Hoare triple {1736#(<= ~counter~0 2)} [140] L40-1-->L47-2: Formula: (not (< 0 v_main_~r~0_7)) InVars {main_~r~0=v_main_~r~0_7} OutVars{main_~r~0=v_main_~r~0_7} AuxVars[] AssignedVars[] {1736#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:11,887 INFO L290 TraceCheckUtils]: 33: Hoare triple {1736#(<= ~counter~0 2)} [137] L47-2-->L47: Formula: (and (= (+ |v_main_#t~post8_1| 1) v_~counter~0_5) (= |v_main_#t~post8_1| v_~counter~0_6)) InVars {~counter~0=v_~counter~0_6} OutVars{main_#t~post8=|v_main_#t~post8_1|, ~counter~0=v_~counter~0_5} AuxVars[] AssignedVars[~counter~0, main_#t~post8] {1761#(<= |main_#t~post8| 2)} is VALID [2022-04-28 00:08:11,887 INFO L290 TraceCheckUtils]: 34: Hoare triple {1761#(<= |main_#t~post8| 2)} [144] L47-->L47-3: Formula: (not (< |v_main_#t~post8_3| 5)) InVars {main_#t~post8=|v_main_#t~post8_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post8] {1655#false} is VALID [2022-04-28 00:08:11,887 INFO L290 TraceCheckUtils]: 35: Hoare triple {1655#false} [118] L47-3-->L34-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1655#false} is VALID [2022-04-28 00:08:11,887 INFO L290 TraceCheckUtils]: 36: Hoare triple {1655#false} [121] L34-1-->L34-3: Formula: (not (< |v_main_#t~post6_3| 5)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1655#false} is VALID [2022-04-28 00:08:11,888 INFO L272 TraceCheckUtils]: 37: Hoare triple {1655#false} [120] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~u~0_12 (- 2)) (* v_main_~v~0_12 2) (* v_main_~u~0_12 v_main_~u~0_12) (* (- 1) (* v_main_~v~0_12 v_main_~v~0_12))) (* v_main_~A~0_16 4)) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~v~0=v_main_~v~0_12, main_~A~0=v_main_~A~0_16, main_~u~0=v_main_~u~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0] {1655#false} is VALID [2022-04-28 00:08:11,888 INFO L290 TraceCheckUtils]: 38: Hoare triple {1655#false} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1655#false} is VALID [2022-04-28 00:08:11,888 INFO L290 TraceCheckUtils]: 39: Hoare triple {1655#false} [127] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {1655#false} is VALID [2022-04-28 00:08:11,888 INFO L290 TraceCheckUtils]: 40: Hoare triple {1655#false} [131] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1655#false} is VALID [2022-04-28 00:08:11,888 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 6 proven. 4 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 00:08:11,888 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 00:08:12,134 INFO L290 TraceCheckUtils]: 40: Hoare triple {1655#false} [131] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1655#false} is VALID [2022-04-28 00:08:12,134 INFO L290 TraceCheckUtils]: 39: Hoare triple {1655#false} [127] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {1655#false} is VALID [2022-04-28 00:08:12,134 INFO L290 TraceCheckUtils]: 38: Hoare triple {1655#false} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1655#false} is VALID [2022-04-28 00:08:12,135 INFO L272 TraceCheckUtils]: 37: Hoare triple {1655#false} [120] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~u~0_12 (- 2)) (* v_main_~v~0_12 2) (* v_main_~u~0_12 v_main_~u~0_12) (* (- 1) (* v_main_~v~0_12 v_main_~v~0_12))) (* v_main_~A~0_16 4)) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~v~0=v_main_~v~0_12, main_~A~0=v_main_~A~0_16, main_~u~0=v_main_~u~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0] {1655#false} is VALID [2022-04-28 00:08:12,135 INFO L290 TraceCheckUtils]: 36: Hoare triple {1655#false} [121] L34-1-->L34-3: Formula: (not (< |v_main_#t~post6_3| 5)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1655#false} is VALID [2022-04-28 00:08:12,135 INFO L290 TraceCheckUtils]: 35: Hoare triple {1655#false} [118] L47-3-->L34-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1655#false} is VALID [2022-04-28 00:08:12,135 INFO L290 TraceCheckUtils]: 34: Hoare triple {1801#(< |main_#t~post8| 5)} [144] L47-->L47-3: Formula: (not (< |v_main_#t~post8_3| 5)) InVars {main_#t~post8=|v_main_#t~post8_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post8] {1655#false} is VALID [2022-04-28 00:08:12,136 INFO L290 TraceCheckUtils]: 33: Hoare triple {1805#(< ~counter~0 5)} [137] L47-2-->L47: Formula: (and (= (+ |v_main_#t~post8_1| 1) v_~counter~0_5) (= |v_main_#t~post8_1| v_~counter~0_6)) InVars {~counter~0=v_~counter~0_6} OutVars{main_#t~post8=|v_main_#t~post8_1|, ~counter~0=v_~counter~0_5} AuxVars[] AssignedVars[~counter~0, main_#t~post8] {1801#(< |main_#t~post8| 5)} is VALID [2022-04-28 00:08:12,136 INFO L290 TraceCheckUtils]: 32: Hoare triple {1805#(< ~counter~0 5)} [140] L40-1-->L47-2: Formula: (not (< 0 v_main_~r~0_7)) InVars {main_~r~0=v_main_~r~0_7} OutVars{main_~r~0=v_main_~r~0_7} AuxVars[] AssignedVars[] {1805#(< ~counter~0 5)} is VALID [2022-04-28 00:08:12,137 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {1654#true} {1805#(< ~counter~0 5)} [153] __VERIFIER_assertEXIT-->L40-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (+ (* v_main_~v~0_10 2) (* (- 1) (* v_main_~v~0_10 v_main_~v~0_10)) (* v_main_~u~0_10 (- 2)) (* v_main_~u~0_10 v_main_~u~0_10)) (+ (* v_main_~A~0_14 4) (* v_main_~r~0_15 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_10, main_~A~0=v_main_~A~0_14, main_~u~0=v_main_~u~0_10, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {1805#(< ~counter~0 5)} is VALID [2022-04-28 00:08:12,137 INFO L290 TraceCheckUtils]: 30: Hoare triple {1654#true} [133] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1654#true} is VALID [2022-04-28 00:08:12,137 INFO L290 TraceCheckUtils]: 29: Hoare triple {1654#true} [128] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1654#true} is VALID [2022-04-28 00:08:12,137 INFO L290 TraceCheckUtils]: 28: Hoare triple {1654#true} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1654#true} is VALID [2022-04-28 00:08:12,138 INFO L272 TraceCheckUtils]: 27: Hoare triple {1805#(< ~counter~0 5)} [146] L40-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (+ (* v_main_~v~0_10 2) (* (- 1) (* v_main_~v~0_10 v_main_~v~0_10)) (* v_main_~u~0_10 (- 2)) (* v_main_~u~0_10 v_main_~u~0_10)) (+ (* v_main_~A~0_14 4) (* v_main_~r~0_15 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_10, main_~A~0=v_main_~A~0_14, main_~u~0=v_main_~u~0_10, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {1654#true} is VALID [2022-04-28 00:08:12,138 INFO L290 TraceCheckUtils]: 26: Hoare triple {1805#(< ~counter~0 5)} [139] L39-1-->L40: Formula: (< |v_main_#t~post7_5| 5) InVars {main_#t~post7=|v_main_#t~post7_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post7] {1805#(< ~counter~0 5)} is VALID [2022-04-28 00:08:12,139 INFO L290 TraceCheckUtils]: 25: Hoare triple {1830#(< ~counter~0 4)} [135] L39-3-->L39-1: Formula: (and (= |v_main_#t~post7_1| v_~counter~0_4) (= (+ |v_main_#t~post7_1| 1) v_~counter~0_3)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post7] {1805#(< ~counter~0 5)} is VALID [2022-04-28 00:08:12,139 INFO L290 TraceCheckUtils]: 24: Hoare triple {1830#(< ~counter~0 4)} [130] L35-1-->L39-3: Formula: (not (= v_main_~r~0_5 0)) InVars {main_~r~0=v_main_~r~0_5} OutVars{main_~r~0=v_main_~r~0_5} AuxVars[] AssignedVars[] {1830#(< ~counter~0 4)} is VALID [2022-04-28 00:08:12,140 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1654#true} {1830#(< ~counter~0 4)} [152] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_13 4) (* v_main_~r~0_14 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_13, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {1830#(< ~counter~0 4)} is VALID [2022-04-28 00:08:12,140 INFO L290 TraceCheckUtils]: 22: Hoare triple {1654#true} [133] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1654#true} is VALID [2022-04-28 00:08:12,140 INFO L290 TraceCheckUtils]: 21: Hoare triple {1654#true} [128] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {1654#true} is VALID [2022-04-28 00:08:12,140 INFO L290 TraceCheckUtils]: 20: Hoare triple {1654#true} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {1654#true} is VALID [2022-04-28 00:08:12,140 INFO L272 TraceCheckUtils]: 19: Hoare triple {1830#(< ~counter~0 4)} [125] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_13 4) (* v_main_~r~0_14 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_13, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {1654#true} is VALID [2022-04-28 00:08:12,141 INFO L290 TraceCheckUtils]: 18: Hoare triple {1830#(< ~counter~0 4)} [122] L34-1-->L35: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1830#(< ~counter~0 4)} is VALID [2022-04-28 00:08:12,141 INFO L290 TraceCheckUtils]: 17: Hoare triple {1736#(<= ~counter~0 2)} [118] L47-3-->L34-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {1830#(< ~counter~0 4)} is VALID [2022-04-28 00:08:12,142 INFO L290 TraceCheckUtils]: 16: Hoare triple {1736#(<= ~counter~0 2)} [114] L27-->L47-3: Formula: (and (= v_main_~v~0_3 1) (= v_main_~r~0_2 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_7))) (= v_main_~u~0_3 (+ (* v_main_~R~0_5 2) 1))) InVars {main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5} OutVars{main_~v~0=v_main_~v~0_3, main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {1736#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:12,142 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1654#true} {1736#(<= ~counter~0 2)} [150] assume_abort_if_notEXIT-->L27: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_12 2))) (ite (and (< v_main_~A~0_12 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {1736#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:12,142 INFO L290 TraceCheckUtils]: 14: Hoare triple {1654#true} [119] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1654#true} is VALID [2022-04-28 00:08:12,142 INFO L290 TraceCheckUtils]: 13: Hoare triple {1654#true} [116] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1654#true} is VALID [2022-04-28 00:08:12,143 INFO L290 TraceCheckUtils]: 12: Hoare triple {1654#true} [113] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1654#true} is VALID [2022-04-28 00:08:12,143 INFO L272 TraceCheckUtils]: 11: Hoare triple {1736#(<= ~counter~0 2)} [112] L25-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_12 2))) (ite (and (< v_main_~A~0_12 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {1654#true} is VALID [2022-04-28 00:08:12,144 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1654#true} {1736#(<= ~counter~0 2)} [149] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_11)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_11, main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {1736#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:12,144 INFO L290 TraceCheckUtils]: 9: Hoare triple {1654#true} [119] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1654#true} is VALID [2022-04-28 00:08:12,145 INFO L290 TraceCheckUtils]: 8: Hoare triple {1654#true} [116] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {1654#true} is VALID [2022-04-28 00:08:12,145 INFO L290 TraceCheckUtils]: 7: Hoare triple {1654#true} [113] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {1654#true} is VALID [2022-04-28 00:08:12,145 INFO L272 TraceCheckUtils]: 6: Hoare triple {1736#(<= ~counter~0 2)} [111] L25-->assume_abort_if_notENTRY: Formula: (= (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_11)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_11, main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {1654#true} is VALID [2022-04-28 00:08:12,145 INFO L290 TraceCheckUtils]: 5: Hoare triple {1736#(<= ~counter~0 2)} [109] mainENTRY-->L25: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~R~0_1 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~A~0_2 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~A~0=v_main_~A~0_2, main_~R~0=v_main_~R~0_1, main_~u~0=v_main_~u~0_2, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~A~0, main_~R~0, main_~u~0, main_~r~0] {1736#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:12,146 INFO L272 TraceCheckUtils]: 4: Hoare triple {1736#(<= ~counter~0 2)} [106] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1736#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:12,146 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1736#(<= ~counter~0 2)} {1654#true} [148] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1736#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:12,146 INFO L290 TraceCheckUtils]: 2: Hoare triple {1736#(<= ~counter~0 2)} [110] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1736#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:12,147 INFO L290 TraceCheckUtils]: 1: Hoare triple {1654#true} [107] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= v_~counter~0_7 0) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_7, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {1736#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:12,147 INFO L272 TraceCheckUtils]: 0: Hoare triple {1654#true} [105] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1654#true} is VALID [2022-04-28 00:08:12,147 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-04-28 00:08:12,147 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 00:08:12,148 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1615119078] [2022-04-28 00:08:12,148 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 00:08:12,148 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [340149780] [2022-04-28 00:08:12,148 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [340149780] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-28 00:08:12,148 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-28 00:08:12,148 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [6] total 9 [2022-04-28 00:08:12,148 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1391090769] [2022-04-28 00:08:12,148 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 00:08:12,149 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.8333333333333335) internal successors, (23), 6 states have internal predecessors, (23), 5 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) Word has length 41 [2022-04-28 00:08:12,149 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 00:08:12,149 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 3.8333333333333335) internal successors, (23), 6 states have internal predecessors, (23), 5 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-28 00:08:12,180 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 00:08:12,180 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-28 00:08:12,181 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 00:08:12,181 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-28 00:08:12,181 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=46, Unknown=0, NotChecked=0, Total=72 [2022-04-28 00:08:12,181 INFO L87 Difference]: Start difference. First operand 44 states and 51 transitions. Second operand has 6 states, 6 states have (on average 3.8333333333333335) internal successors, (23), 6 states have internal predecessors, (23), 5 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-28 00:08:12,331 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 00:08:12,332 INFO L93 Difference]: Finished difference Result 74 states and 89 transitions. [2022-04-28 00:08:12,332 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 00:08:12,332 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.8333333333333335) internal successors, (23), 6 states have internal predecessors, (23), 5 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) Word has length 41 [2022-04-28 00:08:12,332 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 00:08:12,332 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.8333333333333335) internal successors, (23), 6 states have internal predecessors, (23), 5 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-28 00:08:12,334 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 87 transitions. [2022-04-28 00:08:12,334 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.8333333333333335) internal successors, (23), 6 states have internal predecessors, (23), 5 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-28 00:08:12,336 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 87 transitions. [2022-04-28 00:08:12,336 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 87 transitions. [2022-04-28 00:08:12,410 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 87 edges. 87 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 00:08:12,413 INFO L225 Difference]: With dead ends: 74 [2022-04-28 00:08:12,413 INFO L226 Difference]: Without dead ends: 53 [2022-04-28 00:08:12,414 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 81 GetRequests, 73 SyntacticMatches, 1 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=26, Invalid=46, Unknown=0, NotChecked=0, Total=72 [2022-04-28 00:08:12,415 INFO L413 NwaCegarLoop]: 38 mSDtfsCounter, 22 mSDsluCounter, 87 mSDsCounter, 0 mSdLazyCounter, 22 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 125 SdHoareTripleChecker+Invalid, 31 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 22 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 00:08:12,416 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [22 Valid, 125 Invalid, 31 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 22 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 00:08:12,417 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 53 states. [2022-04-28 00:08:12,443 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 53 to 52. [2022-04-28 00:08:12,443 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 00:08:12,444 INFO L82 GeneralOperation]: Start isEquivalent. First operand 53 states. Second operand has 52 states, 36 states have (on average 1.1666666666666667) internal successors, (42), 36 states have internal predecessors, (42), 10 states have call successors, (10), 7 states have call predecessors, (10), 5 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 00:08:12,445 INFO L74 IsIncluded]: Start isIncluded. First operand 53 states. Second operand has 52 states, 36 states have (on average 1.1666666666666667) internal successors, (42), 36 states have internal predecessors, (42), 10 states have call successors, (10), 7 states have call predecessors, (10), 5 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 00:08:12,445 INFO L87 Difference]: Start difference. First operand 53 states. Second operand has 52 states, 36 states have (on average 1.1666666666666667) internal successors, (42), 36 states have internal predecessors, (42), 10 states have call successors, (10), 7 states have call predecessors, (10), 5 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 00:08:12,447 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 00:08:12,447 INFO L93 Difference]: Finished difference Result 53 states and 61 transitions. [2022-04-28 00:08:12,447 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 61 transitions. [2022-04-28 00:08:12,448 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 00:08:12,448 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 00:08:12,448 INFO L74 IsIncluded]: Start isIncluded. First operand has 52 states, 36 states have (on average 1.1666666666666667) internal successors, (42), 36 states have internal predecessors, (42), 10 states have call successors, (10), 7 states have call predecessors, (10), 5 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 53 states. [2022-04-28 00:08:12,449 INFO L87 Difference]: Start difference. First operand has 52 states, 36 states have (on average 1.1666666666666667) internal successors, (42), 36 states have internal predecessors, (42), 10 states have call successors, (10), 7 states have call predecessors, (10), 5 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 53 states. [2022-04-28 00:08:12,451 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 00:08:12,451 INFO L93 Difference]: Finished difference Result 53 states and 61 transitions. [2022-04-28 00:08:12,451 INFO L276 IsEmpty]: Start isEmpty. Operand 53 states and 61 transitions. [2022-04-28 00:08:12,451 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 00:08:12,451 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 00:08:12,451 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 00:08:12,451 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 00:08:12,452 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 52 states, 36 states have (on average 1.1666666666666667) internal successors, (42), 36 states have internal predecessors, (42), 10 states have call successors, (10), 7 states have call predecessors, (10), 5 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 00:08:12,454 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 52 states to 52 states and 60 transitions. [2022-04-28 00:08:12,454 INFO L78 Accepts]: Start accepts. Automaton has 52 states and 60 transitions. Word has length 41 [2022-04-28 00:08:12,454 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 00:08:12,454 INFO L495 AbstractCegarLoop]: Abstraction has 52 states and 60 transitions. [2022-04-28 00:08:12,454 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 3.8333333333333335) internal successors, (23), 6 states have internal predecessors, (23), 5 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 3 states have call predecessors, (5), 4 states have call successors, (5) [2022-04-28 00:08:12,454 INFO L276 IsEmpty]: Start isEmpty. Operand 52 states and 60 transitions. [2022-04-28 00:08:12,455 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-28 00:08:12,455 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 00:08:12,455 INFO L195 NwaCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 00:08:12,480 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-28 00:08:12,675 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 00:08:12,676 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 00:08:12,676 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 00:08:12,676 INFO L85 PathProgramCache]: Analyzing trace with hash -61650990, now seen corresponding path program 1 times [2022-04-28 00:08:12,676 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 00:08:12,676 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1462205750] [2022-04-28 00:08:12,676 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 00:08:12,676 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 00:08:12,692 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 00:08:12,693 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [381722563] [2022-04-28 00:08:12,693 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 00:08:12,693 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 00:08:12,693 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 00:08:12,694 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 00:08:12,695 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-28 00:08:12,746 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 00:08:12,746 INFO L263 TraceCheckSpWp]: Trace formula consists of 137 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-28 00:08:12,764 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 00:08:12,765 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 00:08:13,010 INFO L272 TraceCheckUtils]: 0: Hoare triple {2191#true} [105] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2191#true} is VALID [2022-04-28 00:08:13,011 INFO L290 TraceCheckUtils]: 1: Hoare triple {2191#true} [107] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= v_~counter~0_7 0) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_7, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {2199#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:13,011 INFO L290 TraceCheckUtils]: 2: Hoare triple {2199#(<= ~counter~0 0)} [110] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2199#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:13,012 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2199#(<= ~counter~0 0)} {2191#true} [148] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2199#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:13,013 INFO L272 TraceCheckUtils]: 4: Hoare triple {2199#(<= ~counter~0 0)} [106] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2199#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:13,015 INFO L290 TraceCheckUtils]: 5: Hoare triple {2199#(<= ~counter~0 0)} [109] mainENTRY-->L25: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~R~0_1 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~A~0_2 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~A~0=v_main_~A~0_2, main_~R~0=v_main_~R~0_1, main_~u~0=v_main_~u~0_2, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~A~0, main_~R~0, main_~u~0, main_~r~0] {2199#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:13,017 INFO L272 TraceCheckUtils]: 6: Hoare triple {2199#(<= ~counter~0 0)} [111] L25-->assume_abort_if_notENTRY: Formula: (= (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_11)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_11, main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {2199#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:13,018 INFO L290 TraceCheckUtils]: 7: Hoare triple {2199#(<= ~counter~0 0)} [113] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2199#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:13,018 INFO L290 TraceCheckUtils]: 8: Hoare triple {2199#(<= ~counter~0 0)} [116] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2199#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:13,019 INFO L290 TraceCheckUtils]: 9: Hoare triple {2199#(<= ~counter~0 0)} [119] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2199#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:13,022 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2199#(<= ~counter~0 0)} {2199#(<= ~counter~0 0)} [149] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_11)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_11, main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {2199#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:13,022 INFO L272 TraceCheckUtils]: 11: Hoare triple {2199#(<= ~counter~0 0)} [112] L25-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_12 2))) (ite (and (< v_main_~A~0_12 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {2199#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:13,026 INFO L290 TraceCheckUtils]: 12: Hoare triple {2199#(<= ~counter~0 0)} [113] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2199#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:13,027 INFO L290 TraceCheckUtils]: 13: Hoare triple {2199#(<= ~counter~0 0)} [116] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2199#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:13,028 INFO L290 TraceCheckUtils]: 14: Hoare triple {2199#(<= ~counter~0 0)} [119] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2199#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:13,029 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2199#(<= ~counter~0 0)} {2199#(<= ~counter~0 0)} [150] assume_abort_if_notEXIT-->L27: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_12 2))) (ite (and (< v_main_~A~0_12 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {2199#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:13,029 INFO L290 TraceCheckUtils]: 16: Hoare triple {2199#(<= ~counter~0 0)} [114] L27-->L47-3: Formula: (and (= v_main_~v~0_3 1) (= v_main_~r~0_2 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_7))) (= v_main_~u~0_3 (+ (* v_main_~R~0_5 2) 1))) InVars {main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5} OutVars{main_~v~0=v_main_~v~0_3, main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {2199#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:13,030 INFO L290 TraceCheckUtils]: 17: Hoare triple {2199#(<= ~counter~0 0)} [118] L47-3-->L34-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2248#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:13,030 INFO L290 TraceCheckUtils]: 18: Hoare triple {2248#(<= ~counter~0 1)} [122] L34-1-->L35: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {2248#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:13,031 INFO L272 TraceCheckUtils]: 19: Hoare triple {2248#(<= ~counter~0 1)} [125] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_13 4) (* v_main_~r~0_14 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_13, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {2248#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:13,031 INFO L290 TraceCheckUtils]: 20: Hoare triple {2248#(<= ~counter~0 1)} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2248#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:13,032 INFO L290 TraceCheckUtils]: 21: Hoare triple {2248#(<= ~counter~0 1)} [128] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2248#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:13,032 INFO L290 TraceCheckUtils]: 22: Hoare triple {2248#(<= ~counter~0 1)} [133] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2248#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:13,033 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2248#(<= ~counter~0 1)} {2248#(<= ~counter~0 1)} [152] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_13 4) (* v_main_~r~0_14 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_13, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {2248#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:13,033 INFO L290 TraceCheckUtils]: 24: Hoare triple {2248#(<= ~counter~0 1)} [130] L35-1-->L39-3: Formula: (not (= v_main_~r~0_5 0)) InVars {main_~r~0=v_main_~r~0_5} OutVars{main_~r~0=v_main_~r~0_5} AuxVars[] AssignedVars[] {2248#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:13,034 INFO L290 TraceCheckUtils]: 25: Hoare triple {2248#(<= ~counter~0 1)} [135] L39-3-->L39-1: Formula: (and (= |v_main_#t~post7_1| v_~counter~0_4) (= (+ |v_main_#t~post7_1| 1) v_~counter~0_3)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post7] {2273#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:13,034 INFO L290 TraceCheckUtils]: 26: Hoare triple {2273#(<= ~counter~0 2)} [139] L39-1-->L40: Formula: (< |v_main_#t~post7_5| 5) InVars {main_#t~post7=|v_main_#t~post7_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post7] {2273#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:13,035 INFO L272 TraceCheckUtils]: 27: Hoare triple {2273#(<= ~counter~0 2)} [146] L40-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (+ (* v_main_~v~0_10 2) (* (- 1) (* v_main_~v~0_10 v_main_~v~0_10)) (* v_main_~u~0_10 (- 2)) (* v_main_~u~0_10 v_main_~u~0_10)) (+ (* v_main_~A~0_14 4) (* v_main_~r~0_15 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_10, main_~A~0=v_main_~A~0_14, main_~u~0=v_main_~u~0_10, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {2273#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:13,036 INFO L290 TraceCheckUtils]: 28: Hoare triple {2273#(<= ~counter~0 2)} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2273#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:13,036 INFO L290 TraceCheckUtils]: 29: Hoare triple {2273#(<= ~counter~0 2)} [128] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2273#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:13,036 INFO L290 TraceCheckUtils]: 30: Hoare triple {2273#(<= ~counter~0 2)} [133] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2273#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:13,037 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2273#(<= ~counter~0 2)} {2273#(<= ~counter~0 2)} [153] __VERIFIER_assertEXIT-->L40-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (+ (* v_main_~v~0_10 2) (* (- 1) (* v_main_~v~0_10 v_main_~v~0_10)) (* v_main_~u~0_10 (- 2)) (* v_main_~u~0_10 v_main_~u~0_10)) (+ (* v_main_~A~0_14 4) (* v_main_~r~0_15 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_10, main_~A~0=v_main_~A~0_14, main_~u~0=v_main_~u~0_10, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {2273#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:13,038 INFO L290 TraceCheckUtils]: 32: Hoare triple {2273#(<= ~counter~0 2)} [141] L40-1-->L39-3: Formula: (and (< 0 v_main_~r~0_9) (= v_main_~r~0_8 (+ (* (- 1) v_main_~v~0_7) v_main_~r~0_9)) (= v_main_~v~0_6 (+ v_main_~v~0_7 2))) InVars {main_~v~0=v_main_~v~0_7, main_~r~0=v_main_~r~0_9} OutVars{main_~v~0=v_main_~v~0_6, main_~r~0=v_main_~r~0_8} AuxVars[] AssignedVars[main_~v~0, main_~r~0] {2273#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:13,038 INFO L290 TraceCheckUtils]: 33: Hoare triple {2273#(<= ~counter~0 2)} [135] L39-3-->L39-1: Formula: (and (= |v_main_#t~post7_1| v_~counter~0_4) (= (+ |v_main_#t~post7_1| 1) v_~counter~0_3)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post7] {2298#(<= |main_#t~post7| 2)} is VALID [2022-04-28 00:08:13,038 INFO L290 TraceCheckUtils]: 34: Hoare triple {2298#(<= |main_#t~post7| 2)} [138] L39-1-->L47-2: Formula: (not (< |v_main_#t~post7_3| 5)) InVars {main_#t~post7=|v_main_#t~post7_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post7] {2192#false} is VALID [2022-04-28 00:08:13,039 INFO L290 TraceCheckUtils]: 35: Hoare triple {2192#false} [137] L47-2-->L47: Formula: (and (= (+ |v_main_#t~post8_1| 1) v_~counter~0_5) (= |v_main_#t~post8_1| v_~counter~0_6)) InVars {~counter~0=v_~counter~0_6} OutVars{main_#t~post8=|v_main_#t~post8_1|, ~counter~0=v_~counter~0_5} AuxVars[] AssignedVars[~counter~0, main_#t~post8] {2192#false} is VALID [2022-04-28 00:08:13,039 INFO L290 TraceCheckUtils]: 36: Hoare triple {2192#false} [144] L47-->L47-3: Formula: (not (< |v_main_#t~post8_3| 5)) InVars {main_#t~post8=|v_main_#t~post8_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post8] {2192#false} is VALID [2022-04-28 00:08:13,039 INFO L290 TraceCheckUtils]: 37: Hoare triple {2192#false} [118] L47-3-->L34-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2192#false} is VALID [2022-04-28 00:08:13,039 INFO L290 TraceCheckUtils]: 38: Hoare triple {2192#false} [121] L34-1-->L34-3: Formula: (not (< |v_main_#t~post6_3| 5)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {2192#false} is VALID [2022-04-28 00:08:13,039 INFO L272 TraceCheckUtils]: 39: Hoare triple {2192#false} [120] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~u~0_12 (- 2)) (* v_main_~v~0_12 2) (* v_main_~u~0_12 v_main_~u~0_12) (* (- 1) (* v_main_~v~0_12 v_main_~v~0_12))) (* v_main_~A~0_16 4)) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~v~0=v_main_~v~0_12, main_~A~0=v_main_~A~0_16, main_~u~0=v_main_~u~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0] {2192#false} is VALID [2022-04-28 00:08:13,039 INFO L290 TraceCheckUtils]: 40: Hoare triple {2192#false} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2192#false} is VALID [2022-04-28 00:08:13,039 INFO L290 TraceCheckUtils]: 41: Hoare triple {2192#false} [127] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {2192#false} is VALID [2022-04-28 00:08:13,039 INFO L290 TraceCheckUtils]: 42: Hoare triple {2192#false} [131] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2192#false} is VALID [2022-04-28 00:08:13,041 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 6 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 00:08:13,042 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 00:08:13,309 INFO L290 TraceCheckUtils]: 42: Hoare triple {2192#false} [131] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2192#false} is VALID [2022-04-28 00:08:13,309 INFO L290 TraceCheckUtils]: 41: Hoare triple {2192#false} [127] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {2192#false} is VALID [2022-04-28 00:08:13,309 INFO L290 TraceCheckUtils]: 40: Hoare triple {2192#false} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2192#false} is VALID [2022-04-28 00:08:13,310 INFO L272 TraceCheckUtils]: 39: Hoare triple {2192#false} [120] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~u~0_12 (- 2)) (* v_main_~v~0_12 2) (* v_main_~u~0_12 v_main_~u~0_12) (* (- 1) (* v_main_~v~0_12 v_main_~v~0_12))) (* v_main_~A~0_16 4)) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~v~0=v_main_~v~0_12, main_~A~0=v_main_~A~0_16, main_~u~0=v_main_~u~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0] {2192#false} is VALID [2022-04-28 00:08:13,310 INFO L290 TraceCheckUtils]: 38: Hoare triple {2192#false} [121] L34-1-->L34-3: Formula: (not (< |v_main_#t~post6_3| 5)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {2192#false} is VALID [2022-04-28 00:08:13,310 INFO L290 TraceCheckUtils]: 37: Hoare triple {2192#false} [118] L47-3-->L34-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2192#false} is VALID [2022-04-28 00:08:13,310 INFO L290 TraceCheckUtils]: 36: Hoare triple {2192#false} [144] L47-->L47-3: Formula: (not (< |v_main_#t~post8_3| 5)) InVars {main_#t~post8=|v_main_#t~post8_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post8] {2192#false} is VALID [2022-04-28 00:08:13,310 INFO L290 TraceCheckUtils]: 35: Hoare triple {2192#false} [137] L47-2-->L47: Formula: (and (= (+ |v_main_#t~post8_1| 1) v_~counter~0_5) (= |v_main_#t~post8_1| v_~counter~0_6)) InVars {~counter~0=v_~counter~0_6} OutVars{main_#t~post8=|v_main_#t~post8_1|, ~counter~0=v_~counter~0_5} AuxVars[] AssignedVars[~counter~0, main_#t~post8] {2192#false} is VALID [2022-04-28 00:08:13,310 INFO L290 TraceCheckUtils]: 34: Hoare triple {2350#(< |main_#t~post7| 5)} [138] L39-1-->L47-2: Formula: (not (< |v_main_#t~post7_3| 5)) InVars {main_#t~post7=|v_main_#t~post7_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post7] {2192#false} is VALID [2022-04-28 00:08:13,311 INFO L290 TraceCheckUtils]: 33: Hoare triple {2354#(< ~counter~0 5)} [135] L39-3-->L39-1: Formula: (and (= |v_main_#t~post7_1| v_~counter~0_4) (= (+ |v_main_#t~post7_1| 1) v_~counter~0_3)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post7] {2350#(< |main_#t~post7| 5)} is VALID [2022-04-28 00:08:13,311 INFO L290 TraceCheckUtils]: 32: Hoare triple {2354#(< ~counter~0 5)} [141] L40-1-->L39-3: Formula: (and (< 0 v_main_~r~0_9) (= v_main_~r~0_8 (+ (* (- 1) v_main_~v~0_7) v_main_~r~0_9)) (= v_main_~v~0_6 (+ v_main_~v~0_7 2))) InVars {main_~v~0=v_main_~v~0_7, main_~r~0=v_main_~r~0_9} OutVars{main_~v~0=v_main_~v~0_6, main_~r~0=v_main_~r~0_8} AuxVars[] AssignedVars[main_~v~0, main_~r~0] {2354#(< ~counter~0 5)} is VALID [2022-04-28 00:08:13,312 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2191#true} {2354#(< ~counter~0 5)} [153] __VERIFIER_assertEXIT-->L40-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (+ (* v_main_~v~0_10 2) (* (- 1) (* v_main_~v~0_10 v_main_~v~0_10)) (* v_main_~u~0_10 (- 2)) (* v_main_~u~0_10 v_main_~u~0_10)) (+ (* v_main_~A~0_14 4) (* v_main_~r~0_15 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_10, main_~A~0=v_main_~A~0_14, main_~u~0=v_main_~u~0_10, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {2354#(< ~counter~0 5)} is VALID [2022-04-28 00:08:13,312 INFO L290 TraceCheckUtils]: 30: Hoare triple {2191#true} [133] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2191#true} is VALID [2022-04-28 00:08:13,312 INFO L290 TraceCheckUtils]: 29: Hoare triple {2191#true} [128] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2191#true} is VALID [2022-04-28 00:08:13,312 INFO L290 TraceCheckUtils]: 28: Hoare triple {2191#true} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2191#true} is VALID [2022-04-28 00:08:13,312 INFO L272 TraceCheckUtils]: 27: Hoare triple {2354#(< ~counter~0 5)} [146] L40-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (+ (* v_main_~v~0_10 2) (* (- 1) (* v_main_~v~0_10 v_main_~v~0_10)) (* v_main_~u~0_10 (- 2)) (* v_main_~u~0_10 v_main_~u~0_10)) (+ (* v_main_~A~0_14 4) (* v_main_~r~0_15 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_10, main_~A~0=v_main_~A~0_14, main_~u~0=v_main_~u~0_10, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {2191#true} is VALID [2022-04-28 00:08:13,313 INFO L290 TraceCheckUtils]: 26: Hoare triple {2354#(< ~counter~0 5)} [139] L39-1-->L40: Formula: (< |v_main_#t~post7_5| 5) InVars {main_#t~post7=|v_main_#t~post7_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post7] {2354#(< ~counter~0 5)} is VALID [2022-04-28 00:08:13,314 INFO L290 TraceCheckUtils]: 25: Hoare triple {2379#(< ~counter~0 4)} [135] L39-3-->L39-1: Formula: (and (= |v_main_#t~post7_1| v_~counter~0_4) (= (+ |v_main_#t~post7_1| 1) v_~counter~0_3)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post7] {2354#(< ~counter~0 5)} is VALID [2022-04-28 00:08:13,314 INFO L290 TraceCheckUtils]: 24: Hoare triple {2379#(< ~counter~0 4)} [130] L35-1-->L39-3: Formula: (not (= v_main_~r~0_5 0)) InVars {main_~r~0=v_main_~r~0_5} OutVars{main_~r~0=v_main_~r~0_5} AuxVars[] AssignedVars[] {2379#(< ~counter~0 4)} is VALID [2022-04-28 00:08:13,315 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2191#true} {2379#(< ~counter~0 4)} [152] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_13 4) (* v_main_~r~0_14 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_13, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {2379#(< ~counter~0 4)} is VALID [2022-04-28 00:08:13,315 INFO L290 TraceCheckUtils]: 22: Hoare triple {2191#true} [133] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2191#true} is VALID [2022-04-28 00:08:13,315 INFO L290 TraceCheckUtils]: 21: Hoare triple {2191#true} [128] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2191#true} is VALID [2022-04-28 00:08:13,315 INFO L290 TraceCheckUtils]: 20: Hoare triple {2191#true} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2191#true} is VALID [2022-04-28 00:08:13,315 INFO L272 TraceCheckUtils]: 19: Hoare triple {2379#(< ~counter~0 4)} [125] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_13 4) (* v_main_~r~0_14 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_13, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {2191#true} is VALID [2022-04-28 00:08:13,316 INFO L290 TraceCheckUtils]: 18: Hoare triple {2379#(< ~counter~0 4)} [122] L34-1-->L35: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {2379#(< ~counter~0 4)} is VALID [2022-04-28 00:08:13,316 INFO L290 TraceCheckUtils]: 17: Hoare triple {2273#(<= ~counter~0 2)} [118] L47-3-->L34-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2379#(< ~counter~0 4)} is VALID [2022-04-28 00:08:13,317 INFO L290 TraceCheckUtils]: 16: Hoare triple {2273#(<= ~counter~0 2)} [114] L27-->L47-3: Formula: (and (= v_main_~v~0_3 1) (= v_main_~r~0_2 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_7))) (= v_main_~u~0_3 (+ (* v_main_~R~0_5 2) 1))) InVars {main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5} OutVars{main_~v~0=v_main_~v~0_3, main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {2273#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:13,317 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2191#true} {2273#(<= ~counter~0 2)} [150] assume_abort_if_notEXIT-->L27: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_12 2))) (ite (and (< v_main_~A~0_12 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {2273#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:13,317 INFO L290 TraceCheckUtils]: 14: Hoare triple {2191#true} [119] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2191#true} is VALID [2022-04-28 00:08:13,317 INFO L290 TraceCheckUtils]: 13: Hoare triple {2191#true} [116] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2191#true} is VALID [2022-04-28 00:08:13,317 INFO L290 TraceCheckUtils]: 12: Hoare triple {2191#true} [113] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2191#true} is VALID [2022-04-28 00:08:13,318 INFO L272 TraceCheckUtils]: 11: Hoare triple {2273#(<= ~counter~0 2)} [112] L25-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_12 2))) (ite (and (< v_main_~A~0_12 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {2191#true} is VALID [2022-04-28 00:08:13,318 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2191#true} {2273#(<= ~counter~0 2)} [149] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_11)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_11, main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {2273#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:13,318 INFO L290 TraceCheckUtils]: 9: Hoare triple {2191#true} [119] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2191#true} is VALID [2022-04-28 00:08:13,318 INFO L290 TraceCheckUtils]: 8: Hoare triple {2191#true} [116] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2191#true} is VALID [2022-04-28 00:08:13,318 INFO L290 TraceCheckUtils]: 7: Hoare triple {2191#true} [113] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2191#true} is VALID [2022-04-28 00:08:13,319 INFO L272 TraceCheckUtils]: 6: Hoare triple {2273#(<= ~counter~0 2)} [111] L25-->assume_abort_if_notENTRY: Formula: (= (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_11)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_11, main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {2191#true} is VALID [2022-04-28 00:08:13,319 INFO L290 TraceCheckUtils]: 5: Hoare triple {2273#(<= ~counter~0 2)} [109] mainENTRY-->L25: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~R~0_1 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~A~0_2 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~A~0=v_main_~A~0_2, main_~R~0=v_main_~R~0_1, main_~u~0=v_main_~u~0_2, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~A~0, main_~R~0, main_~u~0, main_~r~0] {2273#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:13,319 INFO L272 TraceCheckUtils]: 4: Hoare triple {2273#(<= ~counter~0 2)} [106] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2273#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:13,320 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2273#(<= ~counter~0 2)} {2191#true} [148] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2273#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:13,320 INFO L290 TraceCheckUtils]: 2: Hoare triple {2273#(<= ~counter~0 2)} [110] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2273#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:13,321 INFO L290 TraceCheckUtils]: 1: Hoare triple {2191#true} [107] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= v_~counter~0_7 0) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_7, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {2273#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:13,321 INFO L272 TraceCheckUtils]: 0: Hoare triple {2191#true} [105] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2191#true} is VALID [2022-04-28 00:08:13,321 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 6 proven. 2 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-04-28 00:08:13,321 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 00:08:13,321 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1462205750] [2022-04-28 00:08:13,321 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 00:08:13,321 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [381722563] [2022-04-28 00:08:13,321 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [381722563] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 00:08:13,322 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 00:08:13,322 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 9 [2022-04-28 00:08:13,322 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1590703776] [2022-04-28 00:08:13,322 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-28 00:08:13,322 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 5.111111111111111) internal successors, (46), 9 states have internal predecessors, (46), 7 states have call successors, (12), 5 states have call predecessors, (12), 4 states have return successors, (10), 5 states have call predecessors, (10), 6 states have call successors, (10) Word has length 43 [2022-04-28 00:08:13,323 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 00:08:13,323 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 5.111111111111111) internal successors, (46), 9 states have internal predecessors, (46), 7 states have call successors, (12), 5 states have call predecessors, (12), 4 states have return successors, (10), 5 states have call predecessors, (10), 6 states have call successors, (10) [2022-04-28 00:08:13,382 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 00:08:13,382 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 00:08:13,382 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 00:08:13,383 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 00:08:13,383 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=46, Unknown=0, NotChecked=0, Total=72 [2022-04-28 00:08:13,384 INFO L87 Difference]: Start difference. First operand 52 states and 60 transitions. Second operand has 9 states, 9 states have (on average 5.111111111111111) internal successors, (46), 9 states have internal predecessors, (46), 7 states have call successors, (12), 5 states have call predecessors, (12), 4 states have return successors, (10), 5 states have call predecessors, (10), 6 states have call successors, (10) [2022-04-28 00:08:13,700 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 00:08:13,701 INFO L93 Difference]: Finished difference Result 108 states and 133 transitions. [2022-04-28 00:08:13,701 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-28 00:08:13,701 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 5.111111111111111) internal successors, (46), 9 states have internal predecessors, (46), 7 states have call successors, (12), 5 states have call predecessors, (12), 4 states have return successors, (10), 5 states have call predecessors, (10), 6 states have call successors, (10) Word has length 43 [2022-04-28 00:08:13,701 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 00:08:13,701 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 5.111111111111111) internal successors, (46), 9 states have internal predecessors, (46), 7 states have call successors, (12), 5 states have call predecessors, (12), 4 states have return successors, (10), 5 states have call predecessors, (10), 6 states have call successors, (10) [2022-04-28 00:08:13,704 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 130 transitions. [2022-04-28 00:08:13,704 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 5.111111111111111) internal successors, (46), 9 states have internal predecessors, (46), 7 states have call successors, (12), 5 states have call predecessors, (12), 4 states have return successors, (10), 5 states have call predecessors, (10), 6 states have call successors, (10) [2022-04-28 00:08:13,706 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 130 transitions. [2022-04-28 00:08:13,707 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 130 transitions. [2022-04-28 00:08:13,809 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 130 edges. 130 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 00:08:13,810 INFO L225 Difference]: With dead ends: 108 [2022-04-28 00:08:13,810 INFO L226 Difference]: Without dead ends: 87 [2022-04-28 00:08:13,811 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 88 GetRequests, 77 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=46, Invalid=86, Unknown=0, NotChecked=0, Total=132 [2022-04-28 00:08:13,819 INFO L413 NwaCegarLoop]: 43 mSDtfsCounter, 47 mSDsluCounter, 127 mSDsCounter, 0 mSdLazyCounter, 55 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 47 SdHoareTripleChecker+Valid, 170 SdHoareTripleChecker+Invalid, 74 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 55 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 00:08:13,820 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [47 Valid, 170 Invalid, 74 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 55 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 00:08:13,821 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 87 states. [2022-04-28 00:08:13,866 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 87 to 79. [2022-04-28 00:08:13,866 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 00:08:13,868 INFO L82 GeneralOperation]: Start isEquivalent. First operand 87 states. Second operand has 79 states, 56 states have (on average 1.1964285714285714) internal successors, (67), 57 states have internal predecessors, (67), 15 states have call successors, (15), 9 states have call predecessors, (15), 7 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 00:08:13,869 INFO L74 IsIncluded]: Start isIncluded. First operand 87 states. Second operand has 79 states, 56 states have (on average 1.1964285714285714) internal successors, (67), 57 states have internal predecessors, (67), 15 states have call successors, (15), 9 states have call predecessors, (15), 7 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 00:08:13,869 INFO L87 Difference]: Start difference. First operand 87 states. Second operand has 79 states, 56 states have (on average 1.1964285714285714) internal successors, (67), 57 states have internal predecessors, (67), 15 states have call successors, (15), 9 states have call predecessors, (15), 7 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 00:08:13,872 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 00:08:13,872 INFO L93 Difference]: Finished difference Result 87 states and 103 transitions. [2022-04-28 00:08:13,872 INFO L276 IsEmpty]: Start isEmpty. Operand 87 states and 103 transitions. [2022-04-28 00:08:13,873 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 00:08:13,873 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 00:08:13,873 INFO L74 IsIncluded]: Start isIncluded. First operand has 79 states, 56 states have (on average 1.1964285714285714) internal successors, (67), 57 states have internal predecessors, (67), 15 states have call successors, (15), 9 states have call predecessors, (15), 7 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) Second operand 87 states. [2022-04-28 00:08:13,873 INFO L87 Difference]: Start difference. First operand has 79 states, 56 states have (on average 1.1964285714285714) internal successors, (67), 57 states have internal predecessors, (67), 15 states have call successors, (15), 9 states have call predecessors, (15), 7 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) Second operand 87 states. [2022-04-28 00:08:13,877 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 00:08:13,877 INFO L93 Difference]: Finished difference Result 87 states and 103 transitions. [2022-04-28 00:08:13,877 INFO L276 IsEmpty]: Start isEmpty. Operand 87 states and 103 transitions. [2022-04-28 00:08:13,877 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 00:08:13,878 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 00:08:13,878 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 00:08:13,878 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 00:08:13,879 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 79 states, 56 states have (on average 1.1964285714285714) internal successors, (67), 57 states have internal predecessors, (67), 15 states have call successors, (15), 9 states have call predecessors, (15), 7 states have return successors, (13), 12 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-28 00:08:13,881 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 79 states to 79 states and 95 transitions. [2022-04-28 00:08:13,881 INFO L78 Accepts]: Start accepts. Automaton has 79 states and 95 transitions. Word has length 43 [2022-04-28 00:08:13,881 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 00:08:13,881 INFO L495 AbstractCegarLoop]: Abstraction has 79 states and 95 transitions. [2022-04-28 00:08:13,882 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 5.111111111111111) internal successors, (46), 9 states have internal predecessors, (46), 7 states have call successors, (12), 5 states have call predecessors, (12), 4 states have return successors, (10), 5 states have call predecessors, (10), 6 states have call successors, (10) [2022-04-28 00:08:13,882 INFO L276 IsEmpty]: Start isEmpty. Operand 79 states and 95 transitions. [2022-04-28 00:08:13,883 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 48 [2022-04-28 00:08:13,883 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 00:08:13,883 INFO L195 NwaCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 00:08:13,902 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-28 00:08:14,094 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 00:08:14,094 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 00:08:14,095 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 00:08:14,095 INFO L85 PathProgramCache]: Analyzing trace with hash 468355249, now seen corresponding path program 1 times [2022-04-28 00:08:14,095 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 00:08:14,095 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1004920812] [2022-04-28 00:08:14,095 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 00:08:14,095 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 00:08:14,106 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 00:08:14,106 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [939490171] [2022-04-28 00:08:14,106 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 00:08:14,106 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 00:08:14,106 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 00:08:14,107 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 00:08:14,111 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-28 00:08:14,154 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 00:08:14,155 INFO L263 TraceCheckSpWp]: Trace formula consists of 138 conjuncts, 3 conjunts are in the unsatisfiable core [2022-04-28 00:08:14,163 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 00:08:14,164 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 00:08:14,352 INFO L272 TraceCheckUtils]: 0: Hoare triple {2899#true} [105] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2899#true} is VALID [2022-04-28 00:08:14,353 INFO L290 TraceCheckUtils]: 1: Hoare triple {2899#true} [107] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= v_~counter~0_7 0) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_7, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {2899#true} is VALID [2022-04-28 00:08:14,353 INFO L290 TraceCheckUtils]: 2: Hoare triple {2899#true} [110] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2899#true} is VALID [2022-04-28 00:08:14,353 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2899#true} {2899#true} [148] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2899#true} is VALID [2022-04-28 00:08:14,353 INFO L272 TraceCheckUtils]: 4: Hoare triple {2899#true} [106] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2899#true} is VALID [2022-04-28 00:08:14,353 INFO L290 TraceCheckUtils]: 5: Hoare triple {2899#true} [109] mainENTRY-->L25: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~R~0_1 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~A~0_2 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~A~0=v_main_~A~0_2, main_~R~0=v_main_~R~0_1, main_~u~0=v_main_~u~0_2, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~A~0, main_~R~0, main_~u~0, main_~r~0] {2899#true} is VALID [2022-04-28 00:08:14,354 INFO L272 TraceCheckUtils]: 6: Hoare triple {2899#true} [111] L25-->assume_abort_if_notENTRY: Formula: (= (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_11)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_11, main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {2899#true} is VALID [2022-04-28 00:08:14,354 INFO L290 TraceCheckUtils]: 7: Hoare triple {2899#true} [113] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2899#true} is VALID [2022-04-28 00:08:14,354 INFO L290 TraceCheckUtils]: 8: Hoare triple {2899#true} [116] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2899#true} is VALID [2022-04-28 00:08:14,355 INFO L290 TraceCheckUtils]: 9: Hoare triple {2899#true} [119] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2899#true} is VALID [2022-04-28 00:08:14,355 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2899#true} {2899#true} [149] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_11)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_11, main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {2899#true} is VALID [2022-04-28 00:08:14,355 INFO L272 TraceCheckUtils]: 11: Hoare triple {2899#true} [112] L25-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_12 2))) (ite (and (< v_main_~A~0_12 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {2899#true} is VALID [2022-04-28 00:08:14,355 INFO L290 TraceCheckUtils]: 12: Hoare triple {2899#true} [113] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {2899#true} is VALID [2022-04-28 00:08:14,355 INFO L290 TraceCheckUtils]: 13: Hoare triple {2899#true} [116] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {2899#true} is VALID [2022-04-28 00:08:14,355 INFO L290 TraceCheckUtils]: 14: Hoare triple {2899#true} [119] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2899#true} is VALID [2022-04-28 00:08:14,356 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {2899#true} {2899#true} [150] assume_abort_if_notEXIT-->L27: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_12 2))) (ite (and (< v_main_~A~0_12 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {2899#true} is VALID [2022-04-28 00:08:14,356 INFO L290 TraceCheckUtils]: 16: Hoare triple {2899#true} [114] L27-->L47-3: Formula: (and (= v_main_~v~0_3 1) (= v_main_~r~0_2 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_7))) (= v_main_~u~0_3 (+ (* v_main_~R~0_5 2) 1))) InVars {main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5} OutVars{main_~v~0=v_main_~v~0_3, main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {2899#true} is VALID [2022-04-28 00:08:14,356 INFO L290 TraceCheckUtils]: 17: Hoare triple {2899#true} [118] L47-3-->L34-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2899#true} is VALID [2022-04-28 00:08:14,356 INFO L290 TraceCheckUtils]: 18: Hoare triple {2899#true} [122] L34-1-->L35: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {2899#true} is VALID [2022-04-28 00:08:14,356 INFO L272 TraceCheckUtils]: 19: Hoare triple {2899#true} [125] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_13 4) (* v_main_~r~0_14 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_13, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {2899#true} is VALID [2022-04-28 00:08:14,356 INFO L290 TraceCheckUtils]: 20: Hoare triple {2899#true} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2899#true} is VALID [2022-04-28 00:08:14,356 INFO L290 TraceCheckUtils]: 21: Hoare triple {2899#true} [128] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2899#true} is VALID [2022-04-28 00:08:14,356 INFO L290 TraceCheckUtils]: 22: Hoare triple {2899#true} [133] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2899#true} is VALID [2022-04-28 00:08:14,356 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2899#true} {2899#true} [152] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_13 4) (* v_main_~r~0_14 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_13, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {2899#true} is VALID [2022-04-28 00:08:14,357 INFO L290 TraceCheckUtils]: 24: Hoare triple {2899#true} [130] L35-1-->L39-3: Formula: (not (= v_main_~r~0_5 0)) InVars {main_~r~0=v_main_~r~0_5} OutVars{main_~r~0=v_main_~r~0_5} AuxVars[] AssignedVars[] {2976#(not (= main_~r~0 0))} is VALID [2022-04-28 00:08:14,357 INFO L290 TraceCheckUtils]: 25: Hoare triple {2976#(not (= main_~r~0 0))} [135] L39-3-->L39-1: Formula: (and (= |v_main_#t~post7_1| v_~counter~0_4) (= (+ |v_main_#t~post7_1| 1) v_~counter~0_3)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post7] {2976#(not (= main_~r~0 0))} is VALID [2022-04-28 00:08:14,357 INFO L290 TraceCheckUtils]: 26: Hoare triple {2976#(not (= main_~r~0 0))} [139] L39-1-->L40: Formula: (< |v_main_#t~post7_5| 5) InVars {main_#t~post7=|v_main_#t~post7_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post7] {2976#(not (= main_~r~0 0))} is VALID [2022-04-28 00:08:14,358 INFO L272 TraceCheckUtils]: 27: Hoare triple {2976#(not (= main_~r~0 0))} [146] L40-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (+ (* v_main_~v~0_10 2) (* (- 1) (* v_main_~v~0_10 v_main_~v~0_10)) (* v_main_~u~0_10 (- 2)) (* v_main_~u~0_10 v_main_~u~0_10)) (+ (* v_main_~A~0_14 4) (* v_main_~r~0_15 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_10, main_~A~0=v_main_~A~0_14, main_~u~0=v_main_~u~0_10, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {2899#true} is VALID [2022-04-28 00:08:14,358 INFO L290 TraceCheckUtils]: 28: Hoare triple {2899#true} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2899#true} is VALID [2022-04-28 00:08:14,358 INFO L290 TraceCheckUtils]: 29: Hoare triple {2899#true} [128] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2899#true} is VALID [2022-04-28 00:08:14,358 INFO L290 TraceCheckUtils]: 30: Hoare triple {2899#true} [133] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2899#true} is VALID [2022-04-28 00:08:14,359 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {2899#true} {2976#(not (= main_~r~0 0))} [153] __VERIFIER_assertEXIT-->L40-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (+ (* v_main_~v~0_10 2) (* (- 1) (* v_main_~v~0_10 v_main_~v~0_10)) (* v_main_~u~0_10 (- 2)) (* v_main_~u~0_10 v_main_~u~0_10)) (+ (* v_main_~A~0_14 4) (* v_main_~r~0_15 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_10, main_~A~0=v_main_~A~0_14, main_~u~0=v_main_~u~0_10, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {2976#(not (= main_~r~0 0))} is VALID [2022-04-28 00:08:14,359 INFO L290 TraceCheckUtils]: 32: Hoare triple {2976#(not (= main_~r~0 0))} [140] L40-1-->L47-2: Formula: (not (< 0 v_main_~r~0_7)) InVars {main_~r~0=v_main_~r~0_7} OutVars{main_~r~0=v_main_~r~0_7} AuxVars[] AssignedVars[] {3001#(and (not (= main_~r~0 0)) (not (< 0 main_~r~0)))} is VALID [2022-04-28 00:08:14,360 INFO L290 TraceCheckUtils]: 33: Hoare triple {3001#(and (not (= main_~r~0 0)) (not (< 0 main_~r~0)))} [137] L47-2-->L47: Formula: (and (= (+ |v_main_#t~post8_1| 1) v_~counter~0_5) (= |v_main_#t~post8_1| v_~counter~0_6)) InVars {~counter~0=v_~counter~0_6} OutVars{main_#t~post8=|v_main_#t~post8_1|, ~counter~0=v_~counter~0_5} AuxVars[] AssignedVars[~counter~0, main_#t~post8] {3001#(and (not (= main_~r~0 0)) (not (< 0 main_~r~0)))} is VALID [2022-04-28 00:08:14,360 INFO L290 TraceCheckUtils]: 34: Hoare triple {3001#(and (not (= main_~r~0 0)) (not (< 0 main_~r~0)))} [145] L47-->L48: Formula: (< |v_main_#t~post8_5| 5) InVars {main_#t~post8=|v_main_#t~post8_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post8] {3001#(and (not (= main_~r~0 0)) (not (< 0 main_~r~0)))} is VALID [2022-04-28 00:08:14,360 INFO L272 TraceCheckUtils]: 35: Hoare triple {3001#(and (not (= main_~r~0 0)) (not (< 0 main_~r~0)))} [147] L48-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~v~0_11 2) (* v_main_~u~0_11 (- 2)) (* (- 1) (* v_main_~v~0_11 v_main_~v~0_11)) (* v_main_~u~0_11 v_main_~u~0_11)) (+ (* v_main_~r~0_16 4) (* v_main_~A~0_15 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~v~0=v_main_~v~0_11, main_~A~0=v_main_~A~0_15, main_~u~0=v_main_~u~0_11, main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {2899#true} is VALID [2022-04-28 00:08:14,360 INFO L290 TraceCheckUtils]: 36: Hoare triple {2899#true} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2899#true} is VALID [2022-04-28 00:08:14,360 INFO L290 TraceCheckUtils]: 37: Hoare triple {2899#true} [128] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {2899#true} is VALID [2022-04-28 00:08:14,360 INFO L290 TraceCheckUtils]: 38: Hoare triple {2899#true} [133] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2899#true} is VALID [2022-04-28 00:08:14,361 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {2899#true} {3001#(and (not (= main_~r~0 0)) (not (< 0 main_~r~0)))} [154] __VERIFIER_assertEXIT-->L48-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~v~0_11 2) (* v_main_~u~0_11 (- 2)) (* (- 1) (* v_main_~v~0_11 v_main_~v~0_11)) (* v_main_~u~0_11 v_main_~u~0_11)) (+ (* v_main_~r~0_16 4) (* v_main_~A~0_15 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~v~0=v_main_~v~0_11, main_~A~0=v_main_~A~0_15, main_~u~0=v_main_~u~0_11, main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {3001#(and (not (= main_~r~0 0)) (not (< 0 main_~r~0)))} is VALID [2022-04-28 00:08:14,362 INFO L290 TraceCheckUtils]: 40: Hoare triple {3001#(and (not (= main_~r~0 0)) (not (< 0 main_~r~0)))} [142] L48-1-->L47-3: Formula: (not (< v_main_~r~0_11 0)) InVars {main_~r~0=v_main_~r~0_11} OutVars{main_~r~0=v_main_~r~0_11} AuxVars[] AssignedVars[] {2900#false} is VALID [2022-04-28 00:08:14,362 INFO L290 TraceCheckUtils]: 41: Hoare triple {2900#false} [118] L47-3-->L34-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {2900#false} is VALID [2022-04-28 00:08:14,362 INFO L290 TraceCheckUtils]: 42: Hoare triple {2900#false} [121] L34-1-->L34-3: Formula: (not (< |v_main_#t~post6_3| 5)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {2900#false} is VALID [2022-04-28 00:08:14,362 INFO L272 TraceCheckUtils]: 43: Hoare triple {2900#false} [120] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~u~0_12 (- 2)) (* v_main_~v~0_12 2) (* v_main_~u~0_12 v_main_~u~0_12) (* (- 1) (* v_main_~v~0_12 v_main_~v~0_12))) (* v_main_~A~0_16 4)) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~v~0=v_main_~v~0_12, main_~A~0=v_main_~A~0_16, main_~u~0=v_main_~u~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0] {2900#false} is VALID [2022-04-28 00:08:14,362 INFO L290 TraceCheckUtils]: 44: Hoare triple {2900#false} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {2900#false} is VALID [2022-04-28 00:08:14,365 INFO L290 TraceCheckUtils]: 45: Hoare triple {2900#false} [127] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {2900#false} is VALID [2022-04-28 00:08:14,365 INFO L290 TraceCheckUtils]: 46: Hoare triple {2900#false} [131] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {2900#false} is VALID [2022-04-28 00:08:14,365 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 8 proven. 0 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-28 00:08:14,365 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-28 00:08:14,365 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 00:08:14,366 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1004920812] [2022-04-28 00:08:14,366 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 00:08:14,366 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [939490171] [2022-04-28 00:08:14,366 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [939490171] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 00:08:14,366 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 00:08:14,366 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 00:08:14,366 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1421180682] [2022-04-28 00:08:14,366 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 00:08:14,367 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 6.0) internal successors, (24), 4 states have internal predecessors, (24), 4 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) Word has length 47 [2022-04-28 00:08:14,368 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 00:08:14,368 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 6.0) internal successors, (24), 4 states have internal predecessors, (24), 4 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 00:08:14,398 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 00:08:14,398 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-28 00:08:14,398 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 00:08:14,399 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-28 00:08:14,399 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-04-28 00:08:14,399 INFO L87 Difference]: Start difference. First operand 79 states and 95 transitions. Second operand has 4 states, 4 states have (on average 6.0) internal successors, (24), 4 states have internal predecessors, (24), 4 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 00:08:14,590 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 00:08:14,590 INFO L93 Difference]: Finished difference Result 132 states and 169 transitions. [2022-04-28 00:08:14,590 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-28 00:08:14,591 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 6.0) internal successors, (24), 4 states have internal predecessors, (24), 4 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) Word has length 47 [2022-04-28 00:08:14,591 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 00:08:14,591 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 6.0) internal successors, (24), 4 states have internal predecessors, (24), 4 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 00:08:14,593 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 108 transitions. [2022-04-28 00:08:14,593 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 6.0) internal successors, (24), 4 states have internal predecessors, (24), 4 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 00:08:14,608 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 108 transitions. [2022-04-28 00:08:14,608 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 108 transitions. [2022-04-28 00:08:14,688 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 108 edges. 108 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 00:08:14,691 INFO L225 Difference]: With dead ends: 132 [2022-04-28 00:08:14,691 INFO L226 Difference]: Without dead ends: 101 [2022-04-28 00:08:14,691 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 46 GetRequests, 44 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-04-28 00:08:14,692 INFO L413 NwaCegarLoop]: 59 mSDtfsCounter, 19 mSDsluCounter, 70 mSDsCounter, 0 mSdLazyCounter, 37 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 23 SdHoareTripleChecker+Valid, 129 SdHoareTripleChecker+Invalid, 39 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 37 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 00:08:14,692 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [23 Valid, 129 Invalid, 39 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 37 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 00:08:14,692 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 101 states. [2022-04-28 00:08:14,733 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 101 to 91. [2022-04-28 00:08:14,733 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 00:08:14,734 INFO L82 GeneralOperation]: Start isEquivalent. First operand 101 states. Second operand has 91 states, 65 states have (on average 1.2153846153846153) internal successors, (79), 66 states have internal predecessors, (79), 18 states have call successors, (18), 9 states have call predecessors, (18), 7 states have return successors, (16), 15 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 00:08:14,734 INFO L74 IsIncluded]: Start isIncluded. First operand 101 states. Second operand has 91 states, 65 states have (on average 1.2153846153846153) internal successors, (79), 66 states have internal predecessors, (79), 18 states have call successors, (18), 9 states have call predecessors, (18), 7 states have return successors, (16), 15 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 00:08:14,734 INFO L87 Difference]: Start difference. First operand 101 states. Second operand has 91 states, 65 states have (on average 1.2153846153846153) internal successors, (79), 66 states have internal predecessors, (79), 18 states have call successors, (18), 9 states have call predecessors, (18), 7 states have return successors, (16), 15 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 00:08:14,738 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 00:08:14,738 INFO L93 Difference]: Finished difference Result 101 states and 128 transitions. [2022-04-28 00:08:14,738 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 128 transitions. [2022-04-28 00:08:14,739 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 00:08:14,739 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 00:08:14,739 INFO L74 IsIncluded]: Start isIncluded. First operand has 91 states, 65 states have (on average 1.2153846153846153) internal successors, (79), 66 states have internal predecessors, (79), 18 states have call successors, (18), 9 states have call predecessors, (18), 7 states have return successors, (16), 15 states have call predecessors, (16), 16 states have call successors, (16) Second operand 101 states. [2022-04-28 00:08:14,739 INFO L87 Difference]: Start difference. First operand has 91 states, 65 states have (on average 1.2153846153846153) internal successors, (79), 66 states have internal predecessors, (79), 18 states have call successors, (18), 9 states have call predecessors, (18), 7 states have return successors, (16), 15 states have call predecessors, (16), 16 states have call successors, (16) Second operand 101 states. [2022-04-28 00:08:14,743 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 00:08:14,743 INFO L93 Difference]: Finished difference Result 101 states and 128 transitions. [2022-04-28 00:08:14,743 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 128 transitions. [2022-04-28 00:08:14,744 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 00:08:14,744 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 00:08:14,744 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 00:08:14,744 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 00:08:14,745 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 91 states, 65 states have (on average 1.2153846153846153) internal successors, (79), 66 states have internal predecessors, (79), 18 states have call successors, (18), 9 states have call predecessors, (18), 7 states have return successors, (16), 15 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 00:08:14,747 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 91 states to 91 states and 113 transitions. [2022-04-28 00:08:14,748 INFO L78 Accepts]: Start accepts. Automaton has 91 states and 113 transitions. Word has length 47 [2022-04-28 00:08:14,748 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 00:08:14,748 INFO L495 AbstractCegarLoop]: Abstraction has 91 states and 113 transitions. [2022-04-28 00:08:14,748 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 6.0) internal successors, (24), 4 states have internal predecessors, (24), 4 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (6), 3 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 00:08:14,748 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 113 transitions. [2022-04-28 00:08:14,749 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-04-28 00:08:14,749 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 00:08:14,749 INFO L195 NwaCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 00:08:14,772 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-04-28 00:08:14,966 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable7 [2022-04-28 00:08:14,966 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 00:08:14,967 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 00:08:14,967 INFO L85 PathProgramCache]: Analyzing trace with hash -763492839, now seen corresponding path program 1 times [2022-04-28 00:08:14,967 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 00:08:14,967 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [478312434] [2022-04-28 00:08:14,967 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 00:08:14,967 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 00:08:14,978 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 00:08:14,978 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [247449794] [2022-04-28 00:08:14,978 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 00:08:14,978 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 00:08:14,978 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 00:08:14,979 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 00:08:15,006 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-04-28 00:08:15,032 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 00:08:15,033 INFO L263 TraceCheckSpWp]: Trace formula consists of 147 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-28 00:08:15,046 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 00:08:15,048 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 00:08:15,295 INFO L272 TraceCheckUtils]: 0: Hoare triple {3559#true} [105] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3559#true} is VALID [2022-04-28 00:08:15,296 INFO L290 TraceCheckUtils]: 1: Hoare triple {3559#true} [107] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= v_~counter~0_7 0) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_7, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {3567#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:15,296 INFO L290 TraceCheckUtils]: 2: Hoare triple {3567#(<= ~counter~0 0)} [110] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3567#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:15,297 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3567#(<= ~counter~0 0)} {3559#true} [148] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3567#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:15,297 INFO L272 TraceCheckUtils]: 4: Hoare triple {3567#(<= ~counter~0 0)} [106] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3567#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:15,297 INFO L290 TraceCheckUtils]: 5: Hoare triple {3567#(<= ~counter~0 0)} [109] mainENTRY-->L25: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~R~0_1 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~A~0_2 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~A~0=v_main_~A~0_2, main_~R~0=v_main_~R~0_1, main_~u~0=v_main_~u~0_2, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~A~0, main_~R~0, main_~u~0, main_~r~0] {3567#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:15,298 INFO L272 TraceCheckUtils]: 6: Hoare triple {3567#(<= ~counter~0 0)} [111] L25-->assume_abort_if_notENTRY: Formula: (= (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_11)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_11, main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {3567#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:15,298 INFO L290 TraceCheckUtils]: 7: Hoare triple {3567#(<= ~counter~0 0)} [113] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {3567#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:15,299 INFO L290 TraceCheckUtils]: 8: Hoare triple {3567#(<= ~counter~0 0)} [116] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {3567#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:15,299 INFO L290 TraceCheckUtils]: 9: Hoare triple {3567#(<= ~counter~0 0)} [119] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3567#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:15,300 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3567#(<= ~counter~0 0)} {3567#(<= ~counter~0 0)} [149] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_11)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_11, main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {3567#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:15,300 INFO L272 TraceCheckUtils]: 11: Hoare triple {3567#(<= ~counter~0 0)} [112] L25-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_12 2))) (ite (and (< v_main_~A~0_12 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {3567#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:15,300 INFO L290 TraceCheckUtils]: 12: Hoare triple {3567#(<= ~counter~0 0)} [113] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {3567#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:15,301 INFO L290 TraceCheckUtils]: 13: Hoare triple {3567#(<= ~counter~0 0)} [116] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {3567#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:15,301 INFO L290 TraceCheckUtils]: 14: Hoare triple {3567#(<= ~counter~0 0)} [119] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3567#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:15,302 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3567#(<= ~counter~0 0)} {3567#(<= ~counter~0 0)} [150] assume_abort_if_notEXIT-->L27: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_12 2))) (ite (and (< v_main_~A~0_12 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {3567#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:15,302 INFO L290 TraceCheckUtils]: 16: Hoare triple {3567#(<= ~counter~0 0)} [114] L27-->L47-3: Formula: (and (= v_main_~v~0_3 1) (= v_main_~r~0_2 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_7))) (= v_main_~u~0_3 (+ (* v_main_~R~0_5 2) 1))) InVars {main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5} OutVars{main_~v~0=v_main_~v~0_3, main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {3567#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:15,303 INFO L290 TraceCheckUtils]: 17: Hoare triple {3567#(<= ~counter~0 0)} [118] L47-3-->L34-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3616#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:15,303 INFO L290 TraceCheckUtils]: 18: Hoare triple {3616#(<= ~counter~0 1)} [122] L34-1-->L35: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {3616#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:15,304 INFO L272 TraceCheckUtils]: 19: Hoare triple {3616#(<= ~counter~0 1)} [125] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_13 4) (* v_main_~r~0_14 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_13, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {3616#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:15,304 INFO L290 TraceCheckUtils]: 20: Hoare triple {3616#(<= ~counter~0 1)} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3616#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:15,304 INFO L290 TraceCheckUtils]: 21: Hoare triple {3616#(<= ~counter~0 1)} [128] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {3616#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:15,305 INFO L290 TraceCheckUtils]: 22: Hoare triple {3616#(<= ~counter~0 1)} [133] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3616#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:15,305 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3616#(<= ~counter~0 1)} {3616#(<= ~counter~0 1)} [152] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_13 4) (* v_main_~r~0_14 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_13, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {3616#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:15,306 INFO L290 TraceCheckUtils]: 24: Hoare triple {3616#(<= ~counter~0 1)} [130] L35-1-->L39-3: Formula: (not (= v_main_~r~0_5 0)) InVars {main_~r~0=v_main_~r~0_5} OutVars{main_~r~0=v_main_~r~0_5} AuxVars[] AssignedVars[] {3616#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:15,306 INFO L290 TraceCheckUtils]: 25: Hoare triple {3616#(<= ~counter~0 1)} [135] L39-3-->L39-1: Formula: (and (= |v_main_#t~post7_1| v_~counter~0_4) (= (+ |v_main_#t~post7_1| 1) v_~counter~0_3)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post7] {3641#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:15,307 INFO L290 TraceCheckUtils]: 26: Hoare triple {3641#(<= ~counter~0 2)} [139] L39-1-->L40: Formula: (< |v_main_#t~post7_5| 5) InVars {main_#t~post7=|v_main_#t~post7_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post7] {3641#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:15,308 INFO L272 TraceCheckUtils]: 27: Hoare triple {3641#(<= ~counter~0 2)} [146] L40-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (+ (* v_main_~v~0_10 2) (* (- 1) (* v_main_~v~0_10 v_main_~v~0_10)) (* v_main_~u~0_10 (- 2)) (* v_main_~u~0_10 v_main_~u~0_10)) (+ (* v_main_~A~0_14 4) (* v_main_~r~0_15 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_10, main_~A~0=v_main_~A~0_14, main_~u~0=v_main_~u~0_10, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {3641#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:15,308 INFO L290 TraceCheckUtils]: 28: Hoare triple {3641#(<= ~counter~0 2)} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3641#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:15,308 INFO L290 TraceCheckUtils]: 29: Hoare triple {3641#(<= ~counter~0 2)} [128] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {3641#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:15,309 INFO L290 TraceCheckUtils]: 30: Hoare triple {3641#(<= ~counter~0 2)} [133] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3641#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:15,310 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {3641#(<= ~counter~0 2)} {3641#(<= ~counter~0 2)} [153] __VERIFIER_assertEXIT-->L40-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (+ (* v_main_~v~0_10 2) (* (- 1) (* v_main_~v~0_10 v_main_~v~0_10)) (* v_main_~u~0_10 (- 2)) (* v_main_~u~0_10 v_main_~u~0_10)) (+ (* v_main_~A~0_14 4) (* v_main_~r~0_15 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_10, main_~A~0=v_main_~A~0_14, main_~u~0=v_main_~u~0_10, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {3641#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:15,310 INFO L290 TraceCheckUtils]: 32: Hoare triple {3641#(<= ~counter~0 2)} [140] L40-1-->L47-2: Formula: (not (< 0 v_main_~r~0_7)) InVars {main_~r~0=v_main_~r~0_7} OutVars{main_~r~0=v_main_~r~0_7} AuxVars[] AssignedVars[] {3641#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:15,311 INFO L290 TraceCheckUtils]: 33: Hoare triple {3641#(<= ~counter~0 2)} [137] L47-2-->L47: Formula: (and (= (+ |v_main_#t~post8_1| 1) v_~counter~0_5) (= |v_main_#t~post8_1| v_~counter~0_6)) InVars {~counter~0=v_~counter~0_6} OutVars{main_#t~post8=|v_main_#t~post8_1|, ~counter~0=v_~counter~0_5} AuxVars[] AssignedVars[~counter~0, main_#t~post8] {3666#(<= ~counter~0 3)} is VALID [2022-04-28 00:08:15,311 INFO L290 TraceCheckUtils]: 34: Hoare triple {3666#(<= ~counter~0 3)} [145] L47-->L48: Formula: (< |v_main_#t~post8_5| 5) InVars {main_#t~post8=|v_main_#t~post8_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post8] {3666#(<= ~counter~0 3)} is VALID [2022-04-28 00:08:15,312 INFO L272 TraceCheckUtils]: 35: Hoare triple {3666#(<= ~counter~0 3)} [147] L48-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~v~0_11 2) (* v_main_~u~0_11 (- 2)) (* (- 1) (* v_main_~v~0_11 v_main_~v~0_11)) (* v_main_~u~0_11 v_main_~u~0_11)) (+ (* v_main_~r~0_16 4) (* v_main_~A~0_15 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~v~0=v_main_~v~0_11, main_~A~0=v_main_~A~0_15, main_~u~0=v_main_~u~0_11, main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {3666#(<= ~counter~0 3)} is VALID [2022-04-28 00:08:15,312 INFO L290 TraceCheckUtils]: 36: Hoare triple {3666#(<= ~counter~0 3)} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3666#(<= ~counter~0 3)} is VALID [2022-04-28 00:08:15,313 INFO L290 TraceCheckUtils]: 37: Hoare triple {3666#(<= ~counter~0 3)} [128] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {3666#(<= ~counter~0 3)} is VALID [2022-04-28 00:08:15,313 INFO L290 TraceCheckUtils]: 38: Hoare triple {3666#(<= ~counter~0 3)} [133] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3666#(<= ~counter~0 3)} is VALID [2022-04-28 00:08:15,314 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {3666#(<= ~counter~0 3)} {3666#(<= ~counter~0 3)} [154] __VERIFIER_assertEXIT-->L48-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~v~0_11 2) (* v_main_~u~0_11 (- 2)) (* (- 1) (* v_main_~v~0_11 v_main_~v~0_11)) (* v_main_~u~0_11 v_main_~u~0_11)) (+ (* v_main_~r~0_16 4) (* v_main_~A~0_15 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~v~0=v_main_~v~0_11, main_~A~0=v_main_~A~0_15, main_~u~0=v_main_~u~0_11, main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {3666#(<= ~counter~0 3)} is VALID [2022-04-28 00:08:15,314 INFO L290 TraceCheckUtils]: 40: Hoare triple {3666#(<= ~counter~0 3)} [143] L48-1-->L47-2: Formula: (and (< v_main_~r~0_13 0) (= v_main_~r~0_12 (+ v_main_~r~0_13 v_main_~u~0_8)) (= v_main_~u~0_7 (+ v_main_~u~0_8 2))) InVars {main_~u~0=v_main_~u~0_8, main_~r~0=v_main_~r~0_13} OutVars{main_~u~0=v_main_~u~0_7, main_~r~0=v_main_~r~0_12} AuxVars[] AssignedVars[main_~u~0, main_~r~0] {3666#(<= ~counter~0 3)} is VALID [2022-04-28 00:08:15,315 INFO L290 TraceCheckUtils]: 41: Hoare triple {3666#(<= ~counter~0 3)} [137] L47-2-->L47: Formula: (and (= (+ |v_main_#t~post8_1| 1) v_~counter~0_5) (= |v_main_#t~post8_1| v_~counter~0_6)) InVars {~counter~0=v_~counter~0_6} OutVars{main_#t~post8=|v_main_#t~post8_1|, ~counter~0=v_~counter~0_5} AuxVars[] AssignedVars[~counter~0, main_#t~post8] {3691#(<= |main_#t~post8| 3)} is VALID [2022-04-28 00:08:15,315 INFO L290 TraceCheckUtils]: 42: Hoare triple {3691#(<= |main_#t~post8| 3)} [144] L47-->L47-3: Formula: (not (< |v_main_#t~post8_3| 5)) InVars {main_#t~post8=|v_main_#t~post8_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post8] {3560#false} is VALID [2022-04-28 00:08:15,315 INFO L290 TraceCheckUtils]: 43: Hoare triple {3560#false} [118] L47-3-->L34-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3560#false} is VALID [2022-04-28 00:08:15,315 INFO L290 TraceCheckUtils]: 44: Hoare triple {3560#false} [121] L34-1-->L34-3: Formula: (not (< |v_main_#t~post6_3| 5)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {3560#false} is VALID [2022-04-28 00:08:15,316 INFO L272 TraceCheckUtils]: 45: Hoare triple {3560#false} [120] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~u~0_12 (- 2)) (* v_main_~v~0_12 2) (* v_main_~u~0_12 v_main_~u~0_12) (* (- 1) (* v_main_~v~0_12 v_main_~v~0_12))) (* v_main_~A~0_16 4)) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~v~0=v_main_~v~0_12, main_~A~0=v_main_~A~0_16, main_~u~0=v_main_~u~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0] {3560#false} is VALID [2022-04-28 00:08:15,316 INFO L290 TraceCheckUtils]: 46: Hoare triple {3560#false} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3560#false} is VALID [2022-04-28 00:08:15,316 INFO L290 TraceCheckUtils]: 47: Hoare triple {3560#false} [127] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {3560#false} is VALID [2022-04-28 00:08:15,316 INFO L290 TraceCheckUtils]: 48: Hoare triple {3560#false} [131] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3560#false} is VALID [2022-04-28 00:08:15,316 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 8 proven. 14 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 00:08:15,316 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 00:08:15,584 INFO L290 TraceCheckUtils]: 48: Hoare triple {3560#false} [131] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3560#false} is VALID [2022-04-28 00:08:15,584 INFO L290 TraceCheckUtils]: 47: Hoare triple {3560#false} [127] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {3560#false} is VALID [2022-04-28 00:08:15,584 INFO L290 TraceCheckUtils]: 46: Hoare triple {3560#false} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3560#false} is VALID [2022-04-28 00:08:15,584 INFO L272 TraceCheckUtils]: 45: Hoare triple {3560#false} [120] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~u~0_12 (- 2)) (* v_main_~v~0_12 2) (* v_main_~u~0_12 v_main_~u~0_12) (* (- 1) (* v_main_~v~0_12 v_main_~v~0_12))) (* v_main_~A~0_16 4)) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~v~0=v_main_~v~0_12, main_~A~0=v_main_~A~0_16, main_~u~0=v_main_~u~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0] {3560#false} is VALID [2022-04-28 00:08:15,584 INFO L290 TraceCheckUtils]: 44: Hoare triple {3560#false} [121] L34-1-->L34-3: Formula: (not (< |v_main_#t~post6_3| 5)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {3560#false} is VALID [2022-04-28 00:08:15,584 INFO L290 TraceCheckUtils]: 43: Hoare triple {3560#false} [118] L47-3-->L34-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3560#false} is VALID [2022-04-28 00:08:15,584 INFO L290 TraceCheckUtils]: 42: Hoare triple {3731#(< |main_#t~post8| 5)} [144] L47-->L47-3: Formula: (not (< |v_main_#t~post8_3| 5)) InVars {main_#t~post8=|v_main_#t~post8_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post8] {3560#false} is VALID [2022-04-28 00:08:15,585 INFO L290 TraceCheckUtils]: 41: Hoare triple {3735#(< ~counter~0 5)} [137] L47-2-->L47: Formula: (and (= (+ |v_main_#t~post8_1| 1) v_~counter~0_5) (= |v_main_#t~post8_1| v_~counter~0_6)) InVars {~counter~0=v_~counter~0_6} OutVars{main_#t~post8=|v_main_#t~post8_1|, ~counter~0=v_~counter~0_5} AuxVars[] AssignedVars[~counter~0, main_#t~post8] {3731#(< |main_#t~post8| 5)} is VALID [2022-04-28 00:08:15,585 INFO L290 TraceCheckUtils]: 40: Hoare triple {3735#(< ~counter~0 5)} [143] L48-1-->L47-2: Formula: (and (< v_main_~r~0_13 0) (= v_main_~r~0_12 (+ v_main_~r~0_13 v_main_~u~0_8)) (= v_main_~u~0_7 (+ v_main_~u~0_8 2))) InVars {main_~u~0=v_main_~u~0_8, main_~r~0=v_main_~r~0_13} OutVars{main_~u~0=v_main_~u~0_7, main_~r~0=v_main_~r~0_12} AuxVars[] AssignedVars[main_~u~0, main_~r~0] {3735#(< ~counter~0 5)} is VALID [2022-04-28 00:08:15,585 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {3559#true} {3735#(< ~counter~0 5)} [154] __VERIFIER_assertEXIT-->L48-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~v~0_11 2) (* v_main_~u~0_11 (- 2)) (* (- 1) (* v_main_~v~0_11 v_main_~v~0_11)) (* v_main_~u~0_11 v_main_~u~0_11)) (+ (* v_main_~r~0_16 4) (* v_main_~A~0_15 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~v~0=v_main_~v~0_11, main_~A~0=v_main_~A~0_15, main_~u~0=v_main_~u~0_11, main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {3735#(< ~counter~0 5)} is VALID [2022-04-28 00:08:15,586 INFO L290 TraceCheckUtils]: 38: Hoare triple {3559#true} [133] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3559#true} is VALID [2022-04-28 00:08:15,586 INFO L290 TraceCheckUtils]: 37: Hoare triple {3559#true} [128] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {3559#true} is VALID [2022-04-28 00:08:15,586 INFO L290 TraceCheckUtils]: 36: Hoare triple {3559#true} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3559#true} is VALID [2022-04-28 00:08:15,586 INFO L272 TraceCheckUtils]: 35: Hoare triple {3735#(< ~counter~0 5)} [147] L48-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~v~0_11 2) (* v_main_~u~0_11 (- 2)) (* (- 1) (* v_main_~v~0_11 v_main_~v~0_11)) (* v_main_~u~0_11 v_main_~u~0_11)) (+ (* v_main_~r~0_16 4) (* v_main_~A~0_15 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~v~0=v_main_~v~0_11, main_~A~0=v_main_~A~0_15, main_~u~0=v_main_~u~0_11, main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {3559#true} is VALID [2022-04-28 00:08:15,587 INFO L290 TraceCheckUtils]: 34: Hoare triple {3735#(< ~counter~0 5)} [145] L47-->L48: Formula: (< |v_main_#t~post8_5| 5) InVars {main_#t~post8=|v_main_#t~post8_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post8] {3735#(< ~counter~0 5)} is VALID [2022-04-28 00:08:15,588 INFO L290 TraceCheckUtils]: 33: Hoare triple {3666#(<= ~counter~0 3)} [137] L47-2-->L47: Formula: (and (= (+ |v_main_#t~post8_1| 1) v_~counter~0_5) (= |v_main_#t~post8_1| v_~counter~0_6)) InVars {~counter~0=v_~counter~0_6} OutVars{main_#t~post8=|v_main_#t~post8_1|, ~counter~0=v_~counter~0_5} AuxVars[] AssignedVars[~counter~0, main_#t~post8] {3735#(< ~counter~0 5)} is VALID [2022-04-28 00:08:15,588 INFO L290 TraceCheckUtils]: 32: Hoare triple {3666#(<= ~counter~0 3)} [140] L40-1-->L47-2: Formula: (not (< 0 v_main_~r~0_7)) InVars {main_~r~0=v_main_~r~0_7} OutVars{main_~r~0=v_main_~r~0_7} AuxVars[] AssignedVars[] {3666#(<= ~counter~0 3)} is VALID [2022-04-28 00:08:15,589 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {3559#true} {3666#(<= ~counter~0 3)} [153] __VERIFIER_assertEXIT-->L40-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (+ (* v_main_~v~0_10 2) (* (- 1) (* v_main_~v~0_10 v_main_~v~0_10)) (* v_main_~u~0_10 (- 2)) (* v_main_~u~0_10 v_main_~u~0_10)) (+ (* v_main_~A~0_14 4) (* v_main_~r~0_15 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_10, main_~A~0=v_main_~A~0_14, main_~u~0=v_main_~u~0_10, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {3666#(<= ~counter~0 3)} is VALID [2022-04-28 00:08:15,589 INFO L290 TraceCheckUtils]: 30: Hoare triple {3559#true} [133] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3559#true} is VALID [2022-04-28 00:08:15,589 INFO L290 TraceCheckUtils]: 29: Hoare triple {3559#true} [128] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {3559#true} is VALID [2022-04-28 00:08:15,589 INFO L290 TraceCheckUtils]: 28: Hoare triple {3559#true} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3559#true} is VALID [2022-04-28 00:08:15,589 INFO L272 TraceCheckUtils]: 27: Hoare triple {3666#(<= ~counter~0 3)} [146] L40-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (+ (* v_main_~v~0_10 2) (* (- 1) (* v_main_~v~0_10 v_main_~v~0_10)) (* v_main_~u~0_10 (- 2)) (* v_main_~u~0_10 v_main_~u~0_10)) (+ (* v_main_~A~0_14 4) (* v_main_~r~0_15 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_10, main_~A~0=v_main_~A~0_14, main_~u~0=v_main_~u~0_10, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {3559#true} is VALID [2022-04-28 00:08:15,590 INFO L290 TraceCheckUtils]: 26: Hoare triple {3666#(<= ~counter~0 3)} [139] L39-1-->L40: Formula: (< |v_main_#t~post7_5| 5) InVars {main_#t~post7=|v_main_#t~post7_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post7] {3666#(<= ~counter~0 3)} is VALID [2022-04-28 00:08:15,590 INFO L290 TraceCheckUtils]: 25: Hoare triple {3641#(<= ~counter~0 2)} [135] L39-3-->L39-1: Formula: (and (= |v_main_#t~post7_1| v_~counter~0_4) (= (+ |v_main_#t~post7_1| 1) v_~counter~0_3)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post7] {3666#(<= ~counter~0 3)} is VALID [2022-04-28 00:08:15,591 INFO L290 TraceCheckUtils]: 24: Hoare triple {3641#(<= ~counter~0 2)} [130] L35-1-->L39-3: Formula: (not (= v_main_~r~0_5 0)) InVars {main_~r~0=v_main_~r~0_5} OutVars{main_~r~0=v_main_~r~0_5} AuxVars[] AssignedVars[] {3641#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:15,591 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3559#true} {3641#(<= ~counter~0 2)} [152] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_13 4) (* v_main_~r~0_14 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_13, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {3641#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:15,592 INFO L290 TraceCheckUtils]: 22: Hoare triple {3559#true} [133] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3559#true} is VALID [2022-04-28 00:08:15,592 INFO L290 TraceCheckUtils]: 21: Hoare triple {3559#true} [128] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {3559#true} is VALID [2022-04-28 00:08:15,592 INFO L290 TraceCheckUtils]: 20: Hoare triple {3559#true} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {3559#true} is VALID [2022-04-28 00:08:15,592 INFO L272 TraceCheckUtils]: 19: Hoare triple {3641#(<= ~counter~0 2)} [125] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_13 4) (* v_main_~r~0_14 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_13, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {3559#true} is VALID [2022-04-28 00:08:15,592 INFO L290 TraceCheckUtils]: 18: Hoare triple {3641#(<= ~counter~0 2)} [122] L34-1-->L35: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {3641#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:15,593 INFO L290 TraceCheckUtils]: 17: Hoare triple {3616#(<= ~counter~0 1)} [118] L47-3-->L34-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3641#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:15,593 INFO L290 TraceCheckUtils]: 16: Hoare triple {3616#(<= ~counter~0 1)} [114] L27-->L47-3: Formula: (and (= v_main_~v~0_3 1) (= v_main_~r~0_2 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_7))) (= v_main_~u~0_3 (+ (* v_main_~R~0_5 2) 1))) InVars {main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5} OutVars{main_~v~0=v_main_~v~0_3, main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {3616#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:15,594 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {3559#true} {3616#(<= ~counter~0 1)} [150] assume_abort_if_notEXIT-->L27: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_12 2))) (ite (and (< v_main_~A~0_12 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {3616#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:15,594 INFO L290 TraceCheckUtils]: 14: Hoare triple {3559#true} [119] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3559#true} is VALID [2022-04-28 00:08:15,594 INFO L290 TraceCheckUtils]: 13: Hoare triple {3559#true} [116] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {3559#true} is VALID [2022-04-28 00:08:15,594 INFO L290 TraceCheckUtils]: 12: Hoare triple {3559#true} [113] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {3559#true} is VALID [2022-04-28 00:08:15,594 INFO L272 TraceCheckUtils]: 11: Hoare triple {3616#(<= ~counter~0 1)} [112] L25-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_12 2))) (ite (and (< v_main_~A~0_12 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {3559#true} is VALID [2022-04-28 00:08:15,595 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3559#true} {3616#(<= ~counter~0 1)} [149] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_11)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_11, main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {3616#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:15,595 INFO L290 TraceCheckUtils]: 9: Hoare triple {3559#true} [119] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3559#true} is VALID [2022-04-28 00:08:15,595 INFO L290 TraceCheckUtils]: 8: Hoare triple {3559#true} [116] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {3559#true} is VALID [2022-04-28 00:08:15,595 INFO L290 TraceCheckUtils]: 7: Hoare triple {3559#true} [113] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {3559#true} is VALID [2022-04-28 00:08:15,595 INFO L272 TraceCheckUtils]: 6: Hoare triple {3616#(<= ~counter~0 1)} [111] L25-->assume_abort_if_notENTRY: Formula: (= (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_11)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_11, main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {3559#true} is VALID [2022-04-28 00:08:15,596 INFO L290 TraceCheckUtils]: 5: Hoare triple {3616#(<= ~counter~0 1)} [109] mainENTRY-->L25: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~R~0_1 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~A~0_2 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~A~0=v_main_~A~0_2, main_~R~0=v_main_~R~0_1, main_~u~0=v_main_~u~0_2, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~A~0, main_~R~0, main_~u~0, main_~r~0] {3616#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:15,596 INFO L272 TraceCheckUtils]: 4: Hoare triple {3616#(<= ~counter~0 1)} [106] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3616#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:15,596 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3616#(<= ~counter~0 1)} {3559#true} [148] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3616#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:15,597 INFO L290 TraceCheckUtils]: 2: Hoare triple {3616#(<= ~counter~0 1)} [110] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3616#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:15,597 INFO L290 TraceCheckUtils]: 1: Hoare triple {3559#true} [107] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= v_~counter~0_7 0) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_7, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {3616#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:15,597 INFO L272 TraceCheckUtils]: 0: Hoare triple {3559#true} [105] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3559#true} is VALID [2022-04-28 00:08:15,597 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 8 proven. 2 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-04-28 00:08:15,598 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 00:08:15,598 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [478312434] [2022-04-28 00:08:15,598 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 00:08:15,598 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [247449794] [2022-04-28 00:08:15,598 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [247449794] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 00:08:15,598 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 00:08:15,598 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 9 [2022-04-28 00:08:15,598 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1488259071] [2022-04-28 00:08:15,598 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-28 00:08:15,599 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 5.888888888888889) internal successors, (53), 9 states have internal predecessors, (53), 7 states have call successors, (14), 6 states have call predecessors, (14), 5 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) Word has length 49 [2022-04-28 00:08:15,599 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 00:08:15,599 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 5.888888888888889) internal successors, (53), 9 states have internal predecessors, (53), 7 states have call successors, (14), 6 states have call predecessors, (14), 5 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-28 00:08:15,665 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 00:08:15,665 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 00:08:15,665 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 00:08:15,666 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 00:08:15,666 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=46, Unknown=0, NotChecked=0, Total=72 [2022-04-28 00:08:15,666 INFO L87 Difference]: Start difference. First operand 91 states and 113 transitions. Second operand has 9 states, 9 states have (on average 5.888888888888889) internal successors, (53), 9 states have internal predecessors, (53), 7 states have call successors, (14), 6 states have call predecessors, (14), 5 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-28 00:08:15,943 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 00:08:15,944 INFO L93 Difference]: Finished difference Result 132 states and 171 transitions. [2022-04-28 00:08:15,944 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-28 00:08:15,944 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 5.888888888888889) internal successors, (53), 9 states have internal predecessors, (53), 7 states have call successors, (14), 6 states have call predecessors, (14), 5 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) Word has length 49 [2022-04-28 00:08:15,944 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 00:08:15,945 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 5.888888888888889) internal successors, (53), 9 states have internal predecessors, (53), 7 states have call successors, (14), 6 states have call predecessors, (14), 5 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-28 00:08:15,947 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 118 transitions. [2022-04-28 00:08:15,947 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 5.888888888888889) internal successors, (53), 9 states have internal predecessors, (53), 7 states have call successors, (14), 6 states have call predecessors, (14), 5 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-28 00:08:15,949 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 118 transitions. [2022-04-28 00:08:15,949 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 118 transitions. [2022-04-28 00:08:16,039 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 118 edges. 118 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 00:08:16,041 INFO L225 Difference]: With dead ends: 132 [2022-04-28 00:08:16,041 INFO L226 Difference]: Without dead ends: 95 [2022-04-28 00:08:16,041 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 99 GetRequests, 89 SyntacticMatches, 1 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=38, Invalid=72, Unknown=0, NotChecked=0, Total=110 [2022-04-28 00:08:16,042 INFO L413 NwaCegarLoop]: 42 mSDtfsCounter, 34 mSDsluCounter, 132 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 34 SdHoareTripleChecker+Valid, 174 SdHoareTripleChecker+Invalid, 63 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 46 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 00:08:16,042 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [34 Valid, 174 Invalid, 63 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 00:08:16,042 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 95 states. [2022-04-28 00:08:16,077 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 95 to 94. [2022-04-28 00:08:16,078 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 00:08:16,083 INFO L82 GeneralOperation]: Start isEquivalent. First operand 95 states. Second operand has 94 states, 68 states have (on average 1.2058823529411764) internal successors, (82), 68 states have internal predecessors, (82), 18 states have call successors, (18), 9 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 00:08:16,084 INFO L74 IsIncluded]: Start isIncluded. First operand 95 states. Second operand has 94 states, 68 states have (on average 1.2058823529411764) internal successors, (82), 68 states have internal predecessors, (82), 18 states have call successors, (18), 9 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 00:08:16,084 INFO L87 Difference]: Start difference. First operand 95 states. Second operand has 94 states, 68 states have (on average 1.2058823529411764) internal successors, (82), 68 states have internal predecessors, (82), 18 states have call successors, (18), 9 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 00:08:16,087 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 00:08:16,087 INFO L93 Difference]: Finished difference Result 95 states and 117 transitions. [2022-04-28 00:08:16,087 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 117 transitions. [2022-04-28 00:08:16,088 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 00:08:16,088 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 00:08:16,088 INFO L74 IsIncluded]: Start isIncluded. First operand has 94 states, 68 states have (on average 1.2058823529411764) internal successors, (82), 68 states have internal predecessors, (82), 18 states have call successors, (18), 9 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 95 states. [2022-04-28 00:08:16,088 INFO L87 Difference]: Start difference. First operand has 94 states, 68 states have (on average 1.2058823529411764) internal successors, (82), 68 states have internal predecessors, (82), 18 states have call successors, (18), 9 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 95 states. [2022-04-28 00:08:16,090 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 00:08:16,090 INFO L93 Difference]: Finished difference Result 95 states and 117 transitions. [2022-04-28 00:08:16,090 INFO L276 IsEmpty]: Start isEmpty. Operand 95 states and 117 transitions. [2022-04-28 00:08:16,091 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 00:08:16,091 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 00:08:16,091 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 00:08:16,091 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 00:08:16,091 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 94 states, 68 states have (on average 1.2058823529411764) internal successors, (82), 68 states have internal predecessors, (82), 18 states have call successors, (18), 9 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 00:08:16,093 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 94 states to 94 states and 116 transitions. [2022-04-28 00:08:16,093 INFO L78 Accepts]: Start accepts. Automaton has 94 states and 116 transitions. Word has length 49 [2022-04-28 00:08:16,093 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 00:08:16,094 INFO L495 AbstractCegarLoop]: Abstraction has 94 states and 116 transitions. [2022-04-28 00:08:16,094 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 5.888888888888889) internal successors, (53), 9 states have internal predecessors, (53), 7 states have call successors, (14), 6 states have call predecessors, (14), 5 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-28 00:08:16,094 INFO L276 IsEmpty]: Start isEmpty. Operand 94 states and 116 transitions. [2022-04-28 00:08:16,094 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-28 00:08:16,094 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 00:08:16,095 INFO L195 NwaCegarLoop]: trace histogram [5, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 00:08:16,122 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-04-28 00:08:16,309 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8,10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 00:08:16,309 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 00:08:16,310 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 00:08:16,310 INFO L85 PathProgramCache]: Analyzing trace with hash 2076394588, now seen corresponding path program 1 times [2022-04-28 00:08:16,310 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 00:08:16,310 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [630080207] [2022-04-28 00:08:16,310 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 00:08:16,310 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 00:08:16,320 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 00:08:16,320 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1959062646] [2022-04-28 00:08:16,320 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 00:08:16,321 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 00:08:16,321 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 00:08:16,321 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 00:08:16,328 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-04-28 00:08:16,374 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 00:08:16,375 INFO L263 TraceCheckSpWp]: Trace formula consists of 157 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-28 00:08:16,386 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 00:08:16,387 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 00:08:16,680 INFO L272 TraceCheckUtils]: 0: Hoare triple {4371#true} [105] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4371#true} is VALID [2022-04-28 00:08:16,681 INFO L290 TraceCheckUtils]: 1: Hoare triple {4371#true} [107] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= v_~counter~0_7 0) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_7, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {4379#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:16,681 INFO L290 TraceCheckUtils]: 2: Hoare triple {4379#(<= ~counter~0 0)} [110] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4379#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:16,681 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4379#(<= ~counter~0 0)} {4371#true} [148] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4379#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:16,682 INFO L272 TraceCheckUtils]: 4: Hoare triple {4379#(<= ~counter~0 0)} [106] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4379#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:16,682 INFO L290 TraceCheckUtils]: 5: Hoare triple {4379#(<= ~counter~0 0)} [109] mainENTRY-->L25: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~R~0_1 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~A~0_2 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~A~0=v_main_~A~0_2, main_~R~0=v_main_~R~0_1, main_~u~0=v_main_~u~0_2, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~A~0, main_~R~0, main_~u~0, main_~r~0] {4379#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:16,682 INFO L272 TraceCheckUtils]: 6: Hoare triple {4379#(<= ~counter~0 0)} [111] L25-->assume_abort_if_notENTRY: Formula: (= (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_11)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_11, main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {4379#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:16,683 INFO L290 TraceCheckUtils]: 7: Hoare triple {4379#(<= ~counter~0 0)} [113] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {4379#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:16,683 INFO L290 TraceCheckUtils]: 8: Hoare triple {4379#(<= ~counter~0 0)} [116] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {4379#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:16,683 INFO L290 TraceCheckUtils]: 9: Hoare triple {4379#(<= ~counter~0 0)} [119] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4379#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:16,684 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4379#(<= ~counter~0 0)} {4379#(<= ~counter~0 0)} [149] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_11)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_11, main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {4379#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:16,684 INFO L272 TraceCheckUtils]: 11: Hoare triple {4379#(<= ~counter~0 0)} [112] L25-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_12 2))) (ite (and (< v_main_~A~0_12 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {4379#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:16,684 INFO L290 TraceCheckUtils]: 12: Hoare triple {4379#(<= ~counter~0 0)} [113] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {4379#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:16,685 INFO L290 TraceCheckUtils]: 13: Hoare triple {4379#(<= ~counter~0 0)} [116] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {4379#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:16,685 INFO L290 TraceCheckUtils]: 14: Hoare triple {4379#(<= ~counter~0 0)} [119] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4379#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:16,685 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4379#(<= ~counter~0 0)} {4379#(<= ~counter~0 0)} [150] assume_abort_if_notEXIT-->L27: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_12 2))) (ite (and (< v_main_~A~0_12 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {4379#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:16,687 INFO L290 TraceCheckUtils]: 16: Hoare triple {4379#(<= ~counter~0 0)} [114] L27-->L47-3: Formula: (and (= v_main_~v~0_3 1) (= v_main_~r~0_2 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_7))) (= v_main_~u~0_3 (+ (* v_main_~R~0_5 2) 1))) InVars {main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5} OutVars{main_~v~0=v_main_~v~0_3, main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {4379#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:16,688 INFO L290 TraceCheckUtils]: 17: Hoare triple {4379#(<= ~counter~0 0)} [118] L47-3-->L34-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {4428#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:16,688 INFO L290 TraceCheckUtils]: 18: Hoare triple {4428#(<= ~counter~0 1)} [122] L34-1-->L35: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4428#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:16,689 INFO L272 TraceCheckUtils]: 19: Hoare triple {4428#(<= ~counter~0 1)} [125] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_13 4) (* v_main_~r~0_14 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_13, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {4428#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:16,689 INFO L290 TraceCheckUtils]: 20: Hoare triple {4428#(<= ~counter~0 1)} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4428#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:16,689 INFO L290 TraceCheckUtils]: 21: Hoare triple {4428#(<= ~counter~0 1)} [128] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {4428#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:16,690 INFO L290 TraceCheckUtils]: 22: Hoare triple {4428#(<= ~counter~0 1)} [133] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4428#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:16,690 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4428#(<= ~counter~0 1)} {4428#(<= ~counter~0 1)} [152] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_13 4) (* v_main_~r~0_14 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_13, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {4428#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:16,690 INFO L290 TraceCheckUtils]: 24: Hoare triple {4428#(<= ~counter~0 1)} [130] L35-1-->L39-3: Formula: (not (= v_main_~r~0_5 0)) InVars {main_~r~0=v_main_~r~0_5} OutVars{main_~r~0=v_main_~r~0_5} AuxVars[] AssignedVars[] {4428#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:16,691 INFO L290 TraceCheckUtils]: 25: Hoare triple {4428#(<= ~counter~0 1)} [135] L39-3-->L39-1: Formula: (and (= |v_main_#t~post7_1| v_~counter~0_4) (= (+ |v_main_#t~post7_1| 1) v_~counter~0_3)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post7] {4453#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:16,691 INFO L290 TraceCheckUtils]: 26: Hoare triple {4453#(<= ~counter~0 2)} [139] L39-1-->L40: Formula: (< |v_main_#t~post7_5| 5) InVars {main_#t~post7=|v_main_#t~post7_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post7] {4453#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:16,692 INFO L272 TraceCheckUtils]: 27: Hoare triple {4453#(<= ~counter~0 2)} [146] L40-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (+ (* v_main_~v~0_10 2) (* (- 1) (* v_main_~v~0_10 v_main_~v~0_10)) (* v_main_~u~0_10 (- 2)) (* v_main_~u~0_10 v_main_~u~0_10)) (+ (* v_main_~A~0_14 4) (* v_main_~r~0_15 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_10, main_~A~0=v_main_~A~0_14, main_~u~0=v_main_~u~0_10, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {4453#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:16,693 INFO L290 TraceCheckUtils]: 28: Hoare triple {4453#(<= ~counter~0 2)} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4453#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:16,694 INFO L290 TraceCheckUtils]: 29: Hoare triple {4453#(<= ~counter~0 2)} [128] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {4453#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:16,694 INFO L290 TraceCheckUtils]: 30: Hoare triple {4453#(<= ~counter~0 2)} [133] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4453#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:16,695 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {4453#(<= ~counter~0 2)} {4453#(<= ~counter~0 2)} [153] __VERIFIER_assertEXIT-->L40-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (+ (* v_main_~v~0_10 2) (* (- 1) (* v_main_~v~0_10 v_main_~v~0_10)) (* v_main_~u~0_10 (- 2)) (* v_main_~u~0_10 v_main_~u~0_10)) (+ (* v_main_~A~0_14 4) (* v_main_~r~0_15 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_10, main_~A~0=v_main_~A~0_14, main_~u~0=v_main_~u~0_10, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {4453#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:16,695 INFO L290 TraceCheckUtils]: 32: Hoare triple {4453#(<= ~counter~0 2)} [140] L40-1-->L47-2: Formula: (not (< 0 v_main_~r~0_7)) InVars {main_~r~0=v_main_~r~0_7} OutVars{main_~r~0=v_main_~r~0_7} AuxVars[] AssignedVars[] {4453#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:16,695 INFO L290 TraceCheckUtils]: 33: Hoare triple {4453#(<= ~counter~0 2)} [137] L47-2-->L47: Formula: (and (= (+ |v_main_#t~post8_1| 1) v_~counter~0_5) (= |v_main_#t~post8_1| v_~counter~0_6)) InVars {~counter~0=v_~counter~0_6} OutVars{main_#t~post8=|v_main_#t~post8_1|, ~counter~0=v_~counter~0_5} AuxVars[] AssignedVars[~counter~0, main_#t~post8] {4478#(<= ~counter~0 3)} is VALID [2022-04-28 00:08:16,696 INFO L290 TraceCheckUtils]: 34: Hoare triple {4478#(<= ~counter~0 3)} [145] L47-->L48: Formula: (< |v_main_#t~post8_5| 5) InVars {main_#t~post8=|v_main_#t~post8_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post8] {4478#(<= ~counter~0 3)} is VALID [2022-04-28 00:08:16,696 INFO L272 TraceCheckUtils]: 35: Hoare triple {4478#(<= ~counter~0 3)} [147] L48-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~v~0_11 2) (* v_main_~u~0_11 (- 2)) (* (- 1) (* v_main_~v~0_11 v_main_~v~0_11)) (* v_main_~u~0_11 v_main_~u~0_11)) (+ (* v_main_~r~0_16 4) (* v_main_~A~0_15 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~v~0=v_main_~v~0_11, main_~A~0=v_main_~A~0_15, main_~u~0=v_main_~u~0_11, main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {4478#(<= ~counter~0 3)} is VALID [2022-04-28 00:08:16,696 INFO L290 TraceCheckUtils]: 36: Hoare triple {4478#(<= ~counter~0 3)} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4478#(<= ~counter~0 3)} is VALID [2022-04-28 00:08:16,697 INFO L290 TraceCheckUtils]: 37: Hoare triple {4478#(<= ~counter~0 3)} [128] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {4478#(<= ~counter~0 3)} is VALID [2022-04-28 00:08:16,697 INFO L290 TraceCheckUtils]: 38: Hoare triple {4478#(<= ~counter~0 3)} [133] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4478#(<= ~counter~0 3)} is VALID [2022-04-28 00:08:16,697 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {4478#(<= ~counter~0 3)} {4478#(<= ~counter~0 3)} [154] __VERIFIER_assertEXIT-->L48-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~v~0_11 2) (* v_main_~u~0_11 (- 2)) (* (- 1) (* v_main_~v~0_11 v_main_~v~0_11)) (* v_main_~u~0_11 v_main_~u~0_11)) (+ (* v_main_~r~0_16 4) (* v_main_~A~0_15 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~v~0=v_main_~v~0_11, main_~A~0=v_main_~A~0_15, main_~u~0=v_main_~u~0_11, main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {4478#(<= ~counter~0 3)} is VALID [2022-04-28 00:08:16,698 INFO L290 TraceCheckUtils]: 40: Hoare triple {4478#(<= ~counter~0 3)} [143] L48-1-->L47-2: Formula: (and (< v_main_~r~0_13 0) (= v_main_~r~0_12 (+ v_main_~r~0_13 v_main_~u~0_8)) (= v_main_~u~0_7 (+ v_main_~u~0_8 2))) InVars {main_~u~0=v_main_~u~0_8, main_~r~0=v_main_~r~0_13} OutVars{main_~u~0=v_main_~u~0_7, main_~r~0=v_main_~r~0_12} AuxVars[] AssignedVars[main_~u~0, main_~r~0] {4478#(<= ~counter~0 3)} is VALID [2022-04-28 00:08:16,698 INFO L290 TraceCheckUtils]: 41: Hoare triple {4478#(<= ~counter~0 3)} [137] L47-2-->L47: Formula: (and (= (+ |v_main_#t~post8_1| 1) v_~counter~0_5) (= |v_main_#t~post8_1| v_~counter~0_6)) InVars {~counter~0=v_~counter~0_6} OutVars{main_#t~post8=|v_main_#t~post8_1|, ~counter~0=v_~counter~0_5} AuxVars[] AssignedVars[~counter~0, main_#t~post8] {4503#(<= ~counter~0 4)} is VALID [2022-04-28 00:08:16,698 INFO L290 TraceCheckUtils]: 42: Hoare triple {4503#(<= ~counter~0 4)} [145] L47-->L48: Formula: (< |v_main_#t~post8_5| 5) InVars {main_#t~post8=|v_main_#t~post8_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post8] {4503#(<= ~counter~0 4)} is VALID [2022-04-28 00:08:16,699 INFO L272 TraceCheckUtils]: 43: Hoare triple {4503#(<= ~counter~0 4)} [147] L48-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~v~0_11 2) (* v_main_~u~0_11 (- 2)) (* (- 1) (* v_main_~v~0_11 v_main_~v~0_11)) (* v_main_~u~0_11 v_main_~u~0_11)) (+ (* v_main_~r~0_16 4) (* v_main_~A~0_15 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~v~0=v_main_~v~0_11, main_~A~0=v_main_~A~0_15, main_~u~0=v_main_~u~0_11, main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {4503#(<= ~counter~0 4)} is VALID [2022-04-28 00:08:16,699 INFO L290 TraceCheckUtils]: 44: Hoare triple {4503#(<= ~counter~0 4)} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4503#(<= ~counter~0 4)} is VALID [2022-04-28 00:08:16,699 INFO L290 TraceCheckUtils]: 45: Hoare triple {4503#(<= ~counter~0 4)} [128] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {4503#(<= ~counter~0 4)} is VALID [2022-04-28 00:08:16,700 INFO L290 TraceCheckUtils]: 46: Hoare triple {4503#(<= ~counter~0 4)} [133] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4503#(<= ~counter~0 4)} is VALID [2022-04-28 00:08:16,700 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {4503#(<= ~counter~0 4)} {4503#(<= ~counter~0 4)} [154] __VERIFIER_assertEXIT-->L48-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~v~0_11 2) (* v_main_~u~0_11 (- 2)) (* (- 1) (* v_main_~v~0_11 v_main_~v~0_11)) (* v_main_~u~0_11 v_main_~u~0_11)) (+ (* v_main_~r~0_16 4) (* v_main_~A~0_15 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~v~0=v_main_~v~0_11, main_~A~0=v_main_~A~0_15, main_~u~0=v_main_~u~0_11, main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {4503#(<= ~counter~0 4)} is VALID [2022-04-28 00:08:16,701 INFO L290 TraceCheckUtils]: 48: Hoare triple {4503#(<= ~counter~0 4)} [142] L48-1-->L47-3: Formula: (not (< v_main_~r~0_11 0)) InVars {main_~r~0=v_main_~r~0_11} OutVars{main_~r~0=v_main_~r~0_11} AuxVars[] AssignedVars[] {4503#(<= ~counter~0 4)} is VALID [2022-04-28 00:08:16,701 INFO L290 TraceCheckUtils]: 49: Hoare triple {4503#(<= ~counter~0 4)} [118] L47-3-->L34-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {4528#(<= |main_#t~post6| 4)} is VALID [2022-04-28 00:08:16,701 INFO L290 TraceCheckUtils]: 50: Hoare triple {4528#(<= |main_#t~post6| 4)} [121] L34-1-->L34-3: Formula: (not (< |v_main_#t~post6_3| 5)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4372#false} is VALID [2022-04-28 00:08:16,701 INFO L272 TraceCheckUtils]: 51: Hoare triple {4372#false} [120] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~u~0_12 (- 2)) (* v_main_~v~0_12 2) (* v_main_~u~0_12 v_main_~u~0_12) (* (- 1) (* v_main_~v~0_12 v_main_~v~0_12))) (* v_main_~A~0_16 4)) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~v~0=v_main_~v~0_12, main_~A~0=v_main_~A~0_16, main_~u~0=v_main_~u~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0] {4372#false} is VALID [2022-04-28 00:08:16,701 INFO L290 TraceCheckUtils]: 52: Hoare triple {4372#false} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4372#false} is VALID [2022-04-28 00:08:16,701 INFO L290 TraceCheckUtils]: 53: Hoare triple {4372#false} [127] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {4372#false} is VALID [2022-04-28 00:08:16,702 INFO L290 TraceCheckUtils]: 54: Hoare triple {4372#false} [131] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4372#false} is VALID [2022-04-28 00:08:16,702 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 8 proven. 30 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-28 00:08:16,702 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 00:08:16,974 INFO L290 TraceCheckUtils]: 54: Hoare triple {4372#false} [131] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4372#false} is VALID [2022-04-28 00:08:16,974 INFO L290 TraceCheckUtils]: 53: Hoare triple {4372#false} [127] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {4372#false} is VALID [2022-04-28 00:08:16,974 INFO L290 TraceCheckUtils]: 52: Hoare triple {4372#false} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4372#false} is VALID [2022-04-28 00:08:16,974 INFO L272 TraceCheckUtils]: 51: Hoare triple {4372#false} [120] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~u~0_12 (- 2)) (* v_main_~v~0_12 2) (* v_main_~u~0_12 v_main_~u~0_12) (* (- 1) (* v_main_~v~0_12 v_main_~v~0_12))) (* v_main_~A~0_16 4)) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~v~0=v_main_~v~0_12, main_~A~0=v_main_~A~0_16, main_~u~0=v_main_~u~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0] {4372#false} is VALID [2022-04-28 00:08:16,975 INFO L290 TraceCheckUtils]: 50: Hoare triple {4528#(<= |main_#t~post6| 4)} [121] L34-1-->L34-3: Formula: (not (< |v_main_#t~post6_3| 5)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4372#false} is VALID [2022-04-28 00:08:16,975 INFO L290 TraceCheckUtils]: 49: Hoare triple {4503#(<= ~counter~0 4)} [118] L47-3-->L34-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {4528#(<= |main_#t~post6| 4)} is VALID [2022-04-28 00:08:16,976 INFO L290 TraceCheckUtils]: 48: Hoare triple {4503#(<= ~counter~0 4)} [142] L48-1-->L47-3: Formula: (not (< v_main_~r~0_11 0)) InVars {main_~r~0=v_main_~r~0_11} OutVars{main_~r~0=v_main_~r~0_11} AuxVars[] AssignedVars[] {4503#(<= ~counter~0 4)} is VALID [2022-04-28 00:08:16,977 INFO L284 TraceCheckUtils]: 47: Hoare quadruple {4371#true} {4503#(<= ~counter~0 4)} [154] __VERIFIER_assertEXIT-->L48-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~v~0_11 2) (* v_main_~u~0_11 (- 2)) (* (- 1) (* v_main_~v~0_11 v_main_~v~0_11)) (* v_main_~u~0_11 v_main_~u~0_11)) (+ (* v_main_~r~0_16 4) (* v_main_~A~0_15 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~v~0=v_main_~v~0_11, main_~A~0=v_main_~A~0_15, main_~u~0=v_main_~u~0_11, main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {4503#(<= ~counter~0 4)} is VALID [2022-04-28 00:08:16,977 INFO L290 TraceCheckUtils]: 46: Hoare triple {4371#true} [133] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4371#true} is VALID [2022-04-28 00:08:16,977 INFO L290 TraceCheckUtils]: 45: Hoare triple {4371#true} [128] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {4371#true} is VALID [2022-04-28 00:08:16,977 INFO L290 TraceCheckUtils]: 44: Hoare triple {4371#true} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4371#true} is VALID [2022-04-28 00:08:16,977 INFO L272 TraceCheckUtils]: 43: Hoare triple {4503#(<= ~counter~0 4)} [147] L48-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~v~0_11 2) (* v_main_~u~0_11 (- 2)) (* (- 1) (* v_main_~v~0_11 v_main_~v~0_11)) (* v_main_~u~0_11 v_main_~u~0_11)) (+ (* v_main_~r~0_16 4) (* v_main_~A~0_15 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~v~0=v_main_~v~0_11, main_~A~0=v_main_~A~0_15, main_~u~0=v_main_~u~0_11, main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {4371#true} is VALID [2022-04-28 00:08:16,978 INFO L290 TraceCheckUtils]: 42: Hoare triple {4503#(<= ~counter~0 4)} [145] L47-->L48: Formula: (< |v_main_#t~post8_5| 5) InVars {main_#t~post8=|v_main_#t~post8_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post8] {4503#(<= ~counter~0 4)} is VALID [2022-04-28 00:08:16,979 INFO L290 TraceCheckUtils]: 41: Hoare triple {4478#(<= ~counter~0 3)} [137] L47-2-->L47: Formula: (and (= (+ |v_main_#t~post8_1| 1) v_~counter~0_5) (= |v_main_#t~post8_1| v_~counter~0_6)) InVars {~counter~0=v_~counter~0_6} OutVars{main_#t~post8=|v_main_#t~post8_1|, ~counter~0=v_~counter~0_5} AuxVars[] AssignedVars[~counter~0, main_#t~post8] {4503#(<= ~counter~0 4)} is VALID [2022-04-28 00:08:16,979 INFO L290 TraceCheckUtils]: 40: Hoare triple {4478#(<= ~counter~0 3)} [143] L48-1-->L47-2: Formula: (and (< v_main_~r~0_13 0) (= v_main_~r~0_12 (+ v_main_~r~0_13 v_main_~u~0_8)) (= v_main_~u~0_7 (+ v_main_~u~0_8 2))) InVars {main_~u~0=v_main_~u~0_8, main_~r~0=v_main_~r~0_13} OutVars{main_~u~0=v_main_~u~0_7, main_~r~0=v_main_~r~0_12} AuxVars[] AssignedVars[main_~u~0, main_~r~0] {4478#(<= ~counter~0 3)} is VALID [2022-04-28 00:08:16,980 INFO L284 TraceCheckUtils]: 39: Hoare quadruple {4371#true} {4478#(<= ~counter~0 3)} [154] __VERIFIER_assertEXIT-->L48-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~v~0_11 2) (* v_main_~u~0_11 (- 2)) (* (- 1) (* v_main_~v~0_11 v_main_~v~0_11)) (* v_main_~u~0_11 v_main_~u~0_11)) (+ (* v_main_~r~0_16 4) (* v_main_~A~0_15 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~v~0=v_main_~v~0_11, main_~A~0=v_main_~A~0_15, main_~u~0=v_main_~u~0_11, main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {4478#(<= ~counter~0 3)} is VALID [2022-04-28 00:08:16,980 INFO L290 TraceCheckUtils]: 38: Hoare triple {4371#true} [133] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4371#true} is VALID [2022-04-28 00:08:16,980 INFO L290 TraceCheckUtils]: 37: Hoare triple {4371#true} [128] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {4371#true} is VALID [2022-04-28 00:08:16,980 INFO L290 TraceCheckUtils]: 36: Hoare triple {4371#true} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4371#true} is VALID [2022-04-28 00:08:16,981 INFO L272 TraceCheckUtils]: 35: Hoare triple {4478#(<= ~counter~0 3)} [147] L48-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~v~0_11 2) (* v_main_~u~0_11 (- 2)) (* (- 1) (* v_main_~v~0_11 v_main_~v~0_11)) (* v_main_~u~0_11 v_main_~u~0_11)) (+ (* v_main_~r~0_16 4) (* v_main_~A~0_15 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_3|) InVars {main_~v~0=v_main_~v~0_11, main_~A~0=v_main_~A~0_15, main_~u~0=v_main_~u~0_11, main_~r~0=v_main_~r~0_16} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_3|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {4371#true} is VALID [2022-04-28 00:08:16,981 INFO L290 TraceCheckUtils]: 34: Hoare triple {4478#(<= ~counter~0 3)} [145] L47-->L48: Formula: (< |v_main_#t~post8_5| 5) InVars {main_#t~post8=|v_main_#t~post8_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post8] {4478#(<= ~counter~0 3)} is VALID [2022-04-28 00:08:16,981 INFO L290 TraceCheckUtils]: 33: Hoare triple {4453#(<= ~counter~0 2)} [137] L47-2-->L47: Formula: (and (= (+ |v_main_#t~post8_1| 1) v_~counter~0_5) (= |v_main_#t~post8_1| v_~counter~0_6)) InVars {~counter~0=v_~counter~0_6} OutVars{main_#t~post8=|v_main_#t~post8_1|, ~counter~0=v_~counter~0_5} AuxVars[] AssignedVars[~counter~0, main_#t~post8] {4478#(<= ~counter~0 3)} is VALID [2022-04-28 00:08:16,982 INFO L290 TraceCheckUtils]: 32: Hoare triple {4453#(<= ~counter~0 2)} [140] L40-1-->L47-2: Formula: (not (< 0 v_main_~r~0_7)) InVars {main_~r~0=v_main_~r~0_7} OutVars{main_~r~0=v_main_~r~0_7} AuxVars[] AssignedVars[] {4453#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:16,982 INFO L284 TraceCheckUtils]: 31: Hoare quadruple {4371#true} {4453#(<= ~counter~0 2)} [153] __VERIFIER_assertEXIT-->L40-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (+ (* v_main_~v~0_10 2) (* (- 1) (* v_main_~v~0_10 v_main_~v~0_10)) (* v_main_~u~0_10 (- 2)) (* v_main_~u~0_10 v_main_~u~0_10)) (+ (* v_main_~A~0_14 4) (* v_main_~r~0_15 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_10, main_~A~0=v_main_~A~0_14, main_~u~0=v_main_~u~0_10, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {4453#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:16,983 INFO L290 TraceCheckUtils]: 30: Hoare triple {4371#true} [133] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4371#true} is VALID [2022-04-28 00:08:16,983 INFO L290 TraceCheckUtils]: 29: Hoare triple {4371#true} [128] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {4371#true} is VALID [2022-04-28 00:08:16,983 INFO L290 TraceCheckUtils]: 28: Hoare triple {4371#true} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4371#true} is VALID [2022-04-28 00:08:16,983 INFO L272 TraceCheckUtils]: 27: Hoare triple {4453#(<= ~counter~0 2)} [146] L40-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_2| (ite (= (+ (* v_main_~v~0_10 2) (* (- 1) (* v_main_~v~0_10 v_main_~v~0_10)) (* v_main_~u~0_10 (- 2)) (* v_main_~u~0_10 v_main_~u~0_10)) (+ (* v_main_~A~0_14 4) (* v_main_~r~0_15 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_10, main_~A~0=v_main_~A~0_14, main_~u~0=v_main_~u~0_10, main_~r~0=v_main_~r~0_15} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_2|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {4371#true} is VALID [2022-04-28 00:08:16,983 INFO L290 TraceCheckUtils]: 26: Hoare triple {4453#(<= ~counter~0 2)} [139] L39-1-->L40: Formula: (< |v_main_#t~post7_5| 5) InVars {main_#t~post7=|v_main_#t~post7_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post7] {4453#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:16,984 INFO L290 TraceCheckUtils]: 25: Hoare triple {4428#(<= ~counter~0 1)} [135] L39-3-->L39-1: Formula: (and (= |v_main_#t~post7_1| v_~counter~0_4) (= (+ |v_main_#t~post7_1| 1) v_~counter~0_3)) InVars {~counter~0=v_~counter~0_4} OutVars{~counter~0=v_~counter~0_3, main_#t~post7=|v_main_#t~post7_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post7] {4453#(<= ~counter~0 2)} is VALID [2022-04-28 00:08:16,984 INFO L290 TraceCheckUtils]: 24: Hoare triple {4428#(<= ~counter~0 1)} [130] L35-1-->L39-3: Formula: (not (= v_main_~r~0_5 0)) InVars {main_~r~0=v_main_~r~0_5} OutVars{main_~r~0=v_main_~r~0_5} AuxVars[] AssignedVars[] {4428#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:16,985 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4371#true} {4428#(<= ~counter~0 1)} [152] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_13 4) (* v_main_~r~0_14 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_13, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {4428#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:16,985 INFO L290 TraceCheckUtils]: 22: Hoare triple {4371#true} [133] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4371#true} is VALID [2022-04-28 00:08:16,985 INFO L290 TraceCheckUtils]: 21: Hoare triple {4371#true} [128] L12-->L12-2: Formula: (not (= v___VERIFIER_assert_~cond_2 0)) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_2} AuxVars[] AssignedVars[] {4371#true} is VALID [2022-04-28 00:08:16,985 INFO L290 TraceCheckUtils]: 20: Hoare triple {4371#true} [124] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {4371#true} is VALID [2022-04-28 00:08:16,985 INFO L272 TraceCheckUtils]: 19: Hoare triple {4428#(<= ~counter~0 1)} [125] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_13 4) (* v_main_~r~0_14 4))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_13, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {4371#true} is VALID [2022-04-28 00:08:16,986 INFO L290 TraceCheckUtils]: 18: Hoare triple {4428#(<= ~counter~0 1)} [122] L34-1-->L35: Formula: (< |v_main_#t~post6_5| 5) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {4428#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:16,986 INFO L290 TraceCheckUtils]: 17: Hoare triple {4379#(<= ~counter~0 0)} [118] L47-3-->L34-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {4428#(<= ~counter~0 1)} is VALID [2022-04-28 00:08:16,986 INFO L290 TraceCheckUtils]: 16: Hoare triple {4379#(<= ~counter~0 0)} [114] L27-->L47-3: Formula: (and (= v_main_~v~0_3 1) (= v_main_~r~0_2 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_7))) (= v_main_~u~0_3 (+ (* v_main_~R~0_5 2) 1))) InVars {main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5} OutVars{main_~v~0=v_main_~v~0_3, main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {4379#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:16,987 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {4371#true} {4379#(<= ~counter~0 0)} [150] assume_abort_if_notEXIT-->L27: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_12 2))) (ite (and (< v_main_~A~0_12 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {4379#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:16,987 INFO L290 TraceCheckUtils]: 14: Hoare triple {4371#true} [119] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4371#true} is VALID [2022-04-28 00:08:16,987 INFO L290 TraceCheckUtils]: 13: Hoare triple {4371#true} [116] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {4371#true} is VALID [2022-04-28 00:08:16,987 INFO L290 TraceCheckUtils]: 12: Hoare triple {4371#true} [113] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {4371#true} is VALID [2022-04-28 00:08:16,988 INFO L272 TraceCheckUtils]: 11: Hoare triple {4379#(<= ~counter~0 0)} [112] L25-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_12 2))) (ite (and (< v_main_~A~0_12 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_12} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {4371#true} is VALID [2022-04-28 00:08:16,988 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4371#true} {4379#(<= ~counter~0 0)} [149] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_11)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_11, main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {4379#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:16,988 INFO L290 TraceCheckUtils]: 9: Hoare triple {4371#true} [119] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4371#true} is VALID [2022-04-28 00:08:16,988 INFO L290 TraceCheckUtils]: 8: Hoare triple {4371#true} [116] L9-->L9-2: Formula: (not (= v_assume_abort_if_not_~cond_3 0)) InVars {assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} OutVars{assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_3} AuxVars[] AssignedVars[] {4371#true} is VALID [2022-04-28 00:08:16,988 INFO L290 TraceCheckUtils]: 7: Hoare triple {4371#true} [113] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {4371#true} is VALID [2022-04-28 00:08:16,989 INFO L272 TraceCheckUtils]: 6: Hoare triple {4379#(<= ~counter~0 0)} [111] L25-->assume_abort_if_notENTRY: Formula: (= (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_11)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_11, main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_1|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {4371#true} is VALID [2022-04-28 00:08:16,989 INFO L290 TraceCheckUtils]: 5: Hoare triple {4379#(<= ~counter~0 0)} [109] mainENTRY-->L25: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~R~0_1 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648)) (= v_main_~A~0_2 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|, main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~A~0=v_main_~A~0_2, main_~R~0=v_main_~R~0_1, main_~u~0=v_main_~u~0_2, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~A~0, main_~R~0, main_~u~0, main_~r~0] {4379#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:16,989 INFO L272 TraceCheckUtils]: 4: Hoare triple {4379#(<= ~counter~0 0)} [106] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4379#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:16,990 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4379#(<= ~counter~0 0)} {4371#true} [148] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4379#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:16,990 INFO L290 TraceCheckUtils]: 2: Hoare triple {4379#(<= ~counter~0 0)} [110] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4379#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:16,991 INFO L290 TraceCheckUtils]: 1: Hoare triple {4371#true} [107] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= v_~counter~0_7 0) (= (select |v_#length_1| 2) 13) (= (select |v_#valid_1| 1) 1) (= 2 (select |v_#length_1| 1)) (= (select .cse0 1) 0) (= |v_#NULL.offset_1| 0))) InVars {#memory_int=|v_#memory_int_1|, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #length=|v_#length_1|, #valid=|v_#valid_1|} OutVars{~counter~0=v_~counter~0_7, #StackHeapBarrier=|v_#StackHeapBarrier_1|, #valid=|v_#valid_1|, #memory_int=|v_#memory_int_1|, #NULL.offset=|v_#NULL.offset_1|, #length=|v_#length_1|, #NULL.base=|v_#NULL.base_1|} AuxVars[] AssignedVars[~counter~0, #NULL.offset, #NULL.base] {4379#(<= ~counter~0 0)} is VALID [2022-04-28 00:08:16,991 INFO L272 TraceCheckUtils]: 0: Hoare triple {4371#true} [105] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4371#true} is VALID [2022-04-28 00:08:16,991 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 8 proven. 6 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-28 00:08:16,991 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 00:08:16,991 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [630080207] [2022-04-28 00:08:16,992 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-28 00:08:16,992 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1959062646] [2022-04-28 00:08:16,992 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1959062646] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 00:08:16,992 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-28 00:08:16,992 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 8 [2022-04-28 00:08:16,992 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [322805586] [2022-04-28 00:08:16,992 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-28 00:08:16,993 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 5.25) internal successors, (42), 8 states have internal predecessors, (42), 7 states have call successors, (15), 7 states have call predecessors, (15), 6 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) Word has length 55 [2022-04-28 00:08:16,994 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 00:08:16,994 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 5.25) internal successors, (42), 8 states have internal predecessors, (42), 7 states have call successors, (15), 7 states have call predecessors, (15), 6 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-28 00:08:17,050 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 00:08:17,051 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-28 00:08:17,051 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-28 00:08:17,052 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-28 00:08:17,052 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=33, Unknown=0, NotChecked=0, Total=56 [2022-04-28 00:08:17,052 INFO L87 Difference]: Start difference. First operand 94 states and 116 transitions. Second operand has 8 states, 8 states have (on average 5.25) internal successors, (42), 8 states have internal predecessors, (42), 7 states have call successors, (15), 7 states have call predecessors, (15), 6 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-28 00:08:17,464 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 00:08:17,464 INFO L93 Difference]: Finished difference Result 101 states and 123 transitions. [2022-04-28 00:08:17,464 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-28 00:08:17,464 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 5.25) internal successors, (42), 8 states have internal predecessors, (42), 7 states have call successors, (15), 7 states have call predecessors, (15), 6 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) Word has length 55 [2022-04-28 00:08:17,465 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 00:08:17,465 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 5.25) internal successors, (42), 8 states have internal predecessors, (42), 7 states have call successors, (15), 7 states have call predecessors, (15), 6 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-28 00:08:17,466 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 95 transitions. [2022-04-28 00:08:17,466 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 5.25) internal successors, (42), 8 states have internal predecessors, (42), 7 states have call successors, (15), 7 states have call predecessors, (15), 6 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-28 00:08:17,467 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 95 transitions. [2022-04-28 00:08:17,467 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 95 transitions. [2022-04-28 00:08:17,557 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 95 edges. 95 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 00:08:17,558 INFO L225 Difference]: With dead ends: 101 [2022-04-28 00:08:17,559 INFO L226 Difference]: Without dead ends: 96 [2022-04-28 00:08:17,559 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 110 GetRequests, 102 SyntacticMatches, 1 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=30, Invalid=42, Unknown=0, NotChecked=0, Total=72 [2022-04-28 00:08:17,559 INFO L413 NwaCegarLoop]: 42 mSDtfsCounter, 33 mSDsluCounter, 107 mSDsCounter, 0 mSdLazyCounter, 39 mSolverCounterSat, 29 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 149 SdHoareTripleChecker+Invalid, 68 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 29 IncrementalHoareTripleChecker+Valid, 39 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 00:08:17,560 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [33 Valid, 149 Invalid, 68 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [29 Valid, 39 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 00:08:17,560 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 96 states. [2022-04-28 00:08:17,624 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 96 to 96. [2022-04-28 00:08:17,624 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 00:08:17,625 INFO L82 GeneralOperation]: Start isEquivalent. First operand 96 states. Second operand has 96 states, 70 states have (on average 1.2) internal successors, (84), 70 states have internal predecessors, (84), 18 states have call successors, (18), 9 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 00:08:17,625 INFO L74 IsIncluded]: Start isIncluded. First operand 96 states. Second operand has 96 states, 70 states have (on average 1.2) internal successors, (84), 70 states have internal predecessors, (84), 18 states have call successors, (18), 9 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 00:08:17,625 INFO L87 Difference]: Start difference. First operand 96 states. Second operand has 96 states, 70 states have (on average 1.2) internal successors, (84), 70 states have internal predecessors, (84), 18 states have call successors, (18), 9 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 00:08:17,628 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 00:08:17,628 INFO L93 Difference]: Finished difference Result 96 states and 118 transitions. [2022-04-28 00:08:17,628 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 118 transitions. [2022-04-28 00:08:17,635 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 00:08:17,635 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 00:08:17,636 INFO L74 IsIncluded]: Start isIncluded. First operand has 96 states, 70 states have (on average 1.2) internal successors, (84), 70 states have internal predecessors, (84), 18 states have call successors, (18), 9 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 96 states. [2022-04-28 00:08:17,636 INFO L87 Difference]: Start difference. First operand has 96 states, 70 states have (on average 1.2) internal successors, (84), 70 states have internal predecessors, (84), 18 states have call successors, (18), 9 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) Second operand 96 states. [2022-04-28 00:08:17,638 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 00:08:17,638 INFO L93 Difference]: Finished difference Result 96 states and 118 transitions. [2022-04-28 00:08:17,638 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 118 transitions. [2022-04-28 00:08:17,638 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 00:08:17,638 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 00:08:17,639 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 00:08:17,639 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 00:08:17,663 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 96 states, 70 states have (on average 1.2) internal successors, (84), 70 states have internal predecessors, (84), 18 states have call successors, (18), 9 states have call predecessors, (18), 7 states have return successors, (16), 16 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-28 00:08:17,665 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 96 states to 96 states and 118 transitions. [2022-04-28 00:08:17,665 INFO L78 Accepts]: Start accepts. Automaton has 96 states and 118 transitions. Word has length 55 [2022-04-28 00:08:17,666 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 00:08:17,666 INFO L495 AbstractCegarLoop]: Abstraction has 96 states and 118 transitions. [2022-04-28 00:08:17,666 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 5.25) internal successors, (42), 8 states have internal predecessors, (42), 7 states have call successors, (15), 7 states have call predecessors, (15), 6 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-28 00:08:17,666 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 118 transitions. [2022-04-28 00:08:17,667 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 64 [2022-04-28 00:08:17,667 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 00:08:17,667 INFO L195 NwaCegarLoop]: trace histogram [6, 5, 5, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 00:08:17,700 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2022-04-28 00:08:17,871 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-04-28 00:08:17,872 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 00:08:17,872 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 00:08:17,872 INFO L85 PathProgramCache]: Analyzing trace with hash -1972951801, now seen corresponding path program 2 times [2022-04-28 00:08:17,872 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 00:08:17,872 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1331475545] [2022-04-28 00:08:17,872 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 00:08:17,873 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 00:08:17,908 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-28 00:08:17,908 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1866498815] [2022-04-28 00:08:17,908 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 00:08:17,908 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 00:08:17,908 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 00:08:17,916 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 00:08:17,917 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Waiting until timeout for monitored process [2022-04-28 00:08:18,007 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 00:08:18,008 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-04-28 00:08:18,008 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-04-28 00:08:18,044 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-04-28 00:08:18,098 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-04-28 00:08:18,098 INFO L271 BasicCegarLoop]: Counterexample is feasible [2022-04-28 00:08:18,111 INFO L805 garLoopResultBuilder]: Registering result UNSAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-28 00:08:18,165 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Forceful destruction successful, exit code 0 [2022-04-28 00:08:18,327 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable10 [2022-04-28 00:08:18,330 INFO L356 BasicCegarLoop]: Path program histogram: [2, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 00:08:18,334 INFO L176 ceAbstractionStarter]: Computing trace abstraction results [2022-04-28 00:08:18,390 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-04-28 00:08:18,391 WARN L170 areAnnotationChecker]: ULTIMATE.initENTRY has no Hoare annotation [2022-04-28 00:08:18,391 WARN L170 areAnnotationChecker]: mainENTRY has no Hoare annotation [2022-04-28 00:08:18,391 WARN L170 areAnnotationChecker]: assume_abort_if_notENTRY has no Hoare annotation [2022-04-28 00:08:18,391 WARN L170 areAnnotationChecker]: __VERIFIER_assertENTRY has no Hoare annotation [2022-04-28 00:08:18,391 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-28 00:08:18,391 WARN L170 areAnnotationChecker]: L25 has no Hoare annotation [2022-04-28 00:08:18,391 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-04-28 00:08:18,391 WARN L170 areAnnotationChecker]: L9 has no Hoare annotation [2022-04-28 00:08:18,391 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-28 00:08:18,391 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-28 00:08:18,391 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-28 00:08:18,391 WARN L170 areAnnotationChecker]: L9-2 has no Hoare annotation [2022-04-28 00:08:18,391 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-04-28 00:08:18,391 WARN L170 areAnnotationChecker]: L13 has no Hoare annotation [2022-04-28 00:08:18,391 WARN L170 areAnnotationChecker]: L12-2 has no Hoare annotation [2022-04-28 00:08:18,391 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-04-28 00:08:18,391 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-28 00:08:18,391 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-28 00:08:18,391 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-28 00:08:18,392 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-28 00:08:18,392 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-28 00:08:18,392 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-28 00:08:18,392 WARN L170 areAnnotationChecker]: L25-1 has no Hoare annotation [2022-04-28 00:08:18,392 WARN L170 areAnnotationChecker]: L27 has no Hoare annotation [2022-04-28 00:08:18,392 WARN L170 areAnnotationChecker]: L35-1 has no Hoare annotation [2022-04-28 00:08:18,392 WARN L170 areAnnotationChecker]: L35-1 has no Hoare annotation [2022-04-28 00:08:18,392 WARN L170 areAnnotationChecker]: L40-1 has no Hoare annotation [2022-04-28 00:08:18,392 WARN L170 areAnnotationChecker]: L40-1 has no Hoare annotation [2022-04-28 00:08:18,392 WARN L170 areAnnotationChecker]: L48-1 has no Hoare annotation [2022-04-28 00:08:18,392 WARN L170 areAnnotationChecker]: L48-1 has no Hoare annotation [2022-04-28 00:08:18,392 WARN L170 areAnnotationChecker]: L56 has no Hoare annotation [2022-04-28 00:08:18,392 WARN L170 areAnnotationChecker]: L47-3 has no Hoare annotation [2022-04-28 00:08:18,392 WARN L170 areAnnotationChecker]: L47-3 has no Hoare annotation [2022-04-28 00:08:18,392 WARN L170 areAnnotationChecker]: L34-3 has no Hoare annotation [2022-04-28 00:08:18,392 WARN L170 areAnnotationChecker]: L39-3 has no Hoare annotation [2022-04-28 00:08:18,392 WARN L170 areAnnotationChecker]: L39-3 has no Hoare annotation [2022-04-28 00:08:18,392 WARN L170 areAnnotationChecker]: L47-2 has no Hoare annotation [2022-04-28 00:08:18,392 WARN L170 areAnnotationChecker]: L47-2 has no Hoare annotation [2022-04-28 00:08:18,392 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-28 00:08:18,392 WARN L170 areAnnotationChecker]: L34-1 has no Hoare annotation [2022-04-28 00:08:18,392 WARN L170 areAnnotationChecker]: L34-1 has no Hoare annotation [2022-04-28 00:08:18,392 WARN L170 areAnnotationChecker]: L39-1 has no Hoare annotation [2022-04-28 00:08:18,393 WARN L170 areAnnotationChecker]: L39-1 has no Hoare annotation [2022-04-28 00:08:18,393 WARN L170 areAnnotationChecker]: L47 has no Hoare annotation [2022-04-28 00:08:18,393 WARN L170 areAnnotationChecker]: L47 has no Hoare annotation [2022-04-28 00:08:18,393 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-28 00:08:18,393 WARN L170 areAnnotationChecker]: L35 has no Hoare annotation [2022-04-28 00:08:18,393 WARN L170 areAnnotationChecker]: L40 has no Hoare annotation [2022-04-28 00:08:18,393 WARN L170 areAnnotationChecker]: L48 has no Hoare annotation [2022-04-28 00:08:18,393 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-28 00:08:18,393 INFO L163 areAnnotationChecker]: CFG has 0 edges. 0 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-28 00:08:18,394 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 28.04 12:08:18 BasicIcfg [2022-04-28 00:08:18,394 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-28 00:08:18,395 INFO L158 Benchmark]: Toolchain (without parser) took 37640.37ms. Allocated memory was 168.8MB in the beginning and 203.4MB in the end (delta: 34.6MB). Free memory was 141.0MB in the beginning and 163.3MB in the end (delta: -22.3MB). Peak memory consumption was 11.8MB. Max. memory is 8.0GB. [2022-04-28 00:08:18,395 INFO L158 Benchmark]: CDTParser took 0.15ms. Allocated memory is still 168.8MB. Free memory is still 127.0MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-28 00:08:18,395 INFO L158 Benchmark]: CACSL2BoogieTranslator took 239.34ms. Allocated memory is still 168.8MB. Free memory was 140.8MB in the beginning and 139.4MB in the end (delta: 1.4MB). Peak memory consumption was 7.6MB. Max. memory is 8.0GB. [2022-04-28 00:08:18,395 INFO L158 Benchmark]: Boogie Preprocessor took 43.54ms. Allocated memory is still 168.8MB. Free memory was 139.4MB in the beginning and 137.6MB in the end (delta: 1.8MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-28 00:08:18,396 INFO L158 Benchmark]: RCFGBuilder took 323.53ms. Allocated memory is still 168.8MB. Free memory was 137.6MB in the beginning and 125.3MB in the end (delta: 12.3MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-28 00:08:18,399 INFO L158 Benchmark]: IcfgTransformer took 49.24ms. Allocated memory is still 168.8MB. Free memory was 125.3MB in the beginning and 123.2MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-28 00:08:18,400 INFO L158 Benchmark]: TraceAbstraction took 36979.42ms. Allocated memory was 168.8MB in the beginning and 203.4MB in the end (delta: 34.6MB). Free memory was 122.6MB in the beginning and 163.3MB in the end (delta: -40.7MB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-28 00:08:18,401 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.15ms. Allocated memory is still 168.8MB. Free memory is still 127.0MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 239.34ms. Allocated memory is still 168.8MB. Free memory was 140.8MB in the beginning and 139.4MB in the end (delta: 1.4MB). Peak memory consumption was 7.6MB. Max. memory is 8.0GB. * Boogie Preprocessor took 43.54ms. Allocated memory is still 168.8MB. Free memory was 139.4MB in the beginning and 137.6MB in the end (delta: 1.8MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 323.53ms. Allocated memory is still 168.8MB. Free memory was 137.6MB in the beginning and 125.3MB in the end (delta: 12.3MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * IcfgTransformer took 49.24ms. Allocated memory is still 168.8MB. Free memory was 125.3MB in the beginning and 123.2MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * TraceAbstraction took 36979.42ms. Allocated memory was 168.8MB in the beginning and 203.4MB in the end (delta: 34.6MB). Free memory was 122.6MB in the beginning and 163.3MB in the end (delta: -40.7MB). There was no memory consumed. Max. memory is 8.0GB. * 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 - CounterExampleResult [Line: 14]: a call to reach_error is reachable a call to reach_error is reachable We found a FailurePath: [L19] int counter = 0; VAL [\old(counter)=10, counter=0] [L21] int A, R; [L22] long long u, v, r; [L23] A = __VERIFIER_nondet_int() [L24] R = __VERIFIER_nondet_int() [L25] CALL assume_abort_if_not((((long long) R - 1) * ((long long) R - 1)) < A) VAL [\old(cond)=1, \old(counter)=0, counter=0] [L9] COND FALSE !(!cond) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=0] [L25] RET assume_abort_if_not((((long long) R - 1) * ((long long) R - 1)) < A) VAL [\old(counter)=0, A=3, counter=0, R=0] [L27] CALL assume_abort_if_not(A % 2 == 1) VAL [\old(cond)=1, \old(counter)=0, counter=0] [L9] COND FALSE !(!cond) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=0] [L27] RET assume_abort_if_not(A % 2 == 1) VAL [\old(counter)=0, A=3, counter=0, R=0] [L29] u = ((long long) 2 * R) + 1 [L30] v = 1 [L31] r = ((long long) R * R) - A VAL [\old(counter)=0, A=3, counter=0, r=-3, R=0, u=1, v=1] [L34] EXPR counter++ VAL [\old(counter)=0, A=3, counter=1, counter++=0, R=0, r=-3, u=1, v=1] [L34] COND TRUE counter++<5 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=1, \old(counter)=0, counter=1] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=1] [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=3, counter=1, R=0, r=-3, u=1, v=1] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=3, counter=1, r=-3, R=0, u=1, v=1] [L39] EXPR counter++ VAL [\old(counter)=0, A=3, counter=2, counter++=1, r=-3, R=0, u=1, v=1] [L39] COND TRUE counter++<5 [L40] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=1, \old(counter)=0, counter=2] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=2] [L40] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=3, counter=2, r=-3, R=0, u=1, v=1] [L41] COND TRUE !(r > 0) VAL [\old(counter)=0, A=3, counter=2, R=0, r=-3, u=1, v=1] [L47] EXPR counter++ VAL [\old(counter)=0, A=3, counter=3, counter++=2, R=0, r=-3, u=1, v=1] [L47] COND TRUE counter++<5 [L48] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=1, \old(counter)=0, counter=3] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=3] [L48] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=3, counter=3, R=0, r=-3, u=1, v=1] [L49] COND FALSE !(!(r < 0)) [L51] r = r + u [L52] u = u + 2 VAL [\old(counter)=0, A=3, counter=3, r=-2, R=0, u=3, v=1] [L47] EXPR counter++ VAL [\old(counter)=0, A=3, counter=4, counter++=3, r=-2, R=0, u=3, v=1] [L47] COND TRUE counter++<5 [L48] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=1, \old(counter)=0, counter=4] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=4] [L48] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=3, counter=4, R=0, r=-2, u=3, v=1] [L49] COND FALSE !(!(r < 0)) [L51] r = r + u [L52] u = u + 2 VAL [\old(counter)=0, A=3, counter=4, r=1, R=0, u=5, v=1] [L47] EXPR counter++ VAL [\old(counter)=0, A=3, counter=5, counter++=4, r=1, R=0, u=5, v=1] [L47] COND TRUE counter++<5 [L48] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=1, \old(counter)=0, counter=5] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=5] [L48] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=3, counter=5, r=1, R=0, u=5, v=1] [L49] COND TRUE !(r < 0) VAL [\old(counter)=0, A=3, counter=5, R=0, r=1, u=5, v=1] [L34] EXPR counter++ VAL [\old(counter)=0, A=3, counter=6, counter++=5, r=1, R=0, u=5, v=1] [L34] COND FALSE !(counter++<5) [L56] CALL __VERIFIER_assert(((long long) 4*A) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=0, \old(counter)=0, counter=6] [L12] COND TRUE !(cond) VAL [\old(cond)=0, \old(counter)=0, cond=0, counter=6] [L14] reach_error() VAL [\old(cond)=0, \old(counter)=0, cond=0, counter=6] - StatisticsResult: Ultimate Automizer benchmark data CFG has 5 procedures, 37 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 36.9s, OverallIterations: 11, TraceHistogramMax: 6, PathProgramHistogramMax: 2, EmptinessCheckTime: 0.0s, AutomataDifference: 24.7s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 210 SdHoareTripleChecker+Valid, 6.7s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 201 mSDsluCounter, 1301 SdHoareTripleChecker+Invalid, 6.7s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 892 mSDsCounter, 94 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 386 IncrementalHoareTripleChecker+Invalid, 480 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 94 mSolverCounterUnsat, 409 mSDtfsCounter, 386 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 584 GetRequests, 524 SyntacticMatches, 5 SemanticMatches, 55 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 47 ImplicationChecksByTransitivity, 0.3s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=96occurred in iteration=10, InterpolantAutomatonStates: 64, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.4s AutomataMinimizationTime, 10 MinimizatonAttempts, 37 StatesRemovedByMinimization, 6 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.1s SsaConstructionTime, 0.3s SatisfiabilityAnalysisTime, 6.4s InterpolantComputationTime, 430 NumberOfCodeBlocks, 430 NumberOfCodeBlocksAsserted, 12 NumberOfCheckSat, 569 ConstructedInterpolants, 0 QuantifiedInterpolants, 1371 SizeOfPredicates, 28 NumberOfNonLiveVariables, 1204 ConjunctsInSsa, 81 ConjunctsInUnsatCore, 15 InterpolantComputations, 6 PerfectInterpolantSequences, 186/252 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 RESULT: Ultimate proved your program to be incorrect! [2022-04-28 00:08:18,424 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...