/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_unwindbound10.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-27 18:41:58,073 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-27 18:41:58,075 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-27 18:41:58,133 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-27 18:41:58,134 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-27 18:41:58,136 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-27 18:41:58,139 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-27 18:41:58,143 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-27 18:41:58,145 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-27 18:41:58,148 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-27 18:41:58,149 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-27 18:41:58,150 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-27 18:41:58,150 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-27 18:41:58,150 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-27 18:41:58,151 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-27 18:41:58,152 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-27 18:41:58,152 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-27 18:41:58,153 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-27 18:41:58,154 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-27 18:41:58,155 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-27 18:41:58,156 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-27 18:41:58,158 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-27 18:41:58,160 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-27 18:41:58,162 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-27 18:41:58,163 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-27 18:41:58,173 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-27 18:41:58,173 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-27 18:41:58,174 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-27 18:41:58,174 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-27 18:41:58,175 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-27 18:41:58,175 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-27 18:41:58,176 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-27 18:41:58,177 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-27 18:41:58,178 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-27 18:41:58,178 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-27 18:41:58,179 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-27 18:41:58,179 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-27 18:41:58,179 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-27 18:41:58,180 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-27 18:41:58,180 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-27 18:41:58,180 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-27 18:41:58,182 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-27 18:41:58,183 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf [2022-04-27 18:41:58,194 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-27 18:41:58,195 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-27 18:41:58,196 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-27 18:41:58,196 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-27 18:41:58,196 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-27 18:41:58,196 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-27 18:41:58,196 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-27 18:41:58,197 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-27 18:41:58,197 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-27 18:41:58,197 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-27 18:41:58,198 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-27 18:41:58,198 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-27 18:41:58,198 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-27 18:41:58,198 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-27 18:41:58,198 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-27 18:41:58,198 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-27 18:41:58,198 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-27 18:41:58,198 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-27 18:41:58,199 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 18:41:58,199 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-27 18:41:58,199 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-27 18:41:58,199 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-27 18:41:58,200 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-27 18:41:58,435 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-27 18:41:58,451 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-27 18:41:58,452 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-27 18:41:58,453 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-27 18:41:58,454 INFO L275 PluginConnector]: CDTParser initialized [2022-04-27 18:41:58,455 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/fermat2-ll_unwindbound10.c [2022-04-27 18:41:58,509 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/8a908deba/db249575263c4b4db53a5a68bb9531d8/FLAG2d4efcf52 [2022-04-27 18:41:58,916 INFO L306 CDTParser]: Found 1 translation units. [2022-04-27 18:41:58,917 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/fermat2-ll_unwindbound10.c [2022-04-27 18:41:58,924 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/8a908deba/db249575263c4b4db53a5a68bb9531d8/FLAG2d4efcf52 [2022-04-27 18:41:59,315 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/8a908deba/db249575263c4b4db53a5a68bb9531d8 [2022-04-27 18:41:59,317 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-27 18:41:59,318 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-27 18:41:59,323 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-27 18:41:59,323 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-27 18:41:59,327 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-27 18:41:59,328 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 06:41:59" (1/1) ... [2022-04-27 18:41:59,329 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@26c6cb22 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 06:41:59, skipping insertion in model container [2022-04-27 18:41:59,329 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 27.04 06:41:59" (1/1) ... [2022-04-27 18:41:59,334 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-27 18:41:59,346 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-27 18:41:59,540 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_unwindbound10.c[524,537] [2022-04-27 18:41:59,582 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 18:41:59,590 INFO L203 MainTranslator]: Completed pre-run [2022-04-27 18:41:59,603 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_unwindbound10.c[524,537] [2022-04-27 18:41:59,623 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-27 18:41:59,635 INFO L208 MainTranslator]: Completed translation [2022-04-27 18:41:59,635 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 06:41:59 WrapperNode [2022-04-27 18:41:59,635 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-27 18:41:59,636 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-27 18:41:59,636 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-27 18:41:59,637 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-27 18:41:59,646 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 06:41:59" (1/1) ... [2022-04-27 18:41:59,646 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 06:41:59" (1/1) ... [2022-04-27 18:41:59,652 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 06:41:59" (1/1) ... [2022-04-27 18:41:59,652 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 06:41:59" (1/1) ... [2022-04-27 18:41:59,665 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 06:41:59" (1/1) ... [2022-04-27 18:41:59,670 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 06:41:59" (1/1) ... [2022-04-27 18:41:59,674 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 06:41:59" (1/1) ... [2022-04-27 18:41:59,676 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-27 18:41:59,677 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-27 18:41:59,677 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-27 18:41:59,677 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-27 18:41:59,678 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 06:41:59" (1/1) ... [2022-04-27 18:41:59,685 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-27 18:41:59,693 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 18:41:59,708 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-27 18:41:59,734 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-27 18:41:59,755 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-27 18:41:59,755 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-27 18:41:59,755 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-27 18:41:59,756 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-27 18:41:59,756 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-27 18:41:59,756 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-27 18:41:59,756 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-27 18:41:59,756 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-27 18:41:59,756 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-27 18:41:59,756 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-27 18:41:59,756 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-27 18:41:59,757 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-27 18:41:59,757 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-27 18:41:59,757 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-27 18:41:59,758 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-27 18:41:59,758 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-27 18:41:59,759 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-27 18:41:59,759 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-27 18:41:59,759 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-27 18:41:59,759 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-27 18:41:59,819 INFO L234 CfgBuilder]: Building ICFG [2022-04-27 18:41:59,821 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-27 18:41:59,962 INFO L275 CfgBuilder]: Performing block encoding [2022-04-27 18:41:59,968 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-27 18:41:59,968 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-27 18:41:59,969 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 06:41:59 BoogieIcfgContainer [2022-04-27 18:41:59,969 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-27 18:41:59,970 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-27 18:41:59,970 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-27 18:41:59,983 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-27 18:41:59,986 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 06:41:59" (1/1) ... [2022-04-27 18:41:59,987 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_JORDAN [2022-04-27 18:42:00,037 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 27.04 06:42:00 BasicIcfg [2022-04-27 18:42:00,043 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-27 18:42:00,045 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-27 18:42:00,045 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-27 18:42:00,047 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-27 18:42:00,048 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 27.04 06:41:59" (1/4) ... [2022-04-27 18:42:00,048 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@69a14b9d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 06:42:00, skipping insertion in model container [2022-04-27 18:42:00,048 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 27.04 06:41:59" (2/4) ... [2022-04-27 18:42:00,049 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@69a14b9d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 27.04 06:42:00, skipping insertion in model container [2022-04-27 18:42:00,049 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 27.04 06:41:59" (3/4) ... [2022-04-27 18:42:00,049 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@69a14b9d and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 27.04 06:42:00, skipping insertion in model container [2022-04-27 18:42:00,049 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 27.04 06:42:00" (4/4) ... [2022-04-27 18:42:00,050 INFO L111 eAbstractionObserver]: Analyzing ICFG fermat2-ll_unwindbound10.cJordan [2022-04-27 18:42:00,061 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:ForwardPredicates Determinization: PREDICATE_ABSTRACTION [2022-04-27 18:42:00,061 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-27 18:42:00,096 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-27 18:42:00,102 INFO L357 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, mPorIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@77d28d8, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@7a000e98 [2022-04-27 18:42:00,102 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-27 18:42:00,114 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-27 18:42:00,121 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-04-27 18:42:00,121 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 18:42:00,121 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 18:42:00,122 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 18:42:00,126 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 18:42:00,126 INFO L85 PathProgramCache]: Analyzing trace with hash 734203501, now seen corresponding path program 1 times [2022-04-27 18:42:00,134 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 18:42:00,134 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [409077046] [2022-04-27 18:42:00,134 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 18:42:00,135 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 18:42:00,261 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 18:42:00,261 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1986785854] [2022-04-27 18:42:00,262 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 18:42:00,262 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 18:42:00,262 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 18:42:00,267 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-27 18:42:00,314 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-27 18:42:00,362 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 18:42:00,364 INFO L263 TraceCheckSpWp]: Trace formula consists of 89 conjuncts, 1 conjunts are in the unsatisfiable core [2022-04-27 18:42:00,380 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 18:42:00,383 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 18:42:00,486 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-27 18:42:00,489 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-27 18:42:00,489 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-27 18:42:00,489 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-27 18:42:00,490 INFO L272 TraceCheckUtils]: 4: Hoare triple {33#true} [71] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {33#true} is VALID [2022-04-27 18:42:00,491 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-27 18:42:00,492 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-27 18:42:00,493 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-27 18:42:00,493 INFO L290 TraceCheckUtils]: 8: Hoare triple {33#true} [80] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {34#false} is VALID [2022-04-27 18:42:00,494 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-27 18:42:00,494 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-27 18:42:00,495 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-27 18:42:00,495 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-27 18:42:00,496 INFO L290 TraceCheckUtils]: 13: Hoare triple {34#false} [80] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {34#false} is VALID [2022-04-27 18:42:00,496 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-27 18:42:00,496 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-27 18:42:00,497 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-27 18:42:00,497 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-27 18:42:00,498 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-27 18:42:00,499 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-27 18:42:00,499 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-27 18:42:00,499 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-27 18:42:00,500 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-27 18:42:00,500 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 18:42:00,501 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 18:42:00,502 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [409077046] [2022-04-27 18:42:00,502 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 18:42:00,502 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1986785854] [2022-04-27 18:42:00,503 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1986785854] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 18:42:00,503 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 18:42:00,503 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-04-27 18:42:00,506 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [321135864] [2022-04-27 18:42:00,507 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 18:42:00,512 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-27 18:42:00,513 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 18:42:00,516 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-27 18:42:00,542 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-27 18:42:00,542 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-04-27 18:42:00,543 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 18:42:00,563 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-04-27 18:42:00,564 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-04-27 18:42:00,567 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-27 18:42:00,622 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 18:42:00,622 INFO L93 Difference]: Finished difference Result 30 states and 34 transitions. [2022-04-27 18:42:00,622 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-04-27 18:42:00,623 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-27 18:42:00,624 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 18:42:00,625 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-27 18:42:00,637 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 37 transitions. [2022-04-27 18:42:00,638 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-27 18:42:00,642 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 37 transitions. [2022-04-27 18:42:00,643 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 2 states and 37 transitions. [2022-04-27 18:42:00,684 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-27 18:42:00,692 INFO L225 Difference]: With dead ends: 30 [2022-04-27 18:42:00,692 INFO L226 Difference]: Without dead ends: 25 [2022-04-27 18:42:00,693 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 21 GetRequests, 21 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-04-27 18:42:00,696 INFO L413 NwaCegarLoop]: 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-27 18:42:00,698 INFO L414 NwaCegarLoop]: 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-27 18:42:00,713 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 25 states. [2022-04-27 18:42:00,725 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 25 to 25. [2022-04-27 18:42:00,725 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 18:42:00,726 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-27 18:42:00,727 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-27 18:42:00,727 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-27 18:42:00,735 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 18:42:00,735 INFO L93 Difference]: Finished difference Result 25 states and 29 transitions. [2022-04-27 18:42:00,735 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 29 transitions. [2022-04-27 18:42:00,736 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 18:42:00,737 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 18:42:00,739 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-27 18:42:00,740 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-27 18:42:00,749 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 18:42:00,749 INFO L93 Difference]: Finished difference Result 25 states and 29 transitions. [2022-04-27 18:42:00,750 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 29 transitions. [2022-04-27 18:42:00,750 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 18:42:00,750 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 18:42:00,750 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 18:42:00,750 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 18:42:00,751 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-27 18:42:00,757 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 29 transitions. [2022-04-27 18:42:00,758 INFO L78 Accepts]: Start accepts. Automaton has 25 states and 29 transitions. Word has length 22 [2022-04-27 18:42:00,758 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 18:42:00,758 INFO L495 AbstractCegarLoop]: Abstraction has 25 states and 29 transitions. [2022-04-27 18:42:00,759 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 6.5) internal successors, (13), 2 states have internal predecessors, (13), 2 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 18:42:00,759 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 29 transitions. [2022-04-27 18:42:00,759 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-27 18:42:00,759 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 18:42:00,760 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 18:42:00,789 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-27 18:42:00,975 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable0 [2022-04-27 18:42:00,976 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 18:42:00,976 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 18:42:00,976 INFO L85 PathProgramCache]: Analyzing trace with hash -1669026344, now seen corresponding path program 1 times [2022-04-27 18:42:00,978 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 18:42:00,978 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1642193921] [2022-04-27 18:42:00,978 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 18:42:00,978 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 18:42:01,000 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 18:42:01,001 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [195139641] [2022-04-27 18:42:01,001 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 18:42:01,001 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 18:42:01,001 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 18:42:01,002 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-27 18:42:01,004 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-27 18:42:01,049 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 18:42:01,049 INFO L263 TraceCheckSpWp]: Trace formula consists of 93 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-27 18:42:01,059 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 18:42:01,061 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 18:42:01,205 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-27 18:42:01,206 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-27 18:42:01,206 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-27 18:42:01,207 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-27 18:42:01,208 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-27 18:42:01,208 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-27 18:42:01,209 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-27 18:42:01,209 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-27 18:42:01,210 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-27 18:42:01,210 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-27 18:42:01,211 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-27 18:42:01,212 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-27 18:42:01,212 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-27 18:42:01,213 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-27 18:42:01,213 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-27 18:42:01,214 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-27 18:42:01,214 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-27 18:42:01,215 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-27 18:42:01,215 INFO L290 TraceCheckUtils]: 18: Hoare triple {262#(<= |main_#t~post6| 0)} [86] L34-1-->L34-3: Formula: (not (< |v_main_#t~post6_3| 10)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {206#false} is VALID [2022-04-27 18:42:01,216 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-27 18:42:01,216 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-27 18:42:01,216 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-27 18:42:01,216 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-27 18:42:01,217 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-27 18:42:01,217 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 18:42:01,217 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 18:42:01,217 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1642193921] [2022-04-27 18:42:01,217 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 18:42:01,217 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [195139641] [2022-04-27 18:42:01,217 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [195139641] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 18:42:01,217 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 18:42:01,218 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-27 18:42:01,218 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1779912706] [2022-04-27 18:42:01,218 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 18:42:01,219 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-27 18:42:01,219 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 18:42:01,219 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-27 18:42:01,238 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-27 18:42:01,238 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-27 18:42:01,238 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 18:42:01,239 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-27 18:42:01,239 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-27 18:42:01,239 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-27 18:42:01,290 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 18:42:01,290 INFO L93 Difference]: Finished difference Result 27 states and 31 transitions. [2022-04-27 18:42:01,291 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-27 18:42:01,291 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-27 18:42:01,291 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 18:42:01,291 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-27 18:42:01,293 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 32 transitions. [2022-04-27 18:42:01,293 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-27 18:42:01,297 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 32 transitions. [2022-04-27 18:42:01,298 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 32 transitions. [2022-04-27 18:42:01,326 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-27 18:42:01,327 INFO L225 Difference]: With dead ends: 27 [2022-04-27 18:42:01,327 INFO L226 Difference]: Without dead ends: 27 [2022-04-27 18:42:01,327 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 22 GetRequests, 20 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-27 18:42:01,328 INFO L413 NwaCegarLoop]: 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-27 18:42:01,329 INFO L414 NwaCegarLoop]: 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-27 18:42:01,330 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2022-04-27 18:42:01,332 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 27. [2022-04-27 18:42:01,332 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 18:42:01,333 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-27 18:42:01,333 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-27 18:42:01,334 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-27 18:42:01,336 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 18:42:01,337 INFO L93 Difference]: Finished difference Result 27 states and 31 transitions. [2022-04-27 18:42:01,337 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-27 18:42:01,337 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 18:42:01,337 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 18:42:01,338 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-27 18:42:01,339 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-27 18:42:01,343 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 18:42:01,343 INFO L93 Difference]: Finished difference Result 27 states and 31 transitions. [2022-04-27 18:42:01,343 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-27 18:42:01,344 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 18:42:01,344 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 18:42:01,345 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 18:42:01,345 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 18:42:01,346 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-27 18:42:01,349 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 31 transitions. [2022-04-27 18:42:01,349 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 31 transitions. Word has length 23 [2022-04-27 18:42:01,349 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 18:42:01,350 INFO L495 AbstractCegarLoop]: Abstraction has 27 states and 31 transitions. [2022-04-27 18:42:01,353 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-27 18:42:01,353 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 31 transitions. [2022-04-27 18:42:01,354 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-27 18:42:01,354 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 18:42:01,355 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 18:42:01,371 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-27 18:42:01,557 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable1 [2022-04-27 18:42:01,558 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 18:42:01,558 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 18:42:01,558 INFO L85 PathProgramCache]: Analyzing trace with hash -1667953868, now seen corresponding path program 1 times [2022-04-27 18:42:01,559 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 18:42:01,559 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [751740485] [2022-04-27 18:42:01,559 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 18:42:01,559 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 18:42:01,576 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 18:42:01,577 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1397956213] [2022-04-27 18:42:01,577 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 18:42:01,577 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 18:42:01,577 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 18:42:01,582 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-27 18:42:01,583 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-27 18:42:01,636 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 18:42:01,637 INFO L263 TraceCheckSpWp]: Trace formula consists of 93 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-27 18:42:01,648 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 18:42:01,649 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 18:42:01,977 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-27 18:42:01,977 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-27 18:42:01,978 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-27 18:42:01,978 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-27 18:42:01,978 INFO L272 TraceCheckUtils]: 4: Hoare triple {385#true} [71] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {385#true} is VALID [2022-04-27 18:42:01,978 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-27 18:42:01,978 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-27 18:42:01,979 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-27 18:42:01,979 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-27 18:42:01,979 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-27 18:42:01,979 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-27 18:42:01,979 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-27 18:42:01,980 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-27 18:42:01,980 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-27 18:42:01,980 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-27 18:42:01,980 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-27 18:42:03,057 INFO 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 VALID [2022-04-27 18:42:03,058 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-27 18:42:03,059 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| 10) 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-27 18:42:03,251 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-27 18:42:03,252 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-27 18:42:03,253 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-27 18:42:03,253 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-27 18:42:03,253 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-27 18:42:03,253 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-27 18:42:03,253 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 18:42:03,254 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [751740485] [2022-04-27 18:42:03,254 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 18:42:03,254 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1397956213] [2022-04-27 18:42:03,254 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1397956213] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-27 18:42:03,254 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-27 18:42:03,254 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-27 18:42:03,254 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [340606034] [2022-04-27 18:42:03,254 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-27 18:42:03,255 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-27 18:42:03,255 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 18:42:03,255 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-27 18:42:04,528 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-27 18:42:04,528 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-27 18:42:04,528 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 18:42:04,529 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-27 18:42:04,529 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-27 18:42:04,529 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-27 18:42:07,538 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-27 18:42:07,567 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 18:42:07,567 INFO L93 Difference]: Finished difference Result 35 states and 41 transitions. [2022-04-27 18:42:07,567 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-27 18:42:07,567 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-27 18:42:07,567 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 18:42:07,568 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-27 18:42:07,569 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 42 transitions. [2022-04-27 18:42:07,569 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-27 18:42:07,570 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 42 transitions. [2022-04-27 18:42:07,571 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 42 transitions. [2022-04-27 18:42:10,468 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-27 18:42:10,470 INFO L225 Difference]: With dead ends: 35 [2022-04-27 18:42:10,470 INFO L226 Difference]: Without dead ends: 35 [2022-04-27 18:42:10,470 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 23 GetRequests, 19 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-27 18:42:10,471 INFO L413 NwaCegarLoop]: 23 mSDtfsCounter, 7 mSDsluCounter, 59 mSDsCounter, 0 mSdLazyCounter, 35 mSolverCounterSat, 0 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.9s 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, 2.9s IncrementalHoareTripleChecker+Time [2022-04-27 18:42:10,471 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [8 Valid, 82 Invalid, 36 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 35 Invalid, 1 Unknown, 0 Unchecked, 2.9s Time] [2022-04-27 18:42:10,472 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-27 18:42:10,475 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 32. [2022-04-27 18:42:10,475 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 18:42:10,475 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-27 18:42:10,476 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-27 18:42:10,476 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-27 18:42:10,478 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 18:42:10,478 INFO L93 Difference]: Finished difference Result 35 states and 41 transitions. [2022-04-27 18:42:10,478 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 41 transitions. [2022-04-27 18:42:10,478 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 18:42:10,479 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 18:42:10,479 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-27 18:42:10,479 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-27 18:42:10,481 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 18:42:10,481 INFO L93 Difference]: Finished difference Result 35 states and 41 transitions. [2022-04-27 18:42:10,481 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 41 transitions. [2022-04-27 18:42:10,482 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 18:42:10,482 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 18:42:10,482 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 18:42:10,482 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 18:42:10,482 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-27 18:42:10,483 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 36 transitions. [2022-04-27 18:42:10,484 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 36 transitions. Word has length 23 [2022-04-27 18:42:10,484 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 18:42:10,484 INFO L495 AbstractCegarLoop]: Abstraction has 32 states and 36 transitions. [2022-04-27 18:42:10,484 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (3), 1 states have call predecessors, (3), 1 states have call successors, (3) [2022-04-27 18:42:10,484 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 36 transitions. [2022-04-27 18:42:10,485 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-27 18:42:10,485 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 18:42:10,485 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 18:42:10,507 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-27 18:42:10,700 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 18:42:10,700 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 18:42:10,701 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 18:42:10,701 INFO L85 PathProgramCache]: Analyzing trace with hash 1179905874, now seen corresponding path program 1 times [2022-04-27 18:42:10,701 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 18:42:10,701 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2036227838] [2022-04-27 18:42:10,701 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 18:42:10,701 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 18:42:10,733 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 18:42:10,733 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [951127446] [2022-04-27 18:42:10,734 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 18:42:10,734 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 18:42:10,734 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 18:42:10,735 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-27 18:42:10,759 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-27 18:42:10,792 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 18:42:10,794 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-27 18:42:10,813 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 18:42:10,814 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 18:42:11,018 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-27 18:42:11,019 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-27 18:42:11,019 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-27 18:42:11,019 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-27 18:42:11,019 INFO L272 TraceCheckUtils]: 4: Hoare triple {597#true} [71] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {597#true} is VALID [2022-04-27 18:42:11,019 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-27 18:42:11,020 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-27 18:42:11,020 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-27 18:42:11,020 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-27 18:42:11,020 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-27 18:42:11,020 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-27 18:42:11,021 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-27 18:42:11,021 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-27 18:42:11,021 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-27 18:42:11,021 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-27 18:42:11,021 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-27 18:42:11,022 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-27 18:42:11,022 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-27 18:42:11,022 INFO L290 TraceCheckUtils]: 18: Hoare triple {597#true} [87] L34-1-->L35: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {597#true} is VALID [2022-04-27 18:42:11,022 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-27 18:42:11,023 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-27 18:42:11,023 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-27 18:42:11,024 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-27 18:42:11,025 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-27 18:42:11,025 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-27 18:42:11,026 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-27 18:42:11,026 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-27 18:42:11,027 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-27 18:42:11,027 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-27 18:42:11,027 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-27 18:42:11,027 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 18:42:11,479 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-27 18:42:11,479 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-27 18:42:11,480 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-27 18:42:11,481 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-27 18:42:11,481 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-27 18:42:11,485 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-27 18:42:11,485 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-27 18:42:11,485 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-27 18:42:11,486 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-27 18:42:11,486 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-27 18:42:11,486 INFO L290 TraceCheckUtils]: 18: Hoare triple {597#true} [87] L34-1-->L35: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {597#true} is VALID [2022-04-27 18:42:11,487 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-27 18:42:11,487 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-27 18:42:11,487 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-27 18:42:11,487 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-27 18:42:11,487 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-27 18:42:11,488 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-27 18:42:11,488 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-27 18:42:11,488 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-27 18:42:11,488 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-27 18:42:11,488 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-27 18:42:11,489 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-27 18:42:11,489 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-27 18:42:11,489 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-27 18:42:11,489 INFO L272 TraceCheckUtils]: 4: Hoare triple {597#true} [71] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {597#true} is VALID [2022-04-27 18:42:11,489 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-27 18:42:11,490 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-27 18:42:11,490 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-27 18:42:11,490 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-27 18:42:11,490 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-27 18:42:11,490 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 18:42:11,491 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2036227838] [2022-04-27 18:42:11,491 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 18:42:11,491 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [951127446] [2022-04-27 18:42:11,491 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [951127446] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 18:42:11,491 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 18:42:11,491 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-27 18:42:11,491 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [321976909] [2022-04-27 18:42:11,491 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 18:42:11,492 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-27 18:42:11,492 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 18:42:11,492 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-27 18:42:11,515 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-27 18:42:11,515 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-27 18:42:11,515 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 18:42:11,516 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-27 18:42:11,516 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=67, Unknown=0, NotChecked=0, Total=90 [2022-04-27 18:42:11,516 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-27 18:42:11,899 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 18:42:11,899 INFO L93 Difference]: Finished difference Result 37 states and 40 transitions. [2022-04-27 18:42:11,899 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-27 18:42:11,900 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-27 18:42:11,900 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 18:42:11,900 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-27 18:42:11,902 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 34 transitions. [2022-04-27 18:42:11,902 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-27 18:42:11,904 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 34 transitions. [2022-04-27 18:42:11,904 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 34 transitions. [2022-04-27 18:42:11,941 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-27 18:42:11,943 INFO L225 Difference]: With dead ends: 37 [2022-04-27 18:42:11,943 INFO L226 Difference]: Without dead ends: 34 [2022-04-27 18:42:11,943 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 60 GetRequests, 48 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=41, Invalid=115, Unknown=0, NotChecked=0, Total=156 [2022-04-27 18:42:11,944 INFO L413 NwaCegarLoop]: 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-27 18:42:11,944 INFO L414 NwaCegarLoop]: 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-27 18:42:11,945 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-27 18:42:11,947 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 29. [2022-04-27 18:42:11,947 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 18:42:11,947 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-27 18:42:11,948 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-27 18:42:11,948 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-27 18:42:11,949 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 18:42:11,950 INFO L93 Difference]: Finished difference Result 34 states and 36 transitions. [2022-04-27 18:42:11,950 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 36 transitions. [2022-04-27 18:42:11,950 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 18:42:11,950 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 18:42:11,950 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-27 18:42:11,950 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-27 18:42:11,952 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 18:42:11,952 INFO L93 Difference]: Finished difference Result 34 states and 36 transitions. [2022-04-27 18:42:11,952 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 36 transitions. [2022-04-27 18:42:11,953 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 18:42:11,953 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 18:42:11,953 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 18:42:11,953 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 18:42:11,953 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-27 18:42:11,954 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 31 transitions. [2022-04-27 18:42:11,954 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 31 transitions. Word has length 29 [2022-04-27 18:42:11,954 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 18:42:11,955 INFO L495 AbstractCegarLoop]: Abstraction has 29 states and 31 transitions. [2022-04-27 18:42:11,955 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.111111111111111) internal successors, (19), 7 states have internal predecessors, (19), 2 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 3 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-27 18:42:11,955 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 31 transitions. [2022-04-27 18:42:11,955 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2022-04-27 18:42:11,956 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 18:42:11,956 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 18:42:11,980 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Ended with exit code 0 [2022-04-27 18:42:12,178 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 18:42:12,179 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 18:42:12,179 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 18:42:12,179 INFO L85 PathProgramCache]: Analyzing trace with hash 1668946595, now seen corresponding path program 1 times [2022-04-27 18:42:12,179 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 18:42:12,179 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1427699229] [2022-04-27 18:42:12,179 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 18:42:12,180 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 18:42:12,193 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 18:42:12,193 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [391127699] [2022-04-27 18:42:12,193 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 18:42:12,193 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 18:42:12,193 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 18:42:12,194 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-27 18:42:12,222 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-27 18:42:12,241 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 18:42:12,242 INFO L263 TraceCheckSpWp]: Trace formula consists of 113 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-27 18:42:12,255 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 18:42:12,257 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 18:42:12,408 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-27 18:42:12,409 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-27 18:42:12,410 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-27 18:42:12,410 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-27 18:42:12,411 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-27 18:42:12,411 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-27 18:42:12,412 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-27 18:42:12,413 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-27 18:42:12,414 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-27 18:42:12,414 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-27 18:42:12,415 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-27 18:42:12,416 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-27 18:42:12,416 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-27 18:42:12,416 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-27 18:42:12,417 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-27 18:42:12,417 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-27 18:42:12,418 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-27 18:42:12,419 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-27 18:42:12,419 INFO L290 TraceCheckUtils]: 18: Hoare triple {977#(<= ~counter~0 1)} [87] L34-1-->L35: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {977#(<= ~counter~0 1)} is VALID [2022-04-27 18:42:12,420 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-27 18:42:12,421 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-27 18:42:12,421 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-27 18:42:12,421 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-27 18:42:12,422 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-27 18:42:12,422 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-27 18:42:12,423 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-27 18:42:12,423 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-27 18:42:12,424 INFO L290 TraceCheckUtils]: 27: Hoare triple {1005#(<= |main_#t~post6| 1)} [86] L34-1-->L34-3: Formula: (not (< |v_main_#t~post6_3| 10)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {921#false} is VALID [2022-04-27 18:42:12,424 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-27 18:42:12,424 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-27 18:42:12,424 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-27 18:42:12,424 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-27 18:42:12,425 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-27 18:42:12,425 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 18:42:12,599 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-27 18:42:12,599 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-27 18:42:12,600 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-27 18:42:12,600 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-27 18:42:12,600 INFO L290 TraceCheckUtils]: 27: Hoare triple {1033#(< |main_#t~post6| 10)} [86] L34-1-->L34-3: Formula: (not (< |v_main_#t~post6_3| 10)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {921#false} is VALID [2022-04-27 18:42:12,601 INFO L290 TraceCheckUtils]: 26: Hoare triple {1037#(< ~counter~0 10)} [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| 10)} is VALID [2022-04-27 18:42:12,601 INFO L290 TraceCheckUtils]: 25: Hoare triple {1037#(< ~counter~0 10)} [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 10)} is VALID [2022-04-27 18:42:12,601 INFO L290 TraceCheckUtils]: 24: Hoare triple {1037#(< ~counter~0 10)} [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 10)} is VALID [2022-04-27 18:42:12,602 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {920#true} {1037#(< ~counter~0 10)} [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 10)} is VALID [2022-04-27 18:42:12,602 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-27 18:42:12,602 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-27 18:42:12,602 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-27 18:42:12,603 INFO L272 TraceCheckUtils]: 19: Hoare triple {1037#(< ~counter~0 10)} [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-27 18:42:12,611 INFO L290 TraceCheckUtils]: 18: Hoare triple {1037#(< ~counter~0 10)} [87] L34-1-->L35: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1037#(< ~counter~0 10)} is VALID [2022-04-27 18:42:12,612 INFO L290 TraceCheckUtils]: 17: Hoare triple {1065#(< ~counter~0 9)} [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 10)} is VALID [2022-04-27 18:42:12,612 INFO L290 TraceCheckUtils]: 16: Hoare triple {1065#(< ~counter~0 9)} [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 9)} is VALID [2022-04-27 18:42:12,618 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {920#true} {1065#(< ~counter~0 9)} [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 9)} is VALID [2022-04-27 18:42:12,618 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-27 18:42:12,619 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-27 18:42:12,619 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-27 18:42:12,619 INFO L272 TraceCheckUtils]: 11: Hoare triple {1065#(< ~counter~0 9)} [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-27 18:42:12,621 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {920#true} {1065#(< ~counter~0 9)} [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 9)} is VALID [2022-04-27 18:42:12,621 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-27 18:42:12,621 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-27 18:42:12,621 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-27 18:42:12,622 INFO L272 TraceCheckUtils]: 6: Hoare triple {1065#(< ~counter~0 9)} [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-27 18:42:12,625 INFO L290 TraceCheckUtils]: 5: Hoare triple {1065#(< ~counter~0 9)} [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 9)} is VALID [2022-04-27 18:42:12,625 INFO L272 TraceCheckUtils]: 4: Hoare triple {1065#(< ~counter~0 9)} [71] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1065#(< ~counter~0 9)} is VALID [2022-04-27 18:42:12,626 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1065#(< ~counter~0 9)} {920#true} [101] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1065#(< ~counter~0 9)} is VALID [2022-04-27 18:42:12,626 INFO L290 TraceCheckUtils]: 2: Hoare triple {1065#(< ~counter~0 9)} [75] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1065#(< ~counter~0 9)} is VALID [2022-04-27 18:42:12,627 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 9)} is VALID [2022-04-27 18:42:12,627 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-27 18:42:12,627 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-27 18:42:12,628 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 18:42:12,628 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1427699229] [2022-04-27 18:42:12,628 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 18:42:12,628 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [391127699] [2022-04-27 18:42:12,628 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [391127699] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 18:42:12,628 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 18:42:12,628 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-27 18:42:12,628 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [120371694] [2022-04-27 18:42:12,628 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 18:42:12,629 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-27 18:42:12,629 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 18:42:12,630 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-27 18:42:12,698 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-27 18:42:12,699 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-27 18:42:12,699 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 18:42:12,699 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-27 18:42:12,699 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-27 18:42:12,700 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-27 18:42:12,879 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 18:42:12,880 INFO L93 Difference]: Finished difference Result 56 states and 61 transitions. [2022-04-27 18:42:12,880 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-27 18:42:12,880 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-27 18:42:12,880 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 18:42:12,880 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-27 18:42:12,882 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 63 transitions. [2022-04-27 18:42:12,883 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-27 18:42:12,885 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 63 transitions. [2022-04-27 18:42:12,885 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 63 transitions. [2022-04-27 18:42:12,943 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-27 18:42:12,944 INFO L225 Difference]: With dead ends: 56 [2022-04-27 18:42:12,945 INFO L226 Difference]: Without dead ends: 56 [2022-04-27 18:42:12,945 INFO L412 NwaCegarLoop]: 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-27 18:42:12,946 INFO L413 NwaCegarLoop]: 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-27 18:42:12,946 INFO L414 NwaCegarLoop]: 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-27 18:42:12,946 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 56 states. [2022-04-27 18:42:12,950 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 56 to 56. [2022-04-27 18:42:12,950 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 18:42:12,950 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-27 18:42:12,951 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-27 18:42:12,954 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-27 18:42:12,960 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 18:42:12,960 INFO L93 Difference]: Finished difference Result 56 states and 61 transitions. [2022-04-27 18:42:12,960 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 61 transitions. [2022-04-27 18:42:12,962 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 18:42:12,962 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 18:42:12,963 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-27 18:42:12,963 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-27 18:42:12,969 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 18:42:12,969 INFO L93 Difference]: Finished difference Result 56 states and 61 transitions. [2022-04-27 18:42:12,969 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 61 transitions. [2022-04-27 18:42:12,969 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 18:42:12,969 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 18:42:12,970 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 18:42:12,970 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 18:42:12,970 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-27 18:42:12,972 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 61 transitions. [2022-04-27 18:42:12,972 INFO L78 Accepts]: Start accepts. Automaton has 56 states and 61 transitions. Word has length 32 [2022-04-27 18:42:12,972 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 18:42:12,972 INFO L495 AbstractCegarLoop]: Abstraction has 56 states and 61 transitions. [2022-04-27 18:42:12,972 INFO L496 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-27 18:42:12,972 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 61 transitions. [2022-04-27 18:42:12,973 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 60 [2022-04-27 18:42:12,973 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 18:42:12,973 INFO L195 NwaCegarLoop]: 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-27 18:42:12,992 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-27 18:42:13,174 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 18:42:13,174 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 18:42:13,174 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 18:42:13,174 INFO L85 PathProgramCache]: Analyzing trace with hash -906969448, now seen corresponding path program 2 times [2022-04-27 18:42:13,175 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 18:42:13,175 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [716806891] [2022-04-27 18:42:13,175 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 18:42:13,175 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 18:42:13,196 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 18:42:13,196 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2098595076] [2022-04-27 18:42:13,196 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-27 18:42:13,196 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 18:42:13,197 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 18:42:13,198 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-27 18:42:13,209 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-27 18:42:13,269 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-27 18:42:13,269 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-27 18:42:13,270 INFO L263 TraceCheckSpWp]: Trace formula consists of 173 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-27 18:42:13,291 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-27 18:42:13,293 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-27 18:42:13,616 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-27 18:42:13,617 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-27 18:42:13,617 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-27 18:42:13,617 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-27 18:42:13,618 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-27 18:42:13,618 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-27 18:42:13,619 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-27 18:42:13,619 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-27 18:42:13,619 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-27 18:42:13,623 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-27 18:42:13,627 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-27 18:42:13,628 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-27 18:42:13,628 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-27 18:42:13,629 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-27 18:42:13,629 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-27 18:42:13,630 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-27 18:42:13,630 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-27 18:42:13,631 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-27 18:42:13,631 INFO L290 TraceCheckUtils]: 18: Hoare triple {1406#(<= ~counter~0 1)} [87] L34-1-->L35: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1406#(<= ~counter~0 1)} is VALID [2022-04-27 18:42:13,632 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-27 18:42:13,633 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-27 18:42:13,633 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-27 18:42:13,633 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-27 18:42:13,634 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-27 18:42:13,635 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-27 18:42:13,635 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-27 18:42:13,636 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-27 18:42:13,636 INFO L290 TraceCheckUtils]: 27: Hoare triple {1434#(<= ~counter~0 2)} [87] L34-1-->L35: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1434#(<= ~counter~0 2)} is VALID [2022-04-27 18:42:13,637 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-27 18:42:13,638 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-27 18:42:13,638 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-27 18:42:13,638 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-27 18:42:13,639 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-27 18:42:13,640 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-27 18:42:13,640 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-27 18:42:13,641 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-27 18:42:13,642 INFO L290 TraceCheckUtils]: 36: Hoare triple {1462#(<= ~counter~0 3)} [87] L34-1-->L35: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1462#(<= ~counter~0 3)} is VALID [2022-04-27 18:42:13,647 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-27 18:42:13,648 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-27 18:42:13,649 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-27 18:42:13,649 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-27 18:42:13,650 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-27 18:42:13,651 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-27 18:42:13,651 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-27 18:42:13,652 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-27 18:42:13,652 INFO L290 TraceCheckUtils]: 45: Hoare triple {1490#(<= ~counter~0 4)} [87] L34-1-->L35: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1490#(<= ~counter~0 4)} is VALID [2022-04-27 18:42:13,653 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-27 18:42:13,653 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-27 18:42:13,654 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-27 18:42:13,654 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-27 18:42:13,655 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-27 18:42:13,655 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-27 18:42:13,655 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-27 18:42:13,656 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-27 18:42:13,656 INFO L290 TraceCheckUtils]: 54: Hoare triple {1518#(<= |main_#t~post6| 4)} [86] L34-1-->L34-3: Formula: (not (< |v_main_#t~post6_3| 10)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1350#false} is VALID [2022-04-27 18:42:13,657 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-27 18:42:13,660 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-27 18:42:13,661 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-27 18:42:13,668 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-27 18:42:13,668 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-27 18:42:13,668 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-27 18:42:14,030 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-27 18:42:14,031 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-27 18:42:14,031 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-27 18:42:14,031 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-27 18:42:14,032 INFO L290 TraceCheckUtils]: 54: Hoare triple {1546#(< |main_#t~post6| 10)} [86] L34-1-->L34-3: Formula: (not (< |v_main_#t~post6_3| 10)) InVars {main_#t~post6=|v_main_#t~post6_3|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1350#false} is VALID [2022-04-27 18:42:14,032 INFO L290 TraceCheckUtils]: 53: Hoare triple {1550#(< ~counter~0 10)} [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] {1546#(< |main_#t~post6| 10)} is VALID [2022-04-27 18:42:14,033 INFO L290 TraceCheckUtils]: 52: Hoare triple {1550#(< ~counter~0 10)} [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] {1550#(< ~counter~0 10)} is VALID [2022-04-27 18:42:14,033 INFO L290 TraceCheckUtils]: 51: Hoare triple {1550#(< ~counter~0 10)} [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[] {1550#(< ~counter~0 10)} is VALID [2022-04-27 18:42:14,034 INFO L284 TraceCheckUtils]: 50: Hoare quadruple {1349#true} {1550#(< ~counter~0 10)} [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] {1550#(< ~counter~0 10)} is VALID [2022-04-27 18:42:14,034 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-27 18:42:14,034 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-27 18:42:14,034 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-27 18:42:14,034 INFO L272 TraceCheckUtils]: 46: Hoare triple {1550#(< ~counter~0 10)} [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-27 18:42:14,035 INFO L290 TraceCheckUtils]: 45: Hoare triple {1550#(< ~counter~0 10)} [87] L34-1-->L35: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1550#(< ~counter~0 10)} is VALID [2022-04-27 18:42:14,035 INFO L290 TraceCheckUtils]: 44: Hoare triple {1578#(< ~counter~0 9)} [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] {1550#(< ~counter~0 10)} is VALID [2022-04-27 18:42:14,036 INFO L290 TraceCheckUtils]: 43: Hoare triple {1578#(< ~counter~0 9)} [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] {1578#(< ~counter~0 9)} is VALID [2022-04-27 18:42:14,036 INFO L290 TraceCheckUtils]: 42: Hoare triple {1578#(< ~counter~0 9)} [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[] {1578#(< ~counter~0 9)} is VALID [2022-04-27 18:42:14,037 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {1349#true} {1578#(< ~counter~0 9)} [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] {1578#(< ~counter~0 9)} is VALID [2022-04-27 18:42:14,037 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-27 18:42:14,037 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-27 18:42:14,038 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-27 18:42:14,038 INFO L272 TraceCheckUtils]: 37: Hoare triple {1578#(< ~counter~0 9)} [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-27 18:42:14,038 INFO L290 TraceCheckUtils]: 36: Hoare triple {1578#(< ~counter~0 9)} [87] L34-1-->L35: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1578#(< ~counter~0 9)} is VALID [2022-04-27 18:42:14,039 INFO L290 TraceCheckUtils]: 35: Hoare triple {1606#(< ~counter~0 8)} [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] {1578#(< ~counter~0 9)} is VALID [2022-04-27 18:42:14,039 INFO L290 TraceCheckUtils]: 34: Hoare triple {1606#(< ~counter~0 8)} [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] {1606#(< ~counter~0 8)} is VALID [2022-04-27 18:42:14,040 INFO L290 TraceCheckUtils]: 33: Hoare triple {1606#(< ~counter~0 8)} [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[] {1606#(< ~counter~0 8)} is VALID [2022-04-27 18:42:14,040 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1349#true} {1606#(< ~counter~0 8)} [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] {1606#(< ~counter~0 8)} is VALID [2022-04-27 18:42:14,041 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-27 18:42:14,041 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-27 18:42:14,041 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-27 18:42:14,041 INFO L272 TraceCheckUtils]: 28: Hoare triple {1606#(< ~counter~0 8)} [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-27 18:42:14,041 INFO L290 TraceCheckUtils]: 27: Hoare triple {1606#(< ~counter~0 8)} [87] L34-1-->L35: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1606#(< ~counter~0 8)} is VALID [2022-04-27 18:42:14,042 INFO L290 TraceCheckUtils]: 26: Hoare triple {1634#(< ~counter~0 7)} [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] {1606#(< ~counter~0 8)} is VALID [2022-04-27 18:42:14,042 INFO L290 TraceCheckUtils]: 25: Hoare triple {1634#(< ~counter~0 7)} [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] {1634#(< ~counter~0 7)} is VALID [2022-04-27 18:42:14,043 INFO L290 TraceCheckUtils]: 24: Hoare triple {1634#(< ~counter~0 7)} [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[] {1634#(< ~counter~0 7)} is VALID [2022-04-27 18:42:14,043 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1349#true} {1634#(< ~counter~0 7)} [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] {1634#(< ~counter~0 7)} is VALID [2022-04-27 18:42:14,044 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-27 18:42:14,044 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-27 18:42:14,044 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-27 18:42:14,044 INFO L272 TraceCheckUtils]: 19: Hoare triple {1634#(< ~counter~0 7)} [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-27 18:42:14,044 INFO L290 TraceCheckUtils]: 18: Hoare triple {1634#(< ~counter~0 7)} [87] L34-1-->L35: Formula: (< |v_main_#t~post6_5| 10) InVars {main_#t~post6=|v_main_#t~post6_5|} OutVars{} AuxVars[] AssignedVars[main_#t~post6] {1634#(< ~counter~0 7)} is VALID [2022-04-27 18:42:14,045 INFO L290 TraceCheckUtils]: 17: Hoare triple {1662#(< ~counter~0 6)} [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] {1634#(< ~counter~0 7)} is VALID [2022-04-27 18:42:14,045 INFO L290 TraceCheckUtils]: 16: Hoare triple {1662#(< ~counter~0 6)} [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] {1662#(< ~counter~0 6)} is VALID [2022-04-27 18:42:14,046 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1349#true} {1662#(< ~counter~0 6)} [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] {1662#(< ~counter~0 6)} is VALID [2022-04-27 18:42:14,046 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-27 18:42:14,046 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-27 18:42:14,046 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-27 18:42:14,046 INFO L272 TraceCheckUtils]: 11: Hoare triple {1662#(< ~counter~0 6)} [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-27 18:42:14,047 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1349#true} {1662#(< ~counter~0 6)} [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] {1662#(< ~counter~0 6)} is VALID [2022-04-27 18:42:14,047 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-27 18:42:14,047 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-27 18:42:14,047 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-27 18:42:14,047 INFO L272 TraceCheckUtils]: 6: Hoare triple {1662#(< ~counter~0 6)} [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-27 18:42:14,048 INFO L290 TraceCheckUtils]: 5: Hoare triple {1662#(< ~counter~0 6)} [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] {1662#(< ~counter~0 6)} is VALID [2022-04-27 18:42:14,048 INFO L272 TraceCheckUtils]: 4: Hoare triple {1662#(< ~counter~0 6)} [71] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1662#(< ~counter~0 6)} is VALID [2022-04-27 18:42:14,048 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1662#(< ~counter~0 6)} {1349#true} [101] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1662#(< ~counter~0 6)} is VALID [2022-04-27 18:42:14,049 INFO L290 TraceCheckUtils]: 2: Hoare triple {1662#(< ~counter~0 6)} [75] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {1662#(< ~counter~0 6)} is VALID [2022-04-27 18:42:14,049 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] {1662#(< ~counter~0 6)} is VALID [2022-04-27 18:42:14,049 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-27 18:42:14,050 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-27 18:42:14,050 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-27 18:42:14,050 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [716806891] [2022-04-27 18:42:14,050 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-27 18:42:14,050 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2098595076] [2022-04-27 18:42:14,050 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2098595076] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-27 18:42:14,050 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-27 18:42:14,051 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-27 18:42:14,051 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [327391122] [2022-04-27 18:42:14,051 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-27 18:42:14,052 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 4.857142857142857) internal successors, (68), 14 states have internal predecessors, (68), 12 states have call successors, (16), 8 states have call predecessors, (16), 7 states have return successors, (14), 10 states have call predecessors, (14), 11 states have call successors, (14) Word has length 59 [2022-04-27 18:42:14,052 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-27 18:42:14,052 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 4.857142857142857) internal successors, (68), 14 states have internal predecessors, (68), 12 states have call successors, (16), 8 states have call predecessors, (16), 7 states have return successors, (14), 10 states have call predecessors, (14), 11 states have call successors, (14) [2022-04-27 18:42:14,126 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 98 edges. 98 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 18:42:14,126 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-27 18:42:14,126 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-27 18:42:14,127 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-27 18:42:14,127 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-27 18:42:14,127 INFO L87 Difference]: Start difference. First operand 56 states and 61 transitions. Second operand has 14 states, 14 states have (on average 4.857142857142857) internal successors, (68), 14 states have internal predecessors, (68), 12 states have call successors, (16), 8 states have call predecessors, (16), 7 states have return successors, (14), 10 states have call predecessors, (14), 11 states have call successors, (14) [2022-04-27 18:42:14,505 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 18:42:14,505 INFO L93 Difference]: Finished difference Result 110 states and 121 transitions. [2022-04-27 18:42:14,505 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-27 18:42:14,506 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 4.857142857142857) internal successors, (68), 14 states have internal predecessors, (68), 12 states have call successors, (16), 8 states have call predecessors, (16), 7 states have return successors, (14), 10 states have call predecessors, (14), 11 states have call successors, (14) Word has length 59 [2022-04-27 18:42:14,506 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-27 18:42:14,507 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 4.857142857142857) internal successors, (68), 14 states have internal predecessors, (68), 12 states have call successors, (16), 8 states have call predecessors, (16), 7 states have return successors, (14), 10 states have call predecessors, (14), 11 states have call successors, (14) [2022-04-27 18:42:14,520 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 126 transitions. [2022-04-27 18:42:14,520 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 4.857142857142857) internal successors, (68), 14 states have internal predecessors, (68), 12 states have call successors, (16), 8 states have call predecessors, (16), 7 states have return successors, (14), 10 states have call predecessors, (14), 11 states have call successors, (14) [2022-04-27 18:42:14,524 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 126 transitions. [2022-04-27 18:42:14,524 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 126 transitions. [2022-04-27 18:42:14,660 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 126 edges. 126 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-27 18:42:14,662 INFO L225 Difference]: With dead ends: 110 [2022-04-27 18:42:14,663 INFO L226 Difference]: Without dead ends: 110 [2022-04-27 18:42:14,663 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 126 GetRequests, 105 SyntacticMatches, 0 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 55 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=184, Invalid=322, Unknown=0, NotChecked=0, Total=506 [2022-04-27 18:42:14,664 INFO L413 NwaCegarLoop]: 35 mSDtfsCounter, 85 mSDsluCounter, 113 mSDsCounter, 0 mSdLazyCounter, 49 mSolverCounterSat, 37 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 85 SdHoareTripleChecker+Valid, 148 SdHoareTripleChecker+Invalid, 86 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 37 IncrementalHoareTripleChecker+Valid, 49 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-27 18:42:14,664 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [85 Valid, 148 Invalid, 86 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [37 Valid, 49 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-27 18:42:14,666 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 110 states. [2022-04-27 18:42:14,672 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 110 to 110. [2022-04-27 18:42:14,672 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-27 18:42:14,672 INFO L82 GeneralOperation]: Start isEquivalent. First operand 110 states. Second operand has 110 states, 82 states have (on average 1.1341463414634145) internal successors, (93), 82 states have internal predecessors, (93), 15 states have call successors, (15), 14 states have call predecessors, (15), 12 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-27 18:42:14,673 INFO L74 IsIncluded]: Start isIncluded. First operand 110 states. Second operand has 110 states, 82 states have (on average 1.1341463414634145) internal successors, (93), 82 states have internal predecessors, (93), 15 states have call successors, (15), 14 states have call predecessors, (15), 12 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-27 18:42:14,673 INFO L87 Difference]: Start difference. First operand 110 states. Second operand has 110 states, 82 states have (on average 1.1341463414634145) internal successors, (93), 82 states have internal predecessors, (93), 15 states have call successors, (15), 14 states have call predecessors, (15), 12 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-27 18:42:14,677 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 18:42:14,677 INFO L93 Difference]: Finished difference Result 110 states and 121 transitions. [2022-04-27 18:42:14,677 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 121 transitions. [2022-04-27 18:42:14,677 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 18:42:14,677 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 18:42:14,678 INFO L74 IsIncluded]: Start isIncluded. First operand has 110 states, 82 states have (on average 1.1341463414634145) internal successors, (93), 82 states have internal predecessors, (93), 15 states have call successors, (15), 14 states have call predecessors, (15), 12 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 110 states. [2022-04-27 18:42:14,678 INFO L87 Difference]: Start difference. First operand has 110 states, 82 states have (on average 1.1341463414634145) internal successors, (93), 82 states have internal predecessors, (93), 15 states have call successors, (15), 14 states have call predecessors, (15), 12 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 110 states. [2022-04-27 18:42:14,682 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-27 18:42:14,682 INFO L93 Difference]: Finished difference Result 110 states and 121 transitions. [2022-04-27 18:42:14,682 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 121 transitions. [2022-04-27 18:42:14,682 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-27 18:42:14,682 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-27 18:42:14,683 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-27 18:42:14,683 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-27 18:42:14,683 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 110 states, 82 states have (on average 1.1341463414634145) internal successors, (93), 82 states have internal predecessors, (93), 15 states have call successors, (15), 14 states have call predecessors, (15), 12 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-27 18:42:14,686 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 110 states to 110 states and 121 transitions. [2022-04-27 18:42:14,686 INFO L78 Accepts]: Start accepts. Automaton has 110 states and 121 transitions. Word has length 59 [2022-04-27 18:42:14,686 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-27 18:42:14,686 INFO L495 AbstractCegarLoop]: Abstraction has 110 states and 121 transitions. [2022-04-27 18:42:14,687 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 4.857142857142857) internal successors, (68), 14 states have internal predecessors, (68), 12 states have call successors, (16), 8 states have call predecessors, (16), 7 states have return successors, (14), 10 states have call predecessors, (14), 11 states have call successors, (14) [2022-04-27 18:42:14,687 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 121 transitions. [2022-04-27 18:42:14,689 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 114 [2022-04-27 18:42:14,689 INFO L187 NwaCegarLoop]: Found error trace [2022-04-27 18:42:14,689 INFO L195 NwaCegarLoop]: trace histogram [11, 11, 10, 10, 10, 10, 10, 10, 10, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-27 18:42:14,709 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-27 18:42:14,903 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 18:42:14,903 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-27 18:42:14,904 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-27 18:42:14,904 INFO L85 PathProgramCache]: Analyzing trace with hash 191644600, now seen corresponding path program 3 times [2022-04-27 18:42:14,904 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-27 18:42:14,904 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [946847726] [2022-04-27 18:42:14,904 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-27 18:42:14,904 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-27 18:42:14,928 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-27 18:42:14,928 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [757904338] [2022-04-27 18:42:14,928 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-04-27 18:42:14,928 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 18:42:14,928 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-27 18:42:14,929 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-27 18:42:14,932 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-27 18:42:17,124 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 11 check-sat command(s) [2022-04-27 18:42:17,125 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-04-27 18:42:17,125 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-04-27 18:42:17,163 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-04-27 18:42:17,218 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-04-27 18:42:17,218 INFO L271 BasicCegarLoop]: Counterexample is feasible [2022-04-27 18:42:17,219 INFO L805 garLoopResultBuilder]: Registering result UNSAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-27 18:42:17,229 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-27 18:42:17,427 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-27 18:42:17,430 INFO L356 BasicCegarLoop]: Path program histogram: [3, 1, 1, 1, 1] [2022-04-27 18:42:17,433 INFO L176 ceAbstractionStarter]: Computing trace abstraction results [2022-04-27 18:42:17,505 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 27.04 06:42:17 BasicIcfg [2022-04-27 18:42:17,505 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-27 18:42:17,506 INFO L158 Benchmark]: Toolchain (without parser) took 18187.82ms. Allocated memory was 180.4MB in the beginning and 234.9MB in the end (delta: 54.5MB). Free memory was 125.4MB in the beginning and 173.2MB in the end (delta: -47.8MB). Peak memory consumption was 8.0MB. Max. memory is 8.0GB. [2022-04-27 18:42:17,506 INFO L158 Benchmark]: CDTParser took 0.13ms. Allocated memory is still 180.4MB. Free memory is still 141.5MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-27 18:42:17,507 INFO L158 Benchmark]: CACSL2BoogieTranslator took 312.28ms. Allocated memory was 180.4MB in the beginning and 234.9MB in the end (delta: 54.5MB). Free memory was 125.2MB in the beginning and 206.6MB in the end (delta: -81.4MB). Peak memory consumption was 10.6MB. Max. memory is 8.0GB. [2022-04-27 18:42:17,507 INFO L158 Benchmark]: Boogie Preprocessor took 40.00ms. Allocated memory is still 234.9MB. Free memory was 206.6MB in the beginning and 205.1MB in the end (delta: 1.6MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-27 18:42:17,507 INFO L158 Benchmark]: RCFGBuilder took 292.54ms. Allocated memory is still 234.9MB. Free memory was 205.1MB in the beginning and 191.9MB in the end (delta: 13.1MB). Peak memory consumption was 13.6MB. Max. memory is 8.0GB. [2022-04-27 18:42:17,507 INFO L158 Benchmark]: IcfgTransformer took 73.25ms. Allocated memory is still 234.9MB. Free memory was 191.9MB in the beginning and 189.8MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-27 18:42:17,508 INFO L158 Benchmark]: TraceAbstraction took 17460.40ms. Allocated memory is still 234.9MB. Free memory was 189.3MB in the beginning and 173.2MB in the end (delta: 16.1MB). Peak memory consumption was 16.6MB. Max. memory is 8.0GB. [2022-04-27 18:42:17,509 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.13ms. Allocated memory is still 180.4MB. Free memory is still 141.5MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 312.28ms. Allocated memory was 180.4MB in the beginning and 234.9MB in the end (delta: 54.5MB). Free memory was 125.2MB in the beginning and 206.6MB in the end (delta: -81.4MB). Peak memory consumption was 10.6MB. Max. memory is 8.0GB. * Boogie Preprocessor took 40.00ms. Allocated memory is still 234.9MB. Free memory was 206.6MB in the beginning and 205.1MB in the end (delta: 1.6MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 292.54ms. Allocated memory is still 234.9MB. Free memory was 205.1MB in the beginning and 191.9MB in the end (delta: 13.1MB). Peak memory consumption was 13.6MB. Max. memory is 8.0GB. * IcfgTransformer took 73.25ms. Allocated memory is still 234.9MB. Free memory was 191.9MB in the beginning and 189.8MB in the end (delta: 2.1MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * TraceAbstraction took 17460.40ms. Allocated memory is still 234.9MB. Free memory was 189.3MB in the beginning and 173.2MB in the end (delta: 16.1MB). Peak memory consumption was 16.6MB. 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)=14, 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=2603, counter=0, R=52] [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=2603, counter=0, R=52] [L30] u = ((long long) 2 * R) + 1 [L31] v = 1 [L32] r = ((long long) R * R) - A VAL [\old(counter)=0, A=2603, counter=0, r=101, R=52, u=105, v=1] [L34] EXPR counter++ VAL [\old(counter)=0, A=2603, counter=1, counter++=0, R=52, r=101, u=105, v=1] [L34] COND TRUE counter++<10 [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=2603, counter=1, r=101, R=52, u=105, v=1] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=2603, counter=1, r=101, R=52, u=105, v=1] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=2603, counter=1, r=100, R=52, u=105, v=3] [L34] EXPR counter++ VAL [\old(counter)=0, A=2603, counter=2, counter++=1, R=52, r=100, u=105, v=3] [L34] COND TRUE counter++<10 [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=2603, counter=2, R=52, r=100, u=105, v=3] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=2603, counter=2, r=100, R=52, u=105, v=3] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=2603, counter=2, r=97, R=52, u=105, v=5] [L34] EXPR counter++ VAL [\old(counter)=0, A=2603, counter=3, counter++=2, r=97, R=52, u=105, v=5] [L34] COND TRUE counter++<10 [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=2603, counter=3, R=52, r=97, u=105, v=5] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=2603, counter=3, r=97, R=52, u=105, v=5] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=2603, counter=3, R=52, r=92, u=105, v=7] [L34] EXPR counter++ VAL [\old(counter)=0, A=2603, counter=4, counter++=3, R=52, r=92, u=105, v=7] [L34] COND TRUE counter++<10 [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=2603, counter=4, r=92, R=52, u=105, v=7] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=2603, counter=4, r=92, R=52, u=105, v=7] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=2603, counter=4, r=85, R=52, u=105, v=9] [L34] EXPR counter++ VAL [\old(counter)=0, A=2603, counter=5, counter++=4, r=85, R=52, u=105, v=9] [L34] COND TRUE counter++<10 [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=2603, counter=5, R=52, r=85, u=105, v=9] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=2603, counter=5, r=85, R=52, u=105, v=9] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=2603, counter=5, R=52, r=76, u=105, v=11] [L34] EXPR counter++ VAL [\old(counter)=0, A=2603, counter=6, counter++=5, r=76, R=52, u=105, v=11] [L34] COND TRUE counter++<10 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=1, \old(counter)=0, counter=6] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=6] [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=2603, counter=6, R=52, r=76, u=105, v=11] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=2603, counter=6, r=76, R=52, u=105, v=11] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=2603, counter=6, R=52, r=65, u=105, v=13] [L34] EXPR counter++ VAL [\old(counter)=0, A=2603, counter=7, counter++=6, R=52, r=65, u=105, v=13] [L34] COND TRUE counter++<10 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=1, \old(counter)=0, counter=7] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=7] [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=2603, counter=7, r=65, R=52, u=105, v=13] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=2603, counter=7, r=65, R=52, u=105, v=13] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=2603, counter=7, R=52, r=52, u=105, v=15] [L34] EXPR counter++ VAL [\old(counter)=0, A=2603, counter=8, counter++=7, R=52, r=52, u=105, v=15] [L34] COND TRUE counter++<10 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=1, \old(counter)=0, counter=8] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=8] [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=2603, counter=8, r=52, R=52, u=105, v=15] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=2603, counter=8, R=52, r=52, u=105, v=15] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=2603, counter=8, R=52, r=37, u=105, v=17] [L34] EXPR counter++ VAL [\old(counter)=0, A=2603, counter=9, counter++=8, R=52, r=37, u=105, v=17] [L34] COND TRUE counter++<10 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=1, \old(counter)=0, counter=9] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=9] [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=2603, counter=9, r=37, R=52, u=105, v=17] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=2603, counter=9, R=52, r=37, u=105, v=17] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=2603, counter=9, R=52, r=20, u=105, v=19] [L34] EXPR counter++ VAL [\old(counter)=0, A=2603, counter=10, counter++=9, R=52, r=20, u=105, v=19] [L34] COND TRUE counter++<10 [L35] CALL __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=1, \old(counter)=0, counter=10] [L12] COND FALSE !(!(cond)) VAL [\old(cond)=1, \old(counter)=0, cond=1, counter=10] [L35] RET __VERIFIER_assert(4*(A+r) == u*u - v*v - 2*u + 2*v) VAL [\old(counter)=0, A=2603, counter=10, R=52, r=20, u=105, v=19] [L36] COND FALSE !(!(r != 0)) VAL [\old(counter)=0, A=2603, counter=10, r=20, R=52, u=105, v=19] [L38] COND TRUE r > 0 [L39] r = r - v [L40] v = v + 2 VAL [\old(counter)=0, A=2603, counter=10, R=52, r=1, u=105, v=21] [L34] EXPR counter++ VAL [\old(counter)=0, A=2603, counter=11, counter++=10, R=52, r=1, u=105, v=21] [L34] COND FALSE !(counter++<10) [L48] CALL __VERIFIER_assert(((long long) 4*A) == u*u - v*v - 2*u + 2*v) VAL [\old(cond)=0, \old(counter)=0, counter=11] [L12] COND TRUE !(cond) VAL [\old(cond)=0, \old(counter)=0, cond=0, counter=11] [L14] reach_error() VAL [\old(cond)=0, \old(counter)=0, cond=0, counter=11] - StatisticsResult: Ultimate Automizer benchmark data CFG has 5 procedures, 30 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 17.3s, OverallIterations: 7, TraceHistogramMax: 11, PathProgramHistogramMax: 3, EmptinessCheckTime: 0.0s, AutomataDifference: 7.4s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 1 mSolverCounterUnknown, 149 SdHoareTripleChecker+Valid, 3.2s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 148 mSDsluCounter, 557 SdHoareTripleChecker+Invalid, 3.2s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 388 mSDsCounter, 65 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 183 IncrementalHoareTripleChecker+Invalid, 249 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 65 mSolverCounterUnsat, 169 mSDtfsCounter, 183 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 318 GetRequests, 270 SyntacticMatches, 1 SemanticMatches, 47 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 72 ImplicationChecksByTransitivity, 0.3s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=110occurred in iteration=6, InterpolantAutomatonStates: 51, 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.1s SsaConstructionTime, 2.4s SatisfiabilityAnalysisTime, 3.8s InterpolantComputationTime, 301 NumberOfCodeBlocks, 301 NumberOfCodeBlocksAsserted, 18 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-27 18:42:17,525 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Ended with exit code 0 Received shutdown request...