/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/automizer/LoopAccelerationJordanC.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/fermat2-ll_unwindbound5.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-e106359-m [2022-04-14 21:40:26,459 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-14 21:40:26,467 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-14 21:40:26,517 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-14 21:40:26,517 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-14 21:40:26,518 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-14 21:40:26,518 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-14 21:40:26,519 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-14 21:40:26,520 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-14 21:40:26,521 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-14 21:40:26,521 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-14 21:40:26,522 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-14 21:40:26,522 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-14 21:40:26,523 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-14 21:40:26,524 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-14 21:40:26,524 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-14 21:40:26,525 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-14 21:40:26,525 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-14 21:40:26,526 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-14 21:40:26,532 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-14 21:40:26,537 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-14 21:40:26,540 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-14 21:40:26,540 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-14 21:40:26,541 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-14 21:40:26,542 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-14 21:40:26,543 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-14 21:40:26,543 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-14 21:40:26,544 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-14 21:40:26,544 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-14 21:40:26,544 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-14 21:40:26,545 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-14 21:40:26,545 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-14 21:40:26,546 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-14 21:40:26,546 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-14 21:40:26,547 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-14 21:40:26,547 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-14 21:40:26,547 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-14 21:40:26,548 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-14 21:40:26,548 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-14 21:40:26,548 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-14 21:40:26,549 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-14 21:40:26,549 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-14 21:40:26,550 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf [2022-04-14 21:40:26,556 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-14 21:40:26,556 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-14 21:40:26,557 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-14 21:40:26,557 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-14 21:40:26,557 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-14 21:40:26,557 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-14 21:40:26,558 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-14 21:40:26,558 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-14 21:40:26,558 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-14 21:40:26,558 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-14 21:40:26,558 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-14 21:40:26,558 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-14 21:40:26,558 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-14 21:40:26,559 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-14 21:40:26,559 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-14 21:40:26,561 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-14 21:40:26,561 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-14 21:40:26,561 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-14 21:40:26,561 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-14 21:40:26,561 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-14 21:40:26,562 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-14 21:40:26,562 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-14 21:40:26,562 INFO L138 SettingsManager]: * TransformationType=LOOP_ACCELERATION_JORDAN 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-14 21:40:26,758 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-14 21:40:26,782 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-14 21:40:26,784 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-14 21:40:26,785 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-14 21:40:26,786 INFO L275 PluginConnector]: CDTParser initialized [2022-04-14 21:40:26,787 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/fermat2-ll_unwindbound5.c [2022-04-14 21:40:26,828 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/898a85885/b1a41b2f99184dd8a78370c20b923b2c/FLAGf1dfd5e6e [2022-04-14 21:40:27,145 INFO L306 CDTParser]: Found 1 translation units. [2022-04-14 21:40:27,145 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/fermat2-ll_unwindbound5.c [2022-04-14 21:40:27,150 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/898a85885/b1a41b2f99184dd8a78370c20b923b2c/FLAGf1dfd5e6e [2022-04-14 21:40:27,579 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/898a85885/b1a41b2f99184dd8a78370c20b923b2c [2022-04-14 21:40:27,580 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-14 21:40:27,581 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-14 21:40:27,582 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-14 21:40:27,582 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-14 21:40:27,585 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-14 21:40:27,586 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.04 09:40:27" (1/1) ... [2022-04-14 21:40:27,586 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@648c555d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:40:27, skipping insertion in model container [2022-04-14 21:40:27,586 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.04 09:40:27" (1/1) ... [2022-04-14 21:40:27,591 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-14 21:40:27,600 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-14 21:40:27,714 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/fermat2-ll_unwindbound5.c[524,537] [2022-04-14 21:40:27,732 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-14 21:40:27,737 INFO L203 MainTranslator]: Completed pre-run [2022-04-14 21:40:27,744 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/fermat2-ll_unwindbound5.c[524,537] [2022-04-14 21:40:27,752 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-14 21:40:27,761 INFO L208 MainTranslator]: Completed translation [2022-04-14 21:40:27,761 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:40:27 WrapperNode [2022-04-14 21:40:27,761 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-14 21:40:27,762 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-14 21:40:27,762 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-14 21:40:27,762 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-14 21:40:27,768 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:40:27" (1/1) ... [2022-04-14 21:40:27,768 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:40:27" (1/1) ... [2022-04-14 21:40:27,772 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:40:27" (1/1) ... [2022-04-14 21:40:27,772 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:40:27" (1/1) ... [2022-04-14 21:40:27,776 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:40:27" (1/1) ... [2022-04-14 21:40:27,779 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:40:27" (1/1) ... [2022-04-14 21:40:27,779 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:40:27" (1/1) ... [2022-04-14 21:40:27,780 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-14 21:40:27,781 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-14 21:40:27,781 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-14 21:40:27,781 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-14 21:40:27,782 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:40:27" (1/1) ... [2022-04-14 21:40:27,786 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-14 21:40:27,792 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 21:40:27,800 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-14 21:40:27,801 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-14 21:40:27,824 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-14 21:40:27,824 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-14 21:40:27,824 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-14 21:40:27,824 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-14 21:40:27,825 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-14 21:40:27,825 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-14 21:40:27,825 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-14 21:40:27,825 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-14 21:40:27,825 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-14 21:40:27,825 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-14 21:40:27,826 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-14 21:40:27,826 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-14 21:40:27,826 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-14 21:40:27,826 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-14 21:40:27,827 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-14 21:40:27,827 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-14 21:40:27,827 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-14 21:40:27,827 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-14 21:40:27,827 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-14 21:40:27,827 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-14 21:40:27,875 INFO L234 CfgBuilder]: Building ICFG [2022-04-14 21:40:27,876 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-14 21:40:28,060 INFO L275 CfgBuilder]: Performing block encoding [2022-04-14 21:40:28,065 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-14 21:40:28,065 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-14 21:40:28,066 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 09:40:28 BoogieIcfgContainer [2022-04-14 21:40:28,066 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-14 21:40:28,067 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-14 21:40:28,067 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-14 21:40:28,070 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-14 21:40:28,072 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 09:40:28" (1/1) ... [2022-04-14 21:40:28,075 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_JORDAN [2022-04-14 21:40:28,112 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 14.04 09:40:28 BasicIcfg [2022-04-14 21:40:28,112 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-14 21:40:28,113 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-14 21:40:28,113 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-14 21:40:28,118 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-14 21:40:28,118 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 14.04 09:40:27" (1/4) ... [2022-04-14 21:40:28,119 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@42ae6efb and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.04 09:40:28, skipping insertion in model container [2022-04-14 21:40:28,119 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:40:27" (2/4) ... [2022-04-14 21:40:28,119 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@42ae6efb and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.04 09:40:28, skipping insertion in model container [2022-04-14 21:40:28,119 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 09:40:28" (3/4) ... [2022-04-14 21:40:28,120 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@42ae6efb and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 14.04 09:40:28, skipping insertion in model container [2022-04-14 21:40:28,120 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 14.04 09:40:28" (4/4) ... [2022-04-14 21:40:28,121 INFO L111 eAbstractionObserver]: Analyzing ICFG fermat2-ll_unwindbound5.cJordan [2022-04-14 21:40:28,124 INFO L202 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:ForwardPredicates Determinization: PREDICATE_ABSTRACTION [2022-04-14 21:40:28,124 INFO L161 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-14 21:40:28,167 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-14 21:40:28,179 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=ForwardPredicates, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=false, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, 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 [2022-04-14 21:40:28,179 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-14 21:40:28,193 INFO L276 IsEmpty]: Start isEmpty. Operand has 30 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 19 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-14 21:40:28,198 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-04-14 21:40:28,198 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 21:40:28,198 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 21:40:28,198 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 21:40:28,201 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 21:40:28,202 INFO L85 PathProgramCache]: Analyzing trace with hash 734203501, now seen corresponding path program 1 times [2022-04-14 21:40:28,208 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 21:40:28,209 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [296026269] [2022-04-14 21:40:28,209 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 21:40:28,210 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 21:40:28,308 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 21:40:28,309 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2136913945] [2022-04-14 21:40:28,309 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 21:40:28,309 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 21:40:28,309 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 21:40:28,311 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-14 21:40:28,331 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-14 21:40:28,388 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:40:28,390 INFO L263 TraceCheckSpWp]: Trace formula consists of 89 conjuncts, 1 conjunts are in the unsatisfiable core [2022-04-14 21:40:28,396 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:40:28,400 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 21:40:28,498 INFO L272 TraceCheckUtils]: 0: Hoare triple {33#true} [70] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-14 21:40:28,499 INFO L290 TraceCheckUtils]: 1: Hoare triple {33#true} [72] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 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) (= (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_3, #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] {33#true} is VALID [2022-04-14 21:40:28,500 INFO L290 TraceCheckUtils]: 2: Hoare triple {33#true} [75] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-14 21:40:28,500 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {33#true} {33#true} [101] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-14 21:40:28,500 INFO L272 TraceCheckUtils]: 4: Hoare triple {33#true} [71] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-14 21:40:28,501 INFO L290 TraceCheckUtils]: 5: Hoare triple {33#true} [74] mainENTRY-->L26: 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_4, main_~A~0=v_main_~A~0_2, main_~R~0=v_main_~R~0_1, main_~u~0=v_main_~u~0_4, main_~r~0=v_main_~r~0_5} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~A~0, main_~R~0, main_~u~0, main_~r~0] {33#true} is VALID [2022-04-14 21:40:28,504 INFO L272 TraceCheckUtils]: 6: Hoare triple {33#true} [76] L26-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_9)) 1 0)) InVars {main_~A~0=v_main_~A~0_9, 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] {33#true} is VALID [2022-04-14 21:40:28,505 INFO L290 TraceCheckUtils]: 7: Hoare triple {33#true} [78] 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] {33#true} is VALID [2022-04-14 21:40:28,506 INFO L290 TraceCheckUtils]: 8: Hoare triple {33#true} [80] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {34#false} is VALID [2022-04-14 21:40:28,506 INFO L290 TraceCheckUtils]: 9: Hoare triple {34#false} [84] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34#false} is VALID [2022-04-14 21:40:28,506 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {34#false} {33#true} [102] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_9)) 1 0)) InVars {main_~A~0=v_main_~A~0_9, 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] {34#false} is VALID [2022-04-14 21:40:28,506 INFO L272 TraceCheckUtils]: 11: Hoare triple {34#false} [77] L26-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_10 2))) (ite (and (not (= .cse0 0)) (< v_main_~A~0_10 0)) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_10} 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] {34#false} is VALID [2022-04-14 21:40:28,506 INFO L290 TraceCheckUtils]: 12: Hoare triple {34#false} [78] 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] {34#false} is VALID [2022-04-14 21:40:28,507 INFO L290 TraceCheckUtils]: 13: Hoare triple {34#false} [80] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {34#false} is VALID [2022-04-14 21:40:28,507 INFO L290 TraceCheckUtils]: 14: Hoare triple {34#false} [84] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34#false} is VALID [2022-04-14 21:40:28,507 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {34#false} {34#false} [103] assume_abort_if_notEXIT-->L28: 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_10 2))) (ite (and (not (= .cse0 0)) (< v_main_~A~0_10 0)) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_10} 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] {34#false} is VALID [2022-04-14 21:40:28,507 INFO L290 TraceCheckUtils]: 16: Hoare triple {34#false} [79] L28-->L38-2: Formula: (and (= v_main_~u~0_5 (+ (* v_main_~R~0_5 2) 1)) (= v_main_~v~0_5 1) (= v_main_~r~0_6 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_7)))) 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_5, main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_5, main_~r~0=v_main_~r~0_6} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {34#false} is VALID [2022-04-14 21:40:28,507 INFO L290 TraceCheckUtils]: 17: Hoare triple {34#false} [82] L38-2-->L34-3: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {34#false} is VALID [2022-04-14 21:40:28,508 INFO L272 TraceCheckUtils]: 18: Hoare triple {34#false} [85] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_8) (* v_main_~v~0_8 2) (* v_main_~u~0_8 v_main_~u~0_8) (* (- 1) (* v_main_~v~0_8 v_main_~v~0_8))) (* v_main_~A~0_12 4)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~v~0=v_main_~v~0_8, main_~A~0=v_main_~A~0_12, main_~u~0=v_main_~u~0_8} 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] {34#false} is VALID [2022-04-14 21:40:28,508 INFO L290 TraceCheckUtils]: 19: Hoare triple {34#false} [89] __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] {34#false} is VALID [2022-04-14 21:40:28,508 INFO L290 TraceCheckUtils]: 20: Hoare triple {34#false} [92] 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[] {34#false} is VALID [2022-04-14 21:40:28,508 INFO L290 TraceCheckUtils]: 21: Hoare triple {34#false} [96] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34#false} is VALID [2022-04-14 21:40:28,509 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-14 21:40:28,509 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 21:40:28,509 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 21:40:28,510 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [296026269] [2022-04-14 21:40:28,511 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 21:40:28,511 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2136913945] [2022-04-14 21:40:28,511 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2136913945] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 21:40:28,511 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 21:40:28,512 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-04-14 21:40:28,515 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1098893124] [2022-04-14 21:40:28,516 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 21:40:28,522 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-14 21:40:28,523 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 21:40:28,526 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-14 21:40:28,552 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-14 21:40:28,553 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-04-14 21:40:28,553 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 21:40:28,572 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-04-14 21:40:28,573 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-04-14 21:40:28,575 INFO L87 Difference]: Start difference. First operand has 30 states, 18 states have (on average 1.3888888888888888) internal successors, (25), 19 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) 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-14 21:40:28,617 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:40:28,618 INFO L93 Difference]: Finished difference Result 30 states and 34 transitions. [2022-04-14 21:40:28,618 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-04-14 21:40:28,618 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-14 21:40:28,618 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 21:40:28,619 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-14 21:40:28,627 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 37 transitions. [2022-04-14 21:40:28,628 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-14 21:40:28,632 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 37 transitions. [2022-04-14 21:40:28,632 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 2 states and 37 transitions. [2022-04-14 21:40:28,677 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 21:40:28,682 INFO L225 Difference]: With dead ends: 30 [2022-04-14 21:40:28,682 INFO L226 Difference]: Without dead ends: 25 [2022-04-14 21:40:28,684 INFO L912 BasicCegarLoop]: 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-14 21:40:28,686 INFO L913 BasicCegarLoop]: 34 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, 34 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-14 21:40:28,686 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 34 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-14 21:40:28,714 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 25 states. [2022-04-14 21:40:28,734 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 25 to 25. [2022-04-14 21:40:28,735 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 21:40:28,735 INFO L82 GeneralOperation]: Start isEquivalent. First operand 25 states. Second operand has 25 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 21:40:28,736 INFO L74 IsIncluded]: Start isIncluded. First operand 25 states. Second operand has 25 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 21:40:28,736 INFO L87 Difference]: Start difference. First operand 25 states. Second operand has 25 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 21:40:28,739 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:40:28,739 INFO L93 Difference]: Finished difference Result 25 states and 29 transitions. [2022-04-14 21:40:28,739 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 29 transitions. [2022-04-14 21:40:28,740 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 21:40:28,740 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 21:40:28,740 INFO L74 IsIncluded]: Start isIncluded. First operand has 25 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 25 states. [2022-04-14 21:40:28,741 INFO L87 Difference]: Start difference. First operand has 25 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 25 states. [2022-04-14 21:40:28,743 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:40:28,744 INFO L93 Difference]: Finished difference Result 25 states and 29 transitions. [2022-04-14 21:40:28,744 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 29 transitions. [2022-04-14 21:40:28,744 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 21:40:28,744 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 21:40:28,744 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 21:40:28,744 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 21:40:28,745 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 16 states have internal predecessors, (19), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 21:40:28,746 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 29 transitions. [2022-04-14 21:40:28,747 INFO L78 Accepts]: Start accepts. Automaton has 25 states and 29 transitions. Word has length 22 [2022-04-14 21:40:28,747 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 21:40:28,748 INFO L478 AbstractCegarLoop]: Abstraction has 25 states and 29 transitions. [2022-04-14 21:40:28,748 INFO L479 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-14 21:40:28,748 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 29 transitions. [2022-04-14 21:40:28,748 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-14 21:40:28,748 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 21:40:28,749 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 21:40:28,769 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-14 21:40:28,949 WARN L460 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-14 21:40:28,950 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 21:40:28,950 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 21:40:28,950 INFO L85 PathProgramCache]: Analyzing trace with hash -1669026344, now seen corresponding path program 1 times [2022-04-14 21:40:28,950 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 21:40:28,951 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1178318022] [2022-04-14 21:40:28,951 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 21:40:28,951 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 21:40:28,965 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 21:40:28,965 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1986752689] [2022-04-14 21:40:28,965 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 21:40:28,965 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 21:40:28,965 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 21:40:28,968 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-14 21:40:28,969 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-14 21:40:29,007 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:40:29,008 INFO L263 TraceCheckSpWp]: Trace formula consists of 93 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-14 21:40:29,016 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:40:29,017 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 21:40:29,156 INFO L272 TraceCheckUtils]: 0: Hoare triple {205#true} [70] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {205#true} is VALID [2022-04-14 21:40:29,157 INFO L290 TraceCheckUtils]: 1: Hoare triple {205#true} [72] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 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) (= (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_3, #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] {213#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:29,157 INFO L290 TraceCheckUtils]: 2: Hoare triple {213#(<= ~counter~0 0)} [75] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {213#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:29,158 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {213#(<= ~counter~0 0)} {205#true} [101] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {213#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:29,158 INFO L272 TraceCheckUtils]: 4: Hoare triple {213#(<= ~counter~0 0)} [71] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {213#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:29,159 INFO L290 TraceCheckUtils]: 5: Hoare triple {213#(<= ~counter~0 0)} [74] mainENTRY-->L26: 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_4, main_~A~0=v_main_~A~0_2, main_~R~0=v_main_~R~0_1, main_~u~0=v_main_~u~0_4, main_~r~0=v_main_~r~0_5} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~A~0, main_~R~0, main_~u~0, main_~r~0] {213#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:29,159 INFO L272 TraceCheckUtils]: 6: Hoare triple {213#(<= ~counter~0 0)} [76] L26-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_9)) 1 0)) InVars {main_~A~0=v_main_~A~0_9, 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] {213#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:29,160 INFO L290 TraceCheckUtils]: 7: Hoare triple {213#(<= ~counter~0 0)} [78] 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] {213#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:29,160 INFO L290 TraceCheckUtils]: 8: Hoare triple {213#(<= ~counter~0 0)} [81] 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[] {213#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:29,161 INFO L290 TraceCheckUtils]: 9: Hoare triple {213#(<= ~counter~0 0)} [84] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {213#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:29,161 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {213#(<= ~counter~0 0)} {213#(<= ~counter~0 0)} [102] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_9)) 1 0)) InVars {main_~A~0=v_main_~A~0_9, 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] {213#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:29,162 INFO L272 TraceCheckUtils]: 11: Hoare triple {213#(<= ~counter~0 0)} [77] L26-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_10 2))) (ite (and (not (= .cse0 0)) (< v_main_~A~0_10 0)) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_10} 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] {213#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:29,162 INFO L290 TraceCheckUtils]: 12: Hoare triple {213#(<= ~counter~0 0)} [78] 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] {213#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:29,163 INFO L290 TraceCheckUtils]: 13: Hoare triple {213#(<= ~counter~0 0)} [81] 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[] {213#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:29,163 INFO L290 TraceCheckUtils]: 14: Hoare triple {213#(<= ~counter~0 0)} [84] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {213#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:29,164 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {213#(<= ~counter~0 0)} {213#(<= ~counter~0 0)} [103] assume_abort_if_notEXIT-->L28: 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_10 2))) (ite (and (not (= .cse0 0)) (< v_main_~A~0_10 0)) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_10} 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] {213#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:29,164 INFO L290 TraceCheckUtils]: 16: Hoare triple {213#(<= ~counter~0 0)} [79] L28-->L38-2: Formula: (and (= v_main_~u~0_5 (+ (* v_main_~R~0_5 2) 1)) (= v_main_~v~0_5 1) (= v_main_~r~0_6 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_7)))) 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_5, main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_5, main_~r~0=v_main_~r~0_6} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {213#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:29,165 INFO L290 TraceCheckUtils]: 17: Hoare triple {213#(<= ~counter~0 0)} [83] L38-2-->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] {262#(<= |main_#t~post6| 0)} is VALID [2022-04-14 21:40:29,165 INFO L290 TraceCheckUtils]: 18: Hoare triple {262#(<= |main_#t~post6| 0)} [86] 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] {206#false} is VALID [2022-04-14 21:40:29,165 INFO L272 TraceCheckUtils]: 19: Hoare triple {206#false} [85] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_8) (* v_main_~v~0_8 2) (* v_main_~u~0_8 v_main_~u~0_8) (* (- 1) (* v_main_~v~0_8 v_main_~v~0_8))) (* v_main_~A~0_12 4)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~v~0=v_main_~v~0_8, main_~A~0=v_main_~A~0_12, main_~u~0=v_main_~u~0_8} 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] {206#false} is VALID [2022-04-14 21:40:29,166 INFO L290 TraceCheckUtils]: 20: Hoare triple {206#false} [89] __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] {206#false} is VALID [2022-04-14 21:40:29,166 INFO L290 TraceCheckUtils]: 21: Hoare triple {206#false} [92] 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[] {206#false} is VALID [2022-04-14 21:40:29,166 INFO L290 TraceCheckUtils]: 22: Hoare triple {206#false} [96] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {206#false} is VALID [2022-04-14 21:40:29,166 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-14 21:40:29,166 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 21:40:29,166 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 21:40:29,167 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1178318022] [2022-04-14 21:40:29,167 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 21:40:29,167 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1986752689] [2022-04-14 21:40:29,167 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1986752689] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 21:40:29,167 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 21:40:29,167 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-14 21:40:29,167 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [307344028] [2022-04-14 21:40:29,167 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 21:40:29,169 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-14 21:40:29,170 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 21:40:29,170 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-14 21:40:29,186 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-14 21:40:29,186 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-14 21:40:29,186 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 21:40:29,187 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-14 21:40:29,187 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-14 21:40:29,187 INFO L87 Difference]: Start difference. First operand 25 states and 29 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-14 21:40:29,230 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:40:29,231 INFO L93 Difference]: Finished difference Result 27 states and 31 transitions. [2022-04-14 21:40:29,231 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-14 21:40:29,231 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-14 21:40:29,231 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 21:40:29,231 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-14 21:40:29,233 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 32 transitions. [2022-04-14 21:40:29,233 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-14 21:40:29,234 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 32 transitions. [2022-04-14 21:40:29,234 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 32 transitions. [2022-04-14 21:40:29,265 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-14 21:40:29,269 INFO L225 Difference]: With dead ends: 27 [2022-04-14 21:40:29,269 INFO L226 Difference]: Without dead ends: 27 [2022-04-14 21:40:29,269 INFO L912 BasicCegarLoop]: 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-14 21:40:29,271 INFO L913 BasicCegarLoop]: 27 mSDtfsCounter, 0 mSDsluCounter, 40 mSDsCounter, 0 mSdLazyCounter, 7 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 67 SdHoareTripleChecker+Invalid, 7 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 7 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-14 21:40:29,272 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 67 Invalid, 7 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 7 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-14 21:40:29,274 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2022-04-14 21:40:29,277 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 27. [2022-04-14 21:40:29,277 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 21:40:29,278 INFO L82 GeneralOperation]: Start isEquivalent. First operand 27 states. Second operand has 27 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 21:40:29,278 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand has 27 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 21:40:29,279 INFO L87 Difference]: Start difference. First operand 27 states. Second operand has 27 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 21:40:29,283 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:40:29,283 INFO L93 Difference]: Finished difference Result 27 states and 31 transitions. [2022-04-14 21:40:29,283 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-14 21:40:29,284 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 21:40:29,284 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 21:40:29,285 INFO L74 IsIncluded]: Start isIncluded. First operand has 27 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 27 states. [2022-04-14 21:40:29,286 INFO L87 Difference]: Start difference. First operand has 27 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 27 states. [2022-04-14 21:40:29,290 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:40:29,291 INFO L93 Difference]: Finished difference Result 27 states and 31 transitions. [2022-04-14 21:40:29,291 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-14 21:40:29,291 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 21:40:29,291 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 21:40:29,291 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 21:40:29,291 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 21:40:29,293 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 18 states have internal predecessors, (21), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 21:40:29,299 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 31 transitions. [2022-04-14 21:40:29,299 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 31 transitions. Word has length 23 [2022-04-14 21:40:29,300 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 21:40:29,300 INFO L478 AbstractCegarLoop]: Abstraction has 27 states and 31 transitions. [2022-04-14 21:40:29,300 INFO L479 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-14 21:40:29,300 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-14 21:40:29,301 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-14 21:40:29,302 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 21:40:29,302 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 21:40:29,322 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-14 21:40:29,515 WARN L460 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-14 21:40:29,518 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 21:40:29,519 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 21:40:29,519 INFO L85 PathProgramCache]: Analyzing trace with hash -1667953868, now seen corresponding path program 1 times [2022-04-14 21:40:29,519 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 21:40:29,519 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1777601430] [2022-04-14 21:40:29,519 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 21:40:29,519 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 21:40:29,536 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 21:40:29,536 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [413189582] [2022-04-14 21:40:29,536 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 21:40:29,536 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 21:40:29,536 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 21:40:29,537 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-14 21:40:29,538 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-14 21:40:29,590 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:40:29,591 INFO L263 TraceCheckSpWp]: Trace formula consists of 93 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-14 21:40:29,617 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:40:29,619 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 21:40:30,055 INFO L272 TraceCheckUtils]: 0: Hoare triple {385#true} [70] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {385#true} is VALID [2022-04-14 21:40:30,055 INFO L290 TraceCheckUtils]: 1: Hoare triple {385#true} [72] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 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) (= (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_3, #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] {385#true} is VALID [2022-04-14 21:40:30,056 INFO L290 TraceCheckUtils]: 2: Hoare triple {385#true} [75] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {385#true} is VALID [2022-04-14 21:40:30,056 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {385#true} {385#true} [101] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {385#true} is VALID [2022-04-14 21:40:30,056 INFO L272 TraceCheckUtils]: 4: Hoare triple {385#true} [71] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {385#true} is VALID [2022-04-14 21:40:30,056 INFO L290 TraceCheckUtils]: 5: Hoare triple {385#true} [74] mainENTRY-->L26: 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_4, main_~A~0=v_main_~A~0_2, main_~R~0=v_main_~R~0_1, main_~u~0=v_main_~u~0_4, main_~r~0=v_main_~r~0_5} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~A~0, main_~R~0, main_~u~0, main_~r~0] {385#true} is VALID [2022-04-14 21:40:30,056 INFO L272 TraceCheckUtils]: 6: Hoare triple {385#true} [76] L26-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_9)) 1 0)) InVars {main_~A~0=v_main_~A~0_9, 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] {385#true} is VALID [2022-04-14 21:40:30,056 INFO L290 TraceCheckUtils]: 7: Hoare triple {385#true} [78] 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] {385#true} is VALID [2022-04-14 21:40:30,056 INFO L290 TraceCheckUtils]: 8: Hoare triple {385#true} [81] 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[] {385#true} is VALID [2022-04-14 21:40:30,057 INFO L290 TraceCheckUtils]: 9: Hoare triple {385#true} [84] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {385#true} is VALID [2022-04-14 21:40:30,057 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {385#true} {385#true} [102] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_9)) 1 0)) InVars {main_~A~0=v_main_~A~0_9, 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] {385#true} is VALID [2022-04-14 21:40:30,057 INFO L272 TraceCheckUtils]: 11: Hoare triple {385#true} [77] L26-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_10 2))) (ite (and (not (= .cse0 0)) (< v_main_~A~0_10 0)) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_10} 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] {385#true} is VALID [2022-04-14 21:40:30,057 INFO L290 TraceCheckUtils]: 12: Hoare triple {385#true} [78] 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] {385#true} is VALID [2022-04-14 21:40:30,057 INFO L290 TraceCheckUtils]: 13: Hoare triple {385#true} [81] 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[] {385#true} is VALID [2022-04-14 21:40:30,057 INFO L290 TraceCheckUtils]: 14: Hoare triple {385#true} [84] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {385#true} is VALID [2022-04-14 21:40:30,057 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {385#true} {385#true} [103] assume_abort_if_notEXIT-->L28: 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_10 2))) (ite (and (not (= .cse0 0)) (< v_main_~A~0_10 0)) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_10} 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] {385#true} is VALID [2022-04-14 21:40:32,062 WARN L290 TraceCheckUtils]: 16: Hoare triple {385#true} [79] L28-->L38-2: Formula: (and (= v_main_~u~0_5 (+ (* v_main_~R~0_5 2) 1)) (= v_main_~v~0_5 1) (= v_main_~r~0_6 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_7)))) 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_5, main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_5, main_~r~0=v_main_~r~0_6} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {438#(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 UNKNOWN [2022-04-14 21:40:32,063 INFO L290 TraceCheckUtils]: 17: Hoare triple {438#(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))} [83] L38-2-->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] {438#(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-14 21:40:32,063 INFO L290 TraceCheckUtils]: 18: Hoare triple {438#(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))} [87] 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] {438#(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-14 21:40:32,443 INFO L272 TraceCheckUtils]: 19: Hoare triple {438#(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))} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~r~0_10 4) (* v_main_~A~0_11 4)) (+ (* v_main_~u~0_7 v_main_~u~0_7) (* (- 1) (* v_main_~v~0_7 v_main_~v~0_7)) (* (- 2) v_main_~u~0_7) (* v_main_~v~0_7 2))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_7, main_~A~0=v_main_~A~0_11, main_~u~0=v_main_~u~0_7, main_~r~0=v_main_~r~0_10} 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] {448#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 21:40:32,444 INFO L290 TraceCheckUtils]: 20: Hoare triple {448#(<= 1 |__VERIFIER_assert_#in~cond|)} [89] __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] {452#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 21:40:32,444 INFO L290 TraceCheckUtils]: 21: Hoare triple {452#(<= 1 __VERIFIER_assert_~cond)} [92] 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[] {386#false} is VALID [2022-04-14 21:40:32,444 INFO L290 TraceCheckUtils]: 22: Hoare triple {386#false} [96] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {386#false} is VALID [2022-04-14 21:40:32,445 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-14 21:40:32,445 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 21:40:32,445 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 21:40:32,445 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1777601430] [2022-04-14 21:40:32,445 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 21:40:32,445 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [413189582] [2022-04-14 21:40:32,445 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [413189582] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 21:40:32,445 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 21:40:32,445 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-14 21:40:32,445 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1981778319] [2022-04-14 21:40:32,445 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 21:40:32,446 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-14 21:40:32,446 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 21:40:32,446 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-14 21:40:35,001 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 19 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-14 21:40:35,001 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-14 21:40:35,002 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 21:40:35,002 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-14 21:40:35,002 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-14 21:40:35,002 INFO L87 Difference]: Start difference. First operand 27 states and 31 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-14 21:40:38,702 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-14 21:40:38,745 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:40:38,745 INFO L93 Difference]: Finished difference Result 35 states and 41 transitions. [2022-04-14 21:40:38,745 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-14 21:40:38,745 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-14 21:40:38,746 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 21:40:38,746 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-14 21:40:38,747 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 42 transitions. [2022-04-14 21:40:38,747 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-14 21:40:38,749 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 42 transitions. [2022-04-14 21:40:38,749 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 42 transitions. [2022-04-14 21:40:41,952 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 41 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-14 21:40:41,953 INFO L225 Difference]: With dead ends: 35 [2022-04-14 21:40:41,953 INFO L226 Difference]: Without dead ends: 35 [2022-04-14 21:40:41,953 INFO L912 BasicCegarLoop]: 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-14 21:40:41,954 INFO L913 BasicCegarLoop]: 23 mSDtfsCounter, 7 mSDsluCounter, 59 mSDsCounter, 0 mSdLazyCounter, 35 mSolverCounterSat, 0 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 3.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 82 SdHoareTripleChecker+Invalid, 36 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 35 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 3.6s IncrementalHoareTripleChecker+Time [2022-04-14 21:40:41,954 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [8 Valid, 82 Invalid, 36 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 35 Invalid, 1 Unknown, 0 Unchecked, 3.6s Time] [2022-04-14 21:40:41,955 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-14 21:40:41,957 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 32. [2022-04-14 21:40:41,957 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 21:40:41,957 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand has 32 states, 20 states have (on average 1.2) internal successors, (24), 22 states have internal predecessors, (24), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-14 21:40:41,957 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand has 32 states, 20 states have (on average 1.2) internal successors, (24), 22 states have internal predecessors, (24), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-14 21:40:41,958 INFO L87 Difference]: Start difference. First operand 35 states. Second operand has 32 states, 20 states have (on average 1.2) internal successors, (24), 22 states have internal predecessors, (24), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-14 21:40:41,959 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:40:41,959 INFO L93 Difference]: Finished difference Result 35 states and 41 transitions. [2022-04-14 21:40:41,959 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 41 transitions. [2022-04-14 21:40:41,960 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 21:40:41,960 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 21:40:41,960 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 20 states have (on average 1.2) internal successors, (24), 22 states have internal predecessors, (24), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) Second operand 35 states. [2022-04-14 21:40:41,960 INFO L87 Difference]: Start difference. First operand has 32 states, 20 states have (on average 1.2) internal successors, (24), 22 states have internal predecessors, (24), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) Second operand 35 states. [2022-04-14 21:40:41,961 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:40:41,961 INFO L93 Difference]: Finished difference Result 35 states and 41 transitions. [2022-04-14 21:40:41,962 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 41 transitions. [2022-04-14 21:40:41,962 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 21:40:41,962 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 21:40:41,962 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 21:40:41,962 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 21:40:41,962 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 20 states have (on average 1.2) internal successors, (24), 22 states have internal predecessors, (24), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-14 21:40:41,963 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 36 transitions. [2022-04-14 21:40:41,963 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 36 transitions. Word has length 23 [2022-04-14 21:40:41,963 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 21:40:41,964 INFO L478 AbstractCegarLoop]: Abstraction has 32 states and 36 transitions. [2022-04-14 21:40:41,964 INFO L479 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-14 21:40:41,964 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 36 transitions. [2022-04-14 21:40:41,964 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-14 21:40:41,964 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 21:40:41,964 INFO L499 BasicCegarLoop]: 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-14 21:40:41,980 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-14 21:40:42,165 WARN L460 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-14 21:40:42,165 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 21:40:42,165 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 21:40:42,166 INFO L85 PathProgramCache]: Analyzing trace with hash 1179905874, now seen corresponding path program 1 times [2022-04-14 21:40:42,166 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 21:40:42,166 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [238332979] [2022-04-14 21:40:42,166 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 21:40:42,166 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 21:40:42,187 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 21:40:42,188 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2061792717] [2022-04-14 21:40:42,188 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 21:40:42,188 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 21:40:42,188 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 21:40:42,196 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-14 21:40:42,219 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-14 21:40:42,239 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:40:42,240 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-14 21:40:42,257 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:40:42,258 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 21:40:42,398 INFO L272 TraceCheckUtils]: 0: Hoare triple {597#true} [70] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {597#true} is VALID [2022-04-14 21:40:42,398 INFO L290 TraceCheckUtils]: 1: Hoare triple {597#true} [72] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 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) (= (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_3, #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] {597#true} is VALID [2022-04-14 21:40:42,398 INFO L290 TraceCheckUtils]: 2: Hoare triple {597#true} [75] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {597#true} is VALID [2022-04-14 21:40:42,398 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {597#true} {597#true} [101] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {597#true} is VALID [2022-04-14 21:40:42,398 INFO L272 TraceCheckUtils]: 4: Hoare triple {597#true} [71] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {597#true} is VALID [2022-04-14 21:40:42,398 INFO L290 TraceCheckUtils]: 5: Hoare triple {597#true} [74] mainENTRY-->L26: 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_4, main_~A~0=v_main_~A~0_2, main_~R~0=v_main_~R~0_1, main_~u~0=v_main_~u~0_4, main_~r~0=v_main_~r~0_5} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~A~0, main_~R~0, main_~u~0, main_~r~0] {597#true} is VALID [2022-04-14 21:40:42,399 INFO L272 TraceCheckUtils]: 6: Hoare triple {597#true} [76] L26-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_9)) 1 0)) InVars {main_~A~0=v_main_~A~0_9, 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] {597#true} is VALID [2022-04-14 21:40:42,399 INFO L290 TraceCheckUtils]: 7: Hoare triple {597#true} [78] 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] {597#true} is VALID [2022-04-14 21:40:42,399 INFO L290 TraceCheckUtils]: 8: Hoare triple {597#true} [81] 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[] {597#true} is VALID [2022-04-14 21:40:42,399 INFO L290 TraceCheckUtils]: 9: Hoare triple {597#true} [84] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {597#true} is VALID [2022-04-14 21:40:42,399 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {597#true} {597#true} [102] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_9)) 1 0)) InVars {main_~A~0=v_main_~A~0_9, 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] {597#true} is VALID [2022-04-14 21:40:42,399 INFO L272 TraceCheckUtils]: 11: Hoare triple {597#true} [77] L26-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_10 2))) (ite (and (not (= .cse0 0)) (< v_main_~A~0_10 0)) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_10} 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] {597#true} is VALID [2022-04-14 21:40:42,399 INFO L290 TraceCheckUtils]: 12: Hoare triple {597#true} [78] 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] {597#true} is VALID [2022-04-14 21:40:42,400 INFO L290 TraceCheckUtils]: 13: Hoare triple {597#true} [81] 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[] {597#true} is VALID [2022-04-14 21:40:42,400 INFO L290 TraceCheckUtils]: 14: Hoare triple {597#true} [84] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {597#true} is VALID [2022-04-14 21:40:42,400 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {597#true} {597#true} [103] assume_abort_if_notEXIT-->L28: 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_10 2))) (ite (and (not (= .cse0 0)) (< v_main_~A~0_10 0)) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_10} 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] {597#true} is VALID [2022-04-14 21:40:42,400 INFO L290 TraceCheckUtils]: 16: Hoare triple {597#true} [79] L28-->L38-2: Formula: (and (= v_main_~u~0_5 (+ (* v_main_~R~0_5 2) 1)) (= v_main_~v~0_5 1) (= v_main_~r~0_6 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_7)))) 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_5, main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_5, main_~r~0=v_main_~r~0_6} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {597#true} is VALID [2022-04-14 21:40:42,400 INFO L290 TraceCheckUtils]: 17: Hoare triple {597#true} [83] L38-2-->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] {597#true} is VALID [2022-04-14 21:40:42,400 INFO L290 TraceCheckUtils]: 18: Hoare triple {597#true} [87] 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] {597#true} is VALID [2022-04-14 21:40:42,400 INFO L272 TraceCheckUtils]: 19: Hoare triple {597#true} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~r~0_10 4) (* v_main_~A~0_11 4)) (+ (* v_main_~u~0_7 v_main_~u~0_7) (* (- 1) (* v_main_~v~0_7 v_main_~v~0_7)) (* (- 2) v_main_~u~0_7) (* v_main_~v~0_7 2))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_7, main_~A~0=v_main_~A~0_11, main_~u~0=v_main_~u~0_7, main_~r~0=v_main_~r~0_10} 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] {597#true} is VALID [2022-04-14 21:40:42,401 INFO L290 TraceCheckUtils]: 20: Hoare triple {597#true} [89] __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] {662#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-14 21:40:42,401 INFO L290 TraceCheckUtils]: 21: Hoare triple {662#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [93] 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[] {666#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 21:40:42,401 INFO L290 TraceCheckUtils]: 22: Hoare triple {666#(not (= |__VERIFIER_assert_#in~cond| 0))} [98] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {666#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 21:40:42,402 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {666#(not (= |__VERIFIER_assert_#in~cond| 0))} {597#true} [105] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~r~0_10 4) (* v_main_~A~0_11 4)) (+ (* v_main_~u~0_7 v_main_~u~0_7) (* (- 1) (* v_main_~v~0_7 v_main_~v~0_7)) (* (- 2) v_main_~u~0_7) (* v_main_~v~0_7 2))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_7, main_~A~0=v_main_~A~0_11, main_~u~0=v_main_~u~0_7, main_~r~0=v_main_~r~0_10} 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] {673#(= (+ (* 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-14 21:40:42,403 INFO L290 TraceCheckUtils]: 24: Hoare triple {673#(= (+ (* 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)))} [94] L35-1-->L34-3: Formula: (= v_main_~r~0_8 0) InVars {main_~r~0=v_main_~r~0_8} OutVars{main_~r~0=v_main_~r~0_8} AuxVars[] AssignedVars[] {677#(= (+ (* 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-14 21:40:42,403 INFO L272 TraceCheckUtils]: 25: Hoare triple {677#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4)))} [85] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_8) (* v_main_~v~0_8 2) (* v_main_~u~0_8 v_main_~u~0_8) (* (- 1) (* v_main_~v~0_8 v_main_~v~0_8))) (* v_main_~A~0_12 4)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~v~0=v_main_~v~0_8, main_~A~0=v_main_~A~0_12, main_~u~0=v_main_~u~0_8} 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] {681#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 21:40:42,404 INFO L290 TraceCheckUtils]: 26: Hoare triple {681#(<= 1 |__VERIFIER_assert_#in~cond|)} [89] __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] {685#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 21:40:42,404 INFO L290 TraceCheckUtils]: 27: Hoare triple {685#(<= 1 __VERIFIER_assert_~cond)} [92] 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[] {598#false} is VALID [2022-04-14 21:40:42,404 INFO L290 TraceCheckUtils]: 28: Hoare triple {598#false} [96] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {598#false} is VALID [2022-04-14 21:40:42,404 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-14 21:40:42,404 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 21:40:42,778 INFO L290 TraceCheckUtils]: 28: Hoare triple {598#false} [96] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {598#false} is VALID [2022-04-14 21:40:42,778 INFO L290 TraceCheckUtils]: 27: Hoare triple {685#(<= 1 __VERIFIER_assert_~cond)} [92] 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[] {598#false} is VALID [2022-04-14 21:40:42,779 INFO L290 TraceCheckUtils]: 26: Hoare triple {681#(<= 1 |__VERIFIER_assert_#in~cond|)} [89] __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] {685#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 21:40:42,779 INFO L272 TraceCheckUtils]: 25: Hoare triple {677#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4)))} [85] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_8) (* v_main_~v~0_8 2) (* v_main_~u~0_8 v_main_~u~0_8) (* (- 1) (* v_main_~v~0_8 v_main_~v~0_8))) (* v_main_~A~0_12 4)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~v~0=v_main_~v~0_8, main_~A~0=v_main_~A~0_12, main_~u~0=v_main_~u~0_8} 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] {681#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 21:40:42,781 INFO L290 TraceCheckUtils]: 24: Hoare triple {704#(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))))} [94] L35-1-->L34-3: Formula: (= v_main_~r~0_8 0) InVars {main_~r~0=v_main_~r~0_8} OutVars{main_~r~0=v_main_~r~0_8} AuxVars[] AssignedVars[] {677#(= (+ (* 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-14 21:40:42,782 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {666#(not (= |__VERIFIER_assert_#in~cond| 0))} {597#true} [105] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~r~0_10 4) (* v_main_~A~0_11 4)) (+ (* v_main_~u~0_7 v_main_~u~0_7) (* (- 1) (* v_main_~v~0_7 v_main_~v~0_7)) (* (- 2) v_main_~u~0_7) (* v_main_~v~0_7 2))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_7, main_~A~0=v_main_~A~0_11, main_~u~0=v_main_~u~0_7, main_~r~0=v_main_~r~0_10} 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] {704#(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-14 21:40:42,782 INFO L290 TraceCheckUtils]: 22: Hoare triple {666#(not (= |__VERIFIER_assert_#in~cond| 0))} [98] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {666#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 21:40:42,783 INFO L290 TraceCheckUtils]: 21: Hoare triple {717#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [93] 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[] {666#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 21:40:42,783 INFO L290 TraceCheckUtils]: 20: Hoare triple {597#true} [89] __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] {717#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-14 21:40:42,783 INFO L272 TraceCheckUtils]: 19: Hoare triple {597#true} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~r~0_10 4) (* v_main_~A~0_11 4)) (+ (* v_main_~u~0_7 v_main_~u~0_7) (* (- 1) (* v_main_~v~0_7 v_main_~v~0_7)) (* (- 2) v_main_~u~0_7) (* v_main_~v~0_7 2))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_7, main_~A~0=v_main_~A~0_11, main_~u~0=v_main_~u~0_7, main_~r~0=v_main_~r~0_10} 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] {597#true} is VALID [2022-04-14 21:40:42,784 INFO L290 TraceCheckUtils]: 18: Hoare triple {597#true} [87] 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] {597#true} is VALID [2022-04-14 21:40:42,784 INFO L290 TraceCheckUtils]: 17: Hoare triple {597#true} [83] L38-2-->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] {597#true} is VALID [2022-04-14 21:40:42,784 INFO L290 TraceCheckUtils]: 16: Hoare triple {597#true} [79] L28-->L38-2: Formula: (and (= v_main_~u~0_5 (+ (* v_main_~R~0_5 2) 1)) (= v_main_~v~0_5 1) (= v_main_~r~0_6 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_7)))) 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_5, main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_5, main_~r~0=v_main_~r~0_6} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {597#true} is VALID [2022-04-14 21:40:42,784 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {597#true} {597#true} [103] assume_abort_if_notEXIT-->L28: 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_10 2))) (ite (and (not (= .cse0 0)) (< v_main_~A~0_10 0)) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_10} 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] {597#true} is VALID [2022-04-14 21:40:42,785 INFO L290 TraceCheckUtils]: 14: Hoare triple {597#true} [84] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {597#true} is VALID [2022-04-14 21:40:42,785 INFO L290 TraceCheckUtils]: 13: Hoare triple {597#true} [81] 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[] {597#true} is VALID [2022-04-14 21:40:42,785 INFO L290 TraceCheckUtils]: 12: Hoare triple {597#true} [78] 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] {597#true} is VALID [2022-04-14 21:40:42,785 INFO L272 TraceCheckUtils]: 11: Hoare triple {597#true} [77] L26-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_10 2))) (ite (and (not (= .cse0 0)) (< v_main_~A~0_10 0)) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_10} 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] {597#true} is VALID [2022-04-14 21:40:42,786 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {597#true} {597#true} [102] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_9)) 1 0)) InVars {main_~A~0=v_main_~A~0_9, 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] {597#true} is VALID [2022-04-14 21:40:42,786 INFO L290 TraceCheckUtils]: 9: Hoare triple {597#true} [84] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {597#true} is VALID [2022-04-14 21:40:42,787 INFO L290 TraceCheckUtils]: 8: Hoare triple {597#true} [81] 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[] {597#true} is VALID [2022-04-14 21:40:42,787 INFO L290 TraceCheckUtils]: 7: Hoare triple {597#true} [78] 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] {597#true} is VALID [2022-04-14 21:40:42,793 INFO L272 TraceCheckUtils]: 6: Hoare triple {597#true} [76] L26-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_9)) 1 0)) InVars {main_~A~0=v_main_~A~0_9, 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] {597#true} is VALID [2022-04-14 21:40:42,799 INFO L290 TraceCheckUtils]: 5: Hoare triple {597#true} [74] mainENTRY-->L26: 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_4, main_~A~0=v_main_~A~0_2, main_~R~0=v_main_~R~0_1, main_~u~0=v_main_~u~0_4, main_~r~0=v_main_~r~0_5} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~A~0, main_~R~0, main_~u~0, main_~r~0] {597#true} is VALID [2022-04-14 21:40:42,800 INFO L272 TraceCheckUtils]: 4: Hoare triple {597#true} [71] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {597#true} is VALID [2022-04-14 21:40:42,800 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {597#true} {597#true} [101] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {597#true} is VALID [2022-04-14 21:40:42,800 INFO L290 TraceCheckUtils]: 2: Hoare triple {597#true} [75] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {597#true} is VALID [2022-04-14 21:40:42,800 INFO L290 TraceCheckUtils]: 1: Hoare triple {597#true} [72] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 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) (= (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_3, #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] {597#true} is VALID [2022-04-14 21:40:42,800 INFO L272 TraceCheckUtils]: 0: Hoare triple {597#true} [70] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {597#true} is VALID [2022-04-14 21:40:42,800 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-14 21:40:42,800 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 21:40:42,800 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [238332979] [2022-04-14 21:40:42,800 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 21:40:42,800 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2061792717] [2022-04-14 21:40:42,801 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2061792717] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 21:40:42,801 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 21:40:42,801 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-14 21:40:42,801 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [522287322] [2022-04-14 21:40:42,801 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 21:40:42,801 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-14 21:40:42,801 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 21:40:42,802 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-14 21:40:42,819 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 21:40:42,820 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-14 21:40:42,820 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 21:40:42,821 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-14 21:40:42,821 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=67, Unknown=0, NotChecked=0, Total=90 [2022-04-14 21:40:42,821 INFO L87 Difference]: Start difference. First operand 32 states and 36 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-14 21:40:43,117 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:40:43,117 INFO L93 Difference]: Finished difference Result 37 states and 40 transitions. [2022-04-14 21:40:43,117 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-14 21:40:43,117 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-14 21:40:43,117 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 21:40:43,118 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-14 21:40:43,119 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 34 transitions. [2022-04-14 21:40:43,119 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-14 21:40:43,120 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 34 transitions. [2022-04-14 21:40:43,120 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 34 transitions. [2022-04-14 21:40:43,150 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 21:40:43,151 INFO L225 Difference]: With dead ends: 37 [2022-04-14 21:40:43,151 INFO L226 Difference]: Without dead ends: 34 [2022-04-14 21:40:43,152 INFO L912 BasicCegarLoop]: 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-14 21:40:43,152 INFO L913 BasicCegarLoop]: 21 mSDtfsCounter, 17 mSDsluCounter, 111 mSDsCounter, 0 mSdLazyCounter, 69 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 132 SdHoareTripleChecker+Invalid, 75 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 69 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-14 21:40:43,152 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [17 Valid, 132 Invalid, 75 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 69 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-14 21:40:43,153 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-14 21:40:43,154 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 29. [2022-04-14 21:40:43,154 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 21:40:43,155 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand has 29 states, 19 states have (on average 1.105263157894737) internal successors, (21), 19 states have internal predecessors, (21), 6 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 21:40:43,155 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand has 29 states, 19 states have (on average 1.105263157894737) internal successors, (21), 19 states have internal predecessors, (21), 6 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 21:40:43,155 INFO L87 Difference]: Start difference. First operand 34 states. Second operand has 29 states, 19 states have (on average 1.105263157894737) internal successors, (21), 19 states have internal predecessors, (21), 6 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 21:40:43,156 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:40:43,156 INFO L93 Difference]: Finished difference Result 34 states and 36 transitions. [2022-04-14 21:40:43,156 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 36 transitions. [2022-04-14 21:40:43,156 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 21:40:43,156 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 21:40:43,157 INFO L74 IsIncluded]: Start isIncluded. First operand has 29 states, 19 states have (on average 1.105263157894737) internal successors, (21), 19 states have internal predecessors, (21), 6 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 34 states. [2022-04-14 21:40:43,157 INFO L87 Difference]: Start difference. First operand has 29 states, 19 states have (on average 1.105263157894737) internal successors, (21), 19 states have internal predecessors, (21), 6 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 34 states. [2022-04-14 21:40:43,158 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:40:43,158 INFO L93 Difference]: Finished difference Result 34 states and 36 transitions. [2022-04-14 21:40:43,158 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 36 transitions. [2022-04-14 21:40:43,158 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 21:40:43,158 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 21:40:43,158 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 21:40:43,158 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 21:40:43,158 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 19 states have (on average 1.105263157894737) internal successors, (21), 19 states have internal predecessors, (21), 6 states have call successors, (6), 5 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-14 21:40:43,159 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 31 transitions. [2022-04-14 21:40:43,159 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 31 transitions. Word has length 29 [2022-04-14 21:40:43,159 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 21:40:43,159 INFO L478 AbstractCegarLoop]: Abstraction has 29 states and 31 transitions. [2022-04-14 21:40:43,160 INFO L479 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-14 21:40:43,160 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 31 transitions. [2022-04-14 21:40:43,160 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2022-04-14 21:40:43,160 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 21:40:43,160 INFO L499 BasicCegarLoop]: 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] [2022-04-14 21:40:43,178 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-14 21:40:43,360 WARN L460 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-14 21:40:43,361 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 21:40:43,361 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 21:40:43,361 INFO L85 PathProgramCache]: Analyzing trace with hash 1668946595, now seen corresponding path program 1 times [2022-04-14 21:40:43,361 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 21:40:43,361 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [202604718] [2022-04-14 21:40:43,361 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 21:40:43,362 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 21:40:43,371 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 21:40:43,371 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1249650597] [2022-04-14 21:40:43,372 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 21:40:43,372 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 21:40:43,372 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 21:40:43,372 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-14 21:40:43,373 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-14 21:40:43,421 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:40:43,422 INFO L263 TraceCheckSpWp]: Trace formula consists of 113 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-14 21:40:43,432 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:40:43,433 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 21:40:43,564 INFO L272 TraceCheckUtils]: 0: Hoare triple {920#true} [70] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {920#true} is VALID [2022-04-14 21:40:43,565 INFO L290 TraceCheckUtils]: 1: Hoare triple {920#true} [72] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 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) (= (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_3, #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] {928#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:43,566 INFO L290 TraceCheckUtils]: 2: Hoare triple {928#(<= ~counter~0 0)} [75] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {928#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:43,566 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {928#(<= ~counter~0 0)} {920#true} [101] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {928#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:43,567 INFO L272 TraceCheckUtils]: 4: Hoare triple {928#(<= ~counter~0 0)} [71] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {928#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:43,567 INFO L290 TraceCheckUtils]: 5: Hoare triple {928#(<= ~counter~0 0)} [74] mainENTRY-->L26: 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_4, main_~A~0=v_main_~A~0_2, main_~R~0=v_main_~R~0_1, main_~u~0=v_main_~u~0_4, main_~r~0=v_main_~r~0_5} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~A~0, main_~R~0, main_~u~0, main_~r~0] {928#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:43,567 INFO L272 TraceCheckUtils]: 6: Hoare triple {928#(<= ~counter~0 0)} [76] L26-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_9)) 1 0)) InVars {main_~A~0=v_main_~A~0_9, 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] {928#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:43,570 INFO L290 TraceCheckUtils]: 7: Hoare triple {928#(<= ~counter~0 0)} [78] 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] {928#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:43,571 INFO L290 TraceCheckUtils]: 8: Hoare triple {928#(<= ~counter~0 0)} [81] 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[] {928#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:43,571 INFO L290 TraceCheckUtils]: 9: Hoare triple {928#(<= ~counter~0 0)} [84] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {928#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:43,572 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {928#(<= ~counter~0 0)} {928#(<= ~counter~0 0)} [102] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_9)) 1 0)) InVars {main_~A~0=v_main_~A~0_9, 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] {928#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:43,573 INFO L272 TraceCheckUtils]: 11: Hoare triple {928#(<= ~counter~0 0)} [77] L26-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_10 2))) (ite (and (not (= .cse0 0)) (< v_main_~A~0_10 0)) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_10} 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] {928#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:43,575 INFO L290 TraceCheckUtils]: 12: Hoare triple {928#(<= ~counter~0 0)} [78] 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] {928#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:43,575 INFO L290 TraceCheckUtils]: 13: Hoare triple {928#(<= ~counter~0 0)} [81] 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[] {928#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:43,575 INFO L290 TraceCheckUtils]: 14: Hoare triple {928#(<= ~counter~0 0)} [84] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {928#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:43,576 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {928#(<= ~counter~0 0)} {928#(<= ~counter~0 0)} [103] assume_abort_if_notEXIT-->L28: 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_10 2))) (ite (and (not (= .cse0 0)) (< v_main_~A~0_10 0)) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_10} 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] {928#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:43,576 INFO L290 TraceCheckUtils]: 16: Hoare triple {928#(<= ~counter~0 0)} [79] L28-->L38-2: Formula: (and (= v_main_~u~0_5 (+ (* v_main_~R~0_5 2) 1)) (= v_main_~v~0_5 1) (= v_main_~r~0_6 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_7)))) 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_5, main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_5, main_~r~0=v_main_~r~0_6} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {928#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:43,577 INFO L290 TraceCheckUtils]: 17: Hoare triple {928#(<= ~counter~0 0)} [83] L38-2-->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] {977#(<= ~counter~0 1)} is VALID [2022-04-14 21:40:43,578 INFO L290 TraceCheckUtils]: 18: Hoare triple {977#(<= ~counter~0 1)} [87] 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] {977#(<= ~counter~0 1)} is VALID [2022-04-14 21:40:43,579 INFO L272 TraceCheckUtils]: 19: Hoare triple {977#(<= ~counter~0 1)} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~r~0_10 4) (* v_main_~A~0_11 4)) (+ (* v_main_~u~0_7 v_main_~u~0_7) (* (- 1) (* v_main_~v~0_7 v_main_~v~0_7)) (* (- 2) v_main_~u~0_7) (* v_main_~v~0_7 2))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_7, main_~A~0=v_main_~A~0_11, main_~u~0=v_main_~u~0_7, main_~r~0=v_main_~r~0_10} 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] {977#(<= ~counter~0 1)} is VALID [2022-04-14 21:40:43,579 INFO L290 TraceCheckUtils]: 20: Hoare triple {977#(<= ~counter~0 1)} [89] __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] {977#(<= ~counter~0 1)} is VALID [2022-04-14 21:40:43,579 INFO L290 TraceCheckUtils]: 21: Hoare triple {977#(<= ~counter~0 1)} [93] 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[] {977#(<= ~counter~0 1)} is VALID [2022-04-14 21:40:43,580 INFO L290 TraceCheckUtils]: 22: Hoare triple {977#(<= ~counter~0 1)} [98] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {977#(<= ~counter~0 1)} is VALID [2022-04-14 21:40:43,580 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {977#(<= ~counter~0 1)} {977#(<= ~counter~0 1)} [105] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~r~0_10 4) (* v_main_~A~0_11 4)) (+ (* v_main_~u~0_7 v_main_~u~0_7) (* (- 1) (* v_main_~v~0_7 v_main_~v~0_7)) (* (- 2) v_main_~u~0_7) (* v_main_~v~0_7 2))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_7, main_~A~0=v_main_~A~0_11, main_~u~0=v_main_~u~0_7, main_~r~0=v_main_~r~0_10} 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] {977#(<= ~counter~0 1)} is VALID [2022-04-14 21:40:43,581 INFO L290 TraceCheckUtils]: 24: Hoare triple {977#(<= ~counter~0 1)} [95] L35-1-->L38: Formula: (not (= v_main_~r~0_9 0)) InVars {main_~r~0=v_main_~r~0_9} OutVars{main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[] {977#(<= ~counter~0 1)} is VALID [2022-04-14 21:40:43,581 INFO L290 TraceCheckUtils]: 25: Hoare triple {977#(<= ~counter~0 1)} [99] L38-->L38-2: Formula: (and (< 0 v_main_~r~0_2) (= (+ v_main_~r~0_2 (* (- 1) v_main_~v~0_2)) v_main_~r~0_1) (= (+ v_main_~v~0_2 2) v_main_~v~0_1)) InVars {main_~v~0=v_main_~v~0_2, main_~r~0=v_main_~r~0_2} OutVars{main_~v~0=v_main_~v~0_1, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_~v~0, main_~r~0] {977#(<= ~counter~0 1)} is VALID [2022-04-14 21:40:43,582 INFO L290 TraceCheckUtils]: 26: Hoare triple {977#(<= ~counter~0 1)} [83] L38-2-->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] {1005#(<= |main_#t~post6| 1)} is VALID [2022-04-14 21:40:43,582 INFO L290 TraceCheckUtils]: 27: Hoare triple {1005#(<= |main_#t~post6| 1)} [86] 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] {921#false} is VALID [2022-04-14 21:40:43,582 INFO L272 TraceCheckUtils]: 28: Hoare triple {921#false} [85] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_8) (* v_main_~v~0_8 2) (* v_main_~u~0_8 v_main_~u~0_8) (* (- 1) (* v_main_~v~0_8 v_main_~v~0_8))) (* v_main_~A~0_12 4)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~v~0=v_main_~v~0_8, main_~A~0=v_main_~A~0_12, main_~u~0=v_main_~u~0_8} 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] {921#false} is VALID [2022-04-14 21:40:43,582 INFO L290 TraceCheckUtils]: 29: Hoare triple {921#false} [89] __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] {921#false} is VALID [2022-04-14 21:40:43,582 INFO L290 TraceCheckUtils]: 30: Hoare triple {921#false} [92] 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[] {921#false} is VALID [2022-04-14 21:40:43,583 INFO L290 TraceCheckUtils]: 31: Hoare triple {921#false} [96] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {921#false} is VALID [2022-04-14 21:40:43,583 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-14 21:40:43,583 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 21:40:43,748 INFO L290 TraceCheckUtils]: 31: Hoare triple {921#false} [96] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {921#false} is VALID [2022-04-14 21:40:43,748 INFO L290 TraceCheckUtils]: 30: Hoare triple {921#false} [92] 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[] {921#false} is VALID [2022-04-14 21:40:43,748 INFO L290 TraceCheckUtils]: 29: Hoare triple {921#false} [89] __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] {921#false} is VALID [2022-04-14 21:40:43,749 INFO L272 TraceCheckUtils]: 28: Hoare triple {921#false} [85] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_8) (* v_main_~v~0_8 2) (* v_main_~u~0_8 v_main_~u~0_8) (* (- 1) (* v_main_~v~0_8 v_main_~v~0_8))) (* v_main_~A~0_12 4)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~v~0=v_main_~v~0_8, main_~A~0=v_main_~A~0_12, main_~u~0=v_main_~u~0_8} 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] {921#false} is VALID [2022-04-14 21:40:43,749 INFO L290 TraceCheckUtils]: 27: Hoare triple {1033#(< |main_#t~post6| 5)} [86] 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] {921#false} is VALID [2022-04-14 21:40:43,749 INFO L290 TraceCheckUtils]: 26: Hoare triple {1037#(< ~counter~0 5)} [83] L38-2-->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] {1033#(< |main_#t~post6| 5)} is VALID [2022-04-14 21:40:43,750 INFO L290 TraceCheckUtils]: 25: Hoare triple {1037#(< ~counter~0 5)} [99] L38-->L38-2: Formula: (and (< 0 v_main_~r~0_2) (= (+ v_main_~r~0_2 (* (- 1) v_main_~v~0_2)) v_main_~r~0_1) (= (+ v_main_~v~0_2 2) v_main_~v~0_1)) InVars {main_~v~0=v_main_~v~0_2, main_~r~0=v_main_~r~0_2} OutVars{main_~v~0=v_main_~v~0_1, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_~v~0, main_~r~0] {1037#(< ~counter~0 5)} is VALID [2022-04-14 21:40:43,750 INFO L290 TraceCheckUtils]: 24: Hoare triple {1037#(< ~counter~0 5)} [95] L35-1-->L38: Formula: (not (= v_main_~r~0_9 0)) InVars {main_~r~0=v_main_~r~0_9} OutVars{main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[] {1037#(< ~counter~0 5)} is VALID [2022-04-14 21:40:43,750 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {920#true} {1037#(< ~counter~0 5)} [105] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~r~0_10 4) (* v_main_~A~0_11 4)) (+ (* v_main_~u~0_7 v_main_~u~0_7) (* (- 1) (* v_main_~v~0_7 v_main_~v~0_7)) (* (- 2) v_main_~u~0_7) (* v_main_~v~0_7 2))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_7, main_~A~0=v_main_~A~0_11, main_~u~0=v_main_~u~0_7, main_~r~0=v_main_~r~0_10} 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] {1037#(< ~counter~0 5)} is VALID [2022-04-14 21:40:43,751 INFO L290 TraceCheckUtils]: 22: Hoare triple {920#true} [98] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {920#true} is VALID [2022-04-14 21:40:43,751 INFO L290 TraceCheckUtils]: 21: Hoare triple {920#true} [93] 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[] {920#true} is VALID [2022-04-14 21:40:43,751 INFO L290 TraceCheckUtils]: 20: Hoare triple {920#true} [89] __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] {920#true} is VALID [2022-04-14 21:40:43,751 INFO L272 TraceCheckUtils]: 19: Hoare triple {1037#(< ~counter~0 5)} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~r~0_10 4) (* v_main_~A~0_11 4)) (+ (* v_main_~u~0_7 v_main_~u~0_7) (* (- 1) (* v_main_~v~0_7 v_main_~v~0_7)) (* (- 2) v_main_~u~0_7) (* v_main_~v~0_7 2))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_7, main_~A~0=v_main_~A~0_11, main_~u~0=v_main_~u~0_7, main_~r~0=v_main_~r~0_10} 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] {920#true} is VALID [2022-04-14 21:40:43,752 INFO L290 TraceCheckUtils]: 18: Hoare triple {1037#(< ~counter~0 5)} [87] 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] {1037#(< ~counter~0 5)} is VALID [2022-04-14 21:40:43,753 INFO L290 TraceCheckUtils]: 17: Hoare triple {1065#(< ~counter~0 4)} [83] L38-2-->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] {1037#(< ~counter~0 5)} is VALID [2022-04-14 21:40:43,753 INFO L290 TraceCheckUtils]: 16: Hoare triple {1065#(< ~counter~0 4)} [79] L28-->L38-2: Formula: (and (= v_main_~u~0_5 (+ (* v_main_~R~0_5 2) 1)) (= v_main_~v~0_5 1) (= v_main_~r~0_6 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_7)))) 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_5, main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_5, main_~r~0=v_main_~r~0_6} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {1065#(< ~counter~0 4)} is VALID [2022-04-14 21:40:43,758 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {920#true} {1065#(< ~counter~0 4)} [103] assume_abort_if_notEXIT-->L28: 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_10 2))) (ite (and (not (= .cse0 0)) (< v_main_~A~0_10 0)) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_10} 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] {1065#(< ~counter~0 4)} is VALID [2022-04-14 21:40:43,758 INFO L290 TraceCheckUtils]: 14: Hoare triple {920#true} [84] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {920#true} is VALID [2022-04-14 21:40:43,759 INFO L290 TraceCheckUtils]: 13: Hoare triple {920#true} [81] 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[] {920#true} is VALID [2022-04-14 21:40:43,759 INFO L290 TraceCheckUtils]: 12: Hoare triple {920#true} [78] 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] {920#true} is VALID [2022-04-14 21:40:43,759 INFO L272 TraceCheckUtils]: 11: Hoare triple {1065#(< ~counter~0 4)} [77] L26-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_10 2))) (ite (and (not (= .cse0 0)) (< v_main_~A~0_10 0)) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_10} 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] {920#true} is VALID [2022-04-14 21:40:43,759 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {920#true} {1065#(< ~counter~0 4)} [102] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_9)) 1 0)) InVars {main_~A~0=v_main_~A~0_9, 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] {1065#(< ~counter~0 4)} is VALID [2022-04-14 21:40:43,760 INFO L290 TraceCheckUtils]: 9: Hoare triple {920#true} [84] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {920#true} is VALID [2022-04-14 21:40:43,760 INFO L290 TraceCheckUtils]: 8: Hoare triple {920#true} [81] 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[] {920#true} is VALID [2022-04-14 21:40:43,760 INFO L290 TraceCheckUtils]: 7: Hoare triple {920#true} [78] 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] {920#true} is VALID [2022-04-14 21:40:43,760 INFO L272 TraceCheckUtils]: 6: Hoare triple {1065#(< ~counter~0 4)} [76] L26-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_9)) 1 0)) InVars {main_~A~0=v_main_~A~0_9, 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] {920#true} is VALID [2022-04-14 21:40:43,760 INFO L290 TraceCheckUtils]: 5: Hoare triple {1065#(< ~counter~0 4)} [74] mainENTRY-->L26: 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_4, main_~A~0=v_main_~A~0_2, main_~R~0=v_main_~R~0_1, main_~u~0=v_main_~u~0_4, main_~r~0=v_main_~r~0_5} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~A~0, main_~R~0, main_~u~0, main_~r~0] {1065#(< ~counter~0 4)} is VALID [2022-04-14 21:40:43,760 INFO L272 TraceCheckUtils]: 4: Hoare triple {1065#(< ~counter~0 4)} [71] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1065#(< ~counter~0 4)} is VALID [2022-04-14 21:40:43,761 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1065#(< ~counter~0 4)} {920#true} [101] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1065#(< ~counter~0 4)} is VALID [2022-04-14 21:40:43,761 INFO L290 TraceCheckUtils]: 2: Hoare triple {1065#(< ~counter~0 4)} [75] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1065#(< ~counter~0 4)} is VALID [2022-04-14 21:40:43,762 INFO L290 TraceCheckUtils]: 1: Hoare triple {920#true} [72] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 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) (= (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_3, #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] {1065#(< ~counter~0 4)} is VALID [2022-04-14 21:40:43,762 INFO L272 TraceCheckUtils]: 0: Hoare triple {920#true} [70] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {920#true} is VALID [2022-04-14 21:40:43,762 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-14 21:40:43,762 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 21:40:43,762 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [202604718] [2022-04-14 21:40:43,762 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 21:40:43,762 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1249650597] [2022-04-14 21:40:43,762 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1249650597] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 21:40:43,762 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 21:40:43,762 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-14 21:40:43,762 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1883533290] [2022-04-14 21:40:43,762 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 21:40:43,763 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) Word has length 32 [2022-04-14 21:40:43,763 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 21:40:43,763 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-14 21:40:43,801 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 21:40:43,801 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-14 21:40:43,802 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 21:40:43,802 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-14 21:40:43,802 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-14 21:40:43,802 INFO L87 Difference]: Start difference. First operand 29 states and 31 transitions. Second operand has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-14 21:40:43,950 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:40:43,950 INFO L93 Difference]: Finished difference Result 56 states and 61 transitions. [2022-04-14 21:40:43,950 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-14 21:40:43,950 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) Word has length 32 [2022-04-14 21:40:43,951 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 21:40:43,951 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-14 21:40:43,952 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 63 transitions. [2022-04-14 21:40:43,953 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-14 21:40:43,954 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 63 transitions. [2022-04-14 21:40:43,954 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 63 transitions. [2022-04-14 21:40:43,998 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 21:40:43,999 INFO L225 Difference]: With dead ends: 56 [2022-04-14 21:40:43,999 INFO L226 Difference]: Without dead ends: 56 [2022-04-14 21:40:43,999 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 66 GetRequests, 57 SyntacticMatches, 0 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=40, Invalid=70, Unknown=0, NotChecked=0, Total=110 [2022-04-14 21:40:44,003 INFO L913 BasicCegarLoop]: 29 mSDtfsCounter, 39 mSDsluCounter, 65 mSDsCounter, 0 mSdLazyCounter, 23 mSolverCounterSat, 22 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 39 SdHoareTripleChecker+Valid, 94 SdHoareTripleChecker+Invalid, 45 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 22 IncrementalHoareTripleChecker+Valid, 23 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-14 21:40:44,003 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [39 Valid, 94 Invalid, 45 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [22 Valid, 23 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-14 21:40:44,005 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 56 states. [2022-04-14 21:40:44,013 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 56 to 56. [2022-04-14 21:40:44,013 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 21:40:44,013 INFO L82 GeneralOperation]: Start isEquivalent. First operand 56 states. Second operand has 56 states, 40 states have (on average 1.125) internal successors, (45), 40 states have internal predecessors, (45), 9 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-14 21:40:44,014 INFO L74 IsIncluded]: Start isIncluded. First operand 56 states. Second operand has 56 states, 40 states have (on average 1.125) internal successors, (45), 40 states have internal predecessors, (45), 9 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-14 21:40:44,014 INFO L87 Difference]: Start difference. First operand 56 states. Second operand has 56 states, 40 states have (on average 1.125) internal successors, (45), 40 states have internal predecessors, (45), 9 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-14 21:40:44,027 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:40:44,027 INFO L93 Difference]: Finished difference Result 56 states and 61 transitions. [2022-04-14 21:40:44,027 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 61 transitions. [2022-04-14 21:40:44,027 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 21:40:44,027 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 21:40:44,028 INFO L74 IsIncluded]: Start isIncluded. First operand has 56 states, 40 states have (on average 1.125) internal successors, (45), 40 states have internal predecessors, (45), 9 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 56 states. [2022-04-14 21:40:44,028 INFO L87 Difference]: Start difference. First operand has 56 states, 40 states have (on average 1.125) internal successors, (45), 40 states have internal predecessors, (45), 9 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 56 states. [2022-04-14 21:40:44,029 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:40:44,029 INFO L93 Difference]: Finished difference Result 56 states and 61 transitions. [2022-04-14 21:40:44,029 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 61 transitions. [2022-04-14 21:40:44,030 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 21:40:44,030 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 21:40:44,030 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 21:40:44,030 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 21:40:44,030 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 56 states, 40 states have (on average 1.125) internal successors, (45), 40 states have internal predecessors, (45), 9 states have call successors, (9), 8 states have call predecessors, (9), 6 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-14 21:40:44,031 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 61 transitions. [2022-04-14 21:40:44,031 INFO L78 Accepts]: Start accepts. Automaton has 56 states and 61 transitions. Word has length 32 [2022-04-14 21:40:44,031 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 21:40:44,032 INFO L478 AbstractCegarLoop]: Abstraction has 56 states and 61 transitions. [2022-04-14 21:40:44,032 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.375) internal successors, (35), 8 states have internal predecessors, (35), 6 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 4 states have call predecessors, (8), 5 states have call successors, (8) [2022-04-14 21:40:44,032 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 61 transitions. [2022-04-14 21:40:44,033 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 60 [2022-04-14 21:40:44,033 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 21:40:44,033 INFO L499 BasicCegarLoop]: trace histogram [5, 5, 4, 4, 4, 4, 4, 4, 4, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 21:40:44,052 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-14 21:40:44,251 WARN L460 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-14 21:40:44,251 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 21:40:44,252 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 21:40:44,252 INFO L85 PathProgramCache]: Analyzing trace with hash -906969448, now seen corresponding path program 2 times [2022-04-14 21:40:44,252 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 21:40:44,252 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1985738757] [2022-04-14 21:40:44,252 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 21:40:44,252 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 21:40:44,264 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 21:40:44,264 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [654454352] [2022-04-14 21:40:44,264 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-14 21:40:44,265 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 21:40:44,265 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 21:40:44,265 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-14 21:40:44,266 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-14 21:40:44,309 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-14 21:40:44,309 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-14 21:40:44,309 INFO L263 TraceCheckSpWp]: Trace formula consists of 173 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-14 21:40:44,324 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:40:44,326 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 21:40:44,558 INFO L272 TraceCheckUtils]: 0: Hoare triple {1349#true} [70] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1349#true} is VALID [2022-04-14 21:40:44,559 INFO L290 TraceCheckUtils]: 1: Hoare triple {1349#true} [72] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 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) (= (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_3, #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] {1357#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:44,559 INFO L290 TraceCheckUtils]: 2: Hoare triple {1357#(<= ~counter~0 0)} [75] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1357#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:44,560 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1357#(<= ~counter~0 0)} {1349#true} [101] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1357#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:44,560 INFO L272 TraceCheckUtils]: 4: Hoare triple {1357#(<= ~counter~0 0)} [71] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1357#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:44,560 INFO L290 TraceCheckUtils]: 5: Hoare triple {1357#(<= ~counter~0 0)} [74] mainENTRY-->L26: 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_4, main_~A~0=v_main_~A~0_2, main_~R~0=v_main_~R~0_1, main_~u~0=v_main_~u~0_4, main_~r~0=v_main_~r~0_5} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~A~0, main_~R~0, main_~u~0, main_~r~0] {1357#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:44,561 INFO L272 TraceCheckUtils]: 6: Hoare triple {1357#(<= ~counter~0 0)} [76] L26-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_9)) 1 0)) InVars {main_~A~0=v_main_~A~0_9, 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] {1357#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:44,561 INFO L290 TraceCheckUtils]: 7: Hoare triple {1357#(<= ~counter~0 0)} [78] 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] {1357#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:44,564 INFO L290 TraceCheckUtils]: 8: Hoare triple {1357#(<= ~counter~0 0)} [81] 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[] {1357#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:44,565 INFO L290 TraceCheckUtils]: 9: Hoare triple {1357#(<= ~counter~0 0)} [84] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1357#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:44,565 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1357#(<= ~counter~0 0)} {1357#(<= ~counter~0 0)} [102] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_9)) 1 0)) InVars {main_~A~0=v_main_~A~0_9, 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] {1357#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:44,566 INFO L272 TraceCheckUtils]: 11: Hoare triple {1357#(<= ~counter~0 0)} [77] L26-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_10 2))) (ite (and (not (= .cse0 0)) (< v_main_~A~0_10 0)) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_10} 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] {1357#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:44,566 INFO L290 TraceCheckUtils]: 12: Hoare triple {1357#(<= ~counter~0 0)} [78] 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] {1357#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:44,566 INFO L290 TraceCheckUtils]: 13: Hoare triple {1357#(<= ~counter~0 0)} [81] 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[] {1357#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:44,567 INFO L290 TraceCheckUtils]: 14: Hoare triple {1357#(<= ~counter~0 0)} [84] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1357#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:44,567 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1357#(<= ~counter~0 0)} {1357#(<= ~counter~0 0)} [103] assume_abort_if_notEXIT-->L28: 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_10 2))) (ite (and (not (= .cse0 0)) (< v_main_~A~0_10 0)) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_10} 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] {1357#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:44,567 INFO L290 TraceCheckUtils]: 16: Hoare triple {1357#(<= ~counter~0 0)} [79] L28-->L38-2: Formula: (and (= v_main_~u~0_5 (+ (* v_main_~R~0_5 2) 1)) (= v_main_~v~0_5 1) (= v_main_~r~0_6 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_7)))) 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_5, main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_5, main_~r~0=v_main_~r~0_6} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {1357#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:44,568 INFO L290 TraceCheckUtils]: 17: Hoare triple {1357#(<= ~counter~0 0)} [83] L38-2-->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] {1406#(<= ~counter~0 1)} is VALID [2022-04-14 21:40:44,568 INFO L290 TraceCheckUtils]: 18: Hoare triple {1406#(<= ~counter~0 1)} [87] 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] {1406#(<= ~counter~0 1)} is VALID [2022-04-14 21:40:44,569 INFO L272 TraceCheckUtils]: 19: Hoare triple {1406#(<= ~counter~0 1)} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~r~0_10 4) (* v_main_~A~0_11 4)) (+ (* v_main_~u~0_7 v_main_~u~0_7) (* (- 1) (* v_main_~v~0_7 v_main_~v~0_7)) (* (- 2) v_main_~u~0_7) (* v_main_~v~0_7 2))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_7, main_~A~0=v_main_~A~0_11, main_~u~0=v_main_~u~0_7, main_~r~0=v_main_~r~0_10} 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] {1406#(<= ~counter~0 1)} is VALID [2022-04-14 21:40:44,569 INFO L290 TraceCheckUtils]: 20: Hoare triple {1406#(<= ~counter~0 1)} [89] __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] {1406#(<= ~counter~0 1)} is VALID [2022-04-14 21:40:44,569 INFO L290 TraceCheckUtils]: 21: Hoare triple {1406#(<= ~counter~0 1)} [93] 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[] {1406#(<= ~counter~0 1)} is VALID [2022-04-14 21:40:44,570 INFO L290 TraceCheckUtils]: 22: Hoare triple {1406#(<= ~counter~0 1)} [98] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1406#(<= ~counter~0 1)} is VALID [2022-04-14 21:40:44,570 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1406#(<= ~counter~0 1)} {1406#(<= ~counter~0 1)} [105] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~r~0_10 4) (* v_main_~A~0_11 4)) (+ (* v_main_~u~0_7 v_main_~u~0_7) (* (- 1) (* v_main_~v~0_7 v_main_~v~0_7)) (* (- 2) v_main_~u~0_7) (* v_main_~v~0_7 2))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_7, main_~A~0=v_main_~A~0_11, main_~u~0=v_main_~u~0_7, main_~r~0=v_main_~r~0_10} 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] {1406#(<= ~counter~0 1)} is VALID [2022-04-14 21:40:44,570 INFO L290 TraceCheckUtils]: 24: Hoare triple {1406#(<= ~counter~0 1)} [95] L35-1-->L38: Formula: (not (= v_main_~r~0_9 0)) InVars {main_~r~0=v_main_~r~0_9} OutVars{main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[] {1406#(<= ~counter~0 1)} is VALID [2022-04-14 21:40:44,571 INFO L290 TraceCheckUtils]: 25: Hoare triple {1406#(<= ~counter~0 1)} [99] L38-->L38-2: Formula: (and (< 0 v_main_~r~0_2) (= (+ v_main_~r~0_2 (* (- 1) v_main_~v~0_2)) v_main_~r~0_1) (= (+ v_main_~v~0_2 2) v_main_~v~0_1)) InVars {main_~v~0=v_main_~v~0_2, main_~r~0=v_main_~r~0_2} OutVars{main_~v~0=v_main_~v~0_1, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_~v~0, main_~r~0] {1406#(<= ~counter~0 1)} is VALID [2022-04-14 21:40:44,571 INFO L290 TraceCheckUtils]: 26: Hoare triple {1406#(<= ~counter~0 1)} [83] L38-2-->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] {1434#(<= ~counter~0 2)} is VALID [2022-04-14 21:40:44,571 INFO L290 TraceCheckUtils]: 27: Hoare triple {1434#(<= ~counter~0 2)} [87] 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] {1434#(<= ~counter~0 2)} is VALID [2022-04-14 21:40:44,572 INFO L272 TraceCheckUtils]: 28: Hoare triple {1434#(<= ~counter~0 2)} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~r~0_10 4) (* v_main_~A~0_11 4)) (+ (* v_main_~u~0_7 v_main_~u~0_7) (* (- 1) (* v_main_~v~0_7 v_main_~v~0_7)) (* (- 2) v_main_~u~0_7) (* v_main_~v~0_7 2))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_7, main_~A~0=v_main_~A~0_11, main_~u~0=v_main_~u~0_7, main_~r~0=v_main_~r~0_10} 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] {1434#(<= ~counter~0 2)} is VALID [2022-04-14 21:40:44,572 INFO L290 TraceCheckUtils]: 29: Hoare triple {1434#(<= ~counter~0 2)} [89] __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] {1434#(<= ~counter~0 2)} is VALID [2022-04-14 21:40:44,572 INFO L290 TraceCheckUtils]: 30: Hoare triple {1434#(<= ~counter~0 2)} [93] 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[] {1434#(<= ~counter~0 2)} is VALID [2022-04-14 21:40:44,573 INFO L290 TraceCheckUtils]: 31: Hoare triple {1434#(<= ~counter~0 2)} [98] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1434#(<= ~counter~0 2)} is VALID [2022-04-14 21:40:44,573 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1434#(<= ~counter~0 2)} {1434#(<= ~counter~0 2)} [105] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~r~0_10 4) (* v_main_~A~0_11 4)) (+ (* v_main_~u~0_7 v_main_~u~0_7) (* (- 1) (* v_main_~v~0_7 v_main_~v~0_7)) (* (- 2) v_main_~u~0_7) (* v_main_~v~0_7 2))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_7, main_~A~0=v_main_~A~0_11, main_~u~0=v_main_~u~0_7, main_~r~0=v_main_~r~0_10} 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] {1434#(<= ~counter~0 2)} is VALID [2022-04-14 21:40:44,574 INFO L290 TraceCheckUtils]: 33: Hoare triple {1434#(<= ~counter~0 2)} [95] L35-1-->L38: Formula: (not (= v_main_~r~0_9 0)) InVars {main_~r~0=v_main_~r~0_9} OutVars{main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[] {1434#(<= ~counter~0 2)} is VALID [2022-04-14 21:40:44,574 INFO L290 TraceCheckUtils]: 34: Hoare triple {1434#(<= ~counter~0 2)} [99] L38-->L38-2: Formula: (and (< 0 v_main_~r~0_2) (= (+ v_main_~r~0_2 (* (- 1) v_main_~v~0_2)) v_main_~r~0_1) (= (+ v_main_~v~0_2 2) v_main_~v~0_1)) InVars {main_~v~0=v_main_~v~0_2, main_~r~0=v_main_~r~0_2} OutVars{main_~v~0=v_main_~v~0_1, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_~v~0, main_~r~0] {1434#(<= ~counter~0 2)} is VALID [2022-04-14 21:40:44,574 INFO L290 TraceCheckUtils]: 35: Hoare triple {1434#(<= ~counter~0 2)} [83] L38-2-->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] {1462#(<= ~counter~0 3)} is VALID [2022-04-14 21:40:44,576 INFO L290 TraceCheckUtils]: 36: Hoare triple {1462#(<= ~counter~0 3)} [87] 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] {1462#(<= ~counter~0 3)} is VALID [2022-04-14 21:40:44,577 INFO L272 TraceCheckUtils]: 37: Hoare triple {1462#(<= ~counter~0 3)} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~r~0_10 4) (* v_main_~A~0_11 4)) (+ (* v_main_~u~0_7 v_main_~u~0_7) (* (- 1) (* v_main_~v~0_7 v_main_~v~0_7)) (* (- 2) v_main_~u~0_7) (* v_main_~v~0_7 2))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_7, main_~A~0=v_main_~A~0_11, main_~u~0=v_main_~u~0_7, main_~r~0=v_main_~r~0_10} 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] {1462#(<= ~counter~0 3)} is VALID [2022-04-14 21:40:44,577 INFO L290 TraceCheckUtils]: 38: Hoare triple {1462#(<= ~counter~0 3)} [89] __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] {1462#(<= ~counter~0 3)} is VALID [2022-04-14 21:40:44,577 INFO L290 TraceCheckUtils]: 39: Hoare triple {1462#(<= ~counter~0 3)} [93] 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[] {1462#(<= ~counter~0 3)} is VALID [2022-04-14 21:40:44,578 INFO L290 TraceCheckUtils]: 40: Hoare triple {1462#(<= ~counter~0 3)} [98] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1462#(<= ~counter~0 3)} is VALID [2022-04-14 21:40:44,579 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {1462#(<= ~counter~0 3)} {1462#(<= ~counter~0 3)} [105] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~r~0_10 4) (* v_main_~A~0_11 4)) (+ (* v_main_~u~0_7 v_main_~u~0_7) (* (- 1) (* v_main_~v~0_7 v_main_~v~0_7)) (* (- 2) v_main_~u~0_7) (* v_main_~v~0_7 2))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_7, main_~A~0=v_main_~A~0_11, main_~u~0=v_main_~u~0_7, main_~r~0=v_main_~r~0_10} 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] {1462#(<= ~counter~0 3)} is VALID [2022-04-14 21:40:44,579 INFO L290 TraceCheckUtils]: 42: Hoare triple {1462#(<= ~counter~0 3)} [95] L35-1-->L38: Formula: (not (= v_main_~r~0_9 0)) InVars {main_~r~0=v_main_~r~0_9} OutVars{main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[] {1462#(<= ~counter~0 3)} is VALID [2022-04-14 21:40:44,579 INFO L290 TraceCheckUtils]: 43: Hoare triple {1462#(<= ~counter~0 3)} [99] L38-->L38-2: Formula: (and (< 0 v_main_~r~0_2) (= (+ v_main_~r~0_2 (* (- 1) v_main_~v~0_2)) v_main_~r~0_1) (= (+ v_main_~v~0_2 2) v_main_~v~0_1)) InVars {main_~v~0=v_main_~v~0_2, main_~r~0=v_main_~r~0_2} OutVars{main_~v~0=v_main_~v~0_1, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_~v~0, main_~r~0] {1462#(<= ~counter~0 3)} is VALID [2022-04-14 21:40:44,580 INFO L290 TraceCheckUtils]: 44: Hoare triple {1462#(<= ~counter~0 3)} [83] L38-2-->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] {1490#(<= ~counter~0 4)} is VALID [2022-04-14 21:40:44,580 INFO L290 TraceCheckUtils]: 45: Hoare triple {1490#(<= ~counter~0 4)} [87] 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] {1490#(<= ~counter~0 4)} is VALID [2022-04-14 21:40:44,580 INFO L272 TraceCheckUtils]: 46: Hoare triple {1490#(<= ~counter~0 4)} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~r~0_10 4) (* v_main_~A~0_11 4)) (+ (* v_main_~u~0_7 v_main_~u~0_7) (* (- 1) (* v_main_~v~0_7 v_main_~v~0_7)) (* (- 2) v_main_~u~0_7) (* v_main_~v~0_7 2))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_7, main_~A~0=v_main_~A~0_11, main_~u~0=v_main_~u~0_7, main_~r~0=v_main_~r~0_10} 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] {1490#(<= ~counter~0 4)} is VALID [2022-04-14 21:40:44,581 INFO L290 TraceCheckUtils]: 47: Hoare triple {1490#(<= ~counter~0 4)} [89] __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] {1490#(<= ~counter~0 4)} is VALID [2022-04-14 21:40:44,581 INFO L290 TraceCheckUtils]: 48: Hoare triple {1490#(<= ~counter~0 4)} [93] 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[] {1490#(<= ~counter~0 4)} is VALID [2022-04-14 21:40:44,581 INFO L290 TraceCheckUtils]: 49: Hoare triple {1490#(<= ~counter~0 4)} [98] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1490#(<= ~counter~0 4)} is VALID [2022-04-14 21:40:44,582 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {1490#(<= ~counter~0 4)} {1490#(<= ~counter~0 4)} [105] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~r~0_10 4) (* v_main_~A~0_11 4)) (+ (* v_main_~u~0_7 v_main_~u~0_7) (* (- 1) (* v_main_~v~0_7 v_main_~v~0_7)) (* (- 2) v_main_~u~0_7) (* v_main_~v~0_7 2))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_7, main_~A~0=v_main_~A~0_11, main_~u~0=v_main_~u~0_7, main_~r~0=v_main_~r~0_10} 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] {1490#(<= ~counter~0 4)} is VALID [2022-04-14 21:40:44,582 INFO L290 TraceCheckUtils]: 51: Hoare triple {1490#(<= ~counter~0 4)} [95] L35-1-->L38: Formula: (not (= v_main_~r~0_9 0)) InVars {main_~r~0=v_main_~r~0_9} OutVars{main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[] {1490#(<= ~counter~0 4)} is VALID [2022-04-14 21:40:44,582 INFO L290 TraceCheckUtils]: 52: Hoare triple {1490#(<= ~counter~0 4)} [99] L38-->L38-2: Formula: (and (< 0 v_main_~r~0_2) (= (+ v_main_~r~0_2 (* (- 1) v_main_~v~0_2)) v_main_~r~0_1) (= (+ v_main_~v~0_2 2) v_main_~v~0_1)) InVars {main_~v~0=v_main_~v~0_2, main_~r~0=v_main_~r~0_2} OutVars{main_~v~0=v_main_~v~0_1, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_~v~0, main_~r~0] {1490#(<= ~counter~0 4)} is VALID [2022-04-14 21:40:44,583 INFO L290 TraceCheckUtils]: 53: Hoare triple {1490#(<= ~counter~0 4)} [83] L38-2-->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] {1518#(<= |main_#t~post6| 4)} is VALID [2022-04-14 21:40:44,583 INFO L290 TraceCheckUtils]: 54: Hoare triple {1518#(<= |main_#t~post6| 4)} [86] 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] {1350#false} is VALID [2022-04-14 21:40:44,583 INFO L272 TraceCheckUtils]: 55: Hoare triple {1350#false} [85] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_8) (* v_main_~v~0_8 2) (* v_main_~u~0_8 v_main_~u~0_8) (* (- 1) (* v_main_~v~0_8 v_main_~v~0_8))) (* v_main_~A~0_12 4)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~v~0=v_main_~v~0_8, main_~A~0=v_main_~A~0_12, main_~u~0=v_main_~u~0_8} 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] {1350#false} is VALID [2022-04-14 21:40:44,583 INFO L290 TraceCheckUtils]: 56: Hoare triple {1350#false} [89] __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] {1350#false} is VALID [2022-04-14 21:40:44,583 INFO L290 TraceCheckUtils]: 57: Hoare triple {1350#false} [92] 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[] {1350#false} is VALID [2022-04-14 21:40:44,584 INFO L290 TraceCheckUtils]: 58: Hoare triple {1350#false} [96] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1350#false} is VALID [2022-04-14 21:40:44,584 INFO L134 CoverageAnalysis]: Checked inductivity of 74 backedges. 8 proven. 62 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-14 21:40:44,584 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 21:40:44,837 INFO L290 TraceCheckUtils]: 58: Hoare triple {1350#false} [96] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1350#false} is VALID [2022-04-14 21:40:44,837 INFO L290 TraceCheckUtils]: 57: Hoare triple {1350#false} [92] 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[] {1350#false} is VALID [2022-04-14 21:40:44,837 INFO L290 TraceCheckUtils]: 56: Hoare triple {1350#false} [89] __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] {1350#false} is VALID [2022-04-14 21:40:44,837 INFO L272 TraceCheckUtils]: 55: Hoare triple {1350#false} [85] L34-3-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* (- 2) v_main_~u~0_8) (* v_main_~v~0_8 2) (* v_main_~u~0_8 v_main_~u~0_8) (* (- 1) (* v_main_~v~0_8 v_main_~v~0_8))) (* v_main_~A~0_12 4)) 1 0) |v___VERIFIER_assert_#in~condInParam_2|) InVars {main_~v~0=v_main_~v~0_8, main_~A~0=v_main_~A~0_12, main_~u~0=v_main_~u~0_8} 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] {1350#false} is VALID [2022-04-14 21:40:44,838 INFO L290 TraceCheckUtils]: 54: Hoare triple {1518#(<= |main_#t~post6| 4)} [86] 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] {1350#false} is VALID [2022-04-14 21:40:44,838 INFO L290 TraceCheckUtils]: 53: Hoare triple {1490#(<= ~counter~0 4)} [83] L38-2-->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] {1518#(<= |main_#t~post6| 4)} is VALID [2022-04-14 21:40:44,841 INFO L290 TraceCheckUtils]: 52: Hoare triple {1490#(<= ~counter~0 4)} [99] L38-->L38-2: Formula: (and (< 0 v_main_~r~0_2) (= (+ v_main_~r~0_2 (* (- 1) v_main_~v~0_2)) v_main_~r~0_1) (= (+ v_main_~v~0_2 2) v_main_~v~0_1)) InVars {main_~v~0=v_main_~v~0_2, main_~r~0=v_main_~r~0_2} OutVars{main_~v~0=v_main_~v~0_1, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_~v~0, main_~r~0] {1490#(<= ~counter~0 4)} is VALID [2022-04-14 21:40:44,841 INFO L290 TraceCheckUtils]: 51: Hoare triple {1490#(<= ~counter~0 4)} [95] L35-1-->L38: Formula: (not (= v_main_~r~0_9 0)) InVars {main_~r~0=v_main_~r~0_9} OutVars{main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[] {1490#(<= ~counter~0 4)} is VALID [2022-04-14 21:40:44,842 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {1349#true} {1490#(<= ~counter~0 4)} [105] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~r~0_10 4) (* v_main_~A~0_11 4)) (+ (* v_main_~u~0_7 v_main_~u~0_7) (* (- 1) (* v_main_~v~0_7 v_main_~v~0_7)) (* (- 2) v_main_~u~0_7) (* v_main_~v~0_7 2))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_7, main_~A~0=v_main_~A~0_11, main_~u~0=v_main_~u~0_7, main_~r~0=v_main_~r~0_10} 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] {1490#(<= ~counter~0 4)} is VALID [2022-04-14 21:40:44,842 INFO L290 TraceCheckUtils]: 49: Hoare triple {1349#true} [98] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1349#true} is VALID [2022-04-14 21:40:44,842 INFO L290 TraceCheckUtils]: 48: Hoare triple {1349#true} [93] 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[] {1349#true} is VALID [2022-04-14 21:40:44,842 INFO L290 TraceCheckUtils]: 47: Hoare triple {1349#true} [89] __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] {1349#true} is VALID [2022-04-14 21:40:44,842 INFO L272 TraceCheckUtils]: 46: Hoare triple {1490#(<= ~counter~0 4)} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~r~0_10 4) (* v_main_~A~0_11 4)) (+ (* v_main_~u~0_7 v_main_~u~0_7) (* (- 1) (* v_main_~v~0_7 v_main_~v~0_7)) (* (- 2) v_main_~u~0_7) (* v_main_~v~0_7 2))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_7, main_~A~0=v_main_~A~0_11, main_~u~0=v_main_~u~0_7, main_~r~0=v_main_~r~0_10} 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] {1349#true} is VALID [2022-04-14 21:40:44,843 INFO L290 TraceCheckUtils]: 45: Hoare triple {1490#(<= ~counter~0 4)} [87] 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] {1490#(<= ~counter~0 4)} is VALID [2022-04-14 21:40:44,843 INFO L290 TraceCheckUtils]: 44: Hoare triple {1462#(<= ~counter~0 3)} [83] L38-2-->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] {1490#(<= ~counter~0 4)} is VALID [2022-04-14 21:40:44,843 INFO L290 TraceCheckUtils]: 43: Hoare triple {1462#(<= ~counter~0 3)} [99] L38-->L38-2: Formula: (and (< 0 v_main_~r~0_2) (= (+ v_main_~r~0_2 (* (- 1) v_main_~v~0_2)) v_main_~r~0_1) (= (+ v_main_~v~0_2 2) v_main_~v~0_1)) InVars {main_~v~0=v_main_~v~0_2, main_~r~0=v_main_~r~0_2} OutVars{main_~v~0=v_main_~v~0_1, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_~v~0, main_~r~0] {1462#(<= ~counter~0 3)} is VALID [2022-04-14 21:40:44,844 INFO L290 TraceCheckUtils]: 42: Hoare triple {1462#(<= ~counter~0 3)} [95] L35-1-->L38: Formula: (not (= v_main_~r~0_9 0)) InVars {main_~r~0=v_main_~r~0_9} OutVars{main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[] {1462#(<= ~counter~0 3)} is VALID [2022-04-14 21:40:44,844 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {1349#true} {1462#(<= ~counter~0 3)} [105] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~r~0_10 4) (* v_main_~A~0_11 4)) (+ (* v_main_~u~0_7 v_main_~u~0_7) (* (- 1) (* v_main_~v~0_7 v_main_~v~0_7)) (* (- 2) v_main_~u~0_7) (* v_main_~v~0_7 2))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_7, main_~A~0=v_main_~A~0_11, main_~u~0=v_main_~u~0_7, main_~r~0=v_main_~r~0_10} 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] {1462#(<= ~counter~0 3)} is VALID [2022-04-14 21:40:44,844 INFO L290 TraceCheckUtils]: 40: Hoare triple {1349#true} [98] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1349#true} is VALID [2022-04-14 21:40:44,845 INFO L290 TraceCheckUtils]: 39: Hoare triple {1349#true} [93] 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[] {1349#true} is VALID [2022-04-14 21:40:44,845 INFO L290 TraceCheckUtils]: 38: Hoare triple {1349#true} [89] __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] {1349#true} is VALID [2022-04-14 21:40:44,845 INFO L272 TraceCheckUtils]: 37: Hoare triple {1462#(<= ~counter~0 3)} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~r~0_10 4) (* v_main_~A~0_11 4)) (+ (* v_main_~u~0_7 v_main_~u~0_7) (* (- 1) (* v_main_~v~0_7 v_main_~v~0_7)) (* (- 2) v_main_~u~0_7) (* v_main_~v~0_7 2))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_7, main_~A~0=v_main_~A~0_11, main_~u~0=v_main_~u~0_7, main_~r~0=v_main_~r~0_10} 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] {1349#true} is VALID [2022-04-14 21:40:44,845 INFO L290 TraceCheckUtils]: 36: Hoare triple {1462#(<= ~counter~0 3)} [87] 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] {1462#(<= ~counter~0 3)} is VALID [2022-04-14 21:40:44,845 INFO L290 TraceCheckUtils]: 35: Hoare triple {1434#(<= ~counter~0 2)} [83] L38-2-->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] {1462#(<= ~counter~0 3)} is VALID [2022-04-14 21:40:44,846 INFO L290 TraceCheckUtils]: 34: Hoare triple {1434#(<= ~counter~0 2)} [99] L38-->L38-2: Formula: (and (< 0 v_main_~r~0_2) (= (+ v_main_~r~0_2 (* (- 1) v_main_~v~0_2)) v_main_~r~0_1) (= (+ v_main_~v~0_2 2) v_main_~v~0_1)) InVars {main_~v~0=v_main_~v~0_2, main_~r~0=v_main_~r~0_2} OutVars{main_~v~0=v_main_~v~0_1, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_~v~0, main_~r~0] {1434#(<= ~counter~0 2)} is VALID [2022-04-14 21:40:44,846 INFO L290 TraceCheckUtils]: 33: Hoare triple {1434#(<= ~counter~0 2)} [95] L35-1-->L38: Formula: (not (= v_main_~r~0_9 0)) InVars {main_~r~0=v_main_~r~0_9} OutVars{main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[] {1434#(<= ~counter~0 2)} is VALID [2022-04-14 21:40:44,846 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1349#true} {1434#(<= ~counter~0 2)} [105] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~r~0_10 4) (* v_main_~A~0_11 4)) (+ (* v_main_~u~0_7 v_main_~u~0_7) (* (- 1) (* v_main_~v~0_7 v_main_~v~0_7)) (* (- 2) v_main_~u~0_7) (* v_main_~v~0_7 2))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_7, main_~A~0=v_main_~A~0_11, main_~u~0=v_main_~u~0_7, main_~r~0=v_main_~r~0_10} 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] {1434#(<= ~counter~0 2)} is VALID [2022-04-14 21:40:44,847 INFO L290 TraceCheckUtils]: 31: Hoare triple {1349#true} [98] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1349#true} is VALID [2022-04-14 21:40:44,847 INFO L290 TraceCheckUtils]: 30: Hoare triple {1349#true} [93] 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[] {1349#true} is VALID [2022-04-14 21:40:44,847 INFO L290 TraceCheckUtils]: 29: Hoare triple {1349#true} [89] __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] {1349#true} is VALID [2022-04-14 21:40:44,847 INFO L272 TraceCheckUtils]: 28: Hoare triple {1434#(<= ~counter~0 2)} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~r~0_10 4) (* v_main_~A~0_11 4)) (+ (* v_main_~u~0_7 v_main_~u~0_7) (* (- 1) (* v_main_~v~0_7 v_main_~v~0_7)) (* (- 2) v_main_~u~0_7) (* v_main_~v~0_7 2))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_7, main_~A~0=v_main_~A~0_11, main_~u~0=v_main_~u~0_7, main_~r~0=v_main_~r~0_10} 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] {1349#true} is VALID [2022-04-14 21:40:44,847 INFO L290 TraceCheckUtils]: 27: Hoare triple {1434#(<= ~counter~0 2)} [87] 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] {1434#(<= ~counter~0 2)} is VALID [2022-04-14 21:40:44,848 INFO L290 TraceCheckUtils]: 26: Hoare triple {1406#(<= ~counter~0 1)} [83] L38-2-->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] {1434#(<= ~counter~0 2)} is VALID [2022-04-14 21:40:44,848 INFO L290 TraceCheckUtils]: 25: Hoare triple {1406#(<= ~counter~0 1)} [99] L38-->L38-2: Formula: (and (< 0 v_main_~r~0_2) (= (+ v_main_~r~0_2 (* (- 1) v_main_~v~0_2)) v_main_~r~0_1) (= (+ v_main_~v~0_2 2) v_main_~v~0_1)) InVars {main_~v~0=v_main_~v~0_2, main_~r~0=v_main_~r~0_2} OutVars{main_~v~0=v_main_~v~0_1, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_~v~0, main_~r~0] {1406#(<= ~counter~0 1)} is VALID [2022-04-14 21:40:44,848 INFO L290 TraceCheckUtils]: 24: Hoare triple {1406#(<= ~counter~0 1)} [95] L35-1-->L38: Formula: (not (= v_main_~r~0_9 0)) InVars {main_~r~0=v_main_~r~0_9} OutVars{main_~r~0=v_main_~r~0_9} AuxVars[] AssignedVars[] {1406#(<= ~counter~0 1)} is VALID [2022-04-14 21:40:44,849 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1349#true} {1406#(<= ~counter~0 1)} [105] __VERIFIER_assertEXIT-->L35-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (+ (* v_main_~r~0_10 4) (* v_main_~A~0_11 4)) (+ (* v_main_~u~0_7 v_main_~u~0_7) (* (- 1) (* v_main_~v~0_7 v_main_~v~0_7)) (* (- 2) v_main_~u~0_7) (* v_main_~v~0_7 2))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_7, main_~A~0=v_main_~A~0_11, main_~u~0=v_main_~u~0_7, main_~r~0=v_main_~r~0_10} 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] {1406#(<= ~counter~0 1)} is VALID [2022-04-14 21:40:44,849 INFO L290 TraceCheckUtils]: 22: Hoare triple {1349#true} [98] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1349#true} is VALID [2022-04-14 21:40:44,849 INFO L290 TraceCheckUtils]: 21: Hoare triple {1349#true} [93] 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[] {1349#true} is VALID [2022-04-14 21:40:44,849 INFO L290 TraceCheckUtils]: 20: Hoare triple {1349#true} [89] __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] {1349#true} is VALID [2022-04-14 21:40:44,849 INFO L272 TraceCheckUtils]: 19: Hoare triple {1406#(<= ~counter~0 1)} [90] L35-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~r~0_10 4) (* v_main_~A~0_11 4)) (+ (* v_main_~u~0_7 v_main_~u~0_7) (* (- 1) (* v_main_~v~0_7 v_main_~v~0_7)) (* (- 2) v_main_~u~0_7) (* v_main_~v~0_7 2))) 1 0) |v___VERIFIER_assert_#in~condInParam_1|) InVars {main_~v~0=v_main_~v~0_7, main_~A~0=v_main_~A~0_11, main_~u~0=v_main_~u~0_7, main_~r~0=v_main_~r~0_10} 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] {1349#true} is VALID [2022-04-14 21:40:44,849 INFO L290 TraceCheckUtils]: 18: Hoare triple {1406#(<= ~counter~0 1)} [87] 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] {1406#(<= ~counter~0 1)} is VALID [2022-04-14 21:40:44,850 INFO L290 TraceCheckUtils]: 17: Hoare triple {1357#(<= ~counter~0 0)} [83] L38-2-->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] {1406#(<= ~counter~0 1)} is VALID [2022-04-14 21:40:44,850 INFO L290 TraceCheckUtils]: 16: Hoare triple {1357#(<= ~counter~0 0)} [79] L28-->L38-2: Formula: (and (= v_main_~u~0_5 (+ (* v_main_~R~0_5 2) 1)) (= v_main_~v~0_5 1) (= v_main_~r~0_6 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_7)))) 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_5, main_~A~0=v_main_~A~0_7, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_5, main_~r~0=v_main_~r~0_6} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {1357#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:44,850 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1349#true} {1357#(<= ~counter~0 0)} [103] assume_abort_if_notEXIT-->L28: 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_10 2))) (ite (and (not (= .cse0 0)) (< v_main_~A~0_10 0)) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_10} 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] {1357#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:44,850 INFO L290 TraceCheckUtils]: 14: Hoare triple {1349#true} [84] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1349#true} is VALID [2022-04-14 21:40:44,851 INFO L290 TraceCheckUtils]: 13: Hoare triple {1349#true} [81] 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[] {1349#true} is VALID [2022-04-14 21:40:44,851 INFO L290 TraceCheckUtils]: 12: Hoare triple {1349#true} [78] 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] {1349#true} is VALID [2022-04-14 21:40:44,851 INFO L272 TraceCheckUtils]: 11: Hoare triple {1357#(<= ~counter~0 0)} [77] L26-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (= (let ((.cse0 (mod v_main_~A~0_10 2))) (ite (and (not (= .cse0 0)) (< v_main_~A~0_10 0)) (+ (- 2) .cse0) .cse0)) 1) 1 0)) InVars {main_~A~0=v_main_~A~0_10} 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] {1349#true} is VALID [2022-04-14 21:40:44,851 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1349#true} {1357#(<= ~counter~0 0)} [102] assume_abort_if_notEXIT-->L26-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_9)) 1 0)) InVars {main_~A~0=v_main_~A~0_9, 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] {1357#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:44,851 INFO L290 TraceCheckUtils]: 9: Hoare triple {1349#true} [84] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1349#true} is VALID [2022-04-14 21:40:44,851 INFO L290 TraceCheckUtils]: 8: Hoare triple {1349#true} [81] 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[] {1349#true} is VALID [2022-04-14 21:40:44,851 INFO L290 TraceCheckUtils]: 7: Hoare triple {1349#true} [78] 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] {1349#true} is VALID [2022-04-14 21:40:44,851 INFO L272 TraceCheckUtils]: 6: Hoare triple {1357#(<= ~counter~0 0)} [76] L26-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_1| (ite (< (+ (* v_main_~R~0_6 v_main_~R~0_6) 1) (+ (* v_main_~R~0_6 2) v_main_~A~0_9)) 1 0)) InVars {main_~A~0=v_main_~A~0_9, 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] {1349#true} is VALID [2022-04-14 21:40:44,852 INFO L290 TraceCheckUtils]: 5: Hoare triple {1357#(<= ~counter~0 0)} [74] mainENTRY-->L26: 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_4, main_~A~0=v_main_~A~0_2, main_~R~0=v_main_~R~0_1, main_~u~0=v_main_~u~0_4, main_~r~0=v_main_~r~0_5} AuxVars[] AssignedVars[main_#t~nondet5, main_#t~nondet4, main_~v~0, main_~A~0, main_~R~0, main_~u~0, main_~r~0] {1357#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:44,852 INFO L272 TraceCheckUtils]: 4: Hoare triple {1357#(<= ~counter~0 0)} [71] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1357#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:44,852 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1357#(<= ~counter~0 0)} {1349#true} [101] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1357#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:44,853 INFO L290 TraceCheckUtils]: 2: Hoare triple {1357#(<= ~counter~0 0)} [75] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1357#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:44,853 INFO L290 TraceCheckUtils]: 1: Hoare triple {1349#true} [72] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= v_~counter~0_3 0) (= 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) (= (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_3, #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] {1357#(<= ~counter~0 0)} is VALID [2022-04-14 21:40:44,853 INFO L272 TraceCheckUtils]: 0: Hoare triple {1349#true} [70] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1349#true} is VALID [2022-04-14 21:40:44,853 INFO L134 CoverageAnalysis]: Checked inductivity of 74 backedges. 8 proven. 38 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-14 21:40:44,854 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 21:40:44,854 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1985738757] [2022-04-14 21:40:44,854 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 21:40:44,854 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [654454352] [2022-04-14 21:40:44,854 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [654454352] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 21:40:44,854 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 21:40:44,854 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 8 [2022-04-14 21:40:44,854 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1303655816] [2022-04-14 21:40:44,854 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 21:40:44,855 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 5.75) internal successors, (46), 8 states have internal predecessors, (46), 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 59 [2022-04-14 21:40:44,857 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 21:40:44,857 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 5.75) internal successors, (46), 8 states have internal predecessors, (46), 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-14 21:40:44,903 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 21:40:44,903 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-14 21:40:44,903 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 21:40:44,903 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-14 21:40:44,903 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=33, Unknown=0, NotChecked=0, Total=56 [2022-04-14 21:40:44,904 INFO L87 Difference]: Start difference. First operand 56 states and 61 transitions. Second operand has 8 states, 8 states have (on average 5.75) internal successors, (46), 8 states have internal predecessors, (46), 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-14 21:40:45,038 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:40:45,038 INFO L93 Difference]: Finished difference Result 65 states and 71 transitions. [2022-04-14 21:40:45,038 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-14 21:40:45,038 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 5.75) internal successors, (46), 8 states have internal predecessors, (46), 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 59 [2022-04-14 21:40:45,038 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 21:40:45,039 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 5.75) internal successors, (46), 8 states have internal predecessors, (46), 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-14 21:40:45,040 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 71 transitions. [2022-04-14 21:40:45,041 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 5.75) internal successors, (46), 8 states have internal predecessors, (46), 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-14 21:40:45,042 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 71 transitions. [2022-04-14 21:40:45,042 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 71 transitions. [2022-04-14 21:40:45,090 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 71 edges. 71 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 21:40:45,092 INFO L225 Difference]: With dead ends: 65 [2022-04-14 21:40:45,092 INFO L226 Difference]: Without dead ends: 65 [2022-04-14 21:40:45,092 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 121 GetRequests, 110 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=51, Invalid=81, Unknown=0, NotChecked=0, Total=132 [2022-04-14 21:40:45,093 INFO L913 BasicCegarLoop]: 30 mSDtfsCounter, 18 mSDsluCounter, 72 mSDsCounter, 0 mSdLazyCounter, 24 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 102 SdHoareTripleChecker+Invalid, 38 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 24 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-14 21:40:45,093 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [18 Valid, 102 Invalid, 38 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 24 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-14 21:40:45,093 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 65 states. [2022-04-14 21:40:45,096 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 65 to 65. [2022-04-14 21:40:45,096 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 21:40:45,096 INFO L82 GeneralOperation]: Start isEquivalent. First operand 65 states. Second operand has 65 states, 47 states have (on average 1.127659574468085) internal successors, (53), 47 states have internal predecessors, (53), 10 states have call successors, (10), 9 states have call predecessors, (10), 7 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 21:40:45,096 INFO L74 IsIncluded]: Start isIncluded. First operand 65 states. Second operand has 65 states, 47 states have (on average 1.127659574468085) internal successors, (53), 47 states have internal predecessors, (53), 10 states have call successors, (10), 9 states have call predecessors, (10), 7 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 21:40:45,096 INFO L87 Difference]: Start difference. First operand 65 states. Second operand has 65 states, 47 states have (on average 1.127659574468085) internal successors, (53), 47 states have internal predecessors, (53), 10 states have call successors, (10), 9 states have call predecessors, (10), 7 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 21:40:45,098 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:40:45,098 INFO L93 Difference]: Finished difference Result 65 states and 71 transitions. [2022-04-14 21:40:45,098 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 71 transitions. [2022-04-14 21:40:45,098 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 21:40:45,098 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 21:40:45,098 INFO L74 IsIncluded]: Start isIncluded. First operand has 65 states, 47 states have (on average 1.127659574468085) internal successors, (53), 47 states have internal predecessors, (53), 10 states have call successors, (10), 9 states have call predecessors, (10), 7 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 65 states. [2022-04-14 21:40:45,099 INFO L87 Difference]: Start difference. First operand has 65 states, 47 states have (on average 1.127659574468085) internal successors, (53), 47 states have internal predecessors, (53), 10 states have call successors, (10), 9 states have call predecessors, (10), 7 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 65 states. [2022-04-14 21:40:45,100 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:40:45,100 INFO L93 Difference]: Finished difference Result 65 states and 71 transitions. [2022-04-14 21:40:45,100 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 71 transitions. [2022-04-14 21:40:45,101 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 21:40:45,101 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 21:40:45,101 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 21:40:45,101 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 21:40:45,101 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 65 states, 47 states have (on average 1.127659574468085) internal successors, (53), 47 states have internal predecessors, (53), 10 states have call successors, (10), 9 states have call predecessors, (10), 7 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 21:40:45,102 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 65 states to 65 states and 71 transitions. [2022-04-14 21:40:45,102 INFO L78 Accepts]: Start accepts. Automaton has 65 states and 71 transitions. Word has length 59 [2022-04-14 21:40:45,102 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 21:40:45,102 INFO L478 AbstractCegarLoop]: Abstraction has 65 states and 71 transitions. [2022-04-14 21:40:45,103 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 5.75) internal successors, (46), 8 states have internal predecessors, (46), 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-14 21:40:45,103 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 71 transitions. [2022-04-14 21:40:45,111 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 69 [2022-04-14 21:40:45,111 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 21:40:45,111 INFO L499 BasicCegarLoop]: trace histogram [6, 6, 5, 5, 5, 5, 5, 5, 5, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 21:40:45,145 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-14 21:40:45,321 WARN L460 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-14 21:40:45,321 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 21:40:45,321 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 21:40:45,321 INFO L85 PathProgramCache]: Analyzing trace with hash 1572135395, now seen corresponding path program 3 times [2022-04-14 21:40:45,321 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 21:40:45,321 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2067652104] [2022-04-14 21:40:45,322 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 21:40:45,322 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 21:40:45,334 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 21:40:45,334 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [810468194] [2022-04-14 21:40:45,334 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-14 21:40:45,334 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 21:40:45,334 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 21:40:45,344 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-14 21:40:45,344 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-14 21:40:46,540 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 6 check-sat command(s) [2022-04-14 21:40:46,541 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-04-14 21:40:46,541 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-04-14 21:40:46,677 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-04-14 21:40:46,712 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-04-14 21:40:46,713 INFO L618 BasicCegarLoop]: Counterexample is feasible [2022-04-14 21:40:46,713 INFO L788 garLoopResultBuilder]: Registering result UNSAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-14 21:40:46,721 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-14 21:40:46,921 WARN L460 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-14 21:40:46,923 INFO L719 BasicCegarLoop]: Path program histogram: [3, 1, 1, 1, 1] [2022-04-14 21:40:46,925 INFO L177 ceAbstractionStarter]: Computing trace abstraction results [2022-04-14 21:40:46,967 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 14.04 09:40:46 BasicIcfg [2022-04-14 21:40:46,967 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-14 21:40:46,968 INFO L158 Benchmark]: Toolchain (without parser) took 19386.33ms. Allocated memory was 165.7MB in the beginning and 207.6MB in the end (delta: 41.9MB). Free memory was 116.6MB in the beginning and 71.5MB in the end (delta: 45.1MB). Peak memory consumption was 87.1MB. Max. memory is 8.0GB. [2022-04-14 21:40:46,968 INFO L158 Benchmark]: CDTParser took 0.11ms. Allocated memory is still 165.7MB. Free memory was 133.1MB in the beginning and 132.9MB in the end (delta: 139.8kB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-14 21:40:46,968 INFO L158 Benchmark]: CACSL2BoogieTranslator took 179.33ms. Allocated memory is still 165.7MB. Free memory was 116.4MB in the beginning and 140.9MB in the end (delta: -24.4MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-14 21:40:46,968 INFO L158 Benchmark]: Boogie Preprocessor took 18.35ms. Allocated memory is still 165.7MB. Free memory was 140.9MB in the beginning and 139.4MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-14 21:40:46,968 INFO L158 Benchmark]: RCFGBuilder took 285.77ms. Allocated memory is still 165.7MB. Free memory was 139.4MB in the beginning and 127.9MB in the end (delta: 11.5MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-14 21:40:46,968 INFO L158 Benchmark]: IcfgTransformer took 45.13ms. Allocated memory is still 165.7MB. Free memory was 127.9MB in the beginning and 126.2MB in the end (delta: 1.7MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-14 21:40:46,969 INFO L158 Benchmark]: TraceAbstraction took 18853.81ms. Allocated memory was 165.7MB in the beginning and 207.6MB in the end (delta: 41.9MB). Free memory was 125.8MB in the beginning and 71.5MB in the end (delta: 54.3MB). Peak memory consumption was 97.0MB. Max. memory is 8.0GB. [2022-04-14 21:40:46,969 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.11ms. Allocated memory is still 165.7MB. Free memory was 133.1MB in the beginning and 132.9MB in the end (delta: 139.8kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 179.33ms. Allocated memory is still 165.7MB. Free memory was 116.4MB in the beginning and 140.9MB in the end (delta: -24.4MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * Boogie Preprocessor took 18.35ms. Allocated memory is still 165.7MB. Free memory was 140.9MB in the beginning and 139.4MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 285.77ms. Allocated memory is still 165.7MB. Free memory was 139.4MB in the beginning and 127.9MB in the end (delta: 11.5MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * IcfgTransformer took 45.13ms. Allocated memory is still 165.7MB. Free memory was 127.9MB in the beginning and 126.2MB in the end (delta: 1.7MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * TraceAbstraction took 18853.81ms. Allocated memory was 165.7MB in the beginning and 207.6MB in the end (delta: 41.9MB). Free memory was 125.8MB in the beginning and 71.5MB in the end (delta: 54.3MB). Peak memory consumption was 97.0MB. 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)=8, counter=0] [L21] int A, R; [L22] long long u, v, r; [L23] A = __VERIFIER_nondet_int() [L24] R = __VERIFIER_nondet_int() [L26] 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] [L26] RET assume_abort_if_not(((long long) R - 1) * ((long long) R - 1) < A) VAL [\old(counter)=0, A=1851, counter=0, R=44] [L28] 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] [L28] RET assume_abort_if_not(A % 2 == 1) VAL [\old(counter)=0, A=1851, counter=0, R=44] [L30] u = ((long long) 2 * R) + 1 [L31] v = 1 [L32] r = ((long long) R * R) - A VAL [\old(counter)=0, A=1851, counter=0, R=44, r=85, u=89, v=1] [L34] EXPR counter++ VAL [\old(counter)=0, A=1851, counter=1, counter++=0, R=44, r=85, u=89, 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=1851, counter=1, R=44, r=85, u=89, v=1] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=1851, counter=1, r=85, R=44, u=89, v=1] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=1851, counter=1, R=44, r=84, u=89, v=3] [L34] EXPR counter++ VAL [\old(counter)=0, A=1851, counter=2, counter++=1, r=84, R=44, u=89, v=3] [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=2] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=2] [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=1851, counter=2, r=84, R=44, u=89, v=3] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=1851, counter=2, r=84, R=44, u=89, v=3] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=1851, counter=2, r=81, R=44, u=89, v=5] [L34] EXPR counter++ VAL [\old(counter)=0, A=1851, counter=3, counter++=2, r=81, R=44, u=89, v=5] [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=3] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=3] [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=1851, counter=3, r=81, R=44, u=89, v=5] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=1851, counter=3, R=44, r=81, u=89, v=5] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=1851, counter=3, R=44, r=76, u=89, v=7] [L34] EXPR counter++ VAL [\old(counter)=0, A=1851, counter=4, counter++=3, R=44, r=76, u=89, v=7] [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=4] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=4] [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=1851, counter=4, r=76, R=44, u=89, v=7] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=1851, counter=4, R=44, r=76, u=89, v=7] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=1851, counter=4, r=69, R=44, u=89, v=9] [L34] EXPR counter++ VAL [\old(counter)=0, A=1851, counter=5, counter++=4, R=44, r=69, u=89, v=9] [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=5] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=5] [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=1851, counter=5, R=44, r=69, u=89, v=9] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=1851, counter=5, R=44, r=69, u=89, v=9] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=1851, counter=5, R=44, r=60, u=89, v=11] [L34] EXPR counter++ VAL [\old(counter)=0, A=1851, counter=6, counter++=5, R=44, r=60, u=89, v=11] [L34] COND FALSE !(counter++<5) [L48] 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, 30 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 18.8s, OverallIterations: 7, TraceHistogramMax: 6, PathProgramHistogramMax: 3, EmptinessCheckTime: 0.0s, AutomataDifference: 7.9s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 1 mSolverCounterUnknown, 82 SdHoareTripleChecker+Valid, 3.8s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 81 mSDsluCounter, 511 SdHoareTripleChecker+Invalid, 3.8s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 347 mSDsCounter, 42 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 158 IncrementalHoareTripleChecker+Invalid, 201 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 42 mSolverCounterUnsat, 164 mSDtfsCounter, 158 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 313 GetRequests, 275 SyntacticMatches, 2 SemanticMatches, 36 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 31 ImplicationChecksByTransitivity, 0.2s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=65occurred in iteration=6, InterpolantAutomatonStates: 41, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.1s AutomataMinimizationTime, 6 MinimizatonAttempts, 8 StatesRemovedByMinimization, 2 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 1.3s SatisfiabilityAnalysisTime, 4.6s InterpolantComputationTime, 256 NumberOfCodeBlocks, 256 NumberOfCodeBlocksAsserted, 13 NumberOfCheckSat, 299 ConstructedInterpolants, 0 QuantifiedInterpolants, 779 SizeOfPredicates, 17 NumberOfNonLiveVariables, 665 ConjunctsInSsa, 49 ConjunctsInUnsatCore, 9 InterpolantComputations, 3 PerfectInterpolantSequences, 82/188 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-14 21:40:46,991 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...