/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/fermat1-ll_valuebound50.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-e106359-m [2022-04-14 21:39:52,530 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-14 21:39:52,544 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-14 21:39:52,597 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-14 21:39:52,598 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-14 21:39:52,599 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-14 21:39:52,607 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-14 21:39:52,608 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-14 21:39:52,609 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-14 21:39:52,610 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-14 21:39:52,611 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-14 21:39:52,612 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-14 21:39:52,612 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-14 21:39:52,613 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-14 21:39:52,614 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-14 21:39:52,614 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-14 21:39:52,615 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-14 21:39:52,616 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-14 21:39:52,617 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-14 21:39:52,618 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-14 21:39:52,619 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-14 21:39:52,620 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-14 21:39:52,621 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-14 21:39:52,627 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-14 21:39:52,628 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-14 21:39:52,630 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-14 21:39:52,631 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-14 21:39:52,636 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-14 21:39:52,637 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-14 21:39:52,638 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-14 21:39:52,638 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-14 21:39:52,639 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-14 21:39:52,639 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-14 21:39:52,640 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-14 21:39:52,640 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-14 21:39:52,641 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-14 21:39:52,641 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-14 21:39:52,642 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-14 21:39:52,642 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-14 21:39:52,642 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-14 21:39:52,643 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-14 21:39:52,645 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-14 21:39:52,645 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/LoopAccelerationJordanC.epf [2022-04-14 21:39:52,656 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-14 21:39:52,656 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-14 21:39:52,657 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-14 21:39:52,657 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-14 21:39:52,658 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-14 21:39:52,658 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-14 21:39:52,658 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-14 21:39:52,658 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-14 21:39:52,658 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-14 21:39:52,658 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-14 21:39:52,658 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-14 21:39:52,659 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-14 21:39:52,659 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-14 21:39:52,661 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-14 21:39:52,662 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-14 21:39:52,662 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-14 21:39:52,662 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-14 21:39:52,662 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-14 21:39:52,662 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-14 21:39:52,662 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-14 21:39:52,663 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-04-14 21:39:52,665 INFO L136 SettingsManager]: Preferences of IcfgTransformer differ from their defaults: [2022-04-14 21:39:52,666 INFO L138 SettingsManager]: * TransformationType=LOOP_ACCELERATION_JORDAN WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-14 21:39:52,906 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-14 21:39:52,929 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-14 21:39:52,931 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-14 21:39:52,932 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-14 21:39:52,933 INFO L275 PluginConnector]: CDTParser initialized [2022-04-14 21:39:52,934 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/fermat1-ll_valuebound50.c [2022-04-14 21:39:52,986 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/f27815264/2cb8a7bc26fb46c4a46e70cc3d40781d/FLAGddf26cd05 [2022-04-14 21:39:53,386 INFO L306 CDTParser]: Found 1 translation units. [2022-04-14 21:39:53,387 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/fermat1-ll_valuebound50.c [2022-04-14 21:39:53,396 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/f27815264/2cb8a7bc26fb46c4a46e70cc3d40781d/FLAGddf26cd05 [2022-04-14 21:39:53,793 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/f27815264/2cb8a7bc26fb46c4a46e70cc3d40781d [2022-04-14 21:39:53,794 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-14 21:39:53,795 INFO L131 ToolchainWalker]: Walking toolchain with 5 elements. [2022-04-14 21:39:53,797 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-14 21:39:53,797 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-14 21:39:53,802 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-14 21:39:53,803 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.04 09:39:53" (1/1) ... [2022-04-14 21:39:53,804 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@6e2bdd80 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:39:53, skipping insertion in model container [2022-04-14 21:39:53,804 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 14.04 09:39:53" (1/1) ... [2022-04-14 21:39:53,809 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-14 21:39:53,825 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-14 21:39:54,000 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/fermat1-ll_valuebound50.c[535,548] [2022-04-14 21:39:54,030 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-14 21:39:54,044 INFO L203 MainTranslator]: Completed pre-run [2022-04-14 21:39:54,059 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/fermat1-ll_valuebound50.c[535,548] [2022-04-14 21:39:54,080 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-14 21:39:54,094 INFO L208 MainTranslator]: Completed translation [2022-04-14 21:39:54,095 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:39:54 WrapperNode [2022-04-14 21:39:54,095 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-14 21:39:54,096 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-14 21:39:54,096 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-14 21:39:54,096 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-14 21:39:54,104 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:39:54" (1/1) ... [2022-04-14 21:39:54,105 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:39:54" (1/1) ... [2022-04-14 21:39:54,117 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:39:54" (1/1) ... [2022-04-14 21:39:54,118 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:39:54" (1/1) ... [2022-04-14 21:39:54,133 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:39:54" (1/1) ... [2022-04-14 21:39:54,141 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:39:54" (1/1) ... [2022-04-14 21:39:54,146 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:39:54" (1/1) ... [2022-04-14 21:39:54,147 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-14 21:39:54,148 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-14 21:39:54,148 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-14 21:39:54,148 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-14 21:39:54,153 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:39:54" (1/1) ... [2022-04-14 21:39:54,159 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-14 21:39:54,168 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 21:39:54,189 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-14 21:39:54,208 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-14 21:39:54,226 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-14 21:39:54,226 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-14 21:39:54,227 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-14 21:39:54,227 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-14 21:39:54,227 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-14 21:39:54,228 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-14 21:39:54,228 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-14 21:39:54,228 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-14 21:39:54,228 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-14 21:39:54,228 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-14 21:39:54,228 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-14 21:39:54,228 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-14 21:39:54,229 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-14 21:39:54,229 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-14 21:39:54,229 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-14 21:39:54,229 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-14 21:39:54,229 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-14 21:39:54,229 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-14 21:39:54,229 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-14 21:39:54,229 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-14 21:39:54,278 INFO L234 CfgBuilder]: Building ICFG [2022-04-14 21:39:54,280 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-14 21:39:54,526 INFO L275 CfgBuilder]: Performing block encoding [2022-04-14 21:39:54,532 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-14 21:39:54,532 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-04-14 21:39:54,533 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 09:39:54 BoogieIcfgContainer [2022-04-14 21:39:54,534 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-14 21:39:54,534 INFO L113 PluginConnector]: ------------------------IcfgTransformer---------------------------- [2022-04-14 21:39:54,534 INFO L271 PluginConnector]: Initializing IcfgTransformer... [2022-04-14 21:39:54,535 INFO L275 PluginConnector]: IcfgTransformer initialized [2022-04-14 21:39:54,553 INFO L185 PluginConnector]: Executing the observer IcfgTransformationObserver from plugin IcfgTransformer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 09:39:54" (1/1) ... [2022-04-14 21:39:54,555 INFO L168 ansformationObserver]: Applying ICFG transformation LOOP_ACCELERATION_JORDAN [2022-04-14 21:39:54,595 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 14.04 09:39:54 BasicIcfg [2022-04-14 21:39:54,595 INFO L132 PluginConnector]: ------------------------ END IcfgTransformer---------------------------- [2022-04-14 21:39:54,597 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-14 21:39:54,597 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-14 21:39:54,599 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-14 21:39:54,599 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 14.04 09:39:53" (1/4) ... [2022-04-14 21:39:54,600 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@40191d4a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.04 09:39:54, skipping insertion in model container [2022-04-14 21:39:54,600 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 14.04 09:39:54" (2/4) ... [2022-04-14 21:39:54,600 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@40191d4a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 14.04 09:39:54, skipping insertion in model container [2022-04-14 21:39:54,600 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 14.04 09:39:54" (3/4) ... [2022-04-14 21:39:54,601 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@40191d4a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 14.04 09:39:54, skipping insertion in model container [2022-04-14 21:39:54,601 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.icfgtransformation CFG 14.04 09:39:54" (4/4) ... [2022-04-14 21:39:54,601 INFO L111 eAbstractionObserver]: Analyzing ICFG fermat1-ll_valuebound50.cJordan [2022-04-14 21:39:54,605 INFO L202 ceAbstractionStarter]: Automizer settings: Hoare:false NWA Interpolation:ForwardPredicates Determinization: PREDICATE_ABSTRACTION [2022-04-14 21:39:54,605 INFO L161 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-14 21:39:54,637 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-14 21:39:54,642 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=ForwardPredicates, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=false, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP [2022-04-14 21:39:54,643 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-14 21:39:54,657 INFO L276 IsEmpty]: Start isEmpty. Operand has 37 states, 21 states have (on average 1.5714285714285714) internal successors, (33), 22 states have internal predecessors, (33), 10 states have call successors, (10), 4 states have call predecessors, (10), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-14 21:39:54,663 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-14 21:39:54,664 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 21:39:54,664 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 21:39:54,664 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 21:39:54,668 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 21:39:54,669 INFO L85 PathProgramCache]: Analyzing trace with hash 1042421720, now seen corresponding path program 1 times [2022-04-14 21:39:54,690 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 21:39:54,690 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1919960149] [2022-04-14 21:39:54,690 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 21:39:54,691 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 21:39:54,810 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:39:54,859 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-14 21:39:54,863 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:39:54,875 INFO L290 TraceCheckUtils]: 0: Hoare triple {61#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [111] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (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{#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[#NULL.offset, #NULL.base] {40#true} is VALID [2022-04-14 21:39:54,876 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} [114] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {40#true} is VALID [2022-04-14 21:39:54,876 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {40#true} {40#true} [152] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {40#true} is VALID [2022-04-14 21:39:54,877 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-14 21:39:54,879 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:39:54,884 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {40#true} is VALID [2022-04-14 21:39:54,885 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} [119] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-14 21:39:54,885 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-14 21:39:54,886 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {40#true} [153] assume_abort_if_notEXIT-->L23-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (and (<= 0 v_main_~A~0_12) (<= v_main_~A~0_12 50)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_12} 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] {41#false} is VALID [2022-04-14 21:39:54,886 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-14 21:39:54,888 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:39:54,907 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {40#true} is VALID [2022-04-14 21:39:54,907 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} [119] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-14 21:39:54,908 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-14 21:39:54,908 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {41#false} [154] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 50)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {41#false} is VALID [2022-04-14 21:39:54,908 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-14 21:39:54,910 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:39:54,920 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {40#true} is VALID [2022-04-14 21:39:54,921 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} [119] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-14 21:39:54,921 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-14 21:39:54,922 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {41#false} [155] assume_abort_if_notEXIT-->L26: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (< (+ (* v_main_~R~0_7 v_main_~R~0_7) 1) (+ (* v_main_~R~0_7 2) v_main_~A~0_13)) 1 0)) InVars {main_~A~0=v_main_~A~0_13, main_~R~0=v_main_~R~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {41#false} is VALID [2022-04-14 21:39:54,922 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-14 21:39:54,924 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:39:54,930 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {40#true} is VALID [2022-04-14 21:39:54,931 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} [119] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-14 21:39:54,931 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-14 21:39:54,931 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {41#false} [156] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (let ((.cse0 (mod v_main_~A~0_14 2))) (ite (and (< v_main_~A~0_14 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0) |v_assume_abort_if_not_#in~condInParam_4|) InVars {main_~A~0=v_main_~A~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_4|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {41#false} is VALID [2022-04-14 21:39:54,932 INFO L272 TraceCheckUtils]: 0: Hoare triple {40#true} [109] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-14 21:39:54,933 INFO L290 TraceCheckUtils]: 1: Hoare triple {61#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} [111] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (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{#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[#NULL.offset, #NULL.base] {40#true} is VALID [2022-04-14 21:39:54,933 INFO L290 TraceCheckUtils]: 2: Hoare triple {40#true} [114] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {40#true} is VALID [2022-04-14 21:39:54,934 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40#true} {40#true} [152] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {40#true} is VALID [2022-04-14 21:39:54,934 INFO L272 TraceCheckUtils]: 4: Hoare triple {40#true} [110] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {40#true} is VALID [2022-04-14 21:39:54,934 INFO L290 TraceCheckUtils]: 5: Hoare triple {40#true} [113] mainENTRY-->L23: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (= v_main_~A~0_2 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~A~0=v_main_~A~0_2, main_~u~0=v_main_~u~0_2, main_~R~0=v_main_~R~0_1, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~A~0, main_~u~0, main_~R~0, main_~r~0] {40#true} is VALID [2022-04-14 21:39:54,934 INFO L272 TraceCheckUtils]: 6: Hoare triple {40#true} [115] L23-->assume_abort_if_notENTRY: Formula: (= (ite (and (<= 0 v_main_~A~0_12) (<= v_main_~A~0_12 50)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_12} 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] {40#true} is VALID [2022-04-14 21:39:54,935 INFO L290 TraceCheckUtils]: 7: Hoare triple {40#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {40#true} is VALID [2022-04-14 21:39:54,935 INFO L290 TraceCheckUtils]: 8: Hoare triple {40#true} [119] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-14 21:39:54,936 INFO L290 TraceCheckUtils]: 9: Hoare triple {41#false} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-14 21:39:54,936 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {41#false} {40#true} [153] assume_abort_if_notEXIT-->L23-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (and (<= 0 v_main_~A~0_12) (<= v_main_~A~0_12 50)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_12} 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] {41#false} is VALID [2022-04-14 21:39:54,936 INFO L290 TraceCheckUtils]: 11: Hoare triple {41#false} [116] L23-1-->L25: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~R~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~R~0=v_main_~R~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~R~0] {41#false} is VALID [2022-04-14 21:39:54,936 INFO L272 TraceCheckUtils]: 12: Hoare triple {41#false} [118] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 50)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {40#true} is VALID [2022-04-14 21:39:54,937 INFO L290 TraceCheckUtils]: 13: Hoare triple {40#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {40#true} is VALID [2022-04-14 21:39:54,937 INFO L290 TraceCheckUtils]: 14: Hoare triple {40#true} [119] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-14 21:39:54,938 INFO L290 TraceCheckUtils]: 15: Hoare triple {41#false} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-14 21:39:54,938 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {41#false} {41#false} [154] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 50)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {41#false} is VALID [2022-04-14 21:39:54,938 INFO L272 TraceCheckUtils]: 17: Hoare triple {41#false} [121] L25-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (< (+ (* v_main_~R~0_7 v_main_~R~0_7) 1) (+ (* v_main_~R~0_7 2) v_main_~A~0_13)) 1 0)) InVars {main_~A~0=v_main_~A~0_13, main_~R~0=v_main_~R~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {40#true} is VALID [2022-04-14 21:39:54,938 INFO L290 TraceCheckUtils]: 18: Hoare triple {40#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {40#true} is VALID [2022-04-14 21:39:54,939 INFO L290 TraceCheckUtils]: 19: Hoare triple {40#true} [119] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-14 21:39:54,939 INFO L290 TraceCheckUtils]: 20: Hoare triple {41#false} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-14 21:39:54,939 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {41#false} {41#false} [155] assume_abort_if_notEXIT-->L26: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (< (+ (* v_main_~R~0_7 v_main_~R~0_7) 1) (+ (* v_main_~R~0_7 2) v_main_~A~0_13)) 1 0)) InVars {main_~A~0=v_main_~A~0_13, main_~R~0=v_main_~R~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {41#false} is VALID [2022-04-14 21:39:54,940 INFO L272 TraceCheckUtils]: 22: Hoare triple {41#false} [123] L26-->assume_abort_if_notENTRY: Formula: (= (ite (= (let ((.cse0 (mod v_main_~A~0_14 2))) (ite (and (< v_main_~A~0_14 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0) |v_assume_abort_if_not_#in~condInParam_4|) InVars {main_~A~0=v_main_~A~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_4|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {40#true} is VALID [2022-04-14 21:39:54,940 INFO L290 TraceCheckUtils]: 23: Hoare triple {40#true} [117] assume_abort_if_notENTRY-->L9: Formula: (= |v_assume_abort_if_not_#in~cond_1| v_assume_abort_if_not_~cond_1) InVars {assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~cond_1|, assume_abort_if_not_~cond=v_assume_abort_if_not_~cond_1} AuxVars[] AssignedVars[assume_abort_if_not_~cond] {40#true} is VALID [2022-04-14 21:39:54,941 INFO L290 TraceCheckUtils]: 24: Hoare triple {40#true} [119] L9-->L9-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-14 21:39:54,941 INFO L290 TraceCheckUtils]: 25: Hoare triple {41#false} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-14 21:39:54,941 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {41#false} {41#false} [156] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (let ((.cse0 (mod v_main_~A~0_14 2))) (ite (and (< v_main_~A~0_14 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0) |v_assume_abort_if_not_#in~condInParam_4|) InVars {main_~A~0=v_main_~A~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_4|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {41#false} is VALID [2022-04-14 21:39:54,942 INFO L290 TraceCheckUtils]: 27: Hoare triple {41#false} [124] L28-->L48-2: Formula: (and (= v_main_~r~0_2 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_8))) (= v_main_~v~0_3 1) (= v_main_~u~0_3 (+ (* v_main_~R~0_5 2) 1))) InVars {main_~A~0=v_main_~A~0_8, main_~R~0=v_main_~R~0_5} OutVars{main_~v~0=v_main_~v~0_3, main_~A~0=v_main_~A~0_8, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {41#false} is VALID [2022-04-14 21:39:54,942 INFO L290 TraceCheckUtils]: 28: Hoare triple {41#false} [125] L48-2-->L35-2: Formula: false InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-14 21:39:54,942 INFO L272 TraceCheckUtils]: 29: Hoare triple {41#false} [128] L35-2-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~u~0_12 (- 2)) (* v_main_~v~0_12 2) (* v_main_~u~0_12 v_main_~u~0_12) (* (- 1) (* v_main_~v~0_12 v_main_~v~0_12))) (* v_main_~A~0_18 4)) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~v~0=v_main_~v~0_12, main_~A~0=v_main_~A~0_18, main_~u~0=v_main_~u~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0] {41#false} is VALID [2022-04-14 21:39:54,942 INFO L290 TraceCheckUtils]: 30: Hoare triple {41#false} [131] __VERIFIER_assertENTRY-->L12: Formula: (= v___VERIFIER_assert_~cond_3 |v___VERIFIER_assert_#in~cond_1|) InVars {__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~cond_1|, __VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_3} AuxVars[] AssignedVars[__VERIFIER_assert_~cond] {41#false} is VALID [2022-04-14 21:39:54,943 INFO L290 TraceCheckUtils]: 31: Hoare triple {41#false} [135] L12-->L13: Formula: (= v___VERIFIER_assert_~cond_1 0) InVars {__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} OutVars{__VERIFIER_assert_~cond=v___VERIFIER_assert_~cond_1} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-14 21:39:54,943 INFO L290 TraceCheckUtils]: 32: Hoare triple {41#false} [140] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {41#false} is VALID [2022-04-14 21:39:54,944 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-14 21:39:54,944 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 21:39:54,945 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1919960149] [2022-04-14 21:39:54,945 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1919960149] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 21:39:54,945 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 21:39:54,946 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-14 21:39:54,947 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1889367959] [2022-04-14 21:39:54,948 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 21:39:54,952 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-14 21:39:54,954 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 21:39:54,958 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-14 21:39:55,003 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 21:39:55,004 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-14 21:39:55,005 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 21:39:55,032 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-14 21:39:55,035 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-14 21:39:55,038 INFO L87 Difference]: Start difference. First operand has 37 states, 21 states have (on average 1.5714285714285714) internal successors, (33), 22 states have internal predecessors, (33), 10 states have call successors, (10), 4 states have call predecessors, (10), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-14 21:39:55,201 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:39:55,201 INFO L93 Difference]: Finished difference Result 37 states and 45 transitions. [2022-04-14 21:39:55,202 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-14 21:39:55,202 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 33 [2022-04-14 21:39:55,202 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 21:39:55,204 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-14 21:39:55,211 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 53 transitions. [2022-04-14 21:39:55,212 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-14 21:39:55,216 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 53 transitions. [2022-04-14 21:39:55,216 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 53 transitions. [2022-04-14 21:39:55,290 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 21:39:55,302 INFO L225 Difference]: With dead ends: 37 [2022-04-14 21:39:55,303 INFO L226 Difference]: Without dead ends: 32 [2022-04-14 21:39:55,304 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 16 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-14 21:39:55,308 INFO L913 BasicCegarLoop]: 37 mSDtfsCounter, 22 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 10 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 30 SdHoareTripleChecker+Valid, 40 SdHoareTripleChecker+Invalid, 19 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 10 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-14 21:39:55,308 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [30 Valid, 40 Invalid, 19 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 10 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-14 21:39:55,328 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2022-04-14 21:39:55,337 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 32. [2022-04-14 21:39:55,337 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 21:39:55,338 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand has 32 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 21:39:55,339 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand has 32 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 21:39:55,339 INFO L87 Difference]: Start difference. First operand 32 states. Second operand has 32 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 21:39:55,348 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:39:55,349 INFO L93 Difference]: Finished difference Result 32 states and 40 transitions. [2022-04-14 21:39:55,349 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 40 transitions. [2022-04-14 21:39:55,350 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 21:39:55,350 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 21:39:55,351 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 32 states. [2022-04-14 21:39:55,352 INFO L87 Difference]: Start difference. First operand has 32 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 32 states. [2022-04-14 21:39:55,364 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:39:55,365 INFO L93 Difference]: Finished difference Result 32 states and 40 transitions. [2022-04-14 21:39:55,365 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 40 transitions. [2022-04-14 21:39:55,366 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 21:39:55,366 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 21:39:55,366 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 21:39:55,366 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 21:39:55,367 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 18 states have (on average 1.2222222222222223) internal successors, (22), 19 states have internal predecessors, (22), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-14 21:39:55,369 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 40 transitions. [2022-04-14 21:39:55,370 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 40 transitions. Word has length 33 [2022-04-14 21:39:55,370 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 21:39:55,371 INFO L478 AbstractCegarLoop]: Abstraction has 32 states and 40 transitions. [2022-04-14 21:39:55,371 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (7), 3 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-14 21:39:55,371 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 40 transitions. [2022-04-14 21:39:55,372 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-14 21:39:55,372 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 21:39:55,372 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 21:39:55,372 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-14 21:39:55,373 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 21:39:55,373 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 21:39:55,374 INFO L85 PathProgramCache]: Analyzing trace with hash 104571547, now seen corresponding path program 1 times [2022-04-14 21:39:55,374 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 21:39:55,374 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1165618880] [2022-04-14 21:39:55,374 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 21:39:55,374 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 21:39:55,420 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 21:39:55,420 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1344642495] [2022-04-14 21:39:55,420 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 21:39:55,421 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 21:39:55,421 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 21:39:55,428 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 21:39:55,431 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-14 21:39:55,498 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:39:55,500 INFO L263 TraceCheckSpWp]: Trace formula consists of 99 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-14 21:39:55,536 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:39:55,540 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 21:39:56,031 INFO L272 TraceCheckUtils]: 0: Hoare triple {197#true} [109] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {197#true} is VALID [2022-04-14 21:39:56,031 INFO L290 TraceCheckUtils]: 1: Hoare triple {197#true} [111] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (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{#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[#NULL.offset, #NULL.base] {197#true} is VALID [2022-04-14 21:39:56,032 INFO L290 TraceCheckUtils]: 2: Hoare triple {197#true} [114] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {197#true} is VALID [2022-04-14 21:39:56,032 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {197#true} {197#true} [152] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {197#true} is VALID [2022-04-14 21:39:56,032 INFO L272 TraceCheckUtils]: 4: Hoare triple {197#true} [110] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {197#true} is VALID [2022-04-14 21:39:56,032 INFO L290 TraceCheckUtils]: 5: Hoare triple {197#true} [113] mainENTRY-->L23: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (= v_main_~A~0_2 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~A~0=v_main_~A~0_2, main_~u~0=v_main_~u~0_2, main_~R~0=v_main_~R~0_1, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~A~0, main_~u~0, main_~R~0, main_~r~0] {197#true} is VALID [2022-04-14 21:39:56,033 INFO L272 TraceCheckUtils]: 6: Hoare triple {197#true} [115] L23-->assume_abort_if_notENTRY: Formula: (= (ite (and (<= 0 v_main_~A~0_12) (<= v_main_~A~0_12 50)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_12} 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] {197#true} is VALID [2022-04-14 21:39:56,033 INFO L290 TraceCheckUtils]: 7: Hoare triple {197#true} [117] 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] {197#true} is VALID [2022-04-14 21:39:56,033 INFO L290 TraceCheckUtils]: 8: Hoare triple {197#true} [120] 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[] {197#true} is VALID [2022-04-14 21:39:56,033 INFO L290 TraceCheckUtils]: 9: Hoare triple {197#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {197#true} is VALID [2022-04-14 21:39:56,034 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {197#true} {197#true} [153] assume_abort_if_notEXIT-->L23-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (and (<= 0 v_main_~A~0_12) (<= v_main_~A~0_12 50)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_12} 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] {197#true} is VALID [2022-04-14 21:39:56,034 INFO L290 TraceCheckUtils]: 11: Hoare triple {197#true} [116] L23-1-->L25: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~R~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~R~0=v_main_~R~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~R~0] {197#true} is VALID [2022-04-14 21:39:56,034 INFO L272 TraceCheckUtils]: 12: Hoare triple {197#true} [118] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 50)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {197#true} is VALID [2022-04-14 21:39:56,034 INFO L290 TraceCheckUtils]: 13: Hoare triple {197#true} [117] 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] {197#true} is VALID [2022-04-14 21:39:56,035 INFO L290 TraceCheckUtils]: 14: Hoare triple {197#true} [120] 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[] {197#true} is VALID [2022-04-14 21:39:56,035 INFO L290 TraceCheckUtils]: 15: Hoare triple {197#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {197#true} is VALID [2022-04-14 21:39:56,035 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {197#true} {197#true} [154] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 50)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {197#true} is VALID [2022-04-14 21:39:56,035 INFO L272 TraceCheckUtils]: 17: Hoare triple {197#true} [121] L25-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (< (+ (* v_main_~R~0_7 v_main_~R~0_7) 1) (+ (* v_main_~R~0_7 2) v_main_~A~0_13)) 1 0)) InVars {main_~A~0=v_main_~A~0_13, main_~R~0=v_main_~R~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {197#true} is VALID [2022-04-14 21:39:56,036 INFO L290 TraceCheckUtils]: 18: Hoare triple {197#true} [117] 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] {197#true} is VALID [2022-04-14 21:39:56,036 INFO L290 TraceCheckUtils]: 19: Hoare triple {197#true} [120] 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[] {197#true} is VALID [2022-04-14 21:39:56,036 INFO L290 TraceCheckUtils]: 20: Hoare triple {197#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {197#true} is VALID [2022-04-14 21:39:56,036 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {197#true} {197#true} [155] assume_abort_if_notEXIT-->L26: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (< (+ (* v_main_~R~0_7 v_main_~R~0_7) 1) (+ (* v_main_~R~0_7 2) v_main_~A~0_13)) 1 0)) InVars {main_~A~0=v_main_~A~0_13, main_~R~0=v_main_~R~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {197#true} is VALID [2022-04-14 21:39:56,037 INFO L272 TraceCheckUtils]: 22: Hoare triple {197#true} [123] L26-->assume_abort_if_notENTRY: Formula: (= (ite (= (let ((.cse0 (mod v_main_~A~0_14 2))) (ite (and (< v_main_~A~0_14 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0) |v_assume_abort_if_not_#in~condInParam_4|) InVars {main_~A~0=v_main_~A~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_4|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {197#true} is VALID [2022-04-14 21:39:56,037 INFO L290 TraceCheckUtils]: 23: Hoare triple {197#true} [117] 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] {197#true} is VALID [2022-04-14 21:39:56,037 INFO L290 TraceCheckUtils]: 24: Hoare triple {197#true} [120] 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[] {197#true} is VALID [2022-04-14 21:39:56,037 INFO L290 TraceCheckUtils]: 25: Hoare triple {197#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {197#true} is VALID [2022-04-14 21:39:56,038 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {197#true} {197#true} [156] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (let ((.cse0 (mod v_main_~A~0_14 2))) (ite (and (< v_main_~A~0_14 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0) |v_assume_abort_if_not_#in~condInParam_4|) InVars {main_~A~0=v_main_~A~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_4|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {197#true} is VALID [2022-04-14 21:39:58,039 WARN L290 TraceCheckUtils]: 27: Hoare triple {197#true} [124] L28-->L48-2: Formula: (and (= v_main_~r~0_2 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_8))) (= v_main_~v~0_3 1) (= v_main_~u~0_3 (+ (* v_main_~R~0_5 2) 1))) InVars {main_~A~0=v_main_~A~0_8, main_~R~0=v_main_~R~0_5} OutVars{main_~v~0=v_main_~v~0_3, main_~A~0=v_main_~A~0_8, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {283#(and (= (+ (* (- 1) main_~A~0) (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) main_~r~0) (= (mod (+ main_~u~0 1) 2) 0) (= main_~v~0 1))} is UNKNOWN [2022-04-14 21:39:58,040 INFO L290 TraceCheckUtils]: 28: Hoare triple {283#(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))} [127] L48-2-->L36: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {283#(and (= (+ (* (- 1) main_~A~0) (* (div (+ (* (- 1) main_~u~0) 1) (- 2)) (div (+ (* (- 1) main_~u~0) 1) (- 2)))) main_~r~0) (= (mod (+ main_~u~0 1) 2) 0) (= main_~v~0 1))} is VALID [2022-04-14 21:39:58,203 INFO L272 TraceCheckUtils]: 29: Hoare triple {283#(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))} [129] L36-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_15 4) (* v_main_~r~0_14 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_15, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {290#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 21:39:58,204 INFO L290 TraceCheckUtils]: 30: Hoare triple {290#(<= 1 |__VERIFIER_assert_#in~cond|)} [131] __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] {294#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 21:39:58,204 INFO L290 TraceCheckUtils]: 31: Hoare triple {294#(<= 1 __VERIFIER_assert_~cond)} [135] 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[] {198#false} is VALID [2022-04-14 21:39:58,205 INFO L290 TraceCheckUtils]: 32: Hoare triple {198#false} [140] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {198#false} is VALID [2022-04-14 21:39:58,205 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-14 21:39:58,205 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-14 21:39:58,205 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 21:39:58,206 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1165618880] [2022-04-14 21:39:58,206 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 21:39:58,206 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1344642495] [2022-04-14 21:39:58,206 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1344642495] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-14 21:39:58,206 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-14 21:39:58,206 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-14 21:39:58,207 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1221129839] [2022-04-14 21:39:58,207 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-14 21:39:58,208 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, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 33 [2022-04-14 21:39:58,208 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 21:39:58,209 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, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-14 21:39:59,304 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 21:39:59,305 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-14 21:39:59,305 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 21:39:59,305 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-14 21:39:59,305 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-14 21:39:59,306 INFO L87 Difference]: Start difference. First operand 32 states and 40 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, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-14 21:40:04,446 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.83s for a HTC check with result VALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-14 21:40:08,282 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.17s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-14 21:40:14,396 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.62s for a HTC check with result VALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-14 21:40:14,451 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:40:14,451 INFO L93 Difference]: Finished difference Result 46 states and 59 transitions. [2022-04-14 21:40:14,451 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-14 21:40:14,452 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, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) Word has length 33 [2022-04-14 21:40:14,452 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 21:40:14,452 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, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-14 21:40:14,455 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-04-14 21:40:14,455 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, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-14 21:40:14,457 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 60 transitions. [2022-04-14 21:40:14,458 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 60 transitions. [2022-04-14 21:40:19,014 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 59 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-14 21:40:19,016 INFO L225 Difference]: With dead ends: 46 [2022-04-14 21:40:19,016 INFO L226 Difference]: Without dead ends: 46 [2022-04-14 21:40:19,016 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 33 GetRequests, 29 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-14 21:40:19,018 INFO L913 BasicCegarLoop]: 32 mSDtfsCounter, 11 mSDsluCounter, 79 mSDsCounter, 0 mSdLazyCounter, 57 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 7.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 111 SdHoareTripleChecker+Invalid, 60 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 57 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 7.3s IncrementalHoareTripleChecker+Time [2022-04-14 21:40:19,018 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 111 Invalid, 60 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 57 Invalid, 0 Unknown, 0 Unchecked, 7.3s Time] [2022-04-14 21:40:19,019 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 46 states. [2022-04-14 21:40:19,023 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 46 to 45. [2022-04-14 21:40:19,023 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 21:40:19,023 INFO L82 GeneralOperation]: Start isEquivalent. First operand 46 states. Second operand has 45 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-14 21:40:19,024 INFO L74 IsIncluded]: Start isIncluded. First operand 46 states. Second operand has 45 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-14 21:40:19,024 INFO L87 Difference]: Start difference. First operand 46 states. Second operand has 45 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-14 21:40:19,028 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:40:19,028 INFO L93 Difference]: Finished difference Result 46 states and 59 transitions. [2022-04-14 21:40:19,028 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 59 transitions. [2022-04-14 21:40:19,029 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 21:40:19,029 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 21:40:19,029 INFO L74 IsIncluded]: Start isIncluded. First operand has 45 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 46 states. [2022-04-14 21:40:19,030 INFO L87 Difference]: Start difference. First operand has 45 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) Second operand 46 states. [2022-04-14 21:40:19,033 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:40:19,033 INFO L93 Difference]: Finished difference Result 46 states and 59 transitions. [2022-04-14 21:40:19,033 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 59 transitions. [2022-04-14 21:40:19,034 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 21:40:19,034 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 21:40:19,034 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 21:40:19,034 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 21:40:19,035 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 45 states, 27 states have (on average 1.2592592592592593) internal successors, (34), 28 states have internal predecessors, (34), 13 states have call successors, (13), 5 states have call predecessors, (13), 4 states have return successors, (11), 11 states have call predecessors, (11), 11 states have call successors, (11) [2022-04-14 21:40:19,037 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 45 states to 45 states and 58 transitions. [2022-04-14 21:40:19,037 INFO L78 Accepts]: Start accepts. Automaton has 45 states and 58 transitions. Word has length 33 [2022-04-14 21:40:19,038 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 21:40:19,038 INFO L478 AbstractCegarLoop]: Abstraction has 45 states and 58 transitions. [2022-04-14 21:40:19,038 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 1 states have call predecessors, (5), 1 states have call successors, (5) [2022-04-14 21:40:19,038 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 58 transitions. [2022-04-14 21:40:19,039 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-14 21:40:19,039 INFO L491 BasicCegarLoop]: Found error trace [2022-04-14 21:40:19,039 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-14 21:40:19,047 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-04-14 21:40:19,240 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 21:40:19,240 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-14 21:40:19,241 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-14 21:40:19,241 INFO L85 PathProgramCache]: Analyzing trace with hash -844389750, now seen corresponding path program 1 times [2022-04-14 21:40:19,241 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-14 21:40:19,241 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [532222203] [2022-04-14 21:40:19,241 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 21:40:19,241 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-14 21:40:19,260 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-14 21:40:19,260 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1346540073] [2022-04-14 21:40:19,260 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-14 21:40:19,260 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-14 21:40:19,261 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-14 21:40:19,268 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-14 21:40:19,269 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-14 21:40:19,317 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:40:19,318 INFO L263 TraceCheckSpWp]: Trace formula consists of 110 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-14 21:40:19,339 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-14 21:40:19,340 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-14 21:40:19,546 INFO L272 TraceCheckUtils]: 0: Hoare triple {485#true} [109] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-14 21:40:19,546 INFO L290 TraceCheckUtils]: 1: Hoare triple {485#true} [111] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (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{#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[#NULL.offset, #NULL.base] {485#true} is VALID [2022-04-14 21:40:19,547 INFO L290 TraceCheckUtils]: 2: Hoare triple {485#true} [114] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-14 21:40:19,547 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {485#true} {485#true} [152] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-14 21:40:19,547 INFO L272 TraceCheckUtils]: 4: Hoare triple {485#true} [110] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-14 21:40:19,547 INFO L290 TraceCheckUtils]: 5: Hoare triple {485#true} [113] mainENTRY-->L23: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (= v_main_~A~0_2 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~A~0=v_main_~A~0_2, main_~u~0=v_main_~u~0_2, main_~R~0=v_main_~R~0_1, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~A~0, main_~u~0, main_~R~0, main_~r~0] {485#true} is VALID [2022-04-14 21:40:19,547 INFO L272 TraceCheckUtils]: 6: Hoare triple {485#true} [115] L23-->assume_abort_if_notENTRY: Formula: (= (ite (and (<= 0 v_main_~A~0_12) (<= v_main_~A~0_12 50)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_12} 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] {485#true} is VALID [2022-04-14 21:40:19,548 INFO L290 TraceCheckUtils]: 7: Hoare triple {485#true} [117] 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] {485#true} is VALID [2022-04-14 21:40:19,548 INFO L290 TraceCheckUtils]: 8: Hoare triple {485#true} [120] 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[] {485#true} is VALID [2022-04-14 21:40:19,548 INFO L290 TraceCheckUtils]: 9: Hoare triple {485#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-14 21:40:19,548 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {485#true} {485#true} [153] assume_abort_if_notEXIT-->L23-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (and (<= 0 v_main_~A~0_12) (<= v_main_~A~0_12 50)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_12} 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] {485#true} is VALID [2022-04-14 21:40:19,548 INFO L290 TraceCheckUtils]: 11: Hoare triple {485#true} [116] L23-1-->L25: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~R~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~R~0=v_main_~R~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~R~0] {485#true} is VALID [2022-04-14 21:40:19,549 INFO L272 TraceCheckUtils]: 12: Hoare triple {485#true} [118] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 50)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {485#true} is VALID [2022-04-14 21:40:19,549 INFO L290 TraceCheckUtils]: 13: Hoare triple {485#true} [117] 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] {485#true} is VALID [2022-04-14 21:40:19,549 INFO L290 TraceCheckUtils]: 14: Hoare triple {485#true} [120] 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[] {485#true} is VALID [2022-04-14 21:40:19,549 INFO L290 TraceCheckUtils]: 15: Hoare triple {485#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-14 21:40:19,550 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {485#true} {485#true} [154] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 50)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {485#true} is VALID [2022-04-14 21:40:19,550 INFO L272 TraceCheckUtils]: 17: Hoare triple {485#true} [121] L25-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (< (+ (* v_main_~R~0_7 v_main_~R~0_7) 1) (+ (* v_main_~R~0_7 2) v_main_~A~0_13)) 1 0)) InVars {main_~A~0=v_main_~A~0_13, main_~R~0=v_main_~R~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {485#true} is VALID [2022-04-14 21:40:19,550 INFO L290 TraceCheckUtils]: 18: Hoare triple {485#true} [117] 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] {485#true} is VALID [2022-04-14 21:40:19,550 INFO L290 TraceCheckUtils]: 19: Hoare triple {485#true} [120] 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[] {485#true} is VALID [2022-04-14 21:40:19,550 INFO L290 TraceCheckUtils]: 20: Hoare triple {485#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-14 21:40:19,551 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {485#true} {485#true} [155] assume_abort_if_notEXIT-->L26: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (< (+ (* v_main_~R~0_7 v_main_~R~0_7) 1) (+ (* v_main_~R~0_7 2) v_main_~A~0_13)) 1 0)) InVars {main_~A~0=v_main_~A~0_13, main_~R~0=v_main_~R~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {485#true} is VALID [2022-04-14 21:40:19,551 INFO L272 TraceCheckUtils]: 22: Hoare triple {485#true} [123] L26-->assume_abort_if_notENTRY: Formula: (= (ite (= (let ((.cse0 (mod v_main_~A~0_14 2))) (ite (and (< v_main_~A~0_14 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0) |v_assume_abort_if_not_#in~condInParam_4|) InVars {main_~A~0=v_main_~A~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_4|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {485#true} is VALID [2022-04-14 21:40:19,551 INFO L290 TraceCheckUtils]: 23: Hoare triple {485#true} [117] 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] {485#true} is VALID [2022-04-14 21:40:19,551 INFO L290 TraceCheckUtils]: 24: Hoare triple {485#true} [120] 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[] {485#true} is VALID [2022-04-14 21:40:19,551 INFO L290 TraceCheckUtils]: 25: Hoare triple {485#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-14 21:40:19,552 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {485#true} {485#true} [156] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (let ((.cse0 (mod v_main_~A~0_14 2))) (ite (and (< v_main_~A~0_14 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0) |v_assume_abort_if_not_#in~condInParam_4|) InVars {main_~A~0=v_main_~A~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_4|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {485#true} is VALID [2022-04-14 21:40:19,552 INFO L290 TraceCheckUtils]: 27: Hoare triple {485#true} [124] L28-->L48-2: Formula: (and (= v_main_~r~0_2 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_8))) (= v_main_~v~0_3 1) (= v_main_~u~0_3 (+ (* v_main_~R~0_5 2) 1))) InVars {main_~A~0=v_main_~A~0_8, main_~R~0=v_main_~R~0_5} OutVars{main_~v~0=v_main_~v~0_3, main_~A~0=v_main_~A~0_8, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {485#true} is VALID [2022-04-14 21:40:19,552 INFO L290 TraceCheckUtils]: 28: Hoare triple {485#true} [127] L48-2-->L36: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-14 21:40:19,552 INFO L272 TraceCheckUtils]: 29: Hoare triple {485#true} [129] L36-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_15 4) (* v_main_~r~0_14 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_15, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {485#true} is VALID [2022-04-14 21:40:19,553 INFO L290 TraceCheckUtils]: 30: Hoare triple {485#true} [131] __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] {580#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-14 21:40:19,553 INFO L290 TraceCheckUtils]: 31: Hoare triple {580#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} [136] 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[] {584#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 21:40:19,554 INFO L290 TraceCheckUtils]: 32: Hoare triple {584#(not (= |__VERIFIER_assert_#in~cond| 0))} [142] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {584#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 21:40:19,555 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {584#(not (= |__VERIFIER_assert_#in~cond| 0))} {485#true} [158] __VERIFIER_assertEXIT-->L36-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_15 4) (* v_main_~r~0_14 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_15, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {591#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4) (* main_~r~0 4)))} is VALID [2022-04-14 21:40:19,555 INFO L290 TraceCheckUtils]: 34: Hoare triple {591#(= (+ (* 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)))} [132] L36-1-->L35-2: Formula: (= v_main_~r~0_4 0) InVars {main_~r~0=v_main_~r~0_4} OutVars{main_~r~0=v_main_~r~0_4} AuxVars[] AssignedVars[] {595#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4)))} is VALID [2022-04-14 21:40:19,556 INFO L272 TraceCheckUtils]: 35: Hoare triple {595#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4)))} [128] L35-2-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~u~0_12 (- 2)) (* v_main_~v~0_12 2) (* v_main_~u~0_12 v_main_~u~0_12) (* (- 1) (* v_main_~v~0_12 v_main_~v~0_12))) (* v_main_~A~0_18 4)) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~v~0=v_main_~v~0_12, main_~A~0=v_main_~A~0_18, main_~u~0=v_main_~u~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0] {599#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 21:40:19,557 INFO L290 TraceCheckUtils]: 36: Hoare triple {599#(<= 1 |__VERIFIER_assert_#in~cond|)} [131] __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] {603#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 21:40:19,557 INFO L290 TraceCheckUtils]: 37: Hoare triple {603#(<= 1 __VERIFIER_assert_~cond)} [135] 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[] {486#false} is VALID [2022-04-14 21:40:19,557 INFO L290 TraceCheckUtils]: 38: Hoare triple {486#false} [140] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {486#false} is VALID [2022-04-14 21:40:19,558 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-14 21:40:19,558 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-14 21:40:20,057 INFO L290 TraceCheckUtils]: 38: Hoare triple {486#false} [140] L13-->__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {486#false} is VALID [2022-04-14 21:40:20,058 INFO L290 TraceCheckUtils]: 37: Hoare triple {603#(<= 1 __VERIFIER_assert_~cond)} [135] 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[] {486#false} is VALID [2022-04-14 21:40:20,058 INFO L290 TraceCheckUtils]: 36: Hoare triple {599#(<= 1 |__VERIFIER_assert_#in~cond|)} [131] __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] {603#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-14 21:40:20,059 INFO L272 TraceCheckUtils]: 35: Hoare triple {595#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4)))} [128] L35-2-->__VERIFIER_assertENTRY: Formula: (= (ite (= (+ (* v_main_~u~0_12 (- 2)) (* v_main_~v~0_12 2) (* v_main_~u~0_12 v_main_~u~0_12) (* (- 1) (* v_main_~v~0_12 v_main_~v~0_12))) (* v_main_~A~0_18 4)) 1 0) |v___VERIFIER_assert_#in~condInParam_4|) InVars {main_~v~0=v_main_~v~0_12, main_~A~0=v_main_~A~0_18, main_~u~0=v_main_~u~0_12} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_4|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0] {599#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-14 21:40:20,060 INFO L290 TraceCheckUtils]: 34: Hoare triple {622#(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))))} [132] L36-1-->L35-2: Formula: (= v_main_~r~0_4 0) InVars {main_~r~0=v_main_~r~0_4} OutVars{main_~r~0=v_main_~r~0_4} AuxVars[] AssignedVars[] {595#(= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4)))} is VALID [2022-04-14 21:40:20,061 INFO L284 TraceCheckUtils]: 33: Hoare quadruple {584#(not (= |__VERIFIER_assert_#in~cond| 0))} {485#true} [158] __VERIFIER_assertEXIT-->L36-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_15 4) (* v_main_~r~0_14 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_15, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {622#(or (not (= main_~r~0 0)) (= (+ (* main_~v~0 2) (* main_~u~0 main_~u~0)) (+ (* main_~v~0 main_~v~0) (* main_~u~0 2) (* main_~A~0 4))))} is VALID [2022-04-14 21:40:20,062 INFO L290 TraceCheckUtils]: 32: Hoare triple {584#(not (= |__VERIFIER_assert_#in~cond| 0))} [142] L12-2-->__VERIFIER_assertEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {584#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 21:40:20,062 INFO L290 TraceCheckUtils]: 31: Hoare triple {635#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} [136] 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[] {584#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-14 21:40:20,063 INFO L290 TraceCheckUtils]: 30: Hoare triple {485#true} [131] __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] {635#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-14 21:40:20,063 INFO L272 TraceCheckUtils]: 29: Hoare triple {485#true} [129] L36-->__VERIFIER_assertENTRY: Formula: (= |v___VERIFIER_assert_#in~condInParam_1| (ite (= (+ (* (- 2) v_main_~u~0_9) (* v_main_~u~0_9 v_main_~u~0_9) (* (- 1) (* v_main_~v~0_9 v_main_~v~0_9)) (* v_main_~v~0_9 2)) (+ (* v_main_~A~0_15 4) (* v_main_~r~0_14 4))) 1 0)) InVars {main_~v~0=v_main_~v~0_9, main_~A~0=v_main_~A~0_15, main_~u~0=v_main_~u~0_9, main_~r~0=v_main_~r~0_14} OutVars{__VERIFIER_assert_#in~cond=|v___VERIFIER_assert_#in~condInParam_1|} AuxVars[] AssignedVars[__VERIFIER_assert_#in~cond, main_~v~0, main_~A~0, main_~u~0, main_~r~0] {485#true} is VALID [2022-04-14 21:40:20,063 INFO L290 TraceCheckUtils]: 28: Hoare triple {485#true} [127] L48-2-->L36: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-14 21:40:20,063 INFO L290 TraceCheckUtils]: 27: Hoare triple {485#true} [124] L28-->L48-2: Formula: (and (= v_main_~r~0_2 (+ (* v_main_~R~0_5 v_main_~R~0_5) (* (- 1) v_main_~A~0_8))) (= v_main_~v~0_3 1) (= v_main_~u~0_3 (+ (* v_main_~R~0_5 2) 1))) InVars {main_~A~0=v_main_~A~0_8, main_~R~0=v_main_~R~0_5} OutVars{main_~v~0=v_main_~v~0_3, main_~A~0=v_main_~A~0_8, main_~R~0=v_main_~R~0_5, main_~u~0=v_main_~u~0_3, main_~r~0=v_main_~r~0_2} AuxVars[] AssignedVars[main_~v~0, main_~u~0, main_~r~0] {485#true} is VALID [2022-04-14 21:40:20,064 INFO L284 TraceCheckUtils]: 26: Hoare quadruple {485#true} {485#true} [156] assume_abort_if_notEXIT-->L28: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (= (let ((.cse0 (mod v_main_~A~0_14 2))) (ite (and (< v_main_~A~0_14 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0) |v_assume_abort_if_not_#in~condInParam_4|) InVars {main_~A~0=v_main_~A~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_4|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {485#true} is VALID [2022-04-14 21:40:20,064 INFO L290 TraceCheckUtils]: 25: Hoare triple {485#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-14 21:40:20,064 INFO L290 TraceCheckUtils]: 24: Hoare triple {485#true} [120] 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[] {485#true} is VALID [2022-04-14 21:40:20,064 INFO L290 TraceCheckUtils]: 23: Hoare triple {485#true} [117] 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] {485#true} is VALID [2022-04-14 21:40:20,064 INFO L272 TraceCheckUtils]: 22: Hoare triple {485#true} [123] L26-->assume_abort_if_notENTRY: Formula: (= (ite (= (let ((.cse0 (mod v_main_~A~0_14 2))) (ite (and (< v_main_~A~0_14 0) (not (= .cse0 0))) (+ (- 2) .cse0) .cse0)) 1) 1 0) |v_assume_abort_if_not_#in~condInParam_4|) InVars {main_~A~0=v_main_~A~0_14} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_4|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond] {485#true} is VALID [2022-04-14 21:40:20,065 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {485#true} {485#true} [155] assume_abort_if_notEXIT-->L26: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (< (+ (* v_main_~R~0_7 v_main_~R~0_7) 1) (+ (* v_main_~R~0_7 2) v_main_~A~0_13)) 1 0)) InVars {main_~A~0=v_main_~A~0_13, main_~R~0=v_main_~R~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {485#true} is VALID [2022-04-14 21:40:20,065 INFO L290 TraceCheckUtils]: 20: Hoare triple {485#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-14 21:40:20,065 INFO L290 TraceCheckUtils]: 19: Hoare triple {485#true} [120] 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[] {485#true} is VALID [2022-04-14 21:40:20,065 INFO L290 TraceCheckUtils]: 18: Hoare triple {485#true} [117] 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] {485#true} is VALID [2022-04-14 21:40:20,065 INFO L272 TraceCheckUtils]: 17: Hoare triple {485#true} [121] L25-1-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_3| (ite (< (+ (* v_main_~R~0_7 v_main_~R~0_7) 1) (+ (* v_main_~R~0_7 2) v_main_~A~0_13)) 1 0)) InVars {main_~A~0=v_main_~A~0_13, main_~R~0=v_main_~R~0_7} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_3|} AuxVars[] AssignedVars[main_~A~0, assume_abort_if_not_#in~cond, main_~R~0] {485#true} is VALID [2022-04-14 21:40:20,066 INFO L284 TraceCheckUtils]: 16: Hoare quadruple {485#true} {485#true} [154] assume_abort_if_notEXIT-->L25-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 50)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {485#true} is VALID [2022-04-14 21:40:20,066 INFO L290 TraceCheckUtils]: 15: Hoare triple {485#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-14 21:40:20,066 INFO L290 TraceCheckUtils]: 14: Hoare triple {485#true} [120] 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[] {485#true} is VALID [2022-04-14 21:40:20,066 INFO L290 TraceCheckUtils]: 13: Hoare triple {485#true} [117] 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] {485#true} is VALID [2022-04-14 21:40:20,066 INFO L272 TraceCheckUtils]: 12: Hoare triple {485#true} [118] L25-->assume_abort_if_notENTRY: Formula: (= |v_assume_abort_if_not_#in~condInParam_2| (ite (and (<= 0 v_main_~R~0_6) (<= v_main_~R~0_6 50)) 1 0)) InVars {main_~R~0=v_main_~R~0_6} OutVars{assume_abort_if_not_#in~cond=|v_assume_abort_if_not_#in~condInParam_2|} AuxVars[] AssignedVars[assume_abort_if_not_#in~cond, main_~R~0] {485#true} is VALID [2022-04-14 21:40:20,067 INFO L290 TraceCheckUtils]: 11: Hoare triple {485#true} [116] L23-1-->L25: Formula: (and (<= |v_main_#t~nondet5_2| 2147483647) (= v_main_~R~0_2 |v_main_#t~nondet5_2|) (<= 0 (+ |v_main_#t~nondet5_2| 2147483648))) InVars {main_#t~nondet5=|v_main_#t~nondet5_2|} OutVars{main_~R~0=v_main_~R~0_2} AuxVars[] AssignedVars[main_#t~nondet5, main_~R~0] {485#true} is VALID [2022-04-14 21:40:20,067 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {485#true} {485#true} [153] assume_abort_if_notEXIT-->L23-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: (= (ite (and (<= 0 v_main_~A~0_12) (<= v_main_~A~0_12 50)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_12} 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] {485#true} is VALID [2022-04-14 21:40:20,067 INFO L290 TraceCheckUtils]: 9: Hoare triple {485#true} [122] L9-2-->assume_abort_if_notEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-14 21:40:20,067 INFO L290 TraceCheckUtils]: 8: Hoare triple {485#true} [120] 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[] {485#true} is VALID [2022-04-14 21:40:20,067 INFO L290 TraceCheckUtils]: 7: Hoare triple {485#true} [117] 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] {485#true} is VALID [2022-04-14 21:40:20,068 INFO L272 TraceCheckUtils]: 6: Hoare triple {485#true} [115] L23-->assume_abort_if_notENTRY: Formula: (= (ite (and (<= 0 v_main_~A~0_12) (<= v_main_~A~0_12 50)) 1 0) |v_assume_abort_if_not_#in~condInParam_1|) InVars {main_~A~0=v_main_~A~0_12} 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] {485#true} is VALID [2022-04-14 21:40:20,068 INFO L290 TraceCheckUtils]: 5: Hoare triple {485#true} [113] mainENTRY-->L23: Formula: (and (<= 0 (+ |v_main_#t~nondet4_2| 2147483648)) (<= |v_main_#t~nondet4_2| 2147483647) (= v_main_~A~0_2 |v_main_#t~nondet4_2|)) InVars {main_#t~nondet4=|v_main_#t~nondet4_2|} OutVars{main_~v~0=v_main_~v~0_2, main_~A~0=v_main_~A~0_2, main_~u~0=v_main_~u~0_2, main_~R~0=v_main_~R~0_1, main_~r~0=v_main_~r~0_1} AuxVars[] AssignedVars[main_#t~nondet4, main_~v~0, main_~A~0, main_~u~0, main_~R~0, main_~r~0] {485#true} is VALID [2022-04-14 21:40:20,068 INFO L272 TraceCheckUtils]: 4: Hoare triple {485#true} [110] L-1-->mainENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-14 21:40:20,068 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {485#true} {485#true} [152] ULTIMATE.initEXIT-->L-1: AOR: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] LVA: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-14 21:40:20,068 INFO L290 TraceCheckUtils]: 2: Hoare triple {485#true} [114] ULTIMATE.initFINAL-->ULTIMATE.initEXIT: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-14 21:40:20,069 INFO L290 TraceCheckUtils]: 1: Hoare triple {485#true} [111] ULTIMATE.initENTRY-->ULTIMATE.initFINAL: Formula: (let ((.cse0 (select |v_#memory_int_1| 1))) (and (= 48 (select .cse0 0)) (= (select |v_#valid_1| 2) 1) (= (select |v_#valid_1| 0) 0) (< 0 |v_#StackHeapBarrier_1|) (= |v_#NULL.base_1| 0) (= 1 (select |v_#valid_1| 3)) (= (select |v_#length_1| 3) 12) (= (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{#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[#NULL.offset, #NULL.base] {485#true} is VALID [2022-04-14 21:40:20,069 INFO L272 TraceCheckUtils]: 0: Hoare triple {485#true} [109] ULTIMATE.startENTRY-->ULTIMATE.initENTRY: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {485#true} is VALID [2022-04-14 21:40:20,069 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-14 21:40:20,069 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-14 21:40:20,069 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [532222203] [2022-04-14 21:40:20,069 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-14 21:40:20,070 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1346540073] [2022-04-14 21:40:20,070 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1346540073] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-14 21:40:20,070 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-14 21:40:20,070 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-04-14 21:40:20,070 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [138949725] [2022-04-14 21:40:20,070 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-04-14 21:40:20,071 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, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) Word has length 39 [2022-04-14 21:40:20,071 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-14 21:40:20,072 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, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-14 21:40:20,100 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 21:40:20,100 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-14 21:40:20,101 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-04-14 21:40:20,101 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-14 21:40:20,101 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=67, Unknown=0, NotChecked=0, Total=90 [2022-04-14 21:40:20,102 INFO L87 Difference]: Start difference. First operand 45 states and 58 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, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-14 21:40:20,528 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:40:20,529 INFO L93 Difference]: Finished difference Result 43 states and 56 transitions. [2022-04-14 21:40:20,529 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-14 21:40:20,529 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, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) Word has length 39 [2022-04-14 21:40:20,529 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-14 21:40:20,530 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, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-14 21:40:20,531 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 39 transitions. [2022-04-14 21:40:20,532 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, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-14 21:40:20,533 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 39 transitions. [2022-04-14 21:40:20,533 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 39 transitions. [2022-04-14 21:40:20,575 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-14 21:40:20,575 INFO L225 Difference]: With dead ends: 43 [2022-04-14 21:40:20,575 INFO L226 Difference]: Without dead ends: 0 [2022-04-14 21:40:20,575 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 79 GetRequests, 68 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=35, Invalid=97, Unknown=0, NotChecked=0, Total=132 [2022-04-14 21:40:20,576 INFO L913 BasicCegarLoop]: 27 mSDtfsCounter, 21 mSDsluCounter, 106 mSDsCounter, 0 mSdLazyCounter, 74 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 23 SdHoareTripleChecker+Valid, 133 SdHoareTripleChecker+Invalid, 86 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 74 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-14 21:40:20,577 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [23 Valid, 133 Invalid, 86 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [12 Valid, 74 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-14 21:40:20,577 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-14 21:40:20,578 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-14 21:40:20,578 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-14 21:40:20,578 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 21:40:20,578 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 21:40:20,578 INFO L87 Difference]: Start difference. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 21:40:20,578 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:40:20,578 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-14 21:40:20,579 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-14 21:40:20,579 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 21:40:20,579 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 21:40:20,579 INFO L74 IsIncluded]: Start isIncluded. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-14 21:40:20,579 INFO L87 Difference]: Start difference. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-14 21:40:20,579 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-14 21:40:20,579 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-14 21:40:20,579 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-14 21:40:20,579 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 21:40:20,579 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-14 21:40:20,579 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-14 21:40:20,580 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-14 21:40:20,580 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-14 21:40:20,580 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-14 21:40:20,580 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 39 [2022-04-14 21:40:20,580 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-14 21:40:20,580 INFO L478 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-14 21:40:20,580 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.111111111111111) internal successors, (19), 7 states have internal predecessors, (19), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (7), 3 states have call predecessors, (7), 1 states have call successors, (7) [2022-04-14 21:40:20,581 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-14 21:40:20,581 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-14 21:40:20,583 INFO L788 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-14 21:40:20,607 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-14 21:40:20,803 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-14 21:40:20,806 INFO L719 BasicCegarLoop]: Path program histogram: [1, 1, 1] [2022-04-14 21:40:20,807 INFO L177 ceAbstractionStarter]: Computing trace abstraction results [2022-04-14 21:40:20,809 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 14.04 09:40:20 BasicIcfg [2022-04-14 21:40:20,809 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-14 21:40:20,810 INFO L158 Benchmark]: Toolchain (without parser) took 27014.40ms. Allocated memory was 197.1MB in the beginning and 237.0MB in the end (delta: 39.8MB). Free memory was 148.1MB in the beginning and 172.6MB in the end (delta: -24.5MB). Peak memory consumption was 16.2MB. Max. memory is 8.0GB. [2022-04-14 21:40:20,810 INFO L158 Benchmark]: CDTParser took 0.10ms. Allocated memory is still 197.1MB. Free memory is still 164.1MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-14 21:40:20,810 INFO L158 Benchmark]: CACSL2BoogieTranslator took 297.94ms. Allocated memory is still 197.1MB. Free memory was 147.9MB in the beginning and 172.4MB in the end (delta: -24.6MB). Peak memory consumption was 13.4MB. Max. memory is 8.0GB. [2022-04-14 21:40:20,811 INFO L158 Benchmark]: Boogie Preprocessor took 52.00ms. Allocated memory is still 197.1MB. Free memory was 172.4MB in the beginning and 170.9MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-14 21:40:20,811 INFO L158 Benchmark]: RCFGBuilder took 385.50ms. Allocated memory is still 197.1MB. Free memory was 170.9MB in the beginning and 158.5MB in the end (delta: 12.4MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-14 21:40:20,811 INFO L158 Benchmark]: IcfgTransformer took 61.21ms. Allocated memory is still 197.1MB. Free memory was 158.5MB in the beginning and 156.7MB in the end (delta: 1.8MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-14 21:40:20,812 INFO L158 Benchmark]: TraceAbstraction took 26212.48ms. Allocated memory was 197.1MB in the beginning and 237.0MB in the end (delta: 39.8MB). Free memory was 156.2MB in the beginning and 172.6MB in the end (delta: -16.4MB). Peak memory consumption was 23.8MB. Max. memory is 8.0GB. [2022-04-14 21:40:20,813 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.10ms. Allocated memory is still 197.1MB. Free memory is still 164.1MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 297.94ms. Allocated memory is still 197.1MB. Free memory was 147.9MB in the beginning and 172.4MB in the end (delta: -24.6MB). Peak memory consumption was 13.4MB. Max. memory is 8.0GB. * Boogie Preprocessor took 52.00ms. Allocated memory is still 197.1MB. Free memory was 172.4MB in the beginning and 170.9MB in the end (delta: 1.5MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 385.50ms. Allocated memory is still 197.1MB. Free memory was 170.9MB in the beginning and 158.5MB in the end (delta: 12.4MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * IcfgTransformer took 61.21ms. Allocated memory is still 197.1MB. Free memory was 158.5MB in the beginning and 156.7MB in the end (delta: 1.8MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * TraceAbstraction took 26212.48ms. Allocated memory was 197.1MB in the beginning and 237.0MB in the end (delta: 39.8MB). Free memory was 156.2MB in the beginning and 172.6MB in the end (delta: -16.4MB). Peak memory consumption was 23.8MB. 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 - PositiveResult [Line: 14]: call to reach_error is unreachable For all program executions holds that call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data CFG has 5 procedures, 37 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 26.2s, OverallIterations: 3, TraceHistogramMax: 4, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 20.5s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 67 SdHoareTripleChecker+Valid, 7.6s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 54 mSDsluCounter, 284 SdHoareTripleChecker+Invalid, 7.6s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 188 mSDsCounter, 24 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 141 IncrementalHoareTripleChecker+Invalid, 165 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 24 mSolverCounterUnsat, 96 mSDtfsCounter, 141 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 128 GetRequests, 112 SyntacticMatches, 1 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.1s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=45occurred in iteration=2, InterpolantAutomatonStates: 14, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.1s AutomataMinimizationTime, 3 MinimizatonAttempts, 1 StatesRemovedByMinimization, 1 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 3.6s InterpolantComputationTime, 105 NumberOfCodeBlocks, 105 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 140 ConstructedInterpolants, 0 QuantifiedInterpolants, 317 SizeOfPredicates, 9 NumberOfNonLiveVariables, 209 ConjunctsInSsa, 23 ConjunctsInUnsatCore, 4 InterpolantComputations, 2 PerfectInterpolantSequences, 98/100 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold RESULT: Ultimate proved your program to be correct! [2022-04-14 21:40:20,830 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request...