/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/AutomizerC.xml -s ../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf -i ../../../trunk/examples/svcomp/loops-crafted-1/nested_delay_nd.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-28 03:55:48,138 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-28 03:55:48,154 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-28 03:55:48,190 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-28 03:55:48,190 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-28 03:55:48,191 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-28 03:55:48,192 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-28 03:55:48,193 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-28 03:55:48,194 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-28 03:55:48,195 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-28 03:55:48,195 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-28 03:55:48,196 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-28 03:55:48,196 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-28 03:55:48,197 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-28 03:55:48,197 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-28 03:55:48,198 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-28 03:55:48,199 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-28 03:55:48,199 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-28 03:55:48,200 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-28 03:55:48,201 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-28 03:55:48,202 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-28 03:55:48,204 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-28 03:55:48,205 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-28 03:55:48,205 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-28 03:55:48,206 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-28 03:55:48,208 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-28 03:55:48,208 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-28 03:55:48,208 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-28 03:55:48,209 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-28 03:55:48,209 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-28 03:55:48,209 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-28 03:55:48,210 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-28 03:55:48,210 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-28 03:55:48,210 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-28 03:55:48,211 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-28 03:55:48,212 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-28 03:55:48,212 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-28 03:55:48,212 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-28 03:55:48,212 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-28 03:55:48,213 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-28 03:55:48,213 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-28 03:55:48,214 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-28 03:55:48,214 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf [2022-04-28 03:55:48,219 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-28 03:55:48,220 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-28 03:55:48,220 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-28 03:55:48,220 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-28 03:55:48,221 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-28 03:55:48,221 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-28 03:55:48,221 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-28 03:55:48,221 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-28 03:55:48,221 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-28 03:55:48,221 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-28 03:55:48,221 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-28 03:55:48,221 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-28 03:55:48,222 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-28 03:55:48,222 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-28 03:55:48,222 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-28 03:55:48,222 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-28 03:55:48,222 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-28 03:55:48,222 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-28 03:55:48,222 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 03:55:48,222 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-28 03:55:48,223 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-28 03:55:48,223 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-28 03:55:48,223 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-28 03:55:48,223 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-28 03:55:48,223 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-28 03:55:48,223 INFO L138 SettingsManager]: * Use separate solver for trace checks=false WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release Applying setting for plugin de.uni_freiburg.informatik.ultimate.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-28 03:55:48,404 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-28 03:55:48,424 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-28 03:55:48,425 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-28 03:55:48,426 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-28 03:55:48,427 INFO L275 PluginConnector]: CDTParser initialized [2022-04-28 03:55:48,428 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/loops-crafted-1/nested_delay_nd.c [2022-04-28 03:55:48,472 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c696f4286/52f1e831dbea4dc38449833f4d794722/FLAGc7fe685b1 [2022-04-28 03:55:48,836 INFO L306 CDTParser]: Found 1 translation units. [2022-04-28 03:55:48,837 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/loops-crafted-1/nested_delay_nd.c [2022-04-28 03:55:48,842 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c696f4286/52f1e831dbea4dc38449833f4d794722/FLAGc7fe685b1 [2022-04-28 03:55:48,850 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c696f4286/52f1e831dbea4dc38449833f4d794722 [2022-04-28 03:55:48,853 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-28 03:55:48,853 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-28 03:55:48,854 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-28 03:55:48,854 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-28 03:55:48,856 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-28 03:55:48,857 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 03:55:48" (1/1) ... [2022-04-28 03:55:48,857 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@78654cba and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 03:55:48, skipping insertion in model container [2022-04-28 03:55:48,857 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 03:55:48" (1/1) ... [2022-04-28 03:55:48,861 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-28 03:55:48,869 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-28 03:55:48,985 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/loops-crafted-1/nested_delay_nd.c[465,478] [2022-04-28 03:55:49,007 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 03:55:49,013 INFO L203 MainTranslator]: Completed pre-run [2022-04-28 03:55:49,026 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/loops-crafted-1/nested_delay_nd.c[465,478] [2022-04-28 03:55:49,036 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 03:55:49,046 INFO L208 MainTranslator]: Completed translation [2022-04-28 03:55:49,046 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 03:55:49 WrapperNode [2022-04-28 03:55:49,046 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-28 03:55:49,047 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-28 03:55:49,047 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-28 03:55:49,047 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-28 03:55:49,054 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 03:55:49" (1/1) ... [2022-04-28 03:55:49,054 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 03:55:49" (1/1) ... [2022-04-28 03:55:49,059 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 03:55:49" (1/1) ... [2022-04-28 03:55:49,060 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 03:55:49" (1/1) ... [2022-04-28 03:55:49,070 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 03:55:49" (1/1) ... [2022-04-28 03:55:49,075 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 03:55:49" (1/1) ... [2022-04-28 03:55:49,078 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 03:55:49" (1/1) ... [2022-04-28 03:55:49,080 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-28 03:55:49,081 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-28 03:55:49,081 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-28 03:55:49,081 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-28 03:55:49,082 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 03:55:49" (1/1) ... [2022-04-28 03:55:49,086 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 03:55:49,092 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 03:55:49,101 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-04-28 03:55:49,119 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-04-28 03:55:49,127 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-28 03:55:49,128 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-28 03:55:49,128 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-28 03:55:49,128 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-28 03:55:49,128 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-28 03:55:49,128 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-28 03:55:49,128 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-28 03:55:49,128 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-28 03:55:49,128 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-28 03:55:49,129 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-28 03:55:49,129 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-28 03:55:49,129 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-28 03:55:49,130 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-28 03:55:49,130 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-28 03:55:49,130 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-28 03:55:49,130 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-28 03:55:49,130 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-28 03:55:49,130 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-28 03:55:49,130 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-28 03:55:49,130 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-28 03:55:49,175 INFO L234 CfgBuilder]: Building ICFG [2022-04-28 03:55:49,176 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-28 03:55:49,338 INFO L275 CfgBuilder]: Performing block encoding [2022-04-28 03:55:49,342 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-28 03:55:49,342 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-28 03:55:49,344 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 03:55:49 BoogieIcfgContainer [2022-04-28 03:55:49,344 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-28 03:55:49,345 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-28 03:55:49,345 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-28 03:55:49,347 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-28 03:55:49,347 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.04 03:55:48" (1/3) ... [2022-04-28 03:55:49,348 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6901e02b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 03:55:49, skipping insertion in model container [2022-04-28 03:55:49,348 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 03:55:49" (2/3) ... [2022-04-28 03:55:49,348 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6901e02b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 03:55:49, skipping insertion in model container [2022-04-28 03:55:49,348 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 03:55:49" (3/3) ... [2022-04-28 03:55:49,349 INFO L111 eAbstractionObserver]: Analyzing ICFG nested_delay_nd.c [2022-04-28 03:55:49,357 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-28 03:55:49,357 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-28 03:55:49,385 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-28 03:55:49,390 INFO L357 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=Craig_NestedInterpolation, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@6f27d09e, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@33a0e8d6 [2022-04-28 03:55:49,390 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-28 03:55:49,396 INFO L276 IsEmpty]: Start isEmpty. Operand has 32 states, 22 states have (on average 1.5454545454545454) internal successors, (34), 24 states have internal predecessors, (34), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 03:55:49,401 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2022-04-28 03:55:49,402 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:55:49,402 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:55:49,403 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:55:49,410 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:55:49,411 INFO L85 PathProgramCache]: Analyzing trace with hash -1039138334, now seen corresponding path program 1 times [2022-04-28 03:55:49,416 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:55:49,418 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1196416587] [2022-04-28 03:55:49,428 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 03:55:49,428 INFO L85 PathProgramCache]: Analyzing trace with hash -1039138334, now seen corresponding path program 2 times [2022-04-28 03:55:49,430 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:55:49,431 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [667333674] [2022-04-28 03:55:49,431 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:55:49,432 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:55:49,523 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:55:49,589 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:55:49,598 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:55:49,612 INFO L290 TraceCheckUtils]: 0: Hoare triple {44#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {35#true} is VALID [2022-04-28 03:55:49,613 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume true; {35#true} is VALID [2022-04-28 03:55:49,613 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {35#true} {35#true} #90#return; {35#true} is VALID [2022-04-28 03:55:49,613 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:55:49,619 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:55:49,626 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-04-28 03:55:49,626 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-04-28 03:55:49,627 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} assume true; {36#false} is VALID [2022-04-28 03:55:49,627 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {35#true} #86#return; {36#false} is VALID [2022-04-28 03:55:49,628 INFO L272 TraceCheckUtils]: 0: Hoare triple {35#true} call ULTIMATE.init(); {44#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:55:49,628 INFO L290 TraceCheckUtils]: 1: Hoare triple {44#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {35#true} is VALID [2022-04-28 03:55:49,629 INFO L290 TraceCheckUtils]: 2: Hoare triple {35#true} assume true; {35#true} is VALID [2022-04-28 03:55:49,629 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {35#true} {35#true} #90#return; {35#true} is VALID [2022-04-28 03:55:49,629 INFO L272 TraceCheckUtils]: 4: Hoare triple {35#true} call #t~ret7 := main(); {35#true} is VALID [2022-04-28 03:55:49,629 INFO L290 TraceCheckUtils]: 5: Hoare triple {35#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {35#true} is VALID [2022-04-28 03:55:49,629 INFO L272 TraceCheckUtils]: 6: Hoare triple {35#true} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {35#true} is VALID [2022-04-28 03:55:49,630 INFO L290 TraceCheckUtils]: 7: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-04-28 03:55:49,630 INFO L290 TraceCheckUtils]: 8: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-04-28 03:55:49,630 INFO L290 TraceCheckUtils]: 9: Hoare triple {36#false} assume true; {36#false} is VALID [2022-04-28 03:55:49,630 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {36#false} {35#true} #86#return; {36#false} is VALID [2022-04-28 03:55:49,632 INFO L290 TraceCheckUtils]: 11: Hoare triple {36#false} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {36#false} is VALID [2022-04-28 03:55:49,632 INFO L290 TraceCheckUtils]: 12: Hoare triple {36#false} assume !false;~st~0 := 1;~c~0 := 0; {36#false} is VALID [2022-04-28 03:55:49,632 INFO L290 TraceCheckUtils]: 13: Hoare triple {36#false} assume !true; {36#false} is VALID [2022-04-28 03:55:49,633 INFO L290 TraceCheckUtils]: 14: Hoare triple {36#false} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {36#false} is VALID [2022-04-28 03:55:49,633 INFO L290 TraceCheckUtils]: 15: Hoare triple {36#false} assume ~c~0 == ~last~0 && 0 == ~st~0;~a~0 := 1 + ~a~0; {36#false} is VALID [2022-04-28 03:55:49,633 INFO L290 TraceCheckUtils]: 16: Hoare triple {36#false} assume ~d~0 == ~SIZE~0;~a~0 := 0;~b~0 := 1; {36#false} is VALID [2022-04-28 03:55:49,633 INFO L272 TraceCheckUtils]: 17: Hoare triple {36#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {36#false} is VALID [2022-04-28 03:55:49,634 INFO L290 TraceCheckUtils]: 18: Hoare triple {36#false} ~cond := #in~cond; {36#false} is VALID [2022-04-28 03:55:49,634 INFO L290 TraceCheckUtils]: 19: Hoare triple {36#false} assume 0 == ~cond; {36#false} is VALID [2022-04-28 03:55:49,634 INFO L290 TraceCheckUtils]: 20: Hoare triple {36#false} assume !false; {36#false} is VALID [2022-04-28 03:55:49,634 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 03:55:49,634 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:55:49,635 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [667333674] [2022-04-28 03:55:49,635 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [667333674] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:55:49,635 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:55:49,635 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 03:55:49,638 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:55:49,639 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1196416587] [2022-04-28 03:55:49,639 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1196416587] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:55:49,639 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:55:49,639 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-28 03:55:49,640 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [538303030] [2022-04-28 03:55:49,640 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:55:49,644 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 5.0) internal successors, (15), 2 states have internal predecessors, (15), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 21 [2022-04-28 03:55:49,645 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:55:49,647 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 5.0) internal successors, (15), 2 states have internal predecessors, (15), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 03:55:49,678 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 21 edges. 21 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:55:49,678 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-28 03:55:49,678 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:55:49,705 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-28 03:55:49,706 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-28 03:55:49,707 INFO L87 Difference]: Start difference. First operand has 32 states, 22 states have (on average 1.5454545454545454) internal successors, (34), 24 states have internal predecessors, (34), 4 states have call successors, (4), 4 states have call predecessors, (4), 4 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand has 3 states, 3 states have (on average 5.0) internal successors, (15), 2 states have internal predecessors, (15), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 03:55:49,834 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:55:49,834 INFO L93 Difference]: Finished difference Result 50 states and 71 transitions. [2022-04-28 03:55:49,834 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-28 03:55:49,834 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 5.0) internal successors, (15), 2 states have internal predecessors, (15), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 21 [2022-04-28 03:55:49,835 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:55:49,835 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 5.0) internal successors, (15), 2 states have internal predecessors, (15), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 03:55:49,854 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 71 transitions. [2022-04-28 03:55:49,854 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 5.0) internal successors, (15), 2 states have internal predecessors, (15), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 03:55:49,859 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 71 transitions. [2022-04-28 03:55:49,859 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 71 transitions. [2022-04-28 03:55:49,931 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 71 edges. 71 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:55:49,937 INFO L225 Difference]: With dead ends: 50 [2022-04-28 03:55:49,937 INFO L226 Difference]: Without dead ends: 27 [2022-04-28 03:55:49,939 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 6 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-28 03:55:49,941 INFO L413 NwaCegarLoop]: 33 mSDtfsCounter, 8 mSDsluCounter, 2 mSDsCounter, 0 mSdLazyCounter, 19 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 8 SdHoareTripleChecker+Valid, 35 SdHoareTripleChecker+Invalid, 22 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 19 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-28 03:55:49,942 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [8 Valid, 35 Invalid, 22 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 19 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-28 03:55:49,958 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2022-04-28 03:55:49,966 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 27. [2022-04-28 03:55:49,967 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:55:49,972 INFO L82 GeneralOperation]: Start isEquivalent. First operand 27 states. Second operand has 27 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 03:55:49,973 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand has 27 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 03:55:49,973 INFO L87 Difference]: Start difference. First operand 27 states. Second operand has 27 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 03:55:49,988 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:55:49,989 INFO L93 Difference]: Finished difference Result 27 states and 33 transitions. [2022-04-28 03:55:49,989 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 33 transitions. [2022-04-28 03:55:49,989 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:55:49,989 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:55:49,990 INFO L74 IsIncluded]: Start isIncluded. First operand has 27 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 27 states. [2022-04-28 03:55:49,990 INFO L87 Difference]: Start difference. First operand has 27 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 27 states. [2022-04-28 03:55:49,993 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:55:49,993 INFO L93 Difference]: Finished difference Result 27 states and 33 transitions. [2022-04-28 03:55:49,993 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 33 transitions. [2022-04-28 03:55:49,993 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:55:49,994 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:55:49,994 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:55:49,994 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:55:49,994 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 03:55:49,996 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 33 transitions. [2022-04-28 03:55:49,997 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 33 transitions. Word has length 21 [2022-04-28 03:55:49,997 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:55:49,997 INFO L495 AbstractCegarLoop]: Abstraction has 27 states and 33 transitions. [2022-04-28 03:55:49,998 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 5.0) internal successors, (15), 2 states have internal predecessors, (15), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 03:55:49,998 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 27 states and 33 transitions. [2022-04-28 03:55:50,046 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:55:50,047 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 33 transitions. [2022-04-28 03:55:50,047 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2022-04-28 03:55:50,047 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:55:50,047 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:55:50,048 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-28 03:55:50,048 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:55:50,048 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:55:50,048 INFO L85 PathProgramCache]: Analyzing trace with hash 677978447, now seen corresponding path program 1 times [2022-04-28 03:55:50,048 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:55:50,048 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1866471095] [2022-04-28 03:55:50,049 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 03:55:50,049 INFO L85 PathProgramCache]: Analyzing trace with hash 677978447, now seen corresponding path program 2 times [2022-04-28 03:55:50,049 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:55:50,049 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [75008521] [2022-04-28 03:55:50,049 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:55:50,050 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:55:50,065 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:55:50,136 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:55:50,140 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:55:50,147 INFO L290 TraceCheckUtils]: 0: Hoare triple {266#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {260#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:55:50,148 INFO L290 TraceCheckUtils]: 1: Hoare triple {260#(<= 200000 ~SIZE~0)} assume true; {260#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:55:50,148 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {260#(<= 200000 ~SIZE~0)} {255#true} #90#return; {260#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:55:50,149 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:55:50,151 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:55:50,154 INFO L290 TraceCheckUtils]: 0: Hoare triple {255#true} ~cond := #in~cond; {255#true} is VALID [2022-04-28 03:55:50,154 INFO L290 TraceCheckUtils]: 1: Hoare triple {255#true} assume !(0 == ~cond); {255#true} is VALID [2022-04-28 03:55:50,154 INFO L290 TraceCheckUtils]: 2: Hoare triple {255#true} assume true; {255#true} is VALID [2022-04-28 03:55:50,155 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {255#true} {260#(<= 200000 ~SIZE~0)} #86#return; {260#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:55:50,155 INFO L272 TraceCheckUtils]: 0: Hoare triple {255#true} call ULTIMATE.init(); {266#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:55:50,156 INFO L290 TraceCheckUtils]: 1: Hoare triple {266#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {260#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:55:50,157 INFO L290 TraceCheckUtils]: 2: Hoare triple {260#(<= 200000 ~SIZE~0)} assume true; {260#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:55:50,157 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {260#(<= 200000 ~SIZE~0)} {255#true} #90#return; {260#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:55:50,158 INFO L272 TraceCheckUtils]: 4: Hoare triple {260#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {260#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:55:50,158 INFO L290 TraceCheckUtils]: 5: Hoare triple {260#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {260#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:55:50,158 INFO L272 TraceCheckUtils]: 6: Hoare triple {260#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {255#true} is VALID [2022-04-28 03:55:50,158 INFO L290 TraceCheckUtils]: 7: Hoare triple {255#true} ~cond := #in~cond; {255#true} is VALID [2022-04-28 03:55:50,158 INFO L290 TraceCheckUtils]: 8: Hoare triple {255#true} assume !(0 == ~cond); {255#true} is VALID [2022-04-28 03:55:50,159 INFO L290 TraceCheckUtils]: 9: Hoare triple {255#true} assume true; {255#true} is VALID [2022-04-28 03:55:50,159 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {255#true} {260#(<= 200000 ~SIZE~0)} #86#return; {260#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:55:50,160 INFO L290 TraceCheckUtils]: 11: Hoare triple {260#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {260#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:55:50,160 INFO L290 TraceCheckUtils]: 12: Hoare triple {260#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {265#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:55:50,161 INFO L290 TraceCheckUtils]: 13: Hoare triple {265#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} assume !(~c~0 < ~SIZE~0); {256#false} is VALID [2022-04-28 03:55:50,161 INFO L290 TraceCheckUtils]: 14: Hoare triple {256#false} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {256#false} is VALID [2022-04-28 03:55:50,161 INFO L290 TraceCheckUtils]: 15: Hoare triple {256#false} assume ~c~0 == ~last~0 && 0 == ~st~0;~a~0 := 1 + ~a~0; {256#false} is VALID [2022-04-28 03:55:50,161 INFO L290 TraceCheckUtils]: 16: Hoare triple {256#false} assume ~d~0 == ~SIZE~0;~a~0 := 0;~b~0 := 1; {256#false} is VALID [2022-04-28 03:55:50,161 INFO L272 TraceCheckUtils]: 17: Hoare triple {256#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {256#false} is VALID [2022-04-28 03:55:50,162 INFO L290 TraceCheckUtils]: 18: Hoare triple {256#false} ~cond := #in~cond; {256#false} is VALID [2022-04-28 03:55:50,162 INFO L290 TraceCheckUtils]: 19: Hoare triple {256#false} assume 0 == ~cond; {256#false} is VALID [2022-04-28 03:55:50,162 INFO L290 TraceCheckUtils]: 20: Hoare triple {256#false} assume !false; {256#false} is VALID [2022-04-28 03:55:50,162 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 03:55:50,162 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:55:50,162 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [75008521] [2022-04-28 03:55:50,163 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [75008521] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:55:50,163 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:55:50,163 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 03:55:50,163 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:55:50,163 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1866471095] [2022-04-28 03:55:50,163 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1866471095] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:55:50,164 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:55:50,164 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-28 03:55:50,164 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1441822715] [2022-04-28 03:55:50,164 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:55:50,165 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 21 [2022-04-28 03:55:50,165 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:55:50,165 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:55:50,180 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 21 edges. 21 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:55:50,180 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-28 03:55:50,180 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:55:50,181 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-28 03:55:50,181 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-28 03:55:50,181 INFO L87 Difference]: Start difference. First operand 27 states and 33 transitions. Second operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:55:50,371 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:55:50,372 INFO L93 Difference]: Finished difference Result 46 states and 60 transitions. [2022-04-28 03:55:50,372 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-28 03:55:50,372 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 21 [2022-04-28 03:55:50,373 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:55:50,373 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:55:50,379 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 60 transitions. [2022-04-28 03:55:50,380 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:55:50,383 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 60 transitions. [2022-04-28 03:55:50,383 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 60 transitions. [2022-04-28 03:55:50,435 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:55:50,438 INFO L225 Difference]: With dead ends: 46 [2022-04-28 03:55:50,438 INFO L226 Difference]: Without dead ends: 31 [2022-04-28 03:55:50,439 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 10 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=12, Invalid=18, Unknown=0, NotChecked=0, Total=30 [2022-04-28 03:55:50,441 INFO L413 NwaCegarLoop]: 22 mSDtfsCounter, 39 mSDsluCounter, 3 mSDsCounter, 0 mSdLazyCounter, 60 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 40 SdHoareTripleChecker+Valid, 25 SdHoareTripleChecker+Invalid, 65 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 60 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 03:55:50,442 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [40 Valid, 25 Invalid, 65 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 60 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 03:55:50,445 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states. [2022-04-28 03:55:50,468 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 28. [2022-04-28 03:55:50,468 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:55:50,469 INFO L82 GeneralOperation]: Start isEquivalent. First operand 31 states. Second operand has 28 states, 20 states have (on average 1.35) internal successors, (27), 21 states have internal predecessors, (27), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 03:55:50,469 INFO L74 IsIncluded]: Start isIncluded. First operand 31 states. Second operand has 28 states, 20 states have (on average 1.35) internal successors, (27), 21 states have internal predecessors, (27), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 03:55:50,471 INFO L87 Difference]: Start difference. First operand 31 states. Second operand has 28 states, 20 states have (on average 1.35) internal successors, (27), 21 states have internal predecessors, (27), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 03:55:50,474 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:55:50,474 INFO L93 Difference]: Finished difference Result 31 states and 38 transitions. [2022-04-28 03:55:50,474 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 38 transitions. [2022-04-28 03:55:50,475 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:55:50,475 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:55:50,476 INFO L74 IsIncluded]: Start isIncluded. First operand has 28 states, 20 states have (on average 1.35) internal successors, (27), 21 states have internal predecessors, (27), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 31 states. [2022-04-28 03:55:50,476 INFO L87 Difference]: Start difference. First operand has 28 states, 20 states have (on average 1.35) internal successors, (27), 21 states have internal predecessors, (27), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 31 states. [2022-04-28 03:55:50,478 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:55:50,479 INFO L93 Difference]: Finished difference Result 31 states and 38 transitions. [2022-04-28 03:55:50,479 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 38 transitions. [2022-04-28 03:55:50,479 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:55:50,479 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:55:50,479 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:55:50,479 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:55:50,479 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 20 states have (on average 1.35) internal successors, (27), 21 states have internal predecessors, (27), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 03:55:50,480 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 34 transitions. [2022-04-28 03:55:50,481 INFO L78 Accepts]: Start accepts. Automaton has 28 states and 34 transitions. Word has length 21 [2022-04-28 03:55:50,482 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:55:50,484 INFO L495 AbstractCegarLoop]: Abstraction has 28 states and 34 transitions. [2022-04-28 03:55:50,484 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:55:50,487 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 28 states and 34 transitions. [2022-04-28 03:55:50,516 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-28 03:55:50,516 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 34 transitions. [2022-04-28 03:55:50,518 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-04-28 03:55:50,518 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:55:50,518 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:55:50,518 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-04-28 03:55:50,520 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:55:50,521 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:55:50,521 INFO L85 PathProgramCache]: Analyzing trace with hash -673447056, now seen corresponding path program 1 times [2022-04-28 03:55:50,522 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:55:50,522 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [7773372] [2022-04-28 03:55:51,508 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:55:51,678 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:55:51,679 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:55:51,682 INFO L85 PathProgramCache]: Analyzing trace with hash 315662187, now seen corresponding path program 1 times [2022-04-28 03:55:51,682 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:55:51,682 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1301289959] [2022-04-28 03:55:51,682 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:55:51,682 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:55:51,698 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:55:51,740 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:55:51,742 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:55:51,745 INFO L290 TraceCheckUtils]: 0: Hoare triple {492#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {482#true} is VALID [2022-04-28 03:55:51,745 INFO L290 TraceCheckUtils]: 1: Hoare triple {482#true} assume true; {482#true} is VALID [2022-04-28 03:55:51,746 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {482#true} {482#true} #90#return; {482#true} is VALID [2022-04-28 03:55:51,746 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:55:51,746 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:55:51,749 INFO L290 TraceCheckUtils]: 0: Hoare triple {482#true} ~cond := #in~cond; {482#true} is VALID [2022-04-28 03:55:51,749 INFO L290 TraceCheckUtils]: 1: Hoare triple {482#true} assume !(0 == ~cond); {482#true} is VALID [2022-04-28 03:55:51,749 INFO L290 TraceCheckUtils]: 2: Hoare triple {482#true} assume true; {482#true} is VALID [2022-04-28 03:55:51,749 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {482#true} {482#true} #86#return; {482#true} is VALID [2022-04-28 03:55:51,750 INFO L272 TraceCheckUtils]: 0: Hoare triple {482#true} call ULTIMATE.init(); {492#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:55:51,750 INFO L290 TraceCheckUtils]: 1: Hoare triple {492#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {482#true} is VALID [2022-04-28 03:55:51,750 INFO L290 TraceCheckUtils]: 2: Hoare triple {482#true} assume true; {482#true} is VALID [2022-04-28 03:55:51,750 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {482#true} {482#true} #90#return; {482#true} is VALID [2022-04-28 03:55:51,750 INFO L272 TraceCheckUtils]: 4: Hoare triple {482#true} call #t~ret7 := main(); {482#true} is VALID [2022-04-28 03:55:51,750 INFO L290 TraceCheckUtils]: 5: Hoare triple {482#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {482#true} is VALID [2022-04-28 03:55:51,750 INFO L272 TraceCheckUtils]: 6: Hoare triple {482#true} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {482#true} is VALID [2022-04-28 03:55:51,751 INFO L290 TraceCheckUtils]: 7: Hoare triple {482#true} ~cond := #in~cond; {482#true} is VALID [2022-04-28 03:55:51,751 INFO L290 TraceCheckUtils]: 8: Hoare triple {482#true} assume !(0 == ~cond); {482#true} is VALID [2022-04-28 03:55:51,751 INFO L290 TraceCheckUtils]: 9: Hoare triple {482#true} assume true; {482#true} is VALID [2022-04-28 03:55:51,751 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {482#true} {482#true} #86#return; {482#true} is VALID [2022-04-28 03:55:51,751 INFO L290 TraceCheckUtils]: 11: Hoare triple {482#true} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {482#true} is VALID [2022-04-28 03:55:51,751 INFO L290 TraceCheckUtils]: 12: Hoare triple {482#true} assume !false;~st~0 := 1;~c~0 := 0; {482#true} is VALID [2022-04-28 03:55:51,751 INFO L290 TraceCheckUtils]: 13: Hoare triple {482#true} [94] L27-3-->L27-4_primed: Formula: (let ((.cse2 (<= v_~last~0_17 v_main_~c~0_16)) (.cse0 (= v_main_~st~0_11 v_main_~st~0_10)) (.cse1 (= |v_main_#t~post5_4| |v_main_#t~post5_3|))) (or (and .cse0 (= v_main_~c~0_15 v_main_~c~0_16) .cse1 (or (not .cse2) (not (< v_main_~c~0_16 v_~SIZE~0_12)))) (and (= 0 v_main_~st~0_10) (< v_main_~c~0_15 (+ v_~SIZE~0_12 1)) (< v_main_~c~0_16 v_main_~c~0_15) .cse2) (and (= v_main_~c~0_16 v_main_~c~0_15) .cse0 (= v_~last~0_17 v_~last~0_17) .cse1 (= v_~SIZE~0_12 v_~SIZE~0_12)))) InVars {~SIZE~0=v_~SIZE~0_12, main_~c~0=v_main_~c~0_16, main_#t~post5=|v_main_#t~post5_4|, main_~st~0=v_main_~st~0_11, ~last~0=v_~last~0_17} OutVars{~SIZE~0=v_~SIZE~0_12, main_#t~post5=|v_main_#t~post5_3|, main_~c~0=v_main_~c~0_15, main_~st~0=v_main_~st~0_10, ~last~0=v_~last~0_17} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {482#true} is VALID [2022-04-28 03:55:51,752 INFO L290 TraceCheckUtils]: 14: Hoare triple {482#true} [93] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {482#true} is VALID [2022-04-28 03:55:51,752 INFO L290 TraceCheckUtils]: 15: Hoare triple {482#true} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {491#(<= (+ ~last~0 1) main_~c~0)} is VALID [2022-04-28 03:55:51,755 INFO L290 TraceCheckUtils]: 16: Hoare triple {491#(<= (+ ~last~0 1) main_~c~0)} assume ~c~0 == ~last~0 && 0 == ~st~0;~a~0 := 1 + ~a~0; {483#false} is VALID [2022-04-28 03:55:51,755 INFO L290 TraceCheckUtils]: 17: Hoare triple {483#false} assume ~d~0 == ~SIZE~0;~a~0 := 0;~b~0 := 1; {483#false} is VALID [2022-04-28 03:55:51,755 INFO L272 TraceCheckUtils]: 18: Hoare triple {483#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {483#false} is VALID [2022-04-28 03:55:51,755 INFO L290 TraceCheckUtils]: 19: Hoare triple {483#false} ~cond := #in~cond; {483#false} is VALID [2022-04-28 03:55:51,755 INFO L290 TraceCheckUtils]: 20: Hoare triple {483#false} assume 0 == ~cond; {483#false} is VALID [2022-04-28 03:55:51,755 INFO L290 TraceCheckUtils]: 21: Hoare triple {483#false} assume !false; {483#false} is VALID [2022-04-28 03:55:51,755 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 03:55:51,756 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:55:51,756 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1301289959] [2022-04-28 03:55:51,756 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1301289959] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:55:51,756 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:55:51,756 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 03:55:51,812 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:55:51,812 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [7773372] [2022-04-28 03:55:51,812 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [7773372] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:55:51,812 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:55:51,812 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-28 03:55:51,812 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1869691594] [2022-04-28 03:55:51,813 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:55:51,813 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.5714285714285716) internal successors, (18), 6 states have internal predecessors, (18), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 24 [2022-04-28 03:55:51,813 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:55:51,814 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 2.5714285714285716) internal successors, (18), 6 states have internal predecessors, (18), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 03:55:51,830 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-28 03:55:51,830 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-28 03:55:51,830 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:55:51,830 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-28 03:55:51,831 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=29, Unknown=0, NotChecked=0, Total=42 [2022-04-28 03:55:51,831 INFO L87 Difference]: Start difference. First operand 28 states and 34 transitions. Second operand has 7 states, 7 states have (on average 2.5714285714285716) internal successors, (18), 6 states have internal predecessors, (18), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 03:55:52,149 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:55:52,150 INFO L93 Difference]: Finished difference Result 59 states and 82 transitions. [2022-04-28 03:55:52,150 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 03:55:52,150 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.5714285714285716) internal successors, (18), 6 states have internal predecessors, (18), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 24 [2022-04-28 03:55:52,150 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:55:52,150 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.5714285714285716) internal successors, (18), 6 states have internal predecessors, (18), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 03:55:52,152 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 80 transitions. [2022-04-28 03:55:52,152 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.5714285714285716) internal successors, (18), 6 states have internal predecessors, (18), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 03:55:52,154 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 80 transitions. [2022-04-28 03:55:52,154 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 80 transitions. [2022-04-28 03:55:52,206 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:55:52,207 INFO L225 Difference]: With dead ends: 59 [2022-04-28 03:55:52,207 INFO L226 Difference]: Without dead ends: 43 [2022-04-28 03:55:52,207 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 11 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=19, Invalid=37, Unknown=0, NotChecked=0, Total=56 [2022-04-28 03:55:52,208 INFO L413 NwaCegarLoop]: 26 mSDtfsCounter, 23 mSDsluCounter, 19 mSDsCounter, 0 mSdLazyCounter, 137 mSolverCounterSat, 8 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 25 SdHoareTripleChecker+Valid, 45 SdHoareTripleChecker+Invalid, 145 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 8 IncrementalHoareTripleChecker+Valid, 137 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 03:55:52,208 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [25 Valid, 45 Invalid, 145 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [8 Valid, 137 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 03:55:52,208 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 43 states. [2022-04-28 03:55:52,238 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 43 to 35. [2022-04-28 03:55:52,238 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:55:52,238 INFO L82 GeneralOperation]: Start isEquivalent. First operand 43 states. Second operand has 35 states, 27 states have (on average 1.3333333333333333) internal successors, (36), 28 states have internal predecessors, (36), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 03:55:52,238 INFO L74 IsIncluded]: Start isIncluded. First operand 43 states. Second operand has 35 states, 27 states have (on average 1.3333333333333333) internal successors, (36), 28 states have internal predecessors, (36), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 03:55:52,238 INFO L87 Difference]: Start difference. First operand 43 states. Second operand has 35 states, 27 states have (on average 1.3333333333333333) internal successors, (36), 28 states have internal predecessors, (36), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 03:55:52,240 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:55:52,240 INFO L93 Difference]: Finished difference Result 43 states and 56 transitions. [2022-04-28 03:55:52,240 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 56 transitions. [2022-04-28 03:55:52,241 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:55:52,241 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:55:52,241 INFO L74 IsIncluded]: Start isIncluded. First operand has 35 states, 27 states have (on average 1.3333333333333333) internal successors, (36), 28 states have internal predecessors, (36), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 43 states. [2022-04-28 03:55:52,241 INFO L87 Difference]: Start difference. First operand has 35 states, 27 states have (on average 1.3333333333333333) internal successors, (36), 28 states have internal predecessors, (36), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 43 states. [2022-04-28 03:55:52,242 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:55:52,243 INFO L93 Difference]: Finished difference Result 43 states and 56 transitions. [2022-04-28 03:55:52,243 INFO L276 IsEmpty]: Start isEmpty. Operand 43 states and 56 transitions. [2022-04-28 03:55:52,243 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:55:52,243 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:55:52,243 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:55:52,243 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:55:52,243 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 27 states have (on average 1.3333333333333333) internal successors, (36), 28 states have internal predecessors, (36), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 03:55:52,244 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 43 transitions. [2022-04-28 03:55:52,244 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 43 transitions. Word has length 24 [2022-04-28 03:55:52,244 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:55:52,244 INFO L495 AbstractCegarLoop]: Abstraction has 35 states and 43 transitions. [2022-04-28 03:55:52,245 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 2.5714285714285716) internal successors, (18), 6 states have internal predecessors, (18), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 03:55:52,245 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 35 states and 43 transitions. [2022-04-28 03:55:52,275 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:55:52,275 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 43 transitions. [2022-04-28 03:55:52,276 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-04-28 03:55:52,276 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:55:52,276 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:55:52,276 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-04-28 03:55:52,276 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:55:52,277 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:55:52,277 INFO L85 PathProgramCache]: Analyzing trace with hash 708533296, now seen corresponding path program 1 times [2022-04-28 03:55:52,277 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:55:52,277 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [606720580] [2022-04-28 03:55:55,190 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:55:55,348 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:55:55,350 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:55:55,353 INFO L85 PathProgramCache]: Analyzing trace with hash 1961381293, now seen corresponding path program 1 times [2022-04-28 03:55:55,353 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:55:55,353 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1484591587] [2022-04-28 03:55:55,353 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:55:55,353 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:55:55,390 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:55:55,418 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:55:55,420 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:55:55,423 INFO L290 TraceCheckUtils]: 0: Hoare triple {784#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {774#true} is VALID [2022-04-28 03:55:55,423 INFO L290 TraceCheckUtils]: 1: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-28 03:55:55,423 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {774#true} {774#true} #90#return; {774#true} is VALID [2022-04-28 03:55:55,423 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:55:55,424 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:55:55,426 INFO L290 TraceCheckUtils]: 0: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-28 03:55:55,426 INFO L290 TraceCheckUtils]: 1: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-28 03:55:55,426 INFO L290 TraceCheckUtils]: 2: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-28 03:55:55,426 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {774#true} {774#true} #86#return; {774#true} is VALID [2022-04-28 03:55:55,427 INFO L272 TraceCheckUtils]: 0: Hoare triple {774#true} call ULTIMATE.init(); {784#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:55:55,427 INFO L290 TraceCheckUtils]: 1: Hoare triple {784#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {774#true} is VALID [2022-04-28 03:55:55,427 INFO L290 TraceCheckUtils]: 2: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-28 03:55:55,427 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {774#true} {774#true} #90#return; {774#true} is VALID [2022-04-28 03:55:55,427 INFO L272 TraceCheckUtils]: 4: Hoare triple {774#true} call #t~ret7 := main(); {774#true} is VALID [2022-04-28 03:55:55,428 INFO L290 TraceCheckUtils]: 5: Hoare triple {774#true} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {774#true} is VALID [2022-04-28 03:55:55,428 INFO L272 TraceCheckUtils]: 6: Hoare triple {774#true} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {774#true} is VALID [2022-04-28 03:55:55,428 INFO L290 TraceCheckUtils]: 7: Hoare triple {774#true} ~cond := #in~cond; {774#true} is VALID [2022-04-28 03:55:55,428 INFO L290 TraceCheckUtils]: 8: Hoare triple {774#true} assume !(0 == ~cond); {774#true} is VALID [2022-04-28 03:55:55,428 INFO L290 TraceCheckUtils]: 9: Hoare triple {774#true} assume true; {774#true} is VALID [2022-04-28 03:55:55,428 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {774#true} {774#true} #86#return; {774#true} is VALID [2022-04-28 03:55:55,428 INFO L290 TraceCheckUtils]: 11: Hoare triple {774#true} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {774#true} is VALID [2022-04-28 03:55:55,429 INFO L290 TraceCheckUtils]: 12: Hoare triple {774#true} assume !false;~st~0 := 1;~c~0 := 0; {783#(= main_~st~0 1)} is VALID [2022-04-28 03:55:55,429 INFO L290 TraceCheckUtils]: 13: Hoare triple {783#(= main_~st~0 1)} [96] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_23 v_main_~c~0_22)) (.cse1 (= |v_main_#t~post5_9| |v_main_#t~post5_8|))) (or (and (= v_~SIZE~0_14 v_~SIZE~0_14) .cse0 .cse1 (= v_~last~0_19 v_~last~0_19)) (and (< v_main_~c~0_22 (+ v_~last~0_19 1)) (< v_main_~c~0_23 v_main_~c~0_22) (< v_main_~c~0_22 (+ v_~SIZE~0_14 1))) (and (or (not (< v_main_~c~0_23 v_~SIZE~0_14)) (not (< v_main_~c~0_23 v_~last~0_19))) .cse0 .cse1))) InVars {~SIZE~0=v_~SIZE~0_14, main_~c~0=v_main_~c~0_23, main_#t~post5=|v_main_#t~post5_9|, ~last~0=v_~last~0_19} OutVars{~SIZE~0=v_~SIZE~0_14, main_#t~post5=|v_main_#t~post5_8|, main_~c~0=v_main_~c~0_22, ~last~0=v_~last~0_19} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {783#(= main_~st~0 1)} is VALID [2022-04-28 03:55:55,429 INFO L290 TraceCheckUtils]: 14: Hoare triple {783#(= main_~st~0 1)} [95] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {783#(= main_~st~0 1)} is VALID [2022-04-28 03:55:55,430 INFO L290 TraceCheckUtils]: 15: Hoare triple {783#(= main_~st~0 1)} assume !(0 == ~st~0 && ~c~0 == 1 + ~last~0);~a~0 := 2 + ~a~0;~b~0 := 2 + ~b~0; {783#(= main_~st~0 1)} is VALID [2022-04-28 03:55:55,430 INFO L290 TraceCheckUtils]: 16: Hoare triple {783#(= main_~st~0 1)} assume ~c~0 == ~last~0 && 0 == ~st~0;~a~0 := 1 + ~a~0; {775#false} is VALID [2022-04-28 03:55:55,430 INFO L290 TraceCheckUtils]: 17: Hoare triple {775#false} assume ~d~0 == ~SIZE~0;~a~0 := 0;~b~0 := 1; {775#false} is VALID [2022-04-28 03:55:55,430 INFO L272 TraceCheckUtils]: 18: Hoare triple {775#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {775#false} is VALID [2022-04-28 03:55:55,431 INFO L290 TraceCheckUtils]: 19: Hoare triple {775#false} ~cond := #in~cond; {775#false} is VALID [2022-04-28 03:55:55,431 INFO L290 TraceCheckUtils]: 20: Hoare triple {775#false} assume 0 == ~cond; {775#false} is VALID [2022-04-28 03:55:55,431 INFO L290 TraceCheckUtils]: 21: Hoare triple {775#false} assume !false; {775#false} is VALID [2022-04-28 03:55:55,431 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 03:55:55,431 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:55:55,431 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1484591587] [2022-04-28 03:55:55,431 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1484591587] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:55:55,431 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:55:55,431 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 03:55:55,474 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:55:55,474 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [606720580] [2022-04-28 03:55:55,474 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [606720580] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:55:55,474 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:55:55,474 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-28 03:55:55,474 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [563835726] [2022-04-28 03:55:55,474 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:55:55,475 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.5714285714285716) internal successors, (18), 6 states have internal predecessors, (18), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 24 [2022-04-28 03:55:55,475 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:55:55,475 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 2.5714285714285716) internal successors, (18), 6 states have internal predecessors, (18), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 03:55:55,492 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-28 03:55:55,492 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-28 03:55:55,492 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:55:55,492 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-28 03:55:55,492 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=26, Unknown=0, NotChecked=0, Total=42 [2022-04-28 03:55:55,492 INFO L87 Difference]: Start difference. First operand 35 states and 43 transitions. Second operand has 7 states, 7 states have (on average 2.5714285714285716) internal successors, (18), 6 states have internal predecessors, (18), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 03:55:55,788 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:55:55,789 INFO L93 Difference]: Finished difference Result 64 states and 85 transitions. [2022-04-28 03:55:55,789 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-28 03:55:55,789 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.5714285714285716) internal successors, (18), 6 states have internal predecessors, (18), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 24 [2022-04-28 03:55:55,789 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:55:55,789 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.5714285714285716) internal successors, (18), 6 states have internal predecessors, (18), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 03:55:55,791 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 75 transitions. [2022-04-28 03:55:55,791 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.5714285714285716) internal successors, (18), 6 states have internal predecessors, (18), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 03:55:55,793 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 75 transitions. [2022-04-28 03:55:55,793 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 75 transitions. [2022-04-28 03:55:55,843 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 75 edges. 75 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:55:55,844 INFO L225 Difference]: With dead ends: 64 [2022-04-28 03:55:55,844 INFO L226 Difference]: Without dead ends: 41 [2022-04-28 03:55:55,844 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 11 SyntacticMatches, 0 SemanticMatches, 6 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=22, Invalid=34, Unknown=0, NotChecked=0, Total=56 [2022-04-28 03:55:55,845 INFO L413 NwaCegarLoop]: 31 mSDtfsCounter, 22 mSDsluCounter, 24 mSDsCounter, 0 mSdLazyCounter, 142 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 23 SdHoareTripleChecker+Valid, 55 SdHoareTripleChecker+Invalid, 151 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 142 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 03:55:55,845 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [23 Valid, 55 Invalid, 151 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 142 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 03:55:55,846 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 41 states. [2022-04-28 03:55:55,880 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 41 to 34. [2022-04-28 03:55:55,880 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:55:55,880 INFO L82 GeneralOperation]: Start isEquivalent. First operand 41 states. Second operand has 34 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 27 states have internal predecessors, (33), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 03:55:55,881 INFO L74 IsIncluded]: Start isIncluded. First operand 41 states. Second operand has 34 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 27 states have internal predecessors, (33), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 03:55:55,881 INFO L87 Difference]: Start difference. First operand 41 states. Second operand has 34 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 27 states have internal predecessors, (33), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 03:55:55,882 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:55:55,882 INFO L93 Difference]: Finished difference Result 41 states and 52 transitions. [2022-04-28 03:55:55,882 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 52 transitions. [2022-04-28 03:55:55,882 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:55:55,882 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:55:55,883 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 27 states have internal predecessors, (33), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 41 states. [2022-04-28 03:55:55,883 INFO L87 Difference]: Start difference. First operand has 34 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 27 states have internal predecessors, (33), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand 41 states. [2022-04-28 03:55:55,884 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:55:55,884 INFO L93 Difference]: Finished difference Result 41 states and 52 transitions. [2022-04-28 03:55:55,884 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 52 transitions. [2022-04-28 03:55:55,884 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:55:55,884 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:55:55,884 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:55:55,884 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:55:55,885 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 26 states have (on average 1.2692307692307692) internal successors, (33), 27 states have internal predecessors, (33), 4 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 03:55:55,885 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 40 transitions. [2022-04-28 03:55:55,886 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 40 transitions. Word has length 24 [2022-04-28 03:55:55,886 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:55:55,886 INFO L495 AbstractCegarLoop]: Abstraction has 34 states and 40 transitions. [2022-04-28 03:55:55,886 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 2.5714285714285716) internal successors, (18), 6 states have internal predecessors, (18), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-28 03:55:55,886 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 34 states and 40 transitions. [2022-04-28 03:55:55,917 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:55:55,918 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 40 transitions. [2022-04-28 03:55:55,918 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-04-28 03:55:55,918 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:55:55,918 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:55:55,918 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-04-28 03:55:55,918 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:55:55,919 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:55:55,919 INFO L85 PathProgramCache]: Analyzing trace with hash -2061972965, now seen corresponding path program 1 times [2022-04-28 03:55:55,919 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:55:55,919 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1872228692] [2022-04-28 03:56:00,065 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:56:00,179 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:56:00,180 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:56:00,181 INFO L85 PathProgramCache]: Analyzing trace with hash -890294784, now seen corresponding path program 1 times [2022-04-28 03:56:00,182 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:56:00,182 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1415704506] [2022-04-28 03:56:00,182 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:56:00,182 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:56:00,199 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:00,236 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:56:00,238 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:00,247 INFO L290 TraceCheckUtils]: 0: Hoare triple {1081#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {1082#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:00,248 INFO L290 TraceCheckUtils]: 1: Hoare triple {1082#(<= 200000 ~SIZE~0)} assume true; {1082#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:00,248 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {1082#(<= 200000 ~SIZE~0)} {1070#true} #90#return; {1075#(not (= ~SIZE~0 0))} is VALID [2022-04-28 03:56:00,248 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:56:00,250 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:00,252 INFO L290 TraceCheckUtils]: 0: Hoare triple {1070#true} ~cond := #in~cond; {1070#true} is VALID [2022-04-28 03:56:00,252 INFO L290 TraceCheckUtils]: 1: Hoare triple {1070#true} assume !(0 == ~cond); {1070#true} is VALID [2022-04-28 03:56:00,252 INFO L290 TraceCheckUtils]: 2: Hoare triple {1070#true} assume true; {1070#true} is VALID [2022-04-28 03:56:00,253 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1070#true} {1075#(not (= ~SIZE~0 0))} #86#return; {1075#(not (= ~SIZE~0 0))} is VALID [2022-04-28 03:56:00,253 INFO L272 TraceCheckUtils]: 0: Hoare triple {1070#true} call ULTIMATE.init(); {1081#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:56:00,254 INFO L290 TraceCheckUtils]: 1: Hoare triple {1081#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {1082#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:00,254 INFO L290 TraceCheckUtils]: 2: Hoare triple {1082#(<= 200000 ~SIZE~0)} assume true; {1082#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:00,255 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1082#(<= 200000 ~SIZE~0)} {1070#true} #90#return; {1075#(not (= ~SIZE~0 0))} is VALID [2022-04-28 03:56:00,255 INFO L272 TraceCheckUtils]: 4: Hoare triple {1075#(not (= ~SIZE~0 0))} call #t~ret7 := main(); {1075#(not (= ~SIZE~0 0))} is VALID [2022-04-28 03:56:00,255 INFO L290 TraceCheckUtils]: 5: Hoare triple {1075#(not (= ~SIZE~0 0))} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {1075#(not (= ~SIZE~0 0))} is VALID [2022-04-28 03:56:00,255 INFO L272 TraceCheckUtils]: 6: Hoare triple {1075#(not (= ~SIZE~0 0))} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {1070#true} is VALID [2022-04-28 03:56:00,255 INFO L290 TraceCheckUtils]: 7: Hoare triple {1070#true} ~cond := #in~cond; {1070#true} is VALID [2022-04-28 03:56:00,256 INFO L290 TraceCheckUtils]: 8: Hoare triple {1070#true} assume !(0 == ~cond); {1070#true} is VALID [2022-04-28 03:56:00,256 INFO L290 TraceCheckUtils]: 9: Hoare triple {1070#true} assume true; {1070#true} is VALID [2022-04-28 03:56:00,256 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1070#true} {1075#(not (= ~SIZE~0 0))} #86#return; {1075#(not (= ~SIZE~0 0))} is VALID [2022-04-28 03:56:00,256 INFO L290 TraceCheckUtils]: 11: Hoare triple {1075#(not (= ~SIZE~0 0))} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {1080#(and (= main_~d~0 0) (not (= ~SIZE~0 0)))} is VALID [2022-04-28 03:56:00,257 INFO L290 TraceCheckUtils]: 12: Hoare triple {1080#(and (= main_~d~0 0) (not (= ~SIZE~0 0)))} assume !false;~st~0 := 1;~c~0 := 0; {1080#(and (= main_~d~0 0) (not (= ~SIZE~0 0)))} is VALID [2022-04-28 03:56:00,257 INFO L290 TraceCheckUtils]: 13: Hoare triple {1080#(and (= main_~d~0 0) (not (= ~SIZE~0 0)))} [98] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_21 v_main_~c~0_30)) (.cse1 (= |v_main_#t~post5_14| |v_main_#t~post5_13|))) (or (and (or (not .cse0) (not (< v_main_~c~0_30 v_~SIZE~0_16))) (= v_main_~c~0_29 v_main_~c~0_30) (= v_main_~st~0_15 v_main_~st~0_16) .cse1) (and (< v_main_~c~0_30 v_main_~c~0_29) (= 0 v_main_~st~0_15) (< v_main_~c~0_29 (+ v_~SIZE~0_16 1)) .cse0) (and (= v_main_~c~0_30 v_main_~c~0_29) (= v_~last~0_21 v_~last~0_21) (= v_~SIZE~0_16 v_~SIZE~0_16) .cse1 (= v_main_~st~0_16 v_main_~st~0_15)))) InVars {~SIZE~0=v_~SIZE~0_16, main_~c~0=v_main_~c~0_30, main_#t~post5=|v_main_#t~post5_14|, main_~st~0=v_main_~st~0_16, ~last~0=v_~last~0_21} OutVars{~SIZE~0=v_~SIZE~0_16, main_#t~post5=|v_main_#t~post5_13|, main_~c~0=v_main_~c~0_29, main_~st~0=v_main_~st~0_15, ~last~0=v_~last~0_21} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {1080#(and (= main_~d~0 0) (not (= ~SIZE~0 0)))} is VALID [2022-04-28 03:56:00,258 INFO L290 TraceCheckUtils]: 14: Hoare triple {1080#(and (= main_~d~0 0) (not (= ~SIZE~0 0)))} [97] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {1080#(and (= main_~d~0 0) (not (= ~SIZE~0 0)))} is VALID [2022-04-28 03:56:00,258 INFO L290 TraceCheckUtils]: 15: Hoare triple {1080#(and (= main_~d~0 0) (not (= ~SIZE~0 0)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {1080#(and (= main_~d~0 0) (not (= ~SIZE~0 0)))} is VALID [2022-04-28 03:56:00,259 INFO L290 TraceCheckUtils]: 16: Hoare triple {1080#(and (= main_~d~0 0) (not (= ~SIZE~0 0)))} assume !(~c~0 == ~last~0 && 0 == ~st~0); {1080#(and (= main_~d~0 0) (not (= ~SIZE~0 0)))} is VALID [2022-04-28 03:56:00,259 INFO L290 TraceCheckUtils]: 17: Hoare triple {1080#(and (= main_~d~0 0) (not (= ~SIZE~0 0)))} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {1080#(and (= main_~d~0 0) (not (= ~SIZE~0 0)))} is VALID [2022-04-28 03:56:00,259 INFO L290 TraceCheckUtils]: 18: Hoare triple {1080#(and (= main_~d~0 0) (not (= ~SIZE~0 0)))} assume ~d~0 == ~SIZE~0;~a~0 := 0;~b~0 := 1; {1071#false} is VALID [2022-04-28 03:56:00,260 INFO L272 TraceCheckUtils]: 19: Hoare triple {1071#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {1071#false} is VALID [2022-04-28 03:56:00,260 INFO L290 TraceCheckUtils]: 20: Hoare triple {1071#false} ~cond := #in~cond; {1071#false} is VALID [2022-04-28 03:56:00,260 INFO L290 TraceCheckUtils]: 21: Hoare triple {1071#false} assume 0 == ~cond; {1071#false} is VALID [2022-04-28 03:56:00,260 INFO L290 TraceCheckUtils]: 22: Hoare triple {1071#false} assume !false; {1071#false} is VALID [2022-04-28 03:56:00,260 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 03:56:00,260 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:56:00,260 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1415704506] [2022-04-28 03:56:00,260 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1415704506] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:56:00,260 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:56:00,261 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 03:56:00,326 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:56:00,326 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1872228692] [2022-04-28 03:56:00,326 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1872228692] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:56:00,326 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:56:00,326 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 03:56:00,327 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2113169427] [2022-04-28 03:56:00,327 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:56:00,327 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 25 [2022-04-28 03:56:00,327 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:56:00,327 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:00,342 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:56:00,342 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 03:56:00,342 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:56:00,342 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 03:56:00,342 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=24, Invalid=48, Unknown=0, NotChecked=0, Total=72 [2022-04-28 03:56:00,343 INFO L87 Difference]: Start difference. First operand 34 states and 40 transitions. Second operand has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:00,729 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:56:00,729 INFO L93 Difference]: Finished difference Result 77 states and 98 transitions. [2022-04-28 03:56:00,729 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-28 03:56:00,729 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 25 [2022-04-28 03:56:00,730 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:56:00,730 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:00,731 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 82 transitions. [2022-04-28 03:56:00,731 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:00,733 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 82 transitions. [2022-04-28 03:56:00,733 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 82 transitions. [2022-04-28 03:56:00,813 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 82 edges. 82 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:56:00,814 INFO L225 Difference]: With dead ends: 77 [2022-04-28 03:56:00,814 INFO L226 Difference]: Without dead ends: 55 [2022-04-28 03:56:00,815 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 23 GetRequests, 9 SyntacticMatches, 1 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 19 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=69, Invalid=141, Unknown=0, NotChecked=0, Total=210 [2022-04-28 03:56:00,815 INFO L413 NwaCegarLoop]: 19 mSDtfsCounter, 111 mSDsluCounter, 10 mSDsCounter, 0 mSdLazyCounter, 94 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 113 SdHoareTripleChecker+Valid, 29 SdHoareTripleChecker+Invalid, 124 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 94 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 03:56:00,815 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [113 Valid, 29 Invalid, 124 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 94 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 03:56:00,816 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 55 states. [2022-04-28 03:56:00,876 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 55 to 50. [2022-04-28 03:56:00,876 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:56:00,876 INFO L82 GeneralOperation]: Start isEquivalent. First operand 55 states. Second operand has 50 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 03:56:00,876 INFO L74 IsIncluded]: Start isIncluded. First operand 55 states. Second operand has 50 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 03:56:00,876 INFO L87 Difference]: Start difference. First operand 55 states. Second operand has 50 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 03:56:00,878 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:56:00,878 INFO L93 Difference]: Finished difference Result 55 states and 68 transitions. [2022-04-28 03:56:00,878 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 68 transitions. [2022-04-28 03:56:00,878 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:56:00,879 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:56:00,879 INFO L74 IsIncluded]: Start isIncluded. First operand has 50 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 55 states. [2022-04-28 03:56:00,879 INFO L87 Difference]: Start difference. First operand has 50 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 55 states. [2022-04-28 03:56:00,880 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:56:00,880 INFO L93 Difference]: Finished difference Result 55 states and 68 transitions. [2022-04-28 03:56:00,880 INFO L276 IsEmpty]: Start isEmpty. Operand 55 states and 68 transitions. [2022-04-28 03:56:00,881 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:56:00,881 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:56:00,881 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:56:00,881 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:56:00,881 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 50 states, 41 states have (on average 1.2926829268292683) internal successors, (53), 42 states have internal predecessors, (53), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 03:56:00,882 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 62 transitions. [2022-04-28 03:56:00,882 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 62 transitions. Word has length 25 [2022-04-28 03:56:00,882 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:56:00,882 INFO L495 AbstractCegarLoop]: Abstraction has 50 states and 62 transitions. [2022-04-28 03:56:00,883 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:00,883 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 50 states and 62 transitions. [2022-04-28 03:56:00,930 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 62 edges. 62 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:56:00,931 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 62 transitions. [2022-04-28 03:56:00,931 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-04-28 03:56:00,931 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:56:00,931 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:56:00,931 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4 [2022-04-28 03:56:00,931 INFO L420 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:56:00,932 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:56:00,932 INFO L85 PathProgramCache]: Analyzing trace with hash -2060125923, now seen corresponding path program 1 times [2022-04-28 03:56:00,932 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:56:00,932 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [682954721] [2022-04-28 03:56:03,616 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:56:03,739 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:56:03,741 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:56:03,742 INFO L85 PathProgramCache]: Analyzing trace with hash -601416382, now seen corresponding path program 1 times [2022-04-28 03:56:03,742 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:56:03,742 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [846991038] [2022-04-28 03:56:03,742 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:56:03,743 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:56:03,754 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:03,807 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:56:03,810 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:03,819 INFO L290 TraceCheckUtils]: 0: Hoare triple {1478#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {1470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:03,820 INFO L290 TraceCheckUtils]: 1: Hoare triple {1470#(<= 200000 ~SIZE~0)} assume true; {1470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:03,820 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {1470#(<= 200000 ~SIZE~0)} {1465#true} #90#return; {1470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:03,820 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:56:03,821 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:03,824 INFO L290 TraceCheckUtils]: 0: Hoare triple {1465#true} ~cond := #in~cond; {1465#true} is VALID [2022-04-28 03:56:03,824 INFO L290 TraceCheckUtils]: 1: Hoare triple {1465#true} assume !(0 == ~cond); {1465#true} is VALID [2022-04-28 03:56:03,824 INFO L290 TraceCheckUtils]: 2: Hoare triple {1465#true} assume true; {1465#true} is VALID [2022-04-28 03:56:03,824 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1465#true} {1470#(<= 200000 ~SIZE~0)} #86#return; {1470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:03,825 INFO L272 TraceCheckUtils]: 0: Hoare triple {1465#true} call ULTIMATE.init(); {1478#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:56:03,826 INFO L290 TraceCheckUtils]: 1: Hoare triple {1478#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {1470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:03,826 INFO L290 TraceCheckUtils]: 2: Hoare triple {1470#(<= 200000 ~SIZE~0)} assume true; {1470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:03,826 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1470#(<= 200000 ~SIZE~0)} {1465#true} #90#return; {1470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:03,827 INFO L272 TraceCheckUtils]: 4: Hoare triple {1470#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {1470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:03,827 INFO L290 TraceCheckUtils]: 5: Hoare triple {1470#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {1470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:03,827 INFO L272 TraceCheckUtils]: 6: Hoare triple {1470#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {1465#true} is VALID [2022-04-28 03:56:03,827 INFO L290 TraceCheckUtils]: 7: Hoare triple {1465#true} ~cond := #in~cond; {1465#true} is VALID [2022-04-28 03:56:03,827 INFO L290 TraceCheckUtils]: 8: Hoare triple {1465#true} assume !(0 == ~cond); {1465#true} is VALID [2022-04-28 03:56:03,827 INFO L290 TraceCheckUtils]: 9: Hoare triple {1465#true} assume true; {1465#true} is VALID [2022-04-28 03:56:03,828 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1465#true} {1470#(<= 200000 ~SIZE~0)} #86#return; {1470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:03,828 INFO L290 TraceCheckUtils]: 11: Hoare triple {1470#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {1470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:03,829 INFO L290 TraceCheckUtils]: 12: Hoare triple {1470#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {1475#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:03,829 INFO L290 TraceCheckUtils]: 13: Hoare triple {1475#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [100] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_37 v_main_~c~0_36)) (.cse1 (= v_main_~st~0_21 v_main_~st~0_20)) (.cse2 (= |v_main_#t~post5_19| |v_main_#t~post5_18|)) (.cse3 (<= v_~last~0_23 v_main_~c~0_37))) (or (and (= v_~last~0_23 v_~last~0_23) .cse0 .cse1 .cse2 (= v_~SIZE~0_18 v_~SIZE~0_18)) (and (or (not .cse3) (not (< v_main_~c~0_37 v_~SIZE~0_18))) .cse0 .cse1 .cse2) (and (< v_main_~c~0_36 (+ v_~SIZE~0_18 1)) .cse3 (< v_main_~c~0_37 v_main_~c~0_36) (= 0 v_main_~st~0_20)))) InVars {~SIZE~0=v_~SIZE~0_18, main_~c~0=v_main_~c~0_37, main_#t~post5=|v_main_#t~post5_19|, main_~st~0=v_main_~st~0_21, ~last~0=v_~last~0_23} OutVars{~SIZE~0=v_~SIZE~0_18, main_#t~post5=|v_main_#t~post5_18|, main_~c~0=v_main_~c~0_36, main_~st~0=v_main_~st~0_20, ~last~0=v_~last~0_23} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {1476#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:56:03,830 INFO L290 TraceCheckUtils]: 14: Hoare triple {1476#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [99] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {1477#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 03:56:03,830 INFO L290 TraceCheckUtils]: 15: Hoare triple {1477#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {1466#false} is VALID [2022-04-28 03:56:03,830 INFO L290 TraceCheckUtils]: 16: Hoare triple {1466#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {1466#false} is VALID [2022-04-28 03:56:03,830 INFO L290 TraceCheckUtils]: 17: Hoare triple {1466#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {1466#false} is VALID [2022-04-28 03:56:03,830 INFO L290 TraceCheckUtils]: 18: Hoare triple {1466#false} assume !(~d~0 == ~SIZE~0); {1466#false} is VALID [2022-04-28 03:56:03,831 INFO L272 TraceCheckUtils]: 19: Hoare triple {1466#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {1466#false} is VALID [2022-04-28 03:56:03,831 INFO L290 TraceCheckUtils]: 20: Hoare triple {1466#false} ~cond := #in~cond; {1466#false} is VALID [2022-04-28 03:56:03,831 INFO L290 TraceCheckUtils]: 21: Hoare triple {1466#false} assume 0 == ~cond; {1466#false} is VALID [2022-04-28 03:56:03,831 INFO L290 TraceCheckUtils]: 22: Hoare triple {1466#false} assume !false; {1466#false} is VALID [2022-04-28 03:56:03,831 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 03:56:03,831 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:56:03,831 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [846991038] [2022-04-28 03:56:03,831 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [846991038] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:56:03,831 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:56:03,831 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-28 03:56:03,976 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:56:03,976 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [682954721] [2022-04-28 03:56:03,976 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [682954721] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:56:03,976 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:56:03,976 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 03:56:03,976 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1269735061] [2022-04-28 03:56:03,976 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:56:03,976 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 25 [2022-04-28 03:56:03,976 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:56:03,977 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:03,992 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:56:03,993 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 03:56:03,993 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:56:03,993 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 03:56:03,993 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=34, Invalid=76, Unknown=0, NotChecked=0, Total=110 [2022-04-28 03:56:03,993 INFO L87 Difference]: Start difference. First operand 50 states and 62 transitions. Second operand has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:04,613 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:56:04,613 INFO L93 Difference]: Finished difference Result 118 states and 154 transitions. [2022-04-28 03:56:04,613 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-28 03:56:04,613 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 25 [2022-04-28 03:56:04,613 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:56:04,613 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:04,617 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 82 transitions. [2022-04-28 03:56:04,617 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:04,618 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 82 transitions. [2022-04-28 03:56:04,619 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 82 transitions. [2022-04-28 03:56:04,674 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 82 edges. 82 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:56:04,676 INFO L225 Difference]: With dead ends: 118 [2022-04-28 03:56:04,676 INFO L226 Difference]: Without dead ends: 80 [2022-04-28 03:56:04,676 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 26 GetRequests, 12 SyntacticMatches, 0 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 31 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=68, Invalid=172, Unknown=0, NotChecked=0, Total=240 [2022-04-28 03:56:04,677 INFO L413 NwaCegarLoop]: 20 mSDtfsCounter, 65 mSDsluCounter, 11 mSDsCounter, 0 mSdLazyCounter, 183 mSolverCounterSat, 23 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 66 SdHoareTripleChecker+Valid, 31 SdHoareTripleChecker+Invalid, 206 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 23 IncrementalHoareTripleChecker+Valid, 183 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 03:56:04,677 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [66 Valid, 31 Invalid, 206 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [23 Valid, 183 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 03:56:04,678 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 80 states. [2022-04-28 03:56:04,809 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 80 to 60. [2022-04-28 03:56:04,809 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:56:04,809 INFO L82 GeneralOperation]: Start isEquivalent. First operand 80 states. Second operand has 60 states, 51 states have (on average 1.3137254901960784) internal successors, (67), 52 states have internal predecessors, (67), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 03:56:04,810 INFO L74 IsIncluded]: Start isIncluded. First operand 80 states. Second operand has 60 states, 51 states have (on average 1.3137254901960784) internal successors, (67), 52 states have internal predecessors, (67), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 03:56:04,810 INFO L87 Difference]: Start difference. First operand 80 states. Second operand has 60 states, 51 states have (on average 1.3137254901960784) internal successors, (67), 52 states have internal predecessors, (67), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 03:56:04,817 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:56:04,817 INFO L93 Difference]: Finished difference Result 80 states and 102 transitions. [2022-04-28 03:56:04,817 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 102 transitions. [2022-04-28 03:56:04,817 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:56:04,817 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:56:04,817 INFO L74 IsIncluded]: Start isIncluded. First operand has 60 states, 51 states have (on average 1.3137254901960784) internal successors, (67), 52 states have internal predecessors, (67), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 80 states. [2022-04-28 03:56:04,818 INFO L87 Difference]: Start difference. First operand has 60 states, 51 states have (on average 1.3137254901960784) internal successors, (67), 52 states have internal predecessors, (67), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 80 states. [2022-04-28 03:56:04,819 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:56:04,819 INFO L93 Difference]: Finished difference Result 80 states and 102 transitions. [2022-04-28 03:56:04,820 INFO L276 IsEmpty]: Start isEmpty. Operand 80 states and 102 transitions. [2022-04-28 03:56:04,820 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:56:04,820 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:56:04,820 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:56:04,820 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:56:04,820 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 60 states, 51 states have (on average 1.3137254901960784) internal successors, (67), 52 states have internal predecessors, (67), 5 states have call successors, (5), 4 states have call predecessors, (5), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-28 03:56:04,822 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 60 states to 60 states and 76 transitions. [2022-04-28 03:56:04,822 INFO L78 Accepts]: Start accepts. Automaton has 60 states and 76 transitions. Word has length 25 [2022-04-28 03:56:04,822 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:56:04,822 INFO L495 AbstractCegarLoop]: Abstraction has 60 states and 76 transitions. [2022-04-28 03:56:04,823 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:04,823 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 60 states and 76 transitions. [2022-04-28 03:56:04,890 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 76 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:56:04,890 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 76 transitions. [2022-04-28 03:56:04,890 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-04-28 03:56:04,890 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:56:04,890 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:56:04,890 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5 [2022-04-28 03:56:04,891 INFO L420 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:56:04,891 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:56:04,891 INFO L85 PathProgramCache]: Analyzing trace with hash 1425494747, now seen corresponding path program 1 times [2022-04-28 03:56:04,891 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:56:04,891 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1778585450] [2022-04-28 03:56:09,029 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:56:09,148 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:56:09,149 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:56:09,151 INFO L85 PathProgramCache]: Analyzing trace with hash -1123731648, now seen corresponding path program 1 times [2022-04-28 03:56:09,151 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:56:09,151 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [48478592] [2022-04-28 03:56:09,151 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:56:09,151 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:56:09,163 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:09,298 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:56:09,300 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:09,313 INFO L290 TraceCheckUtils]: 0: Hoare triple {2029#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {2017#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:09,313 INFO L290 TraceCheckUtils]: 1: Hoare triple {2017#(<= 200000 ~SIZE~0)} assume true; {2017#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:09,314 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {2017#(<= 200000 ~SIZE~0)} {2012#true} #90#return; {2017#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:09,314 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:56:09,315 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:09,318 INFO L290 TraceCheckUtils]: 0: Hoare triple {2012#true} ~cond := #in~cond; {2012#true} is VALID [2022-04-28 03:56:09,318 INFO L290 TraceCheckUtils]: 1: Hoare triple {2012#true} assume !(0 == ~cond); {2012#true} is VALID [2022-04-28 03:56:09,318 INFO L290 TraceCheckUtils]: 2: Hoare triple {2012#true} assume true; {2012#true} is VALID [2022-04-28 03:56:09,318 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2012#true} {2017#(<= 200000 ~SIZE~0)} #86#return; {2017#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:09,319 INFO L272 TraceCheckUtils]: 0: Hoare triple {2012#true} call ULTIMATE.init(); {2029#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:56:09,319 INFO L290 TraceCheckUtils]: 1: Hoare triple {2029#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {2017#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:09,320 INFO L290 TraceCheckUtils]: 2: Hoare triple {2017#(<= 200000 ~SIZE~0)} assume true; {2017#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:09,320 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2017#(<= 200000 ~SIZE~0)} {2012#true} #90#return; {2017#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:09,320 INFO L272 TraceCheckUtils]: 4: Hoare triple {2017#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {2017#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:09,321 INFO L290 TraceCheckUtils]: 5: Hoare triple {2017#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {2017#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:09,321 INFO L272 TraceCheckUtils]: 6: Hoare triple {2017#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {2012#true} is VALID [2022-04-28 03:56:09,321 INFO L290 TraceCheckUtils]: 7: Hoare triple {2012#true} ~cond := #in~cond; {2012#true} is VALID [2022-04-28 03:56:09,321 INFO L290 TraceCheckUtils]: 8: Hoare triple {2012#true} assume !(0 == ~cond); {2012#true} is VALID [2022-04-28 03:56:09,321 INFO L290 TraceCheckUtils]: 9: Hoare triple {2012#true} assume true; {2012#true} is VALID [2022-04-28 03:56:09,322 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2012#true} {2017#(<= 200000 ~SIZE~0)} #86#return; {2017#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:09,322 INFO L290 TraceCheckUtils]: 11: Hoare triple {2017#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {2022#(and (= main_~a~0 0) (= main_~b~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:09,322 INFO L290 TraceCheckUtils]: 12: Hoare triple {2022#(and (= main_~a~0 0) (= main_~b~0 0) (<= 200000 ~SIZE~0))} assume !false;~st~0 := 1;~c~0 := 0; {2023#(and (= main_~a~0 0) (= main_~b~0 0) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:09,323 INFO L290 TraceCheckUtils]: 13: Hoare triple {2023#(and (= main_~a~0 0) (= main_~b~0 0) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [102] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_44 v_main_~c~0_43)) (.cse1 (= |v_main_#t~post5_24| |v_main_#t~post5_23|)) (.cse2 (<= v_~last~0_25 v_main_~c~0_44))) (or (and .cse0 .cse1 (= v_~last~0_25 v_~last~0_25) (= v_~SIZE~0_20 v_~SIZE~0_20) (= v_main_~st~0_27 v_main_~st~0_26)) (and (= v_main_~st~0_26 v_main_~st~0_27) .cse0 (or (not (< v_main_~c~0_44 v_~SIZE~0_20)) (not .cse2)) .cse1) (and (= 0 v_main_~st~0_26) (< v_main_~c~0_44 v_main_~c~0_43) (< v_main_~c~0_43 (+ v_~SIZE~0_20 1)) .cse2))) InVars {~SIZE~0=v_~SIZE~0_20, main_~c~0=v_main_~c~0_44, main_#t~post5=|v_main_#t~post5_24|, main_~st~0=v_main_~st~0_27, ~last~0=v_~last~0_25} OutVars{~SIZE~0=v_~SIZE~0_20, main_#t~post5=|v_main_#t~post5_23|, main_~c~0=v_main_~c~0_43, main_~st~0=v_main_~st~0_26, ~last~0=v_~last~0_25} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {2024#(or (and (= main_~c~0 0) (<= 200000 ~SIZE~0)) (and (= main_~a~0 0) (not (<= (+ ~SIZE~0 1) main_~c~0)) (= main_~b~0 0)))} is VALID [2022-04-28 03:56:09,324 INFO L290 TraceCheckUtils]: 14: Hoare triple {2024#(or (and (= main_~c~0 0) (<= 200000 ~SIZE~0)) (and (= main_~a~0 0) (not (<= (+ ~SIZE~0 1) main_~c~0)) (= main_~b~0 0)))} [101] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {2025#(and (= main_~a~0 0) (= (+ ~SIZE~0 (* (- 1) main_~c~0)) 0) (= main_~b~0 0))} is VALID [2022-04-28 03:56:09,324 INFO L290 TraceCheckUtils]: 15: Hoare triple {2025#(and (= main_~a~0 0) (= (+ ~SIZE~0 (* (- 1) main_~c~0)) 0) (= main_~b~0 0))} assume !(0 == ~st~0 && ~c~0 == 1 + ~last~0);~a~0 := 2 + ~a~0;~b~0 := 2 + ~b~0; {2026#(and (= (+ ~SIZE~0 (* (- 1) main_~c~0)) 0) (<= main_~b~0 main_~a~0) (< main_~a~0 (+ main_~b~0 1)))} is VALID [2022-04-28 03:56:09,325 INFO L290 TraceCheckUtils]: 16: Hoare triple {2026#(and (= (+ ~SIZE~0 (* (- 1) main_~c~0)) 0) (<= main_~b~0 main_~a~0) (< main_~a~0 (+ main_~b~0 1)))} assume !(~c~0 == ~last~0 && 0 == ~st~0); {2026#(and (= (+ ~SIZE~0 (* (- 1) main_~c~0)) 0) (<= main_~b~0 main_~a~0) (< main_~a~0 (+ main_~b~0 1)))} is VALID [2022-04-28 03:56:09,325 INFO L290 TraceCheckUtils]: 17: Hoare triple {2026#(and (= (+ ~SIZE~0 (* (- 1) main_~c~0)) 0) (<= main_~b~0 main_~a~0) (< main_~a~0 (+ main_~b~0 1)))} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {2026#(and (= (+ ~SIZE~0 (* (- 1) main_~c~0)) 0) (<= main_~b~0 main_~a~0) (< main_~a~0 (+ main_~b~0 1)))} is VALID [2022-04-28 03:56:09,326 INFO L290 TraceCheckUtils]: 18: Hoare triple {2026#(and (= (+ ~SIZE~0 (* (- 1) main_~c~0)) 0) (<= main_~b~0 main_~a~0) (< main_~a~0 (+ main_~b~0 1)))} assume !(~d~0 == ~SIZE~0); {2026#(and (= (+ ~SIZE~0 (* (- 1) main_~c~0)) 0) (<= main_~b~0 main_~a~0) (< main_~a~0 (+ main_~b~0 1)))} is VALID [2022-04-28 03:56:09,326 INFO L272 TraceCheckUtils]: 19: Hoare triple {2026#(and (= (+ ~SIZE~0 (* (- 1) main_~c~0)) 0) (<= main_~b~0 main_~a~0) (< main_~a~0 (+ main_~b~0 1)))} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {2027#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 03:56:09,327 INFO L290 TraceCheckUtils]: 20: Hoare triple {2027#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {2028#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 03:56:09,327 INFO L290 TraceCheckUtils]: 21: Hoare triple {2028#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {2013#false} is VALID [2022-04-28 03:56:09,327 INFO L290 TraceCheckUtils]: 22: Hoare triple {2013#false} assume !false; {2013#false} is VALID [2022-04-28 03:56:09,327 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 03:56:09,327 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:56:09,327 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [48478592] [2022-04-28 03:56:09,328 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [48478592] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:56:09,328 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:56:09,328 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-28 03:56:09,461 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:56:09,461 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1778585450] [2022-04-28 03:56:09,461 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1778585450] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:56:09,461 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:56:09,461 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 03:56:09,461 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [483848524] [2022-04-28 03:56:09,461 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:56:09,462 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 1.4615384615384615) internal successors, (19), 11 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 25 [2022-04-28 03:56:09,462 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:56:09,462 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 1.4615384615384615) internal successors, (19), 11 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:09,478 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:56:09,478 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 03:56:09,479 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:56:09,479 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 03:56:09,479 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=51, Invalid=159, Unknown=0, NotChecked=0, Total=210 [2022-04-28 03:56:09,479 INFO L87 Difference]: Start difference. First operand 60 states and 76 transitions. Second operand has 13 states, 13 states have (on average 1.4615384615384615) internal successors, (19), 11 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:10,122 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:56:10,123 INFO L93 Difference]: Finished difference Result 88 states and 110 transitions. [2022-04-28 03:56:10,123 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-28 03:56:10,123 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 1.4615384615384615) internal successors, (19), 11 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 25 [2022-04-28 03:56:10,123 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:56:10,123 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 1.4615384615384615) internal successors, (19), 11 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:10,124 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 61 transitions. [2022-04-28 03:56:10,124 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 1.4615384615384615) internal successors, (19), 11 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:10,125 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 61 transitions. [2022-04-28 03:56:10,125 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 61 transitions. [2022-04-28 03:56:10,187 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:56:10,188 INFO L225 Difference]: With dead ends: 88 [2022-04-28 03:56:10,189 INFO L226 Difference]: Without dead ends: 86 [2022-04-28 03:56:10,189 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 26 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 83 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=99, Invalid=363, Unknown=0, NotChecked=0, Total=462 [2022-04-28 03:56:10,189 INFO L413 NwaCegarLoop]: 17 mSDtfsCounter, 75 mSDsluCounter, 29 mSDsCounter, 0 mSdLazyCounter, 210 mSolverCounterSat, 26 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 76 SdHoareTripleChecker+Valid, 46 SdHoareTripleChecker+Invalid, 236 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 26 IncrementalHoareTripleChecker+Valid, 210 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 03:56:10,190 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [76 Valid, 46 Invalid, 236 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [26 Valid, 210 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 03:56:10,190 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 86 states. [2022-04-28 03:56:10,357 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 86 to 75. [2022-04-28 03:56:10,357 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:56:10,357 INFO L82 GeneralOperation]: Start isEquivalent. First operand 86 states. Second operand has 75 states, 64 states have (on average 1.28125) internal successors, (82), 65 states have internal predecessors, (82), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-28 03:56:10,357 INFO L74 IsIncluded]: Start isIncluded. First operand 86 states. Second operand has 75 states, 64 states have (on average 1.28125) internal successors, (82), 65 states have internal predecessors, (82), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-28 03:56:10,358 INFO L87 Difference]: Start difference. First operand 86 states. Second operand has 75 states, 64 states have (on average 1.28125) internal successors, (82), 65 states have internal predecessors, (82), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-28 03:56:10,360 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:56:10,360 INFO L93 Difference]: Finished difference Result 86 states and 108 transitions. [2022-04-28 03:56:10,360 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 108 transitions. [2022-04-28 03:56:10,360 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:56:10,360 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:56:10,360 INFO L74 IsIncluded]: Start isIncluded. First operand has 75 states, 64 states have (on average 1.28125) internal successors, (82), 65 states have internal predecessors, (82), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) Second operand 86 states. [2022-04-28 03:56:10,361 INFO L87 Difference]: Start difference. First operand has 75 states, 64 states have (on average 1.28125) internal successors, (82), 65 states have internal predecessors, (82), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) Second operand 86 states. [2022-04-28 03:56:10,363 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:56:10,363 INFO L93 Difference]: Finished difference Result 86 states and 108 transitions. [2022-04-28 03:56:10,363 INFO L276 IsEmpty]: Start isEmpty. Operand 86 states and 108 transitions. [2022-04-28 03:56:10,363 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:56:10,363 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:56:10,363 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:56:10,363 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:56:10,364 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 75 states, 64 states have (on average 1.28125) internal successors, (82), 65 states have internal predecessors, (82), 6 states have call successors, (6), 5 states have call predecessors, (6), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-28 03:56:10,366 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 75 states to 75 states and 93 transitions. [2022-04-28 03:56:10,366 INFO L78 Accepts]: Start accepts. Automaton has 75 states and 93 transitions. Word has length 25 [2022-04-28 03:56:10,367 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:56:10,368 INFO L495 AbstractCegarLoop]: Abstraction has 75 states and 93 transitions. [2022-04-28 03:56:10,368 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 1.4615384615384615) internal successors, (19), 11 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:10,368 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 75 states and 93 transitions. [2022-04-28 03:56:10,465 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 93 edges. 93 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:56:10,466 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 93 transitions. [2022-04-28 03:56:10,466 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-04-28 03:56:10,466 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:56:10,466 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:56:10,466 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6 [2022-04-28 03:56:10,466 INFO L420 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:56:10,467 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:56:10,467 INFO L85 PathProgramCache]: Analyzing trace with hash 2067453981, now seen corresponding path program 1 times [2022-04-28 03:56:10,467 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:56:10,467 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [426093675] [2022-04-28 03:56:10,688 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:56:10,689 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:56:10,695 INFO L85 PathProgramCache]: Analyzing trace with hash -895805632, now seen corresponding path program 1 times [2022-04-28 03:56:10,695 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:56:10,695 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1748210606] [2022-04-28 03:56:10,695 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:56:10,695 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:56:10,704 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:10,743 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:56:10,747 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:10,755 INFO L290 TraceCheckUtils]: 0: Hoare triple {2561#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {2554#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:10,758 INFO L290 TraceCheckUtils]: 1: Hoare triple {2554#(<= 200000 ~SIZE~0)} assume true; {2554#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:10,758 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {2554#(<= 200000 ~SIZE~0)} {2549#true} #90#return; {2554#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:10,758 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:56:10,759 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:10,763 INFO L290 TraceCheckUtils]: 0: Hoare triple {2549#true} ~cond := #in~cond; {2549#true} is VALID [2022-04-28 03:56:10,763 INFO L290 TraceCheckUtils]: 1: Hoare triple {2549#true} assume !(0 == ~cond); {2549#true} is VALID [2022-04-28 03:56:10,763 INFO L290 TraceCheckUtils]: 2: Hoare triple {2549#true} assume true; {2549#true} is VALID [2022-04-28 03:56:10,763 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2549#true} {2554#(<= 200000 ~SIZE~0)} #86#return; {2554#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:10,764 INFO L272 TraceCheckUtils]: 0: Hoare triple {2549#true} call ULTIMATE.init(); {2561#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:56:10,764 INFO L290 TraceCheckUtils]: 1: Hoare triple {2561#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {2554#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:10,765 INFO L290 TraceCheckUtils]: 2: Hoare triple {2554#(<= 200000 ~SIZE~0)} assume true; {2554#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:10,765 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2554#(<= 200000 ~SIZE~0)} {2549#true} #90#return; {2554#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:10,765 INFO L272 TraceCheckUtils]: 4: Hoare triple {2554#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {2554#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:10,766 INFO L290 TraceCheckUtils]: 5: Hoare triple {2554#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {2554#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:10,766 INFO L272 TraceCheckUtils]: 6: Hoare triple {2554#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {2549#true} is VALID [2022-04-28 03:56:10,766 INFO L290 TraceCheckUtils]: 7: Hoare triple {2549#true} ~cond := #in~cond; {2549#true} is VALID [2022-04-28 03:56:10,766 INFO L290 TraceCheckUtils]: 8: Hoare triple {2549#true} assume !(0 == ~cond); {2549#true} is VALID [2022-04-28 03:56:10,766 INFO L290 TraceCheckUtils]: 9: Hoare triple {2549#true} assume true; {2549#true} is VALID [2022-04-28 03:56:10,766 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2549#true} {2554#(<= 200000 ~SIZE~0)} #86#return; {2554#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:10,767 INFO L290 TraceCheckUtils]: 11: Hoare triple {2554#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {2559#(and (= main_~d~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:10,767 INFO L290 TraceCheckUtils]: 12: Hoare triple {2559#(and (= main_~d~0 0) (<= 200000 ~SIZE~0))} assume !false;~st~0 := 1;~c~0 := 0; {2559#(and (= main_~d~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:10,768 INFO L290 TraceCheckUtils]: 13: Hoare triple {2559#(and (= main_~d~0 0) (<= 200000 ~SIZE~0))} [104] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_51 v_main_~c~0_50)) (.cse1 (= |v_main_#t~post5_29| |v_main_#t~post5_28|))) (or (and .cse0 (= v_~last~0_27 v_~last~0_27) (= v_~SIZE~0_22 v_~SIZE~0_22) .cse1) (and (or (not (< v_main_~c~0_51 v_~SIZE~0_22)) (not (< v_main_~c~0_51 v_~last~0_27))) .cse0 .cse1) (and (< v_main_~c~0_50 (+ v_~SIZE~0_22 1)) (< v_main_~c~0_51 v_main_~c~0_50) (< v_main_~c~0_50 (+ v_~last~0_27 1))))) InVars {~SIZE~0=v_~SIZE~0_22, main_~c~0=v_main_~c~0_51, main_#t~post5=|v_main_#t~post5_29|, ~last~0=v_~last~0_27} OutVars{~SIZE~0=v_~SIZE~0_22, main_#t~post5=|v_main_#t~post5_28|, main_~c~0=v_main_~c~0_50, ~last~0=v_~last~0_27} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {2559#(and (= main_~d~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:10,768 INFO L290 TraceCheckUtils]: 14: Hoare triple {2559#(and (= main_~d~0 0) (<= 200000 ~SIZE~0))} [103] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {2559#(and (= main_~d~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:10,769 INFO L290 TraceCheckUtils]: 15: Hoare triple {2559#(and (= main_~d~0 0) (<= 200000 ~SIZE~0))} assume !(0 == ~st~0 && ~c~0 == 1 + ~last~0);~a~0 := 2 + ~a~0;~b~0 := 2 + ~b~0; {2559#(and (= main_~d~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:10,769 INFO L290 TraceCheckUtils]: 16: Hoare triple {2559#(and (= main_~d~0 0) (<= 200000 ~SIZE~0))} assume !(~c~0 == ~last~0 && 0 == ~st~0); {2559#(and (= main_~d~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:10,769 INFO L290 TraceCheckUtils]: 17: Hoare triple {2559#(and (= main_~d~0 0) (<= 200000 ~SIZE~0))} assume 1 == ~st~0 && ~last~0 < ~SIZE~0;#t~post6 := ~d~0;~d~0 := 1 + #t~post6;havoc #t~post6; {2560#(<= (+ main_~d~0 199999) ~SIZE~0)} is VALID [2022-04-28 03:56:10,770 INFO L290 TraceCheckUtils]: 18: Hoare triple {2560#(<= (+ main_~d~0 199999) ~SIZE~0)} assume ~d~0 == ~SIZE~0;~a~0 := 0;~b~0 := 1; {2550#false} is VALID [2022-04-28 03:56:10,770 INFO L272 TraceCheckUtils]: 19: Hoare triple {2550#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {2550#false} is VALID [2022-04-28 03:56:10,770 INFO L290 TraceCheckUtils]: 20: Hoare triple {2550#false} ~cond := #in~cond; {2550#false} is VALID [2022-04-28 03:56:10,770 INFO L290 TraceCheckUtils]: 21: Hoare triple {2550#false} assume 0 == ~cond; {2550#false} is VALID [2022-04-28 03:56:10,770 INFO L290 TraceCheckUtils]: 22: Hoare triple {2550#false} assume !false; {2550#false} is VALID [2022-04-28 03:56:10,770 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 03:56:10,770 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:56:10,770 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1748210606] [2022-04-28 03:56:10,770 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1748210606] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:56:10,771 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:56:10,771 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-28 03:56:10,819 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:56:10,819 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [426093675] [2022-04-28 03:56:10,819 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [426093675] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:56:10,819 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:56:10,819 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 03:56:10,819 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1831152766] [2022-04-28 03:56:10,819 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:56:10,820 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 25 [2022-04-28 03:56:10,820 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:56:10,822 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:10,842 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:56:10,843 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 03:56:10,843 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:56:10,843 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 03:56:10,843 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=28, Invalid=44, Unknown=0, NotChecked=0, Total=72 [2022-04-28 03:56:10,843 INFO L87 Difference]: Start difference. First operand 75 states and 93 transitions. Second operand has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:11,411 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:56:11,411 INFO L93 Difference]: Finished difference Result 127 states and 163 transitions. [2022-04-28 03:56:11,411 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-28 03:56:11,411 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 25 [2022-04-28 03:56:11,412 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:56:11,412 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:11,413 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 96 transitions. [2022-04-28 03:56:11,413 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:11,414 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 96 transitions. [2022-04-28 03:56:11,414 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 96 transitions. [2022-04-28 03:56:11,482 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 96 edges. 96 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:56:11,484 INFO L225 Difference]: With dead ends: 127 [2022-04-28 03:56:11,484 INFO L226 Difference]: Without dead ends: 100 [2022-04-28 03:56:11,484 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 20 GetRequests, 10 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 24 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=49, Invalid=83, Unknown=0, NotChecked=0, Total=132 [2022-04-28 03:56:11,485 INFO L413 NwaCegarLoop]: 23 mSDtfsCounter, 84 mSDsluCounter, 22 mSDsCounter, 0 mSdLazyCounter, 160 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 87 SdHoareTripleChecker+Valid, 45 SdHoareTripleChecker+Invalid, 180 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 20 IncrementalHoareTripleChecker+Valid, 160 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 03:56:11,485 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [87 Valid, 45 Invalid, 180 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [20 Valid, 160 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 03:56:11,485 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 100 states. [2022-04-28 03:56:11,691 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 100 to 96. [2022-04-28 03:56:11,691 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:56:11,692 INFO L82 GeneralOperation]: Start isEquivalent. First operand 100 states. Second operand has 96 states, 84 states have (on average 1.2976190476190477) internal successors, (109), 85 states have internal predecessors, (109), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 03:56:11,692 INFO L74 IsIncluded]: Start isIncluded. First operand 100 states. Second operand has 96 states, 84 states have (on average 1.2976190476190477) internal successors, (109), 85 states have internal predecessors, (109), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 03:56:11,692 INFO L87 Difference]: Start difference. First operand 100 states. Second operand has 96 states, 84 states have (on average 1.2976190476190477) internal successors, (109), 85 states have internal predecessors, (109), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 03:56:11,694 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:56:11,694 INFO L93 Difference]: Finished difference Result 100 states and 127 transitions. [2022-04-28 03:56:11,694 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 127 transitions. [2022-04-28 03:56:11,694 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:56:11,695 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:56:11,695 INFO L74 IsIncluded]: Start isIncluded. First operand has 96 states, 84 states have (on average 1.2976190476190477) internal successors, (109), 85 states have internal predecessors, (109), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) Second operand 100 states. [2022-04-28 03:56:11,698 INFO L87 Difference]: Start difference. First operand has 96 states, 84 states have (on average 1.2976190476190477) internal successors, (109), 85 states have internal predecessors, (109), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) Second operand 100 states. [2022-04-28 03:56:11,700 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:56:11,700 INFO L93 Difference]: Finished difference Result 100 states and 127 transitions. [2022-04-28 03:56:11,700 INFO L276 IsEmpty]: Start isEmpty. Operand 100 states and 127 transitions. [2022-04-28 03:56:11,701 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:56:11,701 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:56:11,701 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:56:11,701 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:56:11,701 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 96 states, 84 states have (on average 1.2976190476190477) internal successors, (109), 85 states have internal predecessors, (109), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (6), 5 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-28 03:56:11,703 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 96 states to 96 states and 122 transitions. [2022-04-28 03:56:11,703 INFO L78 Accepts]: Start accepts. Automaton has 96 states and 122 transitions. Word has length 25 [2022-04-28 03:56:11,703 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:56:11,703 INFO L495 AbstractCegarLoop]: Abstraction has 96 states and 122 transitions. [2022-04-28 03:56:11,704 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:11,704 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 96 states and 122 transitions. [2022-04-28 03:56:11,822 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 122 edges. 122 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:56:11,822 INFO L276 IsEmpty]: Start isEmpty. Operand 96 states and 122 transitions. [2022-04-28 03:56:11,822 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-04-28 03:56:11,822 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:56:11,822 INFO L195 NwaCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:56:11,823 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7 [2022-04-28 03:56:11,823 INFO L420 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:56:11,823 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:56:11,823 INFO L85 PathProgramCache]: Analyzing trace with hash 2069301023, now seen corresponding path program 1 times [2022-04-28 03:56:11,823 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:56:11,823 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1573388507] [2022-04-28 03:56:15,936 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:56:16,048 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:56:16,049 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:56:16,051 INFO L85 PathProgramCache]: Analyzing trace with hash -606927230, now seen corresponding path program 1 times [2022-04-28 03:56:16,051 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:56:16,051 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2113251031] [2022-04-28 03:56:16,051 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:56:16,051 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:56:16,060 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:16,162 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:56:16,164 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:16,171 INFO L290 TraceCheckUtils]: 0: Hoare triple {3237#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {3225#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:16,172 INFO L290 TraceCheckUtils]: 1: Hoare triple {3225#(<= 200000 ~SIZE~0)} assume true; {3225#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:16,172 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {3225#(<= 200000 ~SIZE~0)} {3220#true} #90#return; {3225#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:16,172 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:56:16,173 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:16,176 INFO L290 TraceCheckUtils]: 0: Hoare triple {3220#true} ~cond := #in~cond; {3220#true} is VALID [2022-04-28 03:56:16,176 INFO L290 TraceCheckUtils]: 1: Hoare triple {3220#true} assume !(0 == ~cond); {3220#true} is VALID [2022-04-28 03:56:16,176 INFO L290 TraceCheckUtils]: 2: Hoare triple {3220#true} assume true; {3220#true} is VALID [2022-04-28 03:56:16,182 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3220#true} {3225#(<= 200000 ~SIZE~0)} #86#return; {3225#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:16,183 INFO L272 TraceCheckUtils]: 0: Hoare triple {3220#true} call ULTIMATE.init(); {3237#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:56:16,184 INFO L290 TraceCheckUtils]: 1: Hoare triple {3237#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {3225#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:16,184 INFO L290 TraceCheckUtils]: 2: Hoare triple {3225#(<= 200000 ~SIZE~0)} assume true; {3225#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:16,184 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3225#(<= 200000 ~SIZE~0)} {3220#true} #90#return; {3225#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:16,185 INFO L272 TraceCheckUtils]: 4: Hoare triple {3225#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {3225#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:16,185 INFO L290 TraceCheckUtils]: 5: Hoare triple {3225#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {3225#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:16,185 INFO L272 TraceCheckUtils]: 6: Hoare triple {3225#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {3220#true} is VALID [2022-04-28 03:56:16,185 INFO L290 TraceCheckUtils]: 7: Hoare triple {3220#true} ~cond := #in~cond; {3220#true} is VALID [2022-04-28 03:56:16,185 INFO L290 TraceCheckUtils]: 8: Hoare triple {3220#true} assume !(0 == ~cond); {3220#true} is VALID [2022-04-28 03:56:16,185 INFO L290 TraceCheckUtils]: 9: Hoare triple {3220#true} assume true; {3220#true} is VALID [2022-04-28 03:56:16,186 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3220#true} {3225#(<= 200000 ~SIZE~0)} #86#return; {3225#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:16,186 INFO L290 TraceCheckUtils]: 11: Hoare triple {3225#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {3230#(and (= main_~a~0 0) (= main_~b~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:16,187 INFO L290 TraceCheckUtils]: 12: Hoare triple {3230#(and (= main_~a~0 0) (= main_~b~0 0) (<= 200000 ~SIZE~0))} assume !false;~st~0 := 1;~c~0 := 0; {3231#(and (= main_~a~0 0) (= main_~b~0 0) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:16,188 INFO L290 TraceCheckUtils]: 13: Hoare triple {3231#(and (= main_~a~0 0) (= main_~b~0 0) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [106] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_34| |v_main_#t~post5_33|)) (.cse1 (= v_main_~c~0_58 v_main_~c~0_57))) (or (and (< v_main_~c~0_57 (+ v_~SIZE~0_24 1)) (< v_main_~c~0_57 (+ v_~last~0_29 1)) (< v_main_~c~0_58 v_main_~c~0_57)) (and (= v_~SIZE~0_24 v_~SIZE~0_24) .cse0 (= v_~last~0_29 v_~last~0_29) .cse1) (and (or (not (< v_main_~c~0_58 v_~last~0_29)) (not (< v_main_~c~0_58 v_~SIZE~0_24))) .cse0 .cse1))) InVars {~SIZE~0=v_~SIZE~0_24, main_~c~0=v_main_~c~0_58, main_#t~post5=|v_main_#t~post5_34|, ~last~0=v_~last~0_29} OutVars{~SIZE~0=v_~SIZE~0_24, main_#t~post5=|v_main_#t~post5_33|, main_~c~0=v_main_~c~0_57, ~last~0=v_~last~0_29} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {3232#(or (and (= main_~a~0 0) (not (<= (+ ~SIZE~0 1) main_~c~0)) (= main_~b~0 0)) (<= (+ main_~c~0 200000) ~SIZE~0))} is VALID [2022-04-28 03:56:16,188 INFO L290 TraceCheckUtils]: 14: Hoare triple {3232#(or (and (= main_~a~0 0) (not (<= (+ ~SIZE~0 1) main_~c~0)) (= main_~b~0 0)) (<= (+ main_~c~0 200000) ~SIZE~0))} [105] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {3233#(and (= main_~a~0 0) (= (+ ~SIZE~0 (* (- 1) main_~c~0)) 0) (= main_~b~0 0))} is VALID [2022-04-28 03:56:16,189 INFO L290 TraceCheckUtils]: 15: Hoare triple {3233#(and (= main_~a~0 0) (= (+ ~SIZE~0 (* (- 1) main_~c~0)) 0) (= main_~b~0 0))} assume !(0 == ~st~0 && ~c~0 == 1 + ~last~0);~a~0 := 2 + ~a~0;~b~0 := 2 + ~b~0; {3234#(and (= (+ ~SIZE~0 (* (- 1) main_~c~0)) 0) (<= main_~b~0 main_~a~0) (< main_~a~0 (+ main_~b~0 1)))} is VALID [2022-04-28 03:56:16,189 INFO L290 TraceCheckUtils]: 16: Hoare triple {3234#(and (= (+ ~SIZE~0 (* (- 1) main_~c~0)) 0) (<= main_~b~0 main_~a~0) (< main_~a~0 (+ main_~b~0 1)))} assume !(~c~0 == ~last~0 && 0 == ~st~0); {3234#(and (= (+ ~SIZE~0 (* (- 1) main_~c~0)) 0) (<= main_~b~0 main_~a~0) (< main_~a~0 (+ main_~b~0 1)))} is VALID [2022-04-28 03:56:16,189 INFO L290 TraceCheckUtils]: 17: Hoare triple {3234#(and (= (+ ~SIZE~0 (* (- 1) main_~c~0)) 0) (<= main_~b~0 main_~a~0) (< main_~a~0 (+ main_~b~0 1)))} assume 1 == ~st~0 && ~last~0 < ~SIZE~0;#t~post6 := ~d~0;~d~0 := 1 + #t~post6;havoc #t~post6; {3234#(and (= (+ ~SIZE~0 (* (- 1) main_~c~0)) 0) (<= main_~b~0 main_~a~0) (< main_~a~0 (+ main_~b~0 1)))} is VALID [2022-04-28 03:56:16,190 INFO L290 TraceCheckUtils]: 18: Hoare triple {3234#(and (= (+ ~SIZE~0 (* (- 1) main_~c~0)) 0) (<= main_~b~0 main_~a~0) (< main_~a~0 (+ main_~b~0 1)))} assume !(~d~0 == ~SIZE~0); {3234#(and (= (+ ~SIZE~0 (* (- 1) main_~c~0)) 0) (<= main_~b~0 main_~a~0) (< main_~a~0 (+ main_~b~0 1)))} is VALID [2022-04-28 03:56:16,191 INFO L272 TraceCheckUtils]: 19: Hoare triple {3234#(and (= (+ ~SIZE~0 (* (- 1) main_~c~0)) 0) (<= main_~b~0 main_~a~0) (< main_~a~0 (+ main_~b~0 1)))} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {3235#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 03:56:16,191 INFO L290 TraceCheckUtils]: 20: Hoare triple {3235#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {3236#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 03:56:16,191 INFO L290 TraceCheckUtils]: 21: Hoare triple {3236#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {3221#false} is VALID [2022-04-28 03:56:16,191 INFO L290 TraceCheckUtils]: 22: Hoare triple {3221#false} assume !false; {3221#false} is VALID [2022-04-28 03:56:16,192 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 03:56:16,192 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:56:16,192 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2113251031] [2022-04-28 03:56:16,192 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2113251031] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:56:16,192 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:56:16,192 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-28 03:56:16,303 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:56:16,303 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1573388507] [2022-04-28 03:56:16,303 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1573388507] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:56:16,303 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:56:16,303 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 03:56:16,303 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2074087713] [2022-04-28 03:56:16,303 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:56:16,303 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 1.4615384615384615) internal successors, (19), 11 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 25 [2022-04-28 03:56:16,303 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:56:16,304 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 1.4615384615384615) internal successors, (19), 11 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:16,321 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:56:16,321 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 03:56:16,321 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:56:16,321 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 03:56:16,322 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=51, Invalid=159, Unknown=0, NotChecked=0, Total=210 [2022-04-28 03:56:16,322 INFO L87 Difference]: Start difference. First operand 96 states and 122 transitions. Second operand has 13 states, 13 states have (on average 1.4615384615384615) internal successors, (19), 11 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:17,293 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:56:17,294 INFO L93 Difference]: Finished difference Result 121 states and 153 transitions. [2022-04-28 03:56:17,294 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-28 03:56:17,294 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 1.4615384615384615) internal successors, (19), 11 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 25 [2022-04-28 03:56:17,294 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:56:17,294 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 1.4615384615384615) internal successors, (19), 11 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:17,295 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 63 transitions. [2022-04-28 03:56:17,295 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 1.4615384615384615) internal successors, (19), 11 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:17,296 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 63 transitions. [2022-04-28 03:56:17,296 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 63 transitions. [2022-04-28 03:56:17,344 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 63 edges. 63 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:56:17,345 INFO L225 Difference]: With dead ends: 121 [2022-04-28 03:56:17,345 INFO L226 Difference]: Without dead ends: 119 [2022-04-28 03:56:17,346 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 27 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 89 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=108, Invalid=398, Unknown=0, NotChecked=0, Total=506 [2022-04-28 03:56:17,346 INFO L413 NwaCegarLoop]: 22 mSDtfsCounter, 54 mSDsluCounter, 39 mSDsCounter, 0 mSdLazyCounter, 342 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 55 SdHoareTripleChecker+Valid, 61 SdHoareTripleChecker+Invalid, 356 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 342 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 03:56:17,346 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [55 Valid, 61 Invalid, 356 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 342 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 03:56:17,347 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 119 states. [2022-04-28 03:56:17,563 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 119 to 110. [2022-04-28 03:56:17,563 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:56:17,563 INFO L82 GeneralOperation]: Start isEquivalent. First operand 119 states. Second operand has 110 states, 95 states have (on average 1.2947368421052632) internal successors, (123), 98 states have internal predecessors, (123), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:56:17,563 INFO L74 IsIncluded]: Start isIncluded. First operand 119 states. Second operand has 110 states, 95 states have (on average 1.2947368421052632) internal successors, (123), 98 states have internal predecessors, (123), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:56:17,564 INFO L87 Difference]: Start difference. First operand 119 states. Second operand has 110 states, 95 states have (on average 1.2947368421052632) internal successors, (123), 98 states have internal predecessors, (123), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:56:17,567 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:56:17,567 INFO L93 Difference]: Finished difference Result 119 states and 151 transitions. [2022-04-28 03:56:17,567 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 151 transitions. [2022-04-28 03:56:17,567 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:56:17,567 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:56:17,567 INFO L74 IsIncluded]: Start isIncluded. First operand has 110 states, 95 states have (on average 1.2947368421052632) internal successors, (123), 98 states have internal predecessors, (123), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 119 states. [2022-04-28 03:56:17,568 INFO L87 Difference]: Start difference. First operand has 110 states, 95 states have (on average 1.2947368421052632) internal successors, (123), 98 states have internal predecessors, (123), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 119 states. [2022-04-28 03:56:17,569 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:56:17,569 INFO L93 Difference]: Finished difference Result 119 states and 151 transitions. [2022-04-28 03:56:17,569 INFO L276 IsEmpty]: Start isEmpty. Operand 119 states and 151 transitions. [2022-04-28 03:56:17,570 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:56:17,570 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:56:17,570 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:56:17,570 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:56:17,570 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 110 states, 95 states have (on average 1.2947368421052632) internal successors, (123), 98 states have internal predecessors, (123), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:56:17,571 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 110 states to 110 states and 140 transitions. [2022-04-28 03:56:17,572 INFO L78 Accepts]: Start accepts. Automaton has 110 states and 140 transitions. Word has length 25 [2022-04-28 03:56:17,572 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:56:17,572 INFO L495 AbstractCegarLoop]: Abstraction has 110 states and 140 transitions. [2022-04-28 03:56:17,572 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 1.4615384615384615) internal successors, (19), 11 states have internal predecessors, (19), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:17,572 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 110 states and 140 transitions. [2022-04-28 03:56:17,707 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 140 edges. 140 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:56:17,707 INFO L276 IsEmpty]: Start isEmpty. Operand 110 states and 140 transitions. [2022-04-28 03:56:17,708 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-28 03:56:17,708 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:56:17,708 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:56:17,708 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8 [2022-04-28 03:56:17,708 INFO L420 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:56:17,709 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:56:17,709 INFO L85 PathProgramCache]: Analyzing trace with hash 1643345404, now seen corresponding path program 1 times [2022-04-28 03:56:17,709 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:56:17,709 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2024868555] [2022-04-28 03:56:17,948 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:56:18,166 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:56:18,167 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:56:18,170 INFO L85 PathProgramCache]: Analyzing trace with hash -1603393343, now seen corresponding path program 1 times [2022-04-28 03:56:18,171 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:56:18,171 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1214264504] [2022-04-28 03:56:18,171 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:56:18,171 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:56:18,194 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:18,266 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:56:18,268 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:18,285 INFO L290 TraceCheckUtils]: 0: Hoare triple {3975#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {3966#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:18,286 INFO L290 TraceCheckUtils]: 1: Hoare triple {3966#(<= 200000 ~SIZE~0)} assume true; {3966#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:18,286 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {3966#(<= 200000 ~SIZE~0)} {3961#true} #90#return; {3966#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:18,286 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:56:18,288 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:18,292 INFO L290 TraceCheckUtils]: 0: Hoare triple {3961#true} ~cond := #in~cond; {3961#true} is VALID [2022-04-28 03:56:18,292 INFO L290 TraceCheckUtils]: 1: Hoare triple {3961#true} assume !(0 == ~cond); {3961#true} is VALID [2022-04-28 03:56:18,292 INFO L290 TraceCheckUtils]: 2: Hoare triple {3961#true} assume true; {3961#true} is VALID [2022-04-28 03:56:18,293 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3961#true} {3966#(<= 200000 ~SIZE~0)} #86#return; {3966#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:18,294 INFO L272 TraceCheckUtils]: 0: Hoare triple {3961#true} call ULTIMATE.init(); {3975#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:56:18,294 INFO L290 TraceCheckUtils]: 1: Hoare triple {3975#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {3966#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:18,294 INFO L290 TraceCheckUtils]: 2: Hoare triple {3966#(<= 200000 ~SIZE~0)} assume true; {3966#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:18,295 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3966#(<= 200000 ~SIZE~0)} {3961#true} #90#return; {3966#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:18,295 INFO L272 TraceCheckUtils]: 4: Hoare triple {3966#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {3966#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:18,296 INFO L290 TraceCheckUtils]: 5: Hoare triple {3966#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {3966#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:18,296 INFO L272 TraceCheckUtils]: 6: Hoare triple {3966#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {3961#true} is VALID [2022-04-28 03:56:18,296 INFO L290 TraceCheckUtils]: 7: Hoare triple {3961#true} ~cond := #in~cond; {3961#true} is VALID [2022-04-28 03:56:18,296 INFO L290 TraceCheckUtils]: 8: Hoare triple {3961#true} assume !(0 == ~cond); {3961#true} is VALID [2022-04-28 03:56:18,296 INFO L290 TraceCheckUtils]: 9: Hoare triple {3961#true} assume true; {3961#true} is VALID [2022-04-28 03:56:18,296 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3961#true} {3966#(<= 200000 ~SIZE~0)} #86#return; {3966#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:18,297 INFO L290 TraceCheckUtils]: 11: Hoare triple {3966#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {3966#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:18,297 INFO L290 TraceCheckUtils]: 12: Hoare triple {3966#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {3971#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:18,300 INFO L290 TraceCheckUtils]: 13: Hoare triple {3971#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} [108] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~st~0_33 v_main_~st~0_32)) (.cse1 (= v_main_~c~0_65 v_main_~c~0_64)) (.cse2 (<= v_~last~0_31 v_main_~c~0_65))) (or (and (= v_~last~0_31 v_~last~0_31) .cse0 .cse1 (= |v_main_#t~post5_40| |v_main_#t~post5_38|) (= v_~SIZE~0_26 v_~SIZE~0_26)) (and .cse0 .cse1 (or (not (< v_main_~c~0_65 v_~SIZE~0_26)) (not .cse2)) (= |v_main_#t~post5_38| |v_main_#t~post5_40|)) (and .cse2 (< v_main_~c~0_64 (+ v_~SIZE~0_26 1)) (= 0 v_main_~st~0_32) (< v_main_~c~0_65 v_main_~c~0_64)))) InVars {~SIZE~0=v_~SIZE~0_26, main_~c~0=v_main_~c~0_65, main_#t~post5=|v_main_#t~post5_40|, main_~st~0=v_main_~st~0_33, ~last~0=v_~last~0_31} OutVars{~SIZE~0=v_~SIZE~0_26, main_#t~post5=|v_main_#t~post5_38|, main_~c~0=v_main_~c~0_64, main_~st~0=v_main_~st~0_32, ~last~0=v_~last~0_31} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {3972#(and (or (not (= main_~c~0 0)) (<= 200000 ~SIZE~0)) (or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~c~0 0)))} is VALID [2022-04-28 03:56:18,300 INFO L290 TraceCheckUtils]: 14: Hoare triple {3972#(and (or (not (= main_~c~0 0)) (<= 200000 ~SIZE~0)) (or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~c~0 0)))} [109] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3972#(and (or (not (= main_~c~0 0)) (<= 200000 ~SIZE~0)) (or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~c~0 0)))} is VALID [2022-04-28 03:56:18,301 INFO L290 TraceCheckUtils]: 15: Hoare triple {3972#(and (or (not (= main_~c~0 0)) (<= 200000 ~SIZE~0)) (or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~c~0 0)))} [110] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_67 v_main_~c~0_66))) (or (and (= |v_main_#t~post5_39| |v_main_#t~post5_43|) .cse0 (or (not (< v_main_~c~0_67 v_~SIZE~0_27)) (not (< v_main_~c~0_67 v_~last~0_32)))) (and (= |v_main_#t~post5_43| |v_main_#t~post5_39|) (= v_~SIZE~0_27 v_~SIZE~0_27) (= v_~last~0_32 v_~last~0_32) .cse0) (and (< v_main_~c~0_67 v_main_~c~0_66) (< v_main_~c~0_66 (+ v_~SIZE~0_27 1)) (< v_main_~c~0_66 (+ v_~last~0_32 1))))) InVars {~SIZE~0=v_~SIZE~0_27, main_~c~0=v_main_~c~0_67, main_#t~post5=|v_main_#t~post5_43|, ~last~0=v_~last~0_32} OutVars{~SIZE~0=v_~SIZE~0_27, main_#t~post5=|v_main_#t~post5_39|, main_~c~0=v_main_~c~0_66, ~last~0=v_~last~0_32} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {3973#(or (<= (+ ~last~0 200000) ~SIZE~0) (<= main_~c~0 ~last~0))} is VALID [2022-04-28 03:56:18,302 INFO L290 TraceCheckUtils]: 16: Hoare triple {3973#(or (<= (+ ~last~0 200000) ~SIZE~0) (<= main_~c~0 ~last~0))} [107] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {3974#(or (<= (+ ~last~0 200000) main_~c~0) (<= main_~c~0 ~last~0))} is VALID [2022-04-28 03:56:18,302 INFO L290 TraceCheckUtils]: 17: Hoare triple {3974#(or (<= (+ ~last~0 200000) main_~c~0) (<= main_~c~0 ~last~0))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {3962#false} is VALID [2022-04-28 03:56:18,302 INFO L290 TraceCheckUtils]: 18: Hoare triple {3962#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {3962#false} is VALID [2022-04-28 03:56:18,302 INFO L290 TraceCheckUtils]: 19: Hoare triple {3962#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {3962#false} is VALID [2022-04-28 03:56:18,302 INFO L290 TraceCheckUtils]: 20: Hoare triple {3962#false} assume !(~d~0 == ~SIZE~0); {3962#false} is VALID [2022-04-28 03:56:18,302 INFO L272 TraceCheckUtils]: 21: Hoare triple {3962#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {3962#false} is VALID [2022-04-28 03:56:18,303 INFO L290 TraceCheckUtils]: 22: Hoare triple {3962#false} ~cond := #in~cond; {3962#false} is VALID [2022-04-28 03:56:18,303 INFO L290 TraceCheckUtils]: 23: Hoare triple {3962#false} assume 0 == ~cond; {3962#false} is VALID [2022-04-28 03:56:18,303 INFO L290 TraceCheckUtils]: 24: Hoare triple {3962#false} assume !false; {3962#false} is VALID [2022-04-28 03:56:18,304 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 03:56:18,304 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:56:18,304 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1214264504] [2022-04-28 03:56:18,304 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1214264504] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 03:56:18,305 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1794291092] [2022-04-28 03:56:18,305 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:56:18,305 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:56:18,305 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 03:56:18,306 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 03:56:18,309 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-04-28 03:56:18,342 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:18,343 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 03:56:18,355 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:18,359 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 03:56:18,648 INFO L272 TraceCheckUtils]: 0: Hoare triple {3961#true} call ULTIMATE.init(); {3961#true} is VALID [2022-04-28 03:56:18,649 INFO L290 TraceCheckUtils]: 1: Hoare triple {3961#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {3966#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:18,649 INFO L290 TraceCheckUtils]: 2: Hoare triple {3966#(<= 200000 ~SIZE~0)} assume true; {3966#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:18,650 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3966#(<= 200000 ~SIZE~0)} {3961#true} #90#return; {3966#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:18,650 INFO L272 TraceCheckUtils]: 4: Hoare triple {3966#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {3966#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:18,650 INFO L290 TraceCheckUtils]: 5: Hoare triple {3966#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {3966#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:18,651 INFO L272 TraceCheckUtils]: 6: Hoare triple {3966#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {3966#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:18,651 INFO L290 TraceCheckUtils]: 7: Hoare triple {3966#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {3966#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:18,652 INFO L290 TraceCheckUtils]: 8: Hoare triple {3966#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {3966#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:18,652 INFO L290 TraceCheckUtils]: 9: Hoare triple {3966#(<= 200000 ~SIZE~0)} assume true; {3966#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:18,652 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3966#(<= 200000 ~SIZE~0)} {3966#(<= 200000 ~SIZE~0)} #86#return; {3966#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:18,653 INFO L290 TraceCheckUtils]: 11: Hoare triple {3966#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {3966#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:18,653 INFO L290 TraceCheckUtils]: 12: Hoare triple {3966#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {4015#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:18,654 INFO L290 TraceCheckUtils]: 13: Hoare triple {4015#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [108] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~st~0_33 v_main_~st~0_32)) (.cse1 (= v_main_~c~0_65 v_main_~c~0_64)) (.cse2 (<= v_~last~0_31 v_main_~c~0_65))) (or (and (= v_~last~0_31 v_~last~0_31) .cse0 .cse1 (= |v_main_#t~post5_40| |v_main_#t~post5_38|) (= v_~SIZE~0_26 v_~SIZE~0_26)) (and .cse0 .cse1 (or (not (< v_main_~c~0_65 v_~SIZE~0_26)) (not .cse2)) (= |v_main_#t~post5_38| |v_main_#t~post5_40|)) (and .cse2 (< v_main_~c~0_64 (+ v_~SIZE~0_26 1)) (= 0 v_main_~st~0_32) (< v_main_~c~0_65 v_main_~c~0_64)))) InVars {~SIZE~0=v_~SIZE~0_26, main_~c~0=v_main_~c~0_65, main_#t~post5=|v_main_#t~post5_40|, main_~st~0=v_main_~st~0_33, ~last~0=v_~last~0_31} OutVars{~SIZE~0=v_~SIZE~0_26, main_#t~post5=|v_main_#t~post5_38|, main_~c~0=v_main_~c~0_64, main_~st~0=v_main_~st~0_32, ~last~0=v_~last~0_31} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {4019#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:18,655 INFO L290 TraceCheckUtils]: 14: Hoare triple {4019#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [109] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4019#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:18,655 INFO L290 TraceCheckUtils]: 15: Hoare triple {4019#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [110] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_67 v_main_~c~0_66))) (or (and (= |v_main_#t~post5_39| |v_main_#t~post5_43|) .cse0 (or (not (< v_main_~c~0_67 v_~SIZE~0_27)) (not (< v_main_~c~0_67 v_~last~0_32)))) (and (= |v_main_#t~post5_43| |v_main_#t~post5_39|) (= v_~SIZE~0_27 v_~SIZE~0_27) (= v_~last~0_32 v_~last~0_32) .cse0) (and (< v_main_~c~0_67 v_main_~c~0_66) (< v_main_~c~0_66 (+ v_~SIZE~0_27 1)) (< v_main_~c~0_66 (+ v_~last~0_32 1))))) InVars {~SIZE~0=v_~SIZE~0_27, main_~c~0=v_main_~c~0_67, main_#t~post5=|v_main_#t~post5_43|, ~last~0=v_~last~0_32} OutVars{~SIZE~0=v_~SIZE~0_27, main_#t~post5=|v_main_#t~post5_39|, main_~c~0=v_main_~c~0_66, ~last~0=v_~last~0_32} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {4019#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:18,656 INFO L290 TraceCheckUtils]: 16: Hoare triple {4019#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [107] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {4029#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 03:56:18,656 INFO L290 TraceCheckUtils]: 17: Hoare triple {4029#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {3962#false} is VALID [2022-04-28 03:56:18,657 INFO L290 TraceCheckUtils]: 18: Hoare triple {3962#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {3962#false} is VALID [2022-04-28 03:56:18,657 INFO L290 TraceCheckUtils]: 19: Hoare triple {3962#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {3962#false} is VALID [2022-04-28 03:56:18,657 INFO L290 TraceCheckUtils]: 20: Hoare triple {3962#false} assume !(~d~0 == ~SIZE~0); {3962#false} is VALID [2022-04-28 03:56:18,657 INFO L272 TraceCheckUtils]: 21: Hoare triple {3962#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {3962#false} is VALID [2022-04-28 03:56:18,657 INFO L290 TraceCheckUtils]: 22: Hoare triple {3962#false} ~cond := #in~cond; {3962#false} is VALID [2022-04-28 03:56:18,657 INFO L290 TraceCheckUtils]: 23: Hoare triple {3962#false} assume 0 == ~cond; {3962#false} is VALID [2022-04-28 03:56:18,657 INFO L290 TraceCheckUtils]: 24: Hoare triple {3962#false} assume !false; {3962#false} is VALID [2022-04-28 03:56:18,657 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:56:18,657 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 03:56:19,067 INFO L290 TraceCheckUtils]: 24: Hoare triple {3962#false} assume !false; {3962#false} is VALID [2022-04-28 03:56:19,068 INFO L290 TraceCheckUtils]: 23: Hoare triple {3962#false} assume 0 == ~cond; {3962#false} is VALID [2022-04-28 03:56:19,068 INFO L290 TraceCheckUtils]: 22: Hoare triple {3962#false} ~cond := #in~cond; {3962#false} is VALID [2022-04-28 03:56:19,068 INFO L272 TraceCheckUtils]: 21: Hoare triple {3962#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {3962#false} is VALID [2022-04-28 03:56:19,068 INFO L290 TraceCheckUtils]: 20: Hoare triple {3962#false} assume !(~d~0 == ~SIZE~0); {3962#false} is VALID [2022-04-28 03:56:19,068 INFO L290 TraceCheckUtils]: 19: Hoare triple {3962#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {3962#false} is VALID [2022-04-28 03:56:19,068 INFO L290 TraceCheckUtils]: 18: Hoare triple {3962#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {3962#false} is VALID [2022-04-28 03:56:19,069 INFO L290 TraceCheckUtils]: 17: Hoare triple {4075#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {3962#false} is VALID [2022-04-28 03:56:19,069 INFO L290 TraceCheckUtils]: 16: Hoare triple {4079#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [107] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {4075#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 03:56:19,070 INFO L290 TraceCheckUtils]: 15: Hoare triple {4079#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [110] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_67 v_main_~c~0_66))) (or (and (= |v_main_#t~post5_39| |v_main_#t~post5_43|) .cse0 (or (not (< v_main_~c~0_67 v_~SIZE~0_27)) (not (< v_main_~c~0_67 v_~last~0_32)))) (and (= |v_main_#t~post5_43| |v_main_#t~post5_39|) (= v_~SIZE~0_27 v_~SIZE~0_27) (= v_~last~0_32 v_~last~0_32) .cse0) (and (< v_main_~c~0_67 v_main_~c~0_66) (< v_main_~c~0_66 (+ v_~SIZE~0_27 1)) (< v_main_~c~0_66 (+ v_~last~0_32 1))))) InVars {~SIZE~0=v_~SIZE~0_27, main_~c~0=v_main_~c~0_67, main_#t~post5=|v_main_#t~post5_43|, ~last~0=v_~last~0_32} OutVars{~SIZE~0=v_~SIZE~0_27, main_#t~post5=|v_main_#t~post5_39|, main_~c~0=v_main_~c~0_66, ~last~0=v_~last~0_32} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {4079#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:56:19,070 INFO L290 TraceCheckUtils]: 14: Hoare triple {4079#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [109] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4079#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:56:19,071 INFO L290 TraceCheckUtils]: 13: Hoare triple {4089#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [108] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~st~0_33 v_main_~st~0_32)) (.cse1 (= v_main_~c~0_65 v_main_~c~0_64)) (.cse2 (<= v_~last~0_31 v_main_~c~0_65))) (or (and (= v_~last~0_31 v_~last~0_31) .cse0 .cse1 (= |v_main_#t~post5_40| |v_main_#t~post5_38|) (= v_~SIZE~0_26 v_~SIZE~0_26)) (and .cse0 .cse1 (or (not (< v_main_~c~0_65 v_~SIZE~0_26)) (not .cse2)) (= |v_main_#t~post5_38| |v_main_#t~post5_40|)) (and .cse2 (< v_main_~c~0_64 (+ v_~SIZE~0_26 1)) (= 0 v_main_~st~0_32) (< v_main_~c~0_65 v_main_~c~0_64)))) InVars {~SIZE~0=v_~SIZE~0_26, main_~c~0=v_main_~c~0_65, main_#t~post5=|v_main_#t~post5_40|, main_~st~0=v_main_~st~0_33, ~last~0=v_~last~0_31} OutVars{~SIZE~0=v_~SIZE~0_26, main_#t~post5=|v_main_#t~post5_38|, main_~c~0=v_main_~c~0_64, main_~st~0=v_main_~st~0_32, ~last~0=v_~last~0_31} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {4079#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:56:19,071 INFO L290 TraceCheckUtils]: 12: Hoare triple {4093#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {4089#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 03:56:19,071 INFO L290 TraceCheckUtils]: 11: Hoare triple {4093#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {4093#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:19,072 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3961#true} {4093#(< 1 ~SIZE~0)} #86#return; {4093#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:19,072 INFO L290 TraceCheckUtils]: 9: Hoare triple {3961#true} assume true; {3961#true} is VALID [2022-04-28 03:56:19,072 INFO L290 TraceCheckUtils]: 8: Hoare triple {3961#true} assume !(0 == ~cond); {3961#true} is VALID [2022-04-28 03:56:19,072 INFO L290 TraceCheckUtils]: 7: Hoare triple {3961#true} ~cond := #in~cond; {3961#true} is VALID [2022-04-28 03:56:19,072 INFO L272 TraceCheckUtils]: 6: Hoare triple {4093#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {3961#true} is VALID [2022-04-28 03:56:19,073 INFO L290 TraceCheckUtils]: 5: Hoare triple {4093#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {4093#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:19,076 INFO L272 TraceCheckUtils]: 4: Hoare triple {4093#(< 1 ~SIZE~0)} call #t~ret7 := main(); {4093#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:19,076 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4093#(< 1 ~SIZE~0)} {3961#true} #90#return; {4093#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:19,077 INFO L290 TraceCheckUtils]: 2: Hoare triple {4093#(< 1 ~SIZE~0)} assume true; {4093#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:19,077 INFO L290 TraceCheckUtils]: 1: Hoare triple {3961#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {4093#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:19,077 INFO L272 TraceCheckUtils]: 0: Hoare triple {3961#true} call ULTIMATE.init(); {3961#true} is VALID [2022-04-28 03:56:19,077 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:56:19,078 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1794291092] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 03:56:19,078 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 03:56:19,078 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 6, 6] total 15 [2022-04-28 03:56:19,253 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:56:19,253 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2024868555] [2022-04-28 03:56:19,253 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2024868555] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:56:19,253 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:56:19,253 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-28 03:56:19,254 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1340656599] [2022-04-28 03:56:19,254 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:56:19,254 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.0) internal successors, (22), 10 states have internal predecessors, (22), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 28 [2022-04-28 03:56:19,254 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:56:19,254 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 2.0) internal successors, (22), 10 states have internal predecessors, (22), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:19,275 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:56:19,275 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-28 03:56:19,275 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:56:19,275 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-28 03:56:19,275 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=90, Invalid=330, Unknown=0, NotChecked=0, Total=420 [2022-04-28 03:56:19,275 INFO L87 Difference]: Start difference. First operand 110 states and 140 transitions. Second operand has 11 states, 11 states have (on average 2.0) internal successors, (22), 10 states have internal predecessors, (22), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:19,914 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:56:19,914 INFO L93 Difference]: Finished difference Result 222 states and 289 transitions. [2022-04-28 03:56:19,914 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-28 03:56:19,914 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.0) internal successors, (22), 10 states have internal predecessors, (22), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 28 [2022-04-28 03:56:19,914 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:56:19,914 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.0) internal successors, (22), 10 states have internal predecessors, (22), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:19,915 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 69 transitions. [2022-04-28 03:56:19,915 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.0) internal successors, (22), 10 states have internal predecessors, (22), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:19,916 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 69 transitions. [2022-04-28 03:56:19,916 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 69 transitions. [2022-04-28 03:56:19,964 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 69 edges. 69 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:56:19,965 INFO L225 Difference]: With dead ends: 222 [2022-04-28 03:56:19,965 INFO L226 Difference]: Without dead ends: 142 [2022-04-28 03:56:19,966 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 76 GetRequests, 54 SyntacticMatches, 1 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 156 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=103, Invalid=403, Unknown=0, NotChecked=0, Total=506 [2022-04-28 03:56:19,967 INFO L413 NwaCegarLoop]: 21 mSDtfsCounter, 42 mSDsluCounter, 12 mSDsCounter, 0 mSdLazyCounter, 185 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 43 SdHoareTripleChecker+Valid, 33 SdHoareTripleChecker+Invalid, 201 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 185 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 03:56:19,968 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [43 Valid, 33 Invalid, 201 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 185 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 03:56:19,968 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 142 states. [2022-04-28 03:56:20,235 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 142 to 128. [2022-04-28 03:56:20,235 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:56:20,236 INFO L82 GeneralOperation]: Start isEquivalent. First operand 142 states. Second operand has 128 states, 113 states have (on average 1.2831858407079646) internal successors, (145), 116 states have internal predecessors, (145), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:56:20,236 INFO L74 IsIncluded]: Start isIncluded. First operand 142 states. Second operand has 128 states, 113 states have (on average 1.2831858407079646) internal successors, (145), 116 states have internal predecessors, (145), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:56:20,236 INFO L87 Difference]: Start difference. First operand 142 states. Second operand has 128 states, 113 states have (on average 1.2831858407079646) internal successors, (145), 116 states have internal predecessors, (145), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:56:20,238 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:56:20,238 INFO L93 Difference]: Finished difference Result 142 states and 176 transitions. [2022-04-28 03:56:20,238 INFO L276 IsEmpty]: Start isEmpty. Operand 142 states and 176 transitions. [2022-04-28 03:56:20,239 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:56:20,239 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:56:20,239 INFO L74 IsIncluded]: Start isIncluded. First operand has 128 states, 113 states have (on average 1.2831858407079646) internal successors, (145), 116 states have internal predecessors, (145), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 142 states. [2022-04-28 03:56:20,239 INFO L87 Difference]: Start difference. First operand has 128 states, 113 states have (on average 1.2831858407079646) internal successors, (145), 116 states have internal predecessors, (145), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 142 states. [2022-04-28 03:56:20,241 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:56:20,241 INFO L93 Difference]: Finished difference Result 142 states and 176 transitions. [2022-04-28 03:56:20,241 INFO L276 IsEmpty]: Start isEmpty. Operand 142 states and 176 transitions. [2022-04-28 03:56:20,242 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:56:20,242 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:56:20,242 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:56:20,242 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:56:20,242 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 128 states, 113 states have (on average 1.2831858407079646) internal successors, (145), 116 states have internal predecessors, (145), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:56:20,244 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 128 states to 128 states and 162 transitions. [2022-04-28 03:56:20,244 INFO L78 Accepts]: Start accepts. Automaton has 128 states and 162 transitions. Word has length 28 [2022-04-28 03:56:20,244 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:56:20,244 INFO L495 AbstractCegarLoop]: Abstraction has 128 states and 162 transitions. [2022-04-28 03:56:20,244 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 2.0) internal successors, (22), 10 states have internal predecessors, (22), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:20,244 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 128 states and 162 transitions. [2022-04-28 03:56:20,405 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 162 edges. 162 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:56:20,406 INFO L276 IsEmpty]: Start isEmpty. Operand 128 states and 162 transitions. [2022-04-28 03:56:20,406 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-04-28 03:56:20,406 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:56:20,406 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:56:20,431 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-28 03:56:20,625 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-04-28 03:56:20,625 INFO L420 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:56:20,625 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:56:20,625 INFO L85 PathProgramCache]: Analyzing trace with hash -646101633, now seen corresponding path program 2 times [2022-04-28 03:56:20,625 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:56:20,625 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [143582466] [2022-04-28 03:56:24,726 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:56:24,832 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:56:28,943 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:56:29,051 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:56:29,054 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:56:29,056 INFO L85 PathProgramCache]: Analyzing trace with hash 889129409, now seen corresponding path program 1 times [2022-04-28 03:56:29,057 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:56:29,057 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1034024107] [2022-04-28 03:56:29,057 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:56:29,057 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:56:29,068 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:29,115 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:56:29,117 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:29,123 INFO L290 TraceCheckUtils]: 0: Hoare triple {5140#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {5132#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:29,124 INFO L290 TraceCheckUtils]: 1: Hoare triple {5132#(<= 200000 ~SIZE~0)} assume true; {5132#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:29,124 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {5132#(<= 200000 ~SIZE~0)} {5127#true} #90#return; {5132#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:29,124 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:56:29,125 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:29,128 INFO L290 TraceCheckUtils]: 0: Hoare triple {5127#true} ~cond := #in~cond; {5127#true} is VALID [2022-04-28 03:56:29,128 INFO L290 TraceCheckUtils]: 1: Hoare triple {5127#true} assume !(0 == ~cond); {5127#true} is VALID [2022-04-28 03:56:29,128 INFO L290 TraceCheckUtils]: 2: Hoare triple {5127#true} assume true; {5127#true} is VALID [2022-04-28 03:56:29,128 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5127#true} {5132#(<= 200000 ~SIZE~0)} #86#return; {5132#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:29,129 INFO L272 TraceCheckUtils]: 0: Hoare triple {5127#true} call ULTIMATE.init(); {5140#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:56:29,130 INFO L290 TraceCheckUtils]: 1: Hoare triple {5140#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {5132#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:29,130 INFO L290 TraceCheckUtils]: 2: Hoare triple {5132#(<= 200000 ~SIZE~0)} assume true; {5132#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:29,130 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5132#(<= 200000 ~SIZE~0)} {5127#true} #90#return; {5132#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:29,131 INFO L272 TraceCheckUtils]: 4: Hoare triple {5132#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {5132#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:29,131 INFO L290 TraceCheckUtils]: 5: Hoare triple {5132#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {5132#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:29,131 INFO L272 TraceCheckUtils]: 6: Hoare triple {5132#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {5127#true} is VALID [2022-04-28 03:56:29,131 INFO L290 TraceCheckUtils]: 7: Hoare triple {5127#true} ~cond := #in~cond; {5127#true} is VALID [2022-04-28 03:56:29,131 INFO L290 TraceCheckUtils]: 8: Hoare triple {5127#true} assume !(0 == ~cond); {5127#true} is VALID [2022-04-28 03:56:29,131 INFO L290 TraceCheckUtils]: 9: Hoare triple {5127#true} assume true; {5127#true} is VALID [2022-04-28 03:56:29,132 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5127#true} {5132#(<= 200000 ~SIZE~0)} #86#return; {5132#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:29,132 INFO L290 TraceCheckUtils]: 11: Hoare triple {5132#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {5132#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:29,132 INFO L290 TraceCheckUtils]: 12: Hoare triple {5132#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {5137#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:29,133 INFO L290 TraceCheckUtils]: 13: Hoare triple {5137#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [112] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= |v_main_#t~post5_53| |v_main_#t~post5_51|)) (.cse2 (= v_main_~st~0_42 v_main_~st~0_41)) (.cse3 (= v_main_~c~0_84 v_main_~c~0_83)) (.cse0 (<= v_~last~0_41 v_main_~c~0_84))) (or (and (< v_main_~c~0_84 v_main_~c~0_83) .cse0 (< v_main_~c~0_83 (+ v_~SIZE~0_35 1)) (= 0 v_main_~st~0_41)) (and (= v_~SIZE~0_35 v_~SIZE~0_35) .cse1 .cse2 (= v_~last~0_41 v_~last~0_41) .cse3) (and .cse1 .cse2 .cse3 (or (not (< v_main_~c~0_84 v_~SIZE~0_35)) (not .cse0))))) InVars {~SIZE~0=v_~SIZE~0_35, main_~c~0=v_main_~c~0_84, main_#t~post5=|v_main_#t~post5_53|, main_~st~0=v_main_~st~0_42, ~last~0=v_~last~0_41} OutVars{~SIZE~0=v_~SIZE~0_35, main_#t~post5=|v_main_#t~post5_51|, main_~c~0=v_main_~c~0_83, main_~st~0=v_main_~st~0_41, ~last~0=v_~last~0_41} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {5138#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:56:29,134 INFO L290 TraceCheckUtils]: 14: Hoare triple {5138#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [113] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5138#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:56:29,134 INFO L290 TraceCheckUtils]: 15: Hoare triple {5138#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [114] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_86 v_main_~c~0_85)) (.cse1 (= |v_main_#t~post5_56| |v_main_#t~post5_52|))) (or (and .cse0 (= v_~SIZE~0_36 v_~SIZE~0_36) (= v_~last~0_42 v_~last~0_42) .cse1) (and (< v_main_~c~0_85 (+ v_~SIZE~0_36 1)) (< v_main_~c~0_85 (+ v_~last~0_42 1)) (< v_main_~c~0_86 v_main_~c~0_85)) (and .cse0 (or (not (< v_main_~c~0_86 v_~last~0_42)) (not (< v_main_~c~0_86 v_~SIZE~0_36))) .cse1))) InVars {~SIZE~0=v_~SIZE~0_36, main_~c~0=v_main_~c~0_86, main_#t~post5=|v_main_#t~post5_56|, ~last~0=v_~last~0_42} OutVars{~SIZE~0=v_~SIZE~0_36, main_#t~post5=|v_main_#t~post5_52|, main_~c~0=v_main_~c~0_85, ~last~0=v_~last~0_42} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {5138#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:56:29,135 INFO L290 TraceCheckUtils]: 16: Hoare triple {5138#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [111] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {5139#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 03:56:29,135 INFO L290 TraceCheckUtils]: 17: Hoare triple {5139#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {5128#false} is VALID [2022-04-28 03:56:29,135 INFO L290 TraceCheckUtils]: 18: Hoare triple {5128#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {5128#false} is VALID [2022-04-28 03:56:29,135 INFO L290 TraceCheckUtils]: 19: Hoare triple {5128#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {5128#false} is VALID [2022-04-28 03:56:29,135 INFO L290 TraceCheckUtils]: 20: Hoare triple {5128#false} assume !(~d~0 == ~SIZE~0); {5128#false} is VALID [2022-04-28 03:56:29,136 INFO L272 TraceCheckUtils]: 21: Hoare triple {5128#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {5128#false} is VALID [2022-04-28 03:56:29,136 INFO L290 TraceCheckUtils]: 22: Hoare triple {5128#false} ~cond := #in~cond; {5128#false} is VALID [2022-04-28 03:56:29,136 INFO L290 TraceCheckUtils]: 23: Hoare triple {5128#false} assume 0 == ~cond; {5128#false} is VALID [2022-04-28 03:56:29,136 INFO L290 TraceCheckUtils]: 24: Hoare triple {5128#false} assume !false; {5128#false} is VALID [2022-04-28 03:56:29,136 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:56:29,136 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:56:29,136 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1034024107] [2022-04-28 03:56:29,136 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1034024107] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 03:56:29,136 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1038339858] [2022-04-28 03:56:29,136 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:56:29,137 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:56:29,137 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 03:56:29,137 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 03:56:29,138 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-28 03:56:29,168 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:29,168 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 03:56:29,175 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:29,176 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 03:56:29,424 INFO L272 TraceCheckUtils]: 0: Hoare triple {5127#true} call ULTIMATE.init(); {5127#true} is VALID [2022-04-28 03:56:29,425 INFO L290 TraceCheckUtils]: 1: Hoare triple {5127#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {5132#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:29,426 INFO L290 TraceCheckUtils]: 2: Hoare triple {5132#(<= 200000 ~SIZE~0)} assume true; {5132#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:29,426 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5132#(<= 200000 ~SIZE~0)} {5127#true} #90#return; {5132#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:29,427 INFO L272 TraceCheckUtils]: 4: Hoare triple {5132#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {5132#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:29,427 INFO L290 TraceCheckUtils]: 5: Hoare triple {5132#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {5132#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:29,428 INFO L272 TraceCheckUtils]: 6: Hoare triple {5132#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {5132#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:29,428 INFO L290 TraceCheckUtils]: 7: Hoare triple {5132#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {5132#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:29,428 INFO L290 TraceCheckUtils]: 8: Hoare triple {5132#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {5132#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:29,429 INFO L290 TraceCheckUtils]: 9: Hoare triple {5132#(<= 200000 ~SIZE~0)} assume true; {5132#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:29,429 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5132#(<= 200000 ~SIZE~0)} {5132#(<= 200000 ~SIZE~0)} #86#return; {5132#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:29,430 INFO L290 TraceCheckUtils]: 11: Hoare triple {5132#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {5132#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:29,430 INFO L290 TraceCheckUtils]: 12: Hoare triple {5132#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {5180#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:29,431 INFO L290 TraceCheckUtils]: 13: Hoare triple {5180#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [112] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= |v_main_#t~post5_53| |v_main_#t~post5_51|)) (.cse2 (= v_main_~st~0_42 v_main_~st~0_41)) (.cse3 (= v_main_~c~0_84 v_main_~c~0_83)) (.cse0 (<= v_~last~0_41 v_main_~c~0_84))) (or (and (< v_main_~c~0_84 v_main_~c~0_83) .cse0 (< v_main_~c~0_83 (+ v_~SIZE~0_35 1)) (= 0 v_main_~st~0_41)) (and (= v_~SIZE~0_35 v_~SIZE~0_35) .cse1 .cse2 (= v_~last~0_41 v_~last~0_41) .cse3) (and .cse1 .cse2 .cse3 (or (not (< v_main_~c~0_84 v_~SIZE~0_35)) (not .cse0))))) InVars {~SIZE~0=v_~SIZE~0_35, main_~c~0=v_main_~c~0_84, main_#t~post5=|v_main_#t~post5_53|, main_~st~0=v_main_~st~0_42, ~last~0=v_~last~0_41} OutVars{~SIZE~0=v_~SIZE~0_35, main_#t~post5=|v_main_#t~post5_51|, main_~c~0=v_main_~c~0_83, main_~st~0=v_main_~st~0_41, ~last~0=v_~last~0_41} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {5184#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:29,431 INFO L290 TraceCheckUtils]: 14: Hoare triple {5184#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [113] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5184#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:29,432 INFO L290 TraceCheckUtils]: 15: Hoare triple {5184#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [114] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_86 v_main_~c~0_85)) (.cse1 (= |v_main_#t~post5_56| |v_main_#t~post5_52|))) (or (and .cse0 (= v_~SIZE~0_36 v_~SIZE~0_36) (= v_~last~0_42 v_~last~0_42) .cse1) (and (< v_main_~c~0_85 (+ v_~SIZE~0_36 1)) (< v_main_~c~0_85 (+ v_~last~0_42 1)) (< v_main_~c~0_86 v_main_~c~0_85)) (and .cse0 (or (not (< v_main_~c~0_86 v_~last~0_42)) (not (< v_main_~c~0_86 v_~SIZE~0_36))) .cse1))) InVars {~SIZE~0=v_~SIZE~0_36, main_~c~0=v_main_~c~0_86, main_#t~post5=|v_main_#t~post5_56|, ~last~0=v_~last~0_42} OutVars{~SIZE~0=v_~SIZE~0_36, main_#t~post5=|v_main_#t~post5_52|, main_~c~0=v_main_~c~0_85, ~last~0=v_~last~0_42} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {5184#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:29,433 INFO L290 TraceCheckUtils]: 16: Hoare triple {5184#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [111] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {5194#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 03:56:29,433 INFO L290 TraceCheckUtils]: 17: Hoare triple {5194#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {5128#false} is VALID [2022-04-28 03:56:29,433 INFO L290 TraceCheckUtils]: 18: Hoare triple {5128#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {5128#false} is VALID [2022-04-28 03:56:29,433 INFO L290 TraceCheckUtils]: 19: Hoare triple {5128#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {5128#false} is VALID [2022-04-28 03:56:29,434 INFO L290 TraceCheckUtils]: 20: Hoare triple {5128#false} assume !(~d~0 == ~SIZE~0); {5128#false} is VALID [2022-04-28 03:56:29,434 INFO L272 TraceCheckUtils]: 21: Hoare triple {5128#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {5128#false} is VALID [2022-04-28 03:56:29,434 INFO L290 TraceCheckUtils]: 22: Hoare triple {5128#false} ~cond := #in~cond; {5128#false} is VALID [2022-04-28 03:56:29,434 INFO L290 TraceCheckUtils]: 23: Hoare triple {5128#false} assume 0 == ~cond; {5128#false} is VALID [2022-04-28 03:56:29,434 INFO L290 TraceCheckUtils]: 24: Hoare triple {5128#false} assume !false; {5128#false} is VALID [2022-04-28 03:56:29,434 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:56:29,434 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 03:56:29,796 INFO L290 TraceCheckUtils]: 24: Hoare triple {5128#false} assume !false; {5128#false} is VALID [2022-04-28 03:56:29,797 INFO L290 TraceCheckUtils]: 23: Hoare triple {5128#false} assume 0 == ~cond; {5128#false} is VALID [2022-04-28 03:56:29,797 INFO L290 TraceCheckUtils]: 22: Hoare triple {5128#false} ~cond := #in~cond; {5128#false} is VALID [2022-04-28 03:56:29,797 INFO L272 TraceCheckUtils]: 21: Hoare triple {5128#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {5128#false} is VALID [2022-04-28 03:56:29,797 INFO L290 TraceCheckUtils]: 20: Hoare triple {5128#false} assume !(~d~0 == ~SIZE~0); {5128#false} is VALID [2022-04-28 03:56:29,797 INFO L290 TraceCheckUtils]: 19: Hoare triple {5128#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {5128#false} is VALID [2022-04-28 03:56:29,797 INFO L290 TraceCheckUtils]: 18: Hoare triple {5128#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {5128#false} is VALID [2022-04-28 03:56:29,798 INFO L290 TraceCheckUtils]: 17: Hoare triple {5240#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {5128#false} is VALID [2022-04-28 03:56:29,798 INFO L290 TraceCheckUtils]: 16: Hoare triple {5244#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [111] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {5240#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 03:56:29,799 INFO L290 TraceCheckUtils]: 15: Hoare triple {5244#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [114] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_86 v_main_~c~0_85)) (.cse1 (= |v_main_#t~post5_56| |v_main_#t~post5_52|))) (or (and .cse0 (= v_~SIZE~0_36 v_~SIZE~0_36) (= v_~last~0_42 v_~last~0_42) .cse1) (and (< v_main_~c~0_85 (+ v_~SIZE~0_36 1)) (< v_main_~c~0_85 (+ v_~last~0_42 1)) (< v_main_~c~0_86 v_main_~c~0_85)) (and .cse0 (or (not (< v_main_~c~0_86 v_~last~0_42)) (not (< v_main_~c~0_86 v_~SIZE~0_36))) .cse1))) InVars {~SIZE~0=v_~SIZE~0_36, main_~c~0=v_main_~c~0_86, main_#t~post5=|v_main_#t~post5_56|, ~last~0=v_~last~0_42} OutVars{~SIZE~0=v_~SIZE~0_36, main_#t~post5=|v_main_#t~post5_52|, main_~c~0=v_main_~c~0_85, ~last~0=v_~last~0_42} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {5244#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:56:29,799 INFO L290 TraceCheckUtils]: 14: Hoare triple {5244#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [113] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {5244#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:56:29,800 INFO L290 TraceCheckUtils]: 13: Hoare triple {5254#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [112] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= |v_main_#t~post5_53| |v_main_#t~post5_51|)) (.cse2 (= v_main_~st~0_42 v_main_~st~0_41)) (.cse3 (= v_main_~c~0_84 v_main_~c~0_83)) (.cse0 (<= v_~last~0_41 v_main_~c~0_84))) (or (and (< v_main_~c~0_84 v_main_~c~0_83) .cse0 (< v_main_~c~0_83 (+ v_~SIZE~0_35 1)) (= 0 v_main_~st~0_41)) (and (= v_~SIZE~0_35 v_~SIZE~0_35) .cse1 .cse2 (= v_~last~0_41 v_~last~0_41) .cse3) (and .cse1 .cse2 .cse3 (or (not (< v_main_~c~0_84 v_~SIZE~0_35)) (not .cse0))))) InVars {~SIZE~0=v_~SIZE~0_35, main_~c~0=v_main_~c~0_84, main_#t~post5=|v_main_#t~post5_53|, main_~st~0=v_main_~st~0_42, ~last~0=v_~last~0_41} OutVars{~SIZE~0=v_~SIZE~0_35, main_#t~post5=|v_main_#t~post5_51|, main_~c~0=v_main_~c~0_83, main_~st~0=v_main_~st~0_41, ~last~0=v_~last~0_41} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {5244#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:56:29,800 INFO L290 TraceCheckUtils]: 12: Hoare triple {5258#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {5254#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 03:56:29,801 INFO L290 TraceCheckUtils]: 11: Hoare triple {5258#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {5258#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:29,801 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5127#true} {5258#(< 1 ~SIZE~0)} #86#return; {5258#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:29,801 INFO L290 TraceCheckUtils]: 9: Hoare triple {5127#true} assume true; {5127#true} is VALID [2022-04-28 03:56:29,802 INFO L290 TraceCheckUtils]: 8: Hoare triple {5127#true} assume !(0 == ~cond); {5127#true} is VALID [2022-04-28 03:56:29,802 INFO L290 TraceCheckUtils]: 7: Hoare triple {5127#true} ~cond := #in~cond; {5127#true} is VALID [2022-04-28 03:56:29,802 INFO L272 TraceCheckUtils]: 6: Hoare triple {5258#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {5127#true} is VALID [2022-04-28 03:56:29,802 INFO L290 TraceCheckUtils]: 5: Hoare triple {5258#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {5258#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:29,803 INFO L272 TraceCheckUtils]: 4: Hoare triple {5258#(< 1 ~SIZE~0)} call #t~ret7 := main(); {5258#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:29,803 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5258#(< 1 ~SIZE~0)} {5127#true} #90#return; {5258#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:29,803 INFO L290 TraceCheckUtils]: 2: Hoare triple {5258#(< 1 ~SIZE~0)} assume true; {5258#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:29,804 INFO L290 TraceCheckUtils]: 1: Hoare triple {5127#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {5258#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:29,804 INFO L272 TraceCheckUtils]: 0: Hoare triple {5127#true} call ULTIMATE.init(); {5127#true} is VALID [2022-04-28 03:56:29,804 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:56:29,804 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1038339858] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 03:56:29,804 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 03:56:29,804 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 03:56:30,070 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:56:30,070 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [143582466] [2022-04-28 03:56:30,070 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [143582466] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:56:30,070 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:56:30,070 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 03:56:30,071 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1554618076] [2022-04-28 03:56:30,071 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:56:30,071 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 11 states have internal predecessors, (25), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 31 [2022-04-28 03:56:30,071 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:56:30,071 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 11 states have internal predecessors, (25), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:30,105 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:56:30,105 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 03:56:30,106 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:56:30,106 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 03:56:30,106 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=110, Invalid=310, Unknown=0, NotChecked=0, Total=420 [2022-04-28 03:56:30,106 INFO L87 Difference]: Start difference. First operand 128 states and 162 transitions. Second operand has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 11 states have internal predecessors, (25), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:31,091 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:56:31,091 INFO L93 Difference]: Finished difference Result 240 states and 308 transitions. [2022-04-28 03:56:31,091 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 03:56:31,091 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 11 states have internal predecessors, (25), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 31 [2022-04-28 03:56:31,092 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:56:31,092 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 11 states have internal predecessors, (25), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:31,092 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 80 transitions. [2022-04-28 03:56:31,093 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 11 states have internal predecessors, (25), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:31,093 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 80 transitions. [2022-04-28 03:56:31,093 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 80 transitions. [2022-04-28 03:56:31,162 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:56:31,164 INFO L225 Difference]: With dead ends: 240 [2022-04-28 03:56:31,164 INFO L226 Difference]: Without dead ends: 156 [2022-04-28 03:56:31,165 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 79 GetRequests, 54 SyntacticMatches, 3 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 234 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=139, Invalid=413, Unknown=0, NotChecked=0, Total=552 [2022-04-28 03:56:31,165 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 51 mSDsluCounter, 13 mSDsCounter, 0 mSdLazyCounter, 386 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 52 SdHoareTripleChecker+Valid, 37 SdHoareTripleChecker+Invalid, 399 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 386 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 03:56:31,165 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [52 Valid, 37 Invalid, 399 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 386 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 03:56:31,166 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 156 states. [2022-04-28 03:56:31,463 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 156 to 137. [2022-04-28 03:56:31,464 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:56:31,464 INFO L82 GeneralOperation]: Start isEquivalent. First operand 156 states. Second operand has 137 states, 122 states have (on average 1.2622950819672132) internal successors, (154), 125 states have internal predecessors, (154), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:56:31,464 INFO L74 IsIncluded]: Start isIncluded. First operand 156 states. Second operand has 137 states, 122 states have (on average 1.2622950819672132) internal successors, (154), 125 states have internal predecessors, (154), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:56:31,464 INFO L87 Difference]: Start difference. First operand 156 states. Second operand has 137 states, 122 states have (on average 1.2622950819672132) internal successors, (154), 125 states have internal predecessors, (154), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:56:31,467 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:56:31,467 INFO L93 Difference]: Finished difference Result 156 states and 194 transitions. [2022-04-28 03:56:31,467 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 194 transitions. [2022-04-28 03:56:31,467 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:56:31,467 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:56:31,467 INFO L74 IsIncluded]: Start isIncluded. First operand has 137 states, 122 states have (on average 1.2622950819672132) internal successors, (154), 125 states have internal predecessors, (154), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 156 states. [2022-04-28 03:56:31,468 INFO L87 Difference]: Start difference. First operand has 137 states, 122 states have (on average 1.2622950819672132) internal successors, (154), 125 states have internal predecessors, (154), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 156 states. [2022-04-28 03:56:31,470 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:56:31,470 INFO L93 Difference]: Finished difference Result 156 states and 194 transitions. [2022-04-28 03:56:31,470 INFO L276 IsEmpty]: Start isEmpty. Operand 156 states and 194 transitions. [2022-04-28 03:56:31,470 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:56:31,470 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:56:31,470 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:56:31,470 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:56:31,471 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 137 states, 122 states have (on average 1.2622950819672132) internal successors, (154), 125 states have internal predecessors, (154), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:56:31,472 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 137 states to 137 states and 171 transitions. [2022-04-28 03:56:31,473 INFO L78 Accepts]: Start accepts. Automaton has 137 states and 171 transitions. Word has length 31 [2022-04-28 03:56:31,473 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:56:31,473 INFO L495 AbstractCegarLoop]: Abstraction has 137 states and 171 transitions. [2022-04-28 03:56:31,473 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 2.0833333333333335) internal successors, (25), 11 states have internal predecessors, (25), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:31,473 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 137 states and 171 transitions. [2022-04-28 03:56:31,644 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 171 edges. 171 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:56:31,644 INFO L276 IsEmpty]: Start isEmpty. Operand 137 states and 171 transitions. [2022-04-28 03:56:31,644 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-04-28 03:56:31,644 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:56:31,644 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:56:31,660 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2022-04-28 03:56:31,845 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable10 [2022-04-28 03:56:31,845 INFO L420 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:56:31,845 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:56:31,845 INFO L85 PathProgramCache]: Analyzing trace with hash -1657218883, now seen corresponding path program 3 times [2022-04-28 03:56:31,845 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:56:31,846 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1827301300] [2022-04-28 03:56:32,033 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:56:34,992 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:56:35,097 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:56:35,098 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:56:35,101 INFO L85 PathProgramCache]: Analyzing trace with hash -913315135, now seen corresponding path program 1 times [2022-04-28 03:56:35,101 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:56:35,101 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [756159993] [2022-04-28 03:56:35,101 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:56:35,101 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:56:35,110 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:35,157 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:56:35,159 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:35,170 INFO L290 TraceCheckUtils]: 0: Hoare triple {6390#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {6382#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:35,171 INFO L290 TraceCheckUtils]: 1: Hoare triple {6382#(<= 200000 ~SIZE~0)} assume true; {6382#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:35,171 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {6382#(<= 200000 ~SIZE~0)} {6377#true} #90#return; {6382#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:35,171 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:56:35,172 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:35,174 INFO L290 TraceCheckUtils]: 0: Hoare triple {6377#true} ~cond := #in~cond; {6377#true} is VALID [2022-04-28 03:56:35,174 INFO L290 TraceCheckUtils]: 1: Hoare triple {6377#true} assume !(0 == ~cond); {6377#true} is VALID [2022-04-28 03:56:35,174 INFO L290 TraceCheckUtils]: 2: Hoare triple {6377#true} assume true; {6377#true} is VALID [2022-04-28 03:56:35,175 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6377#true} {6382#(<= 200000 ~SIZE~0)} #86#return; {6382#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:35,175 INFO L272 TraceCheckUtils]: 0: Hoare triple {6377#true} call ULTIMATE.init(); {6390#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:56:35,176 INFO L290 TraceCheckUtils]: 1: Hoare triple {6390#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {6382#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:35,176 INFO L290 TraceCheckUtils]: 2: Hoare triple {6382#(<= 200000 ~SIZE~0)} assume true; {6382#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:35,177 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6382#(<= 200000 ~SIZE~0)} {6377#true} #90#return; {6382#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:35,177 INFO L272 TraceCheckUtils]: 4: Hoare triple {6382#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {6382#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:35,177 INFO L290 TraceCheckUtils]: 5: Hoare triple {6382#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {6382#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:35,177 INFO L272 TraceCheckUtils]: 6: Hoare triple {6382#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {6377#true} is VALID [2022-04-28 03:56:35,177 INFO L290 TraceCheckUtils]: 7: Hoare triple {6377#true} ~cond := #in~cond; {6377#true} is VALID [2022-04-28 03:56:35,178 INFO L290 TraceCheckUtils]: 8: Hoare triple {6377#true} assume !(0 == ~cond); {6377#true} is VALID [2022-04-28 03:56:35,178 INFO L290 TraceCheckUtils]: 9: Hoare triple {6377#true} assume true; {6377#true} is VALID [2022-04-28 03:56:35,178 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6377#true} {6382#(<= 200000 ~SIZE~0)} #86#return; {6382#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:35,178 INFO L290 TraceCheckUtils]: 11: Hoare triple {6382#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {6382#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:35,179 INFO L290 TraceCheckUtils]: 12: Hoare triple {6382#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {6387#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:35,179 INFO L290 TraceCheckUtils]: 13: Hoare triple {6387#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [116] L27-3-->L27-4_primed: Formula: (let ((.cse1 (<= v_~last~0_51 v_main_~c~0_104)) (.cse0 (= v_main_~st~0_53 v_main_~st~0_52)) (.cse2 (= v_main_~c~0_104 v_main_~c~0_103)) (.cse3 (= |v_main_#t~post5_66| |v_main_#t~post5_64|))) (or (and .cse0 (or (not (< v_main_~c~0_104 v_~SIZE~0_44)) (not .cse1)) .cse2 .cse3) (and (< v_main_~c~0_104 v_main_~c~0_103) (< v_main_~c~0_103 (+ v_~SIZE~0_44 1)) (= 0 v_main_~st~0_52) .cse1) (and (= v_~last~0_51 v_~last~0_51) .cse0 .cse2 (= v_~SIZE~0_44 v_~SIZE~0_44) .cse3))) InVars {~SIZE~0=v_~SIZE~0_44, main_~c~0=v_main_~c~0_104, main_#t~post5=|v_main_#t~post5_66|, main_~st~0=v_main_~st~0_53, ~last~0=v_~last~0_51} OutVars{~SIZE~0=v_~SIZE~0_44, main_#t~post5=|v_main_#t~post5_64|, main_~c~0=v_main_~c~0_103, main_~st~0=v_main_~st~0_52, ~last~0=v_~last~0_51} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {6388#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:56:35,180 INFO L290 TraceCheckUtils]: 14: Hoare triple {6388#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [117] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6388#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:56:35,180 INFO L290 TraceCheckUtils]: 15: Hoare triple {6388#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [118] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_69| |v_main_#t~post5_65|)) (.cse1 (= v_main_~c~0_106 v_main_~c~0_105))) (or (and (or (not (< v_main_~c~0_106 v_~last~0_52)) (not (< v_main_~c~0_106 v_~SIZE~0_45))) .cse0 .cse1) (and (< v_main_~c~0_105 (+ v_~last~0_52 1)) (< v_main_~c~0_105 (+ v_~SIZE~0_45 1)) (< v_main_~c~0_106 v_main_~c~0_105)) (and .cse0 (= v_~SIZE~0_45 v_~SIZE~0_45) (= v_~last~0_52 v_~last~0_52) .cse1))) InVars {~SIZE~0=v_~SIZE~0_45, main_~c~0=v_main_~c~0_106, main_#t~post5=|v_main_#t~post5_69|, ~last~0=v_~last~0_52} OutVars{~SIZE~0=v_~SIZE~0_45, main_#t~post5=|v_main_#t~post5_65|, main_~c~0=v_main_~c~0_105, ~last~0=v_~last~0_52} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {6388#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:56:35,181 INFO L290 TraceCheckUtils]: 16: Hoare triple {6388#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [115] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {6389#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 03:56:35,181 INFO L290 TraceCheckUtils]: 17: Hoare triple {6389#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {6378#false} is VALID [2022-04-28 03:56:35,181 INFO L290 TraceCheckUtils]: 18: Hoare triple {6378#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {6378#false} is VALID [2022-04-28 03:56:35,181 INFO L290 TraceCheckUtils]: 19: Hoare triple {6378#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {6378#false} is VALID [2022-04-28 03:56:35,182 INFO L290 TraceCheckUtils]: 20: Hoare triple {6378#false} assume !(~d~0 == ~SIZE~0); {6378#false} is VALID [2022-04-28 03:56:35,182 INFO L272 TraceCheckUtils]: 21: Hoare triple {6378#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {6378#false} is VALID [2022-04-28 03:56:35,182 INFO L290 TraceCheckUtils]: 22: Hoare triple {6378#false} ~cond := #in~cond; {6378#false} is VALID [2022-04-28 03:56:35,182 INFO L290 TraceCheckUtils]: 23: Hoare triple {6378#false} assume 0 == ~cond; {6378#false} is VALID [2022-04-28 03:56:35,182 INFO L290 TraceCheckUtils]: 24: Hoare triple {6378#false} assume !false; {6378#false} is VALID [2022-04-28 03:56:35,182 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:56:35,182 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:56:35,182 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [756159993] [2022-04-28 03:56:35,182 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [756159993] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 03:56:35,182 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [697850] [2022-04-28 03:56:35,182 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:56:35,183 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:56:35,183 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 03:56:35,188 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 03:56:35,188 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-28 03:56:35,217 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:35,218 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 03:56:35,224 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:35,225 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 03:56:35,458 INFO L272 TraceCheckUtils]: 0: Hoare triple {6377#true} call ULTIMATE.init(); {6377#true} is VALID [2022-04-28 03:56:35,459 INFO L290 TraceCheckUtils]: 1: Hoare triple {6377#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {6382#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:35,459 INFO L290 TraceCheckUtils]: 2: Hoare triple {6382#(<= 200000 ~SIZE~0)} assume true; {6382#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:35,460 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6382#(<= 200000 ~SIZE~0)} {6377#true} #90#return; {6382#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:35,460 INFO L272 TraceCheckUtils]: 4: Hoare triple {6382#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {6382#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:35,460 INFO L290 TraceCheckUtils]: 5: Hoare triple {6382#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {6382#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:35,461 INFO L272 TraceCheckUtils]: 6: Hoare triple {6382#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {6382#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:35,461 INFO L290 TraceCheckUtils]: 7: Hoare triple {6382#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {6382#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:35,461 INFO L290 TraceCheckUtils]: 8: Hoare triple {6382#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {6382#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:35,461 INFO L290 TraceCheckUtils]: 9: Hoare triple {6382#(<= 200000 ~SIZE~0)} assume true; {6382#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:35,462 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6382#(<= 200000 ~SIZE~0)} {6382#(<= 200000 ~SIZE~0)} #86#return; {6382#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:35,462 INFO L290 TraceCheckUtils]: 11: Hoare triple {6382#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {6382#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:35,463 INFO L290 TraceCheckUtils]: 12: Hoare triple {6382#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {6430#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:35,463 INFO L290 TraceCheckUtils]: 13: Hoare triple {6430#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [116] L27-3-->L27-4_primed: Formula: (let ((.cse1 (<= v_~last~0_51 v_main_~c~0_104)) (.cse0 (= v_main_~st~0_53 v_main_~st~0_52)) (.cse2 (= v_main_~c~0_104 v_main_~c~0_103)) (.cse3 (= |v_main_#t~post5_66| |v_main_#t~post5_64|))) (or (and .cse0 (or (not (< v_main_~c~0_104 v_~SIZE~0_44)) (not .cse1)) .cse2 .cse3) (and (< v_main_~c~0_104 v_main_~c~0_103) (< v_main_~c~0_103 (+ v_~SIZE~0_44 1)) (= 0 v_main_~st~0_52) .cse1) (and (= v_~last~0_51 v_~last~0_51) .cse0 .cse2 (= v_~SIZE~0_44 v_~SIZE~0_44) .cse3))) InVars {~SIZE~0=v_~SIZE~0_44, main_~c~0=v_main_~c~0_104, main_#t~post5=|v_main_#t~post5_66|, main_~st~0=v_main_~st~0_53, ~last~0=v_~last~0_51} OutVars{~SIZE~0=v_~SIZE~0_44, main_#t~post5=|v_main_#t~post5_64|, main_~c~0=v_main_~c~0_103, main_~st~0=v_main_~st~0_52, ~last~0=v_~last~0_51} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {6434#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:35,464 INFO L290 TraceCheckUtils]: 14: Hoare triple {6434#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [117] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6434#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:35,464 INFO L290 TraceCheckUtils]: 15: Hoare triple {6434#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [118] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_69| |v_main_#t~post5_65|)) (.cse1 (= v_main_~c~0_106 v_main_~c~0_105))) (or (and (or (not (< v_main_~c~0_106 v_~last~0_52)) (not (< v_main_~c~0_106 v_~SIZE~0_45))) .cse0 .cse1) (and (< v_main_~c~0_105 (+ v_~last~0_52 1)) (< v_main_~c~0_105 (+ v_~SIZE~0_45 1)) (< v_main_~c~0_106 v_main_~c~0_105)) (and .cse0 (= v_~SIZE~0_45 v_~SIZE~0_45) (= v_~last~0_52 v_~last~0_52) .cse1))) InVars {~SIZE~0=v_~SIZE~0_45, main_~c~0=v_main_~c~0_106, main_#t~post5=|v_main_#t~post5_69|, ~last~0=v_~last~0_52} OutVars{~SIZE~0=v_~SIZE~0_45, main_#t~post5=|v_main_#t~post5_65|, main_~c~0=v_main_~c~0_105, ~last~0=v_~last~0_52} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {6434#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:35,465 INFO L290 TraceCheckUtils]: 16: Hoare triple {6434#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [115] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {6444#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 03:56:35,466 INFO L290 TraceCheckUtils]: 17: Hoare triple {6444#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {6378#false} is VALID [2022-04-28 03:56:35,466 INFO L290 TraceCheckUtils]: 18: Hoare triple {6378#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {6378#false} is VALID [2022-04-28 03:56:35,466 INFO L290 TraceCheckUtils]: 19: Hoare triple {6378#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {6378#false} is VALID [2022-04-28 03:56:35,466 INFO L290 TraceCheckUtils]: 20: Hoare triple {6378#false} assume !(~d~0 == ~SIZE~0); {6378#false} is VALID [2022-04-28 03:56:35,466 INFO L272 TraceCheckUtils]: 21: Hoare triple {6378#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {6378#false} is VALID [2022-04-28 03:56:35,466 INFO L290 TraceCheckUtils]: 22: Hoare triple {6378#false} ~cond := #in~cond; {6378#false} is VALID [2022-04-28 03:56:35,466 INFO L290 TraceCheckUtils]: 23: Hoare triple {6378#false} assume 0 == ~cond; {6378#false} is VALID [2022-04-28 03:56:35,466 INFO L290 TraceCheckUtils]: 24: Hoare triple {6378#false} assume !false; {6378#false} is VALID [2022-04-28 03:56:35,466 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:56:35,466 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 03:56:35,826 INFO L290 TraceCheckUtils]: 24: Hoare triple {6378#false} assume !false; {6378#false} is VALID [2022-04-28 03:56:35,826 INFO L290 TraceCheckUtils]: 23: Hoare triple {6378#false} assume 0 == ~cond; {6378#false} is VALID [2022-04-28 03:56:35,826 INFO L290 TraceCheckUtils]: 22: Hoare triple {6378#false} ~cond := #in~cond; {6378#false} is VALID [2022-04-28 03:56:35,826 INFO L272 TraceCheckUtils]: 21: Hoare triple {6378#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {6378#false} is VALID [2022-04-28 03:56:35,826 INFO L290 TraceCheckUtils]: 20: Hoare triple {6378#false} assume !(~d~0 == ~SIZE~0); {6378#false} is VALID [2022-04-28 03:56:35,827 INFO L290 TraceCheckUtils]: 19: Hoare triple {6378#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {6378#false} is VALID [2022-04-28 03:56:35,827 INFO L290 TraceCheckUtils]: 18: Hoare triple {6378#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {6378#false} is VALID [2022-04-28 03:56:35,827 INFO L290 TraceCheckUtils]: 17: Hoare triple {6490#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {6378#false} is VALID [2022-04-28 03:56:35,828 INFO L290 TraceCheckUtils]: 16: Hoare triple {6494#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [115] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {6490#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 03:56:35,828 INFO L290 TraceCheckUtils]: 15: Hoare triple {6494#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [118] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_69| |v_main_#t~post5_65|)) (.cse1 (= v_main_~c~0_106 v_main_~c~0_105))) (or (and (or (not (< v_main_~c~0_106 v_~last~0_52)) (not (< v_main_~c~0_106 v_~SIZE~0_45))) .cse0 .cse1) (and (< v_main_~c~0_105 (+ v_~last~0_52 1)) (< v_main_~c~0_105 (+ v_~SIZE~0_45 1)) (< v_main_~c~0_106 v_main_~c~0_105)) (and .cse0 (= v_~SIZE~0_45 v_~SIZE~0_45) (= v_~last~0_52 v_~last~0_52) .cse1))) InVars {~SIZE~0=v_~SIZE~0_45, main_~c~0=v_main_~c~0_106, main_#t~post5=|v_main_#t~post5_69|, ~last~0=v_~last~0_52} OutVars{~SIZE~0=v_~SIZE~0_45, main_#t~post5=|v_main_#t~post5_65|, main_~c~0=v_main_~c~0_105, ~last~0=v_~last~0_52} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {6494#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:56:35,829 INFO L290 TraceCheckUtils]: 14: Hoare triple {6494#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [117] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {6494#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:56:35,829 INFO L290 TraceCheckUtils]: 13: Hoare triple {6504#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [116] L27-3-->L27-4_primed: Formula: (let ((.cse1 (<= v_~last~0_51 v_main_~c~0_104)) (.cse0 (= v_main_~st~0_53 v_main_~st~0_52)) (.cse2 (= v_main_~c~0_104 v_main_~c~0_103)) (.cse3 (= |v_main_#t~post5_66| |v_main_#t~post5_64|))) (or (and .cse0 (or (not (< v_main_~c~0_104 v_~SIZE~0_44)) (not .cse1)) .cse2 .cse3) (and (< v_main_~c~0_104 v_main_~c~0_103) (< v_main_~c~0_103 (+ v_~SIZE~0_44 1)) (= 0 v_main_~st~0_52) .cse1) (and (= v_~last~0_51 v_~last~0_51) .cse0 .cse2 (= v_~SIZE~0_44 v_~SIZE~0_44) .cse3))) InVars {~SIZE~0=v_~SIZE~0_44, main_~c~0=v_main_~c~0_104, main_#t~post5=|v_main_#t~post5_66|, main_~st~0=v_main_~st~0_53, ~last~0=v_~last~0_51} OutVars{~SIZE~0=v_~SIZE~0_44, main_#t~post5=|v_main_#t~post5_64|, main_~c~0=v_main_~c~0_103, main_~st~0=v_main_~st~0_52, ~last~0=v_~last~0_51} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {6494#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:56:35,830 INFO L290 TraceCheckUtils]: 12: Hoare triple {6508#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {6504#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 03:56:35,830 INFO L290 TraceCheckUtils]: 11: Hoare triple {6508#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {6508#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:35,830 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6377#true} {6508#(< 1 ~SIZE~0)} #86#return; {6508#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:35,831 INFO L290 TraceCheckUtils]: 9: Hoare triple {6377#true} assume true; {6377#true} is VALID [2022-04-28 03:56:35,831 INFO L290 TraceCheckUtils]: 8: Hoare triple {6377#true} assume !(0 == ~cond); {6377#true} is VALID [2022-04-28 03:56:35,831 INFO L290 TraceCheckUtils]: 7: Hoare triple {6377#true} ~cond := #in~cond; {6377#true} is VALID [2022-04-28 03:56:35,831 INFO L272 TraceCheckUtils]: 6: Hoare triple {6508#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {6377#true} is VALID [2022-04-28 03:56:35,831 INFO L290 TraceCheckUtils]: 5: Hoare triple {6508#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {6508#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:35,832 INFO L272 TraceCheckUtils]: 4: Hoare triple {6508#(< 1 ~SIZE~0)} call #t~ret7 := main(); {6508#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:35,832 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6508#(< 1 ~SIZE~0)} {6377#true} #90#return; {6508#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:35,832 INFO L290 TraceCheckUtils]: 2: Hoare triple {6508#(< 1 ~SIZE~0)} assume true; {6508#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:35,833 INFO L290 TraceCheckUtils]: 1: Hoare triple {6377#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {6508#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:35,833 INFO L272 TraceCheckUtils]: 0: Hoare triple {6377#true} call ULTIMATE.init(); {6377#true} is VALID [2022-04-28 03:56:35,833 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:56:35,833 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [697850] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 03:56:35,833 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 03:56:35,833 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 03:56:36,088 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:56:36,089 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1827301300] [2022-04-28 03:56:36,089 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1827301300] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:56:36,089 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:56:36,089 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 03:56:36,089 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [728308068] [2022-04-28 03:56:36,089 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:56:36,089 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 1.9230769230769231) internal successors, (25), 12 states have internal predecessors, (25), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 31 [2022-04-28 03:56:36,090 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:56:36,090 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 1.9230769230769231) internal successors, (25), 12 states have internal predecessors, (25), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:36,112 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:56:36,112 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 03:56:36,112 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:56:36,112 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 03:56:36,112 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=125, Invalid=337, Unknown=0, NotChecked=0, Total=462 [2022-04-28 03:56:36,113 INFO L87 Difference]: Start difference. First operand 137 states and 171 transitions. Second operand has 13 states, 13 states have (on average 1.9230769230769231) internal successors, (25), 12 states have internal predecessors, (25), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:37,146 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:56:37,147 INFO L93 Difference]: Finished difference Result 278 states and 356 transitions. [2022-04-28 03:56:37,147 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 03:56:37,147 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 1.9230769230769231) internal successors, (25), 12 states have internal predecessors, (25), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 31 [2022-04-28 03:56:37,147 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:56:37,147 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 1.9230769230769231) internal successors, (25), 12 states have internal predecessors, (25), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:37,148 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 82 transitions. [2022-04-28 03:56:37,148 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 1.9230769230769231) internal successors, (25), 12 states have internal predecessors, (25), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:37,149 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 82 transitions. [2022-04-28 03:56:37,149 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 82 transitions. [2022-04-28 03:56:37,202 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 82 edges. 82 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:56:37,204 INFO L225 Difference]: With dead ends: 278 [2022-04-28 03:56:37,204 INFO L226 Difference]: Without dead ends: 174 [2022-04-28 03:56:37,204 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 79 GetRequests, 54 SyntacticMatches, 2 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 234 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=156, Invalid=444, Unknown=0, NotChecked=0, Total=600 [2022-04-28 03:56:37,205 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 55 mSDsluCounter, 13 mSDsCounter, 0 mSdLazyCounter, 378 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 56 SdHoareTripleChecker+Valid, 37 SdHoareTripleChecker+Invalid, 393 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 378 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 03:56:37,205 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [56 Valid, 37 Invalid, 393 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 378 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 03:56:37,205 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 174 states. [2022-04-28 03:56:37,556 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 174 to 149. [2022-04-28 03:56:37,557 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:56:37,557 INFO L82 GeneralOperation]: Start isEquivalent. First operand 174 states. Second operand has 149 states, 134 states have (on average 1.2686567164179106) internal successors, (170), 137 states have internal predecessors, (170), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:56:37,557 INFO L74 IsIncluded]: Start isIncluded. First operand 174 states. Second operand has 149 states, 134 states have (on average 1.2686567164179106) internal successors, (170), 137 states have internal predecessors, (170), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:56:37,557 INFO L87 Difference]: Start difference. First operand 174 states. Second operand has 149 states, 134 states have (on average 1.2686567164179106) internal successors, (170), 137 states have internal predecessors, (170), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:56:37,560 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:56:37,560 INFO L93 Difference]: Finished difference Result 174 states and 216 transitions. [2022-04-28 03:56:37,560 INFO L276 IsEmpty]: Start isEmpty. Operand 174 states and 216 transitions. [2022-04-28 03:56:37,560 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:56:37,560 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:56:37,561 INFO L74 IsIncluded]: Start isIncluded. First operand has 149 states, 134 states have (on average 1.2686567164179106) internal successors, (170), 137 states have internal predecessors, (170), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 174 states. [2022-04-28 03:56:37,561 INFO L87 Difference]: Start difference. First operand has 149 states, 134 states have (on average 1.2686567164179106) internal successors, (170), 137 states have internal predecessors, (170), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 174 states. [2022-04-28 03:56:37,563 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:56:37,563 INFO L93 Difference]: Finished difference Result 174 states and 216 transitions. [2022-04-28 03:56:37,563 INFO L276 IsEmpty]: Start isEmpty. Operand 174 states and 216 transitions. [2022-04-28 03:56:37,563 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:56:37,564 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:56:37,564 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:56:37,564 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:56:37,564 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 149 states, 134 states have (on average 1.2686567164179106) internal successors, (170), 137 states have internal predecessors, (170), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:56:37,566 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 149 states to 149 states and 187 transitions. [2022-04-28 03:56:37,566 INFO L78 Accepts]: Start accepts. Automaton has 149 states and 187 transitions. Word has length 31 [2022-04-28 03:56:37,566 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:56:37,566 INFO L495 AbstractCegarLoop]: Abstraction has 149 states and 187 transitions. [2022-04-28 03:56:37,566 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 1.9230769230769231) internal successors, (25), 12 states have internal predecessors, (25), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:37,566 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 149 states and 187 transitions. [2022-04-28 03:56:37,797 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 187 edges. 187 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:56:37,797 INFO L276 IsEmpty]: Start isEmpty. Operand 149 states and 187 transitions. [2022-04-28 03:56:37,798 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-28 03:56:37,798 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:56:37,798 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:56:37,814 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-28 03:56:37,998 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable11,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:56:37,999 INFO L420 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:56:37,999 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:56:37,999 INFO L85 PathProgramCache]: Analyzing trace with hash -1482120420, now seen corresponding path program 4 times [2022-04-28 03:56:37,999 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:56:37,999 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [556608950] [2022-04-28 03:56:42,109 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:56:42,212 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:56:45,214 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:56:45,301 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:56:45,302 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:56:45,305 INFO L85 PathProgramCache]: Analyzing trace with hash 1579207617, now seen corresponding path program 1 times [2022-04-28 03:56:45,305 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:56:45,305 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1299382832] [2022-04-28 03:56:45,305 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:56:45,306 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:56:45,314 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:45,363 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:56:45,364 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:45,370 INFO L290 TraceCheckUtils]: 0: Hoare triple {7777#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {7769#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:45,371 INFO L290 TraceCheckUtils]: 1: Hoare triple {7769#(<= 200000 ~SIZE~0)} assume true; {7769#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:45,371 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {7769#(<= 200000 ~SIZE~0)} {7764#true} #90#return; {7769#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:45,371 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:56:45,372 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:45,374 INFO L290 TraceCheckUtils]: 0: Hoare triple {7764#true} ~cond := #in~cond; {7764#true} is VALID [2022-04-28 03:56:45,374 INFO L290 TraceCheckUtils]: 1: Hoare triple {7764#true} assume !(0 == ~cond); {7764#true} is VALID [2022-04-28 03:56:45,374 INFO L290 TraceCheckUtils]: 2: Hoare triple {7764#true} assume true; {7764#true} is VALID [2022-04-28 03:56:45,375 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7764#true} {7769#(<= 200000 ~SIZE~0)} #86#return; {7769#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:45,375 INFO L272 TraceCheckUtils]: 0: Hoare triple {7764#true} call ULTIMATE.init(); {7777#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:56:45,376 INFO L290 TraceCheckUtils]: 1: Hoare triple {7777#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {7769#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:45,376 INFO L290 TraceCheckUtils]: 2: Hoare triple {7769#(<= 200000 ~SIZE~0)} assume true; {7769#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:45,376 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7769#(<= 200000 ~SIZE~0)} {7764#true} #90#return; {7769#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:45,377 INFO L272 TraceCheckUtils]: 4: Hoare triple {7769#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {7769#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:45,377 INFO L290 TraceCheckUtils]: 5: Hoare triple {7769#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {7769#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:45,377 INFO L272 TraceCheckUtils]: 6: Hoare triple {7769#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {7764#true} is VALID [2022-04-28 03:56:45,377 INFO L290 TraceCheckUtils]: 7: Hoare triple {7764#true} ~cond := #in~cond; {7764#true} is VALID [2022-04-28 03:56:45,377 INFO L290 TraceCheckUtils]: 8: Hoare triple {7764#true} assume !(0 == ~cond); {7764#true} is VALID [2022-04-28 03:56:45,377 INFO L290 TraceCheckUtils]: 9: Hoare triple {7764#true} assume true; {7764#true} is VALID [2022-04-28 03:56:45,378 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7764#true} {7769#(<= 200000 ~SIZE~0)} #86#return; {7769#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:45,378 INFO L290 TraceCheckUtils]: 11: Hoare triple {7769#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {7769#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:45,378 INFO L290 TraceCheckUtils]: 12: Hoare triple {7769#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {7774#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:45,379 INFO L290 TraceCheckUtils]: 13: Hoare triple {7774#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [120] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~st~0_63 v_main_~st~0_62)) (.cse2 (= |v_main_#t~post5_79| |v_main_#t~post5_77|)) (.cse3 (= v_main_~c~0_124 v_main_~c~0_123)) (.cse0 (<= v_~last~0_61 v_main_~c~0_124))) (or (and (or (not .cse0) (not (< v_main_~c~0_124 v_~SIZE~0_53))) .cse1 .cse2 .cse3) (and (= v_~SIZE~0_53 v_~SIZE~0_53) .cse1 (= v_~last~0_61 v_~last~0_61) .cse2 .cse3) (and (= 0 v_main_~st~0_62) (< v_main_~c~0_123 (+ v_~SIZE~0_53 1)) (< v_main_~c~0_124 v_main_~c~0_123) .cse0))) InVars {~SIZE~0=v_~SIZE~0_53, main_~c~0=v_main_~c~0_124, main_#t~post5=|v_main_#t~post5_79|, main_~st~0=v_main_~st~0_63, ~last~0=v_~last~0_61} OutVars{~SIZE~0=v_~SIZE~0_53, main_#t~post5=|v_main_#t~post5_77|, main_~c~0=v_main_~c~0_123, main_~st~0=v_main_~st~0_62, ~last~0=v_~last~0_61} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {7775#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:56:45,380 INFO L290 TraceCheckUtils]: 14: Hoare triple {7775#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [121] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7775#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:56:45,380 INFO L290 TraceCheckUtils]: 15: Hoare triple {7775#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [122] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_126 v_main_~c~0_125))) (or (and .cse0 (= v_~SIZE~0_54 v_~SIZE~0_54) (= v_~last~0_62 v_~last~0_62) (= |v_main_#t~post5_82| |v_main_#t~post5_78|)) (and .cse0 (= |v_main_#t~post5_78| |v_main_#t~post5_82|) (or (not (< v_main_~c~0_126 v_~SIZE~0_54)) (not (< v_main_~c~0_126 v_~last~0_62)))) (and (< v_main_~c~0_126 v_main_~c~0_125) (< v_main_~c~0_125 (+ v_~last~0_62 1)) (< v_main_~c~0_125 (+ v_~SIZE~0_54 1))))) InVars {~SIZE~0=v_~SIZE~0_54, main_~c~0=v_main_~c~0_126, main_#t~post5=|v_main_#t~post5_82|, ~last~0=v_~last~0_62} OutVars{~SIZE~0=v_~SIZE~0_54, main_#t~post5=|v_main_#t~post5_78|, main_~c~0=v_main_~c~0_125, ~last~0=v_~last~0_62} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {7775#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:56:45,381 INFO L290 TraceCheckUtils]: 16: Hoare triple {7775#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [119] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {7776#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 03:56:45,381 INFO L290 TraceCheckUtils]: 17: Hoare triple {7776#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {7765#false} is VALID [2022-04-28 03:56:45,381 INFO L290 TraceCheckUtils]: 18: Hoare triple {7765#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {7765#false} is VALID [2022-04-28 03:56:45,381 INFO L290 TraceCheckUtils]: 19: Hoare triple {7765#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {7765#false} is VALID [2022-04-28 03:56:45,381 INFO L290 TraceCheckUtils]: 20: Hoare triple {7765#false} assume !(~d~0 == ~SIZE~0); {7765#false} is VALID [2022-04-28 03:56:45,381 INFO L272 TraceCheckUtils]: 21: Hoare triple {7765#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {7765#false} is VALID [2022-04-28 03:56:45,381 INFO L290 TraceCheckUtils]: 22: Hoare triple {7765#false} ~cond := #in~cond; {7765#false} is VALID [2022-04-28 03:56:45,381 INFO L290 TraceCheckUtils]: 23: Hoare triple {7765#false} assume 0 == ~cond; {7765#false} is VALID [2022-04-28 03:56:45,381 INFO L290 TraceCheckUtils]: 24: Hoare triple {7765#false} assume !false; {7765#false} is VALID [2022-04-28 03:56:45,382 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:56:45,382 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:56:45,382 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1299382832] [2022-04-28 03:56:45,382 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1299382832] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 03:56:45,382 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1592929659] [2022-04-28 03:56:45,382 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:56:45,382 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:56:45,382 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 03:56:45,396 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 03:56:45,397 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-28 03:56:45,427 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:45,427 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 03:56:45,435 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:45,435 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 03:56:45,681 INFO L272 TraceCheckUtils]: 0: Hoare triple {7764#true} call ULTIMATE.init(); {7764#true} is VALID [2022-04-28 03:56:45,681 INFO L290 TraceCheckUtils]: 1: Hoare triple {7764#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {7769#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:45,682 INFO L290 TraceCheckUtils]: 2: Hoare triple {7769#(<= 200000 ~SIZE~0)} assume true; {7769#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:45,686 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7769#(<= 200000 ~SIZE~0)} {7764#true} #90#return; {7769#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:45,686 INFO L272 TraceCheckUtils]: 4: Hoare triple {7769#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {7769#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:45,686 INFO L290 TraceCheckUtils]: 5: Hoare triple {7769#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {7769#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:45,687 INFO L272 TraceCheckUtils]: 6: Hoare triple {7769#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {7769#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:45,687 INFO L290 TraceCheckUtils]: 7: Hoare triple {7769#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {7769#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:45,687 INFO L290 TraceCheckUtils]: 8: Hoare triple {7769#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {7769#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:45,687 INFO L290 TraceCheckUtils]: 9: Hoare triple {7769#(<= 200000 ~SIZE~0)} assume true; {7769#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:45,688 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7769#(<= 200000 ~SIZE~0)} {7769#(<= 200000 ~SIZE~0)} #86#return; {7769#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:45,688 INFO L290 TraceCheckUtils]: 11: Hoare triple {7769#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {7769#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:45,689 INFO L290 TraceCheckUtils]: 12: Hoare triple {7769#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {7817#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:45,689 INFO L290 TraceCheckUtils]: 13: Hoare triple {7817#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [120] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~st~0_63 v_main_~st~0_62)) (.cse2 (= |v_main_#t~post5_79| |v_main_#t~post5_77|)) (.cse3 (= v_main_~c~0_124 v_main_~c~0_123)) (.cse0 (<= v_~last~0_61 v_main_~c~0_124))) (or (and (or (not .cse0) (not (< v_main_~c~0_124 v_~SIZE~0_53))) .cse1 .cse2 .cse3) (and (= v_~SIZE~0_53 v_~SIZE~0_53) .cse1 (= v_~last~0_61 v_~last~0_61) .cse2 .cse3) (and (= 0 v_main_~st~0_62) (< v_main_~c~0_123 (+ v_~SIZE~0_53 1)) (< v_main_~c~0_124 v_main_~c~0_123) .cse0))) InVars {~SIZE~0=v_~SIZE~0_53, main_~c~0=v_main_~c~0_124, main_#t~post5=|v_main_#t~post5_79|, main_~st~0=v_main_~st~0_63, ~last~0=v_~last~0_61} OutVars{~SIZE~0=v_~SIZE~0_53, main_#t~post5=|v_main_#t~post5_77|, main_~c~0=v_main_~c~0_123, main_~st~0=v_main_~st~0_62, ~last~0=v_~last~0_61} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {7821#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:45,690 INFO L290 TraceCheckUtils]: 14: Hoare triple {7821#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [121] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7821#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:45,690 INFO L290 TraceCheckUtils]: 15: Hoare triple {7821#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [122] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_126 v_main_~c~0_125))) (or (and .cse0 (= v_~SIZE~0_54 v_~SIZE~0_54) (= v_~last~0_62 v_~last~0_62) (= |v_main_#t~post5_82| |v_main_#t~post5_78|)) (and .cse0 (= |v_main_#t~post5_78| |v_main_#t~post5_82|) (or (not (< v_main_~c~0_126 v_~SIZE~0_54)) (not (< v_main_~c~0_126 v_~last~0_62)))) (and (< v_main_~c~0_126 v_main_~c~0_125) (< v_main_~c~0_125 (+ v_~last~0_62 1)) (< v_main_~c~0_125 (+ v_~SIZE~0_54 1))))) InVars {~SIZE~0=v_~SIZE~0_54, main_~c~0=v_main_~c~0_126, main_#t~post5=|v_main_#t~post5_82|, ~last~0=v_~last~0_62} OutVars{~SIZE~0=v_~SIZE~0_54, main_#t~post5=|v_main_#t~post5_78|, main_~c~0=v_main_~c~0_125, ~last~0=v_~last~0_62} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {7821#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:45,691 INFO L290 TraceCheckUtils]: 16: Hoare triple {7821#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [119] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {7831#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 03:56:45,691 INFO L290 TraceCheckUtils]: 17: Hoare triple {7831#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {7765#false} is VALID [2022-04-28 03:56:45,691 INFO L290 TraceCheckUtils]: 18: Hoare triple {7765#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {7765#false} is VALID [2022-04-28 03:56:45,692 INFO L290 TraceCheckUtils]: 19: Hoare triple {7765#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {7765#false} is VALID [2022-04-28 03:56:45,692 INFO L290 TraceCheckUtils]: 20: Hoare triple {7765#false} assume !(~d~0 == ~SIZE~0); {7765#false} is VALID [2022-04-28 03:56:45,692 INFO L272 TraceCheckUtils]: 21: Hoare triple {7765#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {7765#false} is VALID [2022-04-28 03:56:45,692 INFO L290 TraceCheckUtils]: 22: Hoare triple {7765#false} ~cond := #in~cond; {7765#false} is VALID [2022-04-28 03:56:45,692 INFO L290 TraceCheckUtils]: 23: Hoare triple {7765#false} assume 0 == ~cond; {7765#false} is VALID [2022-04-28 03:56:45,692 INFO L290 TraceCheckUtils]: 24: Hoare triple {7765#false} assume !false; {7765#false} is VALID [2022-04-28 03:56:45,692 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:56:45,692 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 03:56:46,015 INFO L290 TraceCheckUtils]: 24: Hoare triple {7765#false} assume !false; {7765#false} is VALID [2022-04-28 03:56:46,016 INFO L290 TraceCheckUtils]: 23: Hoare triple {7765#false} assume 0 == ~cond; {7765#false} is VALID [2022-04-28 03:56:46,016 INFO L290 TraceCheckUtils]: 22: Hoare triple {7765#false} ~cond := #in~cond; {7765#false} is VALID [2022-04-28 03:56:46,016 INFO L272 TraceCheckUtils]: 21: Hoare triple {7765#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {7765#false} is VALID [2022-04-28 03:56:46,016 INFO L290 TraceCheckUtils]: 20: Hoare triple {7765#false} assume !(~d~0 == ~SIZE~0); {7765#false} is VALID [2022-04-28 03:56:46,016 INFO L290 TraceCheckUtils]: 19: Hoare triple {7765#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {7765#false} is VALID [2022-04-28 03:56:46,016 INFO L290 TraceCheckUtils]: 18: Hoare triple {7765#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {7765#false} is VALID [2022-04-28 03:56:46,017 INFO L290 TraceCheckUtils]: 17: Hoare triple {7877#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {7765#false} is VALID [2022-04-28 03:56:46,017 INFO L290 TraceCheckUtils]: 16: Hoare triple {7881#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [119] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {7877#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 03:56:46,018 INFO L290 TraceCheckUtils]: 15: Hoare triple {7881#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [122] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_126 v_main_~c~0_125))) (or (and .cse0 (= v_~SIZE~0_54 v_~SIZE~0_54) (= v_~last~0_62 v_~last~0_62) (= |v_main_#t~post5_82| |v_main_#t~post5_78|)) (and .cse0 (= |v_main_#t~post5_78| |v_main_#t~post5_82|) (or (not (< v_main_~c~0_126 v_~SIZE~0_54)) (not (< v_main_~c~0_126 v_~last~0_62)))) (and (< v_main_~c~0_126 v_main_~c~0_125) (< v_main_~c~0_125 (+ v_~last~0_62 1)) (< v_main_~c~0_125 (+ v_~SIZE~0_54 1))))) InVars {~SIZE~0=v_~SIZE~0_54, main_~c~0=v_main_~c~0_126, main_#t~post5=|v_main_#t~post5_82|, ~last~0=v_~last~0_62} OutVars{~SIZE~0=v_~SIZE~0_54, main_#t~post5=|v_main_#t~post5_78|, main_~c~0=v_main_~c~0_125, ~last~0=v_~last~0_62} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {7881#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:56:46,018 INFO L290 TraceCheckUtils]: 14: Hoare triple {7881#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [121] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {7881#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:56:46,019 INFO L290 TraceCheckUtils]: 13: Hoare triple {7891#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [120] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~st~0_63 v_main_~st~0_62)) (.cse2 (= |v_main_#t~post5_79| |v_main_#t~post5_77|)) (.cse3 (= v_main_~c~0_124 v_main_~c~0_123)) (.cse0 (<= v_~last~0_61 v_main_~c~0_124))) (or (and (or (not .cse0) (not (< v_main_~c~0_124 v_~SIZE~0_53))) .cse1 .cse2 .cse3) (and (= v_~SIZE~0_53 v_~SIZE~0_53) .cse1 (= v_~last~0_61 v_~last~0_61) .cse2 .cse3) (and (= 0 v_main_~st~0_62) (< v_main_~c~0_123 (+ v_~SIZE~0_53 1)) (< v_main_~c~0_124 v_main_~c~0_123) .cse0))) InVars {~SIZE~0=v_~SIZE~0_53, main_~c~0=v_main_~c~0_124, main_#t~post5=|v_main_#t~post5_79|, main_~st~0=v_main_~st~0_63, ~last~0=v_~last~0_61} OutVars{~SIZE~0=v_~SIZE~0_53, main_#t~post5=|v_main_#t~post5_77|, main_~c~0=v_main_~c~0_123, main_~st~0=v_main_~st~0_62, ~last~0=v_~last~0_61} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {7881#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:56:46,019 INFO L290 TraceCheckUtils]: 12: Hoare triple {7895#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {7891#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 03:56:46,019 INFO L290 TraceCheckUtils]: 11: Hoare triple {7895#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {7895#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:46,020 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7764#true} {7895#(< 1 ~SIZE~0)} #86#return; {7895#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:46,020 INFO L290 TraceCheckUtils]: 9: Hoare triple {7764#true} assume true; {7764#true} is VALID [2022-04-28 03:56:46,020 INFO L290 TraceCheckUtils]: 8: Hoare triple {7764#true} assume !(0 == ~cond); {7764#true} is VALID [2022-04-28 03:56:46,020 INFO L290 TraceCheckUtils]: 7: Hoare triple {7764#true} ~cond := #in~cond; {7764#true} is VALID [2022-04-28 03:56:46,020 INFO L272 TraceCheckUtils]: 6: Hoare triple {7895#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {7764#true} is VALID [2022-04-28 03:56:46,020 INFO L290 TraceCheckUtils]: 5: Hoare triple {7895#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {7895#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:46,021 INFO L272 TraceCheckUtils]: 4: Hoare triple {7895#(< 1 ~SIZE~0)} call #t~ret7 := main(); {7895#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:46,021 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7895#(< 1 ~SIZE~0)} {7764#true} #90#return; {7895#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:46,021 INFO L290 TraceCheckUtils]: 2: Hoare triple {7895#(< 1 ~SIZE~0)} assume true; {7895#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:46,022 INFO L290 TraceCheckUtils]: 1: Hoare triple {7764#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {7895#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:46,022 INFO L272 TraceCheckUtils]: 0: Hoare triple {7764#true} call ULTIMATE.init(); {7764#true} is VALID [2022-04-28 03:56:46,022 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:56:46,022 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1592929659] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 03:56:46,022 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 03:56:46,022 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 03:56:46,306 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:56:46,307 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [556608950] [2022-04-28 03:56:46,307 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [556608950] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:56:46,307 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:56:46,307 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 03:56:46,307 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1585969841] [2022-04-28 03:56:46,307 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:56:46,307 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 2.1538461538461537) internal successors, (28), 12 states have internal predecessors, (28), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 34 [2022-04-28 03:56:46,307 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:56:46,307 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 2.1538461538461537) internal successors, (28), 12 states have internal predecessors, (28), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:46,329 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-28 03:56:46,329 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 03:56:46,329 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:56:46,329 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 03:56:46,329 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=116, Invalid=346, Unknown=0, NotChecked=0, Total=462 [2022-04-28 03:56:46,330 INFO L87 Difference]: Start difference. First operand 149 states and 187 transitions. Second operand has 13 states, 13 states have (on average 2.1538461538461537) internal successors, (28), 12 states have internal predecessors, (28), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:47,491 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:56:47,491 INFO L93 Difference]: Finished difference Result 281 states and 356 transitions. [2022-04-28 03:56:47,491 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 03:56:47,492 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 2.1538461538461537) internal successors, (28), 12 states have internal predecessors, (28), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 34 [2022-04-28 03:56:47,492 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:56:47,492 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 2.1538461538461537) internal successors, (28), 12 states have internal predecessors, (28), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:47,493 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 83 transitions. [2022-04-28 03:56:47,493 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 2.1538461538461537) internal successors, (28), 12 states have internal predecessors, (28), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:47,493 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 83 transitions. [2022-04-28 03:56:47,493 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 83 transitions. [2022-04-28 03:56:47,559 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 83 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:56:47,562 INFO L225 Difference]: With dead ends: 281 [2022-04-28 03:56:47,562 INFO L226 Difference]: Without dead ends: 179 [2022-04-28 03:56:47,562 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 82 GetRequests, 54 SyntacticMatches, 5 SemanticMatches, 23 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 290 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=145, Invalid=455, Unknown=0, NotChecked=0, Total=600 [2022-04-28 03:56:47,562 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 48 mSDsluCounter, 19 mSDsCounter, 0 mSdLazyCounter, 463 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 49 SdHoareTripleChecker+Valid, 43 SdHoareTripleChecker+Invalid, 476 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 463 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 03:56:47,563 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [49 Valid, 43 Invalid, 476 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 463 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 03:56:47,563 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 179 states. [2022-04-28 03:56:47,977 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 179 to 158. [2022-04-28 03:56:47,977 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:56:47,977 INFO L82 GeneralOperation]: Start isEquivalent. First operand 179 states. Second operand has 158 states, 143 states have (on average 1.2517482517482517) internal successors, (179), 146 states have internal predecessors, (179), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:56:47,978 INFO L74 IsIncluded]: Start isIncluded. First operand 179 states. Second operand has 158 states, 143 states have (on average 1.2517482517482517) internal successors, (179), 146 states have internal predecessors, (179), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:56:47,978 INFO L87 Difference]: Start difference. First operand 179 states. Second operand has 158 states, 143 states have (on average 1.2517482517482517) internal successors, (179), 146 states have internal predecessors, (179), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:56:47,981 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:56:47,981 INFO L93 Difference]: Finished difference Result 179 states and 221 transitions. [2022-04-28 03:56:47,981 INFO L276 IsEmpty]: Start isEmpty. Operand 179 states and 221 transitions. [2022-04-28 03:56:47,982 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:56:47,982 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:56:47,982 INFO L74 IsIncluded]: Start isIncluded. First operand has 158 states, 143 states have (on average 1.2517482517482517) internal successors, (179), 146 states have internal predecessors, (179), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 179 states. [2022-04-28 03:56:47,983 INFO L87 Difference]: Start difference. First operand has 158 states, 143 states have (on average 1.2517482517482517) internal successors, (179), 146 states have internal predecessors, (179), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 179 states. [2022-04-28 03:56:47,986 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:56:47,986 INFO L93 Difference]: Finished difference Result 179 states and 221 transitions. [2022-04-28 03:56:47,986 INFO L276 IsEmpty]: Start isEmpty. Operand 179 states and 221 transitions. [2022-04-28 03:56:47,986 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:56:47,986 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:56:47,986 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:56:47,987 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:56:47,987 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 158 states, 143 states have (on average 1.2517482517482517) internal successors, (179), 146 states have internal predecessors, (179), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:56:47,990 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 158 states to 158 states and 196 transitions. [2022-04-28 03:56:47,990 INFO L78 Accepts]: Start accepts. Automaton has 158 states and 196 transitions. Word has length 34 [2022-04-28 03:56:47,990 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:56:47,990 INFO L495 AbstractCegarLoop]: Abstraction has 158 states and 196 transitions. [2022-04-28 03:56:47,990 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 2.1538461538461537) internal successors, (28), 12 states have internal predecessors, (28), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:47,990 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 158 states and 196 transitions. [2022-04-28 03:56:48,215 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 196 edges. 196 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:56:48,215 INFO L276 IsEmpty]: Start isEmpty. Operand 158 states and 196 transitions. [2022-04-28 03:56:48,219 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-28 03:56:48,219 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:56:48,219 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:56:48,236 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-28 03:56:48,435 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable12,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:56:48,435 INFO L420 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:56:48,435 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:56:48,435 INFO L85 PathProgramCache]: Analyzing trace with hash 1224498974, now seen corresponding path program 5 times [2022-04-28 03:56:48,436 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:56:48,436 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [424141954] [2022-04-28 03:56:48,628 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:56:50,758 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:56:50,868 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:56:50,869 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:56:50,873 INFO L85 PathProgramCache]: Analyzing trace with hash -223236927, now seen corresponding path program 1 times [2022-04-28 03:56:50,873 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:56:50,873 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1584931608] [2022-04-28 03:56:50,873 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:56:50,873 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:56:50,882 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:50,936 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:56:50,938 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:50,942 INFO L290 TraceCheckUtils]: 0: Hoare triple {9198#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {9190#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:50,943 INFO L290 TraceCheckUtils]: 1: Hoare triple {9190#(<= 200000 ~SIZE~0)} assume true; {9190#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:50,943 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {9190#(<= 200000 ~SIZE~0)} {9185#true} #90#return; {9190#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:50,943 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:56:50,944 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:50,946 INFO L290 TraceCheckUtils]: 0: Hoare triple {9185#true} ~cond := #in~cond; {9185#true} is VALID [2022-04-28 03:56:50,946 INFO L290 TraceCheckUtils]: 1: Hoare triple {9185#true} assume !(0 == ~cond); {9185#true} is VALID [2022-04-28 03:56:50,946 INFO L290 TraceCheckUtils]: 2: Hoare triple {9185#true} assume true; {9185#true} is VALID [2022-04-28 03:56:50,946 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9185#true} {9190#(<= 200000 ~SIZE~0)} #86#return; {9190#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:50,947 INFO L272 TraceCheckUtils]: 0: Hoare triple {9185#true} call ULTIMATE.init(); {9198#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:56:50,948 INFO L290 TraceCheckUtils]: 1: Hoare triple {9198#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {9190#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:50,948 INFO L290 TraceCheckUtils]: 2: Hoare triple {9190#(<= 200000 ~SIZE~0)} assume true; {9190#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:50,948 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9190#(<= 200000 ~SIZE~0)} {9185#true} #90#return; {9190#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:50,949 INFO L272 TraceCheckUtils]: 4: Hoare triple {9190#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {9190#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:50,949 INFO L290 TraceCheckUtils]: 5: Hoare triple {9190#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {9190#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:50,949 INFO L272 TraceCheckUtils]: 6: Hoare triple {9190#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {9185#true} is VALID [2022-04-28 03:56:50,949 INFO L290 TraceCheckUtils]: 7: Hoare triple {9185#true} ~cond := #in~cond; {9185#true} is VALID [2022-04-28 03:56:50,949 INFO L290 TraceCheckUtils]: 8: Hoare triple {9185#true} assume !(0 == ~cond); {9185#true} is VALID [2022-04-28 03:56:50,949 INFO L290 TraceCheckUtils]: 9: Hoare triple {9185#true} assume true; {9185#true} is VALID [2022-04-28 03:56:50,950 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {9185#true} {9190#(<= 200000 ~SIZE~0)} #86#return; {9190#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:50,950 INFO L290 TraceCheckUtils]: 11: Hoare triple {9190#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {9190#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:50,950 INFO L290 TraceCheckUtils]: 12: Hoare triple {9190#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {9195#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:50,951 INFO L290 TraceCheckUtils]: 13: Hoare triple {9195#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [124] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~st~0_75 v_main_~st~0_74)) (.cse1 (= |v_main_#t~post5_92| |v_main_#t~post5_90|)) (.cse3 (= v_main_~c~0_145 v_main_~c~0_144)) (.cse2 (<= v_~last~0_71 v_main_~c~0_145))) (or (and .cse0 .cse1 (or (not (< v_main_~c~0_145 v_~SIZE~0_62)) (not .cse2)) .cse3) (and .cse0 .cse1 (= v_~last~0_71 v_~last~0_71) .cse3 (= v_~SIZE~0_62 v_~SIZE~0_62)) (and (< v_main_~c~0_144 (+ v_~SIZE~0_62 1)) (< v_main_~c~0_145 v_main_~c~0_144) .cse2 (= 0 v_main_~st~0_74)))) InVars {~SIZE~0=v_~SIZE~0_62, main_~c~0=v_main_~c~0_145, main_#t~post5=|v_main_#t~post5_92|, main_~st~0=v_main_~st~0_75, ~last~0=v_~last~0_71} OutVars{~SIZE~0=v_~SIZE~0_62, main_#t~post5=|v_main_#t~post5_90|, main_~c~0=v_main_~c~0_144, main_~st~0=v_main_~st~0_74, ~last~0=v_~last~0_71} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {9196#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:56:50,952 INFO L290 TraceCheckUtils]: 14: Hoare triple {9196#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [125] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {9196#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:56:50,952 INFO L290 TraceCheckUtils]: 15: Hoare triple {9196#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [126] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_147 v_main_~c~0_146)) (.cse1 (= |v_main_#t~post5_95| |v_main_#t~post5_91|))) (or (and .cse0 .cse1 (= v_~last~0_72 v_~last~0_72) (= v_~SIZE~0_63 v_~SIZE~0_63)) (and .cse0 .cse1 (or (not (< v_main_~c~0_147 v_~last~0_72)) (not (< v_main_~c~0_147 v_~SIZE~0_63)))) (and (< v_main_~c~0_147 v_main_~c~0_146) (< v_main_~c~0_146 (+ v_~last~0_72 1)) (< v_main_~c~0_146 (+ v_~SIZE~0_63 1))))) InVars {~SIZE~0=v_~SIZE~0_63, main_~c~0=v_main_~c~0_147, main_#t~post5=|v_main_#t~post5_95|, ~last~0=v_~last~0_72} OutVars{~SIZE~0=v_~SIZE~0_63, main_#t~post5=|v_main_#t~post5_91|, main_~c~0=v_main_~c~0_146, ~last~0=v_~last~0_72} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {9196#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:56:50,953 INFO L290 TraceCheckUtils]: 16: Hoare triple {9196#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [123] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {9197#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 03:56:50,953 INFO L290 TraceCheckUtils]: 17: Hoare triple {9197#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {9186#false} is VALID [2022-04-28 03:56:50,953 INFO L290 TraceCheckUtils]: 18: Hoare triple {9186#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {9186#false} is VALID [2022-04-28 03:56:50,953 INFO L290 TraceCheckUtils]: 19: Hoare triple {9186#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {9186#false} is VALID [2022-04-28 03:56:50,953 INFO L290 TraceCheckUtils]: 20: Hoare triple {9186#false} assume !(~d~0 == ~SIZE~0); {9186#false} is VALID [2022-04-28 03:56:50,953 INFO L272 TraceCheckUtils]: 21: Hoare triple {9186#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {9186#false} is VALID [2022-04-28 03:56:50,953 INFO L290 TraceCheckUtils]: 22: Hoare triple {9186#false} ~cond := #in~cond; {9186#false} is VALID [2022-04-28 03:56:50,953 INFO L290 TraceCheckUtils]: 23: Hoare triple {9186#false} assume 0 == ~cond; {9186#false} is VALID [2022-04-28 03:56:50,954 INFO L290 TraceCheckUtils]: 24: Hoare triple {9186#false} assume !false; {9186#false} is VALID [2022-04-28 03:56:50,954 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:56:50,954 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:56:50,954 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1584931608] [2022-04-28 03:56:50,954 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1584931608] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 03:56:50,954 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [94630505] [2022-04-28 03:56:50,954 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:56:50,954 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:56:50,954 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 03:56:50,955 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 03:56:50,964 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-28 03:56:50,999 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:51,000 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 03:56:51,008 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:51,008 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 03:56:51,254 INFO L272 TraceCheckUtils]: 0: Hoare triple {9185#true} call ULTIMATE.init(); {9185#true} is VALID [2022-04-28 03:56:51,254 INFO L290 TraceCheckUtils]: 1: Hoare triple {9185#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {9190#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:51,255 INFO L290 TraceCheckUtils]: 2: Hoare triple {9190#(<= 200000 ~SIZE~0)} assume true; {9190#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:51,255 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9190#(<= 200000 ~SIZE~0)} {9185#true} #90#return; {9190#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:51,255 INFO L272 TraceCheckUtils]: 4: Hoare triple {9190#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {9190#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:51,256 INFO L290 TraceCheckUtils]: 5: Hoare triple {9190#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {9190#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:51,256 INFO L272 TraceCheckUtils]: 6: Hoare triple {9190#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {9190#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:51,256 INFO L290 TraceCheckUtils]: 7: Hoare triple {9190#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {9190#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:51,257 INFO L290 TraceCheckUtils]: 8: Hoare triple {9190#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {9190#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:51,257 INFO L290 TraceCheckUtils]: 9: Hoare triple {9190#(<= 200000 ~SIZE~0)} assume true; {9190#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:51,257 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {9190#(<= 200000 ~SIZE~0)} {9190#(<= 200000 ~SIZE~0)} #86#return; {9190#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:51,259 INFO L290 TraceCheckUtils]: 11: Hoare triple {9190#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {9190#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:51,259 INFO L290 TraceCheckUtils]: 12: Hoare triple {9190#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {9238#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:51,264 INFO L290 TraceCheckUtils]: 13: Hoare triple {9238#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [124] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~st~0_75 v_main_~st~0_74)) (.cse1 (= |v_main_#t~post5_92| |v_main_#t~post5_90|)) (.cse3 (= v_main_~c~0_145 v_main_~c~0_144)) (.cse2 (<= v_~last~0_71 v_main_~c~0_145))) (or (and .cse0 .cse1 (or (not (< v_main_~c~0_145 v_~SIZE~0_62)) (not .cse2)) .cse3) (and .cse0 .cse1 (= v_~last~0_71 v_~last~0_71) .cse3 (= v_~SIZE~0_62 v_~SIZE~0_62)) (and (< v_main_~c~0_144 (+ v_~SIZE~0_62 1)) (< v_main_~c~0_145 v_main_~c~0_144) .cse2 (= 0 v_main_~st~0_74)))) InVars {~SIZE~0=v_~SIZE~0_62, main_~c~0=v_main_~c~0_145, main_#t~post5=|v_main_#t~post5_92|, main_~st~0=v_main_~st~0_75, ~last~0=v_~last~0_71} OutVars{~SIZE~0=v_~SIZE~0_62, main_#t~post5=|v_main_#t~post5_90|, main_~c~0=v_main_~c~0_144, main_~st~0=v_main_~st~0_74, ~last~0=v_~last~0_71} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {9242#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:51,264 INFO L290 TraceCheckUtils]: 14: Hoare triple {9242#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [125] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {9242#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:51,265 INFO L290 TraceCheckUtils]: 15: Hoare triple {9242#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [126] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_147 v_main_~c~0_146)) (.cse1 (= |v_main_#t~post5_95| |v_main_#t~post5_91|))) (or (and .cse0 .cse1 (= v_~last~0_72 v_~last~0_72) (= v_~SIZE~0_63 v_~SIZE~0_63)) (and .cse0 .cse1 (or (not (< v_main_~c~0_147 v_~last~0_72)) (not (< v_main_~c~0_147 v_~SIZE~0_63)))) (and (< v_main_~c~0_147 v_main_~c~0_146) (< v_main_~c~0_146 (+ v_~last~0_72 1)) (< v_main_~c~0_146 (+ v_~SIZE~0_63 1))))) InVars {~SIZE~0=v_~SIZE~0_63, main_~c~0=v_main_~c~0_147, main_#t~post5=|v_main_#t~post5_95|, ~last~0=v_~last~0_72} OutVars{~SIZE~0=v_~SIZE~0_63, main_#t~post5=|v_main_#t~post5_91|, main_~c~0=v_main_~c~0_146, ~last~0=v_~last~0_72} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {9242#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:51,265 INFO L290 TraceCheckUtils]: 16: Hoare triple {9242#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [123] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {9252#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 03:56:51,266 INFO L290 TraceCheckUtils]: 17: Hoare triple {9252#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {9186#false} is VALID [2022-04-28 03:56:51,266 INFO L290 TraceCheckUtils]: 18: Hoare triple {9186#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {9186#false} is VALID [2022-04-28 03:56:51,266 INFO L290 TraceCheckUtils]: 19: Hoare triple {9186#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {9186#false} is VALID [2022-04-28 03:56:51,266 INFO L290 TraceCheckUtils]: 20: Hoare triple {9186#false} assume !(~d~0 == ~SIZE~0); {9186#false} is VALID [2022-04-28 03:56:51,266 INFO L272 TraceCheckUtils]: 21: Hoare triple {9186#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {9186#false} is VALID [2022-04-28 03:56:51,266 INFO L290 TraceCheckUtils]: 22: Hoare triple {9186#false} ~cond := #in~cond; {9186#false} is VALID [2022-04-28 03:56:51,266 INFO L290 TraceCheckUtils]: 23: Hoare triple {9186#false} assume 0 == ~cond; {9186#false} is VALID [2022-04-28 03:56:51,266 INFO L290 TraceCheckUtils]: 24: Hoare triple {9186#false} assume !false; {9186#false} is VALID [2022-04-28 03:56:51,267 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:56:51,267 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 03:56:51,574 INFO L290 TraceCheckUtils]: 24: Hoare triple {9186#false} assume !false; {9186#false} is VALID [2022-04-28 03:56:51,575 INFO L290 TraceCheckUtils]: 23: Hoare triple {9186#false} assume 0 == ~cond; {9186#false} is VALID [2022-04-28 03:56:51,575 INFO L290 TraceCheckUtils]: 22: Hoare triple {9186#false} ~cond := #in~cond; {9186#false} is VALID [2022-04-28 03:56:51,575 INFO L272 TraceCheckUtils]: 21: Hoare triple {9186#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {9186#false} is VALID [2022-04-28 03:56:51,575 INFO L290 TraceCheckUtils]: 20: Hoare triple {9186#false} assume !(~d~0 == ~SIZE~0); {9186#false} is VALID [2022-04-28 03:56:51,575 INFO L290 TraceCheckUtils]: 19: Hoare triple {9186#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {9186#false} is VALID [2022-04-28 03:56:51,575 INFO L290 TraceCheckUtils]: 18: Hoare triple {9186#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {9186#false} is VALID [2022-04-28 03:56:51,575 INFO L290 TraceCheckUtils]: 17: Hoare triple {9298#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {9186#false} is VALID [2022-04-28 03:56:51,576 INFO L290 TraceCheckUtils]: 16: Hoare triple {9302#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [123] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {9298#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 03:56:51,576 INFO L290 TraceCheckUtils]: 15: Hoare triple {9302#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [126] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_147 v_main_~c~0_146)) (.cse1 (= |v_main_#t~post5_95| |v_main_#t~post5_91|))) (or (and .cse0 .cse1 (= v_~last~0_72 v_~last~0_72) (= v_~SIZE~0_63 v_~SIZE~0_63)) (and .cse0 .cse1 (or (not (< v_main_~c~0_147 v_~last~0_72)) (not (< v_main_~c~0_147 v_~SIZE~0_63)))) (and (< v_main_~c~0_147 v_main_~c~0_146) (< v_main_~c~0_146 (+ v_~last~0_72 1)) (< v_main_~c~0_146 (+ v_~SIZE~0_63 1))))) InVars {~SIZE~0=v_~SIZE~0_63, main_~c~0=v_main_~c~0_147, main_#t~post5=|v_main_#t~post5_95|, ~last~0=v_~last~0_72} OutVars{~SIZE~0=v_~SIZE~0_63, main_#t~post5=|v_main_#t~post5_91|, main_~c~0=v_main_~c~0_146, ~last~0=v_~last~0_72} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {9302#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:56:51,577 INFO L290 TraceCheckUtils]: 14: Hoare triple {9302#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [125] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {9302#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:56:51,578 INFO L290 TraceCheckUtils]: 13: Hoare triple {9312#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [124] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~st~0_75 v_main_~st~0_74)) (.cse1 (= |v_main_#t~post5_92| |v_main_#t~post5_90|)) (.cse3 (= v_main_~c~0_145 v_main_~c~0_144)) (.cse2 (<= v_~last~0_71 v_main_~c~0_145))) (or (and .cse0 .cse1 (or (not (< v_main_~c~0_145 v_~SIZE~0_62)) (not .cse2)) .cse3) (and .cse0 .cse1 (= v_~last~0_71 v_~last~0_71) .cse3 (= v_~SIZE~0_62 v_~SIZE~0_62)) (and (< v_main_~c~0_144 (+ v_~SIZE~0_62 1)) (< v_main_~c~0_145 v_main_~c~0_144) .cse2 (= 0 v_main_~st~0_74)))) InVars {~SIZE~0=v_~SIZE~0_62, main_~c~0=v_main_~c~0_145, main_#t~post5=|v_main_#t~post5_92|, main_~st~0=v_main_~st~0_75, ~last~0=v_~last~0_71} OutVars{~SIZE~0=v_~SIZE~0_62, main_#t~post5=|v_main_#t~post5_90|, main_~c~0=v_main_~c~0_144, main_~st~0=v_main_~st~0_74, ~last~0=v_~last~0_71} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {9302#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:56:51,578 INFO L290 TraceCheckUtils]: 12: Hoare triple {9316#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {9312#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 03:56:51,578 INFO L290 TraceCheckUtils]: 11: Hoare triple {9316#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {9316#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:51,579 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {9185#true} {9316#(< 1 ~SIZE~0)} #86#return; {9316#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:51,579 INFO L290 TraceCheckUtils]: 9: Hoare triple {9185#true} assume true; {9185#true} is VALID [2022-04-28 03:56:51,579 INFO L290 TraceCheckUtils]: 8: Hoare triple {9185#true} assume !(0 == ~cond); {9185#true} is VALID [2022-04-28 03:56:51,579 INFO L290 TraceCheckUtils]: 7: Hoare triple {9185#true} ~cond := #in~cond; {9185#true} is VALID [2022-04-28 03:56:51,579 INFO L272 TraceCheckUtils]: 6: Hoare triple {9316#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {9185#true} is VALID [2022-04-28 03:56:51,579 INFO L290 TraceCheckUtils]: 5: Hoare triple {9316#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {9316#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:51,580 INFO L272 TraceCheckUtils]: 4: Hoare triple {9316#(< 1 ~SIZE~0)} call #t~ret7 := main(); {9316#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:51,580 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9316#(< 1 ~SIZE~0)} {9185#true} #90#return; {9316#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:51,580 INFO L290 TraceCheckUtils]: 2: Hoare triple {9316#(< 1 ~SIZE~0)} assume true; {9316#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:51,582 INFO L290 TraceCheckUtils]: 1: Hoare triple {9185#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {9316#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:51,582 INFO L272 TraceCheckUtils]: 0: Hoare triple {9185#true} call ULTIMATE.init(); {9185#true} is VALID [2022-04-28 03:56:51,582 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:56:51,582 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [94630505] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 03:56:51,582 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 03:56:51,582 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 03:56:51,875 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:56:51,875 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [424141954] [2022-04-28 03:56:51,875 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [424141954] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:56:51,875 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:56:51,875 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-28 03:56:51,875 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [539512257] [2022-04-28 03:56:51,875 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:56:51,875 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 2.0) internal successors, (28), 13 states have internal predecessors, (28), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 34 [2022-04-28 03:56:51,876 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:56:51,876 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 2.0) internal successors, (28), 13 states have internal predecessors, (28), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:51,903 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-28 03:56:51,903 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-28 03:56:51,903 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:56:51,904 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-28 03:56:51,904 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=131, Invalid=375, Unknown=0, NotChecked=0, Total=506 [2022-04-28 03:56:51,904 INFO L87 Difference]: Start difference. First operand 158 states and 196 transitions. Second operand has 14 states, 14 states have (on average 2.0) internal successors, (28), 13 states have internal predecessors, (28), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:53,129 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:56:53,129 INFO L93 Difference]: Finished difference Result 303 states and 378 transitions. [2022-04-28 03:56:53,129 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-28 03:56:53,129 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 2.0) internal successors, (28), 13 states have internal predecessors, (28), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 34 [2022-04-28 03:56:53,130 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:56:53,130 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 2.0) internal successors, (28), 13 states have internal predecessors, (28), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:53,131 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 84 transitions. [2022-04-28 03:56:53,131 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 2.0) internal successors, (28), 13 states have internal predecessors, (28), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:53,132 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 84 transitions. [2022-04-28 03:56:53,132 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 84 transitions. [2022-04-28 03:56:53,185 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 84 edges. 84 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:56:53,188 INFO L225 Difference]: With dead ends: 303 [2022-04-28 03:56:53,188 INFO L226 Difference]: Without dead ends: 192 [2022-04-28 03:56:53,188 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 82 GetRequests, 54 SyntacticMatches, 4 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 298 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=162, Invalid=488, Unknown=0, NotChecked=0, Total=650 [2022-04-28 03:56:53,189 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 55 mSDsluCounter, 16 mSDsCounter, 0 mSdLazyCounter, 437 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 56 SdHoareTripleChecker+Valid, 40 SdHoareTripleChecker+Invalid, 451 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 437 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 03:56:53,189 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [56 Valid, 40 Invalid, 451 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 437 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 03:56:53,189 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 192 states. [2022-04-28 03:56:53,595 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 192 to 158. [2022-04-28 03:56:53,595 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:56:53,595 INFO L82 GeneralOperation]: Start isEquivalent. First operand 192 states. Second operand has 158 states, 143 states have (on average 1.2517482517482517) internal successors, (179), 146 states have internal predecessors, (179), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:56:53,595 INFO L74 IsIncluded]: Start isIncluded. First operand 192 states. Second operand has 158 states, 143 states have (on average 1.2517482517482517) internal successors, (179), 146 states have internal predecessors, (179), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:56:53,595 INFO L87 Difference]: Start difference. First operand 192 states. Second operand has 158 states, 143 states have (on average 1.2517482517482517) internal successors, (179), 146 states have internal predecessors, (179), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:56:53,598 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:56:53,598 INFO L93 Difference]: Finished difference Result 192 states and 234 transitions. [2022-04-28 03:56:53,598 INFO L276 IsEmpty]: Start isEmpty. Operand 192 states and 234 transitions. [2022-04-28 03:56:53,598 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:56:53,599 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:56:53,599 INFO L74 IsIncluded]: Start isIncluded. First operand has 158 states, 143 states have (on average 1.2517482517482517) internal successors, (179), 146 states have internal predecessors, (179), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 192 states. [2022-04-28 03:56:53,599 INFO L87 Difference]: Start difference. First operand has 158 states, 143 states have (on average 1.2517482517482517) internal successors, (179), 146 states have internal predecessors, (179), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 192 states. [2022-04-28 03:56:53,601 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:56:53,601 INFO L93 Difference]: Finished difference Result 192 states and 234 transitions. [2022-04-28 03:56:53,601 INFO L276 IsEmpty]: Start isEmpty. Operand 192 states and 234 transitions. [2022-04-28 03:56:53,602 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:56:53,602 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:56:53,602 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:56:53,602 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:56:53,602 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 158 states, 143 states have (on average 1.2517482517482517) internal successors, (179), 146 states have internal predecessors, (179), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:56:53,604 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 158 states to 158 states and 196 transitions. [2022-04-28 03:56:53,604 INFO L78 Accepts]: Start accepts. Automaton has 158 states and 196 transitions. Word has length 34 [2022-04-28 03:56:53,604 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:56:53,604 INFO L495 AbstractCegarLoop]: Abstraction has 158 states and 196 transitions. [2022-04-28 03:56:53,604 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 2.0) internal successors, (28), 13 states have internal predecessors, (28), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:53,604 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 158 states and 196 transitions. [2022-04-28 03:56:53,827 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 196 edges. 196 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:56:53,828 INFO L276 IsEmpty]: Start isEmpty. Operand 158 states and 196 transitions. [2022-04-28 03:56:53,828 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-28 03:56:53,828 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:56:53,831 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:56:53,847 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-28 03:56:54,043 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable13 [2022-04-28 03:56:54,043 INFO L420 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:56:54,044 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:56:54,044 INFO L85 PathProgramCache]: Analyzing trace with hash 213381724, now seen corresponding path program 6 times [2022-04-28 03:56:54,044 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:56:54,044 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [652966753] [2022-04-28 03:56:54,248 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:56:58,361 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:56:58,459 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:56:58,460 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:56:58,463 INFO L85 PathProgramCache]: Analyzing trace with hash -2025681471, now seen corresponding path program 1 times [2022-04-28 03:56:58,463 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:56:58,463 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [481758366] [2022-04-28 03:56:58,463 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:56:58,463 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:56:58,473 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:58,523 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:56:58,525 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:58,528 INFO L290 TraceCheckUtils]: 0: Hoare triple {10690#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {10682#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:58,529 INFO L290 TraceCheckUtils]: 1: Hoare triple {10682#(<= 200000 ~SIZE~0)} assume true; {10682#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:58,529 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {10682#(<= 200000 ~SIZE~0)} {10677#true} #90#return; {10682#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:58,529 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:56:58,530 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:58,532 INFO L290 TraceCheckUtils]: 0: Hoare triple {10677#true} ~cond := #in~cond; {10677#true} is VALID [2022-04-28 03:56:58,532 INFO L290 TraceCheckUtils]: 1: Hoare triple {10677#true} assume !(0 == ~cond); {10677#true} is VALID [2022-04-28 03:56:58,532 INFO L290 TraceCheckUtils]: 2: Hoare triple {10677#true} assume true; {10677#true} is VALID [2022-04-28 03:56:58,533 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10677#true} {10682#(<= 200000 ~SIZE~0)} #86#return; {10682#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:58,533 INFO L272 TraceCheckUtils]: 0: Hoare triple {10677#true} call ULTIMATE.init(); {10690#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:56:58,534 INFO L290 TraceCheckUtils]: 1: Hoare triple {10690#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {10682#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:58,534 INFO L290 TraceCheckUtils]: 2: Hoare triple {10682#(<= 200000 ~SIZE~0)} assume true; {10682#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:58,534 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10682#(<= 200000 ~SIZE~0)} {10677#true} #90#return; {10682#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:58,535 INFO L272 TraceCheckUtils]: 4: Hoare triple {10682#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {10682#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:58,535 INFO L290 TraceCheckUtils]: 5: Hoare triple {10682#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {10682#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:58,535 INFO L272 TraceCheckUtils]: 6: Hoare triple {10682#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {10677#true} is VALID [2022-04-28 03:56:58,535 INFO L290 TraceCheckUtils]: 7: Hoare triple {10677#true} ~cond := #in~cond; {10677#true} is VALID [2022-04-28 03:56:58,535 INFO L290 TraceCheckUtils]: 8: Hoare triple {10677#true} assume !(0 == ~cond); {10677#true} is VALID [2022-04-28 03:56:58,536 INFO L290 TraceCheckUtils]: 9: Hoare triple {10677#true} assume true; {10677#true} is VALID [2022-04-28 03:56:58,536 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10677#true} {10682#(<= 200000 ~SIZE~0)} #86#return; {10682#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:58,536 INFO L290 TraceCheckUtils]: 11: Hoare triple {10682#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {10682#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:58,537 INFO L290 TraceCheckUtils]: 12: Hoare triple {10682#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {10687#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:58,537 INFO L290 TraceCheckUtils]: 13: Hoare triple {10687#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [128] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_81 v_main_~c~0_166)) (.cse1 (= |v_main_#t~post5_105| |v_main_#t~post5_103|)) (.cse2 (= v_main_~c~0_166 v_main_~c~0_165)) (.cse3 (= v_main_~st~0_86 v_main_~st~0_85))) (or (and (< v_main_~c~0_166 v_main_~c~0_165) (= 0 v_main_~st~0_85) (< v_main_~c~0_165 (+ v_~SIZE~0_71 1)) .cse0) (and (= v_~SIZE~0_71 v_~SIZE~0_71) (= v_~last~0_81 v_~last~0_81) .cse1 .cse2 .cse3) (and (or (not .cse0) (not (< v_main_~c~0_166 v_~SIZE~0_71))) .cse1 .cse2 .cse3))) InVars {~SIZE~0=v_~SIZE~0_71, main_~c~0=v_main_~c~0_166, main_#t~post5=|v_main_#t~post5_105|, main_~st~0=v_main_~st~0_86, ~last~0=v_~last~0_81} OutVars{~SIZE~0=v_~SIZE~0_71, main_#t~post5=|v_main_#t~post5_103|, main_~c~0=v_main_~c~0_165, main_~st~0=v_main_~st~0_85, ~last~0=v_~last~0_81} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {10688#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:56:58,538 INFO L290 TraceCheckUtils]: 14: Hoare triple {10688#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [129] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10688#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:56:58,538 INFO L290 TraceCheckUtils]: 15: Hoare triple {10688#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [130] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_108| |v_main_#t~post5_104|)) (.cse1 (= v_main_~c~0_168 v_main_~c~0_167))) (or (and .cse0 (or (not (< v_main_~c~0_168 v_~SIZE~0_72)) (not (< v_main_~c~0_168 v_~last~0_82))) .cse1) (and (< v_main_~c~0_168 v_main_~c~0_167) (< v_main_~c~0_167 (+ v_~last~0_82 1)) (< v_main_~c~0_167 (+ v_~SIZE~0_72 1))) (and (= v_~SIZE~0_72 v_~SIZE~0_72) (= v_~last~0_82 v_~last~0_82) .cse0 .cse1))) InVars {~SIZE~0=v_~SIZE~0_72, main_~c~0=v_main_~c~0_168, main_#t~post5=|v_main_#t~post5_108|, ~last~0=v_~last~0_82} OutVars{~SIZE~0=v_~SIZE~0_72, main_#t~post5=|v_main_#t~post5_104|, main_~c~0=v_main_~c~0_167, ~last~0=v_~last~0_82} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {10688#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:56:58,539 INFO L290 TraceCheckUtils]: 16: Hoare triple {10688#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [127] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {10689#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 03:56:58,539 INFO L290 TraceCheckUtils]: 17: Hoare triple {10689#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {10678#false} is VALID [2022-04-28 03:56:58,539 INFO L290 TraceCheckUtils]: 18: Hoare triple {10678#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {10678#false} is VALID [2022-04-28 03:56:58,539 INFO L290 TraceCheckUtils]: 19: Hoare triple {10678#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {10678#false} is VALID [2022-04-28 03:56:58,539 INFO L290 TraceCheckUtils]: 20: Hoare triple {10678#false} assume !(~d~0 == ~SIZE~0); {10678#false} is VALID [2022-04-28 03:56:58,539 INFO L272 TraceCheckUtils]: 21: Hoare triple {10678#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {10678#false} is VALID [2022-04-28 03:56:58,540 INFO L290 TraceCheckUtils]: 22: Hoare triple {10678#false} ~cond := #in~cond; {10678#false} is VALID [2022-04-28 03:56:58,540 INFO L290 TraceCheckUtils]: 23: Hoare triple {10678#false} assume 0 == ~cond; {10678#false} is VALID [2022-04-28 03:56:58,540 INFO L290 TraceCheckUtils]: 24: Hoare triple {10678#false} assume !false; {10678#false} is VALID [2022-04-28 03:56:58,540 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:56:58,540 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:56:58,540 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [481758366] [2022-04-28 03:56:58,540 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [481758366] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 03:56:58,540 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [289131909] [2022-04-28 03:56:58,540 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:56:58,540 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:56:58,541 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 03:56:58,541 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 03:56:58,542 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-28 03:56:58,572 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:58,573 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 03:56:58,580 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:56:58,581 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 03:56:58,834 INFO L272 TraceCheckUtils]: 0: Hoare triple {10677#true} call ULTIMATE.init(); {10677#true} is VALID [2022-04-28 03:56:58,834 INFO L290 TraceCheckUtils]: 1: Hoare triple {10677#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {10682#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:58,834 INFO L290 TraceCheckUtils]: 2: Hoare triple {10682#(<= 200000 ~SIZE~0)} assume true; {10682#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:58,835 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10682#(<= 200000 ~SIZE~0)} {10677#true} #90#return; {10682#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:58,835 INFO L272 TraceCheckUtils]: 4: Hoare triple {10682#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {10682#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:58,835 INFO L290 TraceCheckUtils]: 5: Hoare triple {10682#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {10682#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:58,836 INFO L272 TraceCheckUtils]: 6: Hoare triple {10682#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {10682#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:58,836 INFO L290 TraceCheckUtils]: 7: Hoare triple {10682#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {10682#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:58,836 INFO L290 TraceCheckUtils]: 8: Hoare triple {10682#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {10682#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:58,837 INFO L290 TraceCheckUtils]: 9: Hoare triple {10682#(<= 200000 ~SIZE~0)} assume true; {10682#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:58,837 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10682#(<= 200000 ~SIZE~0)} {10682#(<= 200000 ~SIZE~0)} #86#return; {10682#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:58,837 INFO L290 TraceCheckUtils]: 11: Hoare triple {10682#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {10682#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:56:58,838 INFO L290 TraceCheckUtils]: 12: Hoare triple {10682#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {10730#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:58,838 INFO L290 TraceCheckUtils]: 13: Hoare triple {10730#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [128] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_81 v_main_~c~0_166)) (.cse1 (= |v_main_#t~post5_105| |v_main_#t~post5_103|)) (.cse2 (= v_main_~c~0_166 v_main_~c~0_165)) (.cse3 (= v_main_~st~0_86 v_main_~st~0_85))) (or (and (< v_main_~c~0_166 v_main_~c~0_165) (= 0 v_main_~st~0_85) (< v_main_~c~0_165 (+ v_~SIZE~0_71 1)) .cse0) (and (= v_~SIZE~0_71 v_~SIZE~0_71) (= v_~last~0_81 v_~last~0_81) .cse1 .cse2 .cse3) (and (or (not .cse0) (not (< v_main_~c~0_166 v_~SIZE~0_71))) .cse1 .cse2 .cse3))) InVars {~SIZE~0=v_~SIZE~0_71, main_~c~0=v_main_~c~0_166, main_#t~post5=|v_main_#t~post5_105|, main_~st~0=v_main_~st~0_86, ~last~0=v_~last~0_81} OutVars{~SIZE~0=v_~SIZE~0_71, main_#t~post5=|v_main_#t~post5_103|, main_~c~0=v_main_~c~0_165, main_~st~0=v_main_~st~0_85, ~last~0=v_~last~0_81} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {10734#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:58,839 INFO L290 TraceCheckUtils]: 14: Hoare triple {10734#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [129] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10734#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:58,839 INFO L290 TraceCheckUtils]: 15: Hoare triple {10734#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [130] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_108| |v_main_#t~post5_104|)) (.cse1 (= v_main_~c~0_168 v_main_~c~0_167))) (or (and .cse0 (or (not (< v_main_~c~0_168 v_~SIZE~0_72)) (not (< v_main_~c~0_168 v_~last~0_82))) .cse1) (and (< v_main_~c~0_168 v_main_~c~0_167) (< v_main_~c~0_167 (+ v_~last~0_82 1)) (< v_main_~c~0_167 (+ v_~SIZE~0_72 1))) (and (= v_~SIZE~0_72 v_~SIZE~0_72) (= v_~last~0_82 v_~last~0_82) .cse0 .cse1))) InVars {~SIZE~0=v_~SIZE~0_72, main_~c~0=v_main_~c~0_168, main_#t~post5=|v_main_#t~post5_108|, ~last~0=v_~last~0_82} OutVars{~SIZE~0=v_~SIZE~0_72, main_#t~post5=|v_main_#t~post5_104|, main_~c~0=v_main_~c~0_167, ~last~0=v_~last~0_82} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {10734#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:56:58,840 INFO L290 TraceCheckUtils]: 16: Hoare triple {10734#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [127] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {10744#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 03:56:58,840 INFO L290 TraceCheckUtils]: 17: Hoare triple {10744#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {10678#false} is VALID [2022-04-28 03:56:58,840 INFO L290 TraceCheckUtils]: 18: Hoare triple {10678#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {10678#false} is VALID [2022-04-28 03:56:58,840 INFO L290 TraceCheckUtils]: 19: Hoare triple {10678#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {10678#false} is VALID [2022-04-28 03:56:58,841 INFO L290 TraceCheckUtils]: 20: Hoare triple {10678#false} assume !(~d~0 == ~SIZE~0); {10678#false} is VALID [2022-04-28 03:56:58,841 INFO L272 TraceCheckUtils]: 21: Hoare triple {10678#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {10678#false} is VALID [2022-04-28 03:56:58,841 INFO L290 TraceCheckUtils]: 22: Hoare triple {10678#false} ~cond := #in~cond; {10678#false} is VALID [2022-04-28 03:56:58,841 INFO L290 TraceCheckUtils]: 23: Hoare triple {10678#false} assume 0 == ~cond; {10678#false} is VALID [2022-04-28 03:56:58,841 INFO L290 TraceCheckUtils]: 24: Hoare triple {10678#false} assume !false; {10678#false} is VALID [2022-04-28 03:56:58,841 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:56:58,841 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 03:56:59,152 INFO L290 TraceCheckUtils]: 24: Hoare triple {10678#false} assume !false; {10678#false} is VALID [2022-04-28 03:56:59,152 INFO L290 TraceCheckUtils]: 23: Hoare triple {10678#false} assume 0 == ~cond; {10678#false} is VALID [2022-04-28 03:56:59,152 INFO L290 TraceCheckUtils]: 22: Hoare triple {10678#false} ~cond := #in~cond; {10678#false} is VALID [2022-04-28 03:56:59,152 INFO L272 TraceCheckUtils]: 21: Hoare triple {10678#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {10678#false} is VALID [2022-04-28 03:56:59,152 INFO L290 TraceCheckUtils]: 20: Hoare triple {10678#false} assume !(~d~0 == ~SIZE~0); {10678#false} is VALID [2022-04-28 03:56:59,152 INFO L290 TraceCheckUtils]: 19: Hoare triple {10678#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {10678#false} is VALID [2022-04-28 03:56:59,152 INFO L290 TraceCheckUtils]: 18: Hoare triple {10678#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {10678#false} is VALID [2022-04-28 03:56:59,153 INFO L290 TraceCheckUtils]: 17: Hoare triple {10790#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {10678#false} is VALID [2022-04-28 03:56:59,153 INFO L290 TraceCheckUtils]: 16: Hoare triple {10794#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [127] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {10790#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 03:56:59,154 INFO L290 TraceCheckUtils]: 15: Hoare triple {10794#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [130] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_108| |v_main_#t~post5_104|)) (.cse1 (= v_main_~c~0_168 v_main_~c~0_167))) (or (and .cse0 (or (not (< v_main_~c~0_168 v_~SIZE~0_72)) (not (< v_main_~c~0_168 v_~last~0_82))) .cse1) (and (< v_main_~c~0_168 v_main_~c~0_167) (< v_main_~c~0_167 (+ v_~last~0_82 1)) (< v_main_~c~0_167 (+ v_~SIZE~0_72 1))) (and (= v_~SIZE~0_72 v_~SIZE~0_72) (= v_~last~0_82 v_~last~0_82) .cse0 .cse1))) InVars {~SIZE~0=v_~SIZE~0_72, main_~c~0=v_main_~c~0_168, main_#t~post5=|v_main_#t~post5_108|, ~last~0=v_~last~0_82} OutVars{~SIZE~0=v_~SIZE~0_72, main_#t~post5=|v_main_#t~post5_104|, main_~c~0=v_main_~c~0_167, ~last~0=v_~last~0_82} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {10794#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:56:59,154 INFO L290 TraceCheckUtils]: 14: Hoare triple {10794#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [129] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {10794#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:56:59,155 INFO L290 TraceCheckUtils]: 13: Hoare triple {10804#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [128] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_81 v_main_~c~0_166)) (.cse1 (= |v_main_#t~post5_105| |v_main_#t~post5_103|)) (.cse2 (= v_main_~c~0_166 v_main_~c~0_165)) (.cse3 (= v_main_~st~0_86 v_main_~st~0_85))) (or (and (< v_main_~c~0_166 v_main_~c~0_165) (= 0 v_main_~st~0_85) (< v_main_~c~0_165 (+ v_~SIZE~0_71 1)) .cse0) (and (= v_~SIZE~0_71 v_~SIZE~0_71) (= v_~last~0_81 v_~last~0_81) .cse1 .cse2 .cse3) (and (or (not .cse0) (not (< v_main_~c~0_166 v_~SIZE~0_71))) .cse1 .cse2 .cse3))) InVars {~SIZE~0=v_~SIZE~0_71, main_~c~0=v_main_~c~0_166, main_#t~post5=|v_main_#t~post5_105|, main_~st~0=v_main_~st~0_86, ~last~0=v_~last~0_81} OutVars{~SIZE~0=v_~SIZE~0_71, main_#t~post5=|v_main_#t~post5_103|, main_~c~0=v_main_~c~0_165, main_~st~0=v_main_~st~0_85, ~last~0=v_~last~0_81} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {10794#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:56:59,155 INFO L290 TraceCheckUtils]: 12: Hoare triple {10808#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {10804#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 03:56:59,155 INFO L290 TraceCheckUtils]: 11: Hoare triple {10808#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {10808#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:59,156 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10677#true} {10808#(< 1 ~SIZE~0)} #86#return; {10808#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:59,156 INFO L290 TraceCheckUtils]: 9: Hoare triple {10677#true} assume true; {10677#true} is VALID [2022-04-28 03:56:59,156 INFO L290 TraceCheckUtils]: 8: Hoare triple {10677#true} assume !(0 == ~cond); {10677#true} is VALID [2022-04-28 03:56:59,156 INFO L290 TraceCheckUtils]: 7: Hoare triple {10677#true} ~cond := #in~cond; {10677#true} is VALID [2022-04-28 03:56:59,156 INFO L272 TraceCheckUtils]: 6: Hoare triple {10808#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {10677#true} is VALID [2022-04-28 03:56:59,156 INFO L290 TraceCheckUtils]: 5: Hoare triple {10808#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {10808#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:59,157 INFO L272 TraceCheckUtils]: 4: Hoare triple {10808#(< 1 ~SIZE~0)} call #t~ret7 := main(); {10808#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:59,157 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10808#(< 1 ~SIZE~0)} {10677#true} #90#return; {10808#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:59,157 INFO L290 TraceCheckUtils]: 2: Hoare triple {10808#(< 1 ~SIZE~0)} assume true; {10808#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:59,158 INFO L290 TraceCheckUtils]: 1: Hoare triple {10677#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {10808#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:56:59,158 INFO L272 TraceCheckUtils]: 0: Hoare triple {10677#true} call ULTIMATE.init(); {10677#true} is VALID [2022-04-28 03:56:59,158 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:56:59,158 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [289131909] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 03:56:59,158 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 03:56:59,158 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 03:56:59,429 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:56:59,430 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [652966753] [2022-04-28 03:56:59,430 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [652966753] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:56:59,430 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:56:59,430 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-28 03:56:59,430 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1942084152] [2022-04-28 03:56:59,430 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:56:59,430 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 1.8666666666666667) internal successors, (28), 14 states have internal predecessors, (28), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 34 [2022-04-28 03:56:59,430 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:56:59,430 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 1.8666666666666667) internal successors, (28), 14 states have internal predecessors, (28), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:56:59,484 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-28 03:56:59,484 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-28 03:56:59,485 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:56:59,485 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-28 03:56:59,485 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=146, Invalid=406, Unknown=0, NotChecked=0, Total=552 [2022-04-28 03:56:59,485 INFO L87 Difference]: Start difference. First operand 158 states and 196 transitions. Second operand has 15 states, 15 states have (on average 1.8666666666666667) internal successors, (28), 14 states have internal predecessors, (28), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:00,795 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:57:00,795 INFO L93 Difference]: Finished difference Result 317 states and 402 transitions. [2022-04-28 03:57:00,795 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-28 03:57:00,796 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 1.8666666666666667) internal successors, (28), 14 states have internal predecessors, (28), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 34 [2022-04-28 03:57:00,796 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:57:00,796 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 1.8666666666666667) internal successors, (28), 14 states have internal predecessors, (28), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:00,797 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 86 transitions. [2022-04-28 03:57:00,797 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 1.8666666666666667) internal successors, (28), 14 states have internal predecessors, (28), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:00,798 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 86 transitions. [2022-04-28 03:57:00,798 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 86 transitions. [2022-04-28 03:57:00,872 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 86 edges. 86 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:57:00,875 INFO L225 Difference]: With dead ends: 317 [2022-04-28 03:57:00,875 INFO L226 Difference]: Without dead ends: 195 [2022-04-28 03:57:00,877 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 82 GetRequests, 54 SyntacticMatches, 3 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 295 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=179, Invalid=523, Unknown=0, NotChecked=0, Total=702 [2022-04-28 03:57:00,879 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 57 mSDsluCounter, 16 mSDsCounter, 0 mSdLazyCounter, 532 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 58 SdHoareTripleChecker+Valid, 40 SdHoareTripleChecker+Invalid, 548 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 532 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 03:57:00,879 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [58 Valid, 40 Invalid, 548 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 532 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 03:57:00,879 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 195 states. [2022-04-28 03:57:01,394 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 195 to 170. [2022-04-28 03:57:01,394 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:57:01,395 INFO L82 GeneralOperation]: Start isEquivalent. First operand 195 states. Second operand has 170 states, 155 states have (on average 1.2580645161290323) internal successors, (195), 158 states have internal predecessors, (195), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:57:01,395 INFO L74 IsIncluded]: Start isIncluded. First operand 195 states. Second operand has 170 states, 155 states have (on average 1.2580645161290323) internal successors, (195), 158 states have internal predecessors, (195), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:57:01,395 INFO L87 Difference]: Start difference. First operand 195 states. Second operand has 170 states, 155 states have (on average 1.2580645161290323) internal successors, (195), 158 states have internal predecessors, (195), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:57:01,398 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:57:01,398 INFO L93 Difference]: Finished difference Result 195 states and 241 transitions. [2022-04-28 03:57:01,398 INFO L276 IsEmpty]: Start isEmpty. Operand 195 states and 241 transitions. [2022-04-28 03:57:01,398 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:57:01,398 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:57:01,399 INFO L74 IsIncluded]: Start isIncluded. First operand has 170 states, 155 states have (on average 1.2580645161290323) internal successors, (195), 158 states have internal predecessors, (195), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 195 states. [2022-04-28 03:57:01,399 INFO L87 Difference]: Start difference. First operand has 170 states, 155 states have (on average 1.2580645161290323) internal successors, (195), 158 states have internal predecessors, (195), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 195 states. [2022-04-28 03:57:01,402 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:57:01,402 INFO L93 Difference]: Finished difference Result 195 states and 241 transitions. [2022-04-28 03:57:01,402 INFO L276 IsEmpty]: Start isEmpty. Operand 195 states and 241 transitions. [2022-04-28 03:57:01,402 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:57:01,402 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:57:01,402 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:57:01,402 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:57:01,402 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 170 states, 155 states have (on average 1.2580645161290323) internal successors, (195), 158 states have internal predecessors, (195), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:57:01,404 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 170 states to 170 states and 212 transitions. [2022-04-28 03:57:01,405 INFO L78 Accepts]: Start accepts. Automaton has 170 states and 212 transitions. Word has length 34 [2022-04-28 03:57:01,405 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:57:01,405 INFO L495 AbstractCegarLoop]: Abstraction has 170 states and 212 transitions. [2022-04-28 03:57:01,405 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 1.8666666666666667) internal successors, (28), 14 states have internal predecessors, (28), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:01,405 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 170 states and 212 transitions. [2022-04-28 03:57:01,662 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 212 edges. 212 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:57:01,663 INFO L276 IsEmpty]: Start isEmpty. Operand 170 states and 212 transitions. [2022-04-28 03:57:01,663 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-28 03:57:01,663 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:57:01,663 INFO L195 NwaCegarLoop]: trace histogram [5, 5, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:57:01,697 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-28 03:57:01,863 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable14 [2022-04-28 03:57:01,864 INFO L420 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:57:01,864 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:57:01,864 INFO L85 PathProgramCache]: Analyzing trace with hash -802454433, now seen corresponding path program 7 times [2022-04-28 03:57:01,864 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:57:01,864 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1097531484] [2022-04-28 03:57:05,988 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:57:06,101 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:57:06,301 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:57:06,302 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:57:06,305 INFO L85 PathProgramCache]: Analyzing trace with hash 466841281, now seen corresponding path program 1 times [2022-04-28 03:57:06,305 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:57:06,305 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [869692266] [2022-04-28 03:57:06,305 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:57:06,306 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:57:06,313 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:06,361 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:57:06,362 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:06,367 INFO L290 TraceCheckUtils]: 0: Hoare triple {12241#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {12233#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:06,367 INFO L290 TraceCheckUtils]: 1: Hoare triple {12233#(<= 200000 ~SIZE~0)} assume true; {12233#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:06,368 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {12233#(<= 200000 ~SIZE~0)} {12228#true} #90#return; {12233#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:06,368 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:57:06,368 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:06,370 INFO L290 TraceCheckUtils]: 0: Hoare triple {12228#true} ~cond := #in~cond; {12228#true} is VALID [2022-04-28 03:57:06,370 INFO L290 TraceCheckUtils]: 1: Hoare triple {12228#true} assume !(0 == ~cond); {12228#true} is VALID [2022-04-28 03:57:06,370 INFO L290 TraceCheckUtils]: 2: Hoare triple {12228#true} assume true; {12228#true} is VALID [2022-04-28 03:57:06,371 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12228#true} {12233#(<= 200000 ~SIZE~0)} #86#return; {12233#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:06,371 INFO L272 TraceCheckUtils]: 0: Hoare triple {12228#true} call ULTIMATE.init(); {12241#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:57:06,372 INFO L290 TraceCheckUtils]: 1: Hoare triple {12241#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {12233#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:06,372 INFO L290 TraceCheckUtils]: 2: Hoare triple {12233#(<= 200000 ~SIZE~0)} assume true; {12233#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:06,373 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12233#(<= 200000 ~SIZE~0)} {12228#true} #90#return; {12233#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:06,373 INFO L272 TraceCheckUtils]: 4: Hoare triple {12233#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {12233#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:06,373 INFO L290 TraceCheckUtils]: 5: Hoare triple {12233#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {12233#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:06,373 INFO L272 TraceCheckUtils]: 6: Hoare triple {12233#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {12228#true} is VALID [2022-04-28 03:57:06,373 INFO L290 TraceCheckUtils]: 7: Hoare triple {12228#true} ~cond := #in~cond; {12228#true} is VALID [2022-04-28 03:57:06,373 INFO L290 TraceCheckUtils]: 8: Hoare triple {12228#true} assume !(0 == ~cond); {12228#true} is VALID [2022-04-28 03:57:06,373 INFO L290 TraceCheckUtils]: 9: Hoare triple {12228#true} assume true; {12228#true} is VALID [2022-04-28 03:57:06,374 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12228#true} {12233#(<= 200000 ~SIZE~0)} #86#return; {12233#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:06,374 INFO L290 TraceCheckUtils]: 11: Hoare triple {12233#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {12233#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:06,374 INFO L290 TraceCheckUtils]: 12: Hoare triple {12233#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {12238#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:06,375 INFO L290 TraceCheckUtils]: 13: Hoare triple {12238#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [132] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_91 v_main_~c~0_187)) (.cse1 (= v_main_~c~0_187 v_main_~c~0_186)) (.cse2 (= v_main_~st~0_96 v_main_~st~0_95)) (.cse3 (= |v_main_#t~post5_118| |v_main_#t~post5_116|))) (or (and (< v_main_~c~0_187 v_main_~c~0_186) .cse0 (= 0 v_main_~st~0_95) (< v_main_~c~0_186 (+ v_~SIZE~0_80 1))) (and (or (not (< v_main_~c~0_187 v_~SIZE~0_80)) (not .cse0)) .cse1 .cse2 .cse3) (and .cse1 (= v_~last~0_91 v_~last~0_91) .cse2 (= v_~SIZE~0_80 v_~SIZE~0_80) .cse3))) InVars {~SIZE~0=v_~SIZE~0_80, main_~c~0=v_main_~c~0_187, main_#t~post5=|v_main_#t~post5_118|, main_~st~0=v_main_~st~0_96, ~last~0=v_~last~0_91} OutVars{~SIZE~0=v_~SIZE~0_80, main_#t~post5=|v_main_#t~post5_116|, main_~c~0=v_main_~c~0_186, main_~st~0=v_main_~st~0_95, ~last~0=v_~last~0_91} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {12239#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:57:06,375 INFO L290 TraceCheckUtils]: 14: Hoare triple {12239#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [133] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12239#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:57:06,376 INFO L290 TraceCheckUtils]: 15: Hoare triple {12239#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [134] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_189 v_main_~c~0_188))) (or (and (= v_~SIZE~0_81 v_~SIZE~0_81) (= v_~last~0_92 v_~last~0_92) .cse0 (= |v_main_#t~post5_121| |v_main_#t~post5_117|)) (and (or (not (< v_main_~c~0_189 v_~SIZE~0_81)) (not (< v_main_~c~0_189 v_~last~0_92))) (= |v_main_#t~post5_117| |v_main_#t~post5_121|) .cse0) (and (< v_main_~c~0_188 (+ v_~last~0_92 1)) (< v_main_~c~0_189 v_main_~c~0_188) (< v_main_~c~0_188 (+ v_~SIZE~0_81 1))))) InVars {~SIZE~0=v_~SIZE~0_81, main_~c~0=v_main_~c~0_189, main_#t~post5=|v_main_#t~post5_121|, ~last~0=v_~last~0_92} OutVars{~SIZE~0=v_~SIZE~0_81, main_#t~post5=|v_main_#t~post5_117|, main_~c~0=v_main_~c~0_188, ~last~0=v_~last~0_92} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {12239#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:57:06,376 INFO L290 TraceCheckUtils]: 16: Hoare triple {12239#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [131] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {12240#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 03:57:06,377 INFO L290 TraceCheckUtils]: 17: Hoare triple {12240#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {12229#false} is VALID [2022-04-28 03:57:06,377 INFO L290 TraceCheckUtils]: 18: Hoare triple {12229#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {12229#false} is VALID [2022-04-28 03:57:06,377 INFO L290 TraceCheckUtils]: 19: Hoare triple {12229#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {12229#false} is VALID [2022-04-28 03:57:06,377 INFO L290 TraceCheckUtils]: 20: Hoare triple {12229#false} assume !(~d~0 == ~SIZE~0); {12229#false} is VALID [2022-04-28 03:57:06,377 INFO L272 TraceCheckUtils]: 21: Hoare triple {12229#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {12229#false} is VALID [2022-04-28 03:57:06,377 INFO L290 TraceCheckUtils]: 22: Hoare triple {12229#false} ~cond := #in~cond; {12229#false} is VALID [2022-04-28 03:57:06,377 INFO L290 TraceCheckUtils]: 23: Hoare triple {12229#false} assume 0 == ~cond; {12229#false} is VALID [2022-04-28 03:57:06,377 INFO L290 TraceCheckUtils]: 24: Hoare triple {12229#false} assume !false; {12229#false} is VALID [2022-04-28 03:57:06,377 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:57:06,377 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:57:06,378 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [869692266] [2022-04-28 03:57:06,378 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [869692266] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 03:57:06,378 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [735502204] [2022-04-28 03:57:06,378 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:57:06,378 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:57:06,378 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 03:57:06,379 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 03:57:06,379 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-28 03:57:06,415 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:06,415 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 03:57:06,422 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:06,422 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 03:57:06,650 INFO L272 TraceCheckUtils]: 0: Hoare triple {12228#true} call ULTIMATE.init(); {12228#true} is VALID [2022-04-28 03:57:06,651 INFO L290 TraceCheckUtils]: 1: Hoare triple {12228#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {12233#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:06,651 INFO L290 TraceCheckUtils]: 2: Hoare triple {12233#(<= 200000 ~SIZE~0)} assume true; {12233#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:06,651 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12233#(<= 200000 ~SIZE~0)} {12228#true} #90#return; {12233#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:06,652 INFO L272 TraceCheckUtils]: 4: Hoare triple {12233#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {12233#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:06,652 INFO L290 TraceCheckUtils]: 5: Hoare triple {12233#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {12233#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:06,652 INFO L272 TraceCheckUtils]: 6: Hoare triple {12233#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {12233#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:06,653 INFO L290 TraceCheckUtils]: 7: Hoare triple {12233#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {12233#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:06,653 INFO L290 TraceCheckUtils]: 8: Hoare triple {12233#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {12233#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:06,653 INFO L290 TraceCheckUtils]: 9: Hoare triple {12233#(<= 200000 ~SIZE~0)} assume true; {12233#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:06,654 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12233#(<= 200000 ~SIZE~0)} {12233#(<= 200000 ~SIZE~0)} #86#return; {12233#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:06,654 INFO L290 TraceCheckUtils]: 11: Hoare triple {12233#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {12233#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:06,654 INFO L290 TraceCheckUtils]: 12: Hoare triple {12233#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {12281#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:06,655 INFO L290 TraceCheckUtils]: 13: Hoare triple {12281#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [132] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_91 v_main_~c~0_187)) (.cse1 (= v_main_~c~0_187 v_main_~c~0_186)) (.cse2 (= v_main_~st~0_96 v_main_~st~0_95)) (.cse3 (= |v_main_#t~post5_118| |v_main_#t~post5_116|))) (or (and (< v_main_~c~0_187 v_main_~c~0_186) .cse0 (= 0 v_main_~st~0_95) (< v_main_~c~0_186 (+ v_~SIZE~0_80 1))) (and (or (not (< v_main_~c~0_187 v_~SIZE~0_80)) (not .cse0)) .cse1 .cse2 .cse3) (and .cse1 (= v_~last~0_91 v_~last~0_91) .cse2 (= v_~SIZE~0_80 v_~SIZE~0_80) .cse3))) InVars {~SIZE~0=v_~SIZE~0_80, main_~c~0=v_main_~c~0_187, main_#t~post5=|v_main_#t~post5_118|, main_~st~0=v_main_~st~0_96, ~last~0=v_~last~0_91} OutVars{~SIZE~0=v_~SIZE~0_80, main_#t~post5=|v_main_#t~post5_116|, main_~c~0=v_main_~c~0_186, main_~st~0=v_main_~st~0_95, ~last~0=v_~last~0_91} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {12285#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:06,655 INFO L290 TraceCheckUtils]: 14: Hoare triple {12285#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [133] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12285#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:06,656 INFO L290 TraceCheckUtils]: 15: Hoare triple {12285#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [134] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_189 v_main_~c~0_188))) (or (and (= v_~SIZE~0_81 v_~SIZE~0_81) (= v_~last~0_92 v_~last~0_92) .cse0 (= |v_main_#t~post5_121| |v_main_#t~post5_117|)) (and (or (not (< v_main_~c~0_189 v_~SIZE~0_81)) (not (< v_main_~c~0_189 v_~last~0_92))) (= |v_main_#t~post5_117| |v_main_#t~post5_121|) .cse0) (and (< v_main_~c~0_188 (+ v_~last~0_92 1)) (< v_main_~c~0_189 v_main_~c~0_188) (< v_main_~c~0_188 (+ v_~SIZE~0_81 1))))) InVars {~SIZE~0=v_~SIZE~0_81, main_~c~0=v_main_~c~0_189, main_#t~post5=|v_main_#t~post5_121|, ~last~0=v_~last~0_92} OutVars{~SIZE~0=v_~SIZE~0_81, main_#t~post5=|v_main_#t~post5_117|, main_~c~0=v_main_~c~0_188, ~last~0=v_~last~0_92} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {12285#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:06,656 INFO L290 TraceCheckUtils]: 16: Hoare triple {12285#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [131] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {12295#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 03:57:06,657 INFO L290 TraceCheckUtils]: 17: Hoare triple {12295#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {12229#false} is VALID [2022-04-28 03:57:06,657 INFO L290 TraceCheckUtils]: 18: Hoare triple {12229#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {12229#false} is VALID [2022-04-28 03:57:06,666 INFO L290 TraceCheckUtils]: 19: Hoare triple {12229#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {12229#false} is VALID [2022-04-28 03:57:06,667 INFO L290 TraceCheckUtils]: 20: Hoare triple {12229#false} assume !(~d~0 == ~SIZE~0); {12229#false} is VALID [2022-04-28 03:57:06,667 INFO L272 TraceCheckUtils]: 21: Hoare triple {12229#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {12229#false} is VALID [2022-04-28 03:57:06,667 INFO L290 TraceCheckUtils]: 22: Hoare triple {12229#false} ~cond := #in~cond; {12229#false} is VALID [2022-04-28 03:57:06,667 INFO L290 TraceCheckUtils]: 23: Hoare triple {12229#false} assume 0 == ~cond; {12229#false} is VALID [2022-04-28 03:57:06,667 INFO L290 TraceCheckUtils]: 24: Hoare triple {12229#false} assume !false; {12229#false} is VALID [2022-04-28 03:57:06,667 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:57:06,667 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 03:57:07,034 INFO L290 TraceCheckUtils]: 24: Hoare triple {12229#false} assume !false; {12229#false} is VALID [2022-04-28 03:57:07,034 INFO L290 TraceCheckUtils]: 23: Hoare triple {12229#false} assume 0 == ~cond; {12229#false} is VALID [2022-04-28 03:57:07,034 INFO L290 TraceCheckUtils]: 22: Hoare triple {12229#false} ~cond := #in~cond; {12229#false} is VALID [2022-04-28 03:57:07,034 INFO L272 TraceCheckUtils]: 21: Hoare triple {12229#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {12229#false} is VALID [2022-04-28 03:57:07,034 INFO L290 TraceCheckUtils]: 20: Hoare triple {12229#false} assume !(~d~0 == ~SIZE~0); {12229#false} is VALID [2022-04-28 03:57:07,035 INFO L290 TraceCheckUtils]: 19: Hoare triple {12229#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {12229#false} is VALID [2022-04-28 03:57:07,035 INFO L290 TraceCheckUtils]: 18: Hoare triple {12229#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {12229#false} is VALID [2022-04-28 03:57:07,035 INFO L290 TraceCheckUtils]: 17: Hoare triple {12341#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {12229#false} is VALID [2022-04-28 03:57:07,036 INFO L290 TraceCheckUtils]: 16: Hoare triple {12345#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [131] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {12341#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 03:57:07,036 INFO L290 TraceCheckUtils]: 15: Hoare triple {12345#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [134] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_189 v_main_~c~0_188))) (or (and (= v_~SIZE~0_81 v_~SIZE~0_81) (= v_~last~0_92 v_~last~0_92) .cse0 (= |v_main_#t~post5_121| |v_main_#t~post5_117|)) (and (or (not (< v_main_~c~0_189 v_~SIZE~0_81)) (not (< v_main_~c~0_189 v_~last~0_92))) (= |v_main_#t~post5_117| |v_main_#t~post5_121|) .cse0) (and (< v_main_~c~0_188 (+ v_~last~0_92 1)) (< v_main_~c~0_189 v_main_~c~0_188) (< v_main_~c~0_188 (+ v_~SIZE~0_81 1))))) InVars {~SIZE~0=v_~SIZE~0_81, main_~c~0=v_main_~c~0_189, main_#t~post5=|v_main_#t~post5_121|, ~last~0=v_~last~0_92} OutVars{~SIZE~0=v_~SIZE~0_81, main_#t~post5=|v_main_#t~post5_117|, main_~c~0=v_main_~c~0_188, ~last~0=v_~last~0_92} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {12345#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:57:07,036 INFO L290 TraceCheckUtils]: 14: Hoare triple {12345#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [133] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {12345#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:57:07,037 INFO L290 TraceCheckUtils]: 13: Hoare triple {12355#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [132] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_91 v_main_~c~0_187)) (.cse1 (= v_main_~c~0_187 v_main_~c~0_186)) (.cse2 (= v_main_~st~0_96 v_main_~st~0_95)) (.cse3 (= |v_main_#t~post5_118| |v_main_#t~post5_116|))) (or (and (< v_main_~c~0_187 v_main_~c~0_186) .cse0 (= 0 v_main_~st~0_95) (< v_main_~c~0_186 (+ v_~SIZE~0_80 1))) (and (or (not (< v_main_~c~0_187 v_~SIZE~0_80)) (not .cse0)) .cse1 .cse2 .cse3) (and .cse1 (= v_~last~0_91 v_~last~0_91) .cse2 (= v_~SIZE~0_80 v_~SIZE~0_80) .cse3))) InVars {~SIZE~0=v_~SIZE~0_80, main_~c~0=v_main_~c~0_187, main_#t~post5=|v_main_#t~post5_118|, main_~st~0=v_main_~st~0_96, ~last~0=v_~last~0_91} OutVars{~SIZE~0=v_~SIZE~0_80, main_#t~post5=|v_main_#t~post5_116|, main_~c~0=v_main_~c~0_186, main_~st~0=v_main_~st~0_95, ~last~0=v_~last~0_91} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {12345#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:57:07,038 INFO L290 TraceCheckUtils]: 12: Hoare triple {12359#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {12355#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 03:57:07,038 INFO L290 TraceCheckUtils]: 11: Hoare triple {12359#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {12359#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:07,038 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12228#true} {12359#(< 1 ~SIZE~0)} #86#return; {12359#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:07,038 INFO L290 TraceCheckUtils]: 9: Hoare triple {12228#true} assume true; {12228#true} is VALID [2022-04-28 03:57:07,039 INFO L290 TraceCheckUtils]: 8: Hoare triple {12228#true} assume !(0 == ~cond); {12228#true} is VALID [2022-04-28 03:57:07,039 INFO L290 TraceCheckUtils]: 7: Hoare triple {12228#true} ~cond := #in~cond; {12228#true} is VALID [2022-04-28 03:57:07,039 INFO L272 TraceCheckUtils]: 6: Hoare triple {12359#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {12228#true} is VALID [2022-04-28 03:57:07,039 INFO L290 TraceCheckUtils]: 5: Hoare triple {12359#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {12359#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:07,039 INFO L272 TraceCheckUtils]: 4: Hoare triple {12359#(< 1 ~SIZE~0)} call #t~ret7 := main(); {12359#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:07,040 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12359#(< 1 ~SIZE~0)} {12228#true} #90#return; {12359#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:07,040 INFO L290 TraceCheckUtils]: 2: Hoare triple {12359#(< 1 ~SIZE~0)} assume true; {12359#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:07,040 INFO L290 TraceCheckUtils]: 1: Hoare triple {12228#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {12359#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:07,040 INFO L272 TraceCheckUtils]: 0: Hoare triple {12228#true} call ULTIMATE.init(); {12228#true} is VALID [2022-04-28 03:57:07,041 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:57:07,041 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [735502204] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 03:57:07,041 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 03:57:07,041 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 03:57:07,361 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:57:07,361 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1097531484] [2022-04-28 03:57:07,361 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1097531484] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:57:07,361 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:57:07,361 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-28 03:57:07,361 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [544199189] [2022-04-28 03:57:07,361 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:57:07,362 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 2.2142857142857144) internal successors, (31), 13 states have internal predecessors, (31), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 37 [2022-04-28 03:57:07,362 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:57:07,362 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 2.2142857142857144) internal successors, (31), 13 states have internal predecessors, (31), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:07,385 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:57:07,385 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-28 03:57:07,386 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:57:07,386 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-28 03:57:07,386 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=122, Invalid=384, Unknown=0, NotChecked=0, Total=506 [2022-04-28 03:57:07,386 INFO L87 Difference]: Start difference. First operand 170 states and 212 transitions. Second operand has 14 states, 14 states have (on average 2.2142857142857144) internal successors, (31), 13 states have internal predecessors, (31), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:08,772 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:57:08,772 INFO L93 Difference]: Finished difference Result 329 states and 411 transitions. [2022-04-28 03:57:08,772 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-28 03:57:08,772 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 2.2142857142857144) internal successors, (31), 13 states have internal predecessors, (31), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 37 [2022-04-28 03:57:08,772 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:57:08,772 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 2.2142857142857144) internal successors, (31), 13 states have internal predecessors, (31), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:08,773 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 86 transitions. [2022-04-28 03:57:08,773 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 2.2142857142857144) internal successors, (31), 13 states have internal predecessors, (31), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:08,774 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 86 transitions. [2022-04-28 03:57:08,774 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 86 transitions. [2022-04-28 03:57:08,841 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 86 edges. 86 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:57:08,844 INFO L225 Difference]: With dead ends: 329 [2022-04-28 03:57:08,844 INFO L226 Difference]: Without dead ends: 209 [2022-04-28 03:57:08,844 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 85 GetRequests, 54 SyntacticMatches, 7 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 346 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=151, Invalid=499, Unknown=0, NotChecked=0, Total=650 [2022-04-28 03:57:08,845 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 53 mSDsluCounter, 17 mSDsCounter, 0 mSdLazyCounter, 505 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 54 SdHoareTripleChecker+Valid, 41 SdHoareTripleChecker+Invalid, 518 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 505 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 03:57:08,845 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [54 Valid, 41 Invalid, 518 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 505 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 03:57:08,845 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 209 states. [2022-04-28 03:57:09,350 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 209 to 179. [2022-04-28 03:57:09,350 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:57:09,350 INFO L82 GeneralOperation]: Start isEquivalent. First operand 209 states. Second operand has 179 states, 164 states have (on average 1.2439024390243902) internal successors, (204), 167 states have internal predecessors, (204), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:57:09,351 INFO L74 IsIncluded]: Start isIncluded. First operand 209 states. Second operand has 179 states, 164 states have (on average 1.2439024390243902) internal successors, (204), 167 states have internal predecessors, (204), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:57:09,351 INFO L87 Difference]: Start difference. First operand 209 states. Second operand has 179 states, 164 states have (on average 1.2439024390243902) internal successors, (204), 167 states have internal predecessors, (204), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:57:09,354 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:57:09,354 INFO L93 Difference]: Finished difference Result 209 states and 255 transitions. [2022-04-28 03:57:09,354 INFO L276 IsEmpty]: Start isEmpty. Operand 209 states and 255 transitions. [2022-04-28 03:57:09,354 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:57:09,354 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:57:09,354 INFO L74 IsIncluded]: Start isIncluded. First operand has 179 states, 164 states have (on average 1.2439024390243902) internal successors, (204), 167 states have internal predecessors, (204), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 209 states. [2022-04-28 03:57:09,355 INFO L87 Difference]: Start difference. First operand has 179 states, 164 states have (on average 1.2439024390243902) internal successors, (204), 167 states have internal predecessors, (204), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 209 states. [2022-04-28 03:57:09,357 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:57:09,358 INFO L93 Difference]: Finished difference Result 209 states and 255 transitions. [2022-04-28 03:57:09,358 INFO L276 IsEmpty]: Start isEmpty. Operand 209 states and 255 transitions. [2022-04-28 03:57:09,359 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:57:09,359 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:57:09,359 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:57:09,359 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:57:09,359 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 179 states, 164 states have (on average 1.2439024390243902) internal successors, (204), 167 states have internal predecessors, (204), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:57:09,361 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 179 states to 179 states and 221 transitions. [2022-04-28 03:57:09,361 INFO L78 Accepts]: Start accepts. Automaton has 179 states and 221 transitions. Word has length 37 [2022-04-28 03:57:09,361 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:57:09,361 INFO L495 AbstractCegarLoop]: Abstraction has 179 states and 221 transitions. [2022-04-28 03:57:09,361 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 2.2142857142857144) internal successors, (31), 13 states have internal predecessors, (31), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:09,362 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 179 states and 221 transitions. [2022-04-28 03:57:09,635 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 221 edges. 221 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:57:09,635 INFO L276 IsEmpty]: Start isEmpty. Operand 179 states and 221 transitions. [2022-04-28 03:57:09,635 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-28 03:57:09,635 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:57:09,635 INFO L195 NwaCegarLoop]: trace histogram [5, 5, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:57:09,656 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-28 03:57:09,836 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable15,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:57:09,836 INFO L420 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:57:09,836 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:57:09,837 INFO L85 PathProgramCache]: Analyzing trace with hash -1620102883, now seen corresponding path program 8 times [2022-04-28 03:57:09,837 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:57:09,837 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1658485027] [2022-04-28 03:57:10,050 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:57:12,778 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:57:12,876 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:57:12,878 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:57:12,881 INFO L85 PathProgramCache]: Analyzing trace with hash -1335603263, now seen corresponding path program 1 times [2022-04-28 03:57:12,881 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:57:12,881 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1392633537] [2022-04-28 03:57:12,881 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:57:12,881 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:57:12,890 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:12,975 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:57:12,977 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:12,981 INFO L290 TraceCheckUtils]: 0: Hoare triple {13862#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {13853#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:12,981 INFO L290 TraceCheckUtils]: 1: Hoare triple {13853#(<= 200000 ~SIZE~0)} assume true; {13853#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:12,982 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {13853#(<= 200000 ~SIZE~0)} {13848#true} #90#return; {13853#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:12,982 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:57:12,983 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:12,986 INFO L290 TraceCheckUtils]: 0: Hoare triple {13848#true} ~cond := #in~cond; {13848#true} is VALID [2022-04-28 03:57:12,986 INFO L290 TraceCheckUtils]: 1: Hoare triple {13848#true} assume !(0 == ~cond); {13848#true} is VALID [2022-04-28 03:57:12,986 INFO L290 TraceCheckUtils]: 2: Hoare triple {13848#true} assume true; {13848#true} is VALID [2022-04-28 03:57:12,986 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13848#true} {13853#(<= 200000 ~SIZE~0)} #86#return; {13853#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:12,987 INFO L272 TraceCheckUtils]: 0: Hoare triple {13848#true} call ULTIMATE.init(); {13862#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:57:12,987 INFO L290 TraceCheckUtils]: 1: Hoare triple {13862#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {13853#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:12,988 INFO L290 TraceCheckUtils]: 2: Hoare triple {13853#(<= 200000 ~SIZE~0)} assume true; {13853#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:12,988 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13853#(<= 200000 ~SIZE~0)} {13848#true} #90#return; {13853#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:12,988 INFO L272 TraceCheckUtils]: 4: Hoare triple {13853#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {13853#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:12,989 INFO L290 TraceCheckUtils]: 5: Hoare triple {13853#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {13853#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:12,989 INFO L272 TraceCheckUtils]: 6: Hoare triple {13853#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {13848#true} is VALID [2022-04-28 03:57:12,989 INFO L290 TraceCheckUtils]: 7: Hoare triple {13848#true} ~cond := #in~cond; {13848#true} is VALID [2022-04-28 03:57:12,989 INFO L290 TraceCheckUtils]: 8: Hoare triple {13848#true} assume !(0 == ~cond); {13848#true} is VALID [2022-04-28 03:57:12,989 INFO L290 TraceCheckUtils]: 9: Hoare triple {13848#true} assume true; {13848#true} is VALID [2022-04-28 03:57:12,989 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {13848#true} {13853#(<= 200000 ~SIZE~0)} #86#return; {13853#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:12,990 INFO L290 TraceCheckUtils]: 11: Hoare triple {13853#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {13853#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:12,990 INFO L290 TraceCheckUtils]: 12: Hoare triple {13853#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {13858#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:12,991 INFO L290 TraceCheckUtils]: 13: Hoare triple {13858#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} [136] L27-3-->L27-4_primed: Formula: (let ((.cse2 (<= v_~last~0_101 v_main_~c~0_209)) (.cse0 (= |v_main_#t~post5_131| |v_main_#t~post5_129|)) (.cse1 (= v_main_~st~0_109 v_main_~st~0_108))) (or (and (= v_main_~c~0_208 v_main_~c~0_209) .cse0 .cse1 (or (not (< v_main_~c~0_209 v_~SIZE~0_89)) (not .cse2))) (and (< v_main_~c~0_208 (+ v_~SIZE~0_89 1)) (< v_main_~c~0_209 v_main_~c~0_208) .cse2 (= v_main_~st~0_108 0)) (and (= v_~SIZE~0_89 v_~SIZE~0_89) (= v_main_~c~0_209 v_main_~c~0_208) (= v_~last~0_101 v_~last~0_101) .cse0 .cse1))) InVars {~SIZE~0=v_~SIZE~0_89, main_~c~0=v_main_~c~0_209, main_#t~post5=|v_main_#t~post5_131|, main_~st~0=v_main_~st~0_109, ~last~0=v_~last~0_101} OutVars{~SIZE~0=v_~SIZE~0_89, main_#t~post5=|v_main_#t~post5_129|, main_~c~0=v_main_~c~0_208, main_~st~0=v_main_~st~0_108, ~last~0=v_~last~0_101} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {13859#(or (<= (+ ~last~0 200000) ~SIZE~0) (and (= main_~c~0 0) (<= 200000 ~SIZE~0)))} is VALID [2022-04-28 03:57:12,991 INFO L290 TraceCheckUtils]: 14: Hoare triple {13859#(or (<= (+ ~last~0 200000) ~SIZE~0) (and (= main_~c~0 0) (<= 200000 ~SIZE~0)))} [137] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {13859#(or (<= (+ ~last~0 200000) ~SIZE~0) (and (= main_~c~0 0) (<= 200000 ~SIZE~0)))} is VALID [2022-04-28 03:57:12,992 INFO L290 TraceCheckUtils]: 15: Hoare triple {13859#(or (<= (+ ~last~0 200000) ~SIZE~0) (and (= main_~c~0 0) (<= 200000 ~SIZE~0)))} [138] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_134| |v_main_#t~post5_130|)) (.cse1 (= v_main_~c~0_211 v_main_~c~0_210))) (or (and .cse0 (or (not (< v_main_~c~0_211 v_~last~0_102)) (not (< v_main_~c~0_211 v_~SIZE~0_90))) .cse1) (and (< v_main_~c~0_210 (+ v_~SIZE~0_90 1)) (< v_main_~c~0_210 (+ v_~last~0_102 1)) (< v_main_~c~0_211 v_main_~c~0_210)) (and .cse0 (= v_~last~0_102 v_~last~0_102) .cse1 (= v_~SIZE~0_90 v_~SIZE~0_90)))) InVars {~SIZE~0=v_~SIZE~0_90, main_~c~0=v_main_~c~0_211, main_#t~post5=|v_main_#t~post5_134|, ~last~0=v_~last~0_102} OutVars{~SIZE~0=v_~SIZE~0_90, main_#t~post5=|v_main_#t~post5_130|, main_~c~0=v_main_~c~0_210, ~last~0=v_~last~0_102} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {13860#(or (<= (+ ~last~0 200000) ~SIZE~0) (<= main_~c~0 ~last~0))} is VALID [2022-04-28 03:57:12,992 INFO L290 TraceCheckUtils]: 16: Hoare triple {13860#(or (<= (+ ~last~0 200000) ~SIZE~0) (<= main_~c~0 ~last~0))} [135] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {13861#(or (<= (+ ~last~0 200000) main_~c~0) (<= main_~c~0 ~last~0))} is VALID [2022-04-28 03:57:12,993 INFO L290 TraceCheckUtils]: 17: Hoare triple {13861#(or (<= (+ ~last~0 200000) main_~c~0) (<= main_~c~0 ~last~0))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {13849#false} is VALID [2022-04-28 03:57:12,993 INFO L290 TraceCheckUtils]: 18: Hoare triple {13849#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {13849#false} is VALID [2022-04-28 03:57:12,993 INFO L290 TraceCheckUtils]: 19: Hoare triple {13849#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {13849#false} is VALID [2022-04-28 03:57:12,993 INFO L290 TraceCheckUtils]: 20: Hoare triple {13849#false} assume !(~d~0 == ~SIZE~0); {13849#false} is VALID [2022-04-28 03:57:12,993 INFO L272 TraceCheckUtils]: 21: Hoare triple {13849#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {13849#false} is VALID [2022-04-28 03:57:12,993 INFO L290 TraceCheckUtils]: 22: Hoare triple {13849#false} ~cond := #in~cond; {13849#false} is VALID [2022-04-28 03:57:12,993 INFO L290 TraceCheckUtils]: 23: Hoare triple {13849#false} assume 0 == ~cond; {13849#false} is VALID [2022-04-28 03:57:12,993 INFO L290 TraceCheckUtils]: 24: Hoare triple {13849#false} assume !false; {13849#false} is VALID [2022-04-28 03:57:12,993 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 03:57:12,994 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:57:12,994 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1392633537] [2022-04-28 03:57:12,994 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1392633537] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 03:57:12,994 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1109740880] [2022-04-28 03:57:12,994 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:57:12,994 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:57:12,994 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 03:57:12,996 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 03:57:12,997 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-28 03:57:13,029 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:13,029 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 03:57:13,042 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:13,043 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 03:57:13,308 INFO L272 TraceCheckUtils]: 0: Hoare triple {13848#true} call ULTIMATE.init(); {13848#true} is VALID [2022-04-28 03:57:13,309 INFO L290 TraceCheckUtils]: 1: Hoare triple {13848#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {13853#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:13,309 INFO L290 TraceCheckUtils]: 2: Hoare triple {13853#(<= 200000 ~SIZE~0)} assume true; {13853#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:13,310 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13853#(<= 200000 ~SIZE~0)} {13848#true} #90#return; {13853#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:13,310 INFO L272 TraceCheckUtils]: 4: Hoare triple {13853#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {13853#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:13,310 INFO L290 TraceCheckUtils]: 5: Hoare triple {13853#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {13853#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:13,311 INFO L272 TraceCheckUtils]: 6: Hoare triple {13853#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {13853#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:13,311 INFO L290 TraceCheckUtils]: 7: Hoare triple {13853#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {13853#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:13,311 INFO L290 TraceCheckUtils]: 8: Hoare triple {13853#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {13853#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:13,312 INFO L290 TraceCheckUtils]: 9: Hoare triple {13853#(<= 200000 ~SIZE~0)} assume true; {13853#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:13,312 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {13853#(<= 200000 ~SIZE~0)} {13853#(<= 200000 ~SIZE~0)} #86#return; {13853#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:13,312 INFO L290 TraceCheckUtils]: 11: Hoare triple {13853#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {13853#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:13,313 INFO L290 TraceCheckUtils]: 12: Hoare triple {13853#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {13902#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:13,314 INFO L290 TraceCheckUtils]: 13: Hoare triple {13902#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [136] L27-3-->L27-4_primed: Formula: (let ((.cse2 (<= v_~last~0_101 v_main_~c~0_209)) (.cse0 (= |v_main_#t~post5_131| |v_main_#t~post5_129|)) (.cse1 (= v_main_~st~0_109 v_main_~st~0_108))) (or (and (= v_main_~c~0_208 v_main_~c~0_209) .cse0 .cse1 (or (not (< v_main_~c~0_209 v_~SIZE~0_89)) (not .cse2))) (and (< v_main_~c~0_208 (+ v_~SIZE~0_89 1)) (< v_main_~c~0_209 v_main_~c~0_208) .cse2 (= v_main_~st~0_108 0)) (and (= v_~SIZE~0_89 v_~SIZE~0_89) (= v_main_~c~0_209 v_main_~c~0_208) (= v_~last~0_101 v_~last~0_101) .cse0 .cse1))) InVars {~SIZE~0=v_~SIZE~0_89, main_~c~0=v_main_~c~0_209, main_#t~post5=|v_main_#t~post5_131|, main_~st~0=v_main_~st~0_109, ~last~0=v_~last~0_101} OutVars{~SIZE~0=v_~SIZE~0_89, main_#t~post5=|v_main_#t~post5_129|, main_~c~0=v_main_~c~0_208, main_~st~0=v_main_~st~0_108, ~last~0=v_~last~0_101} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {13906#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:13,315 INFO L290 TraceCheckUtils]: 14: Hoare triple {13906#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [137] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {13906#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:13,316 INFO L290 TraceCheckUtils]: 15: Hoare triple {13906#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [138] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_134| |v_main_#t~post5_130|)) (.cse1 (= v_main_~c~0_211 v_main_~c~0_210))) (or (and .cse0 (or (not (< v_main_~c~0_211 v_~last~0_102)) (not (< v_main_~c~0_211 v_~SIZE~0_90))) .cse1) (and (< v_main_~c~0_210 (+ v_~SIZE~0_90 1)) (< v_main_~c~0_210 (+ v_~last~0_102 1)) (< v_main_~c~0_211 v_main_~c~0_210)) (and .cse0 (= v_~last~0_102 v_~last~0_102) .cse1 (= v_~SIZE~0_90 v_~SIZE~0_90)))) InVars {~SIZE~0=v_~SIZE~0_90, main_~c~0=v_main_~c~0_211, main_#t~post5=|v_main_#t~post5_134|, ~last~0=v_~last~0_102} OutVars{~SIZE~0=v_~SIZE~0_90, main_#t~post5=|v_main_#t~post5_130|, main_~c~0=v_main_~c~0_210, ~last~0=v_~last~0_102} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {13906#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:13,316 INFO L290 TraceCheckUtils]: 16: Hoare triple {13906#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [135] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {13916#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 03:57:13,317 INFO L290 TraceCheckUtils]: 17: Hoare triple {13916#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {13849#false} is VALID [2022-04-28 03:57:13,317 INFO L290 TraceCheckUtils]: 18: Hoare triple {13849#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {13849#false} is VALID [2022-04-28 03:57:13,317 INFO L290 TraceCheckUtils]: 19: Hoare triple {13849#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {13849#false} is VALID [2022-04-28 03:57:13,317 INFO L290 TraceCheckUtils]: 20: Hoare triple {13849#false} assume !(~d~0 == ~SIZE~0); {13849#false} is VALID [2022-04-28 03:57:13,317 INFO L272 TraceCheckUtils]: 21: Hoare triple {13849#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {13849#false} is VALID [2022-04-28 03:57:13,317 INFO L290 TraceCheckUtils]: 22: Hoare triple {13849#false} ~cond := #in~cond; {13849#false} is VALID [2022-04-28 03:57:13,317 INFO L290 TraceCheckUtils]: 23: Hoare triple {13849#false} assume 0 == ~cond; {13849#false} is VALID [2022-04-28 03:57:13,317 INFO L290 TraceCheckUtils]: 24: Hoare triple {13849#false} assume !false; {13849#false} is VALID [2022-04-28 03:57:13,317 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:57:13,317 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 03:57:13,649 INFO L290 TraceCheckUtils]: 24: Hoare triple {13849#false} assume !false; {13849#false} is VALID [2022-04-28 03:57:13,649 INFO L290 TraceCheckUtils]: 23: Hoare triple {13849#false} assume 0 == ~cond; {13849#false} is VALID [2022-04-28 03:57:13,649 INFO L290 TraceCheckUtils]: 22: Hoare triple {13849#false} ~cond := #in~cond; {13849#false} is VALID [2022-04-28 03:57:13,649 INFO L272 TraceCheckUtils]: 21: Hoare triple {13849#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {13849#false} is VALID [2022-04-28 03:57:13,649 INFO L290 TraceCheckUtils]: 20: Hoare triple {13849#false} assume !(~d~0 == ~SIZE~0); {13849#false} is VALID [2022-04-28 03:57:13,649 INFO L290 TraceCheckUtils]: 19: Hoare triple {13849#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {13849#false} is VALID [2022-04-28 03:57:13,649 INFO L290 TraceCheckUtils]: 18: Hoare triple {13849#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {13849#false} is VALID [2022-04-28 03:57:13,650 INFO L290 TraceCheckUtils]: 17: Hoare triple {13962#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {13849#false} is VALID [2022-04-28 03:57:13,650 INFO L290 TraceCheckUtils]: 16: Hoare triple {13966#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [135] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {13962#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 03:57:13,651 INFO L290 TraceCheckUtils]: 15: Hoare triple {13966#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [138] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_134| |v_main_#t~post5_130|)) (.cse1 (= v_main_~c~0_211 v_main_~c~0_210))) (or (and .cse0 (or (not (< v_main_~c~0_211 v_~last~0_102)) (not (< v_main_~c~0_211 v_~SIZE~0_90))) .cse1) (and (< v_main_~c~0_210 (+ v_~SIZE~0_90 1)) (< v_main_~c~0_210 (+ v_~last~0_102 1)) (< v_main_~c~0_211 v_main_~c~0_210)) (and .cse0 (= v_~last~0_102 v_~last~0_102) .cse1 (= v_~SIZE~0_90 v_~SIZE~0_90)))) InVars {~SIZE~0=v_~SIZE~0_90, main_~c~0=v_main_~c~0_211, main_#t~post5=|v_main_#t~post5_134|, ~last~0=v_~last~0_102} OutVars{~SIZE~0=v_~SIZE~0_90, main_#t~post5=|v_main_#t~post5_130|, main_~c~0=v_main_~c~0_210, ~last~0=v_~last~0_102} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {13966#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:57:13,651 INFO L290 TraceCheckUtils]: 14: Hoare triple {13966#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [137] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {13966#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:57:13,652 INFO L290 TraceCheckUtils]: 13: Hoare triple {13976#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [136] L27-3-->L27-4_primed: Formula: (let ((.cse2 (<= v_~last~0_101 v_main_~c~0_209)) (.cse0 (= |v_main_#t~post5_131| |v_main_#t~post5_129|)) (.cse1 (= v_main_~st~0_109 v_main_~st~0_108))) (or (and (= v_main_~c~0_208 v_main_~c~0_209) .cse0 .cse1 (or (not (< v_main_~c~0_209 v_~SIZE~0_89)) (not .cse2))) (and (< v_main_~c~0_208 (+ v_~SIZE~0_89 1)) (< v_main_~c~0_209 v_main_~c~0_208) .cse2 (= v_main_~st~0_108 0)) (and (= v_~SIZE~0_89 v_~SIZE~0_89) (= v_main_~c~0_209 v_main_~c~0_208) (= v_~last~0_101 v_~last~0_101) .cse0 .cse1))) InVars {~SIZE~0=v_~SIZE~0_89, main_~c~0=v_main_~c~0_209, main_#t~post5=|v_main_#t~post5_131|, main_~st~0=v_main_~st~0_109, ~last~0=v_~last~0_101} OutVars{~SIZE~0=v_~SIZE~0_89, main_#t~post5=|v_main_#t~post5_129|, main_~c~0=v_main_~c~0_208, main_~st~0=v_main_~st~0_108, ~last~0=v_~last~0_101} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {13966#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:57:13,652 INFO L290 TraceCheckUtils]: 12: Hoare triple {13980#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {13976#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 03:57:13,652 INFO L290 TraceCheckUtils]: 11: Hoare triple {13980#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {13980#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:13,653 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {13848#true} {13980#(< 1 ~SIZE~0)} #86#return; {13980#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:13,653 INFO L290 TraceCheckUtils]: 9: Hoare triple {13848#true} assume true; {13848#true} is VALID [2022-04-28 03:57:13,653 INFO L290 TraceCheckUtils]: 8: Hoare triple {13848#true} assume !(0 == ~cond); {13848#true} is VALID [2022-04-28 03:57:13,653 INFO L290 TraceCheckUtils]: 7: Hoare triple {13848#true} ~cond := #in~cond; {13848#true} is VALID [2022-04-28 03:57:13,653 INFO L272 TraceCheckUtils]: 6: Hoare triple {13980#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {13848#true} is VALID [2022-04-28 03:57:13,653 INFO L290 TraceCheckUtils]: 5: Hoare triple {13980#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {13980#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:13,654 INFO L272 TraceCheckUtils]: 4: Hoare triple {13980#(< 1 ~SIZE~0)} call #t~ret7 := main(); {13980#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:13,654 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13980#(< 1 ~SIZE~0)} {13848#true} #90#return; {13980#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:13,654 INFO L290 TraceCheckUtils]: 2: Hoare triple {13980#(< 1 ~SIZE~0)} assume true; {13980#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:13,655 INFO L290 TraceCheckUtils]: 1: Hoare triple {13848#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {13980#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:13,655 INFO L272 TraceCheckUtils]: 0: Hoare triple {13848#true} call ULTIMATE.init(); {13848#true} is VALID [2022-04-28 03:57:13,655 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:57:13,655 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1109740880] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 03:57:13,655 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 03:57:13,655 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 6, 6] total 15 [2022-04-28 03:57:13,988 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:57:13,988 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1658485027] [2022-04-28 03:57:13,989 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1658485027] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:57:13,989 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:57:13,989 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-28 03:57:13,989 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [707108368] [2022-04-28 03:57:13,989 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:57:13,989 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.066666666666667) internal successors, (31), 14 states have internal predecessors, (31), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 37 [2022-04-28 03:57:13,989 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:57:13,989 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 2.066666666666667) internal successors, (31), 14 states have internal predecessors, (31), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:14,013 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:57:14,013 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-28 03:57:14,013 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:57:14,014 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-28 03:57:14,014 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=115, Invalid=485, Unknown=0, NotChecked=0, Total=600 [2022-04-28 03:57:14,014 INFO L87 Difference]: Start difference. First operand 179 states and 221 transitions. Second operand has 15 states, 15 states have (on average 2.066666666666667) internal successors, (31), 14 states have internal predecessors, (31), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:15,318 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:57:15,318 INFO L93 Difference]: Finished difference Result 342 states and 420 transitions. [2022-04-28 03:57:15,318 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-28 03:57:15,318 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.066666666666667) internal successors, (31), 14 states have internal predecessors, (31), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 37 [2022-04-28 03:57:15,319 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:57:15,319 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.066666666666667) internal successors, (31), 14 states have internal predecessors, (31), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:15,319 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 79 transitions. [2022-04-28 03:57:15,319 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.066666666666667) internal successors, (31), 14 states have internal predecessors, (31), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:15,321 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 79 transitions. [2022-04-28 03:57:15,321 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 79 transitions. [2022-04-28 03:57:15,380 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:57:15,383 INFO L225 Difference]: With dead ends: 342 [2022-04-28 03:57:15,383 INFO L226 Difference]: Without dead ends: 213 [2022-04-28 03:57:15,384 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 86 GetRequests, 55 SyntacticMatches, 6 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 322 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=130, Invalid=572, Unknown=0, NotChecked=0, Total=702 [2022-04-28 03:57:15,384 INFO L413 NwaCegarLoop]: 21 mSDtfsCounter, 44 mSDsluCounter, 17 mSDsCounter, 0 mSdLazyCounter, 405 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 45 SdHoareTripleChecker+Valid, 38 SdHoareTripleChecker+Invalid, 419 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 405 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 03:57:15,385 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [45 Valid, 38 Invalid, 419 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 405 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 03:57:15,385 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 213 states. [2022-04-28 03:57:15,854 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 213 to 179. [2022-04-28 03:57:15,854 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:57:15,855 INFO L82 GeneralOperation]: Start isEquivalent. First operand 213 states. Second operand has 179 states, 164 states have (on average 1.2439024390243902) internal successors, (204), 167 states have internal predecessors, (204), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:57:15,855 INFO L74 IsIncluded]: Start isIncluded. First operand 213 states. Second operand has 179 states, 164 states have (on average 1.2439024390243902) internal successors, (204), 167 states have internal predecessors, (204), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:57:15,855 INFO L87 Difference]: Start difference. First operand 213 states. Second operand has 179 states, 164 states have (on average 1.2439024390243902) internal successors, (204), 167 states have internal predecessors, (204), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:57:15,860 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:57:15,860 INFO L93 Difference]: Finished difference Result 213 states and 255 transitions. [2022-04-28 03:57:15,861 INFO L276 IsEmpty]: Start isEmpty. Operand 213 states and 255 transitions. [2022-04-28 03:57:15,862 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:57:15,862 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:57:15,862 INFO L74 IsIncluded]: Start isIncluded. First operand has 179 states, 164 states have (on average 1.2439024390243902) internal successors, (204), 167 states have internal predecessors, (204), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 213 states. [2022-04-28 03:57:15,862 INFO L87 Difference]: Start difference. First operand has 179 states, 164 states have (on average 1.2439024390243902) internal successors, (204), 167 states have internal predecessors, (204), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 213 states. [2022-04-28 03:57:15,865 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:57:15,865 INFO L93 Difference]: Finished difference Result 213 states and 255 transitions. [2022-04-28 03:57:15,865 INFO L276 IsEmpty]: Start isEmpty. Operand 213 states and 255 transitions. [2022-04-28 03:57:15,865 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:57:15,865 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:57:15,866 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:57:15,866 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:57:15,866 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 179 states, 164 states have (on average 1.2439024390243902) internal successors, (204), 167 states have internal predecessors, (204), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:57:15,868 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 179 states to 179 states and 221 transitions. [2022-04-28 03:57:15,868 INFO L78 Accepts]: Start accepts. Automaton has 179 states and 221 transitions. Word has length 37 [2022-04-28 03:57:15,868 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:57:15,868 INFO L495 AbstractCegarLoop]: Abstraction has 179 states and 221 transitions. [2022-04-28 03:57:15,868 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 2.066666666666667) internal successors, (31), 14 states have internal predecessors, (31), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:15,868 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 179 states and 221 transitions. [2022-04-28 03:57:16,165 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 221 edges. 221 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:57:16,165 INFO L276 IsEmpty]: Start isEmpty. Operand 179 states and 221 transitions. [2022-04-28 03:57:16,166 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-28 03:57:16,166 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:57:16,166 INFO L195 NwaCegarLoop]: trace histogram [5, 5, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:57:16,182 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Ended with exit code 0 [2022-04-28 03:57:16,371 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable16 [2022-04-28 03:57:16,371 INFO L420 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:57:16,371 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:57:16,372 INFO L85 PathProgramCache]: Analyzing trace with hash 1086516511, now seen corresponding path program 9 times [2022-04-28 03:57:16,372 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:57:16,372 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [338622861] [2022-04-28 03:57:17,501 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:57:17,605 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:57:21,714 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:57:21,820 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:57:21,821 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:57:21,824 INFO L85 PathProgramCache]: Analyzing trace with hash 1156919489, now seen corresponding path program 1 times [2022-04-28 03:57:21,824 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:57:21,824 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1939600598] [2022-04-28 03:57:21,824 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:57:21,824 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:57:21,832 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:21,880 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:57:21,882 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:21,893 INFO L290 TraceCheckUtils]: 0: Hoare triple {15515#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {15507#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:21,894 INFO L290 TraceCheckUtils]: 1: Hoare triple {15507#(<= 200000 ~SIZE~0)} assume true; {15507#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:21,894 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {15507#(<= 200000 ~SIZE~0)} {15502#true} #90#return; {15507#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:21,894 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:57:21,895 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:21,897 INFO L290 TraceCheckUtils]: 0: Hoare triple {15502#true} ~cond := #in~cond; {15502#true} is VALID [2022-04-28 03:57:21,897 INFO L290 TraceCheckUtils]: 1: Hoare triple {15502#true} assume !(0 == ~cond); {15502#true} is VALID [2022-04-28 03:57:21,897 INFO L290 TraceCheckUtils]: 2: Hoare triple {15502#true} assume true; {15502#true} is VALID [2022-04-28 03:57:21,897 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15502#true} {15507#(<= 200000 ~SIZE~0)} #86#return; {15507#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:21,898 INFO L272 TraceCheckUtils]: 0: Hoare triple {15502#true} call ULTIMATE.init(); {15515#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:57:21,898 INFO L290 TraceCheckUtils]: 1: Hoare triple {15515#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {15507#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:21,899 INFO L290 TraceCheckUtils]: 2: Hoare triple {15507#(<= 200000 ~SIZE~0)} assume true; {15507#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:21,899 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15507#(<= 200000 ~SIZE~0)} {15502#true} #90#return; {15507#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:21,899 INFO L272 TraceCheckUtils]: 4: Hoare triple {15507#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {15507#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:21,900 INFO L290 TraceCheckUtils]: 5: Hoare triple {15507#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {15507#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:21,900 INFO L272 TraceCheckUtils]: 6: Hoare triple {15507#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {15502#true} is VALID [2022-04-28 03:57:21,900 INFO L290 TraceCheckUtils]: 7: Hoare triple {15502#true} ~cond := #in~cond; {15502#true} is VALID [2022-04-28 03:57:21,900 INFO L290 TraceCheckUtils]: 8: Hoare triple {15502#true} assume !(0 == ~cond); {15502#true} is VALID [2022-04-28 03:57:21,900 INFO L290 TraceCheckUtils]: 9: Hoare triple {15502#true} assume true; {15502#true} is VALID [2022-04-28 03:57:21,900 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {15502#true} {15507#(<= 200000 ~SIZE~0)} #86#return; {15507#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:21,901 INFO L290 TraceCheckUtils]: 11: Hoare triple {15507#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {15507#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:21,901 INFO L290 TraceCheckUtils]: 12: Hoare triple {15507#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {15512#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:21,902 INFO L290 TraceCheckUtils]: 13: Hoare triple {15512#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [140] L27-3-->L27-4_primed: Formula: (let ((.cse2 (<= v_~last~0_111 v_main_~c~0_231)) (.cse0 (= v_main_~c~0_231 v_main_~c~0_230)) (.cse1 (= |v_main_#t~post5_144| |v_main_#t~post5_142|))) (or (and (= v_~SIZE~0_98 v_~SIZE~0_98) (= v_~last~0_111 v_~last~0_111) (= v_main_~st~0_120 v_main_~st~0_119) .cse0 .cse1) (and (< v_main_~c~0_230 (+ v_~SIZE~0_98 1)) (< v_main_~c~0_231 v_main_~c~0_230) .cse2 (= v_main_~st~0_119 0)) (and (= v_main_~st~0_119 v_main_~st~0_120) (or (not .cse2) (not (< v_main_~c~0_231 v_~SIZE~0_98))) .cse0 .cse1))) InVars {~SIZE~0=v_~SIZE~0_98, main_~c~0=v_main_~c~0_231, main_#t~post5=|v_main_#t~post5_144|, main_~st~0=v_main_~st~0_120, ~last~0=v_~last~0_111} OutVars{~SIZE~0=v_~SIZE~0_98, main_#t~post5=|v_main_#t~post5_142|, main_~c~0=v_main_~c~0_230, main_~st~0=v_main_~st~0_119, ~last~0=v_~last~0_111} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {15513#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:57:21,902 INFO L290 TraceCheckUtils]: 14: Hoare triple {15513#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [141] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {15513#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:57:21,902 INFO L290 TraceCheckUtils]: 15: Hoare triple {15513#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [142] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_147| |v_main_#t~post5_143|)) (.cse1 (= v_main_~c~0_233 v_main_~c~0_232))) (or (and (or (not (< v_main_~c~0_233 v_~SIZE~0_99)) (not (< v_main_~c~0_233 v_~last~0_112))) .cse0 .cse1) (and .cse0 (= v_~last~0_112 v_~last~0_112) .cse1 (= v_~SIZE~0_99 v_~SIZE~0_99)) (and (< v_main_~c~0_232 (+ v_~last~0_112 1)) (< v_main_~c~0_232 (+ v_~SIZE~0_99 1)) (< v_main_~c~0_233 v_main_~c~0_232)))) InVars {~SIZE~0=v_~SIZE~0_99, main_~c~0=v_main_~c~0_233, main_#t~post5=|v_main_#t~post5_147|, ~last~0=v_~last~0_112} OutVars{~SIZE~0=v_~SIZE~0_99, main_#t~post5=|v_main_#t~post5_143|, main_~c~0=v_main_~c~0_232, ~last~0=v_~last~0_112} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {15513#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:57:21,903 INFO L290 TraceCheckUtils]: 16: Hoare triple {15513#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [139] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {15514#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 03:57:21,903 INFO L290 TraceCheckUtils]: 17: Hoare triple {15514#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {15503#false} is VALID [2022-04-28 03:57:21,903 INFO L290 TraceCheckUtils]: 18: Hoare triple {15503#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {15503#false} is VALID [2022-04-28 03:57:21,903 INFO L290 TraceCheckUtils]: 19: Hoare triple {15503#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {15503#false} is VALID [2022-04-28 03:57:21,904 INFO L290 TraceCheckUtils]: 20: Hoare triple {15503#false} assume !(~d~0 == ~SIZE~0); {15503#false} is VALID [2022-04-28 03:57:21,904 INFO L272 TraceCheckUtils]: 21: Hoare triple {15503#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {15503#false} is VALID [2022-04-28 03:57:21,904 INFO L290 TraceCheckUtils]: 22: Hoare triple {15503#false} ~cond := #in~cond; {15503#false} is VALID [2022-04-28 03:57:21,904 INFO L290 TraceCheckUtils]: 23: Hoare triple {15503#false} assume 0 == ~cond; {15503#false} is VALID [2022-04-28 03:57:21,904 INFO L290 TraceCheckUtils]: 24: Hoare triple {15503#false} assume !false; {15503#false} is VALID [2022-04-28 03:57:21,904 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:57:21,904 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:57:21,904 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1939600598] [2022-04-28 03:57:21,904 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1939600598] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 03:57:21,904 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1508246481] [2022-04-28 03:57:21,904 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:57:21,904 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:57:21,905 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 03:57:21,905 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 03:57:21,906 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-04-28 03:57:21,934 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:21,935 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 03:57:21,941 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:21,942 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 03:57:22,181 INFO L272 TraceCheckUtils]: 0: Hoare triple {15502#true} call ULTIMATE.init(); {15502#true} is VALID [2022-04-28 03:57:22,182 INFO L290 TraceCheckUtils]: 1: Hoare triple {15502#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {15507#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:22,182 INFO L290 TraceCheckUtils]: 2: Hoare triple {15507#(<= 200000 ~SIZE~0)} assume true; {15507#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:22,183 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15507#(<= 200000 ~SIZE~0)} {15502#true} #90#return; {15507#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:22,183 INFO L272 TraceCheckUtils]: 4: Hoare triple {15507#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {15507#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:22,183 INFO L290 TraceCheckUtils]: 5: Hoare triple {15507#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {15507#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:22,184 INFO L272 TraceCheckUtils]: 6: Hoare triple {15507#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {15507#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:22,184 INFO L290 TraceCheckUtils]: 7: Hoare triple {15507#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {15507#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:22,184 INFO L290 TraceCheckUtils]: 8: Hoare triple {15507#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {15507#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:22,184 INFO L290 TraceCheckUtils]: 9: Hoare triple {15507#(<= 200000 ~SIZE~0)} assume true; {15507#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:22,185 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {15507#(<= 200000 ~SIZE~0)} {15507#(<= 200000 ~SIZE~0)} #86#return; {15507#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:22,185 INFO L290 TraceCheckUtils]: 11: Hoare triple {15507#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {15507#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:22,186 INFO L290 TraceCheckUtils]: 12: Hoare triple {15507#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {15555#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:22,186 INFO L290 TraceCheckUtils]: 13: Hoare triple {15555#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [140] L27-3-->L27-4_primed: Formula: (let ((.cse2 (<= v_~last~0_111 v_main_~c~0_231)) (.cse0 (= v_main_~c~0_231 v_main_~c~0_230)) (.cse1 (= |v_main_#t~post5_144| |v_main_#t~post5_142|))) (or (and (= v_~SIZE~0_98 v_~SIZE~0_98) (= v_~last~0_111 v_~last~0_111) (= v_main_~st~0_120 v_main_~st~0_119) .cse0 .cse1) (and (< v_main_~c~0_230 (+ v_~SIZE~0_98 1)) (< v_main_~c~0_231 v_main_~c~0_230) .cse2 (= v_main_~st~0_119 0)) (and (= v_main_~st~0_119 v_main_~st~0_120) (or (not .cse2) (not (< v_main_~c~0_231 v_~SIZE~0_98))) .cse0 .cse1))) InVars {~SIZE~0=v_~SIZE~0_98, main_~c~0=v_main_~c~0_231, main_#t~post5=|v_main_#t~post5_144|, main_~st~0=v_main_~st~0_120, ~last~0=v_~last~0_111} OutVars{~SIZE~0=v_~SIZE~0_98, main_#t~post5=|v_main_#t~post5_142|, main_~c~0=v_main_~c~0_230, main_~st~0=v_main_~st~0_119, ~last~0=v_~last~0_111} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {15559#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:22,187 INFO L290 TraceCheckUtils]: 14: Hoare triple {15559#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [141] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {15559#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:22,188 INFO L290 TraceCheckUtils]: 15: Hoare triple {15559#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [142] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_147| |v_main_#t~post5_143|)) (.cse1 (= v_main_~c~0_233 v_main_~c~0_232))) (or (and (or (not (< v_main_~c~0_233 v_~SIZE~0_99)) (not (< v_main_~c~0_233 v_~last~0_112))) .cse0 .cse1) (and .cse0 (= v_~last~0_112 v_~last~0_112) .cse1 (= v_~SIZE~0_99 v_~SIZE~0_99)) (and (< v_main_~c~0_232 (+ v_~last~0_112 1)) (< v_main_~c~0_232 (+ v_~SIZE~0_99 1)) (< v_main_~c~0_233 v_main_~c~0_232)))) InVars {~SIZE~0=v_~SIZE~0_99, main_~c~0=v_main_~c~0_233, main_#t~post5=|v_main_#t~post5_147|, ~last~0=v_~last~0_112} OutVars{~SIZE~0=v_~SIZE~0_99, main_#t~post5=|v_main_#t~post5_143|, main_~c~0=v_main_~c~0_232, ~last~0=v_~last~0_112} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {15559#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:22,188 INFO L290 TraceCheckUtils]: 16: Hoare triple {15559#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [139] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {15569#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 03:57:22,189 INFO L290 TraceCheckUtils]: 17: Hoare triple {15569#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {15503#false} is VALID [2022-04-28 03:57:22,189 INFO L290 TraceCheckUtils]: 18: Hoare triple {15503#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {15503#false} is VALID [2022-04-28 03:57:22,189 INFO L290 TraceCheckUtils]: 19: Hoare triple {15503#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {15503#false} is VALID [2022-04-28 03:57:22,189 INFO L290 TraceCheckUtils]: 20: Hoare triple {15503#false} assume !(~d~0 == ~SIZE~0); {15503#false} is VALID [2022-04-28 03:57:22,189 INFO L272 TraceCheckUtils]: 21: Hoare triple {15503#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {15503#false} is VALID [2022-04-28 03:57:22,189 INFO L290 TraceCheckUtils]: 22: Hoare triple {15503#false} ~cond := #in~cond; {15503#false} is VALID [2022-04-28 03:57:22,189 INFO L290 TraceCheckUtils]: 23: Hoare triple {15503#false} assume 0 == ~cond; {15503#false} is VALID [2022-04-28 03:57:22,189 INFO L290 TraceCheckUtils]: 24: Hoare triple {15503#false} assume !false; {15503#false} is VALID [2022-04-28 03:57:22,189 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:57:22,189 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 03:57:22,498 INFO L290 TraceCheckUtils]: 24: Hoare triple {15503#false} assume !false; {15503#false} is VALID [2022-04-28 03:57:22,498 INFO L290 TraceCheckUtils]: 23: Hoare triple {15503#false} assume 0 == ~cond; {15503#false} is VALID [2022-04-28 03:57:22,498 INFO L290 TraceCheckUtils]: 22: Hoare triple {15503#false} ~cond := #in~cond; {15503#false} is VALID [2022-04-28 03:57:22,498 INFO L272 TraceCheckUtils]: 21: Hoare triple {15503#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {15503#false} is VALID [2022-04-28 03:57:22,499 INFO L290 TraceCheckUtils]: 20: Hoare triple {15503#false} assume !(~d~0 == ~SIZE~0); {15503#false} is VALID [2022-04-28 03:57:22,499 INFO L290 TraceCheckUtils]: 19: Hoare triple {15503#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {15503#false} is VALID [2022-04-28 03:57:22,499 INFO L290 TraceCheckUtils]: 18: Hoare triple {15503#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {15503#false} is VALID [2022-04-28 03:57:22,499 INFO L290 TraceCheckUtils]: 17: Hoare triple {15615#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {15503#false} is VALID [2022-04-28 03:57:22,500 INFO L290 TraceCheckUtils]: 16: Hoare triple {15619#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [139] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {15615#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 03:57:22,500 INFO L290 TraceCheckUtils]: 15: Hoare triple {15619#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [142] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_147| |v_main_#t~post5_143|)) (.cse1 (= v_main_~c~0_233 v_main_~c~0_232))) (or (and (or (not (< v_main_~c~0_233 v_~SIZE~0_99)) (not (< v_main_~c~0_233 v_~last~0_112))) .cse0 .cse1) (and .cse0 (= v_~last~0_112 v_~last~0_112) .cse1 (= v_~SIZE~0_99 v_~SIZE~0_99)) (and (< v_main_~c~0_232 (+ v_~last~0_112 1)) (< v_main_~c~0_232 (+ v_~SIZE~0_99 1)) (< v_main_~c~0_233 v_main_~c~0_232)))) InVars {~SIZE~0=v_~SIZE~0_99, main_~c~0=v_main_~c~0_233, main_#t~post5=|v_main_#t~post5_147|, ~last~0=v_~last~0_112} OutVars{~SIZE~0=v_~SIZE~0_99, main_#t~post5=|v_main_#t~post5_143|, main_~c~0=v_main_~c~0_232, ~last~0=v_~last~0_112} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {15619#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:57:22,500 INFO L290 TraceCheckUtils]: 14: Hoare triple {15619#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [141] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {15619#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:57:22,504 INFO L290 TraceCheckUtils]: 13: Hoare triple {15629#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [140] L27-3-->L27-4_primed: Formula: (let ((.cse2 (<= v_~last~0_111 v_main_~c~0_231)) (.cse0 (= v_main_~c~0_231 v_main_~c~0_230)) (.cse1 (= |v_main_#t~post5_144| |v_main_#t~post5_142|))) (or (and (= v_~SIZE~0_98 v_~SIZE~0_98) (= v_~last~0_111 v_~last~0_111) (= v_main_~st~0_120 v_main_~st~0_119) .cse0 .cse1) (and (< v_main_~c~0_230 (+ v_~SIZE~0_98 1)) (< v_main_~c~0_231 v_main_~c~0_230) .cse2 (= v_main_~st~0_119 0)) (and (= v_main_~st~0_119 v_main_~st~0_120) (or (not .cse2) (not (< v_main_~c~0_231 v_~SIZE~0_98))) .cse0 .cse1))) InVars {~SIZE~0=v_~SIZE~0_98, main_~c~0=v_main_~c~0_231, main_#t~post5=|v_main_#t~post5_144|, main_~st~0=v_main_~st~0_120, ~last~0=v_~last~0_111} OutVars{~SIZE~0=v_~SIZE~0_98, main_#t~post5=|v_main_#t~post5_142|, main_~c~0=v_main_~c~0_230, main_~st~0=v_main_~st~0_119, ~last~0=v_~last~0_111} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {15619#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:57:22,504 INFO L290 TraceCheckUtils]: 12: Hoare triple {15633#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {15629#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 03:57:22,505 INFO L290 TraceCheckUtils]: 11: Hoare triple {15633#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {15633#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:22,505 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {15502#true} {15633#(< 1 ~SIZE~0)} #86#return; {15633#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:22,505 INFO L290 TraceCheckUtils]: 9: Hoare triple {15502#true} assume true; {15502#true} is VALID [2022-04-28 03:57:22,505 INFO L290 TraceCheckUtils]: 8: Hoare triple {15502#true} assume !(0 == ~cond); {15502#true} is VALID [2022-04-28 03:57:22,505 INFO L290 TraceCheckUtils]: 7: Hoare triple {15502#true} ~cond := #in~cond; {15502#true} is VALID [2022-04-28 03:57:22,505 INFO L272 TraceCheckUtils]: 6: Hoare triple {15633#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {15502#true} is VALID [2022-04-28 03:57:22,506 INFO L290 TraceCheckUtils]: 5: Hoare triple {15633#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {15633#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:22,506 INFO L272 TraceCheckUtils]: 4: Hoare triple {15633#(< 1 ~SIZE~0)} call #t~ret7 := main(); {15633#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:22,506 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {15633#(< 1 ~SIZE~0)} {15502#true} #90#return; {15633#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:22,507 INFO L290 TraceCheckUtils]: 2: Hoare triple {15633#(< 1 ~SIZE~0)} assume true; {15633#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:22,507 INFO L290 TraceCheckUtils]: 1: Hoare triple {15502#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {15633#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:22,507 INFO L272 TraceCheckUtils]: 0: Hoare triple {15502#true} call ULTIMATE.init(); {15502#true} is VALID [2022-04-28 03:57:22,507 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:57:22,507 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1508246481] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 03:57:22,507 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 03:57:22,508 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 03:57:22,819 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:57:22,819 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [338622861] [2022-04-28 03:57:22,819 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [338622861] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:57:22,819 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:57:22,819 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-28 03:57:22,819 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1723401067] [2022-04-28 03:57:22,819 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:57:22,820 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 1.9375) internal successors, (31), 15 states have internal predecessors, (31), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 37 [2022-04-28 03:57:22,820 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:57:22,820 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 16 states have (on average 1.9375) internal successors, (31), 15 states have internal predecessors, (31), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:22,843 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:57:22,843 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-28 03:57:22,843 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:57:22,843 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-28 03:57:22,844 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=152, Invalid=448, Unknown=0, NotChecked=0, Total=600 [2022-04-28 03:57:22,844 INFO L87 Difference]: Start difference. First operand 179 states and 221 transitions. Second operand has 16 states, 16 states have (on average 1.9375) internal successors, (31), 15 states have internal predecessors, (31), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:24,257 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:57:24,257 INFO L93 Difference]: Finished difference Result 342 states and 424 transitions. [2022-04-28 03:57:24,257 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-28 03:57:24,257 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 1.9375) internal successors, (31), 15 states have internal predecessors, (31), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 37 [2022-04-28 03:57:24,257 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:57:24,257 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 1.9375) internal successors, (31), 15 states have internal predecessors, (31), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:24,258 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 88 transitions. [2022-04-28 03:57:24,258 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 1.9375) internal successors, (31), 15 states have internal predecessors, (31), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:24,259 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 88 transitions. [2022-04-28 03:57:24,259 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 88 transitions. [2022-04-28 03:57:24,320 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 88 edges. 88 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:57:24,323 INFO L225 Difference]: With dead ends: 342 [2022-04-28 03:57:24,323 INFO L226 Difference]: Without dead ends: 213 [2022-04-28 03:57:24,323 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 85 GetRequests, 54 SyntacticMatches, 5 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 365 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=185, Invalid=571, Unknown=0, NotChecked=0, Total=756 [2022-04-28 03:57:24,324 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 57 mSDsluCounter, 17 mSDsCounter, 0 mSdLazyCounter, 512 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 58 SdHoareTripleChecker+Valid, 41 SdHoareTripleChecker+Invalid, 527 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 512 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 03:57:24,324 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [58 Valid, 41 Invalid, 527 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 512 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 03:57:24,324 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 213 states. [2022-04-28 03:57:24,861 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 213 to 179. [2022-04-28 03:57:24,861 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:57:24,861 INFO L82 GeneralOperation]: Start isEquivalent. First operand 213 states. Second operand has 179 states, 164 states have (on average 1.2439024390243902) internal successors, (204), 167 states have internal predecessors, (204), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:57:24,861 INFO L74 IsIncluded]: Start isIncluded. First operand 213 states. Second operand has 179 states, 164 states have (on average 1.2439024390243902) internal successors, (204), 167 states have internal predecessors, (204), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:57:24,862 INFO L87 Difference]: Start difference. First operand 213 states. Second operand has 179 states, 164 states have (on average 1.2439024390243902) internal successors, (204), 167 states have internal predecessors, (204), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:57:24,864 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:57:24,864 INFO L93 Difference]: Finished difference Result 213 states and 259 transitions. [2022-04-28 03:57:24,864 INFO L276 IsEmpty]: Start isEmpty. Operand 213 states and 259 transitions. [2022-04-28 03:57:24,865 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:57:24,865 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:57:24,865 INFO L74 IsIncluded]: Start isIncluded. First operand has 179 states, 164 states have (on average 1.2439024390243902) internal successors, (204), 167 states have internal predecessors, (204), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 213 states. [2022-04-28 03:57:24,865 INFO L87 Difference]: Start difference. First operand has 179 states, 164 states have (on average 1.2439024390243902) internal successors, (204), 167 states have internal predecessors, (204), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 213 states. [2022-04-28 03:57:24,868 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:57:24,868 INFO L93 Difference]: Finished difference Result 213 states and 259 transitions. [2022-04-28 03:57:24,868 INFO L276 IsEmpty]: Start isEmpty. Operand 213 states and 259 transitions. [2022-04-28 03:57:24,868 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:57:24,868 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:57:24,868 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:57:24,868 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:57:24,869 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 179 states, 164 states have (on average 1.2439024390243902) internal successors, (204), 167 states have internal predecessors, (204), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:57:24,871 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 179 states to 179 states and 221 transitions. [2022-04-28 03:57:24,871 INFO L78 Accepts]: Start accepts. Automaton has 179 states and 221 transitions. Word has length 37 [2022-04-28 03:57:24,871 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:57:24,871 INFO L495 AbstractCegarLoop]: Abstraction has 179 states and 221 transitions. [2022-04-28 03:57:24,871 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 16 states have (on average 1.9375) internal successors, (31), 15 states have internal predecessors, (31), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:24,871 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 179 states and 221 transitions. [2022-04-28 03:57:25,160 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 221 edges. 221 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:57:25,161 INFO L276 IsEmpty]: Start isEmpty. Operand 179 states and 221 transitions. [2022-04-28 03:57:25,161 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-28 03:57:25,161 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:57:25,161 INFO L195 NwaCegarLoop]: trace histogram [5, 5, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:57:25,184 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-04-28 03:57:25,376 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable17 [2022-04-28 03:57:25,376 INFO L420 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:57:25,376 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:57:25,376 INFO L85 PathProgramCache]: Analyzing trace with hash 75399261, now seen corresponding path program 10 times [2022-04-28 03:57:25,376 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:57:25,376 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [435391584] [2022-04-28 03:57:25,595 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:57:29,698 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:57:29,795 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:57:29,796 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:57:29,799 INFO L85 PathProgramCache]: Analyzing trace with hash -645525055, now seen corresponding path program 1 times [2022-04-28 03:57:29,799 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:57:29,799 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2144721283] [2022-04-28 03:57:29,799 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:57:29,799 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:57:29,807 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:29,854 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:57:29,855 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:29,860 INFO L290 TraceCheckUtils]: 0: Hoare triple {17171#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {17163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:29,860 INFO L290 TraceCheckUtils]: 1: Hoare triple {17163#(<= 200000 ~SIZE~0)} assume true; {17163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:29,860 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {17163#(<= 200000 ~SIZE~0)} {17158#true} #90#return; {17163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:29,861 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:57:29,861 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:29,863 INFO L290 TraceCheckUtils]: 0: Hoare triple {17158#true} ~cond := #in~cond; {17158#true} is VALID [2022-04-28 03:57:29,863 INFO L290 TraceCheckUtils]: 1: Hoare triple {17158#true} assume !(0 == ~cond); {17158#true} is VALID [2022-04-28 03:57:29,863 INFO L290 TraceCheckUtils]: 2: Hoare triple {17158#true} assume true; {17158#true} is VALID [2022-04-28 03:57:29,864 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17158#true} {17163#(<= 200000 ~SIZE~0)} #86#return; {17163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:29,864 INFO L272 TraceCheckUtils]: 0: Hoare triple {17158#true} call ULTIMATE.init(); {17171#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:57:29,865 INFO L290 TraceCheckUtils]: 1: Hoare triple {17171#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {17163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:29,865 INFO L290 TraceCheckUtils]: 2: Hoare triple {17163#(<= 200000 ~SIZE~0)} assume true; {17163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:29,865 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17163#(<= 200000 ~SIZE~0)} {17158#true} #90#return; {17163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:29,866 INFO L272 TraceCheckUtils]: 4: Hoare triple {17163#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {17163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:29,866 INFO L290 TraceCheckUtils]: 5: Hoare triple {17163#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {17163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:29,866 INFO L272 TraceCheckUtils]: 6: Hoare triple {17163#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {17158#true} is VALID [2022-04-28 03:57:29,866 INFO L290 TraceCheckUtils]: 7: Hoare triple {17158#true} ~cond := #in~cond; {17158#true} is VALID [2022-04-28 03:57:29,866 INFO L290 TraceCheckUtils]: 8: Hoare triple {17158#true} assume !(0 == ~cond); {17158#true} is VALID [2022-04-28 03:57:29,866 INFO L290 TraceCheckUtils]: 9: Hoare triple {17158#true} assume true; {17158#true} is VALID [2022-04-28 03:57:29,867 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17158#true} {17163#(<= 200000 ~SIZE~0)} #86#return; {17163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:29,867 INFO L290 TraceCheckUtils]: 11: Hoare triple {17163#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {17163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:29,867 INFO L290 TraceCheckUtils]: 12: Hoare triple {17163#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {17168#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:29,868 INFO L290 TraceCheckUtils]: 13: Hoare triple {17168#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [144] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_157| |v_main_#t~post5_155|)) (.cse1 (= v_main_~st~0_131 v_main_~st~0_130)) (.cse3 (<= v_~last~0_121 v_main_~c~0_253)) (.cse2 (= v_main_~c~0_253 v_main_~c~0_252))) (or (and .cse0 .cse1 (= v_~last~0_121 v_~last~0_121) (= v_~SIZE~0_107 v_~SIZE~0_107) .cse2) (and (< v_main_~c~0_252 (+ v_~SIZE~0_107 1)) (< v_main_~c~0_253 v_main_~c~0_252) (= v_main_~st~0_130 0) .cse3) (and .cse0 .cse1 (or (not (< v_main_~c~0_253 v_~SIZE~0_107)) (not .cse3)) .cse2))) InVars {~SIZE~0=v_~SIZE~0_107, main_~c~0=v_main_~c~0_253, main_#t~post5=|v_main_#t~post5_157|, main_~st~0=v_main_~st~0_131, ~last~0=v_~last~0_121} OutVars{~SIZE~0=v_~SIZE~0_107, main_#t~post5=|v_main_#t~post5_155|, main_~c~0=v_main_~c~0_252, main_~st~0=v_main_~st~0_130, ~last~0=v_~last~0_121} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {17169#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:57:29,869 INFO L290 TraceCheckUtils]: 14: Hoare triple {17169#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [145] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {17169#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:57:29,869 INFO L290 TraceCheckUtils]: 15: Hoare triple {17169#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [146] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_255 v_main_~c~0_254))) (or (and (= |v_main_#t~post5_160| |v_main_#t~post5_156|) .cse0 (= v_~SIZE~0_108 v_~SIZE~0_108) (= v_~last~0_122 v_~last~0_122)) (and (< v_main_~c~0_255 v_main_~c~0_254) (< v_main_~c~0_254 (+ v_~last~0_122 1)) (< v_main_~c~0_254 (+ v_~SIZE~0_108 1))) (and (or (not (< v_main_~c~0_255 v_~SIZE~0_108)) (not (< v_main_~c~0_255 v_~last~0_122))) (= |v_main_#t~post5_156| |v_main_#t~post5_160|) .cse0))) InVars {~SIZE~0=v_~SIZE~0_108, main_~c~0=v_main_~c~0_255, main_#t~post5=|v_main_#t~post5_160|, ~last~0=v_~last~0_122} OutVars{~SIZE~0=v_~SIZE~0_108, main_#t~post5=|v_main_#t~post5_156|, main_~c~0=v_main_~c~0_254, ~last~0=v_~last~0_122} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {17169#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:57:29,869 INFO L290 TraceCheckUtils]: 16: Hoare triple {17169#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [143] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {17170#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 03:57:29,870 INFO L290 TraceCheckUtils]: 17: Hoare triple {17170#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {17159#false} is VALID [2022-04-28 03:57:29,870 INFO L290 TraceCheckUtils]: 18: Hoare triple {17159#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {17159#false} is VALID [2022-04-28 03:57:29,870 INFO L290 TraceCheckUtils]: 19: Hoare triple {17159#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {17159#false} is VALID [2022-04-28 03:57:29,870 INFO L290 TraceCheckUtils]: 20: Hoare triple {17159#false} assume !(~d~0 == ~SIZE~0); {17159#false} is VALID [2022-04-28 03:57:29,870 INFO L272 TraceCheckUtils]: 21: Hoare triple {17159#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {17159#false} is VALID [2022-04-28 03:57:29,870 INFO L290 TraceCheckUtils]: 22: Hoare triple {17159#false} ~cond := #in~cond; {17159#false} is VALID [2022-04-28 03:57:29,870 INFO L290 TraceCheckUtils]: 23: Hoare triple {17159#false} assume 0 == ~cond; {17159#false} is VALID [2022-04-28 03:57:29,870 INFO L290 TraceCheckUtils]: 24: Hoare triple {17159#false} assume !false; {17159#false} is VALID [2022-04-28 03:57:29,871 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:57:29,871 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:57:29,871 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2144721283] [2022-04-28 03:57:29,871 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2144721283] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 03:57:29,871 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [76522031] [2022-04-28 03:57:29,871 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:57:29,871 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:57:29,871 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 03:57:29,880 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 03:57:29,882 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-04-28 03:57:29,910 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:29,910 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 03:57:29,916 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:29,917 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 03:57:30,159 INFO L272 TraceCheckUtils]: 0: Hoare triple {17158#true} call ULTIMATE.init(); {17158#true} is VALID [2022-04-28 03:57:30,160 INFO L290 TraceCheckUtils]: 1: Hoare triple {17158#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {17163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:30,160 INFO L290 TraceCheckUtils]: 2: Hoare triple {17163#(<= 200000 ~SIZE~0)} assume true; {17163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:30,160 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17163#(<= 200000 ~SIZE~0)} {17158#true} #90#return; {17163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:30,161 INFO L272 TraceCheckUtils]: 4: Hoare triple {17163#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {17163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:30,161 INFO L290 TraceCheckUtils]: 5: Hoare triple {17163#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {17163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:30,162 INFO L272 TraceCheckUtils]: 6: Hoare triple {17163#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {17163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:30,162 INFO L290 TraceCheckUtils]: 7: Hoare triple {17163#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {17163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:30,162 INFO L290 TraceCheckUtils]: 8: Hoare triple {17163#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {17163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:30,163 INFO L290 TraceCheckUtils]: 9: Hoare triple {17163#(<= 200000 ~SIZE~0)} assume true; {17163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:30,163 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17163#(<= 200000 ~SIZE~0)} {17163#(<= 200000 ~SIZE~0)} #86#return; {17163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:30,163 INFO L290 TraceCheckUtils]: 11: Hoare triple {17163#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {17163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:30,164 INFO L290 TraceCheckUtils]: 12: Hoare triple {17163#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {17211#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:30,165 INFO L290 TraceCheckUtils]: 13: Hoare triple {17211#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [144] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_157| |v_main_#t~post5_155|)) (.cse1 (= v_main_~st~0_131 v_main_~st~0_130)) (.cse3 (<= v_~last~0_121 v_main_~c~0_253)) (.cse2 (= v_main_~c~0_253 v_main_~c~0_252))) (or (and .cse0 .cse1 (= v_~last~0_121 v_~last~0_121) (= v_~SIZE~0_107 v_~SIZE~0_107) .cse2) (and (< v_main_~c~0_252 (+ v_~SIZE~0_107 1)) (< v_main_~c~0_253 v_main_~c~0_252) (= v_main_~st~0_130 0) .cse3) (and .cse0 .cse1 (or (not (< v_main_~c~0_253 v_~SIZE~0_107)) (not .cse3)) .cse2))) InVars {~SIZE~0=v_~SIZE~0_107, main_~c~0=v_main_~c~0_253, main_#t~post5=|v_main_#t~post5_157|, main_~st~0=v_main_~st~0_131, ~last~0=v_~last~0_121} OutVars{~SIZE~0=v_~SIZE~0_107, main_#t~post5=|v_main_#t~post5_155|, main_~c~0=v_main_~c~0_252, main_~st~0=v_main_~st~0_130, ~last~0=v_~last~0_121} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {17215#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:30,165 INFO L290 TraceCheckUtils]: 14: Hoare triple {17215#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [145] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {17215#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:30,166 INFO L290 TraceCheckUtils]: 15: Hoare triple {17215#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [146] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_255 v_main_~c~0_254))) (or (and (= |v_main_#t~post5_160| |v_main_#t~post5_156|) .cse0 (= v_~SIZE~0_108 v_~SIZE~0_108) (= v_~last~0_122 v_~last~0_122)) (and (< v_main_~c~0_255 v_main_~c~0_254) (< v_main_~c~0_254 (+ v_~last~0_122 1)) (< v_main_~c~0_254 (+ v_~SIZE~0_108 1))) (and (or (not (< v_main_~c~0_255 v_~SIZE~0_108)) (not (< v_main_~c~0_255 v_~last~0_122))) (= |v_main_#t~post5_156| |v_main_#t~post5_160|) .cse0))) InVars {~SIZE~0=v_~SIZE~0_108, main_~c~0=v_main_~c~0_255, main_#t~post5=|v_main_#t~post5_160|, ~last~0=v_~last~0_122} OutVars{~SIZE~0=v_~SIZE~0_108, main_#t~post5=|v_main_#t~post5_156|, main_~c~0=v_main_~c~0_254, ~last~0=v_~last~0_122} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {17215#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:30,166 INFO L290 TraceCheckUtils]: 16: Hoare triple {17215#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [143] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {17225#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 03:57:30,167 INFO L290 TraceCheckUtils]: 17: Hoare triple {17225#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {17159#false} is VALID [2022-04-28 03:57:30,167 INFO L290 TraceCheckUtils]: 18: Hoare triple {17159#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {17159#false} is VALID [2022-04-28 03:57:30,167 INFO L290 TraceCheckUtils]: 19: Hoare triple {17159#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {17159#false} is VALID [2022-04-28 03:57:30,167 INFO L290 TraceCheckUtils]: 20: Hoare triple {17159#false} assume !(~d~0 == ~SIZE~0); {17159#false} is VALID [2022-04-28 03:57:30,167 INFO L272 TraceCheckUtils]: 21: Hoare triple {17159#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {17159#false} is VALID [2022-04-28 03:57:30,167 INFO L290 TraceCheckUtils]: 22: Hoare triple {17159#false} ~cond := #in~cond; {17159#false} is VALID [2022-04-28 03:57:30,167 INFO L290 TraceCheckUtils]: 23: Hoare triple {17159#false} assume 0 == ~cond; {17159#false} is VALID [2022-04-28 03:57:30,168 INFO L290 TraceCheckUtils]: 24: Hoare triple {17159#false} assume !false; {17159#false} is VALID [2022-04-28 03:57:30,168 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:57:30,168 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 03:57:30,477 INFO L290 TraceCheckUtils]: 24: Hoare triple {17159#false} assume !false; {17159#false} is VALID [2022-04-28 03:57:30,477 INFO L290 TraceCheckUtils]: 23: Hoare triple {17159#false} assume 0 == ~cond; {17159#false} is VALID [2022-04-28 03:57:30,477 INFO L290 TraceCheckUtils]: 22: Hoare triple {17159#false} ~cond := #in~cond; {17159#false} is VALID [2022-04-28 03:57:30,477 INFO L272 TraceCheckUtils]: 21: Hoare triple {17159#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {17159#false} is VALID [2022-04-28 03:57:30,477 INFO L290 TraceCheckUtils]: 20: Hoare triple {17159#false} assume !(~d~0 == ~SIZE~0); {17159#false} is VALID [2022-04-28 03:57:30,477 INFO L290 TraceCheckUtils]: 19: Hoare triple {17159#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {17159#false} is VALID [2022-04-28 03:57:30,478 INFO L290 TraceCheckUtils]: 18: Hoare triple {17159#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {17159#false} is VALID [2022-04-28 03:57:30,478 INFO L290 TraceCheckUtils]: 17: Hoare triple {17271#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {17159#false} is VALID [2022-04-28 03:57:30,478 INFO L290 TraceCheckUtils]: 16: Hoare triple {17275#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [143] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {17271#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 03:57:30,479 INFO L290 TraceCheckUtils]: 15: Hoare triple {17275#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [146] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_255 v_main_~c~0_254))) (or (and (= |v_main_#t~post5_160| |v_main_#t~post5_156|) .cse0 (= v_~SIZE~0_108 v_~SIZE~0_108) (= v_~last~0_122 v_~last~0_122)) (and (< v_main_~c~0_255 v_main_~c~0_254) (< v_main_~c~0_254 (+ v_~last~0_122 1)) (< v_main_~c~0_254 (+ v_~SIZE~0_108 1))) (and (or (not (< v_main_~c~0_255 v_~SIZE~0_108)) (not (< v_main_~c~0_255 v_~last~0_122))) (= |v_main_#t~post5_156| |v_main_#t~post5_160|) .cse0))) InVars {~SIZE~0=v_~SIZE~0_108, main_~c~0=v_main_~c~0_255, main_#t~post5=|v_main_#t~post5_160|, ~last~0=v_~last~0_122} OutVars{~SIZE~0=v_~SIZE~0_108, main_#t~post5=|v_main_#t~post5_156|, main_~c~0=v_main_~c~0_254, ~last~0=v_~last~0_122} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {17275#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:57:30,479 INFO L290 TraceCheckUtils]: 14: Hoare triple {17275#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [145] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {17275#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:57:30,480 INFO L290 TraceCheckUtils]: 13: Hoare triple {17285#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [144] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_157| |v_main_#t~post5_155|)) (.cse1 (= v_main_~st~0_131 v_main_~st~0_130)) (.cse3 (<= v_~last~0_121 v_main_~c~0_253)) (.cse2 (= v_main_~c~0_253 v_main_~c~0_252))) (or (and .cse0 .cse1 (= v_~last~0_121 v_~last~0_121) (= v_~SIZE~0_107 v_~SIZE~0_107) .cse2) (and (< v_main_~c~0_252 (+ v_~SIZE~0_107 1)) (< v_main_~c~0_253 v_main_~c~0_252) (= v_main_~st~0_130 0) .cse3) (and .cse0 .cse1 (or (not (< v_main_~c~0_253 v_~SIZE~0_107)) (not .cse3)) .cse2))) InVars {~SIZE~0=v_~SIZE~0_107, main_~c~0=v_main_~c~0_253, main_#t~post5=|v_main_#t~post5_157|, main_~st~0=v_main_~st~0_131, ~last~0=v_~last~0_121} OutVars{~SIZE~0=v_~SIZE~0_107, main_#t~post5=|v_main_#t~post5_155|, main_~c~0=v_main_~c~0_252, main_~st~0=v_main_~st~0_130, ~last~0=v_~last~0_121} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {17275#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:57:30,480 INFO L290 TraceCheckUtils]: 12: Hoare triple {17289#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {17285#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 03:57:30,481 INFO L290 TraceCheckUtils]: 11: Hoare triple {17289#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {17289#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:30,481 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {17158#true} {17289#(< 1 ~SIZE~0)} #86#return; {17289#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:30,481 INFO L290 TraceCheckUtils]: 9: Hoare triple {17158#true} assume true; {17158#true} is VALID [2022-04-28 03:57:30,481 INFO L290 TraceCheckUtils]: 8: Hoare triple {17158#true} assume !(0 == ~cond); {17158#true} is VALID [2022-04-28 03:57:30,481 INFO L290 TraceCheckUtils]: 7: Hoare triple {17158#true} ~cond := #in~cond; {17158#true} is VALID [2022-04-28 03:57:30,481 INFO L272 TraceCheckUtils]: 6: Hoare triple {17289#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {17158#true} is VALID [2022-04-28 03:57:30,482 INFO L290 TraceCheckUtils]: 5: Hoare triple {17289#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {17289#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:30,482 INFO L272 TraceCheckUtils]: 4: Hoare triple {17289#(< 1 ~SIZE~0)} call #t~ret7 := main(); {17289#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:30,482 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {17289#(< 1 ~SIZE~0)} {17158#true} #90#return; {17289#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:30,482 INFO L290 TraceCheckUtils]: 2: Hoare triple {17289#(< 1 ~SIZE~0)} assume true; {17289#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:30,483 INFO L290 TraceCheckUtils]: 1: Hoare triple {17158#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {17289#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:30,483 INFO L272 TraceCheckUtils]: 0: Hoare triple {17158#true} call ULTIMATE.init(); {17158#true} is VALID [2022-04-28 03:57:30,483 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:57:30,483 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [76522031] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 03:57:30,483 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 03:57:30,483 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 03:57:30,803 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:57:30,803 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [435391584] [2022-04-28 03:57:30,803 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [435391584] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:57:30,803 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:57:30,803 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [17] imperfect sequences [] total 17 [2022-04-28 03:57:30,803 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1641261690] [2022-04-28 03:57:30,804 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:57:30,804 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 1.8235294117647058) internal successors, (31), 16 states have internal predecessors, (31), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 37 [2022-04-28 03:57:30,804 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:57:30,804 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 17 states, 17 states have (on average 1.8235294117647058) internal successors, (31), 16 states have internal predecessors, (31), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:30,828 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:57:30,828 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-28 03:57:30,828 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:57:30,828 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-28 03:57:30,828 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=167, Invalid=483, Unknown=0, NotChecked=0, Total=650 [2022-04-28 03:57:30,828 INFO L87 Difference]: Start difference. First operand 179 states and 221 transitions. Second operand has 17 states, 17 states have (on average 1.8235294117647058) internal successors, (31), 16 states have internal predecessors, (31), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:32,329 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:57:32,329 INFO L93 Difference]: Finished difference Result 356 states and 448 transitions. [2022-04-28 03:57:32,329 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-04-28 03:57:32,330 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 1.8235294117647058) internal successors, (31), 16 states have internal predecessors, (31), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 37 [2022-04-28 03:57:32,330 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:57:32,330 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 1.8235294117647058) internal successors, (31), 16 states have internal predecessors, (31), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:32,330 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 90 transitions. [2022-04-28 03:57:32,331 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 1.8235294117647058) internal successors, (31), 16 states have internal predecessors, (31), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:32,331 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 90 transitions. [2022-04-28 03:57:32,332 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 17 states and 90 transitions. [2022-04-28 03:57:32,401 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 90 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:57:32,404 INFO L225 Difference]: With dead ends: 356 [2022-04-28 03:57:32,404 INFO L226 Difference]: Without dead ends: 216 [2022-04-28 03:57:32,404 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 85 GetRequests, 54 SyntacticMatches, 4 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 359 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=202, Invalid=610, Unknown=0, NotChecked=0, Total=812 [2022-04-28 03:57:32,405 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 59 mSDsluCounter, 19 mSDsCounter, 0 mSdLazyCounter, 585 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 60 SdHoareTripleChecker+Valid, 43 SdHoareTripleChecker+Invalid, 602 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 585 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 03:57:32,405 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [60 Valid, 43 Invalid, 602 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 585 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 03:57:32,405 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 216 states. [2022-04-28 03:57:32,984 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 216 to 191. [2022-04-28 03:57:32,984 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:57:32,985 INFO L82 GeneralOperation]: Start isEquivalent. First operand 216 states. Second operand has 191 states, 176 states have (on average 1.25) internal successors, (220), 179 states have internal predecessors, (220), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:57:32,985 INFO L74 IsIncluded]: Start isIncluded. First operand 216 states. Second operand has 191 states, 176 states have (on average 1.25) internal successors, (220), 179 states have internal predecessors, (220), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:57:32,985 INFO L87 Difference]: Start difference. First operand 216 states. Second operand has 191 states, 176 states have (on average 1.25) internal successors, (220), 179 states have internal predecessors, (220), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:57:32,989 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:57:32,989 INFO L93 Difference]: Finished difference Result 216 states and 266 transitions. [2022-04-28 03:57:32,989 INFO L276 IsEmpty]: Start isEmpty. Operand 216 states and 266 transitions. [2022-04-28 03:57:32,990 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:57:32,990 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:57:32,990 INFO L74 IsIncluded]: Start isIncluded. First operand has 191 states, 176 states have (on average 1.25) internal successors, (220), 179 states have internal predecessors, (220), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 216 states. [2022-04-28 03:57:32,990 INFO L87 Difference]: Start difference. First operand has 191 states, 176 states have (on average 1.25) internal successors, (220), 179 states have internal predecessors, (220), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 216 states. [2022-04-28 03:57:32,993 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:57:32,994 INFO L93 Difference]: Finished difference Result 216 states and 266 transitions. [2022-04-28 03:57:32,994 INFO L276 IsEmpty]: Start isEmpty. Operand 216 states and 266 transitions. [2022-04-28 03:57:32,994 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:57:32,994 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:57:32,994 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:57:32,994 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:57:32,994 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 191 states, 176 states have (on average 1.25) internal successors, (220), 179 states have internal predecessors, (220), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:57:32,998 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 191 states to 191 states and 237 transitions. [2022-04-28 03:57:32,998 INFO L78 Accepts]: Start accepts. Automaton has 191 states and 237 transitions. Word has length 37 [2022-04-28 03:57:32,998 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:57:32,998 INFO L495 AbstractCegarLoop]: Abstraction has 191 states and 237 transitions. [2022-04-28 03:57:32,998 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 17 states have (on average 1.8235294117647058) internal successors, (31), 16 states have internal predecessors, (31), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:32,998 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 191 states and 237 transitions. [2022-04-28 03:57:33,302 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 237 edges. 237 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:57:33,302 INFO L276 IsEmpty]: Start isEmpty. Operand 191 states and 237 transitions. [2022-04-28 03:57:33,303 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-28 03:57:33,303 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:57:33,303 INFO L195 NwaCegarLoop]: trace histogram [2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:57:33,319 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2022-04-28 03:57:33,503 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable18,11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:57:33,503 INFO L420 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:57:33,504 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:57:33,504 INFO L85 PathProgramCache]: Analyzing trace with hash 1742651763, now seen corresponding path program 1 times [2022-04-28 03:57:33,504 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:57:33,504 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [115084698] [2022-04-28 03:57:33,720 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 4 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {-1={1=1}, 0={1=2}, 1={2=1}}, 0 SequentialAcceleration, 1 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:57:33,821 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 4 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {-1={1=1}, 0={1=2}, 1={2=1}}, 0 SequentialAcceleration, 1 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:57:33,821 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:57:33,822 INFO L85 PathProgramCache]: Analyzing trace with hash -79962674, now seen corresponding path program 1 times [2022-04-28 03:57:33,822 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:57:33,822 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1089784541] [2022-04-28 03:57:33,822 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:57:33,822 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:57:33,833 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:33,870 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:57:33,872 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:33,877 INFO L290 TraceCheckUtils]: 0: Hoare triple {18885#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {18878#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:33,878 INFO L290 TraceCheckUtils]: 1: Hoare triple {18878#(<= 200000 ~SIZE~0)} assume true; {18878#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:33,881 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {18878#(<= 200000 ~SIZE~0)} {18873#true} #90#return; {18878#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:33,881 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:57:33,882 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:33,884 INFO L290 TraceCheckUtils]: 0: Hoare triple {18873#true} ~cond := #in~cond; {18873#true} is VALID [2022-04-28 03:57:33,884 INFO L290 TraceCheckUtils]: 1: Hoare triple {18873#true} assume !(0 == ~cond); {18873#true} is VALID [2022-04-28 03:57:33,884 INFO L290 TraceCheckUtils]: 2: Hoare triple {18873#true} assume true; {18873#true} is VALID [2022-04-28 03:57:33,884 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18873#true} {18878#(<= 200000 ~SIZE~0)} #86#return; {18878#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:33,885 INFO L272 TraceCheckUtils]: 0: Hoare triple {18873#true} call ULTIMATE.init(); {18885#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:57:33,885 INFO L290 TraceCheckUtils]: 1: Hoare triple {18885#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {18878#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:33,885 INFO L290 TraceCheckUtils]: 2: Hoare triple {18878#(<= 200000 ~SIZE~0)} assume true; {18878#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:33,886 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18878#(<= 200000 ~SIZE~0)} {18873#true} #90#return; {18878#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:33,886 INFO L272 TraceCheckUtils]: 4: Hoare triple {18878#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {18878#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:33,886 INFO L290 TraceCheckUtils]: 5: Hoare triple {18878#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {18878#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:33,886 INFO L272 TraceCheckUtils]: 6: Hoare triple {18878#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {18873#true} is VALID [2022-04-28 03:57:33,887 INFO L290 TraceCheckUtils]: 7: Hoare triple {18873#true} ~cond := #in~cond; {18873#true} is VALID [2022-04-28 03:57:33,887 INFO L290 TraceCheckUtils]: 8: Hoare triple {18873#true} assume !(0 == ~cond); {18873#true} is VALID [2022-04-28 03:57:33,887 INFO L290 TraceCheckUtils]: 9: Hoare triple {18873#true} assume true; {18873#true} is VALID [2022-04-28 03:57:33,887 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18873#true} {18878#(<= 200000 ~SIZE~0)} #86#return; {18878#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:33,887 INFO L290 TraceCheckUtils]: 11: Hoare triple {18878#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {18878#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:33,888 INFO L290 TraceCheckUtils]: 12: Hoare triple {18878#(<= 200000 ~SIZE~0)} [148] L44-->L27-3_primed: Formula: (let ((.cse12 (= v_~SIZE~0_117 v_main_~d~0_16)) (.cse11 (= (+ v_~last~0_131 1) 1))) (let ((.cse0 (= v_main_~st~0_140 0)) (.cse2 (= v_main_~c~0_276 1)) (.cse4 (not .cse11)) (.cse5 (not .cse12)) (.cse1 (= v_main_~a~0_47 v_main_~b~0_43)) (.cse6 (= v_~SIZE~0_117 1)) (.cse3 (<= v_~last~0_131 0)) (.cse7 (= |v_main_#t~post5_169| |v_main_#t~post5_168|)) (.cse8 (= v_main_~st~0_142 v_main_~st~0_140)) (.cse9 (= v_main_~c~0_278 v_main_~c~0_276)) (.cse10 (= v_main_~b~0_43 v_main_~b~0_42))) (or (and .cse0 (= (+ (* (div (+ (- v_main_~b~0_43) (- 2) v_main_~b~0_42) 4) 4) 2 v_main_~a~0_47) v_main_~a~0_46) (= (mod (+ 2 (* 3 v_main_~b~0_43) v_main_~b~0_42) 4) 0) (<= 0 (div (+ (- 2) v_main_~b~0_42 (* (- 1) v_main_~b~0_43)) 4)) .cse1 .cse2 .cse3 .cse4 .cse5 .cse6) (and .cse0 .cse1 .cse2 (< 0 (div (+ (* (- 1) v_main_~a~0_47) v_main_~a~0_46) 4)) (= (+ (* 4 (div (+ (- v_main_~a~0_47) v_main_~a~0_46) 4)) v_main_~b~0_43) v_main_~b~0_42) .cse3 .cse4 (= (mod (+ (* 3 v_main_~a~0_47) v_main_~a~0_46) 4) 0) .cse5 .cse6) (and .cse7 .cse8 .cse9 (= v_main_~a~0_46 v_main_~a~0_47) .cse10 (or .cse11 (not .cse1) (not .cse6) (not .cse3) .cse12)) (and .cse7 (= v_main_~a~0_47 v_main_~a~0_46) .cse8 .cse9 (= v_main_~d~0_16 v_main_~d~0_16) (= v_~last~0_131 v_~last~0_131) .cse10 (= v_~SIZE~0_117 v_~SIZE~0_117))))) InVars {~SIZE~0=v_~SIZE~0_117, main_~c~0=v_main_~c~0_278, main_#t~post5=|v_main_#t~post5_169|, main_~d~0=v_main_~d~0_16, main_~st~0=v_main_~st~0_142, main_~b~0=v_main_~b~0_43, ~last~0=v_~last~0_131, main_~a~0=v_main_~a~0_47} OutVars{~SIZE~0=v_~SIZE~0_117, main_~c~0=v_main_~c~0_276, main_#t~post5=|v_main_#t~post5_168|, main_~d~0=v_main_~d~0_16, main_~st~0=v_main_~st~0_140, main_~b~0=v_main_~b~0_42, ~last~0=v_~last~0_131, main_~a~0=v_main_~a~0_46} AuxVars[] AssignedVars[main_~c~0, main_#t~post5, main_~st~0, main_~b~0, main_~a~0] {18878#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:33,888 INFO L290 TraceCheckUtils]: 13: Hoare triple {18878#(<= 200000 ~SIZE~0)} [149] L27-3_primed-->L44: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {18878#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:33,888 INFO L290 TraceCheckUtils]: 14: Hoare triple {18878#(<= 200000 ~SIZE~0)} [150] L44-->L27-3_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_170| |v_main_#t~post5_168|)) (.cse1 (= v_main_~c~0_279 v_main_~c~0_276)) (.cse2 (= v_main_~b~0_43 v_main_~b~0_42)) (.cse3 (= v_main_~st~0_143 v_main_~st~0_140))) (or (and .cse0 (= v_main_~a~0_46 v_main_~a~0_47) .cse1 .cse2 .cse3) (and (= v_main_~a~0_47 v_main_~a~0_46) .cse0 .cse1 .cse2 .cse3))) InVars {main_~c~0=v_main_~c~0_279, main_#t~post5=|v_main_#t~post5_170|, main_~st~0=v_main_~st~0_143, main_~b~0=v_main_~b~0_43, main_~a~0=v_main_~a~0_47} OutVars{main_~c~0=v_main_~c~0_276, main_#t~post5=|v_main_#t~post5_168|, main_~st~0=v_main_~st~0_140, main_~b~0=v_main_~b~0_42, main_~a~0=v_main_~a~0_46} AuxVars[] AssignedVars[main_~c~0, main_#t~post5, main_~st~0, main_~b~0, main_~a~0] {18878#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:33,889 INFO L290 TraceCheckUtils]: 15: Hoare triple {18878#(<= 200000 ~SIZE~0)} [147] L27-3_primed-->L27-3: Formula: (and (= 0 v_main_~c~0_10) (= v_main_~st~0_7 1)) InVars {} OutVars{main_~c~0=v_main_~c~0_10, main_~st~0=v_main_~st~0_7} AuxVars[] AssignedVars[main_~c~0, main_~st~0] {18883#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:33,889 INFO L290 TraceCheckUtils]: 16: Hoare triple {18883#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} assume !!(~c~0 < ~SIZE~0); {18883#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:33,889 INFO L290 TraceCheckUtils]: 17: Hoare triple {18883#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} assume ~c~0 >= ~last~0;~st~0 := 0; {18883#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:33,890 INFO L290 TraceCheckUtils]: 18: Hoare triple {18883#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} #t~post5 := ~c~0;~c~0 := 1 + #t~post5;havoc #t~post5; {18884#(<= (+ main_~c~0 199999) ~SIZE~0)} is VALID [2022-04-28 03:57:33,890 INFO L290 TraceCheckUtils]: 19: Hoare triple {18884#(<= (+ main_~c~0 199999) ~SIZE~0)} assume !(~c~0 < ~SIZE~0); {18874#false} is VALID [2022-04-28 03:57:33,890 INFO L290 TraceCheckUtils]: 20: Hoare triple {18874#false} assume !(0 == ~st~0 && ~c~0 == 1 + ~last~0);~a~0 := 2 + ~a~0;~b~0 := 2 + ~b~0; {18874#false} is VALID [2022-04-28 03:57:33,890 INFO L290 TraceCheckUtils]: 21: Hoare triple {18874#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {18874#false} is VALID [2022-04-28 03:57:33,890 INFO L290 TraceCheckUtils]: 22: Hoare triple {18874#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {18874#false} is VALID [2022-04-28 03:57:33,890 INFO L290 TraceCheckUtils]: 23: Hoare triple {18874#false} assume !(~d~0 == ~SIZE~0); {18874#false} is VALID [2022-04-28 03:57:33,891 INFO L272 TraceCheckUtils]: 24: Hoare triple {18874#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {18874#false} is VALID [2022-04-28 03:57:33,891 INFO L290 TraceCheckUtils]: 25: Hoare triple {18874#false} ~cond := #in~cond; {18874#false} is VALID [2022-04-28 03:57:33,891 INFO L290 TraceCheckUtils]: 26: Hoare triple {18874#false} assume 0 == ~cond; {18874#false} is VALID [2022-04-28 03:57:33,891 INFO L290 TraceCheckUtils]: 27: Hoare triple {18874#false} assume !false; {18874#false} is VALID [2022-04-28 03:57:33,891 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-28 03:57:33,891 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:57:33,891 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1089784541] [2022-04-28 03:57:33,891 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1089784541] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 03:57:33,891 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1575128822] [2022-04-28 03:57:33,891 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:57:33,891 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:57:33,891 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 03:57:33,892 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 03:57:33,893 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Waiting until timeout for monitored process [2022-04-28 03:57:33,922 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:33,922 INFO L263 TraceCheckSpWp]: Trace formula consists of 107 conjuncts, 4 conjunts are in the unsatisfiable core [2022-04-28 03:57:33,928 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:33,928 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 03:57:34,054 INFO L272 TraceCheckUtils]: 0: Hoare triple {18873#true} call ULTIMATE.init(); {18873#true} is VALID [2022-04-28 03:57:34,054 INFO L290 TraceCheckUtils]: 1: Hoare triple {18873#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {18878#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:34,055 INFO L290 TraceCheckUtils]: 2: Hoare triple {18878#(<= 200000 ~SIZE~0)} assume true; {18878#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:34,055 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18878#(<= 200000 ~SIZE~0)} {18873#true} #90#return; {18878#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:34,055 INFO L272 TraceCheckUtils]: 4: Hoare triple {18878#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {18878#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:34,056 INFO L290 TraceCheckUtils]: 5: Hoare triple {18878#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {18878#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:34,056 INFO L272 TraceCheckUtils]: 6: Hoare triple {18878#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {18878#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:34,056 INFO L290 TraceCheckUtils]: 7: Hoare triple {18878#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {18878#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:34,056 INFO L290 TraceCheckUtils]: 8: Hoare triple {18878#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {18878#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:34,057 INFO L290 TraceCheckUtils]: 9: Hoare triple {18878#(<= 200000 ~SIZE~0)} assume true; {18878#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:34,057 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18878#(<= 200000 ~SIZE~0)} {18878#(<= 200000 ~SIZE~0)} #86#return; {18878#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:34,057 INFO L290 TraceCheckUtils]: 11: Hoare triple {18878#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {18878#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:34,058 INFO L290 TraceCheckUtils]: 12: Hoare triple {18878#(<= 200000 ~SIZE~0)} [148] L44-->L27-3_primed: Formula: (let ((.cse12 (= v_~SIZE~0_117 v_main_~d~0_16)) (.cse11 (= (+ v_~last~0_131 1) 1))) (let ((.cse0 (= v_main_~st~0_140 0)) (.cse2 (= v_main_~c~0_276 1)) (.cse4 (not .cse11)) (.cse5 (not .cse12)) (.cse1 (= v_main_~a~0_47 v_main_~b~0_43)) (.cse6 (= v_~SIZE~0_117 1)) (.cse3 (<= v_~last~0_131 0)) (.cse7 (= |v_main_#t~post5_169| |v_main_#t~post5_168|)) (.cse8 (= v_main_~st~0_142 v_main_~st~0_140)) (.cse9 (= v_main_~c~0_278 v_main_~c~0_276)) (.cse10 (= v_main_~b~0_43 v_main_~b~0_42))) (or (and .cse0 (= (+ (* (div (+ (- v_main_~b~0_43) (- 2) v_main_~b~0_42) 4) 4) 2 v_main_~a~0_47) v_main_~a~0_46) (= (mod (+ 2 (* 3 v_main_~b~0_43) v_main_~b~0_42) 4) 0) (<= 0 (div (+ (- 2) v_main_~b~0_42 (* (- 1) v_main_~b~0_43)) 4)) .cse1 .cse2 .cse3 .cse4 .cse5 .cse6) (and .cse0 .cse1 .cse2 (< 0 (div (+ (* (- 1) v_main_~a~0_47) v_main_~a~0_46) 4)) (= (+ (* 4 (div (+ (- v_main_~a~0_47) v_main_~a~0_46) 4)) v_main_~b~0_43) v_main_~b~0_42) .cse3 .cse4 (= (mod (+ (* 3 v_main_~a~0_47) v_main_~a~0_46) 4) 0) .cse5 .cse6) (and .cse7 .cse8 .cse9 (= v_main_~a~0_46 v_main_~a~0_47) .cse10 (or .cse11 (not .cse1) (not .cse6) (not .cse3) .cse12)) (and .cse7 (= v_main_~a~0_47 v_main_~a~0_46) .cse8 .cse9 (= v_main_~d~0_16 v_main_~d~0_16) (= v_~last~0_131 v_~last~0_131) .cse10 (= v_~SIZE~0_117 v_~SIZE~0_117))))) InVars {~SIZE~0=v_~SIZE~0_117, main_~c~0=v_main_~c~0_278, main_#t~post5=|v_main_#t~post5_169|, main_~d~0=v_main_~d~0_16, main_~st~0=v_main_~st~0_142, main_~b~0=v_main_~b~0_43, ~last~0=v_~last~0_131, main_~a~0=v_main_~a~0_47} OutVars{~SIZE~0=v_~SIZE~0_117, main_~c~0=v_main_~c~0_276, main_#t~post5=|v_main_#t~post5_168|, main_~d~0=v_main_~d~0_16, main_~st~0=v_main_~st~0_140, main_~b~0=v_main_~b~0_42, ~last~0=v_~last~0_131, main_~a~0=v_main_~a~0_46} AuxVars[] AssignedVars[main_~c~0, main_#t~post5, main_~st~0, main_~b~0, main_~a~0] {18878#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:34,058 INFO L290 TraceCheckUtils]: 13: Hoare triple {18878#(<= 200000 ~SIZE~0)} [149] L27-3_primed-->L44: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {18878#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:34,058 INFO L290 TraceCheckUtils]: 14: Hoare triple {18878#(<= 200000 ~SIZE~0)} [150] L44-->L27-3_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_170| |v_main_#t~post5_168|)) (.cse1 (= v_main_~c~0_279 v_main_~c~0_276)) (.cse2 (= v_main_~b~0_43 v_main_~b~0_42)) (.cse3 (= v_main_~st~0_143 v_main_~st~0_140))) (or (and .cse0 (= v_main_~a~0_46 v_main_~a~0_47) .cse1 .cse2 .cse3) (and (= v_main_~a~0_47 v_main_~a~0_46) .cse0 .cse1 .cse2 .cse3))) InVars {main_~c~0=v_main_~c~0_279, main_#t~post5=|v_main_#t~post5_170|, main_~st~0=v_main_~st~0_143, main_~b~0=v_main_~b~0_43, main_~a~0=v_main_~a~0_47} OutVars{main_~c~0=v_main_~c~0_276, main_#t~post5=|v_main_#t~post5_168|, main_~st~0=v_main_~st~0_140, main_~b~0=v_main_~b~0_42, main_~a~0=v_main_~a~0_46} AuxVars[] AssignedVars[main_~c~0, main_#t~post5, main_~st~0, main_~b~0, main_~a~0] {18878#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:34,059 INFO L290 TraceCheckUtils]: 15: Hoare triple {18878#(<= 200000 ~SIZE~0)} [147] L27-3_primed-->L27-3: Formula: (and (= 0 v_main_~c~0_10) (= v_main_~st~0_7 1)) InVars {} OutVars{main_~c~0=v_main_~c~0_10, main_~st~0=v_main_~st~0_7} AuxVars[] AssignedVars[main_~c~0, main_~st~0] {18934#(and (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:34,059 INFO L290 TraceCheckUtils]: 16: Hoare triple {18934#(and (<= main_~c~0 0) (<= 200000 ~SIZE~0))} assume !!(~c~0 < ~SIZE~0); {18934#(and (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:34,059 INFO L290 TraceCheckUtils]: 17: Hoare triple {18934#(and (<= main_~c~0 0) (<= 200000 ~SIZE~0))} assume ~c~0 >= ~last~0;~st~0 := 0; {18934#(and (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:34,060 INFO L290 TraceCheckUtils]: 18: Hoare triple {18934#(and (<= main_~c~0 0) (<= 200000 ~SIZE~0))} #t~post5 := ~c~0;~c~0 := 1 + #t~post5;havoc #t~post5; {18944#(and (<= 200000 ~SIZE~0) (<= main_~c~0 1))} is VALID [2022-04-28 03:57:34,060 INFO L290 TraceCheckUtils]: 19: Hoare triple {18944#(and (<= 200000 ~SIZE~0) (<= main_~c~0 1))} assume !(~c~0 < ~SIZE~0); {18874#false} is VALID [2022-04-28 03:57:34,060 INFO L290 TraceCheckUtils]: 20: Hoare triple {18874#false} assume !(0 == ~st~0 && ~c~0 == 1 + ~last~0);~a~0 := 2 + ~a~0;~b~0 := 2 + ~b~0; {18874#false} is VALID [2022-04-28 03:57:34,060 INFO L290 TraceCheckUtils]: 21: Hoare triple {18874#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {18874#false} is VALID [2022-04-28 03:57:34,061 INFO L290 TraceCheckUtils]: 22: Hoare triple {18874#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {18874#false} is VALID [2022-04-28 03:57:34,061 INFO L290 TraceCheckUtils]: 23: Hoare triple {18874#false} assume !(~d~0 == ~SIZE~0); {18874#false} is VALID [2022-04-28 03:57:34,061 INFO L272 TraceCheckUtils]: 24: Hoare triple {18874#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {18874#false} is VALID [2022-04-28 03:57:34,061 INFO L290 TraceCheckUtils]: 25: Hoare triple {18874#false} ~cond := #in~cond; {18874#false} is VALID [2022-04-28 03:57:34,061 INFO L290 TraceCheckUtils]: 26: Hoare triple {18874#false} assume 0 == ~cond; {18874#false} is VALID [2022-04-28 03:57:34,061 INFO L290 TraceCheckUtils]: 27: Hoare triple {18874#false} assume !false; {18874#false} is VALID [2022-04-28 03:57:34,061 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-28 03:57:34,061 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 03:57:34,169 INFO L290 TraceCheckUtils]: 27: Hoare triple {18874#false} assume !false; {18874#false} is VALID [2022-04-28 03:57:34,169 INFO L290 TraceCheckUtils]: 26: Hoare triple {18874#false} assume 0 == ~cond; {18874#false} is VALID [2022-04-28 03:57:34,169 INFO L290 TraceCheckUtils]: 25: Hoare triple {18874#false} ~cond := #in~cond; {18874#false} is VALID [2022-04-28 03:57:34,169 INFO L272 TraceCheckUtils]: 24: Hoare triple {18874#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {18874#false} is VALID [2022-04-28 03:57:34,169 INFO L290 TraceCheckUtils]: 23: Hoare triple {18874#false} assume !(~d~0 == ~SIZE~0); {18874#false} is VALID [2022-04-28 03:57:34,169 INFO L290 TraceCheckUtils]: 22: Hoare triple {18874#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {18874#false} is VALID [2022-04-28 03:57:34,169 INFO L290 TraceCheckUtils]: 21: Hoare triple {18874#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {18874#false} is VALID [2022-04-28 03:57:34,170 INFO L290 TraceCheckUtils]: 20: Hoare triple {18874#false} assume !(0 == ~st~0 && ~c~0 == 1 + ~last~0);~a~0 := 2 + ~a~0;~b~0 := 2 + ~b~0; {18874#false} is VALID [2022-04-28 03:57:34,170 INFO L290 TraceCheckUtils]: 19: Hoare triple {18996#(< main_~c~0 ~SIZE~0)} assume !(~c~0 < ~SIZE~0); {18874#false} is VALID [2022-04-28 03:57:34,170 INFO L290 TraceCheckUtils]: 18: Hoare triple {19000#(< (+ main_~c~0 1) ~SIZE~0)} #t~post5 := ~c~0;~c~0 := 1 + #t~post5;havoc #t~post5; {18996#(< main_~c~0 ~SIZE~0)} is VALID [2022-04-28 03:57:34,171 INFO L290 TraceCheckUtils]: 17: Hoare triple {19000#(< (+ main_~c~0 1) ~SIZE~0)} assume ~c~0 >= ~last~0;~st~0 := 0; {19000#(< (+ main_~c~0 1) ~SIZE~0)} is VALID [2022-04-28 03:57:34,171 INFO L290 TraceCheckUtils]: 16: Hoare triple {19000#(< (+ main_~c~0 1) ~SIZE~0)} assume !!(~c~0 < ~SIZE~0); {19000#(< (+ main_~c~0 1) ~SIZE~0)} is VALID [2022-04-28 03:57:34,171 INFO L290 TraceCheckUtils]: 15: Hoare triple {19010#(< 1 ~SIZE~0)} [147] L27-3_primed-->L27-3: Formula: (and (= 0 v_main_~c~0_10) (= v_main_~st~0_7 1)) InVars {} OutVars{main_~c~0=v_main_~c~0_10, main_~st~0=v_main_~st~0_7} AuxVars[] AssignedVars[main_~c~0, main_~st~0] {19000#(< (+ main_~c~0 1) ~SIZE~0)} is VALID [2022-04-28 03:57:34,172 INFO L290 TraceCheckUtils]: 14: Hoare triple {19010#(< 1 ~SIZE~0)} [150] L44-->L27-3_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_170| |v_main_#t~post5_168|)) (.cse1 (= v_main_~c~0_279 v_main_~c~0_276)) (.cse2 (= v_main_~b~0_43 v_main_~b~0_42)) (.cse3 (= v_main_~st~0_143 v_main_~st~0_140))) (or (and .cse0 (= v_main_~a~0_46 v_main_~a~0_47) .cse1 .cse2 .cse3) (and (= v_main_~a~0_47 v_main_~a~0_46) .cse0 .cse1 .cse2 .cse3))) InVars {main_~c~0=v_main_~c~0_279, main_#t~post5=|v_main_#t~post5_170|, main_~st~0=v_main_~st~0_143, main_~b~0=v_main_~b~0_43, main_~a~0=v_main_~a~0_47} OutVars{main_~c~0=v_main_~c~0_276, main_#t~post5=|v_main_#t~post5_168|, main_~st~0=v_main_~st~0_140, main_~b~0=v_main_~b~0_42, main_~a~0=v_main_~a~0_46} AuxVars[] AssignedVars[main_~c~0, main_#t~post5, main_~st~0, main_~b~0, main_~a~0] {19010#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:34,172 INFO L290 TraceCheckUtils]: 13: Hoare triple {19010#(< 1 ~SIZE~0)} [149] L27-3_primed-->L44: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {19010#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:34,172 INFO L290 TraceCheckUtils]: 12: Hoare triple {19010#(< 1 ~SIZE~0)} [148] L44-->L27-3_primed: Formula: (let ((.cse12 (= v_~SIZE~0_117 v_main_~d~0_16)) (.cse11 (= (+ v_~last~0_131 1) 1))) (let ((.cse0 (= v_main_~st~0_140 0)) (.cse2 (= v_main_~c~0_276 1)) (.cse4 (not .cse11)) (.cse5 (not .cse12)) (.cse1 (= v_main_~a~0_47 v_main_~b~0_43)) (.cse6 (= v_~SIZE~0_117 1)) (.cse3 (<= v_~last~0_131 0)) (.cse7 (= |v_main_#t~post5_169| |v_main_#t~post5_168|)) (.cse8 (= v_main_~st~0_142 v_main_~st~0_140)) (.cse9 (= v_main_~c~0_278 v_main_~c~0_276)) (.cse10 (= v_main_~b~0_43 v_main_~b~0_42))) (or (and .cse0 (= (+ (* (div (+ (- v_main_~b~0_43) (- 2) v_main_~b~0_42) 4) 4) 2 v_main_~a~0_47) v_main_~a~0_46) (= (mod (+ 2 (* 3 v_main_~b~0_43) v_main_~b~0_42) 4) 0) (<= 0 (div (+ (- 2) v_main_~b~0_42 (* (- 1) v_main_~b~0_43)) 4)) .cse1 .cse2 .cse3 .cse4 .cse5 .cse6) (and .cse0 .cse1 .cse2 (< 0 (div (+ (* (- 1) v_main_~a~0_47) v_main_~a~0_46) 4)) (= (+ (* 4 (div (+ (- v_main_~a~0_47) v_main_~a~0_46) 4)) v_main_~b~0_43) v_main_~b~0_42) .cse3 .cse4 (= (mod (+ (* 3 v_main_~a~0_47) v_main_~a~0_46) 4) 0) .cse5 .cse6) (and .cse7 .cse8 .cse9 (= v_main_~a~0_46 v_main_~a~0_47) .cse10 (or .cse11 (not .cse1) (not .cse6) (not .cse3) .cse12)) (and .cse7 (= v_main_~a~0_47 v_main_~a~0_46) .cse8 .cse9 (= v_main_~d~0_16 v_main_~d~0_16) (= v_~last~0_131 v_~last~0_131) .cse10 (= v_~SIZE~0_117 v_~SIZE~0_117))))) InVars {~SIZE~0=v_~SIZE~0_117, main_~c~0=v_main_~c~0_278, main_#t~post5=|v_main_#t~post5_169|, main_~d~0=v_main_~d~0_16, main_~st~0=v_main_~st~0_142, main_~b~0=v_main_~b~0_43, ~last~0=v_~last~0_131, main_~a~0=v_main_~a~0_47} OutVars{~SIZE~0=v_~SIZE~0_117, main_~c~0=v_main_~c~0_276, main_#t~post5=|v_main_#t~post5_168|, main_~d~0=v_main_~d~0_16, main_~st~0=v_main_~st~0_140, main_~b~0=v_main_~b~0_42, ~last~0=v_~last~0_131, main_~a~0=v_main_~a~0_46} AuxVars[] AssignedVars[main_~c~0, main_#t~post5, main_~st~0, main_~b~0, main_~a~0] {19010#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:34,173 INFO L290 TraceCheckUtils]: 11: Hoare triple {19010#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {19010#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:34,173 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18873#true} {19010#(< 1 ~SIZE~0)} #86#return; {19010#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:34,173 INFO L290 TraceCheckUtils]: 9: Hoare triple {18873#true} assume true; {18873#true} is VALID [2022-04-28 03:57:34,173 INFO L290 TraceCheckUtils]: 8: Hoare triple {18873#true} assume !(0 == ~cond); {18873#true} is VALID [2022-04-28 03:57:34,173 INFO L290 TraceCheckUtils]: 7: Hoare triple {18873#true} ~cond := #in~cond; {18873#true} is VALID [2022-04-28 03:57:34,173 INFO L272 TraceCheckUtils]: 6: Hoare triple {19010#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {18873#true} is VALID [2022-04-28 03:57:34,173 INFO L290 TraceCheckUtils]: 5: Hoare triple {19010#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {19010#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:34,174 INFO L272 TraceCheckUtils]: 4: Hoare triple {19010#(< 1 ~SIZE~0)} call #t~ret7 := main(); {19010#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:34,174 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {19010#(< 1 ~SIZE~0)} {18873#true} #90#return; {19010#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:34,174 INFO L290 TraceCheckUtils]: 2: Hoare triple {19010#(< 1 ~SIZE~0)} assume true; {19010#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:34,175 INFO L290 TraceCheckUtils]: 1: Hoare triple {18873#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {19010#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:34,175 INFO L272 TraceCheckUtils]: 0: Hoare triple {18873#true} call ULTIMATE.init(); {18873#true} is VALID [2022-04-28 03:57:34,175 INFO L134 CoverageAnalysis]: Checked inductivity of 3 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-28 03:57:34,175 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1575128822] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 03:57:34,175 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 03:57:34,175 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 5, 5] total 11 [2022-04-28 03:57:34,235 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:57:34,235 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [115084698] [2022-04-28 03:57:34,235 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [115084698] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:57:34,235 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:57:34,235 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-28 03:57:34,235 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1542194077] [2022-04-28 03:57:34,235 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:57:34,236 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 3 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Word has length 39 [2022-04-28 03:57:34,236 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:57:34,236 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 3 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 03:57:34,255 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:57:34,255 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-28 03:57:34,255 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:57:34,255 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-28 03:57:34,255 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=69, Invalid=113, Unknown=0, NotChecked=0, Total=182 [2022-04-28 03:57:34,255 INFO L87 Difference]: Start difference. First operand 191 states and 237 transitions. Second operand has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 3 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 03:57:35,179 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:57:35,179 INFO L93 Difference]: Finished difference Result 354 states and 440 transitions. [2022-04-28 03:57:35,179 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-28 03:57:35,180 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 3 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Word has length 39 [2022-04-28 03:57:35,180 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:57:35,180 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 3 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 03:57:35,181 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 66 transitions. [2022-04-28 03:57:35,181 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 3 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 03:57:35,181 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 66 transitions. [2022-04-28 03:57:35,181 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 66 transitions. [2022-04-28 03:57:35,223 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:57:35,226 INFO L225 Difference]: With dead ends: 354 [2022-04-28 03:57:35,226 INFO L226 Difference]: Without dead ends: 207 [2022-04-28 03:57:35,226 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 90 GetRequests, 74 SyntacticMatches, 2 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 82 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=87, Invalid=153, Unknown=0, NotChecked=0, Total=240 [2022-04-28 03:57:35,226 INFO L413 NwaCegarLoop]: 21 mSDtfsCounter, 42 mSDsluCounter, 10 mSDsCounter, 0 mSdLazyCounter, 167 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 43 SdHoareTripleChecker+Valid, 31 SdHoareTripleChecker+Invalid, 183 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 167 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 03:57:35,227 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [43 Valid, 31 Invalid, 183 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 167 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 03:57:35,227 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 207 states. [2022-04-28 03:57:35,781 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 207 to 199. [2022-04-28 03:57:35,782 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:57:35,783 INFO L82 GeneralOperation]: Start isEquivalent. First operand 207 states. Second operand has 199 states, 184 states have (on average 1.2391304347826086) internal successors, (228), 187 states have internal predecessors, (228), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:57:35,783 INFO L74 IsIncluded]: Start isIncluded. First operand 207 states. Second operand has 199 states, 184 states have (on average 1.2391304347826086) internal successors, (228), 187 states have internal predecessors, (228), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:57:35,783 INFO L87 Difference]: Start difference. First operand 207 states. Second operand has 199 states, 184 states have (on average 1.2391304347826086) internal successors, (228), 187 states have internal predecessors, (228), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:57:35,786 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:57:35,787 INFO L93 Difference]: Finished difference Result 207 states and 253 transitions. [2022-04-28 03:57:35,787 INFO L276 IsEmpty]: Start isEmpty. Operand 207 states and 253 transitions. [2022-04-28 03:57:35,787 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:57:35,787 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:57:35,787 INFO L74 IsIncluded]: Start isIncluded. First operand has 199 states, 184 states have (on average 1.2391304347826086) internal successors, (228), 187 states have internal predecessors, (228), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 207 states. [2022-04-28 03:57:35,787 INFO L87 Difference]: Start difference. First operand has 199 states, 184 states have (on average 1.2391304347826086) internal successors, (228), 187 states have internal predecessors, (228), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 207 states. [2022-04-28 03:57:35,791 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:57:35,791 INFO L93 Difference]: Finished difference Result 207 states and 253 transitions. [2022-04-28 03:57:35,791 INFO L276 IsEmpty]: Start isEmpty. Operand 207 states and 253 transitions. [2022-04-28 03:57:35,791 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:57:35,791 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:57:35,791 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:57:35,791 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:57:35,791 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 199 states, 184 states have (on average 1.2391304347826086) internal successors, (228), 187 states have internal predecessors, (228), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:57:35,795 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 199 states to 199 states and 245 transitions. [2022-04-28 03:57:35,795 INFO L78 Accepts]: Start accepts. Automaton has 199 states and 245 transitions. Word has length 39 [2022-04-28 03:57:35,795 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:57:35,795 INFO L495 AbstractCegarLoop]: Abstraction has 199 states and 245 transitions. [2022-04-28 03:57:35,795 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.888888888888889) internal successors, (26), 8 states have internal predecessors, (26), 3 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 03:57:35,795 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 199 states and 245 transitions. [2022-04-28 03:57:36,117 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 245 edges. 245 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:57:36,117 INFO L276 IsEmpty]: Start isEmpty. Operand 199 states and 245 transitions. [2022-04-28 03:57:36,118 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-28 03:57:36,118 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:57:36,118 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:57:36,137 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Forceful destruction successful, exit code 0 [2022-04-28 03:57:36,331 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable19,12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:57:36,332 INFO L420 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:57:36,332 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:57:36,332 INFO L85 PathProgramCache]: Analyzing trace with hash 651130940, now seen corresponding path program 11 times [2022-04-28 03:57:36,332 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:57:36,332 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1807627825] [2022-04-28 03:57:40,453 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:57:40,549 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:57:40,755 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:57:40,756 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:57:40,769 INFO L85 PathProgramCache]: Analyzing trace with hash 44553153, now seen corresponding path program 1 times [2022-04-28 03:57:40,769 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:57:40,770 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [912244117] [2022-04-28 03:57:40,770 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:57:40,770 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:57:40,777 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:40,830 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:57:40,831 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:40,836 INFO L290 TraceCheckUtils]: 0: Hoare triple {20599#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {20591#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:40,836 INFO L290 TraceCheckUtils]: 1: Hoare triple {20591#(<= 200000 ~SIZE~0)} assume true; {20591#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:40,836 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {20591#(<= 200000 ~SIZE~0)} {20586#true} #90#return; {20591#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:40,836 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:57:40,837 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:40,839 INFO L290 TraceCheckUtils]: 0: Hoare triple {20586#true} ~cond := #in~cond; {20586#true} is VALID [2022-04-28 03:57:40,839 INFO L290 TraceCheckUtils]: 1: Hoare triple {20586#true} assume !(0 == ~cond); {20586#true} is VALID [2022-04-28 03:57:40,839 INFO L290 TraceCheckUtils]: 2: Hoare triple {20586#true} assume true; {20586#true} is VALID [2022-04-28 03:57:40,840 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {20586#true} {20591#(<= 200000 ~SIZE~0)} #86#return; {20591#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:40,840 INFO L272 TraceCheckUtils]: 0: Hoare triple {20586#true} call ULTIMATE.init(); {20599#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:57:40,841 INFO L290 TraceCheckUtils]: 1: Hoare triple {20599#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {20591#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:40,841 INFO L290 TraceCheckUtils]: 2: Hoare triple {20591#(<= 200000 ~SIZE~0)} assume true; {20591#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:40,842 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {20591#(<= 200000 ~SIZE~0)} {20586#true} #90#return; {20591#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:40,842 INFO L272 TraceCheckUtils]: 4: Hoare triple {20591#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {20591#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:40,842 INFO L290 TraceCheckUtils]: 5: Hoare triple {20591#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {20591#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:40,842 INFO L272 TraceCheckUtils]: 6: Hoare triple {20591#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {20586#true} is VALID [2022-04-28 03:57:40,842 INFO L290 TraceCheckUtils]: 7: Hoare triple {20586#true} ~cond := #in~cond; {20586#true} is VALID [2022-04-28 03:57:40,843 INFO L290 TraceCheckUtils]: 8: Hoare triple {20586#true} assume !(0 == ~cond); {20586#true} is VALID [2022-04-28 03:57:40,843 INFO L290 TraceCheckUtils]: 9: Hoare triple {20586#true} assume true; {20586#true} is VALID [2022-04-28 03:57:40,843 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {20586#true} {20591#(<= 200000 ~SIZE~0)} #86#return; {20591#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:40,843 INFO L290 TraceCheckUtils]: 11: Hoare triple {20591#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {20591#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:40,844 INFO L290 TraceCheckUtils]: 12: Hoare triple {20591#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {20596#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:40,844 INFO L290 TraceCheckUtils]: 13: Hoare triple {20596#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [152] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_178| |v_main_#t~post5_176|)) (.cse1 (= v_main_~st~0_153 v_main_~st~0_152)) (.cse2 (<= v_~last~0_138 v_main_~c~0_290))) (or (and .cse0 .cse1 (or (not .cse2) (not (< v_main_~c~0_290 v_~SIZE~0_123))) (= v_main_~c~0_289 v_main_~c~0_290)) (and .cse0 (= v_~last~0_138 v_~last~0_138) (= v_main_~c~0_290 v_main_~c~0_289) (= v_~SIZE~0_123 v_~SIZE~0_123) .cse1) (and (= v_main_~st~0_152 0) (< v_main_~c~0_289 (+ v_~SIZE~0_123 1)) (< v_main_~c~0_290 v_main_~c~0_289) .cse2))) InVars {~SIZE~0=v_~SIZE~0_123, main_~c~0=v_main_~c~0_290, main_#t~post5=|v_main_#t~post5_178|, main_~st~0=v_main_~st~0_153, ~last~0=v_~last~0_138} OutVars{~SIZE~0=v_~SIZE~0_123, main_#t~post5=|v_main_#t~post5_176|, main_~c~0=v_main_~c~0_289, main_~st~0=v_main_~st~0_152, ~last~0=v_~last~0_138} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {20597#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:57:40,845 INFO L290 TraceCheckUtils]: 14: Hoare triple {20597#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [153] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {20597#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:57:40,845 INFO L290 TraceCheckUtils]: 15: Hoare triple {20597#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [154] L27-3-->L27-4_primed: Formula: (or (and (= v_main_~c~0_292 v_main_~c~0_291) (= |v_main_#t~post5_181| |v_main_#t~post5_177|) (= v_~last~0_139 v_~last~0_139) (= v_~SIZE~0_124 v_~SIZE~0_124)) (and (= |v_main_#t~post5_177| |v_main_#t~post5_181|) (or (not (< v_main_~c~0_292 v_~SIZE~0_124)) (not (< v_main_~c~0_292 v_~last~0_139))) (= v_main_~c~0_291 v_main_~c~0_292)) (and (< v_main_~c~0_291 (+ v_~last~0_139 1)) (< v_main_~c~0_291 (+ v_~SIZE~0_124 1)) (< v_main_~c~0_292 v_main_~c~0_291))) InVars {~SIZE~0=v_~SIZE~0_124, main_~c~0=v_main_~c~0_292, main_#t~post5=|v_main_#t~post5_181|, ~last~0=v_~last~0_139} OutVars{~SIZE~0=v_~SIZE~0_124, main_#t~post5=|v_main_#t~post5_177|, main_~c~0=v_main_~c~0_291, ~last~0=v_~last~0_139} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {20597#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:57:40,846 INFO L290 TraceCheckUtils]: 16: Hoare triple {20597#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [151] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {20598#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 03:57:40,846 INFO L290 TraceCheckUtils]: 17: Hoare triple {20598#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {20587#false} is VALID [2022-04-28 03:57:40,846 INFO L290 TraceCheckUtils]: 18: Hoare triple {20587#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {20587#false} is VALID [2022-04-28 03:57:40,846 INFO L290 TraceCheckUtils]: 19: Hoare triple {20587#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {20587#false} is VALID [2022-04-28 03:57:40,846 INFO L290 TraceCheckUtils]: 20: Hoare triple {20587#false} assume !(~d~0 == ~SIZE~0); {20587#false} is VALID [2022-04-28 03:57:40,847 INFO L272 TraceCheckUtils]: 21: Hoare triple {20587#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {20587#false} is VALID [2022-04-28 03:57:40,847 INFO L290 TraceCheckUtils]: 22: Hoare triple {20587#false} ~cond := #in~cond; {20587#false} is VALID [2022-04-28 03:57:40,847 INFO L290 TraceCheckUtils]: 23: Hoare triple {20587#false} assume 0 == ~cond; {20587#false} is VALID [2022-04-28 03:57:40,847 INFO L290 TraceCheckUtils]: 24: Hoare triple {20587#false} assume !false; {20587#false} is VALID [2022-04-28 03:57:40,847 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:57:40,847 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:57:40,847 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [912244117] [2022-04-28 03:57:40,847 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [912244117] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 03:57:40,847 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1290799002] [2022-04-28 03:57:40,847 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:57:40,847 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:57:40,848 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 03:57:40,848 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 03:57:40,850 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Waiting until timeout for monitored process [2022-04-28 03:57:40,884 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:40,884 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 03:57:40,891 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:40,892 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 03:57:41,126 INFO L272 TraceCheckUtils]: 0: Hoare triple {20586#true} call ULTIMATE.init(); {20586#true} is VALID [2022-04-28 03:57:41,126 INFO L290 TraceCheckUtils]: 1: Hoare triple {20586#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {20591#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:41,127 INFO L290 TraceCheckUtils]: 2: Hoare triple {20591#(<= 200000 ~SIZE~0)} assume true; {20591#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:41,127 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {20591#(<= 200000 ~SIZE~0)} {20586#true} #90#return; {20591#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:41,127 INFO L272 TraceCheckUtils]: 4: Hoare triple {20591#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {20591#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:41,127 INFO L290 TraceCheckUtils]: 5: Hoare triple {20591#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {20591#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:41,128 INFO L272 TraceCheckUtils]: 6: Hoare triple {20591#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {20591#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:41,128 INFO L290 TraceCheckUtils]: 7: Hoare triple {20591#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {20591#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:41,128 INFO L290 TraceCheckUtils]: 8: Hoare triple {20591#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {20591#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:41,129 INFO L290 TraceCheckUtils]: 9: Hoare triple {20591#(<= 200000 ~SIZE~0)} assume true; {20591#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:41,129 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {20591#(<= 200000 ~SIZE~0)} {20591#(<= 200000 ~SIZE~0)} #86#return; {20591#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:41,129 INFO L290 TraceCheckUtils]: 11: Hoare triple {20591#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {20591#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:41,130 INFO L290 TraceCheckUtils]: 12: Hoare triple {20591#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {20639#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:41,130 INFO L290 TraceCheckUtils]: 13: Hoare triple {20639#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [152] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_178| |v_main_#t~post5_176|)) (.cse1 (= v_main_~st~0_153 v_main_~st~0_152)) (.cse2 (<= v_~last~0_138 v_main_~c~0_290))) (or (and .cse0 .cse1 (or (not .cse2) (not (< v_main_~c~0_290 v_~SIZE~0_123))) (= v_main_~c~0_289 v_main_~c~0_290)) (and .cse0 (= v_~last~0_138 v_~last~0_138) (= v_main_~c~0_290 v_main_~c~0_289) (= v_~SIZE~0_123 v_~SIZE~0_123) .cse1) (and (= v_main_~st~0_152 0) (< v_main_~c~0_289 (+ v_~SIZE~0_123 1)) (< v_main_~c~0_290 v_main_~c~0_289) .cse2))) InVars {~SIZE~0=v_~SIZE~0_123, main_~c~0=v_main_~c~0_290, main_#t~post5=|v_main_#t~post5_178|, main_~st~0=v_main_~st~0_153, ~last~0=v_~last~0_138} OutVars{~SIZE~0=v_~SIZE~0_123, main_#t~post5=|v_main_#t~post5_176|, main_~c~0=v_main_~c~0_289, main_~st~0=v_main_~st~0_152, ~last~0=v_~last~0_138} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {20643#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:41,131 INFO L290 TraceCheckUtils]: 14: Hoare triple {20643#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [153] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {20643#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:41,131 INFO L290 TraceCheckUtils]: 15: Hoare triple {20643#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [154] L27-3-->L27-4_primed: Formula: (or (and (= v_main_~c~0_292 v_main_~c~0_291) (= |v_main_#t~post5_181| |v_main_#t~post5_177|) (= v_~last~0_139 v_~last~0_139) (= v_~SIZE~0_124 v_~SIZE~0_124)) (and (= |v_main_#t~post5_177| |v_main_#t~post5_181|) (or (not (< v_main_~c~0_292 v_~SIZE~0_124)) (not (< v_main_~c~0_292 v_~last~0_139))) (= v_main_~c~0_291 v_main_~c~0_292)) (and (< v_main_~c~0_291 (+ v_~last~0_139 1)) (< v_main_~c~0_291 (+ v_~SIZE~0_124 1)) (< v_main_~c~0_292 v_main_~c~0_291))) InVars {~SIZE~0=v_~SIZE~0_124, main_~c~0=v_main_~c~0_292, main_#t~post5=|v_main_#t~post5_181|, ~last~0=v_~last~0_139} OutVars{~SIZE~0=v_~SIZE~0_124, main_#t~post5=|v_main_#t~post5_177|, main_~c~0=v_main_~c~0_291, ~last~0=v_~last~0_139} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {20643#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:41,132 INFO L290 TraceCheckUtils]: 16: Hoare triple {20643#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [151] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {20653#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 03:57:41,132 INFO L290 TraceCheckUtils]: 17: Hoare triple {20653#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {20587#false} is VALID [2022-04-28 03:57:41,132 INFO L290 TraceCheckUtils]: 18: Hoare triple {20587#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {20587#false} is VALID [2022-04-28 03:57:41,133 INFO L290 TraceCheckUtils]: 19: Hoare triple {20587#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {20587#false} is VALID [2022-04-28 03:57:41,133 INFO L290 TraceCheckUtils]: 20: Hoare triple {20587#false} assume !(~d~0 == ~SIZE~0); {20587#false} is VALID [2022-04-28 03:57:41,133 INFO L272 TraceCheckUtils]: 21: Hoare triple {20587#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {20587#false} is VALID [2022-04-28 03:57:41,133 INFO L290 TraceCheckUtils]: 22: Hoare triple {20587#false} ~cond := #in~cond; {20587#false} is VALID [2022-04-28 03:57:41,133 INFO L290 TraceCheckUtils]: 23: Hoare triple {20587#false} assume 0 == ~cond; {20587#false} is VALID [2022-04-28 03:57:41,133 INFO L290 TraceCheckUtils]: 24: Hoare triple {20587#false} assume !false; {20587#false} is VALID [2022-04-28 03:57:41,133 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:57:41,133 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 03:57:41,457 INFO L290 TraceCheckUtils]: 24: Hoare triple {20587#false} assume !false; {20587#false} is VALID [2022-04-28 03:57:41,457 INFO L290 TraceCheckUtils]: 23: Hoare triple {20587#false} assume 0 == ~cond; {20587#false} is VALID [2022-04-28 03:57:41,457 INFO L290 TraceCheckUtils]: 22: Hoare triple {20587#false} ~cond := #in~cond; {20587#false} is VALID [2022-04-28 03:57:41,457 INFO L272 TraceCheckUtils]: 21: Hoare triple {20587#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {20587#false} is VALID [2022-04-28 03:57:41,457 INFO L290 TraceCheckUtils]: 20: Hoare triple {20587#false} assume !(~d~0 == ~SIZE~0); {20587#false} is VALID [2022-04-28 03:57:41,457 INFO L290 TraceCheckUtils]: 19: Hoare triple {20587#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {20587#false} is VALID [2022-04-28 03:57:41,458 INFO L290 TraceCheckUtils]: 18: Hoare triple {20587#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {20587#false} is VALID [2022-04-28 03:57:41,475 INFO L290 TraceCheckUtils]: 17: Hoare triple {20699#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {20587#false} is VALID [2022-04-28 03:57:41,476 INFO L290 TraceCheckUtils]: 16: Hoare triple {20703#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [151] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {20699#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 03:57:41,476 INFO L290 TraceCheckUtils]: 15: Hoare triple {20703#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [154] L27-3-->L27-4_primed: Formula: (or (and (= v_main_~c~0_292 v_main_~c~0_291) (= |v_main_#t~post5_181| |v_main_#t~post5_177|) (= v_~last~0_139 v_~last~0_139) (= v_~SIZE~0_124 v_~SIZE~0_124)) (and (= |v_main_#t~post5_177| |v_main_#t~post5_181|) (or (not (< v_main_~c~0_292 v_~SIZE~0_124)) (not (< v_main_~c~0_292 v_~last~0_139))) (= v_main_~c~0_291 v_main_~c~0_292)) (and (< v_main_~c~0_291 (+ v_~last~0_139 1)) (< v_main_~c~0_291 (+ v_~SIZE~0_124 1)) (< v_main_~c~0_292 v_main_~c~0_291))) InVars {~SIZE~0=v_~SIZE~0_124, main_~c~0=v_main_~c~0_292, main_#t~post5=|v_main_#t~post5_181|, ~last~0=v_~last~0_139} OutVars{~SIZE~0=v_~SIZE~0_124, main_#t~post5=|v_main_#t~post5_177|, main_~c~0=v_main_~c~0_291, ~last~0=v_~last~0_139} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {20703#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:57:41,477 INFO L290 TraceCheckUtils]: 14: Hoare triple {20703#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [153] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {20703#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:57:41,478 INFO L290 TraceCheckUtils]: 13: Hoare triple {20713#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [152] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_178| |v_main_#t~post5_176|)) (.cse1 (= v_main_~st~0_153 v_main_~st~0_152)) (.cse2 (<= v_~last~0_138 v_main_~c~0_290))) (or (and .cse0 .cse1 (or (not .cse2) (not (< v_main_~c~0_290 v_~SIZE~0_123))) (= v_main_~c~0_289 v_main_~c~0_290)) (and .cse0 (= v_~last~0_138 v_~last~0_138) (= v_main_~c~0_290 v_main_~c~0_289) (= v_~SIZE~0_123 v_~SIZE~0_123) .cse1) (and (= v_main_~st~0_152 0) (< v_main_~c~0_289 (+ v_~SIZE~0_123 1)) (< v_main_~c~0_290 v_main_~c~0_289) .cse2))) InVars {~SIZE~0=v_~SIZE~0_123, main_~c~0=v_main_~c~0_290, main_#t~post5=|v_main_#t~post5_178|, main_~st~0=v_main_~st~0_153, ~last~0=v_~last~0_138} OutVars{~SIZE~0=v_~SIZE~0_123, main_#t~post5=|v_main_#t~post5_176|, main_~c~0=v_main_~c~0_289, main_~st~0=v_main_~st~0_152, ~last~0=v_~last~0_138} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {20703#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:57:41,478 INFO L290 TraceCheckUtils]: 12: Hoare triple {20717#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {20713#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 03:57:41,478 INFO L290 TraceCheckUtils]: 11: Hoare triple {20717#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {20717#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:41,479 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {20586#true} {20717#(< 1 ~SIZE~0)} #86#return; {20717#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:41,479 INFO L290 TraceCheckUtils]: 9: Hoare triple {20586#true} assume true; {20586#true} is VALID [2022-04-28 03:57:41,479 INFO L290 TraceCheckUtils]: 8: Hoare triple {20586#true} assume !(0 == ~cond); {20586#true} is VALID [2022-04-28 03:57:41,479 INFO L290 TraceCheckUtils]: 7: Hoare triple {20586#true} ~cond := #in~cond; {20586#true} is VALID [2022-04-28 03:57:41,479 INFO L272 TraceCheckUtils]: 6: Hoare triple {20717#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {20586#true} is VALID [2022-04-28 03:57:41,479 INFO L290 TraceCheckUtils]: 5: Hoare triple {20717#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {20717#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:41,480 INFO L272 TraceCheckUtils]: 4: Hoare triple {20717#(< 1 ~SIZE~0)} call #t~ret7 := main(); {20717#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:41,480 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {20717#(< 1 ~SIZE~0)} {20586#true} #90#return; {20717#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:41,481 INFO L290 TraceCheckUtils]: 2: Hoare triple {20717#(< 1 ~SIZE~0)} assume true; {20717#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:41,481 INFO L290 TraceCheckUtils]: 1: Hoare triple {20586#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {20717#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:41,481 INFO L272 TraceCheckUtils]: 0: Hoare triple {20586#true} call ULTIMATE.init(); {20586#true} is VALID [2022-04-28 03:57:41,481 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:57:41,481 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1290799002] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 03:57:41,482 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 03:57:41,482 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 03:57:41,869 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:57:41,869 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1807627825] [2022-04-28 03:57:41,869 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1807627825] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:57:41,869 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:57:41,869 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-28 03:57:41,869 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1798149797] [2022-04-28 03:57:41,869 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:57:41,870 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.2666666666666666) internal successors, (34), 14 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 40 [2022-04-28 03:57:41,870 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:57:41,870 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 2.2666666666666666) internal successors, (34), 14 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:41,896 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:57:41,896 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-28 03:57:41,896 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:57:41,896 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-28 03:57:41,896 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=128, Invalid=424, Unknown=0, NotChecked=0, Total=552 [2022-04-28 03:57:41,896 INFO L87 Difference]: Start difference. First operand 199 states and 245 transitions. Second operand has 15 states, 15 states have (on average 2.2666666666666666) internal successors, (34), 14 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:43,522 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:57:43,522 INFO L93 Difference]: Finished difference Result 391 states and 480 transitions. [2022-04-28 03:57:43,522 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-28 03:57:43,523 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.2666666666666666) internal successors, (34), 14 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 40 [2022-04-28 03:57:43,523 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:57:43,523 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.2666666666666666) internal successors, (34), 14 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:43,524 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 89 transitions. [2022-04-28 03:57:43,524 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.2666666666666666) internal successors, (34), 14 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:43,525 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 89 transitions. [2022-04-28 03:57:43,525 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 89 transitions. [2022-04-28 03:57:43,599 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 89 edges. 89 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:57:43,602 INFO L225 Difference]: With dead ends: 391 [2022-04-28 03:57:43,602 INFO L226 Difference]: Without dead ends: 247 [2022-04-28 03:57:43,603 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 88 GetRequests, 54 SyntacticMatches, 9 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 402 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=157, Invalid=545, Unknown=0, NotChecked=0, Total=702 [2022-04-28 03:57:43,603 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 52 mSDsluCounter, 16 mSDsCounter, 0 mSdLazyCounter, 579 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 53 SdHoareTripleChecker+Valid, 40 SdHoareTripleChecker+Invalid, 592 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 579 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 03:57:43,603 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [53 Valid, 40 Invalid, 592 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 579 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 03:57:43,604 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 247 states. [2022-04-28 03:57:44,327 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 247 to 208. [2022-04-28 03:57:44,327 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:57:44,327 INFO L82 GeneralOperation]: Start isEquivalent. First operand 247 states. Second operand has 208 states, 193 states have (on average 1.2279792746113989) internal successors, (237), 196 states have internal predecessors, (237), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:57:44,327 INFO L74 IsIncluded]: Start isIncluded. First operand 247 states. Second operand has 208 states, 193 states have (on average 1.2279792746113989) internal successors, (237), 196 states have internal predecessors, (237), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:57:44,328 INFO L87 Difference]: Start difference. First operand 247 states. Second operand has 208 states, 193 states have (on average 1.2279792746113989) internal successors, (237), 196 states have internal predecessors, (237), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:57:44,332 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:57:44,333 INFO L93 Difference]: Finished difference Result 247 states and 297 transitions. [2022-04-28 03:57:44,333 INFO L276 IsEmpty]: Start isEmpty. Operand 247 states and 297 transitions. [2022-04-28 03:57:44,334 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:57:44,334 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:57:44,334 INFO L74 IsIncluded]: Start isIncluded. First operand has 208 states, 193 states have (on average 1.2279792746113989) internal successors, (237), 196 states have internal predecessors, (237), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 247 states. [2022-04-28 03:57:44,334 INFO L87 Difference]: Start difference. First operand has 208 states, 193 states have (on average 1.2279792746113989) internal successors, (237), 196 states have internal predecessors, (237), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 247 states. [2022-04-28 03:57:44,337 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:57:44,337 INFO L93 Difference]: Finished difference Result 247 states and 297 transitions. [2022-04-28 03:57:44,337 INFO L276 IsEmpty]: Start isEmpty. Operand 247 states and 297 transitions. [2022-04-28 03:57:44,338 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:57:44,338 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:57:44,338 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:57:44,338 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:57:44,338 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 208 states, 193 states have (on average 1.2279792746113989) internal successors, (237), 196 states have internal predecessors, (237), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:57:44,341 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 208 states to 208 states and 254 transitions. [2022-04-28 03:57:44,341 INFO L78 Accepts]: Start accepts. Automaton has 208 states and 254 transitions. Word has length 40 [2022-04-28 03:57:44,341 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:57:44,341 INFO L495 AbstractCegarLoop]: Abstraction has 208 states and 254 transitions. [2022-04-28 03:57:44,341 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 2.2666666666666666) internal successors, (34), 14 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:44,341 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 208 states and 254 transitions. [2022-04-28 03:57:44,676 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 254 edges. 254 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:57:44,677 INFO L276 IsEmpty]: Start isEmpty. Operand 208 states and 254 transitions. [2022-04-28 03:57:44,677 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-28 03:57:44,677 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:57:44,677 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:57:44,693 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Forceful destruction successful, exit code 0 [2022-04-28 03:57:44,877 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable20 [2022-04-28 03:57:44,877 INFO L420 AbstractCegarLoop]: === Iteration 22 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:57:44,878 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:57:44,878 INFO L85 PathProgramCache]: Analyzing trace with hash -1154307394, now seen corresponding path program 12 times [2022-04-28 03:57:44,878 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:57:44,878 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [976524925] [2022-04-28 03:57:47,771 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:57:47,864 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:57:51,987 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:57:52,090 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:57:52,092 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:57:52,094 INFO L85 PathProgramCache]: Analyzing trace with hash -1757891391, now seen corresponding path program 1 times [2022-04-28 03:57:52,095 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:57:52,095 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [593134803] [2022-04-28 03:57:52,095 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:57:52,095 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:57:52,103 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:52,155 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:57:52,157 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:52,166 INFO L290 TraceCheckUtils]: 0: Hoare triple {22478#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {22470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:52,167 INFO L290 TraceCheckUtils]: 1: Hoare triple {22470#(<= 200000 ~SIZE~0)} assume true; {22470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:52,167 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {22470#(<= 200000 ~SIZE~0)} {22465#true} #90#return; {22470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:52,167 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:57:52,168 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:52,171 INFO L290 TraceCheckUtils]: 0: Hoare triple {22465#true} ~cond := #in~cond; {22465#true} is VALID [2022-04-28 03:57:52,171 INFO L290 TraceCheckUtils]: 1: Hoare triple {22465#true} assume !(0 == ~cond); {22465#true} is VALID [2022-04-28 03:57:52,171 INFO L290 TraceCheckUtils]: 2: Hoare triple {22465#true} assume true; {22465#true} is VALID [2022-04-28 03:57:52,172 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {22465#true} {22470#(<= 200000 ~SIZE~0)} #86#return; {22470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:52,172 INFO L272 TraceCheckUtils]: 0: Hoare triple {22465#true} call ULTIMATE.init(); {22478#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:57:52,173 INFO L290 TraceCheckUtils]: 1: Hoare triple {22478#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {22470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:52,173 INFO L290 TraceCheckUtils]: 2: Hoare triple {22470#(<= 200000 ~SIZE~0)} assume true; {22470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:52,173 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {22470#(<= 200000 ~SIZE~0)} {22465#true} #90#return; {22470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:52,173 INFO L272 TraceCheckUtils]: 4: Hoare triple {22470#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {22470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:52,174 INFO L290 TraceCheckUtils]: 5: Hoare triple {22470#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {22470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:52,174 INFO L272 TraceCheckUtils]: 6: Hoare triple {22470#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {22465#true} is VALID [2022-04-28 03:57:52,174 INFO L290 TraceCheckUtils]: 7: Hoare triple {22465#true} ~cond := #in~cond; {22465#true} is VALID [2022-04-28 03:57:52,174 INFO L290 TraceCheckUtils]: 8: Hoare triple {22465#true} assume !(0 == ~cond); {22465#true} is VALID [2022-04-28 03:57:52,174 INFO L290 TraceCheckUtils]: 9: Hoare triple {22465#true} assume true; {22465#true} is VALID [2022-04-28 03:57:52,174 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {22465#true} {22470#(<= 200000 ~SIZE~0)} #86#return; {22470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:52,175 INFO L290 TraceCheckUtils]: 11: Hoare triple {22470#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {22470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:52,175 INFO L290 TraceCheckUtils]: 12: Hoare triple {22470#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {22475#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:52,176 INFO L290 TraceCheckUtils]: 13: Hoare triple {22475#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [156] L27-3-->L27-4_primed: Formula: (let ((.cse2 (<= v_~last~0_148 v_main_~c~0_313)) (.cse0 (= |v_main_#t~post5_191| |v_main_#t~post5_189|)) (.cse1 (= v_main_~c~0_313 v_main_~c~0_312)) (.cse3 (= v_main_~st~0_167 v_main_~st~0_166))) (or (and .cse0 .cse1 (or (not (< v_main_~c~0_313 v_~SIZE~0_132)) (not .cse2)) .cse3) (and (= v_main_~st~0_166 0) .cse2 (< v_main_~c~0_312 (+ v_~SIZE~0_132 1)) (< v_main_~c~0_313 v_main_~c~0_312)) (and (= v_~last~0_148 v_~last~0_148) .cse0 .cse1 .cse3 (= v_~SIZE~0_132 v_~SIZE~0_132)))) InVars {~SIZE~0=v_~SIZE~0_132, main_~c~0=v_main_~c~0_313, main_#t~post5=|v_main_#t~post5_191|, main_~st~0=v_main_~st~0_167, ~last~0=v_~last~0_148} OutVars{~SIZE~0=v_~SIZE~0_132, main_#t~post5=|v_main_#t~post5_189|, main_~c~0=v_main_~c~0_312, main_~st~0=v_main_~st~0_166, ~last~0=v_~last~0_148} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {22476#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:57:52,176 INFO L290 TraceCheckUtils]: 14: Hoare triple {22476#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [157] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {22476#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:57:52,176 INFO L290 TraceCheckUtils]: 15: Hoare triple {22476#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [158] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_315 v_main_~c~0_314))) (or (and (= v_~SIZE~0_133 v_~SIZE~0_133) .cse0 (= v_~last~0_149 v_~last~0_149) (= |v_main_#t~post5_194| |v_main_#t~post5_190|)) (and (< v_main_~c~0_315 v_main_~c~0_314) (< v_main_~c~0_314 (+ v_~last~0_149 1)) (< v_main_~c~0_314 (+ v_~SIZE~0_133 1))) (and .cse0 (= |v_main_#t~post5_190| |v_main_#t~post5_194|) (or (not (< v_main_~c~0_315 v_~last~0_149)) (not (< v_main_~c~0_315 v_~SIZE~0_133)))))) InVars {~SIZE~0=v_~SIZE~0_133, main_~c~0=v_main_~c~0_315, main_#t~post5=|v_main_#t~post5_194|, ~last~0=v_~last~0_149} OutVars{~SIZE~0=v_~SIZE~0_133, main_#t~post5=|v_main_#t~post5_190|, main_~c~0=v_main_~c~0_314, ~last~0=v_~last~0_149} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {22476#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:57:52,177 INFO L290 TraceCheckUtils]: 16: Hoare triple {22476#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [155] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {22477#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 03:57:52,177 INFO L290 TraceCheckUtils]: 17: Hoare triple {22477#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {22466#false} is VALID [2022-04-28 03:57:52,177 INFO L290 TraceCheckUtils]: 18: Hoare triple {22466#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {22466#false} is VALID [2022-04-28 03:57:52,177 INFO L290 TraceCheckUtils]: 19: Hoare triple {22466#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {22466#false} is VALID [2022-04-28 03:57:52,177 INFO L290 TraceCheckUtils]: 20: Hoare triple {22466#false} assume !(~d~0 == ~SIZE~0); {22466#false} is VALID [2022-04-28 03:57:52,177 INFO L272 TraceCheckUtils]: 21: Hoare triple {22466#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {22466#false} is VALID [2022-04-28 03:57:52,178 INFO L290 TraceCheckUtils]: 22: Hoare triple {22466#false} ~cond := #in~cond; {22466#false} is VALID [2022-04-28 03:57:52,178 INFO L290 TraceCheckUtils]: 23: Hoare triple {22466#false} assume 0 == ~cond; {22466#false} is VALID [2022-04-28 03:57:52,178 INFO L290 TraceCheckUtils]: 24: Hoare triple {22466#false} assume !false; {22466#false} is VALID [2022-04-28 03:57:52,178 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:57:52,178 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:57:52,178 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [593134803] [2022-04-28 03:57:52,178 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [593134803] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 03:57:52,178 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [443970082] [2022-04-28 03:57:52,178 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:57:52,178 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:57:52,178 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 03:57:52,179 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 03:57:52,180 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Waiting until timeout for monitored process [2022-04-28 03:57:52,217 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:52,218 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 03:57:52,224 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:57:52,225 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 03:57:52,447 INFO L272 TraceCheckUtils]: 0: Hoare triple {22465#true} call ULTIMATE.init(); {22465#true} is VALID [2022-04-28 03:57:52,448 INFO L290 TraceCheckUtils]: 1: Hoare triple {22465#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {22470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:52,448 INFO L290 TraceCheckUtils]: 2: Hoare triple {22470#(<= 200000 ~SIZE~0)} assume true; {22470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:52,449 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {22470#(<= 200000 ~SIZE~0)} {22465#true} #90#return; {22470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:52,449 INFO L272 TraceCheckUtils]: 4: Hoare triple {22470#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {22470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:52,449 INFO L290 TraceCheckUtils]: 5: Hoare triple {22470#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {22470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:52,450 INFO L272 TraceCheckUtils]: 6: Hoare triple {22470#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {22470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:52,450 INFO L290 TraceCheckUtils]: 7: Hoare triple {22470#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {22470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:52,450 INFO L290 TraceCheckUtils]: 8: Hoare triple {22470#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {22470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:52,450 INFO L290 TraceCheckUtils]: 9: Hoare triple {22470#(<= 200000 ~SIZE~0)} assume true; {22470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:52,451 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {22470#(<= 200000 ~SIZE~0)} {22470#(<= 200000 ~SIZE~0)} #86#return; {22470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:52,451 INFO L290 TraceCheckUtils]: 11: Hoare triple {22470#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {22470#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:57:52,452 INFO L290 TraceCheckUtils]: 12: Hoare triple {22470#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {22518#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:52,452 INFO L290 TraceCheckUtils]: 13: Hoare triple {22518#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [156] L27-3-->L27-4_primed: Formula: (let ((.cse2 (<= v_~last~0_148 v_main_~c~0_313)) (.cse0 (= |v_main_#t~post5_191| |v_main_#t~post5_189|)) (.cse1 (= v_main_~c~0_313 v_main_~c~0_312)) (.cse3 (= v_main_~st~0_167 v_main_~st~0_166))) (or (and .cse0 .cse1 (or (not (< v_main_~c~0_313 v_~SIZE~0_132)) (not .cse2)) .cse3) (and (= v_main_~st~0_166 0) .cse2 (< v_main_~c~0_312 (+ v_~SIZE~0_132 1)) (< v_main_~c~0_313 v_main_~c~0_312)) (and (= v_~last~0_148 v_~last~0_148) .cse0 .cse1 .cse3 (= v_~SIZE~0_132 v_~SIZE~0_132)))) InVars {~SIZE~0=v_~SIZE~0_132, main_~c~0=v_main_~c~0_313, main_#t~post5=|v_main_#t~post5_191|, main_~st~0=v_main_~st~0_167, ~last~0=v_~last~0_148} OutVars{~SIZE~0=v_~SIZE~0_132, main_#t~post5=|v_main_#t~post5_189|, main_~c~0=v_main_~c~0_312, main_~st~0=v_main_~st~0_166, ~last~0=v_~last~0_148} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {22522#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:52,453 INFO L290 TraceCheckUtils]: 14: Hoare triple {22522#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [157] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {22522#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:52,453 INFO L290 TraceCheckUtils]: 15: Hoare triple {22522#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [158] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_315 v_main_~c~0_314))) (or (and (= v_~SIZE~0_133 v_~SIZE~0_133) .cse0 (= v_~last~0_149 v_~last~0_149) (= |v_main_#t~post5_194| |v_main_#t~post5_190|)) (and (< v_main_~c~0_315 v_main_~c~0_314) (< v_main_~c~0_314 (+ v_~last~0_149 1)) (< v_main_~c~0_314 (+ v_~SIZE~0_133 1))) (and .cse0 (= |v_main_#t~post5_190| |v_main_#t~post5_194|) (or (not (< v_main_~c~0_315 v_~last~0_149)) (not (< v_main_~c~0_315 v_~SIZE~0_133)))))) InVars {~SIZE~0=v_~SIZE~0_133, main_~c~0=v_main_~c~0_315, main_#t~post5=|v_main_#t~post5_194|, ~last~0=v_~last~0_149} OutVars{~SIZE~0=v_~SIZE~0_133, main_#t~post5=|v_main_#t~post5_190|, main_~c~0=v_main_~c~0_314, ~last~0=v_~last~0_149} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {22522#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:57:52,454 INFO L290 TraceCheckUtils]: 16: Hoare triple {22522#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [155] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {22532#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 03:57:52,454 INFO L290 TraceCheckUtils]: 17: Hoare triple {22532#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {22466#false} is VALID [2022-04-28 03:57:52,455 INFO L290 TraceCheckUtils]: 18: Hoare triple {22466#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {22466#false} is VALID [2022-04-28 03:57:52,455 INFO L290 TraceCheckUtils]: 19: Hoare triple {22466#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {22466#false} is VALID [2022-04-28 03:57:52,455 INFO L290 TraceCheckUtils]: 20: Hoare triple {22466#false} assume !(~d~0 == ~SIZE~0); {22466#false} is VALID [2022-04-28 03:57:52,455 INFO L272 TraceCheckUtils]: 21: Hoare triple {22466#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {22466#false} is VALID [2022-04-28 03:57:52,455 INFO L290 TraceCheckUtils]: 22: Hoare triple {22466#false} ~cond := #in~cond; {22466#false} is VALID [2022-04-28 03:57:52,455 INFO L290 TraceCheckUtils]: 23: Hoare triple {22466#false} assume 0 == ~cond; {22466#false} is VALID [2022-04-28 03:57:52,455 INFO L290 TraceCheckUtils]: 24: Hoare triple {22466#false} assume !false; {22466#false} is VALID [2022-04-28 03:57:52,455 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:57:52,455 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 03:57:52,788 INFO L290 TraceCheckUtils]: 24: Hoare triple {22466#false} assume !false; {22466#false} is VALID [2022-04-28 03:57:52,788 INFO L290 TraceCheckUtils]: 23: Hoare triple {22466#false} assume 0 == ~cond; {22466#false} is VALID [2022-04-28 03:57:52,788 INFO L290 TraceCheckUtils]: 22: Hoare triple {22466#false} ~cond := #in~cond; {22466#false} is VALID [2022-04-28 03:57:52,788 INFO L272 TraceCheckUtils]: 21: Hoare triple {22466#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {22466#false} is VALID [2022-04-28 03:57:52,788 INFO L290 TraceCheckUtils]: 20: Hoare triple {22466#false} assume !(~d~0 == ~SIZE~0); {22466#false} is VALID [2022-04-28 03:57:52,788 INFO L290 TraceCheckUtils]: 19: Hoare triple {22466#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {22466#false} is VALID [2022-04-28 03:57:52,788 INFO L290 TraceCheckUtils]: 18: Hoare triple {22466#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {22466#false} is VALID [2022-04-28 03:57:52,789 INFO L290 TraceCheckUtils]: 17: Hoare triple {22578#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {22466#false} is VALID [2022-04-28 03:57:52,789 INFO L290 TraceCheckUtils]: 16: Hoare triple {22582#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [155] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {22578#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 03:57:52,790 INFO L290 TraceCheckUtils]: 15: Hoare triple {22582#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [158] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_315 v_main_~c~0_314))) (or (and (= v_~SIZE~0_133 v_~SIZE~0_133) .cse0 (= v_~last~0_149 v_~last~0_149) (= |v_main_#t~post5_194| |v_main_#t~post5_190|)) (and (< v_main_~c~0_315 v_main_~c~0_314) (< v_main_~c~0_314 (+ v_~last~0_149 1)) (< v_main_~c~0_314 (+ v_~SIZE~0_133 1))) (and .cse0 (= |v_main_#t~post5_190| |v_main_#t~post5_194|) (or (not (< v_main_~c~0_315 v_~last~0_149)) (not (< v_main_~c~0_315 v_~SIZE~0_133)))))) InVars {~SIZE~0=v_~SIZE~0_133, main_~c~0=v_main_~c~0_315, main_#t~post5=|v_main_#t~post5_194|, ~last~0=v_~last~0_149} OutVars{~SIZE~0=v_~SIZE~0_133, main_#t~post5=|v_main_#t~post5_190|, main_~c~0=v_main_~c~0_314, ~last~0=v_~last~0_149} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {22582#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:57:52,790 INFO L290 TraceCheckUtils]: 14: Hoare triple {22582#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [157] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {22582#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:57:52,791 INFO L290 TraceCheckUtils]: 13: Hoare triple {22592#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [156] L27-3-->L27-4_primed: Formula: (let ((.cse2 (<= v_~last~0_148 v_main_~c~0_313)) (.cse0 (= |v_main_#t~post5_191| |v_main_#t~post5_189|)) (.cse1 (= v_main_~c~0_313 v_main_~c~0_312)) (.cse3 (= v_main_~st~0_167 v_main_~st~0_166))) (or (and .cse0 .cse1 (or (not (< v_main_~c~0_313 v_~SIZE~0_132)) (not .cse2)) .cse3) (and (= v_main_~st~0_166 0) .cse2 (< v_main_~c~0_312 (+ v_~SIZE~0_132 1)) (< v_main_~c~0_313 v_main_~c~0_312)) (and (= v_~last~0_148 v_~last~0_148) .cse0 .cse1 .cse3 (= v_~SIZE~0_132 v_~SIZE~0_132)))) InVars {~SIZE~0=v_~SIZE~0_132, main_~c~0=v_main_~c~0_313, main_#t~post5=|v_main_#t~post5_191|, main_~st~0=v_main_~st~0_167, ~last~0=v_~last~0_148} OutVars{~SIZE~0=v_~SIZE~0_132, main_#t~post5=|v_main_#t~post5_189|, main_~c~0=v_main_~c~0_312, main_~st~0=v_main_~st~0_166, ~last~0=v_~last~0_148} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {22582#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:57:52,791 INFO L290 TraceCheckUtils]: 12: Hoare triple {22596#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {22592#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 03:57:52,791 INFO L290 TraceCheckUtils]: 11: Hoare triple {22596#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {22596#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:52,792 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {22465#true} {22596#(< 1 ~SIZE~0)} #86#return; {22596#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:52,792 INFO L290 TraceCheckUtils]: 9: Hoare triple {22465#true} assume true; {22465#true} is VALID [2022-04-28 03:57:52,792 INFO L290 TraceCheckUtils]: 8: Hoare triple {22465#true} assume !(0 == ~cond); {22465#true} is VALID [2022-04-28 03:57:52,792 INFO L290 TraceCheckUtils]: 7: Hoare triple {22465#true} ~cond := #in~cond; {22465#true} is VALID [2022-04-28 03:57:52,792 INFO L272 TraceCheckUtils]: 6: Hoare triple {22596#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {22465#true} is VALID [2022-04-28 03:57:52,792 INFO L290 TraceCheckUtils]: 5: Hoare triple {22596#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {22596#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:52,792 INFO L272 TraceCheckUtils]: 4: Hoare triple {22596#(< 1 ~SIZE~0)} call #t~ret7 := main(); {22596#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:52,793 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {22596#(< 1 ~SIZE~0)} {22465#true} #90#return; {22596#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:52,793 INFO L290 TraceCheckUtils]: 2: Hoare triple {22596#(< 1 ~SIZE~0)} assume true; {22596#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:52,793 INFO L290 TraceCheckUtils]: 1: Hoare triple {22465#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {22596#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:57:52,794 INFO L272 TraceCheckUtils]: 0: Hoare triple {22465#true} call ULTIMATE.init(); {22465#true} is VALID [2022-04-28 03:57:52,794 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:57:52,794 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [443970082] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 03:57:52,794 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 03:57:52,794 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 03:57:53,173 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:57:53,173 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [976524925] [2022-04-28 03:57:53,173 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [976524925] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:57:53,173 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:57:53,173 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-28 03:57:53,173 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [785832701] [2022-04-28 03:57:53,174 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:57:53,174 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 2.125) internal successors, (34), 15 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 40 [2022-04-28 03:57:53,174 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:57:53,174 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 16 states have (on average 2.125) internal successors, (34), 15 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:53,203 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:57:53,203 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-28 03:57:53,203 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:57:53,203 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-28 03:57:53,203 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=143, Invalid=457, Unknown=0, NotChecked=0, Total=600 [2022-04-28 03:57:53,203 INFO L87 Difference]: Start difference. First operand 208 states and 254 transitions. Second operand has 16 states, 16 states have (on average 2.125) internal successors, (34), 15 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:54,989 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:57:54,989 INFO L93 Difference]: Finished difference Result 409 states and 498 transitions. [2022-04-28 03:57:54,989 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-28 03:57:54,989 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 2.125) internal successors, (34), 15 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 40 [2022-04-28 03:57:54,989 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:57:54,989 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 2.125) internal successors, (34), 15 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:54,990 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 90 transitions. [2022-04-28 03:57:54,990 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 2.125) internal successors, (34), 15 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:54,991 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 90 transitions. [2022-04-28 03:57:54,991 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 90 transitions. [2022-04-28 03:57:55,052 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 90 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:57:55,056 INFO L225 Difference]: With dead ends: 409 [2022-04-28 03:57:55,056 INFO L226 Difference]: Without dead ends: 256 [2022-04-28 03:57:55,056 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 88 GetRequests, 54 SyntacticMatches, 8 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 422 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=174, Invalid=582, Unknown=0, NotChecked=0, Total=756 [2022-04-28 03:57:55,057 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 50 mSDsluCounter, 21 mSDsCounter, 0 mSdLazyCounter, 605 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 51 SdHoareTripleChecker+Valid, 45 SdHoareTripleChecker+Invalid, 619 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 605 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 03:57:55,057 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [51 Valid, 45 Invalid, 619 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 605 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 03:57:55,057 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 256 states. [2022-04-28 03:57:55,678 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 256 to 208. [2022-04-28 03:57:55,678 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:57:55,678 INFO L82 GeneralOperation]: Start isEquivalent. First operand 256 states. Second operand has 208 states, 193 states have (on average 1.2279792746113989) internal successors, (237), 196 states have internal predecessors, (237), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:57:55,678 INFO L74 IsIncluded]: Start isIncluded. First operand 256 states. Second operand has 208 states, 193 states have (on average 1.2279792746113989) internal successors, (237), 196 states have internal predecessors, (237), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:57:55,679 INFO L87 Difference]: Start difference. First operand 256 states. Second operand has 208 states, 193 states have (on average 1.2279792746113989) internal successors, (237), 196 states have internal predecessors, (237), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:57:55,682 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:57:55,682 INFO L93 Difference]: Finished difference Result 256 states and 306 transitions. [2022-04-28 03:57:55,682 INFO L276 IsEmpty]: Start isEmpty. Operand 256 states and 306 transitions. [2022-04-28 03:57:55,682 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:57:55,682 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:57:55,682 INFO L74 IsIncluded]: Start isIncluded. First operand has 208 states, 193 states have (on average 1.2279792746113989) internal successors, (237), 196 states have internal predecessors, (237), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 256 states. [2022-04-28 03:57:55,682 INFO L87 Difference]: Start difference. First operand has 208 states, 193 states have (on average 1.2279792746113989) internal successors, (237), 196 states have internal predecessors, (237), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 256 states. [2022-04-28 03:57:55,685 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:57:55,685 INFO L93 Difference]: Finished difference Result 256 states and 306 transitions. [2022-04-28 03:57:55,686 INFO L276 IsEmpty]: Start isEmpty. Operand 256 states and 306 transitions. [2022-04-28 03:57:55,686 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:57:55,686 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:57:55,686 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:57:55,686 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:57:55,686 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 208 states, 193 states have (on average 1.2279792746113989) internal successors, (237), 196 states have internal predecessors, (237), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:57:55,689 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 208 states to 208 states and 254 transitions. [2022-04-28 03:57:55,689 INFO L78 Accepts]: Start accepts. Automaton has 208 states and 254 transitions. Word has length 40 [2022-04-28 03:57:55,689 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:57:55,689 INFO L495 AbstractCegarLoop]: Abstraction has 208 states and 254 transitions. [2022-04-28 03:57:55,689 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 16 states have (on average 2.125) internal successors, (34), 15 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:57:55,689 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 208 states and 254 transitions. [2022-04-28 03:57:56,044 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 254 edges. 254 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:57:56,044 INFO L276 IsEmpty]: Start isEmpty. Operand 208 states and 254 transitions. [2022-04-28 03:57:56,044 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-28 03:57:56,044 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:57:56,044 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:57:56,066 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Forceful destruction successful, exit code 0 [2022-04-28 03:57:56,245 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 14 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable21 [2022-04-28 03:57:56,245 INFO L420 AbstractCegarLoop]: === Iteration 23 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:57:56,245 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:57:56,245 INFO L85 PathProgramCache]: Analyzing trace with hash -1971955844, now seen corresponding path program 13 times [2022-04-28 03:57:56,245 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:57:56,245 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1383618] [2022-04-28 03:58:00,366 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:58:00,474 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:58:00,669 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:58:00,671 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:58:00,673 INFO L85 PathProgramCache]: Analyzing trace with hash 734631361, now seen corresponding path program 1 times [2022-04-28 03:58:00,674 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:58:00,674 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1146274961] [2022-04-28 03:58:00,674 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:58:00,674 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:58:00,683 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:00,729 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:58:00,730 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:00,741 INFO L290 TraceCheckUtils]: 0: Hoare triple {24412#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {24404#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:00,741 INFO L290 TraceCheckUtils]: 1: Hoare triple {24404#(<= 200000 ~SIZE~0)} assume true; {24404#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:00,741 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {24404#(<= 200000 ~SIZE~0)} {24399#true} #90#return; {24404#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:00,742 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:58:00,742 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:00,744 INFO L290 TraceCheckUtils]: 0: Hoare triple {24399#true} ~cond := #in~cond; {24399#true} is VALID [2022-04-28 03:58:00,744 INFO L290 TraceCheckUtils]: 1: Hoare triple {24399#true} assume !(0 == ~cond); {24399#true} is VALID [2022-04-28 03:58:00,744 INFO L290 TraceCheckUtils]: 2: Hoare triple {24399#true} assume true; {24399#true} is VALID [2022-04-28 03:58:00,744 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24399#true} {24404#(<= 200000 ~SIZE~0)} #86#return; {24404#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:00,745 INFO L272 TraceCheckUtils]: 0: Hoare triple {24399#true} call ULTIMATE.init(); {24412#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:58:00,746 INFO L290 TraceCheckUtils]: 1: Hoare triple {24412#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {24404#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:00,746 INFO L290 TraceCheckUtils]: 2: Hoare triple {24404#(<= 200000 ~SIZE~0)} assume true; {24404#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:00,746 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24404#(<= 200000 ~SIZE~0)} {24399#true} #90#return; {24404#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:00,747 INFO L272 TraceCheckUtils]: 4: Hoare triple {24404#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {24404#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:00,747 INFO L290 TraceCheckUtils]: 5: Hoare triple {24404#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {24404#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:00,747 INFO L272 TraceCheckUtils]: 6: Hoare triple {24404#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {24399#true} is VALID [2022-04-28 03:58:00,747 INFO L290 TraceCheckUtils]: 7: Hoare triple {24399#true} ~cond := #in~cond; {24399#true} is VALID [2022-04-28 03:58:00,747 INFO L290 TraceCheckUtils]: 8: Hoare triple {24399#true} assume !(0 == ~cond); {24399#true} is VALID [2022-04-28 03:58:00,747 INFO L290 TraceCheckUtils]: 9: Hoare triple {24399#true} assume true; {24399#true} is VALID [2022-04-28 03:58:00,748 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {24399#true} {24404#(<= 200000 ~SIZE~0)} #86#return; {24404#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:00,748 INFO L290 TraceCheckUtils]: 11: Hoare triple {24404#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {24404#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:00,748 INFO L290 TraceCheckUtils]: 12: Hoare triple {24404#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {24409#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:58:00,749 INFO L290 TraceCheckUtils]: 13: Hoare triple {24409#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [160] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_336 v_main_~c~0_335)) (.cse2 (<= v_~last~0_158 v_main_~c~0_336)) (.cse1 (= |v_main_#t~post5_204| |v_main_#t~post5_202|))) (or (and .cse0 (= v_~SIZE~0_141 v_~SIZE~0_141) (= v_~last~0_158 v_~last~0_158) (= v_main_~st~0_180 v_main_~st~0_179) .cse1) (and (= v_main_~st~0_179 0) .cse2 (< v_main_~c~0_336 v_main_~c~0_335) (< v_main_~c~0_335 (+ v_~SIZE~0_141 1))) (and .cse0 (or (not (< v_main_~c~0_336 v_~SIZE~0_141)) (not .cse2)) .cse1 (= v_main_~st~0_179 v_main_~st~0_180)))) InVars {~SIZE~0=v_~SIZE~0_141, main_~c~0=v_main_~c~0_336, main_#t~post5=|v_main_#t~post5_204|, main_~st~0=v_main_~st~0_180, ~last~0=v_~last~0_158} OutVars{~SIZE~0=v_~SIZE~0_141, main_#t~post5=|v_main_#t~post5_202|, main_~c~0=v_main_~c~0_335, main_~st~0=v_main_~st~0_179, ~last~0=v_~last~0_158} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {24410#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:58:00,749 INFO L290 TraceCheckUtils]: 14: Hoare triple {24410#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [161] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {24410#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:58:00,750 INFO L290 TraceCheckUtils]: 15: Hoare triple {24410#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [162] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_207| |v_main_#t~post5_203|)) (.cse1 (= v_main_~c~0_338 v_main_~c~0_337))) (or (and (< v_main_~c~0_337 (+ v_~SIZE~0_142 1)) (< v_main_~c~0_337 (+ v_~last~0_159 1)) (< v_main_~c~0_338 v_main_~c~0_337)) (and .cse0 .cse1 (= v_~SIZE~0_142 v_~SIZE~0_142) (= v_~last~0_159 v_~last~0_159)) (and (or (not (< v_main_~c~0_338 v_~last~0_159)) (not (< v_main_~c~0_338 v_~SIZE~0_142))) .cse0 .cse1))) InVars {~SIZE~0=v_~SIZE~0_142, main_~c~0=v_main_~c~0_338, main_#t~post5=|v_main_#t~post5_207|, ~last~0=v_~last~0_159} OutVars{~SIZE~0=v_~SIZE~0_142, main_#t~post5=|v_main_#t~post5_203|, main_~c~0=v_main_~c~0_337, ~last~0=v_~last~0_159} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {24410#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:58:00,750 INFO L290 TraceCheckUtils]: 16: Hoare triple {24410#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [159] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {24411#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 03:58:00,751 INFO L290 TraceCheckUtils]: 17: Hoare triple {24411#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {24400#false} is VALID [2022-04-28 03:58:00,751 INFO L290 TraceCheckUtils]: 18: Hoare triple {24400#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {24400#false} is VALID [2022-04-28 03:58:00,751 INFO L290 TraceCheckUtils]: 19: Hoare triple {24400#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {24400#false} is VALID [2022-04-28 03:58:00,751 INFO L290 TraceCheckUtils]: 20: Hoare triple {24400#false} assume !(~d~0 == ~SIZE~0); {24400#false} is VALID [2022-04-28 03:58:00,751 INFO L272 TraceCheckUtils]: 21: Hoare triple {24400#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {24400#false} is VALID [2022-04-28 03:58:00,751 INFO L290 TraceCheckUtils]: 22: Hoare triple {24400#false} ~cond := #in~cond; {24400#false} is VALID [2022-04-28 03:58:00,751 INFO L290 TraceCheckUtils]: 23: Hoare triple {24400#false} assume 0 == ~cond; {24400#false} is VALID [2022-04-28 03:58:00,751 INFO L290 TraceCheckUtils]: 24: Hoare triple {24400#false} assume !false; {24400#false} is VALID [2022-04-28 03:58:00,751 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:58:00,751 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:58:00,751 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1146274961] [2022-04-28 03:58:00,752 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1146274961] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 03:58:00,752 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [106899154] [2022-04-28 03:58:00,752 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:58:00,752 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:58:00,752 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 03:58:00,753 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 03:58:00,753 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Waiting until timeout for monitored process [2022-04-28 03:58:00,782 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:00,783 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 03:58:00,789 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:00,790 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 03:58:01,009 INFO L272 TraceCheckUtils]: 0: Hoare triple {24399#true} call ULTIMATE.init(); {24399#true} is VALID [2022-04-28 03:58:01,010 INFO L290 TraceCheckUtils]: 1: Hoare triple {24399#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {24404#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:01,010 INFO L290 TraceCheckUtils]: 2: Hoare triple {24404#(<= 200000 ~SIZE~0)} assume true; {24404#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:01,011 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24404#(<= 200000 ~SIZE~0)} {24399#true} #90#return; {24404#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:01,011 INFO L272 TraceCheckUtils]: 4: Hoare triple {24404#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {24404#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:01,011 INFO L290 TraceCheckUtils]: 5: Hoare triple {24404#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {24404#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:01,011 INFO L272 TraceCheckUtils]: 6: Hoare triple {24404#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {24404#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:01,012 INFO L290 TraceCheckUtils]: 7: Hoare triple {24404#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {24404#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:01,012 INFO L290 TraceCheckUtils]: 8: Hoare triple {24404#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {24404#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:01,012 INFO L290 TraceCheckUtils]: 9: Hoare triple {24404#(<= 200000 ~SIZE~0)} assume true; {24404#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:01,013 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {24404#(<= 200000 ~SIZE~0)} {24404#(<= 200000 ~SIZE~0)} #86#return; {24404#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:01,013 INFO L290 TraceCheckUtils]: 11: Hoare triple {24404#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {24404#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:01,013 INFO L290 TraceCheckUtils]: 12: Hoare triple {24404#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {24452#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:58:01,014 INFO L290 TraceCheckUtils]: 13: Hoare triple {24452#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [160] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_336 v_main_~c~0_335)) (.cse2 (<= v_~last~0_158 v_main_~c~0_336)) (.cse1 (= |v_main_#t~post5_204| |v_main_#t~post5_202|))) (or (and .cse0 (= v_~SIZE~0_141 v_~SIZE~0_141) (= v_~last~0_158 v_~last~0_158) (= v_main_~st~0_180 v_main_~st~0_179) .cse1) (and (= v_main_~st~0_179 0) .cse2 (< v_main_~c~0_336 v_main_~c~0_335) (< v_main_~c~0_335 (+ v_~SIZE~0_141 1))) (and .cse0 (or (not (< v_main_~c~0_336 v_~SIZE~0_141)) (not .cse2)) .cse1 (= v_main_~st~0_179 v_main_~st~0_180)))) InVars {~SIZE~0=v_~SIZE~0_141, main_~c~0=v_main_~c~0_336, main_#t~post5=|v_main_#t~post5_204|, main_~st~0=v_main_~st~0_180, ~last~0=v_~last~0_158} OutVars{~SIZE~0=v_~SIZE~0_141, main_#t~post5=|v_main_#t~post5_202|, main_~c~0=v_main_~c~0_335, main_~st~0=v_main_~st~0_179, ~last~0=v_~last~0_158} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {24456#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:58:01,014 INFO L290 TraceCheckUtils]: 14: Hoare triple {24456#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [161] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {24456#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:58:01,015 INFO L290 TraceCheckUtils]: 15: Hoare triple {24456#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [162] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_207| |v_main_#t~post5_203|)) (.cse1 (= v_main_~c~0_338 v_main_~c~0_337))) (or (and (< v_main_~c~0_337 (+ v_~SIZE~0_142 1)) (< v_main_~c~0_337 (+ v_~last~0_159 1)) (< v_main_~c~0_338 v_main_~c~0_337)) (and .cse0 .cse1 (= v_~SIZE~0_142 v_~SIZE~0_142) (= v_~last~0_159 v_~last~0_159)) (and (or (not (< v_main_~c~0_338 v_~last~0_159)) (not (< v_main_~c~0_338 v_~SIZE~0_142))) .cse0 .cse1))) InVars {~SIZE~0=v_~SIZE~0_142, main_~c~0=v_main_~c~0_338, main_#t~post5=|v_main_#t~post5_207|, ~last~0=v_~last~0_159} OutVars{~SIZE~0=v_~SIZE~0_142, main_#t~post5=|v_main_#t~post5_203|, main_~c~0=v_main_~c~0_337, ~last~0=v_~last~0_159} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {24456#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:58:01,015 INFO L290 TraceCheckUtils]: 16: Hoare triple {24456#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [159] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {24466#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 03:58:01,016 INFO L290 TraceCheckUtils]: 17: Hoare triple {24466#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {24400#false} is VALID [2022-04-28 03:58:01,016 INFO L290 TraceCheckUtils]: 18: Hoare triple {24400#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {24400#false} is VALID [2022-04-28 03:58:01,016 INFO L290 TraceCheckUtils]: 19: Hoare triple {24400#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {24400#false} is VALID [2022-04-28 03:58:01,016 INFO L290 TraceCheckUtils]: 20: Hoare triple {24400#false} assume !(~d~0 == ~SIZE~0); {24400#false} is VALID [2022-04-28 03:58:01,016 INFO L272 TraceCheckUtils]: 21: Hoare triple {24400#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {24400#false} is VALID [2022-04-28 03:58:01,016 INFO L290 TraceCheckUtils]: 22: Hoare triple {24400#false} ~cond := #in~cond; {24400#false} is VALID [2022-04-28 03:58:01,016 INFO L290 TraceCheckUtils]: 23: Hoare triple {24400#false} assume 0 == ~cond; {24400#false} is VALID [2022-04-28 03:58:01,016 INFO L290 TraceCheckUtils]: 24: Hoare triple {24400#false} assume !false; {24400#false} is VALID [2022-04-28 03:58:01,017 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:58:01,017 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 03:58:01,420 INFO L290 TraceCheckUtils]: 24: Hoare triple {24400#false} assume !false; {24400#false} is VALID [2022-04-28 03:58:01,420 INFO L290 TraceCheckUtils]: 23: Hoare triple {24400#false} assume 0 == ~cond; {24400#false} is VALID [2022-04-28 03:58:01,420 INFO L290 TraceCheckUtils]: 22: Hoare triple {24400#false} ~cond := #in~cond; {24400#false} is VALID [2022-04-28 03:58:01,421 INFO L272 TraceCheckUtils]: 21: Hoare triple {24400#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {24400#false} is VALID [2022-04-28 03:58:01,421 INFO L290 TraceCheckUtils]: 20: Hoare triple {24400#false} assume !(~d~0 == ~SIZE~0); {24400#false} is VALID [2022-04-28 03:58:01,421 INFO L290 TraceCheckUtils]: 19: Hoare triple {24400#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {24400#false} is VALID [2022-04-28 03:58:01,421 INFO L290 TraceCheckUtils]: 18: Hoare triple {24400#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {24400#false} is VALID [2022-04-28 03:58:01,421 INFO L290 TraceCheckUtils]: 17: Hoare triple {24512#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {24400#false} is VALID [2022-04-28 03:58:01,422 INFO L290 TraceCheckUtils]: 16: Hoare triple {24516#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [159] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {24512#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 03:58:01,422 INFO L290 TraceCheckUtils]: 15: Hoare triple {24516#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [162] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_207| |v_main_#t~post5_203|)) (.cse1 (= v_main_~c~0_338 v_main_~c~0_337))) (or (and (< v_main_~c~0_337 (+ v_~SIZE~0_142 1)) (< v_main_~c~0_337 (+ v_~last~0_159 1)) (< v_main_~c~0_338 v_main_~c~0_337)) (and .cse0 .cse1 (= v_~SIZE~0_142 v_~SIZE~0_142) (= v_~last~0_159 v_~last~0_159)) (and (or (not (< v_main_~c~0_338 v_~last~0_159)) (not (< v_main_~c~0_338 v_~SIZE~0_142))) .cse0 .cse1))) InVars {~SIZE~0=v_~SIZE~0_142, main_~c~0=v_main_~c~0_338, main_#t~post5=|v_main_#t~post5_207|, ~last~0=v_~last~0_159} OutVars{~SIZE~0=v_~SIZE~0_142, main_#t~post5=|v_main_#t~post5_203|, main_~c~0=v_main_~c~0_337, ~last~0=v_~last~0_159} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {24516#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:58:01,422 INFO L290 TraceCheckUtils]: 14: Hoare triple {24516#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [161] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {24516#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:58:01,423 INFO L290 TraceCheckUtils]: 13: Hoare triple {24526#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [160] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_336 v_main_~c~0_335)) (.cse2 (<= v_~last~0_158 v_main_~c~0_336)) (.cse1 (= |v_main_#t~post5_204| |v_main_#t~post5_202|))) (or (and .cse0 (= v_~SIZE~0_141 v_~SIZE~0_141) (= v_~last~0_158 v_~last~0_158) (= v_main_~st~0_180 v_main_~st~0_179) .cse1) (and (= v_main_~st~0_179 0) .cse2 (< v_main_~c~0_336 v_main_~c~0_335) (< v_main_~c~0_335 (+ v_~SIZE~0_141 1))) (and .cse0 (or (not (< v_main_~c~0_336 v_~SIZE~0_141)) (not .cse2)) .cse1 (= v_main_~st~0_179 v_main_~st~0_180)))) InVars {~SIZE~0=v_~SIZE~0_141, main_~c~0=v_main_~c~0_336, main_#t~post5=|v_main_#t~post5_204|, main_~st~0=v_main_~st~0_180, ~last~0=v_~last~0_158} OutVars{~SIZE~0=v_~SIZE~0_141, main_#t~post5=|v_main_#t~post5_202|, main_~c~0=v_main_~c~0_335, main_~st~0=v_main_~st~0_179, ~last~0=v_~last~0_158} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {24516#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:58:01,424 INFO L290 TraceCheckUtils]: 12: Hoare triple {24530#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {24526#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 03:58:01,424 INFO L290 TraceCheckUtils]: 11: Hoare triple {24530#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {24530#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:01,424 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {24399#true} {24530#(< 1 ~SIZE~0)} #86#return; {24530#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:01,424 INFO L290 TraceCheckUtils]: 9: Hoare triple {24399#true} assume true; {24399#true} is VALID [2022-04-28 03:58:01,424 INFO L290 TraceCheckUtils]: 8: Hoare triple {24399#true} assume !(0 == ~cond); {24399#true} is VALID [2022-04-28 03:58:01,425 INFO L290 TraceCheckUtils]: 7: Hoare triple {24399#true} ~cond := #in~cond; {24399#true} is VALID [2022-04-28 03:58:01,425 INFO L272 TraceCheckUtils]: 6: Hoare triple {24530#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {24399#true} is VALID [2022-04-28 03:58:01,425 INFO L290 TraceCheckUtils]: 5: Hoare triple {24530#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {24530#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:01,425 INFO L272 TraceCheckUtils]: 4: Hoare triple {24530#(< 1 ~SIZE~0)} call #t~ret7 := main(); {24530#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:01,425 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {24530#(< 1 ~SIZE~0)} {24399#true} #90#return; {24530#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:01,426 INFO L290 TraceCheckUtils]: 2: Hoare triple {24530#(< 1 ~SIZE~0)} assume true; {24530#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:01,426 INFO L290 TraceCheckUtils]: 1: Hoare triple {24399#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {24530#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:01,426 INFO L272 TraceCheckUtils]: 0: Hoare triple {24399#true} call ULTIMATE.init(); {24399#true} is VALID [2022-04-28 03:58:01,426 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:58:01,426 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [106899154] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 03:58:01,426 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 03:58:01,426 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 03:58:01,817 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:58:01,817 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1383618] [2022-04-28 03:58:01,817 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1383618] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:58:01,817 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:58:01,817 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [17] imperfect sequences [] total 17 [2022-04-28 03:58:01,817 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1213454333] [2022-04-28 03:58:01,817 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:58:01,818 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 2.0) internal successors, (34), 16 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 40 [2022-04-28 03:58:01,818 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:58:01,818 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 17 states, 17 states have (on average 2.0) internal successors, (34), 16 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:58:01,846 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:58:01,846 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-28 03:58:01,846 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:58:01,847 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-28 03:58:01,847 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=158, Invalid=492, Unknown=0, NotChecked=0, Total=650 [2022-04-28 03:58:01,847 INFO L87 Difference]: Start difference. First operand 208 states and 254 transitions. Second operand has 17 states, 17 states have (on average 2.0) internal successors, (34), 16 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:58:03,553 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:58:03,554 INFO L93 Difference]: Finished difference Result 400 states and 489 transitions. [2022-04-28 03:58:03,554 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-04-28 03:58:03,554 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 2.0) internal successors, (34), 16 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 40 [2022-04-28 03:58:03,554 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:58:03,554 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 2.0) internal successors, (34), 16 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:58:03,555 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 91 transitions. [2022-04-28 03:58:03,555 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 2.0) internal successors, (34), 16 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:58:03,555 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 91 transitions. [2022-04-28 03:58:03,555 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 17 states and 91 transitions. [2022-04-28 03:58:03,634 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 91 edges. 91 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:58:03,637 INFO L225 Difference]: With dead ends: 400 [2022-04-28 03:58:03,638 INFO L226 Difference]: Without dead ends: 247 [2022-04-28 03:58:03,638 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 88 GetRequests, 54 SyntacticMatches, 7 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 433 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=191, Invalid=621, Unknown=0, NotChecked=0, Total=812 [2022-04-28 03:58:03,639 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 58 mSDsluCounter, 17 mSDsCounter, 0 mSdLazyCounter, 637 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 59 SdHoareTripleChecker+Valid, 41 SdHoareTripleChecker+Invalid, 652 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 637 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 03:58:03,639 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [59 Valid, 41 Invalid, 652 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 637 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 03:58:03,639 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 247 states. [2022-04-28 03:58:04,320 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 247 to 208. [2022-04-28 03:58:04,320 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:58:04,320 INFO L82 GeneralOperation]: Start isEquivalent. First operand 247 states. Second operand has 208 states, 193 states have (on average 1.2279792746113989) internal successors, (237), 196 states have internal predecessors, (237), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:58:04,320 INFO L74 IsIncluded]: Start isIncluded. First operand 247 states. Second operand has 208 states, 193 states have (on average 1.2279792746113989) internal successors, (237), 196 states have internal predecessors, (237), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:58:04,321 INFO L87 Difference]: Start difference. First operand 247 states. Second operand has 208 states, 193 states have (on average 1.2279792746113989) internal successors, (237), 196 states have internal predecessors, (237), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:58:04,323 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:58:04,323 INFO L93 Difference]: Finished difference Result 247 states and 297 transitions. [2022-04-28 03:58:04,323 INFO L276 IsEmpty]: Start isEmpty. Operand 247 states and 297 transitions. [2022-04-28 03:58:04,324 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:58:04,324 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:58:04,324 INFO L74 IsIncluded]: Start isIncluded. First operand has 208 states, 193 states have (on average 1.2279792746113989) internal successors, (237), 196 states have internal predecessors, (237), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 247 states. [2022-04-28 03:58:04,324 INFO L87 Difference]: Start difference. First operand has 208 states, 193 states have (on average 1.2279792746113989) internal successors, (237), 196 states have internal predecessors, (237), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 247 states. [2022-04-28 03:58:04,327 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:58:04,327 INFO L93 Difference]: Finished difference Result 247 states and 297 transitions. [2022-04-28 03:58:04,327 INFO L276 IsEmpty]: Start isEmpty. Operand 247 states and 297 transitions. [2022-04-28 03:58:04,327 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:58:04,327 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:58:04,327 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:58:04,327 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:58:04,328 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 208 states, 193 states have (on average 1.2279792746113989) internal successors, (237), 196 states have internal predecessors, (237), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:58:04,330 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 208 states to 208 states and 254 transitions. [2022-04-28 03:58:04,330 INFO L78 Accepts]: Start accepts. Automaton has 208 states and 254 transitions. Word has length 40 [2022-04-28 03:58:04,330 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:58:04,330 INFO L495 AbstractCegarLoop]: Abstraction has 208 states and 254 transitions. [2022-04-28 03:58:04,331 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 17 states have (on average 2.0) internal successors, (34), 16 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:58:04,331 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 208 states and 254 transitions. [2022-04-28 03:58:04,704 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 254 edges. 254 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:58:04,705 INFO L276 IsEmpty]: Start isEmpty. Operand 208 states and 254 transitions. [2022-04-28 03:58:04,705 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-28 03:58:04,705 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:58:04,705 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:58:04,723 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Forceful destruction successful, exit code 0 [2022-04-28 03:58:04,905 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable22,15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:58:04,906 INFO L420 AbstractCegarLoop]: === Iteration 24 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:58:04,906 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:58:04,906 INFO L85 PathProgramCache]: Analyzing trace with hash 734663550, now seen corresponding path program 14 times [2022-04-28 03:58:04,906 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:58:04,906 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [744897404] [2022-04-28 03:58:08,335 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:58:08,443 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:58:10,952 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:58:11,069 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:58:11,071 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:58:11,074 INFO L85 PathProgramCache]: Analyzing trace with hash -1067813183, now seen corresponding path program 1 times [2022-04-28 03:58:11,074 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:58:11,074 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [280767088] [2022-04-28 03:58:11,074 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:58:11,074 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:58:11,082 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:11,133 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:58:11,135 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:11,140 INFO L290 TraceCheckUtils]: 0: Hoare triple {26311#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {26303#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:11,140 INFO L290 TraceCheckUtils]: 1: Hoare triple {26303#(<= 200000 ~SIZE~0)} assume true; {26303#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:11,140 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {26303#(<= 200000 ~SIZE~0)} {26298#true} #90#return; {26303#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:11,140 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:58:11,141 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:11,143 INFO L290 TraceCheckUtils]: 0: Hoare triple {26298#true} ~cond := #in~cond; {26298#true} is VALID [2022-04-28 03:58:11,143 INFO L290 TraceCheckUtils]: 1: Hoare triple {26298#true} assume !(0 == ~cond); {26298#true} is VALID [2022-04-28 03:58:11,143 INFO L290 TraceCheckUtils]: 2: Hoare triple {26298#true} assume true; {26298#true} is VALID [2022-04-28 03:58:11,144 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {26298#true} {26303#(<= 200000 ~SIZE~0)} #86#return; {26303#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:11,144 INFO L272 TraceCheckUtils]: 0: Hoare triple {26298#true} call ULTIMATE.init(); {26311#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:58:11,145 INFO L290 TraceCheckUtils]: 1: Hoare triple {26311#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {26303#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:11,145 INFO L290 TraceCheckUtils]: 2: Hoare triple {26303#(<= 200000 ~SIZE~0)} assume true; {26303#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:11,146 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {26303#(<= 200000 ~SIZE~0)} {26298#true} #90#return; {26303#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:11,146 INFO L272 TraceCheckUtils]: 4: Hoare triple {26303#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {26303#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:11,146 INFO L290 TraceCheckUtils]: 5: Hoare triple {26303#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {26303#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:11,146 INFO L272 TraceCheckUtils]: 6: Hoare triple {26303#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {26298#true} is VALID [2022-04-28 03:58:11,146 INFO L290 TraceCheckUtils]: 7: Hoare triple {26298#true} ~cond := #in~cond; {26298#true} is VALID [2022-04-28 03:58:11,146 INFO L290 TraceCheckUtils]: 8: Hoare triple {26298#true} assume !(0 == ~cond); {26298#true} is VALID [2022-04-28 03:58:11,147 INFO L290 TraceCheckUtils]: 9: Hoare triple {26298#true} assume true; {26298#true} is VALID [2022-04-28 03:58:11,147 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {26298#true} {26303#(<= 200000 ~SIZE~0)} #86#return; {26303#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:11,147 INFO L290 TraceCheckUtils]: 11: Hoare triple {26303#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {26303#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:11,148 INFO L290 TraceCheckUtils]: 12: Hoare triple {26303#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {26308#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:58:11,149 INFO L290 TraceCheckUtils]: 13: Hoare triple {26308#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [164] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_359 v_main_~c~0_358)) (.cse1 (= |v_main_#t~post5_217| |v_main_#t~post5_215|)) (.cse2 (= v_main_~st~0_192 v_main_~st~0_191)) (.cse3 (<= v_~last~0_168 v_main_~c~0_359))) (or (and (= v_~last~0_168 v_~last~0_168) .cse0 .cse1 .cse2 (= v_~SIZE~0_150 v_~SIZE~0_150)) (and .cse0 .cse1 .cse2 (or (not .cse3) (not (< v_main_~c~0_359 v_~SIZE~0_150)))) (and (< v_main_~c~0_358 (+ v_~SIZE~0_150 1)) .cse3 (< v_main_~c~0_359 v_main_~c~0_358) (= v_main_~st~0_191 0)))) InVars {~SIZE~0=v_~SIZE~0_150, main_~c~0=v_main_~c~0_359, main_#t~post5=|v_main_#t~post5_217|, main_~st~0=v_main_~st~0_192, ~last~0=v_~last~0_168} OutVars{~SIZE~0=v_~SIZE~0_150, main_#t~post5=|v_main_#t~post5_215|, main_~c~0=v_main_~c~0_358, main_~st~0=v_main_~st~0_191, ~last~0=v_~last~0_168} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {26309#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:58:11,149 INFO L290 TraceCheckUtils]: 14: Hoare triple {26309#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [165] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {26309#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:58:11,149 INFO L290 TraceCheckUtils]: 15: Hoare triple {26309#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [166] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_361 v_main_~c~0_360))) (or (and (= |v_main_#t~post5_220| |v_main_#t~post5_216|) (= v_~last~0_169 v_~last~0_169) .cse0 (= v_~SIZE~0_151 v_~SIZE~0_151)) (and (< v_main_~c~0_360 (+ v_~SIZE~0_151 1)) (< v_main_~c~0_360 (+ v_~last~0_169 1)) (< v_main_~c~0_361 v_main_~c~0_360)) (and (= |v_main_#t~post5_216| |v_main_#t~post5_220|) .cse0 (or (not (< v_main_~c~0_361 v_~SIZE~0_151)) (not (< v_main_~c~0_361 v_~last~0_169)))))) InVars {~SIZE~0=v_~SIZE~0_151, main_~c~0=v_main_~c~0_361, main_#t~post5=|v_main_#t~post5_220|, ~last~0=v_~last~0_169} OutVars{~SIZE~0=v_~SIZE~0_151, main_#t~post5=|v_main_#t~post5_216|, main_~c~0=v_main_~c~0_360, ~last~0=v_~last~0_169} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {26309#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:58:11,150 INFO L290 TraceCheckUtils]: 16: Hoare triple {26309#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [163] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {26310#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 03:58:11,150 INFO L290 TraceCheckUtils]: 17: Hoare triple {26310#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {26299#false} is VALID [2022-04-28 03:58:11,150 INFO L290 TraceCheckUtils]: 18: Hoare triple {26299#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {26299#false} is VALID [2022-04-28 03:58:11,151 INFO L290 TraceCheckUtils]: 19: Hoare triple {26299#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {26299#false} is VALID [2022-04-28 03:58:11,151 INFO L290 TraceCheckUtils]: 20: Hoare triple {26299#false} assume !(~d~0 == ~SIZE~0); {26299#false} is VALID [2022-04-28 03:58:11,151 INFO L272 TraceCheckUtils]: 21: Hoare triple {26299#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {26299#false} is VALID [2022-04-28 03:58:11,151 INFO L290 TraceCheckUtils]: 22: Hoare triple {26299#false} ~cond := #in~cond; {26299#false} is VALID [2022-04-28 03:58:11,151 INFO L290 TraceCheckUtils]: 23: Hoare triple {26299#false} assume 0 == ~cond; {26299#false} is VALID [2022-04-28 03:58:11,151 INFO L290 TraceCheckUtils]: 24: Hoare triple {26299#false} assume !false; {26299#false} is VALID [2022-04-28 03:58:11,151 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:58:11,151 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:58:11,151 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [280767088] [2022-04-28 03:58:11,151 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [280767088] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 03:58:11,151 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [369375040] [2022-04-28 03:58:11,151 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:58:11,152 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:58:11,152 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 03:58:11,152 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 03:58:11,153 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Waiting until timeout for monitored process [2022-04-28 03:58:11,183 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:11,183 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 03:58:11,190 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:11,190 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 03:58:11,449 INFO L272 TraceCheckUtils]: 0: Hoare triple {26298#true} call ULTIMATE.init(); {26298#true} is VALID [2022-04-28 03:58:11,450 INFO L290 TraceCheckUtils]: 1: Hoare triple {26298#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {26303#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:11,450 INFO L290 TraceCheckUtils]: 2: Hoare triple {26303#(<= 200000 ~SIZE~0)} assume true; {26303#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:11,450 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {26303#(<= 200000 ~SIZE~0)} {26298#true} #90#return; {26303#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:11,451 INFO L272 TraceCheckUtils]: 4: Hoare triple {26303#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {26303#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:11,451 INFO L290 TraceCheckUtils]: 5: Hoare triple {26303#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {26303#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:11,451 INFO L272 TraceCheckUtils]: 6: Hoare triple {26303#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {26303#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:11,452 INFO L290 TraceCheckUtils]: 7: Hoare triple {26303#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {26303#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:11,452 INFO L290 TraceCheckUtils]: 8: Hoare triple {26303#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {26303#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:11,452 INFO L290 TraceCheckUtils]: 9: Hoare triple {26303#(<= 200000 ~SIZE~0)} assume true; {26303#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:11,452 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {26303#(<= 200000 ~SIZE~0)} {26303#(<= 200000 ~SIZE~0)} #86#return; {26303#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:11,453 INFO L290 TraceCheckUtils]: 11: Hoare triple {26303#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {26303#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:11,453 INFO L290 TraceCheckUtils]: 12: Hoare triple {26303#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {26351#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:58:11,454 INFO L290 TraceCheckUtils]: 13: Hoare triple {26351#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [164] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_359 v_main_~c~0_358)) (.cse1 (= |v_main_#t~post5_217| |v_main_#t~post5_215|)) (.cse2 (= v_main_~st~0_192 v_main_~st~0_191)) (.cse3 (<= v_~last~0_168 v_main_~c~0_359))) (or (and (= v_~last~0_168 v_~last~0_168) .cse0 .cse1 .cse2 (= v_~SIZE~0_150 v_~SIZE~0_150)) (and .cse0 .cse1 .cse2 (or (not .cse3) (not (< v_main_~c~0_359 v_~SIZE~0_150)))) (and (< v_main_~c~0_358 (+ v_~SIZE~0_150 1)) .cse3 (< v_main_~c~0_359 v_main_~c~0_358) (= v_main_~st~0_191 0)))) InVars {~SIZE~0=v_~SIZE~0_150, main_~c~0=v_main_~c~0_359, main_#t~post5=|v_main_#t~post5_217|, main_~st~0=v_main_~st~0_192, ~last~0=v_~last~0_168} OutVars{~SIZE~0=v_~SIZE~0_150, main_#t~post5=|v_main_#t~post5_215|, main_~c~0=v_main_~c~0_358, main_~st~0=v_main_~st~0_191, ~last~0=v_~last~0_168} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {26355#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:58:11,454 INFO L290 TraceCheckUtils]: 14: Hoare triple {26355#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [165] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {26355#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:58:11,455 INFO L290 TraceCheckUtils]: 15: Hoare triple {26355#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [166] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_361 v_main_~c~0_360))) (or (and (= |v_main_#t~post5_220| |v_main_#t~post5_216|) (= v_~last~0_169 v_~last~0_169) .cse0 (= v_~SIZE~0_151 v_~SIZE~0_151)) (and (< v_main_~c~0_360 (+ v_~SIZE~0_151 1)) (< v_main_~c~0_360 (+ v_~last~0_169 1)) (< v_main_~c~0_361 v_main_~c~0_360)) (and (= |v_main_#t~post5_216| |v_main_#t~post5_220|) .cse0 (or (not (< v_main_~c~0_361 v_~SIZE~0_151)) (not (< v_main_~c~0_361 v_~last~0_169)))))) InVars {~SIZE~0=v_~SIZE~0_151, main_~c~0=v_main_~c~0_361, main_#t~post5=|v_main_#t~post5_220|, ~last~0=v_~last~0_169} OutVars{~SIZE~0=v_~SIZE~0_151, main_#t~post5=|v_main_#t~post5_216|, main_~c~0=v_main_~c~0_360, ~last~0=v_~last~0_169} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {26355#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:58:11,455 INFO L290 TraceCheckUtils]: 16: Hoare triple {26355#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [163] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {26365#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 03:58:11,456 INFO L290 TraceCheckUtils]: 17: Hoare triple {26365#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {26299#false} is VALID [2022-04-28 03:58:11,456 INFO L290 TraceCheckUtils]: 18: Hoare triple {26299#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {26299#false} is VALID [2022-04-28 03:58:11,456 INFO L290 TraceCheckUtils]: 19: Hoare triple {26299#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {26299#false} is VALID [2022-04-28 03:58:11,456 INFO L290 TraceCheckUtils]: 20: Hoare triple {26299#false} assume !(~d~0 == ~SIZE~0); {26299#false} is VALID [2022-04-28 03:58:11,456 INFO L272 TraceCheckUtils]: 21: Hoare triple {26299#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {26299#false} is VALID [2022-04-28 03:58:11,456 INFO L290 TraceCheckUtils]: 22: Hoare triple {26299#false} ~cond := #in~cond; {26299#false} is VALID [2022-04-28 03:58:11,456 INFO L290 TraceCheckUtils]: 23: Hoare triple {26299#false} assume 0 == ~cond; {26299#false} is VALID [2022-04-28 03:58:11,456 INFO L290 TraceCheckUtils]: 24: Hoare triple {26299#false} assume !false; {26299#false} is VALID [2022-04-28 03:58:11,457 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:58:11,457 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 03:58:11,783 INFO L290 TraceCheckUtils]: 24: Hoare triple {26299#false} assume !false; {26299#false} is VALID [2022-04-28 03:58:11,783 INFO L290 TraceCheckUtils]: 23: Hoare triple {26299#false} assume 0 == ~cond; {26299#false} is VALID [2022-04-28 03:58:11,783 INFO L290 TraceCheckUtils]: 22: Hoare triple {26299#false} ~cond := #in~cond; {26299#false} is VALID [2022-04-28 03:58:11,783 INFO L272 TraceCheckUtils]: 21: Hoare triple {26299#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {26299#false} is VALID [2022-04-28 03:58:11,783 INFO L290 TraceCheckUtils]: 20: Hoare triple {26299#false} assume !(~d~0 == ~SIZE~0); {26299#false} is VALID [2022-04-28 03:58:11,783 INFO L290 TraceCheckUtils]: 19: Hoare triple {26299#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {26299#false} is VALID [2022-04-28 03:58:11,784 INFO L290 TraceCheckUtils]: 18: Hoare triple {26299#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {26299#false} is VALID [2022-04-28 03:58:11,784 INFO L290 TraceCheckUtils]: 17: Hoare triple {26411#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {26299#false} is VALID [2022-04-28 03:58:11,784 INFO L290 TraceCheckUtils]: 16: Hoare triple {26415#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [163] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {26411#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 03:58:11,785 INFO L290 TraceCheckUtils]: 15: Hoare triple {26415#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [166] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_361 v_main_~c~0_360))) (or (and (= |v_main_#t~post5_220| |v_main_#t~post5_216|) (= v_~last~0_169 v_~last~0_169) .cse0 (= v_~SIZE~0_151 v_~SIZE~0_151)) (and (< v_main_~c~0_360 (+ v_~SIZE~0_151 1)) (< v_main_~c~0_360 (+ v_~last~0_169 1)) (< v_main_~c~0_361 v_main_~c~0_360)) (and (= |v_main_#t~post5_216| |v_main_#t~post5_220|) .cse0 (or (not (< v_main_~c~0_361 v_~SIZE~0_151)) (not (< v_main_~c~0_361 v_~last~0_169)))))) InVars {~SIZE~0=v_~SIZE~0_151, main_~c~0=v_main_~c~0_361, main_#t~post5=|v_main_#t~post5_220|, ~last~0=v_~last~0_169} OutVars{~SIZE~0=v_~SIZE~0_151, main_#t~post5=|v_main_#t~post5_216|, main_~c~0=v_main_~c~0_360, ~last~0=v_~last~0_169} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {26415#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:58:11,791 INFO L290 TraceCheckUtils]: 14: Hoare triple {26415#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [165] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {26415#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:58:11,792 INFO L290 TraceCheckUtils]: 13: Hoare triple {26425#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [164] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_359 v_main_~c~0_358)) (.cse1 (= |v_main_#t~post5_217| |v_main_#t~post5_215|)) (.cse2 (= v_main_~st~0_192 v_main_~st~0_191)) (.cse3 (<= v_~last~0_168 v_main_~c~0_359))) (or (and (= v_~last~0_168 v_~last~0_168) .cse0 .cse1 .cse2 (= v_~SIZE~0_150 v_~SIZE~0_150)) (and .cse0 .cse1 .cse2 (or (not .cse3) (not (< v_main_~c~0_359 v_~SIZE~0_150)))) (and (< v_main_~c~0_358 (+ v_~SIZE~0_150 1)) .cse3 (< v_main_~c~0_359 v_main_~c~0_358) (= v_main_~st~0_191 0)))) InVars {~SIZE~0=v_~SIZE~0_150, main_~c~0=v_main_~c~0_359, main_#t~post5=|v_main_#t~post5_217|, main_~st~0=v_main_~st~0_192, ~last~0=v_~last~0_168} OutVars{~SIZE~0=v_~SIZE~0_150, main_#t~post5=|v_main_#t~post5_215|, main_~c~0=v_main_~c~0_358, main_~st~0=v_main_~st~0_191, ~last~0=v_~last~0_168} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {26415#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:58:11,792 INFO L290 TraceCheckUtils]: 12: Hoare triple {26429#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {26425#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 03:58:11,793 INFO L290 TraceCheckUtils]: 11: Hoare triple {26429#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {26429#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:11,793 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {26298#true} {26429#(< 1 ~SIZE~0)} #86#return; {26429#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:11,793 INFO L290 TraceCheckUtils]: 9: Hoare triple {26298#true} assume true; {26298#true} is VALID [2022-04-28 03:58:11,793 INFO L290 TraceCheckUtils]: 8: Hoare triple {26298#true} assume !(0 == ~cond); {26298#true} is VALID [2022-04-28 03:58:11,794 INFO L290 TraceCheckUtils]: 7: Hoare triple {26298#true} ~cond := #in~cond; {26298#true} is VALID [2022-04-28 03:58:11,794 INFO L272 TraceCheckUtils]: 6: Hoare triple {26429#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {26298#true} is VALID [2022-04-28 03:58:11,794 INFO L290 TraceCheckUtils]: 5: Hoare triple {26429#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {26429#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:11,794 INFO L272 TraceCheckUtils]: 4: Hoare triple {26429#(< 1 ~SIZE~0)} call #t~ret7 := main(); {26429#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:11,795 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {26429#(< 1 ~SIZE~0)} {26298#true} #90#return; {26429#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:11,795 INFO L290 TraceCheckUtils]: 2: Hoare triple {26429#(< 1 ~SIZE~0)} assume true; {26429#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:11,796 INFO L290 TraceCheckUtils]: 1: Hoare triple {26298#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {26429#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:11,796 INFO L272 TraceCheckUtils]: 0: Hoare triple {26298#true} call ULTIMATE.init(); {26298#true} is VALID [2022-04-28 03:58:11,796 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:58:11,796 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [369375040] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 03:58:11,796 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 03:58:11,796 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 03:58:12,189 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:58:12,189 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [744897404] [2022-04-28 03:58:12,189 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [744897404] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:58:12,189 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:58:12,189 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [18] imperfect sequences [] total 18 [2022-04-28 03:58:12,189 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2063220772] [2022-04-28 03:58:12,189 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:58:12,189 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 1.8888888888888888) internal successors, (34), 17 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 40 [2022-04-28 03:58:12,190 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:58:12,190 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 18 states, 18 states have (on average 1.8888888888888888) internal successors, (34), 17 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:58:12,222 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:58:12,222 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-04-28 03:58:12,222 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:58:12,222 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-04-28 03:58:12,222 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=173, Invalid=529, Unknown=0, NotChecked=0, Total=702 [2022-04-28 03:58:12,222 INFO L87 Difference]: Start difference. First operand 208 states and 254 transitions. Second operand has 18 states, 18 states have (on average 1.8888888888888888) internal successors, (34), 17 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:58:14,032 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:58:14,032 INFO L93 Difference]: Finished difference Result 395 states and 484 transitions. [2022-04-28 03:58:14,032 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-28 03:58:14,032 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 1.8888888888888888) internal successors, (34), 17 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 40 [2022-04-28 03:58:14,032 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:58:14,032 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 1.8888888888888888) internal successors, (34), 17 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:58:14,033 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 92 transitions. [2022-04-28 03:58:14,033 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 1.8888888888888888) internal successors, (34), 17 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:58:14,034 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 92 transitions. [2022-04-28 03:58:14,034 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 92 transitions. [2022-04-28 03:58:14,107 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 92 edges. 92 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:58:14,113 INFO L225 Difference]: With dead ends: 395 [2022-04-28 03:58:14,113 INFO L226 Difference]: Without dead ends: 242 [2022-04-28 03:58:14,114 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 88 GetRequests, 54 SyntacticMatches, 6 SemanticMatches, 28 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 435 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=208, Invalid=662, Unknown=0, NotChecked=0, Total=870 [2022-04-28 03:58:14,114 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 56 mSDsluCounter, 19 mSDsCounter, 0 mSdLazyCounter, 638 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 57 SdHoareTripleChecker+Valid, 43 SdHoareTripleChecker+Invalid, 654 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 638 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-28 03:58:14,114 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [57 Valid, 43 Invalid, 654 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 638 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-28 03:58:14,114 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 242 states. [2022-04-28 03:58:14,805 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 242 to 208. [2022-04-28 03:58:14,805 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:58:14,805 INFO L82 GeneralOperation]: Start isEquivalent. First operand 242 states. Second operand has 208 states, 193 states have (on average 1.2279792746113989) internal successors, (237), 196 states have internal predecessors, (237), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:58:14,805 INFO L74 IsIncluded]: Start isIncluded. First operand 242 states. Second operand has 208 states, 193 states have (on average 1.2279792746113989) internal successors, (237), 196 states have internal predecessors, (237), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:58:14,806 INFO L87 Difference]: Start difference. First operand 242 states. Second operand has 208 states, 193 states have (on average 1.2279792746113989) internal successors, (237), 196 states have internal predecessors, (237), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:58:14,808 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:58:14,808 INFO L93 Difference]: Finished difference Result 242 states and 292 transitions. [2022-04-28 03:58:14,809 INFO L276 IsEmpty]: Start isEmpty. Operand 242 states and 292 transitions. [2022-04-28 03:58:14,809 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:58:14,809 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:58:14,809 INFO L74 IsIncluded]: Start isIncluded. First operand has 208 states, 193 states have (on average 1.2279792746113989) internal successors, (237), 196 states have internal predecessors, (237), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 242 states. [2022-04-28 03:58:14,809 INFO L87 Difference]: Start difference. First operand has 208 states, 193 states have (on average 1.2279792746113989) internal successors, (237), 196 states have internal predecessors, (237), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 242 states. [2022-04-28 03:58:14,812 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:58:14,812 INFO L93 Difference]: Finished difference Result 242 states and 292 transitions. [2022-04-28 03:58:14,812 INFO L276 IsEmpty]: Start isEmpty. Operand 242 states and 292 transitions. [2022-04-28 03:58:14,812 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:58:14,812 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:58:14,812 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:58:14,813 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:58:14,813 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 208 states, 193 states have (on average 1.2279792746113989) internal successors, (237), 196 states have internal predecessors, (237), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:58:14,815 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 208 states to 208 states and 254 transitions. [2022-04-28 03:58:14,815 INFO L78 Accepts]: Start accepts. Automaton has 208 states and 254 transitions. Word has length 40 [2022-04-28 03:58:14,815 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:58:14,815 INFO L495 AbstractCegarLoop]: Abstraction has 208 states and 254 transitions. [2022-04-28 03:58:14,816 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 18 states have (on average 1.8888888888888888) internal successors, (34), 17 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:58:14,816 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 208 states and 254 transitions. [2022-04-28 03:58:15,199 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 254 edges. 254 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:58:15,199 INFO L276 IsEmpty]: Start isEmpty. Operand 208 states and 254 transitions. [2022-04-28 03:58:15,199 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-28 03:58:15,199 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:58:15,199 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:58:15,215 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Forceful destruction successful, exit code 0 [2022-04-28 03:58:15,400 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable23,16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:58:15,400 INFO L420 AbstractCegarLoop]: === Iteration 25 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:58:15,400 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:58:15,400 INFO L85 PathProgramCache]: Analyzing trace with hash -276453700, now seen corresponding path program 15 times [2022-04-28 03:58:15,400 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:58:15,400 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [899953088] [2022-04-28 03:58:18,016 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:58:18,130 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:58:18,331 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:58:18,333 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:58:18,336 INFO L85 PathProgramCache]: Analyzing trace with hash 1424709569, now seen corresponding path program 1 times [2022-04-28 03:58:18,336 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:58:18,336 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1361304235] [2022-04-28 03:58:18,336 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:58:18,336 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:58:18,343 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:18,397 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:58:18,398 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:18,402 INFO L290 TraceCheckUtils]: 0: Hoare triple {28191#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {28183#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:18,402 INFO L290 TraceCheckUtils]: 1: Hoare triple {28183#(<= 200000 ~SIZE~0)} assume true; {28183#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:18,402 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {28183#(<= 200000 ~SIZE~0)} {28178#true} #90#return; {28183#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:18,403 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:58:18,403 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:18,405 INFO L290 TraceCheckUtils]: 0: Hoare triple {28178#true} ~cond := #in~cond; {28178#true} is VALID [2022-04-28 03:58:18,405 INFO L290 TraceCheckUtils]: 1: Hoare triple {28178#true} assume !(0 == ~cond); {28178#true} is VALID [2022-04-28 03:58:18,405 INFO L290 TraceCheckUtils]: 2: Hoare triple {28178#true} assume true; {28178#true} is VALID [2022-04-28 03:58:18,405 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {28178#true} {28183#(<= 200000 ~SIZE~0)} #86#return; {28183#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:18,406 INFO L272 TraceCheckUtils]: 0: Hoare triple {28178#true} call ULTIMATE.init(); {28191#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:58:18,406 INFO L290 TraceCheckUtils]: 1: Hoare triple {28191#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {28183#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:18,407 INFO L290 TraceCheckUtils]: 2: Hoare triple {28183#(<= 200000 ~SIZE~0)} assume true; {28183#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:18,407 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {28183#(<= 200000 ~SIZE~0)} {28178#true} #90#return; {28183#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:18,407 INFO L272 TraceCheckUtils]: 4: Hoare triple {28183#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {28183#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:18,408 INFO L290 TraceCheckUtils]: 5: Hoare triple {28183#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {28183#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:18,408 INFO L272 TraceCheckUtils]: 6: Hoare triple {28183#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {28178#true} is VALID [2022-04-28 03:58:18,408 INFO L290 TraceCheckUtils]: 7: Hoare triple {28178#true} ~cond := #in~cond; {28178#true} is VALID [2022-04-28 03:58:18,408 INFO L290 TraceCheckUtils]: 8: Hoare triple {28178#true} assume !(0 == ~cond); {28178#true} is VALID [2022-04-28 03:58:18,408 INFO L290 TraceCheckUtils]: 9: Hoare triple {28178#true} assume true; {28178#true} is VALID [2022-04-28 03:58:18,419 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {28178#true} {28183#(<= 200000 ~SIZE~0)} #86#return; {28183#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:18,443 INFO L290 TraceCheckUtils]: 11: Hoare triple {28183#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {28183#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:18,459 INFO L290 TraceCheckUtils]: 12: Hoare triple {28183#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {28188#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:58:18,483 INFO L290 TraceCheckUtils]: 13: Hoare triple {28188#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [168] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_230| |v_main_#t~post5_228|)) (.cse1 (= v_main_~st~0_203 v_main_~st~0_202)) (.cse2 (= v_main_~c~0_382 v_main_~c~0_381)) (.cse3 (<= v_~last~0_178 v_main_~c~0_382))) (or (and .cse0 .cse1 (= v_~last~0_178 v_~last~0_178) (= v_~SIZE~0_159 v_~SIZE~0_159) .cse2) (and (= v_main_~st~0_202 0) .cse3 (< v_main_~c~0_381 (+ v_~SIZE~0_159 1)) (< v_main_~c~0_382 v_main_~c~0_381)) (and .cse0 .cse1 .cse2 (or (not .cse3) (not (< v_main_~c~0_382 v_~SIZE~0_159)))))) InVars {~SIZE~0=v_~SIZE~0_159, main_~c~0=v_main_~c~0_382, main_#t~post5=|v_main_#t~post5_230|, main_~st~0=v_main_~st~0_203, ~last~0=v_~last~0_178} OutVars{~SIZE~0=v_~SIZE~0_159, main_#t~post5=|v_main_#t~post5_228|, main_~c~0=v_main_~c~0_381, main_~st~0=v_main_~st~0_202, ~last~0=v_~last~0_178} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {28189#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:58:18,499 INFO L290 TraceCheckUtils]: 14: Hoare triple {28189#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [169] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28189#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:58:18,500 INFO L290 TraceCheckUtils]: 15: Hoare triple {28189#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [170] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_233| |v_main_#t~post5_229|)) (.cse1 (= v_main_~c~0_384 v_main_~c~0_383))) (or (and (< v_main_~c~0_383 (+ v_~last~0_179 1)) (< v_main_~c~0_383 (+ v_~SIZE~0_160 1)) (< v_main_~c~0_384 v_main_~c~0_383)) (and .cse0 (or (not (< v_main_~c~0_384 v_~last~0_179)) (not (< v_main_~c~0_384 v_~SIZE~0_160))) .cse1) (and .cse0 (= v_~SIZE~0_160 v_~SIZE~0_160) (= v_~last~0_179 v_~last~0_179) .cse1))) InVars {~SIZE~0=v_~SIZE~0_160, main_~c~0=v_main_~c~0_384, main_#t~post5=|v_main_#t~post5_233|, ~last~0=v_~last~0_179} OutVars{~SIZE~0=v_~SIZE~0_160, main_#t~post5=|v_main_#t~post5_229|, main_~c~0=v_main_~c~0_383, ~last~0=v_~last~0_179} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {28189#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:58:18,500 INFO L290 TraceCheckUtils]: 16: Hoare triple {28189#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [167] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {28190#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 03:58:18,501 INFO L290 TraceCheckUtils]: 17: Hoare triple {28190#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {28179#false} is VALID [2022-04-28 03:58:18,501 INFO L290 TraceCheckUtils]: 18: Hoare triple {28179#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {28179#false} is VALID [2022-04-28 03:58:18,501 INFO L290 TraceCheckUtils]: 19: Hoare triple {28179#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {28179#false} is VALID [2022-04-28 03:58:18,501 INFO L290 TraceCheckUtils]: 20: Hoare triple {28179#false} assume !(~d~0 == ~SIZE~0); {28179#false} is VALID [2022-04-28 03:58:18,501 INFO L272 TraceCheckUtils]: 21: Hoare triple {28179#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {28179#false} is VALID [2022-04-28 03:58:18,501 INFO L290 TraceCheckUtils]: 22: Hoare triple {28179#false} ~cond := #in~cond; {28179#false} is VALID [2022-04-28 03:58:18,501 INFO L290 TraceCheckUtils]: 23: Hoare triple {28179#false} assume 0 == ~cond; {28179#false} is VALID [2022-04-28 03:58:18,501 INFO L290 TraceCheckUtils]: 24: Hoare triple {28179#false} assume !false; {28179#false} is VALID [2022-04-28 03:58:18,501 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:58:18,502 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:58:18,502 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1361304235] [2022-04-28 03:58:18,502 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1361304235] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 03:58:18,502 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [152701493] [2022-04-28 03:58:18,502 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:58:18,502 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:58:18,502 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 03:58:18,503 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 03:58:18,504 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Waiting until timeout for monitored process [2022-04-28 03:58:18,532 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:18,532 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 03:58:18,538 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:18,539 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 03:58:18,768 INFO L272 TraceCheckUtils]: 0: Hoare triple {28178#true} call ULTIMATE.init(); {28178#true} is VALID [2022-04-28 03:58:18,769 INFO L290 TraceCheckUtils]: 1: Hoare triple {28178#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {28183#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:18,769 INFO L290 TraceCheckUtils]: 2: Hoare triple {28183#(<= 200000 ~SIZE~0)} assume true; {28183#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:18,769 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {28183#(<= 200000 ~SIZE~0)} {28178#true} #90#return; {28183#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:18,770 INFO L272 TraceCheckUtils]: 4: Hoare triple {28183#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {28183#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:18,770 INFO L290 TraceCheckUtils]: 5: Hoare triple {28183#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {28183#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:18,770 INFO L272 TraceCheckUtils]: 6: Hoare triple {28183#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {28183#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:18,770 INFO L290 TraceCheckUtils]: 7: Hoare triple {28183#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {28183#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:18,771 INFO L290 TraceCheckUtils]: 8: Hoare triple {28183#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {28183#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:18,771 INFO L290 TraceCheckUtils]: 9: Hoare triple {28183#(<= 200000 ~SIZE~0)} assume true; {28183#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:18,771 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {28183#(<= 200000 ~SIZE~0)} {28183#(<= 200000 ~SIZE~0)} #86#return; {28183#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:18,772 INFO L290 TraceCheckUtils]: 11: Hoare triple {28183#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {28183#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:18,772 INFO L290 TraceCheckUtils]: 12: Hoare triple {28183#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {28231#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:58:18,773 INFO L290 TraceCheckUtils]: 13: Hoare triple {28231#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [168] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_230| |v_main_#t~post5_228|)) (.cse1 (= v_main_~st~0_203 v_main_~st~0_202)) (.cse2 (= v_main_~c~0_382 v_main_~c~0_381)) (.cse3 (<= v_~last~0_178 v_main_~c~0_382))) (or (and .cse0 .cse1 (= v_~last~0_178 v_~last~0_178) (= v_~SIZE~0_159 v_~SIZE~0_159) .cse2) (and (= v_main_~st~0_202 0) .cse3 (< v_main_~c~0_381 (+ v_~SIZE~0_159 1)) (< v_main_~c~0_382 v_main_~c~0_381)) (and .cse0 .cse1 .cse2 (or (not .cse3) (not (< v_main_~c~0_382 v_~SIZE~0_159)))))) InVars {~SIZE~0=v_~SIZE~0_159, main_~c~0=v_main_~c~0_382, main_#t~post5=|v_main_#t~post5_230|, main_~st~0=v_main_~st~0_203, ~last~0=v_~last~0_178} OutVars{~SIZE~0=v_~SIZE~0_159, main_#t~post5=|v_main_#t~post5_228|, main_~c~0=v_main_~c~0_381, main_~st~0=v_main_~st~0_202, ~last~0=v_~last~0_178} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {28235#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:58:18,773 INFO L290 TraceCheckUtils]: 14: Hoare triple {28235#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [169] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28235#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:58:18,774 INFO L290 TraceCheckUtils]: 15: Hoare triple {28235#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [170] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_233| |v_main_#t~post5_229|)) (.cse1 (= v_main_~c~0_384 v_main_~c~0_383))) (or (and (< v_main_~c~0_383 (+ v_~last~0_179 1)) (< v_main_~c~0_383 (+ v_~SIZE~0_160 1)) (< v_main_~c~0_384 v_main_~c~0_383)) (and .cse0 (or (not (< v_main_~c~0_384 v_~last~0_179)) (not (< v_main_~c~0_384 v_~SIZE~0_160))) .cse1) (and .cse0 (= v_~SIZE~0_160 v_~SIZE~0_160) (= v_~last~0_179 v_~last~0_179) .cse1))) InVars {~SIZE~0=v_~SIZE~0_160, main_~c~0=v_main_~c~0_384, main_#t~post5=|v_main_#t~post5_233|, ~last~0=v_~last~0_179} OutVars{~SIZE~0=v_~SIZE~0_160, main_#t~post5=|v_main_#t~post5_229|, main_~c~0=v_main_~c~0_383, ~last~0=v_~last~0_179} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {28235#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:58:18,774 INFO L290 TraceCheckUtils]: 16: Hoare triple {28235#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [167] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {28245#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 03:58:18,775 INFO L290 TraceCheckUtils]: 17: Hoare triple {28245#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {28179#false} is VALID [2022-04-28 03:58:18,775 INFO L290 TraceCheckUtils]: 18: Hoare triple {28179#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {28179#false} is VALID [2022-04-28 03:58:18,775 INFO L290 TraceCheckUtils]: 19: Hoare triple {28179#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {28179#false} is VALID [2022-04-28 03:58:18,775 INFO L290 TraceCheckUtils]: 20: Hoare triple {28179#false} assume !(~d~0 == ~SIZE~0); {28179#false} is VALID [2022-04-28 03:58:18,775 INFO L272 TraceCheckUtils]: 21: Hoare triple {28179#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {28179#false} is VALID [2022-04-28 03:58:18,775 INFO L290 TraceCheckUtils]: 22: Hoare triple {28179#false} ~cond := #in~cond; {28179#false} is VALID [2022-04-28 03:58:18,775 INFO L290 TraceCheckUtils]: 23: Hoare triple {28179#false} assume 0 == ~cond; {28179#false} is VALID [2022-04-28 03:58:18,775 INFO L290 TraceCheckUtils]: 24: Hoare triple {28179#false} assume !false; {28179#false} is VALID [2022-04-28 03:58:18,775 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:58:18,775 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 03:58:19,073 INFO L290 TraceCheckUtils]: 24: Hoare triple {28179#false} assume !false; {28179#false} is VALID [2022-04-28 03:58:19,073 INFO L290 TraceCheckUtils]: 23: Hoare triple {28179#false} assume 0 == ~cond; {28179#false} is VALID [2022-04-28 03:58:19,073 INFO L290 TraceCheckUtils]: 22: Hoare triple {28179#false} ~cond := #in~cond; {28179#false} is VALID [2022-04-28 03:58:19,073 INFO L272 TraceCheckUtils]: 21: Hoare triple {28179#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {28179#false} is VALID [2022-04-28 03:58:19,073 INFO L290 TraceCheckUtils]: 20: Hoare triple {28179#false} assume !(~d~0 == ~SIZE~0); {28179#false} is VALID [2022-04-28 03:58:19,074 INFO L290 TraceCheckUtils]: 19: Hoare triple {28179#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {28179#false} is VALID [2022-04-28 03:58:19,074 INFO L290 TraceCheckUtils]: 18: Hoare triple {28179#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {28179#false} is VALID [2022-04-28 03:58:19,074 INFO L290 TraceCheckUtils]: 17: Hoare triple {28291#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {28179#false} is VALID [2022-04-28 03:58:19,074 INFO L290 TraceCheckUtils]: 16: Hoare triple {28295#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [167] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {28291#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 03:58:19,075 INFO L290 TraceCheckUtils]: 15: Hoare triple {28295#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [170] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_233| |v_main_#t~post5_229|)) (.cse1 (= v_main_~c~0_384 v_main_~c~0_383))) (or (and (< v_main_~c~0_383 (+ v_~last~0_179 1)) (< v_main_~c~0_383 (+ v_~SIZE~0_160 1)) (< v_main_~c~0_384 v_main_~c~0_383)) (and .cse0 (or (not (< v_main_~c~0_384 v_~last~0_179)) (not (< v_main_~c~0_384 v_~SIZE~0_160))) .cse1) (and .cse0 (= v_~SIZE~0_160 v_~SIZE~0_160) (= v_~last~0_179 v_~last~0_179) .cse1))) InVars {~SIZE~0=v_~SIZE~0_160, main_~c~0=v_main_~c~0_384, main_#t~post5=|v_main_#t~post5_233|, ~last~0=v_~last~0_179} OutVars{~SIZE~0=v_~SIZE~0_160, main_#t~post5=|v_main_#t~post5_229|, main_~c~0=v_main_~c~0_383, ~last~0=v_~last~0_179} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {28295#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:58:19,075 INFO L290 TraceCheckUtils]: 14: Hoare triple {28295#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [169] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {28295#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:58:19,076 INFO L290 TraceCheckUtils]: 13: Hoare triple {28305#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [168] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_230| |v_main_#t~post5_228|)) (.cse1 (= v_main_~st~0_203 v_main_~st~0_202)) (.cse2 (= v_main_~c~0_382 v_main_~c~0_381)) (.cse3 (<= v_~last~0_178 v_main_~c~0_382))) (or (and .cse0 .cse1 (= v_~last~0_178 v_~last~0_178) (= v_~SIZE~0_159 v_~SIZE~0_159) .cse2) (and (= v_main_~st~0_202 0) .cse3 (< v_main_~c~0_381 (+ v_~SIZE~0_159 1)) (< v_main_~c~0_382 v_main_~c~0_381)) (and .cse0 .cse1 .cse2 (or (not .cse3) (not (< v_main_~c~0_382 v_~SIZE~0_159)))))) InVars {~SIZE~0=v_~SIZE~0_159, main_~c~0=v_main_~c~0_382, main_#t~post5=|v_main_#t~post5_230|, main_~st~0=v_main_~st~0_203, ~last~0=v_~last~0_178} OutVars{~SIZE~0=v_~SIZE~0_159, main_#t~post5=|v_main_#t~post5_228|, main_~c~0=v_main_~c~0_381, main_~st~0=v_main_~st~0_202, ~last~0=v_~last~0_178} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {28295#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:58:19,076 INFO L290 TraceCheckUtils]: 12: Hoare triple {28309#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {28305#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 03:58:19,077 INFO L290 TraceCheckUtils]: 11: Hoare triple {28309#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {28309#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:19,077 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {28178#true} {28309#(< 1 ~SIZE~0)} #86#return; {28309#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:19,077 INFO L290 TraceCheckUtils]: 9: Hoare triple {28178#true} assume true; {28178#true} is VALID [2022-04-28 03:58:19,077 INFO L290 TraceCheckUtils]: 8: Hoare triple {28178#true} assume !(0 == ~cond); {28178#true} is VALID [2022-04-28 03:58:19,077 INFO L290 TraceCheckUtils]: 7: Hoare triple {28178#true} ~cond := #in~cond; {28178#true} is VALID [2022-04-28 03:58:19,077 INFO L272 TraceCheckUtils]: 6: Hoare triple {28309#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {28178#true} is VALID [2022-04-28 03:58:19,078 INFO L290 TraceCheckUtils]: 5: Hoare triple {28309#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {28309#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:19,078 INFO L272 TraceCheckUtils]: 4: Hoare triple {28309#(< 1 ~SIZE~0)} call #t~ret7 := main(); {28309#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:19,078 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {28309#(< 1 ~SIZE~0)} {28178#true} #90#return; {28309#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:19,078 INFO L290 TraceCheckUtils]: 2: Hoare triple {28309#(< 1 ~SIZE~0)} assume true; {28309#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:19,079 INFO L290 TraceCheckUtils]: 1: Hoare triple {28178#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {28309#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:19,079 INFO L272 TraceCheckUtils]: 0: Hoare triple {28178#true} call ULTIMATE.init(); {28178#true} is VALID [2022-04-28 03:58:19,079 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:58:19,079 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [152701493] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 03:58:19,079 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 03:58:19,079 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 03:58:19,486 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:58:19,487 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [899953088] [2022-04-28 03:58:19,487 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [899953088] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:58:19,487 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:58:19,487 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [19] imperfect sequences [] total 19 [2022-04-28 03:58:19,487 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [797932055] [2022-04-28 03:58:19,487 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:58:19,487 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 1.7894736842105263) internal successors, (34), 18 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 40 [2022-04-28 03:58:19,487 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:58:19,487 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 19 states, 19 states have (on average 1.7894736842105263) internal successors, (34), 18 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:58:19,528 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:58:19,528 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2022-04-28 03:58:19,528 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:58:19,529 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-04-28 03:58:19,529 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=188, Invalid=568, Unknown=0, NotChecked=0, Total=756 [2022-04-28 03:58:19,529 INFO L87 Difference]: Start difference. First operand 208 states and 254 transitions. Second operand has 19 states, 19 states have (on average 1.7894736842105263) internal successors, (34), 18 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:58:21,202 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:58:21,203 INFO L93 Difference]: Finished difference Result 409 states and 508 transitions. [2022-04-28 03:58:21,203 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2022-04-28 03:58:21,203 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 1.7894736842105263) internal successors, (34), 18 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 40 [2022-04-28 03:58:21,203 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:58:21,203 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 1.7894736842105263) internal successors, (34), 18 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:58:21,204 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 94 transitions. [2022-04-28 03:58:21,204 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 1.7894736842105263) internal successors, (34), 18 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:58:21,205 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 94 transitions. [2022-04-28 03:58:21,205 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 19 states and 94 transitions. [2022-04-28 03:58:21,270 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 94 edges. 94 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:58:21,275 INFO L225 Difference]: With dead ends: 409 [2022-04-28 03:58:21,275 INFO L226 Difference]: Without dead ends: 245 [2022-04-28 03:58:21,276 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 88 GetRequests, 54 SyntacticMatches, 5 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 426 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=225, Invalid=705, Unknown=0, NotChecked=0, Total=930 [2022-04-28 03:58:21,276 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 63 mSDsluCounter, 18 mSDsCounter, 0 mSdLazyCounter, 549 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 64 SdHoareTripleChecker+Valid, 42 SdHoareTripleChecker+Invalid, 567 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 549 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 03:58:21,276 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [64 Valid, 42 Invalid, 567 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 549 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 03:58:21,277 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 245 states. [2022-04-28 03:58:22,017 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 245 to 220. [2022-04-28 03:58:22,017 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:58:22,017 INFO L82 GeneralOperation]: Start isEquivalent. First operand 245 states. Second operand has 220 states, 205 states have (on average 1.2341463414634146) internal successors, (253), 208 states have internal predecessors, (253), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:58:22,018 INFO L74 IsIncluded]: Start isIncluded. First operand 245 states. Second operand has 220 states, 205 states have (on average 1.2341463414634146) internal successors, (253), 208 states have internal predecessors, (253), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:58:22,018 INFO L87 Difference]: Start difference. First operand 245 states. Second operand has 220 states, 205 states have (on average 1.2341463414634146) internal successors, (253), 208 states have internal predecessors, (253), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:58:22,021 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:58:22,021 INFO L93 Difference]: Finished difference Result 245 states and 299 transitions. [2022-04-28 03:58:22,021 INFO L276 IsEmpty]: Start isEmpty. Operand 245 states and 299 transitions. [2022-04-28 03:58:22,021 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:58:22,021 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:58:22,021 INFO L74 IsIncluded]: Start isIncluded. First operand has 220 states, 205 states have (on average 1.2341463414634146) internal successors, (253), 208 states have internal predecessors, (253), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 245 states. [2022-04-28 03:58:22,021 INFO L87 Difference]: Start difference. First operand has 220 states, 205 states have (on average 1.2341463414634146) internal successors, (253), 208 states have internal predecessors, (253), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 245 states. [2022-04-28 03:58:22,037 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:58:22,037 INFO L93 Difference]: Finished difference Result 245 states and 299 transitions. [2022-04-28 03:58:22,037 INFO L276 IsEmpty]: Start isEmpty. Operand 245 states and 299 transitions. [2022-04-28 03:58:22,037 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:58:22,037 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:58:22,037 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:58:22,037 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:58:22,038 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 220 states, 205 states have (on average 1.2341463414634146) internal successors, (253), 208 states have internal predecessors, (253), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:58:22,040 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 220 states to 220 states and 270 transitions. [2022-04-28 03:58:22,040 INFO L78 Accepts]: Start accepts. Automaton has 220 states and 270 transitions. Word has length 40 [2022-04-28 03:58:22,040 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:58:22,040 INFO L495 AbstractCegarLoop]: Abstraction has 220 states and 270 transitions. [2022-04-28 03:58:22,041 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 19 states have (on average 1.7894736842105263) internal successors, (34), 18 states have internal predecessors, (34), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:58:22,041 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 220 states and 270 transitions. [2022-04-28 03:58:22,449 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 270 edges. 270 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:58:22,450 INFO L276 IsEmpty]: Start isEmpty. Operand 220 states and 270 transitions. [2022-04-28 03:58:22,450 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-28 03:58:22,450 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:58:22,450 INFO L195 NwaCegarLoop]: trace histogram [7, 7, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:58:22,468 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Forceful destruction successful, exit code 0 [2022-04-28 03:58:22,651 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 17 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable24 [2022-04-28 03:58:22,651 INFO L420 AbstractCegarLoop]: === Iteration 26 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:58:22,651 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:58:22,651 INFO L85 PathProgramCache]: Analyzing trace with hash -1742267585, now seen corresponding path program 16 times [2022-04-28 03:58:22,651 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:58:22,651 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1180033447] [2022-04-28 03:58:26,775 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:58:26,893 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:58:29,495 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:58:29,583 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:58:29,584 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:58:29,587 INFO L85 PathProgramCache]: Analyzing trace with hash -377734975, now seen corresponding path program 1 times [2022-04-28 03:58:29,587 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:58:29,587 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1353888546] [2022-04-28 03:58:29,588 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:58:29,588 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:58:29,596 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:29,674 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:58:29,676 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:29,693 INFO L290 TraceCheckUtils]: 0: Hoare triple {30131#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {30122#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:29,694 INFO L290 TraceCheckUtils]: 1: Hoare triple {30122#(<= 200000 ~SIZE~0)} assume true; {30122#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:29,694 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {30122#(<= 200000 ~SIZE~0)} {30117#true} #90#return; {30122#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:29,694 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:58:29,695 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:29,697 INFO L290 TraceCheckUtils]: 0: Hoare triple {30117#true} ~cond := #in~cond; {30117#true} is VALID [2022-04-28 03:58:29,697 INFO L290 TraceCheckUtils]: 1: Hoare triple {30117#true} assume !(0 == ~cond); {30117#true} is VALID [2022-04-28 03:58:29,697 INFO L290 TraceCheckUtils]: 2: Hoare triple {30117#true} assume true; {30117#true} is VALID [2022-04-28 03:58:29,697 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {30117#true} {30122#(<= 200000 ~SIZE~0)} #86#return; {30122#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:29,698 INFO L272 TraceCheckUtils]: 0: Hoare triple {30117#true} call ULTIMATE.init(); {30131#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:58:29,698 INFO L290 TraceCheckUtils]: 1: Hoare triple {30131#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {30122#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:29,698 INFO L290 TraceCheckUtils]: 2: Hoare triple {30122#(<= 200000 ~SIZE~0)} assume true; {30122#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:29,699 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {30122#(<= 200000 ~SIZE~0)} {30117#true} #90#return; {30122#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:29,699 INFO L272 TraceCheckUtils]: 4: Hoare triple {30122#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {30122#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:29,699 INFO L290 TraceCheckUtils]: 5: Hoare triple {30122#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {30122#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:29,699 INFO L272 TraceCheckUtils]: 6: Hoare triple {30122#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {30117#true} is VALID [2022-04-28 03:58:29,700 INFO L290 TraceCheckUtils]: 7: Hoare triple {30117#true} ~cond := #in~cond; {30117#true} is VALID [2022-04-28 03:58:29,700 INFO L290 TraceCheckUtils]: 8: Hoare triple {30117#true} assume !(0 == ~cond); {30117#true} is VALID [2022-04-28 03:58:29,700 INFO L290 TraceCheckUtils]: 9: Hoare triple {30117#true} assume true; {30117#true} is VALID [2022-04-28 03:58:29,700 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {30117#true} {30122#(<= 200000 ~SIZE~0)} #86#return; {30122#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:29,700 INFO L290 TraceCheckUtils]: 11: Hoare triple {30122#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {30122#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:29,701 INFO L290 TraceCheckUtils]: 12: Hoare triple {30122#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {30127#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:58:29,701 INFO L290 TraceCheckUtils]: 13: Hoare triple {30127#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} [172] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_243| |v_main_#t~post5_241|)) (.cse1 (= v_main_~c~0_405 v_main_~c~0_404)) (.cse2 (= v_main_~st~0_213 v_main_~st~0_212)) (.cse3 (<= v_~last~0_188 v_main_~c~0_405))) (or (and .cse0 .cse1 .cse2 (or (not .cse3) (not (< v_main_~c~0_405 v_~SIZE~0_168)))) (and .cse0 .cse1 (= v_~last~0_188 v_~last~0_188) (= v_~SIZE~0_168 v_~SIZE~0_168) .cse2) (and (< v_main_~c~0_404 (+ v_~SIZE~0_168 1)) (< v_main_~c~0_405 v_main_~c~0_404) .cse3 (= v_main_~st~0_212 0)))) InVars {~SIZE~0=v_~SIZE~0_168, main_~c~0=v_main_~c~0_405, main_#t~post5=|v_main_#t~post5_243|, main_~st~0=v_main_~st~0_213, ~last~0=v_~last~0_188} OutVars{~SIZE~0=v_~SIZE~0_168, main_#t~post5=|v_main_#t~post5_241|, main_~c~0=v_main_~c~0_404, main_~st~0=v_main_~st~0_212, ~last~0=v_~last~0_188} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {30128#(and (or (not (= main_~c~0 0)) (<= 200000 ~SIZE~0)) (or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~c~0 0)))} is VALID [2022-04-28 03:58:29,702 INFO L290 TraceCheckUtils]: 14: Hoare triple {30128#(and (or (not (= main_~c~0 0)) (<= 200000 ~SIZE~0)) (or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~c~0 0)))} [173] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {30128#(and (or (not (= main_~c~0 0)) (<= 200000 ~SIZE~0)) (or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~c~0 0)))} is VALID [2022-04-28 03:58:29,702 INFO L290 TraceCheckUtils]: 15: Hoare triple {30128#(and (or (not (= main_~c~0 0)) (<= 200000 ~SIZE~0)) (or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~c~0 0)))} [174] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_246| |v_main_#t~post5_242|))) (or (and (< v_main_~c~0_407 v_main_~c~0_406) (< v_main_~c~0_406 (+ v_~SIZE~0_169 1)) (< v_main_~c~0_406 (+ v_~last~0_189 1))) (and (= v_main_~c~0_407 v_main_~c~0_406) (= v_~last~0_189 v_~last~0_189) (= v_~SIZE~0_169 v_~SIZE~0_169) .cse0) (and (or (not (< v_main_~c~0_407 v_~last~0_189)) (not (< v_main_~c~0_407 v_~SIZE~0_169))) (= v_main_~c~0_406 v_main_~c~0_407) .cse0))) InVars {~SIZE~0=v_~SIZE~0_169, main_~c~0=v_main_~c~0_407, main_#t~post5=|v_main_#t~post5_246|, ~last~0=v_~last~0_189} OutVars{~SIZE~0=v_~SIZE~0_169, main_#t~post5=|v_main_#t~post5_242|, main_~c~0=v_main_~c~0_406, ~last~0=v_~last~0_189} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {30129#(or (<= (+ ~last~0 200000) ~SIZE~0) (<= main_~c~0 ~last~0))} is VALID [2022-04-28 03:58:29,703 INFO L290 TraceCheckUtils]: 16: Hoare triple {30129#(or (<= (+ ~last~0 200000) ~SIZE~0) (<= main_~c~0 ~last~0))} [171] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {30130#(or (<= (+ ~last~0 200000) main_~c~0) (<= main_~c~0 ~last~0))} is VALID [2022-04-28 03:58:29,703 INFO L290 TraceCheckUtils]: 17: Hoare triple {30130#(or (<= (+ ~last~0 200000) main_~c~0) (<= main_~c~0 ~last~0))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {30118#false} is VALID [2022-04-28 03:58:29,703 INFO L290 TraceCheckUtils]: 18: Hoare triple {30118#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {30118#false} is VALID [2022-04-28 03:58:29,703 INFO L290 TraceCheckUtils]: 19: Hoare triple {30118#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {30118#false} is VALID [2022-04-28 03:58:29,704 INFO L290 TraceCheckUtils]: 20: Hoare triple {30118#false} assume !(~d~0 == ~SIZE~0); {30118#false} is VALID [2022-04-28 03:58:29,704 INFO L272 TraceCheckUtils]: 21: Hoare triple {30118#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {30118#false} is VALID [2022-04-28 03:58:29,704 INFO L290 TraceCheckUtils]: 22: Hoare triple {30118#false} ~cond := #in~cond; {30118#false} is VALID [2022-04-28 03:58:29,704 INFO L290 TraceCheckUtils]: 23: Hoare triple {30118#false} assume 0 == ~cond; {30118#false} is VALID [2022-04-28 03:58:29,704 INFO L290 TraceCheckUtils]: 24: Hoare triple {30118#false} assume !false; {30118#false} is VALID [2022-04-28 03:58:29,704 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 03:58:29,704 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:58:29,704 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1353888546] [2022-04-28 03:58:29,704 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1353888546] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 03:58:29,704 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1378014476] [2022-04-28 03:58:29,704 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:58:29,704 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:58:29,705 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 03:58:29,705 INFO L229 MonitoredProcess]: Starting monitored process 18 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 03:58:29,706 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Waiting until timeout for monitored process [2022-04-28 03:58:29,734 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:29,735 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 03:58:29,741 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:29,742 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 03:58:29,977 INFO L272 TraceCheckUtils]: 0: Hoare triple {30117#true} call ULTIMATE.init(); {30117#true} is VALID [2022-04-28 03:58:29,978 INFO L290 TraceCheckUtils]: 1: Hoare triple {30117#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {30122#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:29,978 INFO L290 TraceCheckUtils]: 2: Hoare triple {30122#(<= 200000 ~SIZE~0)} assume true; {30122#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:29,978 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {30122#(<= 200000 ~SIZE~0)} {30117#true} #90#return; {30122#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:29,979 INFO L272 TraceCheckUtils]: 4: Hoare triple {30122#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {30122#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:29,979 INFO L290 TraceCheckUtils]: 5: Hoare triple {30122#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {30122#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:29,979 INFO L272 TraceCheckUtils]: 6: Hoare triple {30122#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {30122#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:29,979 INFO L290 TraceCheckUtils]: 7: Hoare triple {30122#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {30122#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:29,980 INFO L290 TraceCheckUtils]: 8: Hoare triple {30122#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {30122#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:29,980 INFO L290 TraceCheckUtils]: 9: Hoare triple {30122#(<= 200000 ~SIZE~0)} assume true; {30122#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:29,980 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {30122#(<= 200000 ~SIZE~0)} {30122#(<= 200000 ~SIZE~0)} #86#return; {30122#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:29,981 INFO L290 TraceCheckUtils]: 11: Hoare triple {30122#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {30122#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:29,981 INFO L290 TraceCheckUtils]: 12: Hoare triple {30122#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {30171#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:58:29,982 INFO L290 TraceCheckUtils]: 13: Hoare triple {30171#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [172] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_243| |v_main_#t~post5_241|)) (.cse1 (= v_main_~c~0_405 v_main_~c~0_404)) (.cse2 (= v_main_~st~0_213 v_main_~st~0_212)) (.cse3 (<= v_~last~0_188 v_main_~c~0_405))) (or (and .cse0 .cse1 .cse2 (or (not .cse3) (not (< v_main_~c~0_405 v_~SIZE~0_168)))) (and .cse0 .cse1 (= v_~last~0_188 v_~last~0_188) (= v_~SIZE~0_168 v_~SIZE~0_168) .cse2) (and (< v_main_~c~0_404 (+ v_~SIZE~0_168 1)) (< v_main_~c~0_405 v_main_~c~0_404) .cse3 (= v_main_~st~0_212 0)))) InVars {~SIZE~0=v_~SIZE~0_168, main_~c~0=v_main_~c~0_405, main_#t~post5=|v_main_#t~post5_243|, main_~st~0=v_main_~st~0_213, ~last~0=v_~last~0_188} OutVars{~SIZE~0=v_~SIZE~0_168, main_#t~post5=|v_main_#t~post5_241|, main_~c~0=v_main_~c~0_404, main_~st~0=v_main_~st~0_212, ~last~0=v_~last~0_188} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {30175#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:58:29,982 INFO L290 TraceCheckUtils]: 14: Hoare triple {30175#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [173] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {30175#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:58:29,983 INFO L290 TraceCheckUtils]: 15: Hoare triple {30175#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [174] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_246| |v_main_#t~post5_242|))) (or (and (< v_main_~c~0_407 v_main_~c~0_406) (< v_main_~c~0_406 (+ v_~SIZE~0_169 1)) (< v_main_~c~0_406 (+ v_~last~0_189 1))) (and (= v_main_~c~0_407 v_main_~c~0_406) (= v_~last~0_189 v_~last~0_189) (= v_~SIZE~0_169 v_~SIZE~0_169) .cse0) (and (or (not (< v_main_~c~0_407 v_~last~0_189)) (not (< v_main_~c~0_407 v_~SIZE~0_169))) (= v_main_~c~0_406 v_main_~c~0_407) .cse0))) InVars {~SIZE~0=v_~SIZE~0_169, main_~c~0=v_main_~c~0_407, main_#t~post5=|v_main_#t~post5_246|, ~last~0=v_~last~0_189} OutVars{~SIZE~0=v_~SIZE~0_169, main_#t~post5=|v_main_#t~post5_242|, main_~c~0=v_main_~c~0_406, ~last~0=v_~last~0_189} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {30175#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:58:29,983 INFO L290 TraceCheckUtils]: 16: Hoare triple {30175#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [171] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {30185#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 03:58:29,984 INFO L290 TraceCheckUtils]: 17: Hoare triple {30185#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {30118#false} is VALID [2022-04-28 03:58:29,984 INFO L290 TraceCheckUtils]: 18: Hoare triple {30118#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {30118#false} is VALID [2022-04-28 03:58:29,984 INFO L290 TraceCheckUtils]: 19: Hoare triple {30118#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {30118#false} is VALID [2022-04-28 03:58:29,984 INFO L290 TraceCheckUtils]: 20: Hoare triple {30118#false} assume !(~d~0 == ~SIZE~0); {30118#false} is VALID [2022-04-28 03:58:29,984 INFO L272 TraceCheckUtils]: 21: Hoare triple {30118#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {30118#false} is VALID [2022-04-28 03:58:29,984 INFO L290 TraceCheckUtils]: 22: Hoare triple {30118#false} ~cond := #in~cond; {30118#false} is VALID [2022-04-28 03:58:29,984 INFO L290 TraceCheckUtils]: 23: Hoare triple {30118#false} assume 0 == ~cond; {30118#false} is VALID [2022-04-28 03:58:29,984 INFO L290 TraceCheckUtils]: 24: Hoare triple {30118#false} assume !false; {30118#false} is VALID [2022-04-28 03:58:29,984 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:58:29,984 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 03:58:30,318 INFO L290 TraceCheckUtils]: 24: Hoare triple {30118#false} assume !false; {30118#false} is VALID [2022-04-28 03:58:30,318 INFO L290 TraceCheckUtils]: 23: Hoare triple {30118#false} assume 0 == ~cond; {30118#false} is VALID [2022-04-28 03:58:30,319 INFO L290 TraceCheckUtils]: 22: Hoare triple {30118#false} ~cond := #in~cond; {30118#false} is VALID [2022-04-28 03:58:30,319 INFO L272 TraceCheckUtils]: 21: Hoare triple {30118#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {30118#false} is VALID [2022-04-28 03:58:30,319 INFO L290 TraceCheckUtils]: 20: Hoare triple {30118#false} assume !(~d~0 == ~SIZE~0); {30118#false} is VALID [2022-04-28 03:58:30,319 INFO L290 TraceCheckUtils]: 19: Hoare triple {30118#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {30118#false} is VALID [2022-04-28 03:58:30,319 INFO L290 TraceCheckUtils]: 18: Hoare triple {30118#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {30118#false} is VALID [2022-04-28 03:58:30,319 INFO L290 TraceCheckUtils]: 17: Hoare triple {30231#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {30118#false} is VALID [2022-04-28 03:58:30,320 INFO L290 TraceCheckUtils]: 16: Hoare triple {30235#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [171] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {30231#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 03:58:30,320 INFO L290 TraceCheckUtils]: 15: Hoare triple {30235#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [174] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_246| |v_main_#t~post5_242|))) (or (and (< v_main_~c~0_407 v_main_~c~0_406) (< v_main_~c~0_406 (+ v_~SIZE~0_169 1)) (< v_main_~c~0_406 (+ v_~last~0_189 1))) (and (= v_main_~c~0_407 v_main_~c~0_406) (= v_~last~0_189 v_~last~0_189) (= v_~SIZE~0_169 v_~SIZE~0_169) .cse0) (and (or (not (< v_main_~c~0_407 v_~last~0_189)) (not (< v_main_~c~0_407 v_~SIZE~0_169))) (= v_main_~c~0_406 v_main_~c~0_407) .cse0))) InVars {~SIZE~0=v_~SIZE~0_169, main_~c~0=v_main_~c~0_407, main_#t~post5=|v_main_#t~post5_246|, ~last~0=v_~last~0_189} OutVars{~SIZE~0=v_~SIZE~0_169, main_#t~post5=|v_main_#t~post5_242|, main_~c~0=v_main_~c~0_406, ~last~0=v_~last~0_189} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {30235#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:58:30,320 INFO L290 TraceCheckUtils]: 14: Hoare triple {30235#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [173] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {30235#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:58:30,321 INFO L290 TraceCheckUtils]: 13: Hoare triple {30245#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [172] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_243| |v_main_#t~post5_241|)) (.cse1 (= v_main_~c~0_405 v_main_~c~0_404)) (.cse2 (= v_main_~st~0_213 v_main_~st~0_212)) (.cse3 (<= v_~last~0_188 v_main_~c~0_405))) (or (and .cse0 .cse1 .cse2 (or (not .cse3) (not (< v_main_~c~0_405 v_~SIZE~0_168)))) (and .cse0 .cse1 (= v_~last~0_188 v_~last~0_188) (= v_~SIZE~0_168 v_~SIZE~0_168) .cse2) (and (< v_main_~c~0_404 (+ v_~SIZE~0_168 1)) (< v_main_~c~0_405 v_main_~c~0_404) .cse3 (= v_main_~st~0_212 0)))) InVars {~SIZE~0=v_~SIZE~0_168, main_~c~0=v_main_~c~0_405, main_#t~post5=|v_main_#t~post5_243|, main_~st~0=v_main_~st~0_213, ~last~0=v_~last~0_188} OutVars{~SIZE~0=v_~SIZE~0_168, main_#t~post5=|v_main_#t~post5_241|, main_~c~0=v_main_~c~0_404, main_~st~0=v_main_~st~0_212, ~last~0=v_~last~0_188} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {30235#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:58:30,322 INFO L290 TraceCheckUtils]: 12: Hoare triple {30249#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {30245#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 03:58:30,322 INFO L290 TraceCheckUtils]: 11: Hoare triple {30249#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {30249#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:30,322 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {30117#true} {30249#(< 1 ~SIZE~0)} #86#return; {30249#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:30,322 INFO L290 TraceCheckUtils]: 9: Hoare triple {30117#true} assume true; {30117#true} is VALID [2022-04-28 03:58:30,322 INFO L290 TraceCheckUtils]: 8: Hoare triple {30117#true} assume !(0 == ~cond); {30117#true} is VALID [2022-04-28 03:58:30,322 INFO L290 TraceCheckUtils]: 7: Hoare triple {30117#true} ~cond := #in~cond; {30117#true} is VALID [2022-04-28 03:58:30,323 INFO L272 TraceCheckUtils]: 6: Hoare triple {30249#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {30117#true} is VALID [2022-04-28 03:58:30,323 INFO L290 TraceCheckUtils]: 5: Hoare triple {30249#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {30249#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:30,323 INFO L272 TraceCheckUtils]: 4: Hoare triple {30249#(< 1 ~SIZE~0)} call #t~ret7 := main(); {30249#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:30,323 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {30249#(< 1 ~SIZE~0)} {30117#true} #90#return; {30249#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:30,324 INFO L290 TraceCheckUtils]: 2: Hoare triple {30249#(< 1 ~SIZE~0)} assume true; {30249#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:30,324 INFO L290 TraceCheckUtils]: 1: Hoare triple {30117#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {30249#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:30,324 INFO L272 TraceCheckUtils]: 0: Hoare triple {30117#true} call ULTIMATE.init(); {30117#true} is VALID [2022-04-28 03:58:30,324 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:58:30,324 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1378014476] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 03:58:30,325 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 03:58:30,325 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 6, 6] total 15 [2022-04-28 03:58:30,791 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:58:30,792 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1180033447] [2022-04-28 03:58:30,792 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1180033447] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:58:30,792 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:58:30,792 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-28 03:58:30,792 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [231281884] [2022-04-28 03:58:30,792 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:58:30,792 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 2.3125) internal successors, (37), 15 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 43 [2022-04-28 03:58:30,792 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:58:30,792 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 16 states have (on average 2.3125) internal successors, (37), 15 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:58:30,822 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:58:30,822 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-28 03:58:30,822 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:58:30,822 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-28 03:58:30,822 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=120, Invalid=530, Unknown=0, NotChecked=0, Total=650 [2022-04-28 03:58:30,822 INFO L87 Difference]: Start difference. First operand 220 states and 270 transitions. Second operand has 16 states, 16 states have (on average 2.3125) internal successors, (37), 15 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:58:32,603 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:58:32,604 INFO L93 Difference]: Finished difference Result 430 states and 522 transitions. [2022-04-28 03:58:32,604 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-28 03:58:32,604 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 2.3125) internal successors, (37), 15 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 43 [2022-04-28 03:58:32,604 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:58:32,604 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 2.3125) internal successors, (37), 15 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:58:32,605 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 83 transitions. [2022-04-28 03:58:32,605 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 2.3125) internal successors, (37), 15 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:58:32,605 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 83 transitions. [2022-04-28 03:58:32,605 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 83 transitions. [2022-04-28 03:58:32,659 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 83 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:58:32,663 INFO L225 Difference]: With dead ends: 430 [2022-04-28 03:58:32,663 INFO L226 Difference]: Without dead ends: 268 [2022-04-28 03:58:32,664 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 91 GetRequests, 54 SyntacticMatches, 11 SemanticMatches, 26 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 408 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=133, Invalid=623, Unknown=0, NotChecked=0, Total=756 [2022-04-28 03:58:32,664 INFO L413 NwaCegarLoop]: 21 mSDtfsCounter, 38 mSDsluCounter, 23 mSDsCounter, 0 mSdLazyCounter, 527 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 39 SdHoareTripleChecker+Valid, 44 SdHoareTripleChecker+Invalid, 540 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 527 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 03:58:32,664 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [39 Valid, 44 Invalid, 540 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 527 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 03:58:32,664 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 268 states. [2022-04-28 03:58:33,470 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 268 to 229. [2022-04-28 03:58:33,471 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:58:33,471 INFO L82 GeneralOperation]: Start isEquivalent. First operand 268 states. Second operand has 229 states, 214 states have (on average 1.2242990654205608) internal successors, (262), 217 states have internal predecessors, (262), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:58:33,475 INFO L74 IsIncluded]: Start isIncluded. First operand 268 states. Second operand has 229 states, 214 states have (on average 1.2242990654205608) internal successors, (262), 217 states have internal predecessors, (262), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:58:33,475 INFO L87 Difference]: Start difference. First operand 268 states. Second operand has 229 states, 214 states have (on average 1.2242990654205608) internal successors, (262), 217 states have internal predecessors, (262), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:58:33,479 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:58:33,479 INFO L93 Difference]: Finished difference Result 268 states and 318 transitions. [2022-04-28 03:58:33,479 INFO L276 IsEmpty]: Start isEmpty. Operand 268 states and 318 transitions. [2022-04-28 03:58:33,479 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:58:33,479 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:58:33,479 INFO L74 IsIncluded]: Start isIncluded. First operand has 229 states, 214 states have (on average 1.2242990654205608) internal successors, (262), 217 states have internal predecessors, (262), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 268 states. [2022-04-28 03:58:33,479 INFO L87 Difference]: Start difference. First operand has 229 states, 214 states have (on average 1.2242990654205608) internal successors, (262), 217 states have internal predecessors, (262), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 268 states. [2022-04-28 03:58:33,482 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:58:33,483 INFO L93 Difference]: Finished difference Result 268 states and 318 transitions. [2022-04-28 03:58:33,483 INFO L276 IsEmpty]: Start isEmpty. Operand 268 states and 318 transitions. [2022-04-28 03:58:33,483 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:58:33,483 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:58:33,483 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:58:33,483 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:58:33,483 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 229 states, 214 states have (on average 1.2242990654205608) internal successors, (262), 217 states have internal predecessors, (262), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:58:33,486 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 229 states to 229 states and 279 transitions. [2022-04-28 03:58:33,486 INFO L78 Accepts]: Start accepts. Automaton has 229 states and 279 transitions. Word has length 43 [2022-04-28 03:58:33,486 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:58:33,487 INFO L495 AbstractCegarLoop]: Abstraction has 229 states and 279 transitions. [2022-04-28 03:58:33,487 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 16 states have (on average 2.3125) internal successors, (37), 15 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:58:33,487 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 229 states and 279 transitions. [2022-04-28 03:58:33,968 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 279 edges. 279 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:58:33,968 INFO L276 IsEmpty]: Start isEmpty. Operand 229 states and 279 transitions. [2022-04-28 03:58:33,969 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-28 03:58:33,969 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:58:33,969 INFO L195 NwaCegarLoop]: trace histogram [7, 7, 5, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:58:33,987 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Forceful destruction successful, exit code 0 [2022-04-28 03:58:34,169 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 18 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable25 [2022-04-28 03:58:34,169 INFO L420 AbstractCegarLoop]: === Iteration 27 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:58:34,169 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:58:34,170 INFO L85 PathProgramCache]: Analyzing trace with hash -1680227971, now seen corresponding path program 17 times [2022-04-28 03:58:34,170 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:58:34,170 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [627574143] [2022-04-28 03:58:34,374 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:58:37,019 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:58:37,141 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:58:37,142 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:58:37,145 INFO L85 PathProgramCache]: Analyzing trace with hash 2114787777, now seen corresponding path program 1 times [2022-04-28 03:58:37,145 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:58:37,145 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1000631945] [2022-04-28 03:58:37,145 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:58:37,145 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:58:37,153 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:37,215 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:58:37,217 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:37,232 INFO L290 TraceCheckUtils]: 0: Hoare triple {32172#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {32163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:37,232 INFO L290 TraceCheckUtils]: 1: Hoare triple {32163#(<= 200000 ~SIZE~0)} assume true; {32163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:37,232 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {32163#(<= 200000 ~SIZE~0)} {32158#true} #90#return; {32163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:37,232 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:58:37,233 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:37,235 INFO L290 TraceCheckUtils]: 0: Hoare triple {32158#true} ~cond := #in~cond; {32158#true} is VALID [2022-04-28 03:58:37,235 INFO L290 TraceCheckUtils]: 1: Hoare triple {32158#true} assume !(0 == ~cond); {32158#true} is VALID [2022-04-28 03:58:37,235 INFO L290 TraceCheckUtils]: 2: Hoare triple {32158#true} assume true; {32158#true} is VALID [2022-04-28 03:58:37,235 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {32158#true} {32163#(<= 200000 ~SIZE~0)} #86#return; {32163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:37,236 INFO L272 TraceCheckUtils]: 0: Hoare triple {32158#true} call ULTIMATE.init(); {32172#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:58:37,237 INFO L290 TraceCheckUtils]: 1: Hoare triple {32172#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {32163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:37,237 INFO L290 TraceCheckUtils]: 2: Hoare triple {32163#(<= 200000 ~SIZE~0)} assume true; {32163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:37,237 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {32163#(<= 200000 ~SIZE~0)} {32158#true} #90#return; {32163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:37,237 INFO L272 TraceCheckUtils]: 4: Hoare triple {32163#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {32163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:37,238 INFO L290 TraceCheckUtils]: 5: Hoare triple {32163#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {32163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:37,238 INFO L272 TraceCheckUtils]: 6: Hoare triple {32163#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {32158#true} is VALID [2022-04-28 03:58:37,238 INFO L290 TraceCheckUtils]: 7: Hoare triple {32158#true} ~cond := #in~cond; {32158#true} is VALID [2022-04-28 03:58:37,238 INFO L290 TraceCheckUtils]: 8: Hoare triple {32158#true} assume !(0 == ~cond); {32158#true} is VALID [2022-04-28 03:58:37,238 INFO L290 TraceCheckUtils]: 9: Hoare triple {32158#true} assume true; {32158#true} is VALID [2022-04-28 03:58:37,238 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {32158#true} {32163#(<= 200000 ~SIZE~0)} #86#return; {32163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:37,239 INFO L290 TraceCheckUtils]: 11: Hoare triple {32163#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {32163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:37,239 INFO L290 TraceCheckUtils]: 12: Hoare triple {32163#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {32168#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:58:37,240 INFO L290 TraceCheckUtils]: 13: Hoare triple {32168#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} [176] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_256| |v_main_#t~post5_254|)) (.cse1 (= v_main_~st~0_227 v_main_~st~0_226)) (.cse2 (<= v_~last~0_198 v_main_~c~0_429))) (or (and .cse0 .cse1 (= v_~SIZE~0_177 v_~SIZE~0_177) (= v_~last~0_198 v_~last~0_198) (= v_main_~c~0_429 v_main_~c~0_428)) (and (or (not .cse2) (not (< v_main_~c~0_429 v_~SIZE~0_177))) .cse0 .cse1 (= v_main_~c~0_428 v_main_~c~0_429)) (and .cse2 (< v_main_~c~0_429 v_main_~c~0_428) (= v_main_~st~0_226 0) (< v_main_~c~0_428 (+ v_~SIZE~0_177 1))))) InVars {~SIZE~0=v_~SIZE~0_177, main_~c~0=v_main_~c~0_429, main_#t~post5=|v_main_#t~post5_256|, main_~st~0=v_main_~st~0_227, ~last~0=v_~last~0_198} OutVars{~SIZE~0=v_~SIZE~0_177, main_#t~post5=|v_main_#t~post5_254|, main_~c~0=v_main_~c~0_428, main_~st~0=v_main_~st~0_226, ~last~0=v_~last~0_198} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {32169#(and (or (not (= main_~c~0 0)) (<= 200000 ~SIZE~0)) (or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~c~0 0)))} is VALID [2022-04-28 03:58:37,240 INFO L290 TraceCheckUtils]: 14: Hoare triple {32169#(and (or (not (= main_~c~0 0)) (<= 200000 ~SIZE~0)) (or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~c~0 0)))} [177] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32169#(and (or (not (= main_~c~0 0)) (<= 200000 ~SIZE~0)) (or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~c~0 0)))} is VALID [2022-04-28 03:58:37,241 INFO L290 TraceCheckUtils]: 15: Hoare triple {32169#(and (or (not (= main_~c~0 0)) (<= 200000 ~SIZE~0)) (or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~c~0 0)))} [178] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_259| |v_main_#t~post5_255|)) (.cse1 (= v_main_~c~0_431 v_main_~c~0_430))) (or (and .cse0 (= v_~SIZE~0_178 v_~SIZE~0_178) .cse1 (= v_~last~0_199 v_~last~0_199)) (and .cse0 .cse1 (or (not (< v_main_~c~0_431 v_~SIZE~0_178)) (not (< v_main_~c~0_431 v_~last~0_199)))) (and (< v_main_~c~0_430 (+ v_~last~0_199 1)) (< v_main_~c~0_430 (+ v_~SIZE~0_178 1)) (< v_main_~c~0_431 v_main_~c~0_430)))) InVars {~SIZE~0=v_~SIZE~0_178, main_~c~0=v_main_~c~0_431, main_#t~post5=|v_main_#t~post5_259|, ~last~0=v_~last~0_199} OutVars{~SIZE~0=v_~SIZE~0_178, main_#t~post5=|v_main_#t~post5_255|, main_~c~0=v_main_~c~0_430, ~last~0=v_~last~0_199} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {32170#(or (<= (+ ~last~0 200000) ~SIZE~0) (<= main_~c~0 ~last~0))} is VALID [2022-04-28 03:58:37,242 INFO L290 TraceCheckUtils]: 16: Hoare triple {32170#(or (<= (+ ~last~0 200000) ~SIZE~0) (<= main_~c~0 ~last~0))} [175] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {32171#(or (<= (+ ~last~0 200000) main_~c~0) (<= main_~c~0 ~last~0))} is VALID [2022-04-28 03:58:37,242 INFO L290 TraceCheckUtils]: 17: Hoare triple {32171#(or (<= (+ ~last~0 200000) main_~c~0) (<= main_~c~0 ~last~0))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {32159#false} is VALID [2022-04-28 03:58:37,242 INFO L290 TraceCheckUtils]: 18: Hoare triple {32159#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {32159#false} is VALID [2022-04-28 03:58:37,242 INFO L290 TraceCheckUtils]: 19: Hoare triple {32159#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {32159#false} is VALID [2022-04-28 03:58:37,242 INFO L290 TraceCheckUtils]: 20: Hoare triple {32159#false} assume !(~d~0 == ~SIZE~0); {32159#false} is VALID [2022-04-28 03:58:37,242 INFO L272 TraceCheckUtils]: 21: Hoare triple {32159#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {32159#false} is VALID [2022-04-28 03:58:37,242 INFO L290 TraceCheckUtils]: 22: Hoare triple {32159#false} ~cond := #in~cond; {32159#false} is VALID [2022-04-28 03:58:37,242 INFO L290 TraceCheckUtils]: 23: Hoare triple {32159#false} assume 0 == ~cond; {32159#false} is VALID [2022-04-28 03:58:37,242 INFO L290 TraceCheckUtils]: 24: Hoare triple {32159#false} assume !false; {32159#false} is VALID [2022-04-28 03:58:37,243 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 03:58:37,243 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:58:37,243 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1000631945] [2022-04-28 03:58:37,243 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1000631945] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 03:58:37,243 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [671453826] [2022-04-28 03:58:37,243 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:58:37,243 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:58:37,243 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 03:58:37,244 INFO L229 MonitoredProcess]: Starting monitored process 19 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 03:58:37,245 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Waiting until timeout for monitored process [2022-04-28 03:58:37,272 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:37,272 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 03:58:37,279 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:37,283 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 03:58:37,521 INFO L272 TraceCheckUtils]: 0: Hoare triple {32158#true} call ULTIMATE.init(); {32158#true} is VALID [2022-04-28 03:58:37,521 INFO L290 TraceCheckUtils]: 1: Hoare triple {32158#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {32163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:37,521 INFO L290 TraceCheckUtils]: 2: Hoare triple {32163#(<= 200000 ~SIZE~0)} assume true; {32163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:37,522 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {32163#(<= 200000 ~SIZE~0)} {32158#true} #90#return; {32163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:37,522 INFO L272 TraceCheckUtils]: 4: Hoare triple {32163#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {32163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:37,522 INFO L290 TraceCheckUtils]: 5: Hoare triple {32163#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {32163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:37,523 INFO L272 TraceCheckUtils]: 6: Hoare triple {32163#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {32163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:37,523 INFO L290 TraceCheckUtils]: 7: Hoare triple {32163#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {32163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:37,523 INFO L290 TraceCheckUtils]: 8: Hoare triple {32163#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {32163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:37,524 INFO L290 TraceCheckUtils]: 9: Hoare triple {32163#(<= 200000 ~SIZE~0)} assume true; {32163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:37,524 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {32163#(<= 200000 ~SIZE~0)} {32163#(<= 200000 ~SIZE~0)} #86#return; {32163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:37,524 INFO L290 TraceCheckUtils]: 11: Hoare triple {32163#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {32163#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:37,525 INFO L290 TraceCheckUtils]: 12: Hoare triple {32163#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {32212#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:58:37,525 INFO L290 TraceCheckUtils]: 13: Hoare triple {32212#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [176] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_256| |v_main_#t~post5_254|)) (.cse1 (= v_main_~st~0_227 v_main_~st~0_226)) (.cse2 (<= v_~last~0_198 v_main_~c~0_429))) (or (and .cse0 .cse1 (= v_~SIZE~0_177 v_~SIZE~0_177) (= v_~last~0_198 v_~last~0_198) (= v_main_~c~0_429 v_main_~c~0_428)) (and (or (not .cse2) (not (< v_main_~c~0_429 v_~SIZE~0_177))) .cse0 .cse1 (= v_main_~c~0_428 v_main_~c~0_429)) (and .cse2 (< v_main_~c~0_429 v_main_~c~0_428) (= v_main_~st~0_226 0) (< v_main_~c~0_428 (+ v_~SIZE~0_177 1))))) InVars {~SIZE~0=v_~SIZE~0_177, main_~c~0=v_main_~c~0_429, main_#t~post5=|v_main_#t~post5_256|, main_~st~0=v_main_~st~0_227, ~last~0=v_~last~0_198} OutVars{~SIZE~0=v_~SIZE~0_177, main_#t~post5=|v_main_#t~post5_254|, main_~c~0=v_main_~c~0_428, main_~st~0=v_main_~st~0_226, ~last~0=v_~last~0_198} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {32216#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:58:37,526 INFO L290 TraceCheckUtils]: 14: Hoare triple {32216#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [177] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32216#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:58:37,526 INFO L290 TraceCheckUtils]: 15: Hoare triple {32216#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [178] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_259| |v_main_#t~post5_255|)) (.cse1 (= v_main_~c~0_431 v_main_~c~0_430))) (or (and .cse0 (= v_~SIZE~0_178 v_~SIZE~0_178) .cse1 (= v_~last~0_199 v_~last~0_199)) (and .cse0 .cse1 (or (not (< v_main_~c~0_431 v_~SIZE~0_178)) (not (< v_main_~c~0_431 v_~last~0_199)))) (and (< v_main_~c~0_430 (+ v_~last~0_199 1)) (< v_main_~c~0_430 (+ v_~SIZE~0_178 1)) (< v_main_~c~0_431 v_main_~c~0_430)))) InVars {~SIZE~0=v_~SIZE~0_178, main_~c~0=v_main_~c~0_431, main_#t~post5=|v_main_#t~post5_259|, ~last~0=v_~last~0_199} OutVars{~SIZE~0=v_~SIZE~0_178, main_#t~post5=|v_main_#t~post5_255|, main_~c~0=v_main_~c~0_430, ~last~0=v_~last~0_199} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {32216#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:58:37,527 INFO L290 TraceCheckUtils]: 16: Hoare triple {32216#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [175] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {32226#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 03:58:37,527 INFO L290 TraceCheckUtils]: 17: Hoare triple {32226#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {32159#false} is VALID [2022-04-28 03:58:37,527 INFO L290 TraceCheckUtils]: 18: Hoare triple {32159#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {32159#false} is VALID [2022-04-28 03:58:37,528 INFO L290 TraceCheckUtils]: 19: Hoare triple {32159#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {32159#false} is VALID [2022-04-28 03:58:37,528 INFO L290 TraceCheckUtils]: 20: Hoare triple {32159#false} assume !(~d~0 == ~SIZE~0); {32159#false} is VALID [2022-04-28 03:58:37,528 INFO L272 TraceCheckUtils]: 21: Hoare triple {32159#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {32159#false} is VALID [2022-04-28 03:58:37,528 INFO L290 TraceCheckUtils]: 22: Hoare triple {32159#false} ~cond := #in~cond; {32159#false} is VALID [2022-04-28 03:58:37,528 INFO L290 TraceCheckUtils]: 23: Hoare triple {32159#false} assume 0 == ~cond; {32159#false} is VALID [2022-04-28 03:58:37,528 INFO L290 TraceCheckUtils]: 24: Hoare triple {32159#false} assume !false; {32159#false} is VALID [2022-04-28 03:58:37,528 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:58:37,528 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 03:58:37,831 INFO L290 TraceCheckUtils]: 24: Hoare triple {32159#false} assume !false; {32159#false} is VALID [2022-04-28 03:58:37,832 INFO L290 TraceCheckUtils]: 23: Hoare triple {32159#false} assume 0 == ~cond; {32159#false} is VALID [2022-04-28 03:58:37,832 INFO L290 TraceCheckUtils]: 22: Hoare triple {32159#false} ~cond := #in~cond; {32159#false} is VALID [2022-04-28 03:58:37,832 INFO L272 TraceCheckUtils]: 21: Hoare triple {32159#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {32159#false} is VALID [2022-04-28 03:58:37,832 INFO L290 TraceCheckUtils]: 20: Hoare triple {32159#false} assume !(~d~0 == ~SIZE~0); {32159#false} is VALID [2022-04-28 03:58:37,832 INFO L290 TraceCheckUtils]: 19: Hoare triple {32159#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {32159#false} is VALID [2022-04-28 03:58:37,832 INFO L290 TraceCheckUtils]: 18: Hoare triple {32159#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {32159#false} is VALID [2022-04-28 03:58:37,832 INFO L290 TraceCheckUtils]: 17: Hoare triple {32272#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {32159#false} is VALID [2022-04-28 03:58:37,833 INFO L290 TraceCheckUtils]: 16: Hoare triple {32276#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [175] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {32272#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 03:58:37,833 INFO L290 TraceCheckUtils]: 15: Hoare triple {32276#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [178] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_259| |v_main_#t~post5_255|)) (.cse1 (= v_main_~c~0_431 v_main_~c~0_430))) (or (and .cse0 (= v_~SIZE~0_178 v_~SIZE~0_178) .cse1 (= v_~last~0_199 v_~last~0_199)) (and .cse0 .cse1 (or (not (< v_main_~c~0_431 v_~SIZE~0_178)) (not (< v_main_~c~0_431 v_~last~0_199)))) (and (< v_main_~c~0_430 (+ v_~last~0_199 1)) (< v_main_~c~0_430 (+ v_~SIZE~0_178 1)) (< v_main_~c~0_431 v_main_~c~0_430)))) InVars {~SIZE~0=v_~SIZE~0_178, main_~c~0=v_main_~c~0_431, main_#t~post5=|v_main_#t~post5_259|, ~last~0=v_~last~0_199} OutVars{~SIZE~0=v_~SIZE~0_178, main_#t~post5=|v_main_#t~post5_255|, main_~c~0=v_main_~c~0_430, ~last~0=v_~last~0_199} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {32276#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:58:37,834 INFO L290 TraceCheckUtils]: 14: Hoare triple {32276#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [177] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {32276#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:58:37,834 INFO L290 TraceCheckUtils]: 13: Hoare triple {32286#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [176] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_256| |v_main_#t~post5_254|)) (.cse1 (= v_main_~st~0_227 v_main_~st~0_226)) (.cse2 (<= v_~last~0_198 v_main_~c~0_429))) (or (and .cse0 .cse1 (= v_~SIZE~0_177 v_~SIZE~0_177) (= v_~last~0_198 v_~last~0_198) (= v_main_~c~0_429 v_main_~c~0_428)) (and (or (not .cse2) (not (< v_main_~c~0_429 v_~SIZE~0_177))) .cse0 .cse1 (= v_main_~c~0_428 v_main_~c~0_429)) (and .cse2 (< v_main_~c~0_429 v_main_~c~0_428) (= v_main_~st~0_226 0) (< v_main_~c~0_428 (+ v_~SIZE~0_177 1))))) InVars {~SIZE~0=v_~SIZE~0_177, main_~c~0=v_main_~c~0_429, main_#t~post5=|v_main_#t~post5_256|, main_~st~0=v_main_~st~0_227, ~last~0=v_~last~0_198} OutVars{~SIZE~0=v_~SIZE~0_177, main_#t~post5=|v_main_#t~post5_254|, main_~c~0=v_main_~c~0_428, main_~st~0=v_main_~st~0_226, ~last~0=v_~last~0_198} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {32276#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:58:37,835 INFO L290 TraceCheckUtils]: 12: Hoare triple {32290#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {32286#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 03:58:37,835 INFO L290 TraceCheckUtils]: 11: Hoare triple {32290#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {32290#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:37,835 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {32158#true} {32290#(< 1 ~SIZE~0)} #86#return; {32290#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:37,835 INFO L290 TraceCheckUtils]: 9: Hoare triple {32158#true} assume true; {32158#true} is VALID [2022-04-28 03:58:37,835 INFO L290 TraceCheckUtils]: 8: Hoare triple {32158#true} assume !(0 == ~cond); {32158#true} is VALID [2022-04-28 03:58:37,836 INFO L290 TraceCheckUtils]: 7: Hoare triple {32158#true} ~cond := #in~cond; {32158#true} is VALID [2022-04-28 03:58:37,836 INFO L272 TraceCheckUtils]: 6: Hoare triple {32290#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {32158#true} is VALID [2022-04-28 03:58:37,836 INFO L290 TraceCheckUtils]: 5: Hoare triple {32290#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {32290#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:37,836 INFO L272 TraceCheckUtils]: 4: Hoare triple {32290#(< 1 ~SIZE~0)} call #t~ret7 := main(); {32290#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:37,836 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {32290#(< 1 ~SIZE~0)} {32158#true} #90#return; {32290#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:37,837 INFO L290 TraceCheckUtils]: 2: Hoare triple {32290#(< 1 ~SIZE~0)} assume true; {32290#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:37,837 INFO L290 TraceCheckUtils]: 1: Hoare triple {32158#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {32290#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:37,837 INFO L272 TraceCheckUtils]: 0: Hoare triple {32158#true} call ULTIMATE.init(); {32158#true} is VALID [2022-04-28 03:58:37,837 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:58:37,838 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [671453826] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 03:58:37,838 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 03:58:37,838 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 6, 6] total 15 [2022-04-28 03:58:38,323 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:58:38,323 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [627574143] [2022-04-28 03:58:38,323 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [627574143] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:58:38,323 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:58:38,323 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [17] imperfect sequences [] total 17 [2022-04-28 03:58:38,323 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [887000776] [2022-04-28 03:58:38,323 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:58:38,326 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 2.176470588235294) internal successors, (37), 16 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 43 [2022-04-28 03:58:38,326 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:58:38,326 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 17 states, 17 states have (on average 2.176470588235294) internal successors, (37), 16 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:58:38,356 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:58:38,356 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-28 03:58:38,356 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:58:38,356 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-28 03:58:38,357 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=127, Invalid=575, Unknown=0, NotChecked=0, Total=702 [2022-04-28 03:58:38,357 INFO L87 Difference]: Start difference. First operand 229 states and 279 transitions. Second operand has 17 states, 17 states have (on average 2.176470588235294) internal successors, (37), 16 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:58:40,263 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:58:40,264 INFO L93 Difference]: Finished difference Result 448 states and 540 transitions. [2022-04-28 03:58:40,264 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-04-28 03:58:40,264 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 2.176470588235294) internal successors, (37), 16 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 43 [2022-04-28 03:58:40,264 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:58:40,264 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 2.176470588235294) internal successors, (37), 16 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:58:40,265 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 85 transitions. [2022-04-28 03:58:40,265 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 2.176470588235294) internal successors, (37), 16 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:58:40,265 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 85 transitions. [2022-04-28 03:58:40,265 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 17 states and 85 transitions. [2022-04-28 03:58:40,319 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 85 edges. 85 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:58:40,323 INFO L225 Difference]: With dead ends: 448 [2022-04-28 03:58:40,323 INFO L226 Difference]: Without dead ends: 277 [2022-04-28 03:58:40,323 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 91 GetRequests, 54 SyntacticMatches, 10 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 434 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=142, Invalid=670, Unknown=0, NotChecked=0, Total=812 [2022-04-28 03:58:40,324 INFO L413 NwaCegarLoop]: 21 mSDtfsCounter, 45 mSDsluCounter, 20 mSDsCounter, 0 mSdLazyCounter, 552 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 46 SdHoareTripleChecker+Valid, 41 SdHoareTripleChecker+Invalid, 568 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 552 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 03:58:40,324 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [46 Valid, 41 Invalid, 568 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 552 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 03:58:40,324 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 277 states. [2022-04-28 03:58:41,146 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 277 to 229. [2022-04-28 03:58:41,146 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:58:41,146 INFO L82 GeneralOperation]: Start isEquivalent. First operand 277 states. Second operand has 229 states, 214 states have (on average 1.2242990654205608) internal successors, (262), 217 states have internal predecessors, (262), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:58:41,150 INFO L74 IsIncluded]: Start isIncluded. First operand 277 states. Second operand has 229 states, 214 states have (on average 1.2242990654205608) internal successors, (262), 217 states have internal predecessors, (262), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:58:41,151 INFO L87 Difference]: Start difference. First operand 277 states. Second operand has 229 states, 214 states have (on average 1.2242990654205608) internal successors, (262), 217 states have internal predecessors, (262), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:58:41,154 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:58:41,154 INFO L93 Difference]: Finished difference Result 277 states and 327 transitions. [2022-04-28 03:58:41,154 INFO L276 IsEmpty]: Start isEmpty. Operand 277 states and 327 transitions. [2022-04-28 03:58:41,154 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:58:41,154 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:58:41,155 INFO L74 IsIncluded]: Start isIncluded. First operand has 229 states, 214 states have (on average 1.2242990654205608) internal successors, (262), 217 states have internal predecessors, (262), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 277 states. [2022-04-28 03:58:41,155 INFO L87 Difference]: Start difference. First operand has 229 states, 214 states have (on average 1.2242990654205608) internal successors, (262), 217 states have internal predecessors, (262), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 277 states. [2022-04-28 03:58:41,158 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:58:41,159 INFO L93 Difference]: Finished difference Result 277 states and 327 transitions. [2022-04-28 03:58:41,159 INFO L276 IsEmpty]: Start isEmpty. Operand 277 states and 327 transitions. [2022-04-28 03:58:41,159 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:58:41,159 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:58:41,159 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:58:41,159 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:58:41,159 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 229 states, 214 states have (on average 1.2242990654205608) internal successors, (262), 217 states have internal predecessors, (262), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:58:41,162 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 229 states to 229 states and 279 transitions. [2022-04-28 03:58:41,162 INFO L78 Accepts]: Start accepts. Automaton has 229 states and 279 transitions. Word has length 43 [2022-04-28 03:58:41,162 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:58:41,162 INFO L495 AbstractCegarLoop]: Abstraction has 229 states and 279 transitions. [2022-04-28 03:58:41,162 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 17 states have (on average 2.176470588235294) internal successors, (37), 16 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:58:41,162 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 229 states and 279 transitions. [2022-04-28 03:58:41,597 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 279 edges. 279 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:58:41,598 INFO L276 IsEmpty]: Start isEmpty. Operand 229 states and 279 transitions. [2022-04-28 03:58:41,598 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-28 03:58:41,598 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:58:41,598 INFO L195 NwaCegarLoop]: trace histogram [7, 7, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:58:41,613 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Forceful destruction successful, exit code 0 [2022-04-28 03:58:41,798 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 19 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable26 [2022-04-28 03:58:41,799 INFO L420 AbstractCegarLoop]: === Iteration 28 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:58:41,799 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:58:41,799 INFO L85 PathProgramCache]: Analyzing trace with hash 809300991, now seen corresponding path program 18 times [2022-04-28 03:58:41,799 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:58:41,799 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1296429505] [2022-04-28 03:58:45,919 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:58:46,033 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:58:50,162 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:58:50,270 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:58:50,271 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:58:50,273 INFO L85 PathProgramCache]: Analyzing trace with hash 312343233, now seen corresponding path program 1 times [2022-04-28 03:58:50,273 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:58:50,274 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [643042296] [2022-04-28 03:58:50,274 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:58:50,274 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:58:50,281 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:50,335 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:58:50,337 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:50,341 INFO L290 TraceCheckUtils]: 0: Hoare triple {34267#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {34259#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:50,342 INFO L290 TraceCheckUtils]: 1: Hoare triple {34259#(<= 200000 ~SIZE~0)} assume true; {34259#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:50,342 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {34259#(<= 200000 ~SIZE~0)} {34254#true} #90#return; {34259#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:50,342 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:58:50,343 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:50,345 INFO L290 TraceCheckUtils]: 0: Hoare triple {34254#true} ~cond := #in~cond; {34254#true} is VALID [2022-04-28 03:58:50,345 INFO L290 TraceCheckUtils]: 1: Hoare triple {34254#true} assume !(0 == ~cond); {34254#true} is VALID [2022-04-28 03:58:50,345 INFO L290 TraceCheckUtils]: 2: Hoare triple {34254#true} assume true; {34254#true} is VALID [2022-04-28 03:58:50,346 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {34254#true} {34259#(<= 200000 ~SIZE~0)} #86#return; {34259#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:50,346 INFO L272 TraceCheckUtils]: 0: Hoare triple {34254#true} call ULTIMATE.init(); {34267#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:58:50,347 INFO L290 TraceCheckUtils]: 1: Hoare triple {34267#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {34259#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:50,347 INFO L290 TraceCheckUtils]: 2: Hoare triple {34259#(<= 200000 ~SIZE~0)} assume true; {34259#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:50,347 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {34259#(<= 200000 ~SIZE~0)} {34254#true} #90#return; {34259#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:50,348 INFO L272 TraceCheckUtils]: 4: Hoare triple {34259#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {34259#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:50,348 INFO L290 TraceCheckUtils]: 5: Hoare triple {34259#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {34259#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:50,348 INFO L272 TraceCheckUtils]: 6: Hoare triple {34259#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {34254#true} is VALID [2022-04-28 03:58:50,348 INFO L290 TraceCheckUtils]: 7: Hoare triple {34254#true} ~cond := #in~cond; {34254#true} is VALID [2022-04-28 03:58:50,348 INFO L290 TraceCheckUtils]: 8: Hoare triple {34254#true} assume !(0 == ~cond); {34254#true} is VALID [2022-04-28 03:58:50,348 INFO L290 TraceCheckUtils]: 9: Hoare triple {34254#true} assume true; {34254#true} is VALID [2022-04-28 03:58:50,349 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {34254#true} {34259#(<= 200000 ~SIZE~0)} #86#return; {34259#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:50,349 INFO L290 TraceCheckUtils]: 11: Hoare triple {34259#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {34259#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:50,350 INFO L290 TraceCheckUtils]: 12: Hoare triple {34259#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {34264#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:58:50,350 INFO L290 TraceCheckUtils]: 13: Hoare triple {34264#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [180] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= |v_main_#t~post5_269| |v_main_#t~post5_267|)) (.cse2 (= v_main_~c~0_453 v_main_~c~0_452)) (.cse0 (<= v_~last~0_208 v_main_~c~0_453))) (or (and (< v_main_~c~0_453 v_main_~c~0_452) .cse0 (= v_main_~st~0_239 0) (< v_main_~c~0_452 (+ v_~SIZE~0_186 1))) (and (= v_~last~0_208 v_~last~0_208) .cse1 .cse2 (= v_~SIZE~0_186 v_~SIZE~0_186) (= v_main_~st~0_240 v_main_~st~0_239)) (and (= v_main_~st~0_239 v_main_~st~0_240) .cse1 .cse2 (or (not .cse0) (not (< v_main_~c~0_453 v_~SIZE~0_186)))))) InVars {~SIZE~0=v_~SIZE~0_186, main_~c~0=v_main_~c~0_453, main_#t~post5=|v_main_#t~post5_269|, main_~st~0=v_main_~st~0_240, ~last~0=v_~last~0_208} OutVars{~SIZE~0=v_~SIZE~0_186, main_#t~post5=|v_main_#t~post5_267|, main_~c~0=v_main_~c~0_452, main_~st~0=v_main_~st~0_239, ~last~0=v_~last~0_208} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {34265#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:58:50,351 INFO L290 TraceCheckUtils]: 14: Hoare triple {34265#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [181] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34265#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:58:50,351 INFO L290 TraceCheckUtils]: 15: Hoare triple {34265#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [182] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_272| |v_main_#t~post5_268|)) (.cse1 (= v_main_~c~0_455 v_main_~c~0_454))) (or (and (< v_main_~c~0_455 v_main_~c~0_454) (< v_main_~c~0_454 (+ v_~SIZE~0_187 1)) (< v_main_~c~0_454 (+ v_~last~0_209 1))) (and (or (not (< v_main_~c~0_455 v_~SIZE~0_187)) (not (< v_main_~c~0_455 v_~last~0_209))) .cse0 .cse1) (and (= v_~last~0_209 v_~last~0_209) (= v_~SIZE~0_187 v_~SIZE~0_187) .cse0 .cse1))) InVars {~SIZE~0=v_~SIZE~0_187, main_~c~0=v_main_~c~0_455, main_#t~post5=|v_main_#t~post5_272|, ~last~0=v_~last~0_209} OutVars{~SIZE~0=v_~SIZE~0_187, main_#t~post5=|v_main_#t~post5_268|, main_~c~0=v_main_~c~0_454, ~last~0=v_~last~0_209} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {34265#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:58:50,352 INFO L290 TraceCheckUtils]: 16: Hoare triple {34265#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [179] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {34266#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 03:58:50,352 INFO L290 TraceCheckUtils]: 17: Hoare triple {34266#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {34255#false} is VALID [2022-04-28 03:58:50,352 INFO L290 TraceCheckUtils]: 18: Hoare triple {34255#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {34255#false} is VALID [2022-04-28 03:58:50,352 INFO L290 TraceCheckUtils]: 19: Hoare triple {34255#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {34255#false} is VALID [2022-04-28 03:58:50,352 INFO L290 TraceCheckUtils]: 20: Hoare triple {34255#false} assume !(~d~0 == ~SIZE~0); {34255#false} is VALID [2022-04-28 03:58:50,353 INFO L272 TraceCheckUtils]: 21: Hoare triple {34255#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {34255#false} is VALID [2022-04-28 03:58:50,353 INFO L290 TraceCheckUtils]: 22: Hoare triple {34255#false} ~cond := #in~cond; {34255#false} is VALID [2022-04-28 03:58:50,353 INFO L290 TraceCheckUtils]: 23: Hoare triple {34255#false} assume 0 == ~cond; {34255#false} is VALID [2022-04-28 03:58:50,353 INFO L290 TraceCheckUtils]: 24: Hoare triple {34255#false} assume !false; {34255#false} is VALID [2022-04-28 03:58:50,353 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:58:50,353 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:58:50,353 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [643042296] [2022-04-28 03:58:50,353 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [643042296] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 03:58:50,354 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1262059362] [2022-04-28 03:58:50,354 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:58:50,354 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:58:50,354 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 03:58:50,355 INFO L229 MonitoredProcess]: Starting monitored process 20 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 03:58:50,376 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Waiting until timeout for monitored process [2022-04-28 03:58:50,389 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:50,390 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 03:58:50,396 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:50,397 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 03:58:50,661 INFO L272 TraceCheckUtils]: 0: Hoare triple {34254#true} call ULTIMATE.init(); {34254#true} is VALID [2022-04-28 03:58:50,661 INFO L290 TraceCheckUtils]: 1: Hoare triple {34254#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {34259#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:50,662 INFO L290 TraceCheckUtils]: 2: Hoare triple {34259#(<= 200000 ~SIZE~0)} assume true; {34259#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:50,662 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {34259#(<= 200000 ~SIZE~0)} {34254#true} #90#return; {34259#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:50,662 INFO L272 TraceCheckUtils]: 4: Hoare triple {34259#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {34259#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:50,663 INFO L290 TraceCheckUtils]: 5: Hoare triple {34259#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {34259#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:50,663 INFO L272 TraceCheckUtils]: 6: Hoare triple {34259#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {34259#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:50,663 INFO L290 TraceCheckUtils]: 7: Hoare triple {34259#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {34259#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:50,664 INFO L290 TraceCheckUtils]: 8: Hoare triple {34259#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {34259#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:50,664 INFO L290 TraceCheckUtils]: 9: Hoare triple {34259#(<= 200000 ~SIZE~0)} assume true; {34259#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:50,664 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {34259#(<= 200000 ~SIZE~0)} {34259#(<= 200000 ~SIZE~0)} #86#return; {34259#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:50,665 INFO L290 TraceCheckUtils]: 11: Hoare triple {34259#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {34259#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:50,665 INFO L290 TraceCheckUtils]: 12: Hoare triple {34259#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {34307#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:58:50,666 INFO L290 TraceCheckUtils]: 13: Hoare triple {34307#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [180] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= |v_main_#t~post5_269| |v_main_#t~post5_267|)) (.cse2 (= v_main_~c~0_453 v_main_~c~0_452)) (.cse0 (<= v_~last~0_208 v_main_~c~0_453))) (or (and (< v_main_~c~0_453 v_main_~c~0_452) .cse0 (= v_main_~st~0_239 0) (< v_main_~c~0_452 (+ v_~SIZE~0_186 1))) (and (= v_~last~0_208 v_~last~0_208) .cse1 .cse2 (= v_~SIZE~0_186 v_~SIZE~0_186) (= v_main_~st~0_240 v_main_~st~0_239)) (and (= v_main_~st~0_239 v_main_~st~0_240) .cse1 .cse2 (or (not .cse0) (not (< v_main_~c~0_453 v_~SIZE~0_186)))))) InVars {~SIZE~0=v_~SIZE~0_186, main_~c~0=v_main_~c~0_453, main_#t~post5=|v_main_#t~post5_269|, main_~st~0=v_main_~st~0_240, ~last~0=v_~last~0_208} OutVars{~SIZE~0=v_~SIZE~0_186, main_#t~post5=|v_main_#t~post5_267|, main_~c~0=v_main_~c~0_452, main_~st~0=v_main_~st~0_239, ~last~0=v_~last~0_208} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {34311#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:58:50,666 INFO L290 TraceCheckUtils]: 14: Hoare triple {34311#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [181] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34311#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:58:50,667 INFO L290 TraceCheckUtils]: 15: Hoare triple {34311#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [182] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_272| |v_main_#t~post5_268|)) (.cse1 (= v_main_~c~0_455 v_main_~c~0_454))) (or (and (< v_main_~c~0_455 v_main_~c~0_454) (< v_main_~c~0_454 (+ v_~SIZE~0_187 1)) (< v_main_~c~0_454 (+ v_~last~0_209 1))) (and (or (not (< v_main_~c~0_455 v_~SIZE~0_187)) (not (< v_main_~c~0_455 v_~last~0_209))) .cse0 .cse1) (and (= v_~last~0_209 v_~last~0_209) (= v_~SIZE~0_187 v_~SIZE~0_187) .cse0 .cse1))) InVars {~SIZE~0=v_~SIZE~0_187, main_~c~0=v_main_~c~0_455, main_#t~post5=|v_main_#t~post5_272|, ~last~0=v_~last~0_209} OutVars{~SIZE~0=v_~SIZE~0_187, main_#t~post5=|v_main_#t~post5_268|, main_~c~0=v_main_~c~0_454, ~last~0=v_~last~0_209} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {34311#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:58:50,667 INFO L290 TraceCheckUtils]: 16: Hoare triple {34311#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [179] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {34321#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 03:58:50,668 INFO L290 TraceCheckUtils]: 17: Hoare triple {34321#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {34255#false} is VALID [2022-04-28 03:58:50,668 INFO L290 TraceCheckUtils]: 18: Hoare triple {34255#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {34255#false} is VALID [2022-04-28 03:58:50,668 INFO L290 TraceCheckUtils]: 19: Hoare triple {34255#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {34255#false} is VALID [2022-04-28 03:58:50,668 INFO L290 TraceCheckUtils]: 20: Hoare triple {34255#false} assume !(~d~0 == ~SIZE~0); {34255#false} is VALID [2022-04-28 03:58:50,668 INFO L272 TraceCheckUtils]: 21: Hoare triple {34255#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {34255#false} is VALID [2022-04-28 03:58:50,668 INFO L290 TraceCheckUtils]: 22: Hoare triple {34255#false} ~cond := #in~cond; {34255#false} is VALID [2022-04-28 03:58:50,668 INFO L290 TraceCheckUtils]: 23: Hoare triple {34255#false} assume 0 == ~cond; {34255#false} is VALID [2022-04-28 03:58:50,668 INFO L290 TraceCheckUtils]: 24: Hoare triple {34255#false} assume !false; {34255#false} is VALID [2022-04-28 03:58:50,669 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:58:50,669 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 03:58:50,990 INFO L290 TraceCheckUtils]: 24: Hoare triple {34255#false} assume !false; {34255#false} is VALID [2022-04-28 03:58:50,991 INFO L290 TraceCheckUtils]: 23: Hoare triple {34255#false} assume 0 == ~cond; {34255#false} is VALID [2022-04-28 03:58:50,991 INFO L290 TraceCheckUtils]: 22: Hoare triple {34255#false} ~cond := #in~cond; {34255#false} is VALID [2022-04-28 03:58:50,991 INFO L272 TraceCheckUtils]: 21: Hoare triple {34255#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {34255#false} is VALID [2022-04-28 03:58:50,991 INFO L290 TraceCheckUtils]: 20: Hoare triple {34255#false} assume !(~d~0 == ~SIZE~0); {34255#false} is VALID [2022-04-28 03:58:50,991 INFO L290 TraceCheckUtils]: 19: Hoare triple {34255#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {34255#false} is VALID [2022-04-28 03:58:50,991 INFO L290 TraceCheckUtils]: 18: Hoare triple {34255#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {34255#false} is VALID [2022-04-28 03:58:50,991 INFO L290 TraceCheckUtils]: 17: Hoare triple {34367#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {34255#false} is VALID [2022-04-28 03:58:50,992 INFO L290 TraceCheckUtils]: 16: Hoare triple {34371#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [179] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {34367#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 03:58:50,992 INFO L290 TraceCheckUtils]: 15: Hoare triple {34371#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [182] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_272| |v_main_#t~post5_268|)) (.cse1 (= v_main_~c~0_455 v_main_~c~0_454))) (or (and (< v_main_~c~0_455 v_main_~c~0_454) (< v_main_~c~0_454 (+ v_~SIZE~0_187 1)) (< v_main_~c~0_454 (+ v_~last~0_209 1))) (and (or (not (< v_main_~c~0_455 v_~SIZE~0_187)) (not (< v_main_~c~0_455 v_~last~0_209))) .cse0 .cse1) (and (= v_~last~0_209 v_~last~0_209) (= v_~SIZE~0_187 v_~SIZE~0_187) .cse0 .cse1))) InVars {~SIZE~0=v_~SIZE~0_187, main_~c~0=v_main_~c~0_455, main_#t~post5=|v_main_#t~post5_272|, ~last~0=v_~last~0_209} OutVars{~SIZE~0=v_~SIZE~0_187, main_#t~post5=|v_main_#t~post5_268|, main_~c~0=v_main_~c~0_454, ~last~0=v_~last~0_209} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {34371#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:58:50,993 INFO L290 TraceCheckUtils]: 14: Hoare triple {34371#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [181] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {34371#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:58:50,994 INFO L290 TraceCheckUtils]: 13: Hoare triple {34381#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [180] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= |v_main_#t~post5_269| |v_main_#t~post5_267|)) (.cse2 (= v_main_~c~0_453 v_main_~c~0_452)) (.cse0 (<= v_~last~0_208 v_main_~c~0_453))) (or (and (< v_main_~c~0_453 v_main_~c~0_452) .cse0 (= v_main_~st~0_239 0) (< v_main_~c~0_452 (+ v_~SIZE~0_186 1))) (and (= v_~last~0_208 v_~last~0_208) .cse1 .cse2 (= v_~SIZE~0_186 v_~SIZE~0_186) (= v_main_~st~0_240 v_main_~st~0_239)) (and (= v_main_~st~0_239 v_main_~st~0_240) .cse1 .cse2 (or (not .cse0) (not (< v_main_~c~0_453 v_~SIZE~0_186)))))) InVars {~SIZE~0=v_~SIZE~0_186, main_~c~0=v_main_~c~0_453, main_#t~post5=|v_main_#t~post5_269|, main_~st~0=v_main_~st~0_240, ~last~0=v_~last~0_208} OutVars{~SIZE~0=v_~SIZE~0_186, main_#t~post5=|v_main_#t~post5_267|, main_~c~0=v_main_~c~0_452, main_~st~0=v_main_~st~0_239, ~last~0=v_~last~0_208} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {34371#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:58:50,994 INFO L290 TraceCheckUtils]: 12: Hoare triple {34385#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {34381#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 03:58:50,994 INFO L290 TraceCheckUtils]: 11: Hoare triple {34385#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {34385#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:50,995 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {34254#true} {34385#(< 1 ~SIZE~0)} #86#return; {34385#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:50,995 INFO L290 TraceCheckUtils]: 9: Hoare triple {34254#true} assume true; {34254#true} is VALID [2022-04-28 03:58:50,995 INFO L290 TraceCheckUtils]: 8: Hoare triple {34254#true} assume !(0 == ~cond); {34254#true} is VALID [2022-04-28 03:58:50,995 INFO L290 TraceCheckUtils]: 7: Hoare triple {34254#true} ~cond := #in~cond; {34254#true} is VALID [2022-04-28 03:58:50,995 INFO L272 TraceCheckUtils]: 6: Hoare triple {34385#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {34254#true} is VALID [2022-04-28 03:58:51,003 INFO L290 TraceCheckUtils]: 5: Hoare triple {34385#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {34385#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:51,003 INFO L272 TraceCheckUtils]: 4: Hoare triple {34385#(< 1 ~SIZE~0)} call #t~ret7 := main(); {34385#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:51,004 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {34385#(< 1 ~SIZE~0)} {34254#true} #90#return; {34385#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:51,004 INFO L290 TraceCheckUtils]: 2: Hoare triple {34385#(< 1 ~SIZE~0)} assume true; {34385#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:51,005 INFO L290 TraceCheckUtils]: 1: Hoare triple {34254#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {34385#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:58:51,005 INFO L272 TraceCheckUtils]: 0: Hoare triple {34254#true} call ULTIMATE.init(); {34254#true} is VALID [2022-04-28 03:58:51,005 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:58:51,005 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1262059362] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 03:58:51,005 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 03:58:51,005 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 03:58:51,445 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:58:51,445 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1296429505] [2022-04-28 03:58:51,445 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1296429505] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:58:51,445 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:58:51,445 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [18] imperfect sequences [] total 18 [2022-04-28 03:58:51,445 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [957722450] [2022-04-28 03:58:51,445 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:58:51,445 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 2.0555555555555554) internal successors, (37), 17 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 43 [2022-04-28 03:58:51,445 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:58:51,446 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 18 states, 18 states have (on average 2.0555555555555554) internal successors, (37), 17 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:58:51,474 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:58:51,474 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-04-28 03:58:51,474 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:58:51,474 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-04-28 03:58:51,474 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=164, Invalid=538, Unknown=0, NotChecked=0, Total=702 [2022-04-28 03:58:51,474 INFO L87 Difference]: Start difference. First operand 229 states and 279 transitions. Second operand has 18 states, 18 states have (on average 2.0555555555555554) internal successors, (37), 17 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:58:53,802 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:58:53,802 INFO L93 Difference]: Finished difference Result 448 states and 544 transitions. [2022-04-28 03:58:53,802 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-28 03:58:53,802 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 2.0555555555555554) internal successors, (37), 17 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 43 [2022-04-28 03:58:53,803 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:58:53,803 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 2.0555555555555554) internal successors, (37), 17 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:58:53,803 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 94 transitions. [2022-04-28 03:58:53,803 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 2.0555555555555554) internal successors, (37), 17 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:58:53,804 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 94 transitions. [2022-04-28 03:58:53,804 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 94 transitions. [2022-04-28 03:58:53,868 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 94 edges. 94 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:58:53,877 INFO L225 Difference]: With dead ends: 448 [2022-04-28 03:58:53,877 INFO L226 Difference]: Without dead ends: 277 [2022-04-28 03:58:53,878 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 91 GetRequests, 54 SyntacticMatches, 9 SemanticMatches, 28 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 501 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=197, Invalid=673, Unknown=0, NotChecked=0, Total=870 [2022-04-28 03:58:53,878 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 53 mSDsluCounter, 25 mSDsCounter, 0 mSdLazyCounter, 814 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 54 SdHoareTripleChecker+Valid, 49 SdHoareTripleChecker+Invalid, 829 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 814 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-04-28 03:58:53,878 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [54 Valid, 49 Invalid, 829 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 814 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-04-28 03:58:53,878 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 277 states. [2022-04-28 03:58:54,744 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 277 to 229. [2022-04-28 03:58:54,745 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:58:54,745 INFO L82 GeneralOperation]: Start isEquivalent. First operand 277 states. Second operand has 229 states, 214 states have (on average 1.2242990654205608) internal successors, (262), 217 states have internal predecessors, (262), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:58:54,745 INFO L74 IsIncluded]: Start isIncluded. First operand 277 states. Second operand has 229 states, 214 states have (on average 1.2242990654205608) internal successors, (262), 217 states have internal predecessors, (262), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:58:54,745 INFO L87 Difference]: Start difference. First operand 277 states. Second operand has 229 states, 214 states have (on average 1.2242990654205608) internal successors, (262), 217 states have internal predecessors, (262), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:58:54,748 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:58:54,749 INFO L93 Difference]: Finished difference Result 277 states and 331 transitions. [2022-04-28 03:58:54,749 INFO L276 IsEmpty]: Start isEmpty. Operand 277 states and 331 transitions. [2022-04-28 03:58:54,749 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:58:54,749 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:58:54,749 INFO L74 IsIncluded]: Start isIncluded. First operand has 229 states, 214 states have (on average 1.2242990654205608) internal successors, (262), 217 states have internal predecessors, (262), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 277 states. [2022-04-28 03:58:54,749 INFO L87 Difference]: Start difference. First operand has 229 states, 214 states have (on average 1.2242990654205608) internal successors, (262), 217 states have internal predecessors, (262), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 277 states. [2022-04-28 03:58:54,752 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:58:54,752 INFO L93 Difference]: Finished difference Result 277 states and 331 transitions. [2022-04-28 03:58:54,752 INFO L276 IsEmpty]: Start isEmpty. Operand 277 states and 331 transitions. [2022-04-28 03:58:54,753 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:58:54,753 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:58:54,753 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:58:54,753 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:58:54,753 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 229 states, 214 states have (on average 1.2242990654205608) internal successors, (262), 217 states have internal predecessors, (262), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:58:54,756 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 229 states to 229 states and 279 transitions. [2022-04-28 03:58:54,756 INFO L78 Accepts]: Start accepts. Automaton has 229 states and 279 transitions. Word has length 43 [2022-04-28 03:58:54,756 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:58:54,756 INFO L495 AbstractCegarLoop]: Abstraction has 229 states and 279 transitions. [2022-04-28 03:58:54,756 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 18 states have (on average 2.0555555555555554) internal successors, (37), 17 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:58:54,756 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 229 states and 279 transitions. [2022-04-28 03:58:55,236 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 279 edges. 279 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:58:55,236 INFO L276 IsEmpty]: Start isEmpty. Operand 229 states and 279 transitions. [2022-04-28 03:58:55,237 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-28 03:58:55,237 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:58:55,237 INFO L195 NwaCegarLoop]: trace histogram [7, 7, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:58:55,253 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Forceful destruction successful, exit code 0 [2022-04-28 03:58:55,437 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable27,20 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:58:55,437 INFO L420 AbstractCegarLoop]: === Iteration 29 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:58:55,437 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:58:55,438 INFO L85 PathProgramCache]: Analyzing trace with hash -8347459, now seen corresponding path program 19 times [2022-04-28 03:58:55,438 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:58:55,438 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [558671458] [2022-04-28 03:58:59,573 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:58:59,675 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:58:59,875 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:58:59,876 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:58:59,879 INFO L85 PathProgramCache]: Analyzing trace with hash -1490101311, now seen corresponding path program 1 times [2022-04-28 03:58:59,879 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:58:59,879 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [645067055] [2022-04-28 03:58:59,879 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:58:59,879 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:58:59,886 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:59,936 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:58:59,937 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:59,941 INFO L290 TraceCheckUtils]: 0: Hoare triple {36365#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {36357#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:59,941 INFO L290 TraceCheckUtils]: 1: Hoare triple {36357#(<= 200000 ~SIZE~0)} assume true; {36357#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:59,942 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {36357#(<= 200000 ~SIZE~0)} {36352#true} #90#return; {36357#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:59,942 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:58:59,943 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:59,944 INFO L290 TraceCheckUtils]: 0: Hoare triple {36352#true} ~cond := #in~cond; {36352#true} is VALID [2022-04-28 03:58:59,944 INFO L290 TraceCheckUtils]: 1: Hoare triple {36352#true} assume !(0 == ~cond); {36352#true} is VALID [2022-04-28 03:58:59,944 INFO L290 TraceCheckUtils]: 2: Hoare triple {36352#true} assume true; {36352#true} is VALID [2022-04-28 03:58:59,945 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36352#true} {36357#(<= 200000 ~SIZE~0)} #86#return; {36357#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:59,945 INFO L272 TraceCheckUtils]: 0: Hoare triple {36352#true} call ULTIMATE.init(); {36365#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:58:59,946 INFO L290 TraceCheckUtils]: 1: Hoare triple {36365#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {36357#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:59,946 INFO L290 TraceCheckUtils]: 2: Hoare triple {36357#(<= 200000 ~SIZE~0)} assume true; {36357#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:59,946 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36357#(<= 200000 ~SIZE~0)} {36352#true} #90#return; {36357#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:59,947 INFO L272 TraceCheckUtils]: 4: Hoare triple {36357#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {36357#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:59,947 INFO L290 TraceCheckUtils]: 5: Hoare triple {36357#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {36357#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:59,947 INFO L272 TraceCheckUtils]: 6: Hoare triple {36357#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {36352#true} is VALID [2022-04-28 03:58:59,947 INFO L290 TraceCheckUtils]: 7: Hoare triple {36352#true} ~cond := #in~cond; {36352#true} is VALID [2022-04-28 03:58:59,947 INFO L290 TraceCheckUtils]: 8: Hoare triple {36352#true} assume !(0 == ~cond); {36352#true} is VALID [2022-04-28 03:58:59,947 INFO L290 TraceCheckUtils]: 9: Hoare triple {36352#true} assume true; {36352#true} is VALID [2022-04-28 03:58:59,947 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {36352#true} {36357#(<= 200000 ~SIZE~0)} #86#return; {36357#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:59,948 INFO L290 TraceCheckUtils]: 11: Hoare triple {36357#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {36357#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:58:59,948 INFO L290 TraceCheckUtils]: 12: Hoare triple {36357#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {36362#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:58:59,949 INFO L290 TraceCheckUtils]: 13: Hoare triple {36362#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [184] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_477 v_main_~c~0_476)) (.cse2 (= v_main_~st~0_253 v_main_~st~0_252)) (.cse3 (= |v_main_#t~post5_282| |v_main_#t~post5_280|)) (.cse1 (<= v_~last~0_218 v_main_~c~0_477))) (or (and .cse0 (or (not .cse1) (not (< v_main_~c~0_477 v_~SIZE~0_195))) .cse2 .cse3) (and .cse0 (= v_~last~0_218 v_~last~0_218) .cse2 .cse3 (= v_~SIZE~0_195 v_~SIZE~0_195)) (and (< v_main_~c~0_476 (+ v_~SIZE~0_195 1)) .cse1 (= v_main_~st~0_252 0) (< v_main_~c~0_477 v_main_~c~0_476)))) InVars {~SIZE~0=v_~SIZE~0_195, main_~c~0=v_main_~c~0_477, main_#t~post5=|v_main_#t~post5_282|, main_~st~0=v_main_~st~0_253, ~last~0=v_~last~0_218} OutVars{~SIZE~0=v_~SIZE~0_195, main_#t~post5=|v_main_#t~post5_280|, main_~c~0=v_main_~c~0_476, main_~st~0=v_main_~st~0_252, ~last~0=v_~last~0_218} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {36363#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:58:59,949 INFO L290 TraceCheckUtils]: 14: Hoare triple {36363#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [185] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36363#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:58:59,950 INFO L290 TraceCheckUtils]: 15: Hoare triple {36363#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [186] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_479 v_main_~c~0_478)) (.cse1 (= |v_main_#t~post5_285| |v_main_#t~post5_281|))) (or (and .cse0 (= v_~SIZE~0_196 v_~SIZE~0_196) .cse1 (= v_~last~0_219 v_~last~0_219)) (and (< v_main_~c~0_479 v_main_~c~0_478) (< v_main_~c~0_478 (+ v_~last~0_219 1)) (< v_main_~c~0_478 (+ v_~SIZE~0_196 1))) (and .cse0 (or (not (< v_main_~c~0_479 v_~SIZE~0_196)) (not (< v_main_~c~0_479 v_~last~0_219))) .cse1))) InVars {~SIZE~0=v_~SIZE~0_196, main_~c~0=v_main_~c~0_479, main_#t~post5=|v_main_#t~post5_285|, ~last~0=v_~last~0_219} OutVars{~SIZE~0=v_~SIZE~0_196, main_#t~post5=|v_main_#t~post5_281|, main_~c~0=v_main_~c~0_478, ~last~0=v_~last~0_219} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {36363#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:58:59,950 INFO L290 TraceCheckUtils]: 16: Hoare triple {36363#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [183] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {36364#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 03:58:59,950 INFO L290 TraceCheckUtils]: 17: Hoare triple {36364#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {36353#false} is VALID [2022-04-28 03:58:59,950 INFO L290 TraceCheckUtils]: 18: Hoare triple {36353#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {36353#false} is VALID [2022-04-28 03:58:59,950 INFO L290 TraceCheckUtils]: 19: Hoare triple {36353#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {36353#false} is VALID [2022-04-28 03:58:59,951 INFO L290 TraceCheckUtils]: 20: Hoare triple {36353#false} assume !(~d~0 == ~SIZE~0); {36353#false} is VALID [2022-04-28 03:58:59,951 INFO L272 TraceCheckUtils]: 21: Hoare triple {36353#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {36353#false} is VALID [2022-04-28 03:58:59,951 INFO L290 TraceCheckUtils]: 22: Hoare triple {36353#false} ~cond := #in~cond; {36353#false} is VALID [2022-04-28 03:58:59,951 INFO L290 TraceCheckUtils]: 23: Hoare triple {36353#false} assume 0 == ~cond; {36353#false} is VALID [2022-04-28 03:58:59,951 INFO L290 TraceCheckUtils]: 24: Hoare triple {36353#false} assume !false; {36353#false} is VALID [2022-04-28 03:58:59,951 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:58:59,951 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:58:59,951 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [645067055] [2022-04-28 03:58:59,951 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [645067055] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 03:58:59,951 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [313112370] [2022-04-28 03:58:59,951 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:58:59,951 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:58:59,952 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 03:58:59,952 INFO L229 MonitoredProcess]: Starting monitored process 21 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 03:58:59,953 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Waiting until timeout for monitored process [2022-04-28 03:58:59,982 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:59,983 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 03:58:59,988 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:58:59,989 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 03:59:00,263 INFO L272 TraceCheckUtils]: 0: Hoare triple {36352#true} call ULTIMATE.init(); {36352#true} is VALID [2022-04-28 03:59:00,264 INFO L290 TraceCheckUtils]: 1: Hoare triple {36352#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {36357#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:00,264 INFO L290 TraceCheckUtils]: 2: Hoare triple {36357#(<= 200000 ~SIZE~0)} assume true; {36357#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:00,264 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36357#(<= 200000 ~SIZE~0)} {36352#true} #90#return; {36357#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:00,265 INFO L272 TraceCheckUtils]: 4: Hoare triple {36357#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {36357#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:00,265 INFO L290 TraceCheckUtils]: 5: Hoare triple {36357#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {36357#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:00,265 INFO L272 TraceCheckUtils]: 6: Hoare triple {36357#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {36357#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:00,266 INFO L290 TraceCheckUtils]: 7: Hoare triple {36357#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {36357#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:00,266 INFO L290 TraceCheckUtils]: 8: Hoare triple {36357#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {36357#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:00,266 INFO L290 TraceCheckUtils]: 9: Hoare triple {36357#(<= 200000 ~SIZE~0)} assume true; {36357#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:00,266 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {36357#(<= 200000 ~SIZE~0)} {36357#(<= 200000 ~SIZE~0)} #86#return; {36357#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:00,267 INFO L290 TraceCheckUtils]: 11: Hoare triple {36357#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {36357#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:00,267 INFO L290 TraceCheckUtils]: 12: Hoare triple {36357#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {36405#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:00,268 INFO L290 TraceCheckUtils]: 13: Hoare triple {36405#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [184] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_477 v_main_~c~0_476)) (.cse2 (= v_main_~st~0_253 v_main_~st~0_252)) (.cse3 (= |v_main_#t~post5_282| |v_main_#t~post5_280|)) (.cse1 (<= v_~last~0_218 v_main_~c~0_477))) (or (and .cse0 (or (not .cse1) (not (< v_main_~c~0_477 v_~SIZE~0_195))) .cse2 .cse3) (and .cse0 (= v_~last~0_218 v_~last~0_218) .cse2 .cse3 (= v_~SIZE~0_195 v_~SIZE~0_195)) (and (< v_main_~c~0_476 (+ v_~SIZE~0_195 1)) .cse1 (= v_main_~st~0_252 0) (< v_main_~c~0_477 v_main_~c~0_476)))) InVars {~SIZE~0=v_~SIZE~0_195, main_~c~0=v_main_~c~0_477, main_#t~post5=|v_main_#t~post5_282|, main_~st~0=v_main_~st~0_253, ~last~0=v_~last~0_218} OutVars{~SIZE~0=v_~SIZE~0_195, main_#t~post5=|v_main_#t~post5_280|, main_~c~0=v_main_~c~0_476, main_~st~0=v_main_~st~0_252, ~last~0=v_~last~0_218} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {36409#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:00,268 INFO L290 TraceCheckUtils]: 14: Hoare triple {36409#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [185] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36409#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:00,269 INFO L290 TraceCheckUtils]: 15: Hoare triple {36409#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [186] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_479 v_main_~c~0_478)) (.cse1 (= |v_main_#t~post5_285| |v_main_#t~post5_281|))) (or (and .cse0 (= v_~SIZE~0_196 v_~SIZE~0_196) .cse1 (= v_~last~0_219 v_~last~0_219)) (and (< v_main_~c~0_479 v_main_~c~0_478) (< v_main_~c~0_478 (+ v_~last~0_219 1)) (< v_main_~c~0_478 (+ v_~SIZE~0_196 1))) (and .cse0 (or (not (< v_main_~c~0_479 v_~SIZE~0_196)) (not (< v_main_~c~0_479 v_~last~0_219))) .cse1))) InVars {~SIZE~0=v_~SIZE~0_196, main_~c~0=v_main_~c~0_479, main_#t~post5=|v_main_#t~post5_285|, ~last~0=v_~last~0_219} OutVars{~SIZE~0=v_~SIZE~0_196, main_#t~post5=|v_main_#t~post5_281|, main_~c~0=v_main_~c~0_478, ~last~0=v_~last~0_219} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {36409#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:00,270 INFO L290 TraceCheckUtils]: 16: Hoare triple {36409#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [183] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {36419#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 03:59:00,270 INFO L290 TraceCheckUtils]: 17: Hoare triple {36419#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {36353#false} is VALID [2022-04-28 03:59:00,270 INFO L290 TraceCheckUtils]: 18: Hoare triple {36353#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {36353#false} is VALID [2022-04-28 03:59:00,270 INFO L290 TraceCheckUtils]: 19: Hoare triple {36353#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {36353#false} is VALID [2022-04-28 03:59:00,270 INFO L290 TraceCheckUtils]: 20: Hoare triple {36353#false} assume !(~d~0 == ~SIZE~0); {36353#false} is VALID [2022-04-28 03:59:00,270 INFO L272 TraceCheckUtils]: 21: Hoare triple {36353#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {36353#false} is VALID [2022-04-28 03:59:00,270 INFO L290 TraceCheckUtils]: 22: Hoare triple {36353#false} ~cond := #in~cond; {36353#false} is VALID [2022-04-28 03:59:00,271 INFO L290 TraceCheckUtils]: 23: Hoare triple {36353#false} assume 0 == ~cond; {36353#false} is VALID [2022-04-28 03:59:00,271 INFO L290 TraceCheckUtils]: 24: Hoare triple {36353#false} assume !false; {36353#false} is VALID [2022-04-28 03:59:00,271 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:59:00,271 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 03:59:00,627 INFO L290 TraceCheckUtils]: 24: Hoare triple {36353#false} assume !false; {36353#false} is VALID [2022-04-28 03:59:00,627 INFO L290 TraceCheckUtils]: 23: Hoare triple {36353#false} assume 0 == ~cond; {36353#false} is VALID [2022-04-28 03:59:00,627 INFO L290 TraceCheckUtils]: 22: Hoare triple {36353#false} ~cond := #in~cond; {36353#false} is VALID [2022-04-28 03:59:00,627 INFO L272 TraceCheckUtils]: 21: Hoare triple {36353#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {36353#false} is VALID [2022-04-28 03:59:00,627 INFO L290 TraceCheckUtils]: 20: Hoare triple {36353#false} assume !(~d~0 == ~SIZE~0); {36353#false} is VALID [2022-04-28 03:59:00,627 INFO L290 TraceCheckUtils]: 19: Hoare triple {36353#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {36353#false} is VALID [2022-04-28 03:59:00,627 INFO L290 TraceCheckUtils]: 18: Hoare triple {36353#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {36353#false} is VALID [2022-04-28 03:59:00,628 INFO L290 TraceCheckUtils]: 17: Hoare triple {36465#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {36353#false} is VALID [2022-04-28 03:59:00,628 INFO L290 TraceCheckUtils]: 16: Hoare triple {36469#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [183] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {36465#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 03:59:00,629 INFO L290 TraceCheckUtils]: 15: Hoare triple {36469#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [186] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_479 v_main_~c~0_478)) (.cse1 (= |v_main_#t~post5_285| |v_main_#t~post5_281|))) (or (and .cse0 (= v_~SIZE~0_196 v_~SIZE~0_196) .cse1 (= v_~last~0_219 v_~last~0_219)) (and (< v_main_~c~0_479 v_main_~c~0_478) (< v_main_~c~0_478 (+ v_~last~0_219 1)) (< v_main_~c~0_478 (+ v_~SIZE~0_196 1))) (and .cse0 (or (not (< v_main_~c~0_479 v_~SIZE~0_196)) (not (< v_main_~c~0_479 v_~last~0_219))) .cse1))) InVars {~SIZE~0=v_~SIZE~0_196, main_~c~0=v_main_~c~0_479, main_#t~post5=|v_main_#t~post5_285|, ~last~0=v_~last~0_219} OutVars{~SIZE~0=v_~SIZE~0_196, main_#t~post5=|v_main_#t~post5_281|, main_~c~0=v_main_~c~0_478, ~last~0=v_~last~0_219} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {36469#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:59:00,629 INFO L290 TraceCheckUtils]: 14: Hoare triple {36469#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [185] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {36469#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:59:00,630 INFO L290 TraceCheckUtils]: 13: Hoare triple {36479#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [184] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_477 v_main_~c~0_476)) (.cse2 (= v_main_~st~0_253 v_main_~st~0_252)) (.cse3 (= |v_main_#t~post5_282| |v_main_#t~post5_280|)) (.cse1 (<= v_~last~0_218 v_main_~c~0_477))) (or (and .cse0 (or (not .cse1) (not (< v_main_~c~0_477 v_~SIZE~0_195))) .cse2 .cse3) (and .cse0 (= v_~last~0_218 v_~last~0_218) .cse2 .cse3 (= v_~SIZE~0_195 v_~SIZE~0_195)) (and (< v_main_~c~0_476 (+ v_~SIZE~0_195 1)) .cse1 (= v_main_~st~0_252 0) (< v_main_~c~0_477 v_main_~c~0_476)))) InVars {~SIZE~0=v_~SIZE~0_195, main_~c~0=v_main_~c~0_477, main_#t~post5=|v_main_#t~post5_282|, main_~st~0=v_main_~st~0_253, ~last~0=v_~last~0_218} OutVars{~SIZE~0=v_~SIZE~0_195, main_#t~post5=|v_main_#t~post5_280|, main_~c~0=v_main_~c~0_476, main_~st~0=v_main_~st~0_252, ~last~0=v_~last~0_218} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {36469#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:59:00,630 INFO L290 TraceCheckUtils]: 12: Hoare triple {36483#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {36479#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 03:59:00,630 INFO L290 TraceCheckUtils]: 11: Hoare triple {36483#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {36483#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:00,631 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {36352#true} {36483#(< 1 ~SIZE~0)} #86#return; {36483#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:00,631 INFO L290 TraceCheckUtils]: 9: Hoare triple {36352#true} assume true; {36352#true} is VALID [2022-04-28 03:59:00,631 INFO L290 TraceCheckUtils]: 8: Hoare triple {36352#true} assume !(0 == ~cond); {36352#true} is VALID [2022-04-28 03:59:00,631 INFO L290 TraceCheckUtils]: 7: Hoare triple {36352#true} ~cond := #in~cond; {36352#true} is VALID [2022-04-28 03:59:00,631 INFO L272 TraceCheckUtils]: 6: Hoare triple {36483#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {36352#true} is VALID [2022-04-28 03:59:00,631 INFO L290 TraceCheckUtils]: 5: Hoare triple {36483#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {36483#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:00,632 INFO L272 TraceCheckUtils]: 4: Hoare triple {36483#(< 1 ~SIZE~0)} call #t~ret7 := main(); {36483#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:00,632 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36483#(< 1 ~SIZE~0)} {36352#true} #90#return; {36483#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:00,632 INFO L290 TraceCheckUtils]: 2: Hoare triple {36483#(< 1 ~SIZE~0)} assume true; {36483#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:00,633 INFO L290 TraceCheckUtils]: 1: Hoare triple {36352#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {36483#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:00,633 INFO L272 TraceCheckUtils]: 0: Hoare triple {36352#true} call ULTIMATE.init(); {36352#true} is VALID [2022-04-28 03:59:00,633 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:59:00,633 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [313112370] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 03:59:00,633 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 03:59:00,633 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 03:59:01,098 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:59:01,098 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [558671458] [2022-04-28 03:59:01,098 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [558671458] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:59:01,098 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:59:01,099 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [19] imperfect sequences [] total 19 [2022-04-28 03:59:01,099 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1480791016] [2022-04-28 03:59:01,099 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:59:01,099 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 1.9473684210526316) internal successors, (37), 18 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 43 [2022-04-28 03:59:01,099 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:59:01,099 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 19 states, 19 states have (on average 1.9473684210526316) internal successors, (37), 18 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:59:01,129 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:59:01,129 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2022-04-28 03:59:01,130 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:59:01,130 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-04-28 03:59:01,130 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=179, Invalid=577, Unknown=0, NotChecked=0, Total=756 [2022-04-28 03:59:01,130 INFO L87 Difference]: Start difference. First operand 229 states and 279 transitions. Second operand has 19 states, 19 states have (on average 1.9473684210526316) internal successors, (37), 18 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:59:03,248 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:59:03,249 INFO L93 Difference]: Finished difference Result 439 states and 535 transitions. [2022-04-28 03:59:03,249 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2022-04-28 03:59:03,249 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 1.9473684210526316) internal successors, (37), 18 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 43 [2022-04-28 03:59:03,249 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:59:03,249 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 1.9473684210526316) internal successors, (37), 18 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:59:03,250 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 95 transitions. [2022-04-28 03:59:03,250 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 1.9473684210526316) internal successors, (37), 18 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:59:03,250 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 95 transitions. [2022-04-28 03:59:03,250 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 19 states and 95 transitions. [2022-04-28 03:59:03,314 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 95 edges. 95 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:59:03,318 INFO L225 Difference]: With dead ends: 439 [2022-04-28 03:59:03,318 INFO L226 Difference]: Without dead ends: 268 [2022-04-28 03:59:03,318 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 91 GetRequests, 54 SyntacticMatches, 8 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 509 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=214, Invalid=716, Unknown=0, NotChecked=0, Total=930 [2022-04-28 03:59:03,319 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 57 mSDsluCounter, 24 mSDsCounter, 0 mSdLazyCounter, 770 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 58 SdHoareTripleChecker+Valid, 48 SdHoareTripleChecker+Invalid, 786 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 770 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-28 03:59:03,319 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [58 Valid, 48 Invalid, 786 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 770 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-28 03:59:03,319 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 268 states. [2022-04-28 03:59:04,163 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 268 to 229. [2022-04-28 03:59:04,164 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:59:04,164 INFO L82 GeneralOperation]: Start isEquivalent. First operand 268 states. Second operand has 229 states, 214 states have (on average 1.2242990654205608) internal successors, (262), 217 states have internal predecessors, (262), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:59:04,164 INFO L74 IsIncluded]: Start isIncluded. First operand 268 states. Second operand has 229 states, 214 states have (on average 1.2242990654205608) internal successors, (262), 217 states have internal predecessors, (262), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:59:04,164 INFO L87 Difference]: Start difference. First operand 268 states. Second operand has 229 states, 214 states have (on average 1.2242990654205608) internal successors, (262), 217 states have internal predecessors, (262), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:59:04,167 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:59:04,168 INFO L93 Difference]: Finished difference Result 268 states and 322 transitions. [2022-04-28 03:59:04,168 INFO L276 IsEmpty]: Start isEmpty. Operand 268 states and 322 transitions. [2022-04-28 03:59:04,168 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:59:04,168 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:59:04,168 INFO L74 IsIncluded]: Start isIncluded. First operand has 229 states, 214 states have (on average 1.2242990654205608) internal successors, (262), 217 states have internal predecessors, (262), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 268 states. [2022-04-28 03:59:04,168 INFO L87 Difference]: Start difference. First operand has 229 states, 214 states have (on average 1.2242990654205608) internal successors, (262), 217 states have internal predecessors, (262), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 268 states. [2022-04-28 03:59:04,171 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:59:04,171 INFO L93 Difference]: Finished difference Result 268 states and 322 transitions. [2022-04-28 03:59:04,171 INFO L276 IsEmpty]: Start isEmpty. Operand 268 states and 322 transitions. [2022-04-28 03:59:04,172 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:59:04,172 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:59:04,172 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:59:04,172 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:59:04,172 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 229 states, 214 states have (on average 1.2242990654205608) internal successors, (262), 217 states have internal predecessors, (262), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:59:04,175 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 229 states to 229 states and 279 transitions. [2022-04-28 03:59:04,175 INFO L78 Accepts]: Start accepts. Automaton has 229 states and 279 transitions. Word has length 43 [2022-04-28 03:59:04,175 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:59:04,175 INFO L495 AbstractCegarLoop]: Abstraction has 229 states and 279 transitions. [2022-04-28 03:59:04,175 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 19 states have (on average 1.9473684210526316) internal successors, (37), 18 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:59:04,175 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 229 states and 279 transitions. [2022-04-28 03:59:04,667 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 279 edges. 279 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:59:04,667 INFO L276 IsEmpty]: Start isEmpty. Operand 229 states and 279 transitions. [2022-04-28 03:59:04,667 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-28 03:59:04,667 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:59:04,667 INFO L195 NwaCegarLoop]: trace histogram [7, 7, 5, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:59:04,685 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Ended with exit code 0 [2022-04-28 03:59:04,868 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 21 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable28 [2022-04-28 03:59:04,868 INFO L420 AbstractCegarLoop]: === Iteration 30 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:59:04,868 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:59:04,868 INFO L85 PathProgramCache]: Analyzing trace with hash -1596695361, now seen corresponding path program 20 times [2022-04-28 03:59:04,868 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:59:04,868 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1245926668] [2022-04-28 03:59:05,131 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:59:05,336 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:59:05,337 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:59:05,340 INFO L85 PathProgramCache]: Analyzing trace with hash 1002421441, now seen corresponding path program 1 times [2022-04-28 03:59:05,340 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:59:05,340 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1185798549] [2022-04-28 03:59:05,340 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:59:05,340 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:59:05,349 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:59:05,401 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:59:05,403 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:59:05,408 INFO L290 TraceCheckUtils]: 0: Hoare triple {38428#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {38420#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:05,408 INFO L290 TraceCheckUtils]: 1: Hoare triple {38420#(<= 200000 ~SIZE~0)} assume true; {38420#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:05,408 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {38420#(<= 200000 ~SIZE~0)} {38415#true} #90#return; {38420#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:05,409 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:59:05,409 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:59:05,411 INFO L290 TraceCheckUtils]: 0: Hoare triple {38415#true} ~cond := #in~cond; {38415#true} is VALID [2022-04-28 03:59:05,411 INFO L290 TraceCheckUtils]: 1: Hoare triple {38415#true} assume !(0 == ~cond); {38415#true} is VALID [2022-04-28 03:59:05,411 INFO L290 TraceCheckUtils]: 2: Hoare triple {38415#true} assume true; {38415#true} is VALID [2022-04-28 03:59:05,412 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38415#true} {38420#(<= 200000 ~SIZE~0)} #86#return; {38420#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:05,412 INFO L272 TraceCheckUtils]: 0: Hoare triple {38415#true} call ULTIMATE.init(); {38428#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:59:05,413 INFO L290 TraceCheckUtils]: 1: Hoare triple {38428#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {38420#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:05,413 INFO L290 TraceCheckUtils]: 2: Hoare triple {38420#(<= 200000 ~SIZE~0)} assume true; {38420#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:05,413 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38420#(<= 200000 ~SIZE~0)} {38415#true} #90#return; {38420#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:05,414 INFO L272 TraceCheckUtils]: 4: Hoare triple {38420#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {38420#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:05,414 INFO L290 TraceCheckUtils]: 5: Hoare triple {38420#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {38420#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:05,414 INFO L272 TraceCheckUtils]: 6: Hoare triple {38420#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {38415#true} is VALID [2022-04-28 03:59:05,414 INFO L290 TraceCheckUtils]: 7: Hoare triple {38415#true} ~cond := #in~cond; {38415#true} is VALID [2022-04-28 03:59:05,414 INFO L290 TraceCheckUtils]: 8: Hoare triple {38415#true} assume !(0 == ~cond); {38415#true} is VALID [2022-04-28 03:59:05,414 INFO L290 TraceCheckUtils]: 9: Hoare triple {38415#true} assume true; {38415#true} is VALID [2022-04-28 03:59:05,415 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {38415#true} {38420#(<= 200000 ~SIZE~0)} #86#return; {38420#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:05,415 INFO L290 TraceCheckUtils]: 11: Hoare triple {38420#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {38420#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:05,416 INFO L290 TraceCheckUtils]: 12: Hoare triple {38420#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {38425#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:05,416 INFO L290 TraceCheckUtils]: 13: Hoare triple {38425#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [188] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~st~0_265 v_main_~st~0_264)) (.cse1 (= v_main_~c~0_501 v_main_~c~0_500)) (.cse2 (= |v_main_#t~post5_295| |v_main_#t~post5_293|)) (.cse3 (<= v_~last~0_228 v_main_~c~0_501))) (or (and (= v_~last~0_228 v_~last~0_228) .cse0 (= v_~SIZE~0_204 v_~SIZE~0_204) .cse1 .cse2) (and .cse0 (or (not .cse3) (not (< v_main_~c~0_501 v_~SIZE~0_204))) .cse1 .cse2) (and .cse3 (= v_main_~st~0_264 0) (< v_main_~c~0_501 v_main_~c~0_500) (< v_main_~c~0_500 (+ v_~SIZE~0_204 1))))) InVars {~SIZE~0=v_~SIZE~0_204, main_~c~0=v_main_~c~0_501, main_#t~post5=|v_main_#t~post5_295|, main_~st~0=v_main_~st~0_265, ~last~0=v_~last~0_228} OutVars{~SIZE~0=v_~SIZE~0_204, main_#t~post5=|v_main_#t~post5_293|, main_~c~0=v_main_~c~0_500, main_~st~0=v_main_~st~0_264, ~last~0=v_~last~0_228} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {38426#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:59:05,417 INFO L290 TraceCheckUtils]: 14: Hoare triple {38426#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [189] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {38426#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:59:05,418 INFO L290 TraceCheckUtils]: 15: Hoare triple {38426#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [190] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_298| |v_main_#t~post5_294|)) (.cse1 (= v_main_~c~0_503 v_main_~c~0_502))) (or (and .cse0 (or (not (< v_main_~c~0_503 v_~last~0_229)) (not (< v_main_~c~0_503 v_~SIZE~0_205))) .cse1) (and .cse0 .cse1 (= v_~last~0_229 v_~last~0_229) (= v_~SIZE~0_205 v_~SIZE~0_205)) (and (< v_main_~c~0_502 (+ v_~last~0_229 1)) (< v_main_~c~0_502 (+ v_~SIZE~0_205 1)) (< v_main_~c~0_503 v_main_~c~0_502)))) InVars {~SIZE~0=v_~SIZE~0_205, main_~c~0=v_main_~c~0_503, main_#t~post5=|v_main_#t~post5_298|, ~last~0=v_~last~0_229} OutVars{~SIZE~0=v_~SIZE~0_205, main_#t~post5=|v_main_#t~post5_294|, main_~c~0=v_main_~c~0_502, ~last~0=v_~last~0_229} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {38426#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:59:05,419 INFO L290 TraceCheckUtils]: 16: Hoare triple {38426#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [187] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {38427#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 03:59:05,419 INFO L290 TraceCheckUtils]: 17: Hoare triple {38427#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {38416#false} is VALID [2022-04-28 03:59:05,419 INFO L290 TraceCheckUtils]: 18: Hoare triple {38416#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {38416#false} is VALID [2022-04-28 03:59:05,419 INFO L290 TraceCheckUtils]: 19: Hoare triple {38416#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {38416#false} is VALID [2022-04-28 03:59:05,420 INFO L290 TraceCheckUtils]: 20: Hoare triple {38416#false} assume !(~d~0 == ~SIZE~0); {38416#false} is VALID [2022-04-28 03:59:05,420 INFO L272 TraceCheckUtils]: 21: Hoare triple {38416#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {38416#false} is VALID [2022-04-28 03:59:05,420 INFO L290 TraceCheckUtils]: 22: Hoare triple {38416#false} ~cond := #in~cond; {38416#false} is VALID [2022-04-28 03:59:05,420 INFO L290 TraceCheckUtils]: 23: Hoare triple {38416#false} assume 0 == ~cond; {38416#false} is VALID [2022-04-28 03:59:05,420 INFO L290 TraceCheckUtils]: 24: Hoare triple {38416#false} assume !false; {38416#false} is VALID [2022-04-28 03:59:05,420 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:59:05,420 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:59:05,420 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1185798549] [2022-04-28 03:59:05,420 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1185798549] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 03:59:05,420 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [144984650] [2022-04-28 03:59:05,420 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:59:05,420 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:59:05,421 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 03:59:05,421 INFO L229 MonitoredProcess]: Starting monitored process 22 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 03:59:05,422 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Waiting until timeout for monitored process [2022-04-28 03:59:05,452 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:59:05,453 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 03:59:05,462 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:59:05,463 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 03:59:05,730 INFO L272 TraceCheckUtils]: 0: Hoare triple {38415#true} call ULTIMATE.init(); {38415#true} is VALID [2022-04-28 03:59:05,731 INFO L290 TraceCheckUtils]: 1: Hoare triple {38415#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {38420#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:05,731 INFO L290 TraceCheckUtils]: 2: Hoare triple {38420#(<= 200000 ~SIZE~0)} assume true; {38420#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:05,732 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38420#(<= 200000 ~SIZE~0)} {38415#true} #90#return; {38420#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:05,732 INFO L272 TraceCheckUtils]: 4: Hoare triple {38420#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {38420#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:05,732 INFO L290 TraceCheckUtils]: 5: Hoare triple {38420#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {38420#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:05,733 INFO L272 TraceCheckUtils]: 6: Hoare triple {38420#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {38420#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:05,733 INFO L290 TraceCheckUtils]: 7: Hoare triple {38420#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {38420#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:05,733 INFO L290 TraceCheckUtils]: 8: Hoare triple {38420#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {38420#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:05,734 INFO L290 TraceCheckUtils]: 9: Hoare triple {38420#(<= 200000 ~SIZE~0)} assume true; {38420#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:05,734 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {38420#(<= 200000 ~SIZE~0)} {38420#(<= 200000 ~SIZE~0)} #86#return; {38420#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:05,734 INFO L290 TraceCheckUtils]: 11: Hoare triple {38420#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {38420#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:05,735 INFO L290 TraceCheckUtils]: 12: Hoare triple {38420#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {38468#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:05,736 INFO L290 TraceCheckUtils]: 13: Hoare triple {38468#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [188] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~st~0_265 v_main_~st~0_264)) (.cse1 (= v_main_~c~0_501 v_main_~c~0_500)) (.cse2 (= |v_main_#t~post5_295| |v_main_#t~post5_293|)) (.cse3 (<= v_~last~0_228 v_main_~c~0_501))) (or (and (= v_~last~0_228 v_~last~0_228) .cse0 (= v_~SIZE~0_204 v_~SIZE~0_204) .cse1 .cse2) (and .cse0 (or (not .cse3) (not (< v_main_~c~0_501 v_~SIZE~0_204))) .cse1 .cse2) (and .cse3 (= v_main_~st~0_264 0) (< v_main_~c~0_501 v_main_~c~0_500) (< v_main_~c~0_500 (+ v_~SIZE~0_204 1))))) InVars {~SIZE~0=v_~SIZE~0_204, main_~c~0=v_main_~c~0_501, main_#t~post5=|v_main_#t~post5_295|, main_~st~0=v_main_~st~0_265, ~last~0=v_~last~0_228} OutVars{~SIZE~0=v_~SIZE~0_204, main_#t~post5=|v_main_#t~post5_293|, main_~c~0=v_main_~c~0_500, main_~st~0=v_main_~st~0_264, ~last~0=v_~last~0_228} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {38472#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:05,736 INFO L290 TraceCheckUtils]: 14: Hoare triple {38472#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [189] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {38472#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:05,737 INFO L290 TraceCheckUtils]: 15: Hoare triple {38472#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [190] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_298| |v_main_#t~post5_294|)) (.cse1 (= v_main_~c~0_503 v_main_~c~0_502))) (or (and .cse0 (or (not (< v_main_~c~0_503 v_~last~0_229)) (not (< v_main_~c~0_503 v_~SIZE~0_205))) .cse1) (and .cse0 .cse1 (= v_~last~0_229 v_~last~0_229) (= v_~SIZE~0_205 v_~SIZE~0_205)) (and (< v_main_~c~0_502 (+ v_~last~0_229 1)) (< v_main_~c~0_502 (+ v_~SIZE~0_205 1)) (< v_main_~c~0_503 v_main_~c~0_502)))) InVars {~SIZE~0=v_~SIZE~0_205, main_~c~0=v_main_~c~0_503, main_#t~post5=|v_main_#t~post5_298|, ~last~0=v_~last~0_229} OutVars{~SIZE~0=v_~SIZE~0_205, main_#t~post5=|v_main_#t~post5_294|, main_~c~0=v_main_~c~0_502, ~last~0=v_~last~0_229} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {38472#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:05,737 INFO L290 TraceCheckUtils]: 16: Hoare triple {38472#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [187] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {38482#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 03:59:05,738 INFO L290 TraceCheckUtils]: 17: Hoare triple {38482#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {38416#false} is VALID [2022-04-28 03:59:05,738 INFO L290 TraceCheckUtils]: 18: Hoare triple {38416#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {38416#false} is VALID [2022-04-28 03:59:05,738 INFO L290 TraceCheckUtils]: 19: Hoare triple {38416#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {38416#false} is VALID [2022-04-28 03:59:05,738 INFO L290 TraceCheckUtils]: 20: Hoare triple {38416#false} assume !(~d~0 == ~SIZE~0); {38416#false} is VALID [2022-04-28 03:59:05,738 INFO L272 TraceCheckUtils]: 21: Hoare triple {38416#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {38416#false} is VALID [2022-04-28 03:59:05,738 INFO L290 TraceCheckUtils]: 22: Hoare triple {38416#false} ~cond := #in~cond; {38416#false} is VALID [2022-04-28 03:59:05,738 INFO L290 TraceCheckUtils]: 23: Hoare triple {38416#false} assume 0 == ~cond; {38416#false} is VALID [2022-04-28 03:59:05,738 INFO L290 TraceCheckUtils]: 24: Hoare triple {38416#false} assume !false; {38416#false} is VALID [2022-04-28 03:59:05,738 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:59:05,738 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 03:59:06,058 INFO L290 TraceCheckUtils]: 24: Hoare triple {38416#false} assume !false; {38416#false} is VALID [2022-04-28 03:59:06,058 INFO L290 TraceCheckUtils]: 23: Hoare triple {38416#false} assume 0 == ~cond; {38416#false} is VALID [2022-04-28 03:59:06,058 INFO L290 TraceCheckUtils]: 22: Hoare triple {38416#false} ~cond := #in~cond; {38416#false} is VALID [2022-04-28 03:59:06,058 INFO L272 TraceCheckUtils]: 21: Hoare triple {38416#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {38416#false} is VALID [2022-04-28 03:59:06,058 INFO L290 TraceCheckUtils]: 20: Hoare triple {38416#false} assume !(~d~0 == ~SIZE~0); {38416#false} is VALID [2022-04-28 03:59:06,058 INFO L290 TraceCheckUtils]: 19: Hoare triple {38416#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {38416#false} is VALID [2022-04-28 03:59:06,059 INFO L290 TraceCheckUtils]: 18: Hoare triple {38416#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {38416#false} is VALID [2022-04-28 03:59:06,059 INFO L290 TraceCheckUtils]: 17: Hoare triple {38528#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {38416#false} is VALID [2022-04-28 03:59:06,060 INFO L290 TraceCheckUtils]: 16: Hoare triple {38532#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [187] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {38528#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 03:59:06,060 INFO L290 TraceCheckUtils]: 15: Hoare triple {38532#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [190] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_298| |v_main_#t~post5_294|)) (.cse1 (= v_main_~c~0_503 v_main_~c~0_502))) (or (and .cse0 (or (not (< v_main_~c~0_503 v_~last~0_229)) (not (< v_main_~c~0_503 v_~SIZE~0_205))) .cse1) (and .cse0 .cse1 (= v_~last~0_229 v_~last~0_229) (= v_~SIZE~0_205 v_~SIZE~0_205)) (and (< v_main_~c~0_502 (+ v_~last~0_229 1)) (< v_main_~c~0_502 (+ v_~SIZE~0_205 1)) (< v_main_~c~0_503 v_main_~c~0_502)))) InVars {~SIZE~0=v_~SIZE~0_205, main_~c~0=v_main_~c~0_503, main_#t~post5=|v_main_#t~post5_298|, ~last~0=v_~last~0_229} OutVars{~SIZE~0=v_~SIZE~0_205, main_#t~post5=|v_main_#t~post5_294|, main_~c~0=v_main_~c~0_502, ~last~0=v_~last~0_229} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {38532#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:59:06,060 INFO L290 TraceCheckUtils]: 14: Hoare triple {38532#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [189] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {38532#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:59:06,061 INFO L290 TraceCheckUtils]: 13: Hoare triple {38542#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [188] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~st~0_265 v_main_~st~0_264)) (.cse1 (= v_main_~c~0_501 v_main_~c~0_500)) (.cse2 (= |v_main_#t~post5_295| |v_main_#t~post5_293|)) (.cse3 (<= v_~last~0_228 v_main_~c~0_501))) (or (and (= v_~last~0_228 v_~last~0_228) .cse0 (= v_~SIZE~0_204 v_~SIZE~0_204) .cse1 .cse2) (and .cse0 (or (not .cse3) (not (< v_main_~c~0_501 v_~SIZE~0_204))) .cse1 .cse2) (and .cse3 (= v_main_~st~0_264 0) (< v_main_~c~0_501 v_main_~c~0_500) (< v_main_~c~0_500 (+ v_~SIZE~0_204 1))))) InVars {~SIZE~0=v_~SIZE~0_204, main_~c~0=v_main_~c~0_501, main_#t~post5=|v_main_#t~post5_295|, main_~st~0=v_main_~st~0_265, ~last~0=v_~last~0_228} OutVars{~SIZE~0=v_~SIZE~0_204, main_#t~post5=|v_main_#t~post5_293|, main_~c~0=v_main_~c~0_500, main_~st~0=v_main_~st~0_264, ~last~0=v_~last~0_228} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {38532#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:59:06,062 INFO L290 TraceCheckUtils]: 12: Hoare triple {38546#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {38542#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 03:59:06,062 INFO L290 TraceCheckUtils]: 11: Hoare triple {38546#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {38546#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:06,062 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {38415#true} {38546#(< 1 ~SIZE~0)} #86#return; {38546#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:06,062 INFO L290 TraceCheckUtils]: 9: Hoare triple {38415#true} assume true; {38415#true} is VALID [2022-04-28 03:59:06,062 INFO L290 TraceCheckUtils]: 8: Hoare triple {38415#true} assume !(0 == ~cond); {38415#true} is VALID [2022-04-28 03:59:06,062 INFO L290 TraceCheckUtils]: 7: Hoare triple {38415#true} ~cond := #in~cond; {38415#true} is VALID [2022-04-28 03:59:06,063 INFO L272 TraceCheckUtils]: 6: Hoare triple {38546#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {38415#true} is VALID [2022-04-28 03:59:06,063 INFO L290 TraceCheckUtils]: 5: Hoare triple {38546#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {38546#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:06,063 INFO L272 TraceCheckUtils]: 4: Hoare triple {38546#(< 1 ~SIZE~0)} call #t~ret7 := main(); {38546#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:06,063 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {38546#(< 1 ~SIZE~0)} {38415#true} #90#return; {38546#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:06,064 INFO L290 TraceCheckUtils]: 2: Hoare triple {38546#(< 1 ~SIZE~0)} assume true; {38546#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:06,064 INFO L290 TraceCheckUtils]: 1: Hoare triple {38415#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {38546#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:06,064 INFO L272 TraceCheckUtils]: 0: Hoare triple {38415#true} call ULTIMATE.init(); {38415#true} is VALID [2022-04-28 03:59:06,064 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:59:06,065 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [144984650] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 03:59:06,065 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 03:59:06,065 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 03:59:06,533 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:59:06,533 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1245926668] [2022-04-28 03:59:06,533 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1245926668] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:59:06,533 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:59:06,533 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [20] imperfect sequences [] total 20 [2022-04-28 03:59:06,534 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [833823427] [2022-04-28 03:59:06,534 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:59:06,534 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 20 states have (on average 1.85) internal successors, (37), 19 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 43 [2022-04-28 03:59:06,534 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:59:06,534 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 20 states, 20 states have (on average 1.85) internal successors, (37), 19 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:59:06,565 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:59:06,565 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 20 states [2022-04-28 03:59:06,565 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:59:06,565 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2022-04-28 03:59:06,565 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=194, Invalid=618, Unknown=0, NotChecked=0, Total=812 [2022-04-28 03:59:06,565 INFO L87 Difference]: Start difference. First operand 229 states and 279 transitions. Second operand has 20 states, 20 states have (on average 1.85) internal successors, (37), 19 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:59:08,774 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:59:08,774 INFO L93 Difference]: Finished difference Result 434 states and 530 transitions. [2022-04-28 03:59:08,774 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-04-28 03:59:08,774 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 20 states have (on average 1.85) internal successors, (37), 19 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 43 [2022-04-28 03:59:08,774 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:59:08,774 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 20 states have (on average 1.85) internal successors, (37), 19 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:59:08,775 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 96 transitions. [2022-04-28 03:59:08,775 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 20 states have (on average 1.85) internal successors, (37), 19 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:59:08,776 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 96 transitions. [2022-04-28 03:59:08,776 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 96 transitions. [2022-04-28 03:59:08,842 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 96 edges. 96 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:59:08,850 INFO L225 Difference]: With dead ends: 434 [2022-04-28 03:59:08,850 INFO L226 Difference]: Without dead ends: 263 [2022-04-28 03:59:08,850 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 91 GetRequests, 54 SyntacticMatches, 7 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 508 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=231, Invalid=761, Unknown=0, NotChecked=0, Total=992 [2022-04-28 03:59:08,851 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 63 mSDsluCounter, 17 mSDsCounter, 0 mSdLazyCounter, 765 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 64 SdHoareTripleChecker+Valid, 41 SdHoareTripleChecker+Invalid, 782 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 765 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-04-28 03:59:08,851 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [64 Valid, 41 Invalid, 782 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 765 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-04-28 03:59:08,851 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 263 states. [2022-04-28 03:59:09,728 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 263 to 229. [2022-04-28 03:59:09,728 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:59:09,729 INFO L82 GeneralOperation]: Start isEquivalent. First operand 263 states. Second operand has 229 states, 214 states have (on average 1.2242990654205608) internal successors, (262), 217 states have internal predecessors, (262), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:59:09,729 INFO L74 IsIncluded]: Start isIncluded. First operand 263 states. Second operand has 229 states, 214 states have (on average 1.2242990654205608) internal successors, (262), 217 states have internal predecessors, (262), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:59:09,729 INFO L87 Difference]: Start difference. First operand 263 states. Second operand has 229 states, 214 states have (on average 1.2242990654205608) internal successors, (262), 217 states have internal predecessors, (262), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:59:09,732 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:59:09,732 INFO L93 Difference]: Finished difference Result 263 states and 317 transitions. [2022-04-28 03:59:09,732 INFO L276 IsEmpty]: Start isEmpty. Operand 263 states and 317 transitions. [2022-04-28 03:59:09,732 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:59:09,733 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:59:09,733 INFO L74 IsIncluded]: Start isIncluded. First operand has 229 states, 214 states have (on average 1.2242990654205608) internal successors, (262), 217 states have internal predecessors, (262), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 263 states. [2022-04-28 03:59:09,733 INFO L87 Difference]: Start difference. First operand has 229 states, 214 states have (on average 1.2242990654205608) internal successors, (262), 217 states have internal predecessors, (262), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 263 states. [2022-04-28 03:59:09,736 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:59:09,736 INFO L93 Difference]: Finished difference Result 263 states and 317 transitions. [2022-04-28 03:59:09,736 INFO L276 IsEmpty]: Start isEmpty. Operand 263 states and 317 transitions. [2022-04-28 03:59:09,736 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:59:09,736 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:59:09,736 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:59:09,736 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:59:09,737 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 229 states, 214 states have (on average 1.2242990654205608) internal successors, (262), 217 states have internal predecessors, (262), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:59:09,739 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 229 states to 229 states and 279 transitions. [2022-04-28 03:59:09,739 INFO L78 Accepts]: Start accepts. Automaton has 229 states and 279 transitions. Word has length 43 [2022-04-28 03:59:09,739 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:59:09,740 INFO L495 AbstractCegarLoop]: Abstraction has 229 states and 279 transitions. [2022-04-28 03:59:09,740 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 20 states, 20 states have (on average 1.85) internal successors, (37), 19 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:59:09,740 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 229 states and 279 transitions. [2022-04-28 03:59:10,277 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 279 edges. 279 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:59:10,278 INFO L276 IsEmpty]: Start isEmpty. Operand 229 states and 279 transitions. [2022-04-28 03:59:10,278 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-28 03:59:10,278 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:59:10,278 INFO L195 NwaCegarLoop]: trace histogram [7, 7, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:59:10,298 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Forceful destruction successful, exit code 0 [2022-04-28 03:59:10,478 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable29,22 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:59:10,479 INFO L420 AbstractCegarLoop]: === Iteration 31 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:59:10,479 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:59:10,479 INFO L85 PathProgramCache]: Analyzing trace with hash 1687154685, now seen corresponding path program 21 times [2022-04-28 03:59:10,479 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:59:10,479 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [709310267] [2022-04-28 03:59:14,607 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:59:14,714 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:59:14,930 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:59:14,931 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:59:14,934 INFO L85 PathProgramCache]: Analyzing trace with hash -800023103, now seen corresponding path program 1 times [2022-04-28 03:59:14,934 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:59:14,934 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [303290501] [2022-04-28 03:59:14,934 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:59:14,934 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:59:14,941 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:59:14,990 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:59:14,992 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:59:14,996 INFO L290 TraceCheckUtils]: 0: Hoare triple {40472#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {40464#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:14,997 INFO L290 TraceCheckUtils]: 1: Hoare triple {40464#(<= 200000 ~SIZE~0)} assume true; {40464#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:14,997 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {40464#(<= 200000 ~SIZE~0)} {40459#true} #90#return; {40464#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:14,998 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:59:14,998 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:59:15,000 INFO L290 TraceCheckUtils]: 0: Hoare triple {40459#true} ~cond := #in~cond; {40459#true} is VALID [2022-04-28 03:59:15,000 INFO L290 TraceCheckUtils]: 1: Hoare triple {40459#true} assume !(0 == ~cond); {40459#true} is VALID [2022-04-28 03:59:15,000 INFO L290 TraceCheckUtils]: 2: Hoare triple {40459#true} assume true; {40459#true} is VALID [2022-04-28 03:59:15,001 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40459#true} {40464#(<= 200000 ~SIZE~0)} #86#return; {40464#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:15,002 INFO L272 TraceCheckUtils]: 0: Hoare triple {40459#true} call ULTIMATE.init(); {40472#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:59:15,002 INFO L290 TraceCheckUtils]: 1: Hoare triple {40472#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {40464#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:15,003 INFO L290 TraceCheckUtils]: 2: Hoare triple {40464#(<= 200000 ~SIZE~0)} assume true; {40464#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:15,003 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40464#(<= 200000 ~SIZE~0)} {40459#true} #90#return; {40464#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:15,004 INFO L272 TraceCheckUtils]: 4: Hoare triple {40464#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {40464#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:15,004 INFO L290 TraceCheckUtils]: 5: Hoare triple {40464#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {40464#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:15,004 INFO L272 TraceCheckUtils]: 6: Hoare triple {40464#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {40459#true} is VALID [2022-04-28 03:59:15,004 INFO L290 TraceCheckUtils]: 7: Hoare triple {40459#true} ~cond := #in~cond; {40459#true} is VALID [2022-04-28 03:59:15,004 INFO L290 TraceCheckUtils]: 8: Hoare triple {40459#true} assume !(0 == ~cond); {40459#true} is VALID [2022-04-28 03:59:15,004 INFO L290 TraceCheckUtils]: 9: Hoare triple {40459#true} assume true; {40459#true} is VALID [2022-04-28 03:59:15,005 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {40459#true} {40464#(<= 200000 ~SIZE~0)} #86#return; {40464#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:15,005 INFO L290 TraceCheckUtils]: 11: Hoare triple {40464#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {40464#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:15,006 INFO L290 TraceCheckUtils]: 12: Hoare triple {40464#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {40469#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:15,007 INFO L290 TraceCheckUtils]: 13: Hoare triple {40469#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [192] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_525 v_main_~c~0_524)) (.cse1 (= |v_main_#t~post5_308| |v_main_#t~post5_306|)) (.cse2 (= v_main_~st~0_276 v_main_~st~0_275)) (.cse3 (<= v_~last~0_238 v_main_~c~0_525))) (or (and (= v_~last~0_238 v_~last~0_238) (= v_~SIZE~0_213 v_~SIZE~0_213) .cse0 .cse1 .cse2) (and (or (not .cse3) (not (< v_main_~c~0_525 v_~SIZE~0_213))) .cse0 .cse1 .cse2) (and (< v_main_~c~0_525 v_main_~c~0_524) (< v_main_~c~0_524 (+ v_~SIZE~0_213 1)) (= v_main_~st~0_275 0) .cse3))) InVars {~SIZE~0=v_~SIZE~0_213, main_~c~0=v_main_~c~0_525, main_#t~post5=|v_main_#t~post5_308|, main_~st~0=v_main_~st~0_276, ~last~0=v_~last~0_238} OutVars{~SIZE~0=v_~SIZE~0_213, main_#t~post5=|v_main_#t~post5_306|, main_~c~0=v_main_~c~0_524, main_~st~0=v_main_~st~0_275, ~last~0=v_~last~0_238} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {40470#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:59:15,007 INFO L290 TraceCheckUtils]: 14: Hoare triple {40470#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [193] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {40470#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:59:15,008 INFO L290 TraceCheckUtils]: 15: Hoare triple {40470#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [194] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_527 v_main_~c~0_526))) (or (and (< v_main_~c~0_526 (+ v_~SIZE~0_214 1)) (< v_main_~c~0_526 (+ v_~last~0_239 1)) (< v_main_~c~0_527 v_main_~c~0_526)) (and (= |v_main_#t~post5_311| |v_main_#t~post5_307|) .cse0 (= v_~SIZE~0_214 v_~SIZE~0_214) (= v_~last~0_239 v_~last~0_239)) (and (= |v_main_#t~post5_307| |v_main_#t~post5_311|) .cse0 (or (not (< v_main_~c~0_527 v_~last~0_239)) (not (< v_main_~c~0_527 v_~SIZE~0_214)))))) InVars {~SIZE~0=v_~SIZE~0_214, main_~c~0=v_main_~c~0_527, main_#t~post5=|v_main_#t~post5_311|, ~last~0=v_~last~0_239} OutVars{~SIZE~0=v_~SIZE~0_214, main_#t~post5=|v_main_#t~post5_307|, main_~c~0=v_main_~c~0_526, ~last~0=v_~last~0_239} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {40470#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:59:15,008 INFO L290 TraceCheckUtils]: 16: Hoare triple {40470#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [191] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {40471#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 03:59:15,009 INFO L290 TraceCheckUtils]: 17: Hoare triple {40471#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {40460#false} is VALID [2022-04-28 03:59:15,009 INFO L290 TraceCheckUtils]: 18: Hoare triple {40460#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {40460#false} is VALID [2022-04-28 03:59:15,009 INFO L290 TraceCheckUtils]: 19: Hoare triple {40460#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {40460#false} is VALID [2022-04-28 03:59:15,009 INFO L290 TraceCheckUtils]: 20: Hoare triple {40460#false} assume !(~d~0 == ~SIZE~0); {40460#false} is VALID [2022-04-28 03:59:15,009 INFO L272 TraceCheckUtils]: 21: Hoare triple {40460#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {40460#false} is VALID [2022-04-28 03:59:15,009 INFO L290 TraceCheckUtils]: 22: Hoare triple {40460#false} ~cond := #in~cond; {40460#false} is VALID [2022-04-28 03:59:15,009 INFO L290 TraceCheckUtils]: 23: Hoare triple {40460#false} assume 0 == ~cond; {40460#false} is VALID [2022-04-28 03:59:15,009 INFO L290 TraceCheckUtils]: 24: Hoare triple {40460#false} assume !false; {40460#false} is VALID [2022-04-28 03:59:15,009 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:59:15,010 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:59:15,010 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [303290501] [2022-04-28 03:59:15,010 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [303290501] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 03:59:15,010 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [864345972] [2022-04-28 03:59:15,010 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:59:15,010 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:59:15,010 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 03:59:15,019 INFO L229 MonitoredProcess]: Starting monitored process 23 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 03:59:15,043 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Waiting until timeout for monitored process [2022-04-28 03:59:15,066 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:59:15,067 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 03:59:15,074 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:59:15,075 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 03:59:15,346 INFO L272 TraceCheckUtils]: 0: Hoare triple {40459#true} call ULTIMATE.init(); {40459#true} is VALID [2022-04-28 03:59:15,347 INFO L290 TraceCheckUtils]: 1: Hoare triple {40459#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {40464#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:15,347 INFO L290 TraceCheckUtils]: 2: Hoare triple {40464#(<= 200000 ~SIZE~0)} assume true; {40464#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:15,347 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40464#(<= 200000 ~SIZE~0)} {40459#true} #90#return; {40464#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:15,348 INFO L272 TraceCheckUtils]: 4: Hoare triple {40464#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {40464#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:15,348 INFO L290 TraceCheckUtils]: 5: Hoare triple {40464#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {40464#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:15,348 INFO L272 TraceCheckUtils]: 6: Hoare triple {40464#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {40464#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:15,348 INFO L290 TraceCheckUtils]: 7: Hoare triple {40464#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {40464#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:15,349 INFO L290 TraceCheckUtils]: 8: Hoare triple {40464#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {40464#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:15,349 INFO L290 TraceCheckUtils]: 9: Hoare triple {40464#(<= 200000 ~SIZE~0)} assume true; {40464#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:15,349 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {40464#(<= 200000 ~SIZE~0)} {40464#(<= 200000 ~SIZE~0)} #86#return; {40464#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:15,350 INFO L290 TraceCheckUtils]: 11: Hoare triple {40464#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {40464#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:15,350 INFO L290 TraceCheckUtils]: 12: Hoare triple {40464#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {40512#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:15,351 INFO L290 TraceCheckUtils]: 13: Hoare triple {40512#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [192] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_525 v_main_~c~0_524)) (.cse1 (= |v_main_#t~post5_308| |v_main_#t~post5_306|)) (.cse2 (= v_main_~st~0_276 v_main_~st~0_275)) (.cse3 (<= v_~last~0_238 v_main_~c~0_525))) (or (and (= v_~last~0_238 v_~last~0_238) (= v_~SIZE~0_213 v_~SIZE~0_213) .cse0 .cse1 .cse2) (and (or (not .cse3) (not (< v_main_~c~0_525 v_~SIZE~0_213))) .cse0 .cse1 .cse2) (and (< v_main_~c~0_525 v_main_~c~0_524) (< v_main_~c~0_524 (+ v_~SIZE~0_213 1)) (= v_main_~st~0_275 0) .cse3))) InVars {~SIZE~0=v_~SIZE~0_213, main_~c~0=v_main_~c~0_525, main_#t~post5=|v_main_#t~post5_308|, main_~st~0=v_main_~st~0_276, ~last~0=v_~last~0_238} OutVars{~SIZE~0=v_~SIZE~0_213, main_#t~post5=|v_main_#t~post5_306|, main_~c~0=v_main_~c~0_524, main_~st~0=v_main_~st~0_275, ~last~0=v_~last~0_238} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {40516#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:15,351 INFO L290 TraceCheckUtils]: 14: Hoare triple {40516#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [193] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {40516#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:15,352 INFO L290 TraceCheckUtils]: 15: Hoare triple {40516#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [194] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_527 v_main_~c~0_526))) (or (and (< v_main_~c~0_526 (+ v_~SIZE~0_214 1)) (< v_main_~c~0_526 (+ v_~last~0_239 1)) (< v_main_~c~0_527 v_main_~c~0_526)) (and (= |v_main_#t~post5_311| |v_main_#t~post5_307|) .cse0 (= v_~SIZE~0_214 v_~SIZE~0_214) (= v_~last~0_239 v_~last~0_239)) (and (= |v_main_#t~post5_307| |v_main_#t~post5_311|) .cse0 (or (not (< v_main_~c~0_527 v_~last~0_239)) (not (< v_main_~c~0_527 v_~SIZE~0_214)))))) InVars {~SIZE~0=v_~SIZE~0_214, main_~c~0=v_main_~c~0_527, main_#t~post5=|v_main_#t~post5_311|, ~last~0=v_~last~0_239} OutVars{~SIZE~0=v_~SIZE~0_214, main_#t~post5=|v_main_#t~post5_307|, main_~c~0=v_main_~c~0_526, ~last~0=v_~last~0_239} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {40516#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:15,352 INFO L290 TraceCheckUtils]: 16: Hoare triple {40516#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [191] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {40526#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 03:59:15,353 INFO L290 TraceCheckUtils]: 17: Hoare triple {40526#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {40460#false} is VALID [2022-04-28 03:59:15,353 INFO L290 TraceCheckUtils]: 18: Hoare triple {40460#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {40460#false} is VALID [2022-04-28 03:59:15,353 INFO L290 TraceCheckUtils]: 19: Hoare triple {40460#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {40460#false} is VALID [2022-04-28 03:59:15,353 INFO L290 TraceCheckUtils]: 20: Hoare triple {40460#false} assume !(~d~0 == ~SIZE~0); {40460#false} is VALID [2022-04-28 03:59:15,353 INFO L272 TraceCheckUtils]: 21: Hoare triple {40460#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {40460#false} is VALID [2022-04-28 03:59:15,353 INFO L290 TraceCheckUtils]: 22: Hoare triple {40460#false} ~cond := #in~cond; {40460#false} is VALID [2022-04-28 03:59:15,353 INFO L290 TraceCheckUtils]: 23: Hoare triple {40460#false} assume 0 == ~cond; {40460#false} is VALID [2022-04-28 03:59:15,353 INFO L290 TraceCheckUtils]: 24: Hoare triple {40460#false} assume !false; {40460#false} is VALID [2022-04-28 03:59:15,353 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:59:15,353 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 03:59:15,691 INFO L290 TraceCheckUtils]: 24: Hoare triple {40460#false} assume !false; {40460#false} is VALID [2022-04-28 03:59:15,691 INFO L290 TraceCheckUtils]: 23: Hoare triple {40460#false} assume 0 == ~cond; {40460#false} is VALID [2022-04-28 03:59:15,691 INFO L290 TraceCheckUtils]: 22: Hoare triple {40460#false} ~cond := #in~cond; {40460#false} is VALID [2022-04-28 03:59:15,691 INFO L272 TraceCheckUtils]: 21: Hoare triple {40460#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {40460#false} is VALID [2022-04-28 03:59:15,691 INFO L290 TraceCheckUtils]: 20: Hoare triple {40460#false} assume !(~d~0 == ~SIZE~0); {40460#false} is VALID [2022-04-28 03:59:15,691 INFO L290 TraceCheckUtils]: 19: Hoare triple {40460#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {40460#false} is VALID [2022-04-28 03:59:15,691 INFO L290 TraceCheckUtils]: 18: Hoare triple {40460#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {40460#false} is VALID [2022-04-28 03:59:15,691 INFO L290 TraceCheckUtils]: 17: Hoare triple {40572#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {40460#false} is VALID [2022-04-28 03:59:15,692 INFO L290 TraceCheckUtils]: 16: Hoare triple {40576#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [191] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {40572#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 03:59:15,692 INFO L290 TraceCheckUtils]: 15: Hoare triple {40576#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [194] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_527 v_main_~c~0_526))) (or (and (< v_main_~c~0_526 (+ v_~SIZE~0_214 1)) (< v_main_~c~0_526 (+ v_~last~0_239 1)) (< v_main_~c~0_527 v_main_~c~0_526)) (and (= |v_main_#t~post5_311| |v_main_#t~post5_307|) .cse0 (= v_~SIZE~0_214 v_~SIZE~0_214) (= v_~last~0_239 v_~last~0_239)) (and (= |v_main_#t~post5_307| |v_main_#t~post5_311|) .cse0 (or (not (< v_main_~c~0_527 v_~last~0_239)) (not (< v_main_~c~0_527 v_~SIZE~0_214)))))) InVars {~SIZE~0=v_~SIZE~0_214, main_~c~0=v_main_~c~0_527, main_#t~post5=|v_main_#t~post5_311|, ~last~0=v_~last~0_239} OutVars{~SIZE~0=v_~SIZE~0_214, main_#t~post5=|v_main_#t~post5_307|, main_~c~0=v_main_~c~0_526, ~last~0=v_~last~0_239} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {40576#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:59:15,693 INFO L290 TraceCheckUtils]: 14: Hoare triple {40576#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [193] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {40576#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:59:15,693 INFO L290 TraceCheckUtils]: 13: Hoare triple {40586#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [192] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_525 v_main_~c~0_524)) (.cse1 (= |v_main_#t~post5_308| |v_main_#t~post5_306|)) (.cse2 (= v_main_~st~0_276 v_main_~st~0_275)) (.cse3 (<= v_~last~0_238 v_main_~c~0_525))) (or (and (= v_~last~0_238 v_~last~0_238) (= v_~SIZE~0_213 v_~SIZE~0_213) .cse0 .cse1 .cse2) (and (or (not .cse3) (not (< v_main_~c~0_525 v_~SIZE~0_213))) .cse0 .cse1 .cse2) (and (< v_main_~c~0_525 v_main_~c~0_524) (< v_main_~c~0_524 (+ v_~SIZE~0_213 1)) (= v_main_~st~0_275 0) .cse3))) InVars {~SIZE~0=v_~SIZE~0_213, main_~c~0=v_main_~c~0_525, main_#t~post5=|v_main_#t~post5_308|, main_~st~0=v_main_~st~0_276, ~last~0=v_~last~0_238} OutVars{~SIZE~0=v_~SIZE~0_213, main_#t~post5=|v_main_#t~post5_306|, main_~c~0=v_main_~c~0_524, main_~st~0=v_main_~st~0_275, ~last~0=v_~last~0_238} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {40576#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:59:15,694 INFO L290 TraceCheckUtils]: 12: Hoare triple {40590#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {40586#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 03:59:15,694 INFO L290 TraceCheckUtils]: 11: Hoare triple {40590#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {40590#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:15,694 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {40459#true} {40590#(< 1 ~SIZE~0)} #86#return; {40590#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:15,695 INFO L290 TraceCheckUtils]: 9: Hoare triple {40459#true} assume true; {40459#true} is VALID [2022-04-28 03:59:15,695 INFO L290 TraceCheckUtils]: 8: Hoare triple {40459#true} assume !(0 == ~cond); {40459#true} is VALID [2022-04-28 03:59:15,695 INFO L290 TraceCheckUtils]: 7: Hoare triple {40459#true} ~cond := #in~cond; {40459#true} is VALID [2022-04-28 03:59:15,695 INFO L272 TraceCheckUtils]: 6: Hoare triple {40590#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {40459#true} is VALID [2022-04-28 03:59:15,695 INFO L290 TraceCheckUtils]: 5: Hoare triple {40590#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {40590#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:15,695 INFO L272 TraceCheckUtils]: 4: Hoare triple {40590#(< 1 ~SIZE~0)} call #t~ret7 := main(); {40590#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:15,696 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40590#(< 1 ~SIZE~0)} {40459#true} #90#return; {40590#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:15,696 INFO L290 TraceCheckUtils]: 2: Hoare triple {40590#(< 1 ~SIZE~0)} assume true; {40590#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:15,696 INFO L290 TraceCheckUtils]: 1: Hoare triple {40459#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {40590#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:15,696 INFO L272 TraceCheckUtils]: 0: Hoare triple {40459#true} call ULTIMATE.init(); {40459#true} is VALID [2022-04-28 03:59:15,697 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:59:15,697 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [864345972] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 03:59:15,697 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 03:59:15,697 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 03:59:16,169 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:59:16,169 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [709310267] [2022-04-28 03:59:16,169 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [709310267] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:59:16,169 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:59:16,169 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [21] imperfect sequences [] total 21 [2022-04-28 03:59:16,170 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [841768209] [2022-04-28 03:59:16,170 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:59:16,170 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 21 states have (on average 1.7619047619047619) internal successors, (37), 20 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 43 [2022-04-28 03:59:16,170 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:59:16,170 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 21 states, 21 states have (on average 1.7619047619047619) internal successors, (37), 20 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:59:16,203 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:59:16,203 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2022-04-28 03:59:16,203 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:59:16,204 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2022-04-28 03:59:16,204 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=209, Invalid=661, Unknown=0, NotChecked=0, Total=870 [2022-04-28 03:59:16,204 INFO L87 Difference]: Start difference. First operand 229 states and 279 transitions. Second operand has 21 states, 21 states have (on average 1.7619047619047619) internal successors, (37), 20 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:59:18,586 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:59:18,586 INFO L93 Difference]: Finished difference Result 448 states and 554 transitions. [2022-04-28 03:59:18,586 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2022-04-28 03:59:18,586 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 21 states have (on average 1.7619047619047619) internal successors, (37), 20 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 43 [2022-04-28 03:59:18,586 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:59:18,587 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 21 states have (on average 1.7619047619047619) internal successors, (37), 20 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:59:18,587 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 98 transitions. [2022-04-28 03:59:18,591 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 21 states have (on average 1.7619047619047619) internal successors, (37), 20 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:59:18,592 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 98 transitions. [2022-04-28 03:59:18,592 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 21 states and 98 transitions. [2022-04-28 03:59:18,657 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 98 edges. 98 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:59:18,660 INFO L225 Difference]: With dead ends: 448 [2022-04-28 03:59:18,660 INFO L226 Difference]: Without dead ends: 266 [2022-04-28 03:59:18,661 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 91 GetRequests, 54 SyntacticMatches, 6 SemanticMatches, 31 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 496 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=248, Invalid=808, Unknown=0, NotChecked=0, Total=1056 [2022-04-28 03:59:18,661 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 60 mSDsluCounter, 29 mSDsCounter, 0 mSdLazyCounter, 938 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 61 SdHoareTripleChecker+Valid, 53 SdHoareTripleChecker+Invalid, 957 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 938 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-28 03:59:18,661 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [61 Valid, 53 Invalid, 957 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 938 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-28 03:59:18,662 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 266 states. [2022-04-28 03:59:19,575 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 266 to 241. [2022-04-28 03:59:19,575 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:59:19,576 INFO L82 GeneralOperation]: Start isEquivalent. First operand 266 states. Second operand has 241 states, 226 states have (on average 1.2300884955752212) internal successors, (278), 229 states have internal predecessors, (278), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:59:19,576 INFO L74 IsIncluded]: Start isIncluded. First operand 266 states. Second operand has 241 states, 226 states have (on average 1.2300884955752212) internal successors, (278), 229 states have internal predecessors, (278), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:59:19,576 INFO L87 Difference]: Start difference. First operand 266 states. Second operand has 241 states, 226 states have (on average 1.2300884955752212) internal successors, (278), 229 states have internal predecessors, (278), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:59:19,579 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:59:19,579 INFO L93 Difference]: Finished difference Result 266 states and 324 transitions. [2022-04-28 03:59:19,579 INFO L276 IsEmpty]: Start isEmpty. Operand 266 states and 324 transitions. [2022-04-28 03:59:19,580 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:59:19,580 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:59:19,580 INFO L74 IsIncluded]: Start isIncluded. First operand has 241 states, 226 states have (on average 1.2300884955752212) internal successors, (278), 229 states have internal predecessors, (278), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 266 states. [2022-04-28 03:59:19,580 INFO L87 Difference]: Start difference. First operand has 241 states, 226 states have (on average 1.2300884955752212) internal successors, (278), 229 states have internal predecessors, (278), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 266 states. [2022-04-28 03:59:19,583 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:59:19,583 INFO L93 Difference]: Finished difference Result 266 states and 324 transitions. [2022-04-28 03:59:19,583 INFO L276 IsEmpty]: Start isEmpty. Operand 266 states and 324 transitions. [2022-04-28 03:59:19,583 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:59:19,583 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:59:19,583 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:59:19,584 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:59:19,584 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 241 states, 226 states have (on average 1.2300884955752212) internal successors, (278), 229 states have internal predecessors, (278), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:59:19,587 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 241 states to 241 states and 295 transitions. [2022-04-28 03:59:19,587 INFO L78 Accepts]: Start accepts. Automaton has 241 states and 295 transitions. Word has length 43 [2022-04-28 03:59:19,588 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:59:19,588 INFO L495 AbstractCegarLoop]: Abstraction has 241 states and 295 transitions. [2022-04-28 03:59:19,588 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 21 states have (on average 1.7619047619047619) internal successors, (37), 20 states have internal predecessors, (37), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:59:19,588 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 241 states and 295 transitions. [2022-04-28 03:59:20,114 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 295 edges. 295 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:59:20,114 INFO L276 IsEmpty]: Start isEmpty. Operand 241 states and 295 transitions. [2022-04-28 03:59:20,114 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 46 [2022-04-28 03:59:20,114 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:59:20,114 INFO L195 NwaCegarLoop]: trace histogram [4, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:59:20,133 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Forceful destruction successful, exit code 0 [2022-04-28 03:59:20,327 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable30,23 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:59:20,327 INFO L420 AbstractCegarLoop]: === Iteration 32 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:59:20,328 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:59:20,328 INFO L85 PathProgramCache]: Analyzing trace with hash -2117823645, now seen corresponding path program 2 times [2022-04-28 03:59:20,328 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:59:20,328 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [921377190] [2022-04-28 03:59:20,491 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 4 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {-1={1=1}, 0={1=2}, 1={1=1, 2=1}}, 0 SequentialAcceleration, 1 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:59:20,680 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 4 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {-1={1=1}, 0={1=2}, 1={1=1, 2=1}}, 0 SequentialAcceleration, 1 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:59:20,681 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:59:20,682 INFO L85 PathProgramCache]: Analyzing trace with hash 115334313, now seen corresponding path program 1 times [2022-04-28 03:59:20,682 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:59:20,682 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [280939562] [2022-04-28 03:59:20,682 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:59:20,682 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:59:20,690 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:59:20,732 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:59:20,734 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:59:20,738 INFO L290 TraceCheckUtils]: 0: Hoare triple {42575#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {42567#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:20,738 INFO L290 TraceCheckUtils]: 1: Hoare triple {42567#(<= 200000 ~SIZE~0)} assume true; {42567#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:20,739 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {42567#(<= 200000 ~SIZE~0)} {42562#true} #90#return; {42567#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:20,739 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:59:20,740 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:59:20,743 INFO L290 TraceCheckUtils]: 0: Hoare triple {42562#true} ~cond := #in~cond; {42562#true} is VALID [2022-04-28 03:59:20,743 INFO L290 TraceCheckUtils]: 1: Hoare triple {42562#true} assume !(0 == ~cond); {42562#true} is VALID [2022-04-28 03:59:20,743 INFO L290 TraceCheckUtils]: 2: Hoare triple {42562#true} assume true; {42562#true} is VALID [2022-04-28 03:59:20,744 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42562#true} {42567#(<= 200000 ~SIZE~0)} #86#return; {42567#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:20,744 INFO L272 TraceCheckUtils]: 0: Hoare triple {42562#true} call ULTIMATE.init(); {42575#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:59:20,745 INFO L290 TraceCheckUtils]: 1: Hoare triple {42575#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {42567#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:20,745 INFO L290 TraceCheckUtils]: 2: Hoare triple {42567#(<= 200000 ~SIZE~0)} assume true; {42567#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:20,746 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42567#(<= 200000 ~SIZE~0)} {42562#true} #90#return; {42567#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:20,746 INFO L272 TraceCheckUtils]: 4: Hoare triple {42567#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {42567#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:20,746 INFO L290 TraceCheckUtils]: 5: Hoare triple {42567#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {42567#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:20,747 INFO L272 TraceCheckUtils]: 6: Hoare triple {42567#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {42562#true} is VALID [2022-04-28 03:59:20,747 INFO L290 TraceCheckUtils]: 7: Hoare triple {42562#true} ~cond := #in~cond; {42562#true} is VALID [2022-04-28 03:59:20,747 INFO L290 TraceCheckUtils]: 8: Hoare triple {42562#true} assume !(0 == ~cond); {42562#true} is VALID [2022-04-28 03:59:20,747 INFO L290 TraceCheckUtils]: 9: Hoare triple {42562#true} assume true; {42562#true} is VALID [2022-04-28 03:59:20,747 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {42562#true} {42567#(<= 200000 ~SIZE~0)} #86#return; {42567#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:20,748 INFO L290 TraceCheckUtils]: 11: Hoare triple {42567#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {42567#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:20,748 INFO L290 TraceCheckUtils]: 12: Hoare triple {42567#(<= 200000 ~SIZE~0)} [196] L44-->L27-3_primed: Formula: (let ((.cse0 (= v_main_~c~0_553 v_main_~c~0_550)) (.cse1 (= v_main_~b~0_86 v_main_~b~0_85)) (.cse2 (= v_main_~st~0_288 v_main_~st~0_285))) (or (and .cse0 .cse1 (= |v_main_#t~post5_321| |v_main_#t~post5_319|) (= v_main_~a~0_90 v_main_~a~0_89) .cse2) (and .cse0 .cse1 (= |v_main_#t~post5_319| |v_main_#t~post5_321|) (= v_main_~a~0_89 v_main_~a~0_90) .cse2))) InVars {main_~c~0=v_main_~c~0_553, main_#t~post5=|v_main_#t~post5_321|, main_~st~0=v_main_~st~0_288, main_~b~0=v_main_~b~0_86, main_~a~0=v_main_~a~0_90} OutVars{main_~c~0=v_main_~c~0_550, main_#t~post5=|v_main_#t~post5_319|, main_~st~0=v_main_~st~0_285, main_~b~0=v_main_~b~0_85, main_~a~0=v_main_~a~0_89} AuxVars[] AssignedVars[main_~c~0, main_#t~post5, main_~st~0, main_~b~0, main_~a~0] {42567#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:20,748 INFO L290 TraceCheckUtils]: 13: Hoare triple {42567#(<= 200000 ~SIZE~0)} [197] L27-3_primed-->L44: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42567#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:20,749 INFO L290 TraceCheckUtils]: 14: Hoare triple {42567#(<= 200000 ~SIZE~0)} [198] L44-->L27-3_primed: Formula: (let ((.cse11 (= v_~SIZE~0_223 v_main_~d~0_29))) (let ((.cse0 (= v_~SIZE~0_223 v_main_~c~0_550)) (.cse3 (= v_main_~st~0_285 0)) (.cse5 (not .cse11)) (.cse6 (= v_main_~a~0_90 v_main_~b~0_86)) (.cse4 (= 2 v_~SIZE~0_223)) (.cse2 (<= v_~last~0_248 0)) (.cse8 (= v_main_~b~0_86 v_main_~b~0_85)) (.cse9 (= v_main_~c~0_554 v_main_~c~0_550)) (.cse10 (= v_main_~st~0_289 v_main_~st~0_285))) (or (let ((.cse1 (div (+ (- 2) (* (- 1) v_main_~a~0_90) v_main_~a~0_89) 4))) (and .cse0 (<= 0 .cse1) .cse2 .cse3 (= (+ 2 (* 4 .cse1) v_main_~b~0_86) v_main_~b~0_85) .cse4 .cse5 .cse6 (= (mod (+ (* 3 v_main_~a~0_90) 2 v_main_~a~0_89) 4) 0))) (let ((.cse7 (div (+ (* (- 1) v_main_~b~0_86) v_main_~b~0_85) 4))) (and .cse0 .cse2 .cse3 (< 0 .cse7) .cse4 (= (mod (+ (* 3 v_main_~b~0_86) v_main_~b~0_85) 4) 0) .cse5 .cse6 (= (+ (* .cse7 4) v_main_~a~0_90) v_main_~a~0_89))) (and (= |v_main_#t~post5_322| |v_main_#t~post5_319|) .cse8 (= v_main_~d~0_29 v_main_~d~0_29) (= v_main_~a~0_90 v_main_~a~0_89) (= v_~SIZE~0_223 v_~SIZE~0_223) .cse9 .cse10 (= v_~last~0_248 v_~last~0_248)) (and (or .cse11 (not .cse6) (not .cse4) (not .cse2)) .cse8 (= |v_main_#t~post5_319| |v_main_#t~post5_322|) .cse9 (= v_main_~a~0_89 v_main_~a~0_90) .cse10)))) InVars {~SIZE~0=v_~SIZE~0_223, main_~c~0=v_main_~c~0_554, main_#t~post5=|v_main_#t~post5_322|, main_~d~0=v_main_~d~0_29, main_~st~0=v_main_~st~0_289, main_~b~0=v_main_~b~0_86, ~last~0=v_~last~0_248, main_~a~0=v_main_~a~0_90} OutVars{~SIZE~0=v_~SIZE~0_223, main_~c~0=v_main_~c~0_550, main_#t~post5=|v_main_#t~post5_319|, main_~d~0=v_main_~d~0_29, main_~st~0=v_main_~st~0_285, main_~b~0=v_main_~b~0_85, ~last~0=v_~last~0_248, main_~a~0=v_main_~a~0_89} AuxVars[] AssignedVars[main_~c~0, main_#t~post5, main_~st~0, main_~b~0, main_~a~0] {42567#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:20,749 INFO L290 TraceCheckUtils]: 15: Hoare triple {42567#(<= 200000 ~SIZE~0)} [195] L27-3_primed-->L27-3: Formula: (and (= 0 v_main_~c~0_10) (= v_main_~st~0_7 1)) InVars {} OutVars{main_~c~0=v_main_~c~0_10, main_~st~0=v_main_~st~0_7} AuxVars[] AssignedVars[main_~c~0, main_~st~0] {42572#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:20,750 INFO L290 TraceCheckUtils]: 16: Hoare triple {42572#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} assume !!(~c~0 < ~SIZE~0); {42572#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:20,750 INFO L290 TraceCheckUtils]: 17: Hoare triple {42572#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} assume ~c~0 >= ~last~0;~st~0 := 0; {42572#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:20,750 INFO L290 TraceCheckUtils]: 18: Hoare triple {42572#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} #t~post5 := ~c~0;~c~0 := 1 + #t~post5;havoc #t~post5; {42573#(<= (+ main_~c~0 199999) ~SIZE~0)} is VALID [2022-04-28 03:59:20,751 INFO L290 TraceCheckUtils]: 19: Hoare triple {42573#(<= (+ main_~c~0 199999) ~SIZE~0)} assume !!(~c~0 < ~SIZE~0); {42573#(<= (+ main_~c~0 199999) ~SIZE~0)} is VALID [2022-04-28 03:59:20,751 INFO L290 TraceCheckUtils]: 20: Hoare triple {42573#(<= (+ main_~c~0 199999) ~SIZE~0)} assume ~c~0 >= ~last~0;~st~0 := 0; {42573#(<= (+ main_~c~0 199999) ~SIZE~0)} is VALID [2022-04-28 03:59:20,751 INFO L290 TraceCheckUtils]: 21: Hoare triple {42573#(<= (+ main_~c~0 199999) ~SIZE~0)} #t~post5 := ~c~0;~c~0 := 1 + #t~post5;havoc #t~post5; {42574#(<= (+ main_~c~0 199998) ~SIZE~0)} is VALID [2022-04-28 03:59:20,752 INFO L290 TraceCheckUtils]: 22: Hoare triple {42574#(<= (+ main_~c~0 199998) ~SIZE~0)} assume !(~c~0 < ~SIZE~0); {42563#false} is VALID [2022-04-28 03:59:20,752 INFO L290 TraceCheckUtils]: 23: Hoare triple {42563#false} assume !(0 == ~st~0 && ~c~0 == 1 + ~last~0);~a~0 := 2 + ~a~0;~b~0 := 2 + ~b~0; {42563#false} is VALID [2022-04-28 03:59:20,752 INFO L290 TraceCheckUtils]: 24: Hoare triple {42563#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {42563#false} is VALID [2022-04-28 03:59:20,752 INFO L290 TraceCheckUtils]: 25: Hoare triple {42563#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {42563#false} is VALID [2022-04-28 03:59:20,752 INFO L290 TraceCheckUtils]: 26: Hoare triple {42563#false} assume !(~d~0 == ~SIZE~0); {42563#false} is VALID [2022-04-28 03:59:20,752 INFO L272 TraceCheckUtils]: 27: Hoare triple {42563#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {42563#false} is VALID [2022-04-28 03:59:20,752 INFO L290 TraceCheckUtils]: 28: Hoare triple {42563#false} ~cond := #in~cond; {42563#false} is VALID [2022-04-28 03:59:20,753 INFO L290 TraceCheckUtils]: 29: Hoare triple {42563#false} assume 0 == ~cond; {42563#false} is VALID [2022-04-28 03:59:20,753 INFO L290 TraceCheckUtils]: 30: Hoare triple {42563#false} assume !false; {42563#false} is VALID [2022-04-28 03:59:20,753 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 0 proven. 5 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-28 03:59:20,753 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:59:20,753 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [280939562] [2022-04-28 03:59:20,753 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [280939562] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 03:59:20,753 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1997718869] [2022-04-28 03:59:20,753 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:59:20,754 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:59:20,754 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 03:59:20,768 INFO L229 MonitoredProcess]: Starting monitored process 24 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 03:59:20,780 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Waiting until timeout for monitored process [2022-04-28 03:59:20,803 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:59:20,803 INFO L263 TraceCheckSpWp]: Trace formula consists of 113 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-28 03:59:20,809 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:59:20,810 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 03:59:20,962 INFO L272 TraceCheckUtils]: 0: Hoare triple {42562#true} call ULTIMATE.init(); {42562#true} is VALID [2022-04-28 03:59:20,963 INFO L290 TraceCheckUtils]: 1: Hoare triple {42562#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {42567#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:20,963 INFO L290 TraceCheckUtils]: 2: Hoare triple {42567#(<= 200000 ~SIZE~0)} assume true; {42567#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:20,963 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42567#(<= 200000 ~SIZE~0)} {42562#true} #90#return; {42567#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:20,964 INFO L272 TraceCheckUtils]: 4: Hoare triple {42567#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {42567#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:20,964 INFO L290 TraceCheckUtils]: 5: Hoare triple {42567#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {42567#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:20,964 INFO L272 TraceCheckUtils]: 6: Hoare triple {42567#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {42567#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:20,964 INFO L290 TraceCheckUtils]: 7: Hoare triple {42567#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {42567#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:20,965 INFO L290 TraceCheckUtils]: 8: Hoare triple {42567#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {42567#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:20,965 INFO L290 TraceCheckUtils]: 9: Hoare triple {42567#(<= 200000 ~SIZE~0)} assume true; {42567#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:20,965 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {42567#(<= 200000 ~SIZE~0)} {42567#(<= 200000 ~SIZE~0)} #86#return; {42567#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:20,966 INFO L290 TraceCheckUtils]: 11: Hoare triple {42567#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {42567#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:20,966 INFO L290 TraceCheckUtils]: 12: Hoare triple {42567#(<= 200000 ~SIZE~0)} [196] L44-->L27-3_primed: Formula: (let ((.cse0 (= v_main_~c~0_553 v_main_~c~0_550)) (.cse1 (= v_main_~b~0_86 v_main_~b~0_85)) (.cse2 (= v_main_~st~0_288 v_main_~st~0_285))) (or (and .cse0 .cse1 (= |v_main_#t~post5_321| |v_main_#t~post5_319|) (= v_main_~a~0_90 v_main_~a~0_89) .cse2) (and .cse0 .cse1 (= |v_main_#t~post5_319| |v_main_#t~post5_321|) (= v_main_~a~0_89 v_main_~a~0_90) .cse2))) InVars {main_~c~0=v_main_~c~0_553, main_#t~post5=|v_main_#t~post5_321|, main_~st~0=v_main_~st~0_288, main_~b~0=v_main_~b~0_86, main_~a~0=v_main_~a~0_90} OutVars{main_~c~0=v_main_~c~0_550, main_#t~post5=|v_main_#t~post5_319|, main_~st~0=v_main_~st~0_285, main_~b~0=v_main_~b~0_85, main_~a~0=v_main_~a~0_89} AuxVars[] AssignedVars[main_~c~0, main_#t~post5, main_~st~0, main_~b~0, main_~a~0] {42567#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:20,966 INFO L290 TraceCheckUtils]: 13: Hoare triple {42567#(<= 200000 ~SIZE~0)} [197] L27-3_primed-->L44: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42567#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:20,967 INFO L290 TraceCheckUtils]: 14: Hoare triple {42567#(<= 200000 ~SIZE~0)} [198] L44-->L27-3_primed: Formula: (let ((.cse11 (= v_~SIZE~0_223 v_main_~d~0_29))) (let ((.cse0 (= v_~SIZE~0_223 v_main_~c~0_550)) (.cse3 (= v_main_~st~0_285 0)) (.cse5 (not .cse11)) (.cse6 (= v_main_~a~0_90 v_main_~b~0_86)) (.cse4 (= 2 v_~SIZE~0_223)) (.cse2 (<= v_~last~0_248 0)) (.cse8 (= v_main_~b~0_86 v_main_~b~0_85)) (.cse9 (= v_main_~c~0_554 v_main_~c~0_550)) (.cse10 (= v_main_~st~0_289 v_main_~st~0_285))) (or (let ((.cse1 (div (+ (- 2) (* (- 1) v_main_~a~0_90) v_main_~a~0_89) 4))) (and .cse0 (<= 0 .cse1) .cse2 .cse3 (= (+ 2 (* 4 .cse1) v_main_~b~0_86) v_main_~b~0_85) .cse4 .cse5 .cse6 (= (mod (+ (* 3 v_main_~a~0_90) 2 v_main_~a~0_89) 4) 0))) (let ((.cse7 (div (+ (* (- 1) v_main_~b~0_86) v_main_~b~0_85) 4))) (and .cse0 .cse2 .cse3 (< 0 .cse7) .cse4 (= (mod (+ (* 3 v_main_~b~0_86) v_main_~b~0_85) 4) 0) .cse5 .cse6 (= (+ (* .cse7 4) v_main_~a~0_90) v_main_~a~0_89))) (and (= |v_main_#t~post5_322| |v_main_#t~post5_319|) .cse8 (= v_main_~d~0_29 v_main_~d~0_29) (= v_main_~a~0_90 v_main_~a~0_89) (= v_~SIZE~0_223 v_~SIZE~0_223) .cse9 .cse10 (= v_~last~0_248 v_~last~0_248)) (and (or .cse11 (not .cse6) (not .cse4) (not .cse2)) .cse8 (= |v_main_#t~post5_319| |v_main_#t~post5_322|) .cse9 (= v_main_~a~0_89 v_main_~a~0_90) .cse10)))) InVars {~SIZE~0=v_~SIZE~0_223, main_~c~0=v_main_~c~0_554, main_#t~post5=|v_main_#t~post5_322|, main_~d~0=v_main_~d~0_29, main_~st~0=v_main_~st~0_289, main_~b~0=v_main_~b~0_86, ~last~0=v_~last~0_248, main_~a~0=v_main_~a~0_90} OutVars{~SIZE~0=v_~SIZE~0_223, main_~c~0=v_main_~c~0_550, main_#t~post5=|v_main_#t~post5_319|, main_~d~0=v_main_~d~0_29, main_~st~0=v_main_~st~0_285, main_~b~0=v_main_~b~0_85, ~last~0=v_~last~0_248, main_~a~0=v_main_~a~0_89} AuxVars[] AssignedVars[main_~c~0, main_#t~post5, main_~st~0, main_~b~0, main_~a~0] {42567#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:20,967 INFO L290 TraceCheckUtils]: 15: Hoare triple {42567#(<= 200000 ~SIZE~0)} [195] L27-3_primed-->L27-3: Formula: (and (= 0 v_main_~c~0_10) (= v_main_~st~0_7 1)) InVars {} OutVars{main_~c~0=v_main_~c~0_10, main_~st~0=v_main_~st~0_7} AuxVars[] AssignedVars[main_~c~0, main_~st~0] {42624#(and (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:20,967 INFO L290 TraceCheckUtils]: 16: Hoare triple {42624#(and (<= main_~c~0 0) (<= 200000 ~SIZE~0))} assume !!(~c~0 < ~SIZE~0); {42624#(and (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:20,968 INFO L290 TraceCheckUtils]: 17: Hoare triple {42624#(and (<= main_~c~0 0) (<= 200000 ~SIZE~0))} assume ~c~0 >= ~last~0;~st~0 := 0; {42624#(and (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:20,968 INFO L290 TraceCheckUtils]: 18: Hoare triple {42624#(and (<= main_~c~0 0) (<= 200000 ~SIZE~0))} #t~post5 := ~c~0;~c~0 := 1 + #t~post5;havoc #t~post5; {42634#(and (<= 200000 ~SIZE~0) (<= main_~c~0 1))} is VALID [2022-04-28 03:59:20,969 INFO L290 TraceCheckUtils]: 19: Hoare triple {42634#(and (<= 200000 ~SIZE~0) (<= main_~c~0 1))} assume !!(~c~0 < ~SIZE~0); {42634#(and (<= 200000 ~SIZE~0) (<= main_~c~0 1))} is VALID [2022-04-28 03:59:20,969 INFO L290 TraceCheckUtils]: 20: Hoare triple {42634#(and (<= 200000 ~SIZE~0) (<= main_~c~0 1))} assume ~c~0 >= ~last~0;~st~0 := 0; {42634#(and (<= 200000 ~SIZE~0) (<= main_~c~0 1))} is VALID [2022-04-28 03:59:20,969 INFO L290 TraceCheckUtils]: 21: Hoare triple {42634#(and (<= 200000 ~SIZE~0) (<= main_~c~0 1))} #t~post5 := ~c~0;~c~0 := 1 + #t~post5;havoc #t~post5; {42644#(and (<= main_~c~0 2) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:20,970 INFO L290 TraceCheckUtils]: 22: Hoare triple {42644#(and (<= main_~c~0 2) (<= 200000 ~SIZE~0))} assume !(~c~0 < ~SIZE~0); {42563#false} is VALID [2022-04-28 03:59:20,970 INFO L290 TraceCheckUtils]: 23: Hoare triple {42563#false} assume !(0 == ~st~0 && ~c~0 == 1 + ~last~0);~a~0 := 2 + ~a~0;~b~0 := 2 + ~b~0; {42563#false} is VALID [2022-04-28 03:59:20,970 INFO L290 TraceCheckUtils]: 24: Hoare triple {42563#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {42563#false} is VALID [2022-04-28 03:59:20,970 INFO L290 TraceCheckUtils]: 25: Hoare triple {42563#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {42563#false} is VALID [2022-04-28 03:59:20,970 INFO L290 TraceCheckUtils]: 26: Hoare triple {42563#false} assume !(~d~0 == ~SIZE~0); {42563#false} is VALID [2022-04-28 03:59:20,970 INFO L272 TraceCheckUtils]: 27: Hoare triple {42563#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {42563#false} is VALID [2022-04-28 03:59:20,970 INFO L290 TraceCheckUtils]: 28: Hoare triple {42563#false} ~cond := #in~cond; {42563#false} is VALID [2022-04-28 03:59:20,970 INFO L290 TraceCheckUtils]: 29: Hoare triple {42563#false} assume 0 == ~cond; {42563#false} is VALID [2022-04-28 03:59:20,970 INFO L290 TraceCheckUtils]: 30: Hoare triple {42563#false} assume !false; {42563#false} is VALID [2022-04-28 03:59:20,970 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 0 proven. 5 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-28 03:59:20,970 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 03:59:21,097 INFO L290 TraceCheckUtils]: 30: Hoare triple {42563#false} assume !false; {42563#false} is VALID [2022-04-28 03:59:21,098 INFO L290 TraceCheckUtils]: 29: Hoare triple {42563#false} assume 0 == ~cond; {42563#false} is VALID [2022-04-28 03:59:21,098 INFO L290 TraceCheckUtils]: 28: Hoare triple {42563#false} ~cond := #in~cond; {42563#false} is VALID [2022-04-28 03:59:21,098 INFO L272 TraceCheckUtils]: 27: Hoare triple {42563#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {42563#false} is VALID [2022-04-28 03:59:21,098 INFO L290 TraceCheckUtils]: 26: Hoare triple {42563#false} assume !(~d~0 == ~SIZE~0); {42563#false} is VALID [2022-04-28 03:59:21,098 INFO L290 TraceCheckUtils]: 25: Hoare triple {42563#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {42563#false} is VALID [2022-04-28 03:59:21,098 INFO L290 TraceCheckUtils]: 24: Hoare triple {42563#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {42563#false} is VALID [2022-04-28 03:59:21,098 INFO L290 TraceCheckUtils]: 23: Hoare triple {42563#false} assume !(0 == ~st~0 && ~c~0 == 1 + ~last~0);~a~0 := 2 + ~a~0;~b~0 := 2 + ~b~0; {42563#false} is VALID [2022-04-28 03:59:21,098 INFO L290 TraceCheckUtils]: 22: Hoare triple {42696#(< main_~c~0 ~SIZE~0)} assume !(~c~0 < ~SIZE~0); {42563#false} is VALID [2022-04-28 03:59:21,099 INFO L290 TraceCheckUtils]: 21: Hoare triple {42700#(< (+ main_~c~0 1) ~SIZE~0)} #t~post5 := ~c~0;~c~0 := 1 + #t~post5;havoc #t~post5; {42696#(< main_~c~0 ~SIZE~0)} is VALID [2022-04-28 03:59:21,099 INFO L290 TraceCheckUtils]: 20: Hoare triple {42700#(< (+ main_~c~0 1) ~SIZE~0)} assume ~c~0 >= ~last~0;~st~0 := 0; {42700#(< (+ main_~c~0 1) ~SIZE~0)} is VALID [2022-04-28 03:59:21,099 INFO L290 TraceCheckUtils]: 19: Hoare triple {42700#(< (+ main_~c~0 1) ~SIZE~0)} assume !!(~c~0 < ~SIZE~0); {42700#(< (+ main_~c~0 1) ~SIZE~0)} is VALID [2022-04-28 03:59:21,100 INFO L290 TraceCheckUtils]: 18: Hoare triple {42710#(< (+ main_~c~0 2) ~SIZE~0)} #t~post5 := ~c~0;~c~0 := 1 + #t~post5;havoc #t~post5; {42700#(< (+ main_~c~0 1) ~SIZE~0)} is VALID [2022-04-28 03:59:21,100 INFO L290 TraceCheckUtils]: 17: Hoare triple {42710#(< (+ main_~c~0 2) ~SIZE~0)} assume ~c~0 >= ~last~0;~st~0 := 0; {42710#(< (+ main_~c~0 2) ~SIZE~0)} is VALID [2022-04-28 03:59:21,100 INFO L290 TraceCheckUtils]: 16: Hoare triple {42710#(< (+ main_~c~0 2) ~SIZE~0)} assume !!(~c~0 < ~SIZE~0); {42710#(< (+ main_~c~0 2) ~SIZE~0)} is VALID [2022-04-28 03:59:21,101 INFO L290 TraceCheckUtils]: 15: Hoare triple {42720#(< 2 ~SIZE~0)} [195] L27-3_primed-->L27-3: Formula: (and (= 0 v_main_~c~0_10) (= v_main_~st~0_7 1)) InVars {} OutVars{main_~c~0=v_main_~c~0_10, main_~st~0=v_main_~st~0_7} AuxVars[] AssignedVars[main_~c~0, main_~st~0] {42710#(< (+ main_~c~0 2) ~SIZE~0)} is VALID [2022-04-28 03:59:21,101 INFO L290 TraceCheckUtils]: 14: Hoare triple {42720#(< 2 ~SIZE~0)} [198] L44-->L27-3_primed: Formula: (let ((.cse11 (= v_~SIZE~0_223 v_main_~d~0_29))) (let ((.cse0 (= v_~SIZE~0_223 v_main_~c~0_550)) (.cse3 (= v_main_~st~0_285 0)) (.cse5 (not .cse11)) (.cse6 (= v_main_~a~0_90 v_main_~b~0_86)) (.cse4 (= 2 v_~SIZE~0_223)) (.cse2 (<= v_~last~0_248 0)) (.cse8 (= v_main_~b~0_86 v_main_~b~0_85)) (.cse9 (= v_main_~c~0_554 v_main_~c~0_550)) (.cse10 (= v_main_~st~0_289 v_main_~st~0_285))) (or (let ((.cse1 (div (+ (- 2) (* (- 1) v_main_~a~0_90) v_main_~a~0_89) 4))) (and .cse0 (<= 0 .cse1) .cse2 .cse3 (= (+ 2 (* 4 .cse1) v_main_~b~0_86) v_main_~b~0_85) .cse4 .cse5 .cse6 (= (mod (+ (* 3 v_main_~a~0_90) 2 v_main_~a~0_89) 4) 0))) (let ((.cse7 (div (+ (* (- 1) v_main_~b~0_86) v_main_~b~0_85) 4))) (and .cse0 .cse2 .cse3 (< 0 .cse7) .cse4 (= (mod (+ (* 3 v_main_~b~0_86) v_main_~b~0_85) 4) 0) .cse5 .cse6 (= (+ (* .cse7 4) v_main_~a~0_90) v_main_~a~0_89))) (and (= |v_main_#t~post5_322| |v_main_#t~post5_319|) .cse8 (= v_main_~d~0_29 v_main_~d~0_29) (= v_main_~a~0_90 v_main_~a~0_89) (= v_~SIZE~0_223 v_~SIZE~0_223) .cse9 .cse10 (= v_~last~0_248 v_~last~0_248)) (and (or .cse11 (not .cse6) (not .cse4) (not .cse2)) .cse8 (= |v_main_#t~post5_319| |v_main_#t~post5_322|) .cse9 (= v_main_~a~0_89 v_main_~a~0_90) .cse10)))) InVars {~SIZE~0=v_~SIZE~0_223, main_~c~0=v_main_~c~0_554, main_#t~post5=|v_main_#t~post5_322|, main_~d~0=v_main_~d~0_29, main_~st~0=v_main_~st~0_289, main_~b~0=v_main_~b~0_86, ~last~0=v_~last~0_248, main_~a~0=v_main_~a~0_90} OutVars{~SIZE~0=v_~SIZE~0_223, main_~c~0=v_main_~c~0_550, main_#t~post5=|v_main_#t~post5_319|, main_~d~0=v_main_~d~0_29, main_~st~0=v_main_~st~0_285, main_~b~0=v_main_~b~0_85, ~last~0=v_~last~0_248, main_~a~0=v_main_~a~0_89} AuxVars[] AssignedVars[main_~c~0, main_#t~post5, main_~st~0, main_~b~0, main_~a~0] {42720#(< 2 ~SIZE~0)} is VALID [2022-04-28 03:59:21,101 INFO L290 TraceCheckUtils]: 13: Hoare triple {42720#(< 2 ~SIZE~0)} [197] L27-3_primed-->L44: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {42720#(< 2 ~SIZE~0)} is VALID [2022-04-28 03:59:21,102 INFO L290 TraceCheckUtils]: 12: Hoare triple {42720#(< 2 ~SIZE~0)} [196] L44-->L27-3_primed: Formula: (let ((.cse0 (= v_main_~c~0_553 v_main_~c~0_550)) (.cse1 (= v_main_~b~0_86 v_main_~b~0_85)) (.cse2 (= v_main_~st~0_288 v_main_~st~0_285))) (or (and .cse0 .cse1 (= |v_main_#t~post5_321| |v_main_#t~post5_319|) (= v_main_~a~0_90 v_main_~a~0_89) .cse2) (and .cse0 .cse1 (= |v_main_#t~post5_319| |v_main_#t~post5_321|) (= v_main_~a~0_89 v_main_~a~0_90) .cse2))) InVars {main_~c~0=v_main_~c~0_553, main_#t~post5=|v_main_#t~post5_321|, main_~st~0=v_main_~st~0_288, main_~b~0=v_main_~b~0_86, main_~a~0=v_main_~a~0_90} OutVars{main_~c~0=v_main_~c~0_550, main_#t~post5=|v_main_#t~post5_319|, main_~st~0=v_main_~st~0_285, main_~b~0=v_main_~b~0_85, main_~a~0=v_main_~a~0_89} AuxVars[] AssignedVars[main_~c~0, main_#t~post5, main_~st~0, main_~b~0, main_~a~0] {42720#(< 2 ~SIZE~0)} is VALID [2022-04-28 03:59:21,102 INFO L290 TraceCheckUtils]: 11: Hoare triple {42720#(< 2 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {42720#(< 2 ~SIZE~0)} is VALID [2022-04-28 03:59:21,102 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {42562#true} {42720#(< 2 ~SIZE~0)} #86#return; {42720#(< 2 ~SIZE~0)} is VALID [2022-04-28 03:59:21,102 INFO L290 TraceCheckUtils]: 9: Hoare triple {42562#true} assume true; {42562#true} is VALID [2022-04-28 03:59:21,103 INFO L290 TraceCheckUtils]: 8: Hoare triple {42562#true} assume !(0 == ~cond); {42562#true} is VALID [2022-04-28 03:59:21,103 INFO L290 TraceCheckUtils]: 7: Hoare triple {42562#true} ~cond := #in~cond; {42562#true} is VALID [2022-04-28 03:59:21,103 INFO L272 TraceCheckUtils]: 6: Hoare triple {42720#(< 2 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {42562#true} is VALID [2022-04-28 03:59:21,103 INFO L290 TraceCheckUtils]: 5: Hoare triple {42720#(< 2 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {42720#(< 2 ~SIZE~0)} is VALID [2022-04-28 03:59:21,103 INFO L272 TraceCheckUtils]: 4: Hoare triple {42720#(< 2 ~SIZE~0)} call #t~ret7 := main(); {42720#(< 2 ~SIZE~0)} is VALID [2022-04-28 03:59:21,104 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {42720#(< 2 ~SIZE~0)} {42562#true} #90#return; {42720#(< 2 ~SIZE~0)} is VALID [2022-04-28 03:59:21,104 INFO L290 TraceCheckUtils]: 2: Hoare triple {42720#(< 2 ~SIZE~0)} assume true; {42720#(< 2 ~SIZE~0)} is VALID [2022-04-28 03:59:21,104 INFO L290 TraceCheckUtils]: 1: Hoare triple {42562#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {42720#(< 2 ~SIZE~0)} is VALID [2022-04-28 03:59:21,104 INFO L272 TraceCheckUtils]: 0: Hoare triple {42562#true} call ULTIMATE.init(); {42562#true} is VALID [2022-04-28 03:59:21,105 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 0 proven. 5 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-28 03:59:21,105 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1997718869] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 03:59:21,105 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 03:59:21,105 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 03:59:21,205 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:59:21,205 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [921377190] [2022-04-28 03:59:21,205 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [921377190] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:59:21,205 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:59:21,205 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-28 03:59:21,205 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1266175897] [2022-04-28 03:59:21,205 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:59:21,205 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.909090909090909) internal successors, (32), 10 states have internal predecessors, (32), 3 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Word has length 45 [2022-04-28 03:59:21,205 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:59:21,206 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 2.909090909090909) internal successors, (32), 10 states have internal predecessors, (32), 3 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 03:59:21,230 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-28 03:59:21,231 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-28 03:59:21,231 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:59:21,231 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-28 03:59:21,231 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=115, Invalid=191, Unknown=0, NotChecked=0, Total=306 [2022-04-28 03:59:21,231 INFO L87 Difference]: Start difference. First operand 241 states and 295 transitions. Second operand has 11 states, 11 states have (on average 2.909090909090909) internal successors, (32), 10 states have internal predecessors, (32), 3 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 03:59:22,480 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:59:22,480 INFO L93 Difference]: Finished difference Result 450 states and 550 transitions. [2022-04-28 03:59:22,480 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-28 03:59:22,480 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.909090909090909) internal successors, (32), 10 states have internal predecessors, (32), 3 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Word has length 45 [2022-04-28 03:59:22,480 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:59:22,480 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.909090909090909) internal successors, (32), 10 states have internal predecessors, (32), 3 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 03:59:22,481 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 73 transitions. [2022-04-28 03:59:22,481 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.909090909090909) internal successors, (32), 10 states have internal predecessors, (32), 3 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 03:59:22,481 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 73 transitions. [2022-04-28 03:59:22,481 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 73 transitions. [2022-04-28 03:59:22,537 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 73 edges. 73 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:59:22,541 INFO L225 Difference]: With dead ends: 450 [2022-04-28 03:59:22,541 INFO L226 Difference]: Without dead ends: 261 [2022-04-28 03:59:22,541 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 101 GetRequests, 78 SyntacticMatches, 4 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 199 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=152, Invalid=268, Unknown=0, NotChecked=0, Total=420 [2022-04-28 03:59:22,542 INFO L413 NwaCegarLoop]: 21 mSDtfsCounter, 55 mSDsluCounter, 6 mSDsCounter, 0 mSdLazyCounter, 158 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 56 SdHoareTripleChecker+Valid, 27 SdHoareTripleChecker+Invalid, 177 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 158 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 03:59:22,542 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [56 Valid, 27 Invalid, 177 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 158 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 03:59:22,542 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 261 states. [2022-04-28 03:59:23,493 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 261 to 253. [2022-04-28 03:59:23,494 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:59:23,494 INFO L82 GeneralOperation]: Start isEquivalent. First operand 261 states. Second operand has 253 states, 238 states have (on average 1.218487394957983) internal successors, (290), 241 states have internal predecessors, (290), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:59:23,494 INFO L74 IsIncluded]: Start isIncluded. First operand 261 states. Second operand has 253 states, 238 states have (on average 1.218487394957983) internal successors, (290), 241 states have internal predecessors, (290), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:59:23,494 INFO L87 Difference]: Start difference. First operand 261 states. Second operand has 253 states, 238 states have (on average 1.218487394957983) internal successors, (290), 241 states have internal predecessors, (290), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:59:23,498 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:59:23,498 INFO L93 Difference]: Finished difference Result 261 states and 315 transitions. [2022-04-28 03:59:23,498 INFO L276 IsEmpty]: Start isEmpty. Operand 261 states and 315 transitions. [2022-04-28 03:59:23,499 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:59:23,499 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:59:23,499 INFO L74 IsIncluded]: Start isIncluded. First operand has 253 states, 238 states have (on average 1.218487394957983) internal successors, (290), 241 states have internal predecessors, (290), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 261 states. [2022-04-28 03:59:23,500 INFO L87 Difference]: Start difference. First operand has 253 states, 238 states have (on average 1.218487394957983) internal successors, (290), 241 states have internal predecessors, (290), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 261 states. [2022-04-28 03:59:23,503 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:59:23,504 INFO L93 Difference]: Finished difference Result 261 states and 315 transitions. [2022-04-28 03:59:23,504 INFO L276 IsEmpty]: Start isEmpty. Operand 261 states and 315 transitions. [2022-04-28 03:59:23,504 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:59:23,504 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:59:23,504 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:59:23,504 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:59:23,505 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 253 states, 238 states have (on average 1.218487394957983) internal successors, (290), 241 states have internal predecessors, (290), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:59:23,508 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 253 states to 253 states and 307 transitions. [2022-04-28 03:59:23,508 INFO L78 Accepts]: Start accepts. Automaton has 253 states and 307 transitions. Word has length 45 [2022-04-28 03:59:23,508 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:59:23,508 INFO L495 AbstractCegarLoop]: Abstraction has 253 states and 307 transitions. [2022-04-28 03:59:23,508 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 2.909090909090909) internal successors, (32), 10 states have internal predecessors, (32), 3 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 03:59:23,508 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 253 states and 307 transitions. [2022-04-28 03:59:24,094 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 307 edges. 307 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:59:24,094 INFO L276 IsEmpty]: Start isEmpty. Operand 253 states and 307 transitions. [2022-04-28 03:59:24,095 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-04-28 03:59:24,095 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:59:24,095 INFO L195 NwaCegarLoop]: trace histogram [8, 8, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:59:24,113 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Forceful destruction successful, exit code 0 [2022-04-28 03:59:24,295 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable31,24 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:59:24,296 INFO L420 AbstractCegarLoop]: === Iteration 33 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:59:24,296 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:59:24,296 INFO L85 PathProgramCache]: Analyzing trace with hash 1569322332, now seen corresponding path program 22 times [2022-04-28 03:59:24,296 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:59:24,296 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2051781428] [2022-04-28 03:59:24,492 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:59:26,073 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:59:26,162 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:59:26,164 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:59:26,166 INFO L85 PathProgramCache]: Analyzing trace with hash -109944895, now seen corresponding path program 1 times [2022-04-28 03:59:26,167 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:59:26,167 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1851590425] [2022-04-28 03:59:26,167 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:59:26,167 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:59:26,180 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:59:26,230 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:59:26,231 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:59:26,235 INFO L290 TraceCheckUtils]: 0: Hoare triple {44720#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {44712#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:26,235 INFO L290 TraceCheckUtils]: 1: Hoare triple {44712#(<= 200000 ~SIZE~0)} assume true; {44712#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:26,236 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {44712#(<= 200000 ~SIZE~0)} {44707#true} #90#return; {44712#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:26,236 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:59:26,236 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:59:26,239 INFO L290 TraceCheckUtils]: 0: Hoare triple {44707#true} ~cond := #in~cond; {44707#true} is VALID [2022-04-28 03:59:26,239 INFO L290 TraceCheckUtils]: 1: Hoare triple {44707#true} assume !(0 == ~cond); {44707#true} is VALID [2022-04-28 03:59:26,239 INFO L290 TraceCheckUtils]: 2: Hoare triple {44707#true} assume true; {44707#true} is VALID [2022-04-28 03:59:26,240 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44707#true} {44712#(<= 200000 ~SIZE~0)} #86#return; {44712#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:26,240 INFO L272 TraceCheckUtils]: 0: Hoare triple {44707#true} call ULTIMATE.init(); {44720#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:59:26,241 INFO L290 TraceCheckUtils]: 1: Hoare triple {44720#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {44712#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:26,241 INFO L290 TraceCheckUtils]: 2: Hoare triple {44712#(<= 200000 ~SIZE~0)} assume true; {44712#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:26,241 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44712#(<= 200000 ~SIZE~0)} {44707#true} #90#return; {44712#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:26,242 INFO L272 TraceCheckUtils]: 4: Hoare triple {44712#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {44712#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:26,242 INFO L290 TraceCheckUtils]: 5: Hoare triple {44712#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {44712#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:26,242 INFO L272 TraceCheckUtils]: 6: Hoare triple {44712#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {44707#true} is VALID [2022-04-28 03:59:26,242 INFO L290 TraceCheckUtils]: 7: Hoare triple {44707#true} ~cond := #in~cond; {44707#true} is VALID [2022-04-28 03:59:26,242 INFO L290 TraceCheckUtils]: 8: Hoare triple {44707#true} assume !(0 == ~cond); {44707#true} is VALID [2022-04-28 03:59:26,242 INFO L290 TraceCheckUtils]: 9: Hoare triple {44707#true} assume true; {44707#true} is VALID [2022-04-28 03:59:26,243 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {44707#true} {44712#(<= 200000 ~SIZE~0)} #86#return; {44712#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:26,243 INFO L290 TraceCheckUtils]: 11: Hoare triple {44712#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {44712#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:26,243 INFO L290 TraceCheckUtils]: 12: Hoare triple {44712#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {44717#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:26,244 INFO L290 TraceCheckUtils]: 13: Hoare triple {44717#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [200] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_568 v_main_~c~0_567)) (.cse2 (<= v_~last~0_255 v_main_~c~0_568)) (.cse1 (= v_main_~st~0_301 v_main_~st~0_300))) (or (and .cse0 (= |v_main_#t~post5_331| |v_main_#t~post5_329|) (= v_~last~0_255 v_~last~0_255) (= v_~SIZE~0_229 v_~SIZE~0_229) .cse1) (and (= v_main_~st~0_300 0) (< v_main_~c~0_568 v_main_~c~0_567) .cse2 (< v_main_~c~0_567 (+ v_~SIZE~0_229 1))) (and (= |v_main_#t~post5_329| |v_main_#t~post5_331|) .cse0 (or (not (< v_main_~c~0_568 v_~SIZE~0_229)) (not .cse2)) .cse1))) InVars {~SIZE~0=v_~SIZE~0_229, main_~c~0=v_main_~c~0_568, main_#t~post5=|v_main_#t~post5_331|, main_~st~0=v_main_~st~0_301, ~last~0=v_~last~0_255} OutVars{~SIZE~0=v_~SIZE~0_229, main_#t~post5=|v_main_#t~post5_329|, main_~c~0=v_main_~c~0_567, main_~st~0=v_main_~st~0_300, ~last~0=v_~last~0_255} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {44718#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:59:26,244 INFO L290 TraceCheckUtils]: 14: Hoare triple {44718#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [201] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {44718#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:59:26,245 INFO L290 TraceCheckUtils]: 15: Hoare triple {44718#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [202] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_334| |v_main_#t~post5_330|))) (or (and (or (not (< v_main_~c~0_570 v_~last~0_256)) (not (< v_main_~c~0_570 v_~SIZE~0_230))) .cse0 (= v_main_~c~0_569 v_main_~c~0_570)) (and (< v_main_~c~0_570 v_main_~c~0_569) (< v_main_~c~0_569 (+ v_~last~0_256 1)) (< v_main_~c~0_569 (+ v_~SIZE~0_230 1))) (and (= v_main_~c~0_570 v_main_~c~0_569) .cse0 (= v_~last~0_256 v_~last~0_256) (= v_~SIZE~0_230 v_~SIZE~0_230)))) InVars {~SIZE~0=v_~SIZE~0_230, main_~c~0=v_main_~c~0_570, main_#t~post5=|v_main_#t~post5_334|, ~last~0=v_~last~0_256} OutVars{~SIZE~0=v_~SIZE~0_230, main_#t~post5=|v_main_#t~post5_330|, main_~c~0=v_main_~c~0_569, ~last~0=v_~last~0_256} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {44718#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:59:26,245 INFO L290 TraceCheckUtils]: 16: Hoare triple {44718#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [199] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {44719#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 03:59:26,246 INFO L290 TraceCheckUtils]: 17: Hoare triple {44719#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {44708#false} is VALID [2022-04-28 03:59:26,246 INFO L290 TraceCheckUtils]: 18: Hoare triple {44708#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {44708#false} is VALID [2022-04-28 03:59:26,246 INFO L290 TraceCheckUtils]: 19: Hoare triple {44708#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {44708#false} is VALID [2022-04-28 03:59:26,246 INFO L290 TraceCheckUtils]: 20: Hoare triple {44708#false} assume !(~d~0 == ~SIZE~0); {44708#false} is VALID [2022-04-28 03:59:26,246 INFO L272 TraceCheckUtils]: 21: Hoare triple {44708#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {44708#false} is VALID [2022-04-28 03:59:26,246 INFO L290 TraceCheckUtils]: 22: Hoare triple {44708#false} ~cond := #in~cond; {44708#false} is VALID [2022-04-28 03:59:26,246 INFO L290 TraceCheckUtils]: 23: Hoare triple {44708#false} assume 0 == ~cond; {44708#false} is VALID [2022-04-28 03:59:26,246 INFO L290 TraceCheckUtils]: 24: Hoare triple {44708#false} assume !false; {44708#false} is VALID [2022-04-28 03:59:26,246 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:59:26,246 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:59:26,246 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1851590425] [2022-04-28 03:59:26,247 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1851590425] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 03:59:26,247 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [347268176] [2022-04-28 03:59:26,247 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:59:26,247 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:59:26,247 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 03:59:26,262 INFO L229 MonitoredProcess]: Starting monitored process 25 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 03:59:26,263 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (25)] Waiting until timeout for monitored process [2022-04-28 03:59:26,292 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:59:26,293 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 03:59:26,299 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:59:26,300 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 03:59:26,541 INFO L272 TraceCheckUtils]: 0: Hoare triple {44707#true} call ULTIMATE.init(); {44707#true} is VALID [2022-04-28 03:59:26,542 INFO L290 TraceCheckUtils]: 1: Hoare triple {44707#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {44712#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:26,542 INFO L290 TraceCheckUtils]: 2: Hoare triple {44712#(<= 200000 ~SIZE~0)} assume true; {44712#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:26,543 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44712#(<= 200000 ~SIZE~0)} {44707#true} #90#return; {44712#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:26,543 INFO L272 TraceCheckUtils]: 4: Hoare triple {44712#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {44712#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:26,543 INFO L290 TraceCheckUtils]: 5: Hoare triple {44712#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {44712#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:26,544 INFO L272 TraceCheckUtils]: 6: Hoare triple {44712#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {44712#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:26,544 INFO L290 TraceCheckUtils]: 7: Hoare triple {44712#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {44712#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:26,544 INFO L290 TraceCheckUtils]: 8: Hoare triple {44712#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {44712#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:26,544 INFO L290 TraceCheckUtils]: 9: Hoare triple {44712#(<= 200000 ~SIZE~0)} assume true; {44712#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:26,545 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {44712#(<= 200000 ~SIZE~0)} {44712#(<= 200000 ~SIZE~0)} #86#return; {44712#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:26,545 INFO L290 TraceCheckUtils]: 11: Hoare triple {44712#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {44712#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:26,545 INFO L290 TraceCheckUtils]: 12: Hoare triple {44712#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {44760#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:26,546 INFO L290 TraceCheckUtils]: 13: Hoare triple {44760#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [200] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_568 v_main_~c~0_567)) (.cse2 (<= v_~last~0_255 v_main_~c~0_568)) (.cse1 (= v_main_~st~0_301 v_main_~st~0_300))) (or (and .cse0 (= |v_main_#t~post5_331| |v_main_#t~post5_329|) (= v_~last~0_255 v_~last~0_255) (= v_~SIZE~0_229 v_~SIZE~0_229) .cse1) (and (= v_main_~st~0_300 0) (< v_main_~c~0_568 v_main_~c~0_567) .cse2 (< v_main_~c~0_567 (+ v_~SIZE~0_229 1))) (and (= |v_main_#t~post5_329| |v_main_#t~post5_331|) .cse0 (or (not (< v_main_~c~0_568 v_~SIZE~0_229)) (not .cse2)) .cse1))) InVars {~SIZE~0=v_~SIZE~0_229, main_~c~0=v_main_~c~0_568, main_#t~post5=|v_main_#t~post5_331|, main_~st~0=v_main_~st~0_301, ~last~0=v_~last~0_255} OutVars{~SIZE~0=v_~SIZE~0_229, main_#t~post5=|v_main_#t~post5_329|, main_~c~0=v_main_~c~0_567, main_~st~0=v_main_~st~0_300, ~last~0=v_~last~0_255} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {44764#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:26,547 INFO L290 TraceCheckUtils]: 14: Hoare triple {44764#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [201] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {44764#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:26,547 INFO L290 TraceCheckUtils]: 15: Hoare triple {44764#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [202] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_334| |v_main_#t~post5_330|))) (or (and (or (not (< v_main_~c~0_570 v_~last~0_256)) (not (< v_main_~c~0_570 v_~SIZE~0_230))) .cse0 (= v_main_~c~0_569 v_main_~c~0_570)) (and (< v_main_~c~0_570 v_main_~c~0_569) (< v_main_~c~0_569 (+ v_~last~0_256 1)) (< v_main_~c~0_569 (+ v_~SIZE~0_230 1))) (and (= v_main_~c~0_570 v_main_~c~0_569) .cse0 (= v_~last~0_256 v_~last~0_256) (= v_~SIZE~0_230 v_~SIZE~0_230)))) InVars {~SIZE~0=v_~SIZE~0_230, main_~c~0=v_main_~c~0_570, main_#t~post5=|v_main_#t~post5_334|, ~last~0=v_~last~0_256} OutVars{~SIZE~0=v_~SIZE~0_230, main_#t~post5=|v_main_#t~post5_330|, main_~c~0=v_main_~c~0_569, ~last~0=v_~last~0_256} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {44764#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:26,548 INFO L290 TraceCheckUtils]: 16: Hoare triple {44764#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [199] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {44774#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 03:59:26,548 INFO L290 TraceCheckUtils]: 17: Hoare triple {44774#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {44708#false} is VALID [2022-04-28 03:59:26,548 INFO L290 TraceCheckUtils]: 18: Hoare triple {44708#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {44708#false} is VALID [2022-04-28 03:59:26,548 INFO L290 TraceCheckUtils]: 19: Hoare triple {44708#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {44708#false} is VALID [2022-04-28 03:59:26,549 INFO L290 TraceCheckUtils]: 20: Hoare triple {44708#false} assume !(~d~0 == ~SIZE~0); {44708#false} is VALID [2022-04-28 03:59:26,549 INFO L272 TraceCheckUtils]: 21: Hoare triple {44708#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {44708#false} is VALID [2022-04-28 03:59:26,549 INFO L290 TraceCheckUtils]: 22: Hoare triple {44708#false} ~cond := #in~cond; {44708#false} is VALID [2022-04-28 03:59:26,549 INFO L290 TraceCheckUtils]: 23: Hoare triple {44708#false} assume 0 == ~cond; {44708#false} is VALID [2022-04-28 03:59:26,549 INFO L290 TraceCheckUtils]: 24: Hoare triple {44708#false} assume !false; {44708#false} is VALID [2022-04-28 03:59:26,549 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:59:26,549 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 03:59:26,845 INFO L290 TraceCheckUtils]: 24: Hoare triple {44708#false} assume !false; {44708#false} is VALID [2022-04-28 03:59:26,845 INFO L290 TraceCheckUtils]: 23: Hoare triple {44708#false} assume 0 == ~cond; {44708#false} is VALID [2022-04-28 03:59:26,845 INFO L290 TraceCheckUtils]: 22: Hoare triple {44708#false} ~cond := #in~cond; {44708#false} is VALID [2022-04-28 03:59:26,845 INFO L272 TraceCheckUtils]: 21: Hoare triple {44708#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {44708#false} is VALID [2022-04-28 03:59:26,846 INFO L290 TraceCheckUtils]: 20: Hoare triple {44708#false} assume !(~d~0 == ~SIZE~0); {44708#false} is VALID [2022-04-28 03:59:26,846 INFO L290 TraceCheckUtils]: 19: Hoare triple {44708#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {44708#false} is VALID [2022-04-28 03:59:26,846 INFO L290 TraceCheckUtils]: 18: Hoare triple {44708#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {44708#false} is VALID [2022-04-28 03:59:26,846 INFO L290 TraceCheckUtils]: 17: Hoare triple {44820#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {44708#false} is VALID [2022-04-28 03:59:26,847 INFO L290 TraceCheckUtils]: 16: Hoare triple {44824#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [199] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {44820#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 03:59:26,847 INFO L290 TraceCheckUtils]: 15: Hoare triple {44824#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [202] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_334| |v_main_#t~post5_330|))) (or (and (or (not (< v_main_~c~0_570 v_~last~0_256)) (not (< v_main_~c~0_570 v_~SIZE~0_230))) .cse0 (= v_main_~c~0_569 v_main_~c~0_570)) (and (< v_main_~c~0_570 v_main_~c~0_569) (< v_main_~c~0_569 (+ v_~last~0_256 1)) (< v_main_~c~0_569 (+ v_~SIZE~0_230 1))) (and (= v_main_~c~0_570 v_main_~c~0_569) .cse0 (= v_~last~0_256 v_~last~0_256) (= v_~SIZE~0_230 v_~SIZE~0_230)))) InVars {~SIZE~0=v_~SIZE~0_230, main_~c~0=v_main_~c~0_570, main_#t~post5=|v_main_#t~post5_334|, ~last~0=v_~last~0_256} OutVars{~SIZE~0=v_~SIZE~0_230, main_#t~post5=|v_main_#t~post5_330|, main_~c~0=v_main_~c~0_569, ~last~0=v_~last~0_256} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {44824#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:59:26,847 INFO L290 TraceCheckUtils]: 14: Hoare triple {44824#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [201] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {44824#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:59:26,848 INFO L290 TraceCheckUtils]: 13: Hoare triple {44834#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [200] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_568 v_main_~c~0_567)) (.cse2 (<= v_~last~0_255 v_main_~c~0_568)) (.cse1 (= v_main_~st~0_301 v_main_~st~0_300))) (or (and .cse0 (= |v_main_#t~post5_331| |v_main_#t~post5_329|) (= v_~last~0_255 v_~last~0_255) (= v_~SIZE~0_229 v_~SIZE~0_229) .cse1) (and (= v_main_~st~0_300 0) (< v_main_~c~0_568 v_main_~c~0_567) .cse2 (< v_main_~c~0_567 (+ v_~SIZE~0_229 1))) (and (= |v_main_#t~post5_329| |v_main_#t~post5_331|) .cse0 (or (not (< v_main_~c~0_568 v_~SIZE~0_229)) (not .cse2)) .cse1))) InVars {~SIZE~0=v_~SIZE~0_229, main_~c~0=v_main_~c~0_568, main_#t~post5=|v_main_#t~post5_331|, main_~st~0=v_main_~st~0_301, ~last~0=v_~last~0_255} OutVars{~SIZE~0=v_~SIZE~0_229, main_#t~post5=|v_main_#t~post5_329|, main_~c~0=v_main_~c~0_567, main_~st~0=v_main_~st~0_300, ~last~0=v_~last~0_255} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {44824#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:59:26,848 INFO L290 TraceCheckUtils]: 12: Hoare triple {44838#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {44834#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 03:59:26,849 INFO L290 TraceCheckUtils]: 11: Hoare triple {44838#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {44838#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:26,849 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {44707#true} {44838#(< 1 ~SIZE~0)} #86#return; {44838#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:26,849 INFO L290 TraceCheckUtils]: 9: Hoare triple {44707#true} assume true; {44707#true} is VALID [2022-04-28 03:59:26,849 INFO L290 TraceCheckUtils]: 8: Hoare triple {44707#true} assume !(0 == ~cond); {44707#true} is VALID [2022-04-28 03:59:26,849 INFO L290 TraceCheckUtils]: 7: Hoare triple {44707#true} ~cond := #in~cond; {44707#true} is VALID [2022-04-28 03:59:26,849 INFO L272 TraceCheckUtils]: 6: Hoare triple {44838#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {44707#true} is VALID [2022-04-28 03:59:26,850 INFO L290 TraceCheckUtils]: 5: Hoare triple {44838#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {44838#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:26,850 INFO L272 TraceCheckUtils]: 4: Hoare triple {44838#(< 1 ~SIZE~0)} call #t~ret7 := main(); {44838#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:26,850 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {44838#(< 1 ~SIZE~0)} {44707#true} #90#return; {44838#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:26,850 INFO L290 TraceCheckUtils]: 2: Hoare triple {44838#(< 1 ~SIZE~0)} assume true; {44838#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:26,851 INFO L290 TraceCheckUtils]: 1: Hoare triple {44707#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {44838#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:26,851 INFO L272 TraceCheckUtils]: 0: Hoare triple {44707#true} call ULTIMATE.init(); {44707#true} is VALID [2022-04-28 03:59:26,851 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:59:26,851 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [347268176] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 03:59:26,851 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 03:59:26,851 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 03:59:27,350 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:59:27,350 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2051781428] [2022-04-28 03:59:27,350 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2051781428] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:59:27,350 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:59:27,350 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [17] imperfect sequences [] total 17 [2022-04-28 03:59:27,350 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [686023910] [2022-04-28 03:59:27,350 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:59:27,350 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 2.3529411764705883) internal successors, (40), 16 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 46 [2022-04-28 03:59:27,351 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:59:27,351 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 17 states, 17 states have (on average 2.3529411764705883) internal successors, (40), 16 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:59:27,381 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:59:27,381 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-28 03:59:27,381 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:59:27,381 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-28 03:59:27,381 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=140, Invalid=510, Unknown=0, NotChecked=0, Total=650 [2022-04-28 03:59:27,381 INFO L87 Difference]: Start difference. First operand 253 states and 307 transitions. Second operand has 17 states, 17 states have (on average 2.3529411764705883) internal successors, (40), 16 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:59:29,945 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:59:29,945 INFO L93 Difference]: Finished difference Result 508 states and 611 transitions. [2022-04-28 03:59:29,945 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-04-28 03:59:29,945 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 2.3529411764705883) internal successors, (40), 16 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 46 [2022-04-28 03:59:29,946 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:59:29,946 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 2.3529411764705883) internal successors, (40), 16 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:59:29,946 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 95 transitions. [2022-04-28 03:59:29,946 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 2.3529411764705883) internal successors, (40), 16 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:59:29,947 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 95 transitions. [2022-04-28 03:59:29,947 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 17 states and 95 transitions. [2022-04-28 03:59:30,008 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 95 edges. 95 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:59:30,013 INFO L225 Difference]: With dead ends: 508 [2022-04-28 03:59:30,013 INFO L226 Difference]: Without dead ends: 319 [2022-04-28 03:59:30,014 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 94 GetRequests, 54 SyntacticMatches, 13 SemanticMatches, 27 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 514 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=169, Invalid=643, Unknown=0, NotChecked=0, Total=812 [2022-04-28 03:59:30,014 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 51 mSDsluCounter, 22 mSDsCounter, 0 mSdLazyCounter, 830 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 52 SdHoareTripleChecker+Valid, 46 SdHoareTripleChecker+Invalid, 843 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 830 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-04-28 03:59:30,014 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [52 Valid, 46 Invalid, 843 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 830 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-04-28 03:59:30,014 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 319 states. [2022-04-28 03:59:31,021 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 319 to 262. [2022-04-28 03:59:31,021 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:59:31,021 INFO L82 GeneralOperation]: Start isEquivalent. First operand 319 states. Second operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:59:31,022 INFO L74 IsIncluded]: Start isIncluded. First operand 319 states. Second operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:59:31,022 INFO L87 Difference]: Start difference. First operand 319 states. Second operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:59:31,026 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:59:31,026 INFO L93 Difference]: Finished difference Result 319 states and 377 transitions. [2022-04-28 03:59:31,026 INFO L276 IsEmpty]: Start isEmpty. Operand 319 states and 377 transitions. [2022-04-28 03:59:31,026 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:59:31,026 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:59:31,026 INFO L74 IsIncluded]: Start isIncluded. First operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 319 states. [2022-04-28 03:59:31,026 INFO L87 Difference]: Start difference. First operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 319 states. [2022-04-28 03:59:31,030 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:59:31,030 INFO L93 Difference]: Finished difference Result 319 states and 377 transitions. [2022-04-28 03:59:31,030 INFO L276 IsEmpty]: Start isEmpty. Operand 319 states and 377 transitions. [2022-04-28 03:59:31,030 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:59:31,031 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:59:31,031 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:59:31,031 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:59:31,031 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:59:31,034 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 262 states to 262 states and 316 transitions. [2022-04-28 03:59:31,034 INFO L78 Accepts]: Start accepts. Automaton has 262 states and 316 transitions. Word has length 46 [2022-04-28 03:59:31,034 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:59:31,034 INFO L495 AbstractCegarLoop]: Abstraction has 262 states and 316 transitions. [2022-04-28 03:59:31,034 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 17 states have (on average 2.3529411764705883) internal successors, (40), 16 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:59:31,035 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 262 states and 316 transitions. [2022-04-28 03:59:31,634 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 316 edges. 316 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:59:31,634 INFO L276 IsEmpty]: Start isEmpty. Operand 262 states and 316 transitions. [2022-04-28 03:59:31,634 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-04-28 03:59:31,634 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:59:31,634 INFO L195 NwaCegarLoop]: trace histogram [8, 8, 6, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:59:31,650 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (25)] Forceful destruction successful, exit code 0 [2022-04-28 03:59:31,834 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable32,25 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:59:31,835 INFO L420 AbstractCegarLoop]: === Iteration 34 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:59:31,835 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:59:31,835 INFO L85 PathProgramCache]: Analyzing trace with hash -1339441570, now seen corresponding path program 23 times [2022-04-28 03:59:31,835 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:59:31,835 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1656869764] [2022-04-28 03:59:35,940 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:59:36,038 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:59:38,782 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:59:38,884 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:59:38,885 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:59:38,888 INFO L85 PathProgramCache]: Analyzing trace with hash -1912389439, now seen corresponding path program 1 times [2022-04-28 03:59:38,888 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:59:38,888 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1877562917] [2022-04-28 03:59:38,888 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:59:38,888 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:59:38,895 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:59:38,940 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:59:38,942 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:59:38,945 INFO L290 TraceCheckUtils]: 0: Hoare triple {47087#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {47079#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:38,946 INFO L290 TraceCheckUtils]: 1: Hoare triple {47079#(<= 200000 ~SIZE~0)} assume true; {47079#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:38,946 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {47079#(<= 200000 ~SIZE~0)} {47074#true} #90#return; {47079#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:38,946 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:59:38,947 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:59:38,948 INFO L290 TraceCheckUtils]: 0: Hoare triple {47074#true} ~cond := #in~cond; {47074#true} is VALID [2022-04-28 03:59:38,948 INFO L290 TraceCheckUtils]: 1: Hoare triple {47074#true} assume !(0 == ~cond); {47074#true} is VALID [2022-04-28 03:59:38,948 INFO L290 TraceCheckUtils]: 2: Hoare triple {47074#true} assume true; {47074#true} is VALID [2022-04-28 03:59:38,949 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {47074#true} {47079#(<= 200000 ~SIZE~0)} #86#return; {47079#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:38,949 INFO L272 TraceCheckUtils]: 0: Hoare triple {47074#true} call ULTIMATE.init(); {47087#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:59:38,950 INFO L290 TraceCheckUtils]: 1: Hoare triple {47087#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {47079#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:38,950 INFO L290 TraceCheckUtils]: 2: Hoare triple {47079#(<= 200000 ~SIZE~0)} assume true; {47079#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:38,950 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {47079#(<= 200000 ~SIZE~0)} {47074#true} #90#return; {47079#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:38,951 INFO L272 TraceCheckUtils]: 4: Hoare triple {47079#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {47079#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:38,951 INFO L290 TraceCheckUtils]: 5: Hoare triple {47079#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {47079#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:38,951 INFO L272 TraceCheckUtils]: 6: Hoare triple {47079#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {47074#true} is VALID [2022-04-28 03:59:38,951 INFO L290 TraceCheckUtils]: 7: Hoare triple {47074#true} ~cond := #in~cond; {47074#true} is VALID [2022-04-28 03:59:38,951 INFO L290 TraceCheckUtils]: 8: Hoare triple {47074#true} assume !(0 == ~cond); {47074#true} is VALID [2022-04-28 03:59:38,951 INFO L290 TraceCheckUtils]: 9: Hoare triple {47074#true} assume true; {47074#true} is VALID [2022-04-28 03:59:38,952 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {47074#true} {47079#(<= 200000 ~SIZE~0)} #86#return; {47079#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:38,952 INFO L290 TraceCheckUtils]: 11: Hoare triple {47079#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {47079#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:38,952 INFO L290 TraceCheckUtils]: 12: Hoare triple {47079#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {47084#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:38,953 INFO L290 TraceCheckUtils]: 13: Hoare triple {47084#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [204] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_593 v_main_~c~0_592)) (.cse3 (<= v_~last~0_265 v_main_~c~0_593)) (.cse1 (= |v_main_#t~post5_344| |v_main_#t~post5_342|)) (.cse2 (= v_main_~st~0_317 v_main_~st~0_316))) (or (and .cse0 .cse1 (= v_~SIZE~0_238 v_~SIZE~0_238) .cse2 (= v_~last~0_265 v_~last~0_265)) (and (= v_main_~st~0_316 0) (< v_main_~c~0_592 (+ v_~SIZE~0_238 1)) (< v_main_~c~0_593 v_main_~c~0_592) .cse3) (and .cse0 (or (not (< v_main_~c~0_593 v_~SIZE~0_238)) (not .cse3)) .cse1 .cse2))) InVars {~SIZE~0=v_~SIZE~0_238, main_~c~0=v_main_~c~0_593, main_#t~post5=|v_main_#t~post5_344|, main_~st~0=v_main_~st~0_317, ~last~0=v_~last~0_265} OutVars{~SIZE~0=v_~SIZE~0_238, main_#t~post5=|v_main_#t~post5_342|, main_~c~0=v_main_~c~0_592, main_~st~0=v_main_~st~0_316, ~last~0=v_~last~0_265} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {47085#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:59:38,954 INFO L290 TraceCheckUtils]: 14: Hoare triple {47085#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [205] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {47085#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:59:38,954 INFO L290 TraceCheckUtils]: 15: Hoare triple {47085#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [206] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_595 v_main_~c~0_594)) (.cse1 (= |v_main_#t~post5_347| |v_main_#t~post5_343|))) (or (and (< v_main_~c~0_594 (+ v_~last~0_266 1)) (< v_main_~c~0_595 v_main_~c~0_594) (< v_main_~c~0_594 (+ v_~SIZE~0_239 1))) (and (or (not (< v_main_~c~0_595 v_~SIZE~0_239)) (not (< v_main_~c~0_595 v_~last~0_266))) .cse0 .cse1) (and (= v_~SIZE~0_239 v_~SIZE~0_239) .cse0 .cse1 (= v_~last~0_266 v_~last~0_266)))) InVars {~SIZE~0=v_~SIZE~0_239, main_~c~0=v_main_~c~0_595, main_#t~post5=|v_main_#t~post5_347|, ~last~0=v_~last~0_266} OutVars{~SIZE~0=v_~SIZE~0_239, main_#t~post5=|v_main_#t~post5_343|, main_~c~0=v_main_~c~0_594, ~last~0=v_~last~0_266} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {47085#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:59:38,955 INFO L290 TraceCheckUtils]: 16: Hoare triple {47085#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [203] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {47086#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 03:59:38,955 INFO L290 TraceCheckUtils]: 17: Hoare triple {47086#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {47075#false} is VALID [2022-04-28 03:59:38,955 INFO L290 TraceCheckUtils]: 18: Hoare triple {47075#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {47075#false} is VALID [2022-04-28 03:59:38,955 INFO L290 TraceCheckUtils]: 19: Hoare triple {47075#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {47075#false} is VALID [2022-04-28 03:59:38,955 INFO L290 TraceCheckUtils]: 20: Hoare triple {47075#false} assume !(~d~0 == ~SIZE~0); {47075#false} is VALID [2022-04-28 03:59:38,955 INFO L272 TraceCheckUtils]: 21: Hoare triple {47075#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {47075#false} is VALID [2022-04-28 03:59:38,955 INFO L290 TraceCheckUtils]: 22: Hoare triple {47075#false} ~cond := #in~cond; {47075#false} is VALID [2022-04-28 03:59:38,955 INFO L290 TraceCheckUtils]: 23: Hoare triple {47075#false} assume 0 == ~cond; {47075#false} is VALID [2022-04-28 03:59:38,956 INFO L290 TraceCheckUtils]: 24: Hoare triple {47075#false} assume !false; {47075#false} is VALID [2022-04-28 03:59:38,956 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:59:38,956 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:59:38,956 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1877562917] [2022-04-28 03:59:38,956 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1877562917] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 03:59:38,956 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1789855661] [2022-04-28 03:59:38,956 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:59:38,956 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:59:38,956 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 03:59:38,957 INFO L229 MonitoredProcess]: Starting monitored process 26 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 03:59:38,958 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (26)] Waiting until timeout for monitored process [2022-04-28 03:59:38,989 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:59:38,990 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 03:59:38,996 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:59:38,997 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 03:59:39,242 INFO L272 TraceCheckUtils]: 0: Hoare triple {47074#true} call ULTIMATE.init(); {47074#true} is VALID [2022-04-28 03:59:39,243 INFO L290 TraceCheckUtils]: 1: Hoare triple {47074#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {47079#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:39,243 INFO L290 TraceCheckUtils]: 2: Hoare triple {47079#(<= 200000 ~SIZE~0)} assume true; {47079#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:39,244 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {47079#(<= 200000 ~SIZE~0)} {47074#true} #90#return; {47079#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:39,244 INFO L272 TraceCheckUtils]: 4: Hoare triple {47079#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {47079#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:39,244 INFO L290 TraceCheckUtils]: 5: Hoare triple {47079#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {47079#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:39,245 INFO L272 TraceCheckUtils]: 6: Hoare triple {47079#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {47079#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:39,245 INFO L290 TraceCheckUtils]: 7: Hoare triple {47079#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {47079#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:39,245 INFO L290 TraceCheckUtils]: 8: Hoare triple {47079#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {47079#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:39,245 INFO L290 TraceCheckUtils]: 9: Hoare triple {47079#(<= 200000 ~SIZE~0)} assume true; {47079#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:39,246 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {47079#(<= 200000 ~SIZE~0)} {47079#(<= 200000 ~SIZE~0)} #86#return; {47079#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:39,246 INFO L290 TraceCheckUtils]: 11: Hoare triple {47079#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {47079#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:39,246 INFO L290 TraceCheckUtils]: 12: Hoare triple {47079#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {47127#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:39,247 INFO L290 TraceCheckUtils]: 13: Hoare triple {47127#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [204] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_593 v_main_~c~0_592)) (.cse3 (<= v_~last~0_265 v_main_~c~0_593)) (.cse1 (= |v_main_#t~post5_344| |v_main_#t~post5_342|)) (.cse2 (= v_main_~st~0_317 v_main_~st~0_316))) (or (and .cse0 .cse1 (= v_~SIZE~0_238 v_~SIZE~0_238) .cse2 (= v_~last~0_265 v_~last~0_265)) (and (= v_main_~st~0_316 0) (< v_main_~c~0_592 (+ v_~SIZE~0_238 1)) (< v_main_~c~0_593 v_main_~c~0_592) .cse3) (and .cse0 (or (not (< v_main_~c~0_593 v_~SIZE~0_238)) (not .cse3)) .cse1 .cse2))) InVars {~SIZE~0=v_~SIZE~0_238, main_~c~0=v_main_~c~0_593, main_#t~post5=|v_main_#t~post5_344|, main_~st~0=v_main_~st~0_317, ~last~0=v_~last~0_265} OutVars{~SIZE~0=v_~SIZE~0_238, main_#t~post5=|v_main_#t~post5_342|, main_~c~0=v_main_~c~0_592, main_~st~0=v_main_~st~0_316, ~last~0=v_~last~0_265} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {47131#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:39,248 INFO L290 TraceCheckUtils]: 14: Hoare triple {47131#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [205] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {47131#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:39,248 INFO L290 TraceCheckUtils]: 15: Hoare triple {47131#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [206] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_595 v_main_~c~0_594)) (.cse1 (= |v_main_#t~post5_347| |v_main_#t~post5_343|))) (or (and (< v_main_~c~0_594 (+ v_~last~0_266 1)) (< v_main_~c~0_595 v_main_~c~0_594) (< v_main_~c~0_594 (+ v_~SIZE~0_239 1))) (and (or (not (< v_main_~c~0_595 v_~SIZE~0_239)) (not (< v_main_~c~0_595 v_~last~0_266))) .cse0 .cse1) (and (= v_~SIZE~0_239 v_~SIZE~0_239) .cse0 .cse1 (= v_~last~0_266 v_~last~0_266)))) InVars {~SIZE~0=v_~SIZE~0_239, main_~c~0=v_main_~c~0_595, main_#t~post5=|v_main_#t~post5_347|, ~last~0=v_~last~0_266} OutVars{~SIZE~0=v_~SIZE~0_239, main_#t~post5=|v_main_#t~post5_343|, main_~c~0=v_main_~c~0_594, ~last~0=v_~last~0_266} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {47131#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:39,249 INFO L290 TraceCheckUtils]: 16: Hoare triple {47131#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [203] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {47141#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 03:59:39,249 INFO L290 TraceCheckUtils]: 17: Hoare triple {47141#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {47075#false} is VALID [2022-04-28 03:59:39,249 INFO L290 TraceCheckUtils]: 18: Hoare triple {47075#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {47075#false} is VALID [2022-04-28 03:59:39,249 INFO L290 TraceCheckUtils]: 19: Hoare triple {47075#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {47075#false} is VALID [2022-04-28 03:59:39,249 INFO L290 TraceCheckUtils]: 20: Hoare triple {47075#false} assume !(~d~0 == ~SIZE~0); {47075#false} is VALID [2022-04-28 03:59:39,249 INFO L272 TraceCheckUtils]: 21: Hoare triple {47075#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {47075#false} is VALID [2022-04-28 03:59:39,249 INFO L290 TraceCheckUtils]: 22: Hoare triple {47075#false} ~cond := #in~cond; {47075#false} is VALID [2022-04-28 03:59:39,250 INFO L290 TraceCheckUtils]: 23: Hoare triple {47075#false} assume 0 == ~cond; {47075#false} is VALID [2022-04-28 03:59:39,250 INFO L290 TraceCheckUtils]: 24: Hoare triple {47075#false} assume !false; {47075#false} is VALID [2022-04-28 03:59:39,250 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:59:39,250 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 03:59:39,586 INFO L290 TraceCheckUtils]: 24: Hoare triple {47075#false} assume !false; {47075#false} is VALID [2022-04-28 03:59:39,587 INFO L290 TraceCheckUtils]: 23: Hoare triple {47075#false} assume 0 == ~cond; {47075#false} is VALID [2022-04-28 03:59:39,587 INFO L290 TraceCheckUtils]: 22: Hoare triple {47075#false} ~cond := #in~cond; {47075#false} is VALID [2022-04-28 03:59:39,587 INFO L272 TraceCheckUtils]: 21: Hoare triple {47075#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {47075#false} is VALID [2022-04-28 03:59:39,587 INFO L290 TraceCheckUtils]: 20: Hoare triple {47075#false} assume !(~d~0 == ~SIZE~0); {47075#false} is VALID [2022-04-28 03:59:39,587 INFO L290 TraceCheckUtils]: 19: Hoare triple {47075#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {47075#false} is VALID [2022-04-28 03:59:39,587 INFO L290 TraceCheckUtils]: 18: Hoare triple {47075#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {47075#false} is VALID [2022-04-28 03:59:39,587 INFO L290 TraceCheckUtils]: 17: Hoare triple {47187#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {47075#false} is VALID [2022-04-28 03:59:39,588 INFO L290 TraceCheckUtils]: 16: Hoare triple {47191#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [203] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {47187#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 03:59:39,588 INFO L290 TraceCheckUtils]: 15: Hoare triple {47191#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [206] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_595 v_main_~c~0_594)) (.cse1 (= |v_main_#t~post5_347| |v_main_#t~post5_343|))) (or (and (< v_main_~c~0_594 (+ v_~last~0_266 1)) (< v_main_~c~0_595 v_main_~c~0_594) (< v_main_~c~0_594 (+ v_~SIZE~0_239 1))) (and (or (not (< v_main_~c~0_595 v_~SIZE~0_239)) (not (< v_main_~c~0_595 v_~last~0_266))) .cse0 .cse1) (and (= v_~SIZE~0_239 v_~SIZE~0_239) .cse0 .cse1 (= v_~last~0_266 v_~last~0_266)))) InVars {~SIZE~0=v_~SIZE~0_239, main_~c~0=v_main_~c~0_595, main_#t~post5=|v_main_#t~post5_347|, ~last~0=v_~last~0_266} OutVars{~SIZE~0=v_~SIZE~0_239, main_#t~post5=|v_main_#t~post5_343|, main_~c~0=v_main_~c~0_594, ~last~0=v_~last~0_266} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {47191#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:59:39,589 INFO L290 TraceCheckUtils]: 14: Hoare triple {47191#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [205] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {47191#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:59:39,589 INFO L290 TraceCheckUtils]: 13: Hoare triple {47201#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [204] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_593 v_main_~c~0_592)) (.cse3 (<= v_~last~0_265 v_main_~c~0_593)) (.cse1 (= |v_main_#t~post5_344| |v_main_#t~post5_342|)) (.cse2 (= v_main_~st~0_317 v_main_~st~0_316))) (or (and .cse0 .cse1 (= v_~SIZE~0_238 v_~SIZE~0_238) .cse2 (= v_~last~0_265 v_~last~0_265)) (and (= v_main_~st~0_316 0) (< v_main_~c~0_592 (+ v_~SIZE~0_238 1)) (< v_main_~c~0_593 v_main_~c~0_592) .cse3) (and .cse0 (or (not (< v_main_~c~0_593 v_~SIZE~0_238)) (not .cse3)) .cse1 .cse2))) InVars {~SIZE~0=v_~SIZE~0_238, main_~c~0=v_main_~c~0_593, main_#t~post5=|v_main_#t~post5_344|, main_~st~0=v_main_~st~0_317, ~last~0=v_~last~0_265} OutVars{~SIZE~0=v_~SIZE~0_238, main_#t~post5=|v_main_#t~post5_342|, main_~c~0=v_main_~c~0_592, main_~st~0=v_main_~st~0_316, ~last~0=v_~last~0_265} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {47191#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:59:39,590 INFO L290 TraceCheckUtils]: 12: Hoare triple {47205#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {47201#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 03:59:39,590 INFO L290 TraceCheckUtils]: 11: Hoare triple {47205#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {47205#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:39,590 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {47074#true} {47205#(< 1 ~SIZE~0)} #86#return; {47205#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:39,590 INFO L290 TraceCheckUtils]: 9: Hoare triple {47074#true} assume true; {47074#true} is VALID [2022-04-28 03:59:39,590 INFO L290 TraceCheckUtils]: 8: Hoare triple {47074#true} assume !(0 == ~cond); {47074#true} is VALID [2022-04-28 03:59:39,591 INFO L290 TraceCheckUtils]: 7: Hoare triple {47074#true} ~cond := #in~cond; {47074#true} is VALID [2022-04-28 03:59:39,591 INFO L272 TraceCheckUtils]: 6: Hoare triple {47205#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {47074#true} is VALID [2022-04-28 03:59:39,591 INFO L290 TraceCheckUtils]: 5: Hoare triple {47205#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {47205#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:39,591 INFO L272 TraceCheckUtils]: 4: Hoare triple {47205#(< 1 ~SIZE~0)} call #t~ret7 := main(); {47205#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:39,591 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {47205#(< 1 ~SIZE~0)} {47074#true} #90#return; {47205#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:39,592 INFO L290 TraceCheckUtils]: 2: Hoare triple {47205#(< 1 ~SIZE~0)} assume true; {47205#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:39,592 INFO L290 TraceCheckUtils]: 1: Hoare triple {47074#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {47205#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:39,592 INFO L272 TraceCheckUtils]: 0: Hoare triple {47074#true} call ULTIMATE.init(); {47074#true} is VALID [2022-04-28 03:59:39,592 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:59:39,593 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1789855661] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 03:59:39,593 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 03:59:39,593 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 03:59:40,078 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:59:40,079 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1656869764] [2022-04-28 03:59:40,079 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1656869764] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:59:40,079 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:59:40,079 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [18] imperfect sequences [] total 18 [2022-04-28 03:59:40,079 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1154677038] [2022-04-28 03:59:40,079 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:59:40,080 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 2.2222222222222223) internal successors, (40), 17 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 46 [2022-04-28 03:59:40,080 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:59:40,080 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 18 states, 18 states have (on average 2.2222222222222223) internal successors, (40), 17 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:59:40,110 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:59:40,110 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-04-28 03:59:40,111 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:59:40,111 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-04-28 03:59:40,111 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=155, Invalid=547, Unknown=0, NotChecked=0, Total=702 [2022-04-28 03:59:40,111 INFO L87 Difference]: Start difference. First operand 262 states and 316 transitions. Second operand has 18 states, 18 states have (on average 2.2222222222222223) internal successors, (40), 17 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:59:42,731 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:59:42,732 INFO L93 Difference]: Finished difference Result 526 states and 629 transitions. [2022-04-28 03:59:42,732 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-28 03:59:42,732 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 2.2222222222222223) internal successors, (40), 17 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 46 [2022-04-28 03:59:42,732 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:59:42,732 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 2.2222222222222223) internal successors, (40), 17 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:59:42,733 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 96 transitions. [2022-04-28 03:59:42,733 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 2.2222222222222223) internal successors, (40), 17 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:59:42,733 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 96 transitions. [2022-04-28 03:59:42,733 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 96 transitions. [2022-04-28 03:59:42,800 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 96 edges. 96 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:59:42,804 INFO L225 Difference]: With dead ends: 526 [2022-04-28 03:59:42,804 INFO L226 Difference]: Without dead ends: 328 [2022-04-28 03:59:42,805 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 94 GetRequests, 54 SyntacticMatches, 12 SemanticMatches, 28 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 546 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=186, Invalid=684, Unknown=0, NotChecked=0, Total=870 [2022-04-28 03:59:42,805 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 56 mSDsluCounter, 16 mSDsCounter, 0 mSdLazyCounter, 765 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 57 SdHoareTripleChecker+Valid, 40 SdHoareTripleChecker+Invalid, 779 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 765 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-28 03:59:42,806 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [57 Valid, 40 Invalid, 779 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 765 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-28 03:59:42,806 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 328 states. [2022-04-28 03:59:43,931 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 328 to 262. [2022-04-28 03:59:43,931 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:59:43,931 INFO L82 GeneralOperation]: Start isEquivalent. First operand 328 states. Second operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:59:43,932 INFO L74 IsIncluded]: Start isIncluded. First operand 328 states. Second operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:59:43,932 INFO L87 Difference]: Start difference. First operand 328 states. Second operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:59:43,937 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:59:43,937 INFO L93 Difference]: Finished difference Result 328 states and 386 transitions. [2022-04-28 03:59:43,937 INFO L276 IsEmpty]: Start isEmpty. Operand 328 states and 386 transitions. [2022-04-28 03:59:43,937 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:59:43,937 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:59:43,937 INFO L74 IsIncluded]: Start isIncluded. First operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 328 states. [2022-04-28 03:59:43,938 INFO L87 Difference]: Start difference. First operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 328 states. [2022-04-28 03:59:43,942 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:59:43,942 INFO L93 Difference]: Finished difference Result 328 states and 386 transitions. [2022-04-28 03:59:43,942 INFO L276 IsEmpty]: Start isEmpty. Operand 328 states and 386 transitions. [2022-04-28 03:59:43,942 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:59:43,942 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:59:43,942 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:59:43,943 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:59:43,943 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:59:43,947 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 262 states to 262 states and 316 transitions. [2022-04-28 03:59:43,947 INFO L78 Accepts]: Start accepts. Automaton has 262 states and 316 transitions. Word has length 46 [2022-04-28 03:59:43,947 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:59:43,947 INFO L495 AbstractCegarLoop]: Abstraction has 262 states and 316 transitions. [2022-04-28 03:59:43,947 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 18 states have (on average 2.2222222222222223) internal successors, (40), 17 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:59:43,947 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 262 states and 316 transitions. [2022-04-28 03:59:44,594 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 316 edges. 316 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:59:44,594 INFO L276 IsEmpty]: Start isEmpty. Operand 262 states and 316 transitions. [2022-04-28 03:59:44,595 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-04-28 03:59:44,595 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:59:44,595 INFO L195 NwaCegarLoop]: trace histogram [8, 8, 5, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:59:44,616 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (26)] Forceful destruction successful, exit code 0 [2022-04-28 03:59:44,795 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 26 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable33 [2022-04-28 03:59:44,795 INFO L420 AbstractCegarLoop]: === Iteration 35 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:59:44,796 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:59:44,796 INFO L85 PathProgramCache]: Analyzing trace with hash -1277401956, now seen corresponding path program 24 times [2022-04-28 03:59:44,796 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:59:44,796 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1225228250] [2022-04-28 03:59:45,023 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:59:49,141 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:59:49,239 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 03:59:49,241 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 03:59:49,243 INFO L85 PathProgramCache]: Analyzing trace with hash 580133313, now seen corresponding path program 1 times [2022-04-28 03:59:49,243 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 03:59:49,243 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [131767207] [2022-04-28 03:59:49,243 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:59:49,244 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 03:59:49,250 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:59:49,297 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 03:59:49,298 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:59:49,302 INFO L290 TraceCheckUtils]: 0: Hoare triple {49509#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {49501#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:49,302 INFO L290 TraceCheckUtils]: 1: Hoare triple {49501#(<= 200000 ~SIZE~0)} assume true; {49501#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:49,302 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {49501#(<= 200000 ~SIZE~0)} {49496#true} #90#return; {49501#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:49,303 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 03:59:49,303 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:59:49,305 INFO L290 TraceCheckUtils]: 0: Hoare triple {49496#true} ~cond := #in~cond; {49496#true} is VALID [2022-04-28 03:59:49,305 INFO L290 TraceCheckUtils]: 1: Hoare triple {49496#true} assume !(0 == ~cond); {49496#true} is VALID [2022-04-28 03:59:49,305 INFO L290 TraceCheckUtils]: 2: Hoare triple {49496#true} assume true; {49496#true} is VALID [2022-04-28 03:59:49,305 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {49496#true} {49501#(<= 200000 ~SIZE~0)} #86#return; {49501#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:49,306 INFO L272 TraceCheckUtils]: 0: Hoare triple {49496#true} call ULTIMATE.init(); {49509#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 03:59:49,306 INFO L290 TraceCheckUtils]: 1: Hoare triple {49509#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {49501#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:49,306 INFO L290 TraceCheckUtils]: 2: Hoare triple {49501#(<= 200000 ~SIZE~0)} assume true; {49501#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:49,307 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {49501#(<= 200000 ~SIZE~0)} {49496#true} #90#return; {49501#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:49,307 INFO L272 TraceCheckUtils]: 4: Hoare triple {49501#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {49501#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:49,307 INFO L290 TraceCheckUtils]: 5: Hoare triple {49501#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {49501#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:49,307 INFO L272 TraceCheckUtils]: 6: Hoare triple {49501#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {49496#true} is VALID [2022-04-28 03:59:49,308 INFO L290 TraceCheckUtils]: 7: Hoare triple {49496#true} ~cond := #in~cond; {49496#true} is VALID [2022-04-28 03:59:49,308 INFO L290 TraceCheckUtils]: 8: Hoare triple {49496#true} assume !(0 == ~cond); {49496#true} is VALID [2022-04-28 03:59:49,308 INFO L290 TraceCheckUtils]: 9: Hoare triple {49496#true} assume true; {49496#true} is VALID [2022-04-28 03:59:49,308 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {49496#true} {49501#(<= 200000 ~SIZE~0)} #86#return; {49501#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:49,308 INFO L290 TraceCheckUtils]: 11: Hoare triple {49501#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {49501#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:49,309 INFO L290 TraceCheckUtils]: 12: Hoare triple {49501#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {49506#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:49,309 INFO L290 TraceCheckUtils]: 13: Hoare triple {49506#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [208] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_275 v_main_~c~0_618)) (.cse1 (= v_main_~c~0_618 v_main_~c~0_617)) (.cse2 (= |v_main_#t~post5_357| |v_main_#t~post5_355|)) (.cse3 (= v_main_~st~0_332 v_main_~st~0_331))) (or (and (or (not .cse0) (not (< v_main_~c~0_618 v_~SIZE~0_247))) .cse1 .cse2 .cse3) (and (= v_main_~st~0_331 0) (< v_main_~c~0_617 (+ v_~SIZE~0_247 1)) .cse0 (< v_main_~c~0_618 v_main_~c~0_617)) (and (= v_~last~0_275 v_~last~0_275) (= v_~SIZE~0_247 v_~SIZE~0_247) .cse1 .cse2 .cse3))) InVars {~SIZE~0=v_~SIZE~0_247, main_~c~0=v_main_~c~0_618, main_#t~post5=|v_main_#t~post5_357|, main_~st~0=v_main_~st~0_332, ~last~0=v_~last~0_275} OutVars{~SIZE~0=v_~SIZE~0_247, main_#t~post5=|v_main_#t~post5_355|, main_~c~0=v_main_~c~0_617, main_~st~0=v_main_~st~0_331, ~last~0=v_~last~0_275} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {49507#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:59:49,310 INFO L290 TraceCheckUtils]: 14: Hoare triple {49507#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [209] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {49507#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:59:49,310 INFO L290 TraceCheckUtils]: 15: Hoare triple {49507#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [210] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_620 v_main_~c~0_619))) (or (and .cse0 (= |v_main_#t~post5_356| |v_main_#t~post5_360|) (or (not (< v_main_~c~0_620 v_~SIZE~0_248)) (not (< v_main_~c~0_620 v_~last~0_276)))) (and (= |v_main_#t~post5_360| |v_main_#t~post5_356|) .cse0 (= v_~SIZE~0_248 v_~SIZE~0_248) (= v_~last~0_276 v_~last~0_276)) (and (< v_main_~c~0_619 (+ v_~SIZE~0_248 1)) (< v_main_~c~0_620 v_main_~c~0_619) (< v_main_~c~0_619 (+ v_~last~0_276 1))))) InVars {~SIZE~0=v_~SIZE~0_248, main_~c~0=v_main_~c~0_620, main_#t~post5=|v_main_#t~post5_360|, ~last~0=v_~last~0_276} OutVars{~SIZE~0=v_~SIZE~0_248, main_#t~post5=|v_main_#t~post5_356|, main_~c~0=v_main_~c~0_619, ~last~0=v_~last~0_276} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {49507#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 03:59:49,311 INFO L290 TraceCheckUtils]: 16: Hoare triple {49507#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [207] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {49508#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 03:59:49,311 INFO L290 TraceCheckUtils]: 17: Hoare triple {49508#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {49497#false} is VALID [2022-04-28 03:59:49,311 INFO L290 TraceCheckUtils]: 18: Hoare triple {49497#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {49497#false} is VALID [2022-04-28 03:59:49,311 INFO L290 TraceCheckUtils]: 19: Hoare triple {49497#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {49497#false} is VALID [2022-04-28 03:59:49,311 INFO L290 TraceCheckUtils]: 20: Hoare triple {49497#false} assume !(~d~0 == ~SIZE~0); {49497#false} is VALID [2022-04-28 03:59:49,311 INFO L272 TraceCheckUtils]: 21: Hoare triple {49497#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {49497#false} is VALID [2022-04-28 03:59:49,312 INFO L290 TraceCheckUtils]: 22: Hoare triple {49497#false} ~cond := #in~cond; {49497#false} is VALID [2022-04-28 03:59:49,312 INFO L290 TraceCheckUtils]: 23: Hoare triple {49497#false} assume 0 == ~cond; {49497#false} is VALID [2022-04-28 03:59:49,312 INFO L290 TraceCheckUtils]: 24: Hoare triple {49497#false} assume !false; {49497#false} is VALID [2022-04-28 03:59:49,312 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:59:49,312 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 03:59:49,312 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [131767207] [2022-04-28 03:59:49,312 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [131767207] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 03:59:49,312 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [702757] [2022-04-28 03:59:49,312 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 03:59:49,312 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 03:59:49,312 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 03:59:49,324 INFO L229 MonitoredProcess]: Starting monitored process 27 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 03:59:49,325 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (27)] Waiting until timeout for monitored process [2022-04-28 03:59:49,353 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:59:49,353 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 03:59:49,360 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 03:59:49,360 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 03:59:49,615 INFO L272 TraceCheckUtils]: 0: Hoare triple {49496#true} call ULTIMATE.init(); {49496#true} is VALID [2022-04-28 03:59:49,616 INFO L290 TraceCheckUtils]: 1: Hoare triple {49496#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {49501#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:49,616 INFO L290 TraceCheckUtils]: 2: Hoare triple {49501#(<= 200000 ~SIZE~0)} assume true; {49501#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:49,617 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {49501#(<= 200000 ~SIZE~0)} {49496#true} #90#return; {49501#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:49,617 INFO L272 TraceCheckUtils]: 4: Hoare triple {49501#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {49501#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:49,617 INFO L290 TraceCheckUtils]: 5: Hoare triple {49501#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {49501#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:49,618 INFO L272 TraceCheckUtils]: 6: Hoare triple {49501#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {49501#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:49,618 INFO L290 TraceCheckUtils]: 7: Hoare triple {49501#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {49501#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:49,618 INFO L290 TraceCheckUtils]: 8: Hoare triple {49501#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {49501#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:49,618 INFO L290 TraceCheckUtils]: 9: Hoare triple {49501#(<= 200000 ~SIZE~0)} assume true; {49501#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:49,619 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {49501#(<= 200000 ~SIZE~0)} {49501#(<= 200000 ~SIZE~0)} #86#return; {49501#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:49,619 INFO L290 TraceCheckUtils]: 11: Hoare triple {49501#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {49501#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 03:59:49,619 INFO L290 TraceCheckUtils]: 12: Hoare triple {49501#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {49549#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:49,620 INFO L290 TraceCheckUtils]: 13: Hoare triple {49549#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [208] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_275 v_main_~c~0_618)) (.cse1 (= v_main_~c~0_618 v_main_~c~0_617)) (.cse2 (= |v_main_#t~post5_357| |v_main_#t~post5_355|)) (.cse3 (= v_main_~st~0_332 v_main_~st~0_331))) (or (and (or (not .cse0) (not (< v_main_~c~0_618 v_~SIZE~0_247))) .cse1 .cse2 .cse3) (and (= v_main_~st~0_331 0) (< v_main_~c~0_617 (+ v_~SIZE~0_247 1)) .cse0 (< v_main_~c~0_618 v_main_~c~0_617)) (and (= v_~last~0_275 v_~last~0_275) (= v_~SIZE~0_247 v_~SIZE~0_247) .cse1 .cse2 .cse3))) InVars {~SIZE~0=v_~SIZE~0_247, main_~c~0=v_main_~c~0_618, main_#t~post5=|v_main_#t~post5_357|, main_~st~0=v_main_~st~0_332, ~last~0=v_~last~0_275} OutVars{~SIZE~0=v_~SIZE~0_247, main_#t~post5=|v_main_#t~post5_355|, main_~c~0=v_main_~c~0_617, main_~st~0=v_main_~st~0_331, ~last~0=v_~last~0_275} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {49553#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:49,621 INFO L290 TraceCheckUtils]: 14: Hoare triple {49553#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [209] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {49553#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:49,621 INFO L290 TraceCheckUtils]: 15: Hoare triple {49553#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [210] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_620 v_main_~c~0_619))) (or (and .cse0 (= |v_main_#t~post5_356| |v_main_#t~post5_360|) (or (not (< v_main_~c~0_620 v_~SIZE~0_248)) (not (< v_main_~c~0_620 v_~last~0_276)))) (and (= |v_main_#t~post5_360| |v_main_#t~post5_356|) .cse0 (= v_~SIZE~0_248 v_~SIZE~0_248) (= v_~last~0_276 v_~last~0_276)) (and (< v_main_~c~0_619 (+ v_~SIZE~0_248 1)) (< v_main_~c~0_620 v_main_~c~0_619) (< v_main_~c~0_619 (+ v_~last~0_276 1))))) InVars {~SIZE~0=v_~SIZE~0_248, main_~c~0=v_main_~c~0_620, main_#t~post5=|v_main_#t~post5_360|, ~last~0=v_~last~0_276} OutVars{~SIZE~0=v_~SIZE~0_248, main_#t~post5=|v_main_#t~post5_356|, main_~c~0=v_main_~c~0_619, ~last~0=v_~last~0_276} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {49553#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 03:59:49,622 INFO L290 TraceCheckUtils]: 16: Hoare triple {49553#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [207] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {49563#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 03:59:49,622 INFO L290 TraceCheckUtils]: 17: Hoare triple {49563#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {49497#false} is VALID [2022-04-28 03:59:49,622 INFO L290 TraceCheckUtils]: 18: Hoare triple {49497#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {49497#false} is VALID [2022-04-28 03:59:49,622 INFO L290 TraceCheckUtils]: 19: Hoare triple {49497#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {49497#false} is VALID [2022-04-28 03:59:49,622 INFO L290 TraceCheckUtils]: 20: Hoare triple {49497#false} assume !(~d~0 == ~SIZE~0); {49497#false} is VALID [2022-04-28 03:59:49,623 INFO L272 TraceCheckUtils]: 21: Hoare triple {49497#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {49497#false} is VALID [2022-04-28 03:59:49,623 INFO L290 TraceCheckUtils]: 22: Hoare triple {49497#false} ~cond := #in~cond; {49497#false} is VALID [2022-04-28 03:59:49,623 INFO L290 TraceCheckUtils]: 23: Hoare triple {49497#false} assume 0 == ~cond; {49497#false} is VALID [2022-04-28 03:59:49,623 INFO L290 TraceCheckUtils]: 24: Hoare triple {49497#false} assume !false; {49497#false} is VALID [2022-04-28 03:59:49,623 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:59:49,623 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 03:59:49,939 INFO L290 TraceCheckUtils]: 24: Hoare triple {49497#false} assume !false; {49497#false} is VALID [2022-04-28 03:59:49,939 INFO L290 TraceCheckUtils]: 23: Hoare triple {49497#false} assume 0 == ~cond; {49497#false} is VALID [2022-04-28 03:59:49,940 INFO L290 TraceCheckUtils]: 22: Hoare triple {49497#false} ~cond := #in~cond; {49497#false} is VALID [2022-04-28 03:59:49,940 INFO L272 TraceCheckUtils]: 21: Hoare triple {49497#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {49497#false} is VALID [2022-04-28 03:59:49,940 INFO L290 TraceCheckUtils]: 20: Hoare triple {49497#false} assume !(~d~0 == ~SIZE~0); {49497#false} is VALID [2022-04-28 03:59:49,940 INFO L290 TraceCheckUtils]: 19: Hoare triple {49497#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {49497#false} is VALID [2022-04-28 03:59:49,940 INFO L290 TraceCheckUtils]: 18: Hoare triple {49497#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {49497#false} is VALID [2022-04-28 03:59:49,940 INFO L290 TraceCheckUtils]: 17: Hoare triple {49609#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {49497#false} is VALID [2022-04-28 03:59:49,941 INFO L290 TraceCheckUtils]: 16: Hoare triple {49613#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [207] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {49609#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 03:59:49,941 INFO L290 TraceCheckUtils]: 15: Hoare triple {49613#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [210] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_620 v_main_~c~0_619))) (or (and .cse0 (= |v_main_#t~post5_356| |v_main_#t~post5_360|) (or (not (< v_main_~c~0_620 v_~SIZE~0_248)) (not (< v_main_~c~0_620 v_~last~0_276)))) (and (= |v_main_#t~post5_360| |v_main_#t~post5_356|) .cse0 (= v_~SIZE~0_248 v_~SIZE~0_248) (= v_~last~0_276 v_~last~0_276)) (and (< v_main_~c~0_619 (+ v_~SIZE~0_248 1)) (< v_main_~c~0_620 v_main_~c~0_619) (< v_main_~c~0_619 (+ v_~last~0_276 1))))) InVars {~SIZE~0=v_~SIZE~0_248, main_~c~0=v_main_~c~0_620, main_#t~post5=|v_main_#t~post5_360|, ~last~0=v_~last~0_276} OutVars{~SIZE~0=v_~SIZE~0_248, main_#t~post5=|v_main_#t~post5_356|, main_~c~0=v_main_~c~0_619, ~last~0=v_~last~0_276} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {49613#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:59:49,941 INFO L290 TraceCheckUtils]: 14: Hoare triple {49613#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [209] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {49613#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:59:49,942 INFO L290 TraceCheckUtils]: 13: Hoare triple {49623#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [208] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_275 v_main_~c~0_618)) (.cse1 (= v_main_~c~0_618 v_main_~c~0_617)) (.cse2 (= |v_main_#t~post5_357| |v_main_#t~post5_355|)) (.cse3 (= v_main_~st~0_332 v_main_~st~0_331))) (or (and (or (not .cse0) (not (< v_main_~c~0_618 v_~SIZE~0_247))) .cse1 .cse2 .cse3) (and (= v_main_~st~0_331 0) (< v_main_~c~0_617 (+ v_~SIZE~0_247 1)) .cse0 (< v_main_~c~0_618 v_main_~c~0_617)) (and (= v_~last~0_275 v_~last~0_275) (= v_~SIZE~0_247 v_~SIZE~0_247) .cse1 .cse2 .cse3))) InVars {~SIZE~0=v_~SIZE~0_247, main_~c~0=v_main_~c~0_618, main_#t~post5=|v_main_#t~post5_357|, main_~st~0=v_main_~st~0_332, ~last~0=v_~last~0_275} OutVars{~SIZE~0=v_~SIZE~0_247, main_#t~post5=|v_main_#t~post5_355|, main_~c~0=v_main_~c~0_617, main_~st~0=v_main_~st~0_331, ~last~0=v_~last~0_275} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {49613#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 03:59:49,942 INFO L290 TraceCheckUtils]: 12: Hoare triple {49627#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {49623#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 03:59:49,943 INFO L290 TraceCheckUtils]: 11: Hoare triple {49627#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {49627#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:49,943 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {49496#true} {49627#(< 1 ~SIZE~0)} #86#return; {49627#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:49,943 INFO L290 TraceCheckUtils]: 9: Hoare triple {49496#true} assume true; {49496#true} is VALID [2022-04-28 03:59:49,943 INFO L290 TraceCheckUtils]: 8: Hoare triple {49496#true} assume !(0 == ~cond); {49496#true} is VALID [2022-04-28 03:59:49,943 INFO L290 TraceCheckUtils]: 7: Hoare triple {49496#true} ~cond := #in~cond; {49496#true} is VALID [2022-04-28 03:59:49,943 INFO L272 TraceCheckUtils]: 6: Hoare triple {49627#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {49496#true} is VALID [2022-04-28 03:59:49,944 INFO L290 TraceCheckUtils]: 5: Hoare triple {49627#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {49627#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:49,944 INFO L272 TraceCheckUtils]: 4: Hoare triple {49627#(< 1 ~SIZE~0)} call #t~ret7 := main(); {49627#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:49,944 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {49627#(< 1 ~SIZE~0)} {49496#true} #90#return; {49627#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:49,945 INFO L290 TraceCheckUtils]: 2: Hoare triple {49627#(< 1 ~SIZE~0)} assume true; {49627#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:49,945 INFO L290 TraceCheckUtils]: 1: Hoare triple {49496#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {49627#(< 1 ~SIZE~0)} is VALID [2022-04-28 03:59:49,945 INFO L272 TraceCheckUtils]: 0: Hoare triple {49496#true} call ULTIMATE.init(); {49496#true} is VALID [2022-04-28 03:59:49,945 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 03:59:49,945 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [702757] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 03:59:49,945 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 03:59:49,946 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 03:59:50,426 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 03:59:50,426 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1225228250] [2022-04-28 03:59:50,426 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1225228250] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 03:59:50,426 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 03:59:50,426 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [19] imperfect sequences [] total 19 [2022-04-28 03:59:50,426 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1178467630] [2022-04-28 03:59:50,426 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 03:59:50,427 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 2.1052631578947367) internal successors, (40), 18 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 46 [2022-04-28 03:59:50,427 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 03:59:50,427 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 19 states, 19 states have (on average 2.1052631578947367) internal successors, (40), 18 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:59:50,456 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:59:50,456 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2022-04-28 03:59:50,456 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 03:59:50,457 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-04-28 03:59:50,457 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=170, Invalid=586, Unknown=0, NotChecked=0, Total=756 [2022-04-28 03:59:50,457 INFO L87 Difference]: Start difference. First operand 262 states and 316 transitions. Second operand has 19 states, 19 states have (on average 2.1052631578947367) internal successors, (40), 18 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:59:53,077 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:59:53,077 INFO L93 Difference]: Finished difference Result 517 states and 620 transitions. [2022-04-28 03:59:53,077 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2022-04-28 03:59:53,078 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 2.1052631578947367) internal successors, (40), 18 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 46 [2022-04-28 03:59:53,078 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 03:59:53,078 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 2.1052631578947367) internal successors, (40), 18 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:59:53,078 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 97 transitions. [2022-04-28 03:59:53,078 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 2.1052631578947367) internal successors, (40), 18 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:59:53,079 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 97 transitions. [2022-04-28 03:59:53,079 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 19 states and 97 transitions. [2022-04-28 03:59:53,155 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 97 edges. 97 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:59:53,159 INFO L225 Difference]: With dead ends: 517 [2022-04-28 03:59:53,160 INFO L226 Difference]: Without dead ends: 319 [2022-04-28 03:59:53,160 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 94 GetRequests, 54 SyntacticMatches, 11 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 569 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=203, Invalid=727, Unknown=0, NotChecked=0, Total=930 [2022-04-28 03:59:53,160 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 57 mSDsluCounter, 21 mSDsCounter, 0 mSdLazyCounter, 786 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 58 SdHoareTripleChecker+Valid, 45 SdHoareTripleChecker+Invalid, 801 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 786 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-04-28 03:59:53,161 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [58 Valid, 45 Invalid, 801 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 786 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-04-28 03:59:53,161 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 319 states. [2022-04-28 03:59:54,270 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 319 to 262. [2022-04-28 03:59:54,270 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 03:59:54,270 INFO L82 GeneralOperation]: Start isEquivalent. First operand 319 states. Second operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:59:54,271 INFO L74 IsIncluded]: Start isIncluded. First operand 319 states. Second operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:59:54,271 INFO L87 Difference]: Start difference. First operand 319 states. Second operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:59:54,275 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:59:54,275 INFO L93 Difference]: Finished difference Result 319 states and 377 transitions. [2022-04-28 03:59:54,275 INFO L276 IsEmpty]: Start isEmpty. Operand 319 states and 377 transitions. [2022-04-28 03:59:54,276 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:59:54,276 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:59:54,276 INFO L74 IsIncluded]: Start isIncluded. First operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 319 states. [2022-04-28 03:59:54,276 INFO L87 Difference]: Start difference. First operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 319 states. [2022-04-28 03:59:54,281 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 03:59:54,281 INFO L93 Difference]: Finished difference Result 319 states and 377 transitions. [2022-04-28 03:59:54,281 INFO L276 IsEmpty]: Start isEmpty. Operand 319 states and 377 transitions. [2022-04-28 03:59:54,281 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 03:59:54,281 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 03:59:54,281 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 03:59:54,281 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 03:59:54,283 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 03:59:54,292 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 262 states to 262 states and 316 transitions. [2022-04-28 03:59:54,292 INFO L78 Accepts]: Start accepts. Automaton has 262 states and 316 transitions. Word has length 46 [2022-04-28 03:59:54,292 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 03:59:54,292 INFO L495 AbstractCegarLoop]: Abstraction has 262 states and 316 transitions. [2022-04-28 03:59:54,292 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 19 states have (on average 2.1052631578947367) internal successors, (40), 18 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 03:59:54,292 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 262 states and 316 transitions. [2022-04-28 03:59:54,984 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 316 edges. 316 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 03:59:54,984 INFO L276 IsEmpty]: Start isEmpty. Operand 262 states and 316 transitions. [2022-04-28 03:59:54,984 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-04-28 03:59:54,984 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 03:59:54,984 INFO L195 NwaCegarLoop]: trace histogram [8, 8, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 03:59:55,002 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (27)] Forceful destruction successful, exit code 0 [2022-04-28 03:59:55,194 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 27 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable34 [2022-04-28 03:59:55,195 INFO L420 AbstractCegarLoop]: === Iteration 36 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 03:59:55,195 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 03:59:55,195 INFO L85 PathProgramCache]: Analyzing trace with hash 1212127006, now seen corresponding path program 25 times [2022-04-28 03:59:55,195 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 03:59:55,195 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1672386404] [2022-04-28 03:59:59,322 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 03:59:59,438 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:00:03,540 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:00:03,630 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:00:03,631 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:00:03,633 INFO L85 PathProgramCache]: Analyzing trace with hash -1222311231, now seen corresponding path program 1 times [2022-04-28 04:00:03,634 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:00:03,634 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1361430567] [2022-04-28 04:00:03,634 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:00:03,634 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:00:03,648 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:00:03,718 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:00:03,720 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:00:03,724 INFO L290 TraceCheckUtils]: 0: Hoare triple {51897#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {51888#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:03,724 INFO L290 TraceCheckUtils]: 1: Hoare triple {51888#(<= 200000 ~SIZE~0)} assume true; {51888#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:03,725 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {51888#(<= 200000 ~SIZE~0)} {51883#true} #90#return; {51888#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:03,725 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:00:03,726 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:00:03,727 INFO L290 TraceCheckUtils]: 0: Hoare triple {51883#true} ~cond := #in~cond; {51883#true} is VALID [2022-04-28 04:00:03,728 INFO L290 TraceCheckUtils]: 1: Hoare triple {51883#true} assume !(0 == ~cond); {51883#true} is VALID [2022-04-28 04:00:03,728 INFO L290 TraceCheckUtils]: 2: Hoare triple {51883#true} assume true; {51883#true} is VALID [2022-04-28 04:00:03,728 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {51883#true} {51888#(<= 200000 ~SIZE~0)} #86#return; {51888#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:03,729 INFO L272 TraceCheckUtils]: 0: Hoare triple {51883#true} call ULTIMATE.init(); {51897#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:00:03,729 INFO L290 TraceCheckUtils]: 1: Hoare triple {51897#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {51888#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:03,729 INFO L290 TraceCheckUtils]: 2: Hoare triple {51888#(<= 200000 ~SIZE~0)} assume true; {51888#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:03,730 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {51888#(<= 200000 ~SIZE~0)} {51883#true} #90#return; {51888#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:03,730 INFO L272 TraceCheckUtils]: 4: Hoare triple {51888#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {51888#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:03,730 INFO L290 TraceCheckUtils]: 5: Hoare triple {51888#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {51888#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:03,731 INFO L272 TraceCheckUtils]: 6: Hoare triple {51888#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {51883#true} is VALID [2022-04-28 04:00:03,731 INFO L290 TraceCheckUtils]: 7: Hoare triple {51883#true} ~cond := #in~cond; {51883#true} is VALID [2022-04-28 04:00:03,731 INFO L290 TraceCheckUtils]: 8: Hoare triple {51883#true} assume !(0 == ~cond); {51883#true} is VALID [2022-04-28 04:00:03,731 INFO L290 TraceCheckUtils]: 9: Hoare triple {51883#true} assume true; {51883#true} is VALID [2022-04-28 04:00:03,731 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {51883#true} {51888#(<= 200000 ~SIZE~0)} #86#return; {51888#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:03,731 INFO L290 TraceCheckUtils]: 11: Hoare triple {51888#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {51888#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:03,732 INFO L290 TraceCheckUtils]: 12: Hoare triple {51888#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {51893#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:00:03,733 INFO L290 TraceCheckUtils]: 13: Hoare triple {51893#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} [212] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_285 v_main_~c~0_643)) (.cse1 (= v_main_~st~0_346 v_main_~st~0_345)) (.cse2 (= |v_main_#t~post5_370| |v_main_#t~post5_368|)) (.cse3 (= v_main_~c~0_643 v_main_~c~0_642))) (or (and (or (not .cse0) (not (< v_main_~c~0_643 v_~SIZE~0_256))) .cse1 .cse2 .cse3) (and (< v_main_~c~0_642 (+ v_~SIZE~0_256 1)) (= v_main_~st~0_345 0) (< v_main_~c~0_643 v_main_~c~0_642) .cse0) (and .cse1 (= v_~SIZE~0_256 v_~SIZE~0_256) .cse2 (= v_~last~0_285 v_~last~0_285) .cse3))) InVars {~SIZE~0=v_~SIZE~0_256, main_~c~0=v_main_~c~0_643, main_#t~post5=|v_main_#t~post5_370|, main_~st~0=v_main_~st~0_346, ~last~0=v_~last~0_285} OutVars{~SIZE~0=v_~SIZE~0_256, main_#t~post5=|v_main_#t~post5_368|, main_~c~0=v_main_~c~0_642, main_~st~0=v_main_~st~0_345, ~last~0=v_~last~0_285} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {51894#(and (or (not (= main_~c~0 0)) (<= 200000 ~SIZE~0)) (or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~c~0 0)))} is VALID [2022-04-28 04:00:03,733 INFO L290 TraceCheckUtils]: 14: Hoare triple {51894#(and (or (not (= main_~c~0 0)) (<= 200000 ~SIZE~0)) (or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~c~0 0)))} [213] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {51894#(and (or (not (= main_~c~0 0)) (<= 200000 ~SIZE~0)) (or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~c~0 0)))} is VALID [2022-04-28 04:00:03,734 INFO L290 TraceCheckUtils]: 15: Hoare triple {51894#(and (or (not (= main_~c~0 0)) (<= 200000 ~SIZE~0)) (or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~c~0 0)))} [214] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_645 v_main_~c~0_644)) (.cse1 (= |v_main_#t~post5_373| |v_main_#t~post5_369|))) (or (and (< v_main_~c~0_644 (+ v_~SIZE~0_257 1)) (< v_main_~c~0_644 (+ v_~last~0_286 1)) (< v_main_~c~0_645 v_main_~c~0_644)) (and (or (not (< v_main_~c~0_645 v_~SIZE~0_257)) (not (< v_main_~c~0_645 v_~last~0_286))) .cse0 .cse1) (and .cse0 (= v_~SIZE~0_257 v_~SIZE~0_257) .cse1 (= v_~last~0_286 v_~last~0_286)))) InVars {~SIZE~0=v_~SIZE~0_257, main_~c~0=v_main_~c~0_645, main_#t~post5=|v_main_#t~post5_373|, ~last~0=v_~last~0_286} OutVars{~SIZE~0=v_~SIZE~0_257, main_#t~post5=|v_main_#t~post5_369|, main_~c~0=v_main_~c~0_644, ~last~0=v_~last~0_286} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {51895#(or (<= (+ ~last~0 200000) ~SIZE~0) (<= main_~c~0 ~last~0))} is VALID [2022-04-28 04:00:03,734 INFO L290 TraceCheckUtils]: 16: Hoare triple {51895#(or (<= (+ ~last~0 200000) ~SIZE~0) (<= main_~c~0 ~last~0))} [211] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {51896#(or (<= (+ ~last~0 200000) main_~c~0) (<= main_~c~0 ~last~0))} is VALID [2022-04-28 04:00:03,735 INFO L290 TraceCheckUtils]: 17: Hoare triple {51896#(or (<= (+ ~last~0 200000) main_~c~0) (<= main_~c~0 ~last~0))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {51884#false} is VALID [2022-04-28 04:00:03,735 INFO L290 TraceCheckUtils]: 18: Hoare triple {51884#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {51884#false} is VALID [2022-04-28 04:00:03,735 INFO L290 TraceCheckUtils]: 19: Hoare triple {51884#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {51884#false} is VALID [2022-04-28 04:00:03,735 INFO L290 TraceCheckUtils]: 20: Hoare triple {51884#false} assume !(~d~0 == ~SIZE~0); {51884#false} is VALID [2022-04-28 04:00:03,735 INFO L272 TraceCheckUtils]: 21: Hoare triple {51884#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {51884#false} is VALID [2022-04-28 04:00:03,735 INFO L290 TraceCheckUtils]: 22: Hoare triple {51884#false} ~cond := #in~cond; {51884#false} is VALID [2022-04-28 04:00:03,735 INFO L290 TraceCheckUtils]: 23: Hoare triple {51884#false} assume 0 == ~cond; {51884#false} is VALID [2022-04-28 04:00:03,735 INFO L290 TraceCheckUtils]: 24: Hoare triple {51884#false} assume !false; {51884#false} is VALID [2022-04-28 04:00:03,736 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-28 04:00:03,736 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:00:03,736 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1361430567] [2022-04-28 04:00:03,736 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1361430567] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:00:03,736 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1919001654] [2022-04-28 04:00:03,736 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:00:03,736 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:00:03,736 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:00:03,740 INFO L229 MonitoredProcess]: Starting monitored process 28 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:00:03,740 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (28)] Waiting until timeout for monitored process [2022-04-28 04:00:03,773 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:00:03,774 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:00:03,781 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:00:03,782 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:00:04,035 INFO L272 TraceCheckUtils]: 0: Hoare triple {51883#true} call ULTIMATE.init(); {51883#true} is VALID [2022-04-28 04:00:04,036 INFO L290 TraceCheckUtils]: 1: Hoare triple {51883#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {51888#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:04,036 INFO L290 TraceCheckUtils]: 2: Hoare triple {51888#(<= 200000 ~SIZE~0)} assume true; {51888#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:04,037 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {51888#(<= 200000 ~SIZE~0)} {51883#true} #90#return; {51888#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:04,037 INFO L272 TraceCheckUtils]: 4: Hoare triple {51888#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {51888#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:04,037 INFO L290 TraceCheckUtils]: 5: Hoare triple {51888#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {51888#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:04,038 INFO L272 TraceCheckUtils]: 6: Hoare triple {51888#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {51888#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:04,038 INFO L290 TraceCheckUtils]: 7: Hoare triple {51888#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {51888#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:04,038 INFO L290 TraceCheckUtils]: 8: Hoare triple {51888#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {51888#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:04,038 INFO L290 TraceCheckUtils]: 9: Hoare triple {51888#(<= 200000 ~SIZE~0)} assume true; {51888#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:04,039 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {51888#(<= 200000 ~SIZE~0)} {51888#(<= 200000 ~SIZE~0)} #86#return; {51888#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:04,039 INFO L290 TraceCheckUtils]: 11: Hoare triple {51888#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {51888#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:04,039 INFO L290 TraceCheckUtils]: 12: Hoare triple {51888#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {51937#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:00:04,040 INFO L290 TraceCheckUtils]: 13: Hoare triple {51937#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [212] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_285 v_main_~c~0_643)) (.cse1 (= v_main_~st~0_346 v_main_~st~0_345)) (.cse2 (= |v_main_#t~post5_370| |v_main_#t~post5_368|)) (.cse3 (= v_main_~c~0_643 v_main_~c~0_642))) (or (and (or (not .cse0) (not (< v_main_~c~0_643 v_~SIZE~0_256))) .cse1 .cse2 .cse3) (and (< v_main_~c~0_642 (+ v_~SIZE~0_256 1)) (= v_main_~st~0_345 0) (< v_main_~c~0_643 v_main_~c~0_642) .cse0) (and .cse1 (= v_~SIZE~0_256 v_~SIZE~0_256) .cse2 (= v_~last~0_285 v_~last~0_285) .cse3))) InVars {~SIZE~0=v_~SIZE~0_256, main_~c~0=v_main_~c~0_643, main_#t~post5=|v_main_#t~post5_370|, main_~st~0=v_main_~st~0_346, ~last~0=v_~last~0_285} OutVars{~SIZE~0=v_~SIZE~0_256, main_#t~post5=|v_main_#t~post5_368|, main_~c~0=v_main_~c~0_642, main_~st~0=v_main_~st~0_345, ~last~0=v_~last~0_285} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {51941#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:00:04,041 INFO L290 TraceCheckUtils]: 14: Hoare triple {51941#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [213] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {51941#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:00:04,041 INFO L290 TraceCheckUtils]: 15: Hoare triple {51941#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [214] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_645 v_main_~c~0_644)) (.cse1 (= |v_main_#t~post5_373| |v_main_#t~post5_369|))) (or (and (< v_main_~c~0_644 (+ v_~SIZE~0_257 1)) (< v_main_~c~0_644 (+ v_~last~0_286 1)) (< v_main_~c~0_645 v_main_~c~0_644)) (and (or (not (< v_main_~c~0_645 v_~SIZE~0_257)) (not (< v_main_~c~0_645 v_~last~0_286))) .cse0 .cse1) (and .cse0 (= v_~SIZE~0_257 v_~SIZE~0_257) .cse1 (= v_~last~0_286 v_~last~0_286)))) InVars {~SIZE~0=v_~SIZE~0_257, main_~c~0=v_main_~c~0_645, main_#t~post5=|v_main_#t~post5_373|, ~last~0=v_~last~0_286} OutVars{~SIZE~0=v_~SIZE~0_257, main_#t~post5=|v_main_#t~post5_369|, main_~c~0=v_main_~c~0_644, ~last~0=v_~last~0_286} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {51941#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:00:04,042 INFO L290 TraceCheckUtils]: 16: Hoare triple {51941#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [211] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {51951#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:00:04,042 INFO L290 TraceCheckUtils]: 17: Hoare triple {51951#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {51884#false} is VALID [2022-04-28 04:00:04,042 INFO L290 TraceCheckUtils]: 18: Hoare triple {51884#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {51884#false} is VALID [2022-04-28 04:00:04,042 INFO L290 TraceCheckUtils]: 19: Hoare triple {51884#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {51884#false} is VALID [2022-04-28 04:00:04,042 INFO L290 TraceCheckUtils]: 20: Hoare triple {51884#false} assume !(~d~0 == ~SIZE~0); {51884#false} is VALID [2022-04-28 04:00:04,042 INFO L272 TraceCheckUtils]: 21: Hoare triple {51884#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {51884#false} is VALID [2022-04-28 04:00:04,043 INFO L290 TraceCheckUtils]: 22: Hoare triple {51884#false} ~cond := #in~cond; {51884#false} is VALID [2022-04-28 04:00:04,043 INFO L290 TraceCheckUtils]: 23: Hoare triple {51884#false} assume 0 == ~cond; {51884#false} is VALID [2022-04-28 04:00:04,043 INFO L290 TraceCheckUtils]: 24: Hoare triple {51884#false} assume !false; {51884#false} is VALID [2022-04-28 04:00:04,043 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:00:04,043 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:00:04,384 INFO L290 TraceCheckUtils]: 24: Hoare triple {51884#false} assume !false; {51884#false} is VALID [2022-04-28 04:00:04,384 INFO L290 TraceCheckUtils]: 23: Hoare triple {51884#false} assume 0 == ~cond; {51884#false} is VALID [2022-04-28 04:00:04,385 INFO L290 TraceCheckUtils]: 22: Hoare triple {51884#false} ~cond := #in~cond; {51884#false} is VALID [2022-04-28 04:00:04,385 INFO L272 TraceCheckUtils]: 21: Hoare triple {51884#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {51884#false} is VALID [2022-04-28 04:00:04,385 INFO L290 TraceCheckUtils]: 20: Hoare triple {51884#false} assume !(~d~0 == ~SIZE~0); {51884#false} is VALID [2022-04-28 04:00:04,385 INFO L290 TraceCheckUtils]: 19: Hoare triple {51884#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {51884#false} is VALID [2022-04-28 04:00:04,385 INFO L290 TraceCheckUtils]: 18: Hoare triple {51884#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {51884#false} is VALID [2022-04-28 04:00:04,385 INFO L290 TraceCheckUtils]: 17: Hoare triple {51997#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {51884#false} is VALID [2022-04-28 04:00:04,386 INFO L290 TraceCheckUtils]: 16: Hoare triple {52001#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [211] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {51997#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:00:04,386 INFO L290 TraceCheckUtils]: 15: Hoare triple {52001#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [214] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_645 v_main_~c~0_644)) (.cse1 (= |v_main_#t~post5_373| |v_main_#t~post5_369|))) (or (and (< v_main_~c~0_644 (+ v_~SIZE~0_257 1)) (< v_main_~c~0_644 (+ v_~last~0_286 1)) (< v_main_~c~0_645 v_main_~c~0_644)) (and (or (not (< v_main_~c~0_645 v_~SIZE~0_257)) (not (< v_main_~c~0_645 v_~last~0_286))) .cse0 .cse1) (and .cse0 (= v_~SIZE~0_257 v_~SIZE~0_257) .cse1 (= v_~last~0_286 v_~last~0_286)))) InVars {~SIZE~0=v_~SIZE~0_257, main_~c~0=v_main_~c~0_645, main_#t~post5=|v_main_#t~post5_373|, ~last~0=v_~last~0_286} OutVars{~SIZE~0=v_~SIZE~0_257, main_#t~post5=|v_main_#t~post5_369|, main_~c~0=v_main_~c~0_644, ~last~0=v_~last~0_286} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {52001#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:00:04,386 INFO L290 TraceCheckUtils]: 14: Hoare triple {52001#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [213] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {52001#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:00:04,387 INFO L290 TraceCheckUtils]: 13: Hoare triple {52011#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [212] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_285 v_main_~c~0_643)) (.cse1 (= v_main_~st~0_346 v_main_~st~0_345)) (.cse2 (= |v_main_#t~post5_370| |v_main_#t~post5_368|)) (.cse3 (= v_main_~c~0_643 v_main_~c~0_642))) (or (and (or (not .cse0) (not (< v_main_~c~0_643 v_~SIZE~0_256))) .cse1 .cse2 .cse3) (and (< v_main_~c~0_642 (+ v_~SIZE~0_256 1)) (= v_main_~st~0_345 0) (< v_main_~c~0_643 v_main_~c~0_642) .cse0) (and .cse1 (= v_~SIZE~0_256 v_~SIZE~0_256) .cse2 (= v_~last~0_285 v_~last~0_285) .cse3))) InVars {~SIZE~0=v_~SIZE~0_256, main_~c~0=v_main_~c~0_643, main_#t~post5=|v_main_#t~post5_370|, main_~st~0=v_main_~st~0_346, ~last~0=v_~last~0_285} OutVars{~SIZE~0=v_~SIZE~0_256, main_#t~post5=|v_main_#t~post5_368|, main_~c~0=v_main_~c~0_642, main_~st~0=v_main_~st~0_345, ~last~0=v_~last~0_285} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {52001#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:00:04,388 INFO L290 TraceCheckUtils]: 12: Hoare triple {52015#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {52011#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:00:04,388 INFO L290 TraceCheckUtils]: 11: Hoare triple {52015#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {52015#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:04,388 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {51883#true} {52015#(< 1 ~SIZE~0)} #86#return; {52015#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:04,388 INFO L290 TraceCheckUtils]: 9: Hoare triple {51883#true} assume true; {51883#true} is VALID [2022-04-28 04:00:04,388 INFO L290 TraceCheckUtils]: 8: Hoare triple {51883#true} assume !(0 == ~cond); {51883#true} is VALID [2022-04-28 04:00:04,389 INFO L290 TraceCheckUtils]: 7: Hoare triple {51883#true} ~cond := #in~cond; {51883#true} is VALID [2022-04-28 04:00:04,389 INFO L272 TraceCheckUtils]: 6: Hoare triple {52015#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {51883#true} is VALID [2022-04-28 04:00:04,389 INFO L290 TraceCheckUtils]: 5: Hoare triple {52015#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {52015#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:04,389 INFO L272 TraceCheckUtils]: 4: Hoare triple {52015#(< 1 ~SIZE~0)} call #t~ret7 := main(); {52015#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:04,389 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {52015#(< 1 ~SIZE~0)} {51883#true} #90#return; {52015#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:04,390 INFO L290 TraceCheckUtils]: 2: Hoare triple {52015#(< 1 ~SIZE~0)} assume true; {52015#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:04,390 INFO L290 TraceCheckUtils]: 1: Hoare triple {51883#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {52015#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:04,390 INFO L272 TraceCheckUtils]: 0: Hoare triple {51883#true} call ULTIMATE.init(); {51883#true} is VALID [2022-04-28 04:00:04,390 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:00:04,391 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1919001654] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:00:04,391 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:00:04,391 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 6, 6] total 15 [2022-04-28 04:00:04,899 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:00:04,900 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1672386404] [2022-04-28 04:00:04,900 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1672386404] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:00:04,900 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:00:04,900 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [20] imperfect sequences [] total 20 [2022-04-28 04:00:04,900 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [194707176] [2022-04-28 04:00:04,900 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:00:04,900 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 20 states have (on average 2.0) internal successors, (40), 19 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 46 [2022-04-28 04:00:04,900 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:00:04,900 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 20 states, 20 states have (on average 2.0) internal successors, (40), 19 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:00:04,930 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:00:04,930 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 20 states [2022-04-28 04:00:04,930 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:00:04,930 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2022-04-28 04:00:04,930 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=147, Invalid=723, Unknown=0, NotChecked=0, Total=870 [2022-04-28 04:00:04,930 INFO L87 Difference]: Start difference. First operand 262 states and 316 transitions. Second operand has 20 states, 20 states have (on average 2.0) internal successors, (40), 19 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:00:07,228 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:00:07,228 INFO L93 Difference]: Finished difference Result 505 states and 604 transitions. [2022-04-28 04:00:07,228 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-04-28 04:00:07,229 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 20 states have (on average 2.0) internal successors, (40), 19 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 46 [2022-04-28 04:00:07,229 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:00:07,229 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 20 states have (on average 2.0) internal successors, (40), 19 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:00:07,229 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 92 transitions. [2022-04-28 04:00:07,229 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 20 states have (on average 2.0) internal successors, (40), 19 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:00:07,230 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 92 transitions. [2022-04-28 04:00:07,230 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 92 transitions. [2022-04-28 04:00:07,288 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 92 edges. 92 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:00:07,292 INFO L225 Difference]: With dead ends: 505 [2022-04-28 04:00:07,292 INFO L226 Difference]: Without dead ends: 307 [2022-04-28 04:00:07,292 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 94 GetRequests, 54 SyntacticMatches, 10 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 527 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=166, Invalid=826, Unknown=0, NotChecked=0, Total=992 [2022-04-28 04:00:07,293 INFO L413 NwaCegarLoop]: 21 mSDtfsCounter, 56 mSDsluCounter, 21 mSDsCounter, 0 mSdLazyCounter, 612 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 57 SdHoareTripleChecker+Valid, 42 SdHoareTripleChecker+Invalid, 630 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 612 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 04:00:07,293 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [57 Valid, 42 Invalid, 630 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 612 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 04:00:07,293 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 307 states. [2022-04-28 04:00:08,370 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 307 to 262. [2022-04-28 04:00:08,370 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:00:08,370 INFO L82 GeneralOperation]: Start isEquivalent. First operand 307 states. Second operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:00:08,371 INFO L74 IsIncluded]: Start isIncluded. First operand 307 states. Second operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:00:08,371 INFO L87 Difference]: Start difference. First operand 307 states. Second operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:00:08,374 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:00:08,374 INFO L93 Difference]: Finished difference Result 307 states and 361 transitions. [2022-04-28 04:00:08,375 INFO L276 IsEmpty]: Start isEmpty. Operand 307 states and 361 transitions. [2022-04-28 04:00:08,375 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:00:08,375 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:00:08,375 INFO L74 IsIncluded]: Start isIncluded. First operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 307 states. [2022-04-28 04:00:08,375 INFO L87 Difference]: Start difference. First operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 307 states. [2022-04-28 04:00:08,379 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:00:08,379 INFO L93 Difference]: Finished difference Result 307 states and 361 transitions. [2022-04-28 04:00:08,379 INFO L276 IsEmpty]: Start isEmpty. Operand 307 states and 361 transitions. [2022-04-28 04:00:08,379 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:00:08,379 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:00:08,379 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:00:08,379 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:00:08,380 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:00:08,383 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 262 states to 262 states and 316 transitions. [2022-04-28 04:00:08,383 INFO L78 Accepts]: Start accepts. Automaton has 262 states and 316 transitions. Word has length 46 [2022-04-28 04:00:08,383 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:00:08,383 INFO L495 AbstractCegarLoop]: Abstraction has 262 states and 316 transitions. [2022-04-28 04:00:08,383 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 20 states, 20 states have (on average 2.0) internal successors, (40), 19 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:00:08,384 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 262 states and 316 transitions. [2022-04-28 04:00:09,072 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 316 edges. 316 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:00:09,072 INFO L276 IsEmpty]: Start isEmpty. Operand 262 states and 316 transitions. [2022-04-28 04:00:09,072 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-04-28 04:00:09,073 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:00:09,073 INFO L195 NwaCegarLoop]: trace histogram [8, 8, 5, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:00:09,089 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (28)] Ended with exit code 0 [2022-04-28 04:00:09,273 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 28 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable35 [2022-04-28 04:00:09,273 INFO L420 AbstractCegarLoop]: === Iteration 37 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:00:09,273 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:00:09,274 INFO L85 PathProgramCache]: Analyzing trace with hash 394478556, now seen corresponding path program 26 times [2022-04-28 04:00:09,274 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:00:09,274 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1057616007] [2022-04-28 04:00:11,896 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:00:11,999 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:00:14,723 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:00:14,829 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:00:14,830 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:00:14,833 INFO L85 PathProgramCache]: Analyzing trace with hash 1270211521, now seen corresponding path program 1 times [2022-04-28 04:00:14,833 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:00:14,833 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1471780762] [2022-04-28 04:00:14,833 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:00:14,834 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:00:14,841 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:00:14,888 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:00:14,889 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:00:14,905 INFO L290 TraceCheckUtils]: 0: Hoare triple {54235#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {54227#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:14,906 INFO L290 TraceCheckUtils]: 1: Hoare triple {54227#(<= 200000 ~SIZE~0)} assume true; {54227#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:14,906 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {54227#(<= 200000 ~SIZE~0)} {54222#true} #90#return; {54227#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:14,906 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:00:14,907 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:00:14,909 INFO L290 TraceCheckUtils]: 0: Hoare triple {54222#true} ~cond := #in~cond; {54222#true} is VALID [2022-04-28 04:00:14,909 INFO L290 TraceCheckUtils]: 1: Hoare triple {54222#true} assume !(0 == ~cond); {54222#true} is VALID [2022-04-28 04:00:14,909 INFO L290 TraceCheckUtils]: 2: Hoare triple {54222#true} assume true; {54222#true} is VALID [2022-04-28 04:00:14,909 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {54222#true} {54227#(<= 200000 ~SIZE~0)} #86#return; {54227#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:14,910 INFO L272 TraceCheckUtils]: 0: Hoare triple {54222#true} call ULTIMATE.init(); {54235#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:00:14,911 INFO L290 TraceCheckUtils]: 1: Hoare triple {54235#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {54227#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:14,911 INFO L290 TraceCheckUtils]: 2: Hoare triple {54227#(<= 200000 ~SIZE~0)} assume true; {54227#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:14,911 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {54227#(<= 200000 ~SIZE~0)} {54222#true} #90#return; {54227#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:14,912 INFO L272 TraceCheckUtils]: 4: Hoare triple {54227#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {54227#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:14,912 INFO L290 TraceCheckUtils]: 5: Hoare triple {54227#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {54227#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:14,912 INFO L272 TraceCheckUtils]: 6: Hoare triple {54227#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {54222#true} is VALID [2022-04-28 04:00:14,912 INFO L290 TraceCheckUtils]: 7: Hoare triple {54222#true} ~cond := #in~cond; {54222#true} is VALID [2022-04-28 04:00:14,912 INFO L290 TraceCheckUtils]: 8: Hoare triple {54222#true} assume !(0 == ~cond); {54222#true} is VALID [2022-04-28 04:00:14,912 INFO L290 TraceCheckUtils]: 9: Hoare triple {54222#true} assume true; {54222#true} is VALID [2022-04-28 04:00:14,913 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {54222#true} {54227#(<= 200000 ~SIZE~0)} #86#return; {54227#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:14,914 INFO L290 TraceCheckUtils]: 11: Hoare triple {54227#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {54227#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:14,914 INFO L290 TraceCheckUtils]: 12: Hoare triple {54227#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {54232#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:00:14,915 INFO L290 TraceCheckUtils]: 13: Hoare triple {54232#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [216] L27-3-->L27-4_primed: Formula: (let ((.cse3 (<= v_~last~0_295 v_main_~c~0_668)) (.cse0 (= v_main_~st~0_358 v_main_~st~0_357)) (.cse1 (= |v_main_#t~post5_383| |v_main_#t~post5_381|)) (.cse2 (= v_main_~c~0_668 v_main_~c~0_667))) (or (and .cse0 .cse1 .cse2 (or (not (< v_main_~c~0_668 v_~SIZE~0_265)) (not .cse3))) (and (= v_main_~st~0_357 0) (< v_main_~c~0_667 (+ v_~SIZE~0_265 1)) (< v_main_~c~0_668 v_main_~c~0_667) .cse3) (and .cse0 (= v_~last~0_295 v_~last~0_295) .cse1 .cse2 (= v_~SIZE~0_265 v_~SIZE~0_265)))) InVars {~SIZE~0=v_~SIZE~0_265, main_~c~0=v_main_~c~0_668, main_#t~post5=|v_main_#t~post5_383|, main_~st~0=v_main_~st~0_358, ~last~0=v_~last~0_295} OutVars{~SIZE~0=v_~SIZE~0_265, main_#t~post5=|v_main_#t~post5_381|, main_~c~0=v_main_~c~0_667, main_~st~0=v_main_~st~0_357, ~last~0=v_~last~0_295} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {54233#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:00:14,915 INFO L290 TraceCheckUtils]: 14: Hoare triple {54233#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [217] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {54233#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:00:14,916 INFO L290 TraceCheckUtils]: 15: Hoare triple {54233#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [218] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_386| |v_main_#t~post5_382|))) (or (and .cse0 (= v_main_~c~0_669 v_main_~c~0_670) (or (not (< v_main_~c~0_670 v_~SIZE~0_266)) (not (< v_main_~c~0_670 v_~last~0_296)))) (and (< v_main_~c~0_670 v_main_~c~0_669) (< v_main_~c~0_669 (+ v_~last~0_296 1)) (< v_main_~c~0_669 (+ v_~SIZE~0_266 1))) (and (= v_~SIZE~0_266 v_~SIZE~0_266) .cse0 (= v_main_~c~0_670 v_main_~c~0_669) (= v_~last~0_296 v_~last~0_296)))) InVars {~SIZE~0=v_~SIZE~0_266, main_~c~0=v_main_~c~0_670, main_#t~post5=|v_main_#t~post5_386|, ~last~0=v_~last~0_296} OutVars{~SIZE~0=v_~SIZE~0_266, main_#t~post5=|v_main_#t~post5_382|, main_~c~0=v_main_~c~0_669, ~last~0=v_~last~0_296} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {54233#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:00:14,916 INFO L290 TraceCheckUtils]: 16: Hoare triple {54233#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [215] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {54234#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:00:14,916 INFO L290 TraceCheckUtils]: 17: Hoare triple {54234#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {54223#false} is VALID [2022-04-28 04:00:14,917 INFO L290 TraceCheckUtils]: 18: Hoare triple {54223#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {54223#false} is VALID [2022-04-28 04:00:14,917 INFO L290 TraceCheckUtils]: 19: Hoare triple {54223#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {54223#false} is VALID [2022-04-28 04:00:14,917 INFO L290 TraceCheckUtils]: 20: Hoare triple {54223#false} assume !(~d~0 == ~SIZE~0); {54223#false} is VALID [2022-04-28 04:00:14,917 INFO L272 TraceCheckUtils]: 21: Hoare triple {54223#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {54223#false} is VALID [2022-04-28 04:00:14,917 INFO L290 TraceCheckUtils]: 22: Hoare triple {54223#false} ~cond := #in~cond; {54223#false} is VALID [2022-04-28 04:00:14,917 INFO L290 TraceCheckUtils]: 23: Hoare triple {54223#false} assume 0 == ~cond; {54223#false} is VALID [2022-04-28 04:00:14,917 INFO L290 TraceCheckUtils]: 24: Hoare triple {54223#false} assume !false; {54223#false} is VALID [2022-04-28 04:00:14,917 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:00:14,917 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:00:14,917 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1471780762] [2022-04-28 04:00:14,917 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1471780762] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:00:14,917 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [285152363] [2022-04-28 04:00:14,917 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:00:14,918 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:00:14,918 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:00:14,918 INFO L229 MonitoredProcess]: Starting monitored process 29 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:00:14,920 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (29)] Waiting until timeout for monitored process [2022-04-28 04:00:14,953 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:00:14,954 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:00:14,964 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:00:14,965 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:00:15,224 INFO L272 TraceCheckUtils]: 0: Hoare triple {54222#true} call ULTIMATE.init(); {54222#true} is VALID [2022-04-28 04:00:15,225 INFO L290 TraceCheckUtils]: 1: Hoare triple {54222#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {54227#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:15,225 INFO L290 TraceCheckUtils]: 2: Hoare triple {54227#(<= 200000 ~SIZE~0)} assume true; {54227#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:15,226 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {54227#(<= 200000 ~SIZE~0)} {54222#true} #90#return; {54227#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:15,226 INFO L272 TraceCheckUtils]: 4: Hoare triple {54227#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {54227#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:15,226 INFO L290 TraceCheckUtils]: 5: Hoare triple {54227#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {54227#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:15,227 INFO L272 TraceCheckUtils]: 6: Hoare triple {54227#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {54227#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:15,227 INFO L290 TraceCheckUtils]: 7: Hoare triple {54227#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {54227#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:15,227 INFO L290 TraceCheckUtils]: 8: Hoare triple {54227#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {54227#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:15,227 INFO L290 TraceCheckUtils]: 9: Hoare triple {54227#(<= 200000 ~SIZE~0)} assume true; {54227#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:15,228 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {54227#(<= 200000 ~SIZE~0)} {54227#(<= 200000 ~SIZE~0)} #86#return; {54227#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:15,228 INFO L290 TraceCheckUtils]: 11: Hoare triple {54227#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {54227#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:15,229 INFO L290 TraceCheckUtils]: 12: Hoare triple {54227#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {54275#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:00:15,229 INFO L290 TraceCheckUtils]: 13: Hoare triple {54275#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [216] L27-3-->L27-4_primed: Formula: (let ((.cse3 (<= v_~last~0_295 v_main_~c~0_668)) (.cse0 (= v_main_~st~0_358 v_main_~st~0_357)) (.cse1 (= |v_main_#t~post5_383| |v_main_#t~post5_381|)) (.cse2 (= v_main_~c~0_668 v_main_~c~0_667))) (or (and .cse0 .cse1 .cse2 (or (not (< v_main_~c~0_668 v_~SIZE~0_265)) (not .cse3))) (and (= v_main_~st~0_357 0) (< v_main_~c~0_667 (+ v_~SIZE~0_265 1)) (< v_main_~c~0_668 v_main_~c~0_667) .cse3) (and .cse0 (= v_~last~0_295 v_~last~0_295) .cse1 .cse2 (= v_~SIZE~0_265 v_~SIZE~0_265)))) InVars {~SIZE~0=v_~SIZE~0_265, main_~c~0=v_main_~c~0_668, main_#t~post5=|v_main_#t~post5_383|, main_~st~0=v_main_~st~0_358, ~last~0=v_~last~0_295} OutVars{~SIZE~0=v_~SIZE~0_265, main_#t~post5=|v_main_#t~post5_381|, main_~c~0=v_main_~c~0_667, main_~st~0=v_main_~st~0_357, ~last~0=v_~last~0_295} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {54279#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:00:15,230 INFO L290 TraceCheckUtils]: 14: Hoare triple {54279#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [217] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {54279#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:00:15,231 INFO L290 TraceCheckUtils]: 15: Hoare triple {54279#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [218] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_386| |v_main_#t~post5_382|))) (or (and .cse0 (= v_main_~c~0_669 v_main_~c~0_670) (or (not (< v_main_~c~0_670 v_~SIZE~0_266)) (not (< v_main_~c~0_670 v_~last~0_296)))) (and (< v_main_~c~0_670 v_main_~c~0_669) (< v_main_~c~0_669 (+ v_~last~0_296 1)) (< v_main_~c~0_669 (+ v_~SIZE~0_266 1))) (and (= v_~SIZE~0_266 v_~SIZE~0_266) .cse0 (= v_main_~c~0_670 v_main_~c~0_669) (= v_~last~0_296 v_~last~0_296)))) InVars {~SIZE~0=v_~SIZE~0_266, main_~c~0=v_main_~c~0_670, main_#t~post5=|v_main_#t~post5_386|, ~last~0=v_~last~0_296} OutVars{~SIZE~0=v_~SIZE~0_266, main_#t~post5=|v_main_#t~post5_382|, main_~c~0=v_main_~c~0_669, ~last~0=v_~last~0_296} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {54279#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:00:15,231 INFO L290 TraceCheckUtils]: 16: Hoare triple {54279#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [215] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {54289#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:00:15,232 INFO L290 TraceCheckUtils]: 17: Hoare triple {54289#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {54223#false} is VALID [2022-04-28 04:00:15,232 INFO L290 TraceCheckUtils]: 18: Hoare triple {54223#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {54223#false} is VALID [2022-04-28 04:00:15,232 INFO L290 TraceCheckUtils]: 19: Hoare triple {54223#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {54223#false} is VALID [2022-04-28 04:00:15,232 INFO L290 TraceCheckUtils]: 20: Hoare triple {54223#false} assume !(~d~0 == ~SIZE~0); {54223#false} is VALID [2022-04-28 04:00:15,232 INFO L272 TraceCheckUtils]: 21: Hoare triple {54223#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {54223#false} is VALID [2022-04-28 04:00:15,232 INFO L290 TraceCheckUtils]: 22: Hoare triple {54223#false} ~cond := #in~cond; {54223#false} is VALID [2022-04-28 04:00:15,232 INFO L290 TraceCheckUtils]: 23: Hoare triple {54223#false} assume 0 == ~cond; {54223#false} is VALID [2022-04-28 04:00:15,232 INFO L290 TraceCheckUtils]: 24: Hoare triple {54223#false} assume !false; {54223#false} is VALID [2022-04-28 04:00:15,232 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:00:15,232 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:00:15,576 INFO L290 TraceCheckUtils]: 24: Hoare triple {54223#false} assume !false; {54223#false} is VALID [2022-04-28 04:00:15,577 INFO L290 TraceCheckUtils]: 23: Hoare triple {54223#false} assume 0 == ~cond; {54223#false} is VALID [2022-04-28 04:00:15,577 INFO L290 TraceCheckUtils]: 22: Hoare triple {54223#false} ~cond := #in~cond; {54223#false} is VALID [2022-04-28 04:00:15,577 INFO L272 TraceCheckUtils]: 21: Hoare triple {54223#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {54223#false} is VALID [2022-04-28 04:00:15,577 INFO L290 TraceCheckUtils]: 20: Hoare triple {54223#false} assume !(~d~0 == ~SIZE~0); {54223#false} is VALID [2022-04-28 04:00:15,577 INFO L290 TraceCheckUtils]: 19: Hoare triple {54223#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {54223#false} is VALID [2022-04-28 04:00:15,577 INFO L290 TraceCheckUtils]: 18: Hoare triple {54223#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {54223#false} is VALID [2022-04-28 04:00:15,577 INFO L290 TraceCheckUtils]: 17: Hoare triple {54335#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {54223#false} is VALID [2022-04-28 04:00:15,578 INFO L290 TraceCheckUtils]: 16: Hoare triple {54339#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [215] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {54335#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:00:15,578 INFO L290 TraceCheckUtils]: 15: Hoare triple {54339#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [218] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_386| |v_main_#t~post5_382|))) (or (and .cse0 (= v_main_~c~0_669 v_main_~c~0_670) (or (not (< v_main_~c~0_670 v_~SIZE~0_266)) (not (< v_main_~c~0_670 v_~last~0_296)))) (and (< v_main_~c~0_670 v_main_~c~0_669) (< v_main_~c~0_669 (+ v_~last~0_296 1)) (< v_main_~c~0_669 (+ v_~SIZE~0_266 1))) (and (= v_~SIZE~0_266 v_~SIZE~0_266) .cse0 (= v_main_~c~0_670 v_main_~c~0_669) (= v_~last~0_296 v_~last~0_296)))) InVars {~SIZE~0=v_~SIZE~0_266, main_~c~0=v_main_~c~0_670, main_#t~post5=|v_main_#t~post5_386|, ~last~0=v_~last~0_296} OutVars{~SIZE~0=v_~SIZE~0_266, main_#t~post5=|v_main_#t~post5_382|, main_~c~0=v_main_~c~0_669, ~last~0=v_~last~0_296} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {54339#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:00:15,579 INFO L290 TraceCheckUtils]: 14: Hoare triple {54339#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [217] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {54339#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:00:15,579 INFO L290 TraceCheckUtils]: 13: Hoare triple {54349#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [216] L27-3-->L27-4_primed: Formula: (let ((.cse3 (<= v_~last~0_295 v_main_~c~0_668)) (.cse0 (= v_main_~st~0_358 v_main_~st~0_357)) (.cse1 (= |v_main_#t~post5_383| |v_main_#t~post5_381|)) (.cse2 (= v_main_~c~0_668 v_main_~c~0_667))) (or (and .cse0 .cse1 .cse2 (or (not (< v_main_~c~0_668 v_~SIZE~0_265)) (not .cse3))) (and (= v_main_~st~0_357 0) (< v_main_~c~0_667 (+ v_~SIZE~0_265 1)) (< v_main_~c~0_668 v_main_~c~0_667) .cse3) (and .cse0 (= v_~last~0_295 v_~last~0_295) .cse1 .cse2 (= v_~SIZE~0_265 v_~SIZE~0_265)))) InVars {~SIZE~0=v_~SIZE~0_265, main_~c~0=v_main_~c~0_668, main_#t~post5=|v_main_#t~post5_383|, main_~st~0=v_main_~st~0_358, ~last~0=v_~last~0_295} OutVars{~SIZE~0=v_~SIZE~0_265, main_#t~post5=|v_main_#t~post5_381|, main_~c~0=v_main_~c~0_667, main_~st~0=v_main_~st~0_357, ~last~0=v_~last~0_295} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {54339#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:00:15,580 INFO L290 TraceCheckUtils]: 12: Hoare triple {54353#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {54349#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:00:15,580 INFO L290 TraceCheckUtils]: 11: Hoare triple {54353#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {54353#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:15,580 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {54222#true} {54353#(< 1 ~SIZE~0)} #86#return; {54353#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:15,580 INFO L290 TraceCheckUtils]: 9: Hoare triple {54222#true} assume true; {54222#true} is VALID [2022-04-28 04:00:15,581 INFO L290 TraceCheckUtils]: 8: Hoare triple {54222#true} assume !(0 == ~cond); {54222#true} is VALID [2022-04-28 04:00:15,581 INFO L290 TraceCheckUtils]: 7: Hoare triple {54222#true} ~cond := #in~cond; {54222#true} is VALID [2022-04-28 04:00:15,581 INFO L272 TraceCheckUtils]: 6: Hoare triple {54353#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {54222#true} is VALID [2022-04-28 04:00:15,581 INFO L290 TraceCheckUtils]: 5: Hoare triple {54353#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {54353#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:15,581 INFO L272 TraceCheckUtils]: 4: Hoare triple {54353#(< 1 ~SIZE~0)} call #t~ret7 := main(); {54353#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:15,582 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {54353#(< 1 ~SIZE~0)} {54222#true} #90#return; {54353#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:15,582 INFO L290 TraceCheckUtils]: 2: Hoare triple {54353#(< 1 ~SIZE~0)} assume true; {54353#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:15,582 INFO L290 TraceCheckUtils]: 1: Hoare triple {54222#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {54353#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:15,582 INFO L272 TraceCheckUtils]: 0: Hoare triple {54222#true} call ULTIMATE.init(); {54222#true} is VALID [2022-04-28 04:00:15,583 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:00:15,583 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [285152363] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:00:15,583 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:00:15,583 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:00:16,193 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:00:16,193 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1057616007] [2022-04-28 04:00:16,193 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1057616007] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:00:16,193 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:00:16,193 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [21] imperfect sequences [] total 21 [2022-04-28 04:00:16,193 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [994248680] [2022-04-28 04:00:16,193 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:00:16,194 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 21 states have (on average 1.9047619047619047) internal successors, (40), 20 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 46 [2022-04-28 04:00:16,206 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:00:16,206 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 21 states, 21 states have (on average 1.9047619047619047) internal successors, (40), 20 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:00:16,244 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:00:16,244 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2022-04-28 04:00:16,244 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:00:16,244 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2022-04-28 04:00:16,244 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=200, Invalid=670, Unknown=0, NotChecked=0, Total=870 [2022-04-28 04:00:16,244 INFO L87 Difference]: Start difference. First operand 262 states and 316 transitions. Second operand has 21 states, 21 states have (on average 1.9047619047619047) internal successors, (40), 20 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:00:18,883 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:00:18,883 INFO L93 Difference]: Finished difference Result 499 states and 602 transitions. [2022-04-28 04:00:18,883 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2022-04-28 04:00:18,883 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 21 states have (on average 1.9047619047619047) internal successors, (40), 20 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 46 [2022-04-28 04:00:18,883 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:00:18,883 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 21 states have (on average 1.9047619047619047) internal successors, (40), 20 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:00:18,884 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 99 transitions. [2022-04-28 04:00:18,884 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 21 states have (on average 1.9047619047619047) internal successors, (40), 20 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:00:18,885 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 99 transitions. [2022-04-28 04:00:18,885 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 21 states and 99 transitions. [2022-04-28 04:00:18,959 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 99 edges. 99 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:00:18,963 INFO L225 Difference]: With dead ends: 499 [2022-04-28 04:00:18,963 INFO L226 Difference]: Without dead ends: 301 [2022-04-28 04:00:18,964 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 94 GetRequests, 54 SyntacticMatches, 9 SemanticMatches, 31 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 588 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=237, Invalid=819, Unknown=0, NotChecked=0, Total=1056 [2022-04-28 04:00:18,964 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 63 mSDsluCounter, 19 mSDsCounter, 0 mSdLazyCounter, 703 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 64 SdHoareTripleChecker+Valid, 43 SdHoareTripleChecker+Invalid, 720 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 703 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-28 04:00:18,965 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [64 Valid, 43 Invalid, 720 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 703 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-28 04:00:18,965 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 301 states. [2022-04-28 04:00:20,119 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 301 to 262. [2022-04-28 04:00:20,119 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:00:20,119 INFO L82 GeneralOperation]: Start isEquivalent. First operand 301 states. Second operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:00:20,120 INFO L74 IsIncluded]: Start isIncluded. First operand 301 states. Second operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:00:20,120 INFO L87 Difference]: Start difference. First operand 301 states. Second operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:00:20,123 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:00:20,123 INFO L93 Difference]: Finished difference Result 301 states and 359 transitions. [2022-04-28 04:00:20,123 INFO L276 IsEmpty]: Start isEmpty. Operand 301 states and 359 transitions. [2022-04-28 04:00:20,127 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:00:20,127 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:00:20,127 INFO L74 IsIncluded]: Start isIncluded. First operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 301 states. [2022-04-28 04:00:20,127 INFO L87 Difference]: Start difference. First operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 301 states. [2022-04-28 04:00:20,131 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:00:20,131 INFO L93 Difference]: Finished difference Result 301 states and 359 transitions. [2022-04-28 04:00:20,131 INFO L276 IsEmpty]: Start isEmpty. Operand 301 states and 359 transitions. [2022-04-28 04:00:20,131 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:00:20,131 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:00:20,131 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:00:20,131 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:00:20,131 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:00:20,135 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 262 states to 262 states and 316 transitions. [2022-04-28 04:00:20,135 INFO L78 Accepts]: Start accepts. Automaton has 262 states and 316 transitions. Word has length 46 [2022-04-28 04:00:20,135 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:00:20,135 INFO L495 AbstractCegarLoop]: Abstraction has 262 states and 316 transitions. [2022-04-28 04:00:20,135 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 21 states have (on average 1.9047619047619047) internal successors, (40), 20 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:00:20,135 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 262 states and 316 transitions. [2022-04-28 04:00:20,879 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 316 edges. 316 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:00:20,879 INFO L276 IsEmpty]: Start isEmpty. Operand 262 states and 316 transitions. [2022-04-28 04:00:20,879 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-04-28 04:00:20,879 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:00:20,879 INFO L195 NwaCegarLoop]: trace histogram [8, 8, 6, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:00:20,901 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (29)] Forceful destruction successful, exit code 0 [2022-04-28 04:00:21,080 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable36,29 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:00:21,080 INFO L420 AbstractCegarLoop]: === Iteration 38 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:00:21,080 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:00:21,080 INFO L85 PathProgramCache]: Analyzing trace with hash -1193869346, now seen corresponding path program 27 times [2022-04-28 04:00:21,080 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:00:21,081 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [721344613] [2022-04-28 04:00:21,338 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:00:21,545 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:00:21,546 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:00:21,549 INFO L85 PathProgramCache]: Analyzing trace with hash -532233023, now seen corresponding path program 1 times [2022-04-28 04:00:21,549 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:00:21,549 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2057898664] [2022-04-28 04:00:21,549 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:00:21,549 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:00:21,556 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:00:21,603 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:00:21,609 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:00:21,615 INFO L290 TraceCheckUtils]: 0: Hoare triple {56552#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {56544#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:21,615 INFO L290 TraceCheckUtils]: 1: Hoare triple {56544#(<= 200000 ~SIZE~0)} assume true; {56544#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:21,616 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {56544#(<= 200000 ~SIZE~0)} {56539#true} #90#return; {56544#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:21,616 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:00:21,631 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:00:21,633 INFO L290 TraceCheckUtils]: 0: Hoare triple {56539#true} ~cond := #in~cond; {56539#true} is VALID [2022-04-28 04:00:21,633 INFO L290 TraceCheckUtils]: 1: Hoare triple {56539#true} assume !(0 == ~cond); {56539#true} is VALID [2022-04-28 04:00:21,633 INFO L290 TraceCheckUtils]: 2: Hoare triple {56539#true} assume true; {56539#true} is VALID [2022-04-28 04:00:21,633 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {56539#true} {56544#(<= 200000 ~SIZE~0)} #86#return; {56544#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:21,634 INFO L272 TraceCheckUtils]: 0: Hoare triple {56539#true} call ULTIMATE.init(); {56552#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:00:21,634 INFO L290 TraceCheckUtils]: 1: Hoare triple {56552#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {56544#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:21,635 INFO L290 TraceCheckUtils]: 2: Hoare triple {56544#(<= 200000 ~SIZE~0)} assume true; {56544#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:21,635 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {56544#(<= 200000 ~SIZE~0)} {56539#true} #90#return; {56544#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:21,635 INFO L272 TraceCheckUtils]: 4: Hoare triple {56544#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {56544#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:21,635 INFO L290 TraceCheckUtils]: 5: Hoare triple {56544#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {56544#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:21,636 INFO L272 TraceCheckUtils]: 6: Hoare triple {56544#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {56539#true} is VALID [2022-04-28 04:00:21,636 INFO L290 TraceCheckUtils]: 7: Hoare triple {56539#true} ~cond := #in~cond; {56539#true} is VALID [2022-04-28 04:00:21,636 INFO L290 TraceCheckUtils]: 8: Hoare triple {56539#true} assume !(0 == ~cond); {56539#true} is VALID [2022-04-28 04:00:21,636 INFO L290 TraceCheckUtils]: 9: Hoare triple {56539#true} assume true; {56539#true} is VALID [2022-04-28 04:00:21,636 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {56539#true} {56544#(<= 200000 ~SIZE~0)} #86#return; {56544#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:21,636 INFO L290 TraceCheckUtils]: 11: Hoare triple {56544#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {56544#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:21,637 INFO L290 TraceCheckUtils]: 12: Hoare triple {56544#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {56549#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:00:21,638 INFO L290 TraceCheckUtils]: 13: Hoare triple {56549#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [220] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_396| |v_main_#t~post5_394|)) (.cse1 (= v_main_~c~0_693 v_main_~c~0_692)) (.cse2 (<= v_~last~0_305 v_main_~c~0_693))) (or (and (= v_~SIZE~0_274 v_~SIZE~0_274) .cse0 .cse1 (= v_~last~0_305 v_~last~0_305) (= v_main_~st~0_370 v_main_~st~0_369)) (and (or (not (< v_main_~c~0_693 v_~SIZE~0_274)) (not .cse2)) .cse0 (= v_main_~st~0_369 v_main_~st~0_370) .cse1) (and (< v_main_~c~0_693 v_main_~c~0_692) (< v_main_~c~0_692 (+ v_~SIZE~0_274 1)) .cse2 (= v_main_~st~0_369 0)))) InVars {~SIZE~0=v_~SIZE~0_274, main_~c~0=v_main_~c~0_693, main_#t~post5=|v_main_#t~post5_396|, main_~st~0=v_main_~st~0_370, ~last~0=v_~last~0_305} OutVars{~SIZE~0=v_~SIZE~0_274, main_#t~post5=|v_main_#t~post5_394|, main_~c~0=v_main_~c~0_692, main_~st~0=v_main_~st~0_369, ~last~0=v_~last~0_305} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {56550#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:00:21,638 INFO L290 TraceCheckUtils]: 14: Hoare triple {56550#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [221] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {56550#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:00:21,638 INFO L290 TraceCheckUtils]: 15: Hoare triple {56550#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [222] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_695 v_main_~c~0_694)) (.cse1 (= |v_main_#t~post5_399| |v_main_#t~post5_395|))) (or (and (= v_~SIZE~0_275 v_~SIZE~0_275) .cse0 (= v_~last~0_306 v_~last~0_306) .cse1) (and (< v_main_~c~0_694 (+ v_~last~0_306 1)) (< v_main_~c~0_694 (+ v_~SIZE~0_275 1)) (< v_main_~c~0_695 v_main_~c~0_694)) (and (or (not (< v_main_~c~0_695 v_~last~0_306)) (not (< v_main_~c~0_695 v_~SIZE~0_275))) .cse0 .cse1))) InVars {~SIZE~0=v_~SIZE~0_275, main_~c~0=v_main_~c~0_695, main_#t~post5=|v_main_#t~post5_399|, ~last~0=v_~last~0_306} OutVars{~SIZE~0=v_~SIZE~0_275, main_#t~post5=|v_main_#t~post5_395|, main_~c~0=v_main_~c~0_694, ~last~0=v_~last~0_306} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {56550#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:00:21,639 INFO L290 TraceCheckUtils]: 16: Hoare triple {56550#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [219] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {56551#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:00:21,639 INFO L290 TraceCheckUtils]: 17: Hoare triple {56551#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {56540#false} is VALID [2022-04-28 04:00:21,639 INFO L290 TraceCheckUtils]: 18: Hoare triple {56540#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {56540#false} is VALID [2022-04-28 04:00:21,639 INFO L290 TraceCheckUtils]: 19: Hoare triple {56540#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {56540#false} is VALID [2022-04-28 04:00:21,639 INFO L290 TraceCheckUtils]: 20: Hoare triple {56540#false} assume !(~d~0 == ~SIZE~0); {56540#false} is VALID [2022-04-28 04:00:21,639 INFO L272 TraceCheckUtils]: 21: Hoare triple {56540#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {56540#false} is VALID [2022-04-28 04:00:21,640 INFO L290 TraceCheckUtils]: 22: Hoare triple {56540#false} ~cond := #in~cond; {56540#false} is VALID [2022-04-28 04:00:21,640 INFO L290 TraceCheckUtils]: 23: Hoare triple {56540#false} assume 0 == ~cond; {56540#false} is VALID [2022-04-28 04:00:21,640 INFO L290 TraceCheckUtils]: 24: Hoare triple {56540#false} assume !false; {56540#false} is VALID [2022-04-28 04:00:21,640 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:00:21,640 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:00:21,640 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2057898664] [2022-04-28 04:00:21,640 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2057898664] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:00:21,640 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1859162459] [2022-04-28 04:00:21,640 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:00:21,640 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:00:21,640 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:00:21,641 INFO L229 MonitoredProcess]: Starting monitored process 30 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:00:21,642 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (30)] Waiting until timeout for monitored process [2022-04-28 04:00:21,670 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:00:21,670 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:00:21,677 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:00:21,678 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:00:21,970 INFO L272 TraceCheckUtils]: 0: Hoare triple {56539#true} call ULTIMATE.init(); {56539#true} is VALID [2022-04-28 04:00:21,970 INFO L290 TraceCheckUtils]: 1: Hoare triple {56539#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {56544#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:21,970 INFO L290 TraceCheckUtils]: 2: Hoare triple {56544#(<= 200000 ~SIZE~0)} assume true; {56544#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:21,971 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {56544#(<= 200000 ~SIZE~0)} {56539#true} #90#return; {56544#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:21,971 INFO L272 TraceCheckUtils]: 4: Hoare triple {56544#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {56544#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:21,971 INFO L290 TraceCheckUtils]: 5: Hoare triple {56544#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {56544#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:21,972 INFO L272 TraceCheckUtils]: 6: Hoare triple {56544#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {56544#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:21,972 INFO L290 TraceCheckUtils]: 7: Hoare triple {56544#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {56544#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:21,972 INFO L290 TraceCheckUtils]: 8: Hoare triple {56544#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {56544#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:21,973 INFO L290 TraceCheckUtils]: 9: Hoare triple {56544#(<= 200000 ~SIZE~0)} assume true; {56544#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:21,973 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {56544#(<= 200000 ~SIZE~0)} {56544#(<= 200000 ~SIZE~0)} #86#return; {56544#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:21,973 INFO L290 TraceCheckUtils]: 11: Hoare triple {56544#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {56544#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:21,973 INFO L290 TraceCheckUtils]: 12: Hoare triple {56544#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {56592#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:00:21,974 INFO L290 TraceCheckUtils]: 13: Hoare triple {56592#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [220] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_396| |v_main_#t~post5_394|)) (.cse1 (= v_main_~c~0_693 v_main_~c~0_692)) (.cse2 (<= v_~last~0_305 v_main_~c~0_693))) (or (and (= v_~SIZE~0_274 v_~SIZE~0_274) .cse0 .cse1 (= v_~last~0_305 v_~last~0_305) (= v_main_~st~0_370 v_main_~st~0_369)) (and (or (not (< v_main_~c~0_693 v_~SIZE~0_274)) (not .cse2)) .cse0 (= v_main_~st~0_369 v_main_~st~0_370) .cse1) (and (< v_main_~c~0_693 v_main_~c~0_692) (< v_main_~c~0_692 (+ v_~SIZE~0_274 1)) .cse2 (= v_main_~st~0_369 0)))) InVars {~SIZE~0=v_~SIZE~0_274, main_~c~0=v_main_~c~0_693, main_#t~post5=|v_main_#t~post5_396|, main_~st~0=v_main_~st~0_370, ~last~0=v_~last~0_305} OutVars{~SIZE~0=v_~SIZE~0_274, main_#t~post5=|v_main_#t~post5_394|, main_~c~0=v_main_~c~0_692, main_~st~0=v_main_~st~0_369, ~last~0=v_~last~0_305} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {56596#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:00:21,975 INFO L290 TraceCheckUtils]: 14: Hoare triple {56596#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [221] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {56596#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:00:21,975 INFO L290 TraceCheckUtils]: 15: Hoare triple {56596#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [222] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_695 v_main_~c~0_694)) (.cse1 (= |v_main_#t~post5_399| |v_main_#t~post5_395|))) (or (and (= v_~SIZE~0_275 v_~SIZE~0_275) .cse0 (= v_~last~0_306 v_~last~0_306) .cse1) (and (< v_main_~c~0_694 (+ v_~last~0_306 1)) (< v_main_~c~0_694 (+ v_~SIZE~0_275 1)) (< v_main_~c~0_695 v_main_~c~0_694)) (and (or (not (< v_main_~c~0_695 v_~last~0_306)) (not (< v_main_~c~0_695 v_~SIZE~0_275))) .cse0 .cse1))) InVars {~SIZE~0=v_~SIZE~0_275, main_~c~0=v_main_~c~0_695, main_#t~post5=|v_main_#t~post5_399|, ~last~0=v_~last~0_306} OutVars{~SIZE~0=v_~SIZE~0_275, main_#t~post5=|v_main_#t~post5_395|, main_~c~0=v_main_~c~0_694, ~last~0=v_~last~0_306} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {56596#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:00:21,976 INFO L290 TraceCheckUtils]: 16: Hoare triple {56596#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [219] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {56606#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:00:21,976 INFO L290 TraceCheckUtils]: 17: Hoare triple {56606#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {56540#false} is VALID [2022-04-28 04:00:21,976 INFO L290 TraceCheckUtils]: 18: Hoare triple {56540#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {56540#false} is VALID [2022-04-28 04:00:21,976 INFO L290 TraceCheckUtils]: 19: Hoare triple {56540#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {56540#false} is VALID [2022-04-28 04:00:21,976 INFO L290 TraceCheckUtils]: 20: Hoare triple {56540#false} assume !(~d~0 == ~SIZE~0); {56540#false} is VALID [2022-04-28 04:00:21,977 INFO L272 TraceCheckUtils]: 21: Hoare triple {56540#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {56540#false} is VALID [2022-04-28 04:00:21,977 INFO L290 TraceCheckUtils]: 22: Hoare triple {56540#false} ~cond := #in~cond; {56540#false} is VALID [2022-04-28 04:00:21,977 INFO L290 TraceCheckUtils]: 23: Hoare triple {56540#false} assume 0 == ~cond; {56540#false} is VALID [2022-04-28 04:00:21,977 INFO L290 TraceCheckUtils]: 24: Hoare triple {56540#false} assume !false; {56540#false} is VALID [2022-04-28 04:00:21,977 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:00:21,977 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:00:22,341 INFO L290 TraceCheckUtils]: 24: Hoare triple {56540#false} assume !false; {56540#false} is VALID [2022-04-28 04:00:22,345 INFO L290 TraceCheckUtils]: 23: Hoare triple {56540#false} assume 0 == ~cond; {56540#false} is VALID [2022-04-28 04:00:22,345 INFO L290 TraceCheckUtils]: 22: Hoare triple {56540#false} ~cond := #in~cond; {56540#false} is VALID [2022-04-28 04:00:22,345 INFO L272 TraceCheckUtils]: 21: Hoare triple {56540#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {56540#false} is VALID [2022-04-28 04:00:22,345 INFO L290 TraceCheckUtils]: 20: Hoare triple {56540#false} assume !(~d~0 == ~SIZE~0); {56540#false} is VALID [2022-04-28 04:00:22,346 INFO L290 TraceCheckUtils]: 19: Hoare triple {56540#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {56540#false} is VALID [2022-04-28 04:00:22,346 INFO L290 TraceCheckUtils]: 18: Hoare triple {56540#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {56540#false} is VALID [2022-04-28 04:00:22,346 INFO L290 TraceCheckUtils]: 17: Hoare triple {56652#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {56540#false} is VALID [2022-04-28 04:00:22,347 INFO L290 TraceCheckUtils]: 16: Hoare triple {56656#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [219] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {56652#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:00:22,347 INFO L290 TraceCheckUtils]: 15: Hoare triple {56656#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [222] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_695 v_main_~c~0_694)) (.cse1 (= |v_main_#t~post5_399| |v_main_#t~post5_395|))) (or (and (= v_~SIZE~0_275 v_~SIZE~0_275) .cse0 (= v_~last~0_306 v_~last~0_306) .cse1) (and (< v_main_~c~0_694 (+ v_~last~0_306 1)) (< v_main_~c~0_694 (+ v_~SIZE~0_275 1)) (< v_main_~c~0_695 v_main_~c~0_694)) (and (or (not (< v_main_~c~0_695 v_~last~0_306)) (not (< v_main_~c~0_695 v_~SIZE~0_275))) .cse0 .cse1))) InVars {~SIZE~0=v_~SIZE~0_275, main_~c~0=v_main_~c~0_695, main_#t~post5=|v_main_#t~post5_399|, ~last~0=v_~last~0_306} OutVars{~SIZE~0=v_~SIZE~0_275, main_#t~post5=|v_main_#t~post5_395|, main_~c~0=v_main_~c~0_694, ~last~0=v_~last~0_306} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {56656#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:00:22,348 INFO L290 TraceCheckUtils]: 14: Hoare triple {56656#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [221] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {56656#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:00:22,348 INFO L290 TraceCheckUtils]: 13: Hoare triple {56666#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [220] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_396| |v_main_#t~post5_394|)) (.cse1 (= v_main_~c~0_693 v_main_~c~0_692)) (.cse2 (<= v_~last~0_305 v_main_~c~0_693))) (or (and (= v_~SIZE~0_274 v_~SIZE~0_274) .cse0 .cse1 (= v_~last~0_305 v_~last~0_305) (= v_main_~st~0_370 v_main_~st~0_369)) (and (or (not (< v_main_~c~0_693 v_~SIZE~0_274)) (not .cse2)) .cse0 (= v_main_~st~0_369 v_main_~st~0_370) .cse1) (and (< v_main_~c~0_693 v_main_~c~0_692) (< v_main_~c~0_692 (+ v_~SIZE~0_274 1)) .cse2 (= v_main_~st~0_369 0)))) InVars {~SIZE~0=v_~SIZE~0_274, main_~c~0=v_main_~c~0_693, main_#t~post5=|v_main_#t~post5_396|, main_~st~0=v_main_~st~0_370, ~last~0=v_~last~0_305} OutVars{~SIZE~0=v_~SIZE~0_274, main_#t~post5=|v_main_#t~post5_394|, main_~c~0=v_main_~c~0_692, main_~st~0=v_main_~st~0_369, ~last~0=v_~last~0_305} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {56656#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:00:22,349 INFO L290 TraceCheckUtils]: 12: Hoare triple {56670#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {56666#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:00:22,349 INFO L290 TraceCheckUtils]: 11: Hoare triple {56670#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {56670#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:22,350 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {56539#true} {56670#(< 1 ~SIZE~0)} #86#return; {56670#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:22,350 INFO L290 TraceCheckUtils]: 9: Hoare triple {56539#true} assume true; {56539#true} is VALID [2022-04-28 04:00:22,350 INFO L290 TraceCheckUtils]: 8: Hoare triple {56539#true} assume !(0 == ~cond); {56539#true} is VALID [2022-04-28 04:00:22,350 INFO L290 TraceCheckUtils]: 7: Hoare triple {56539#true} ~cond := #in~cond; {56539#true} is VALID [2022-04-28 04:00:22,350 INFO L272 TraceCheckUtils]: 6: Hoare triple {56670#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {56539#true} is VALID [2022-04-28 04:00:22,350 INFO L290 TraceCheckUtils]: 5: Hoare triple {56670#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {56670#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:22,351 INFO L272 TraceCheckUtils]: 4: Hoare triple {56670#(< 1 ~SIZE~0)} call #t~ret7 := main(); {56670#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:22,351 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {56670#(< 1 ~SIZE~0)} {56539#true} #90#return; {56670#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:22,351 INFO L290 TraceCheckUtils]: 2: Hoare triple {56670#(< 1 ~SIZE~0)} assume true; {56670#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:22,352 INFO L290 TraceCheckUtils]: 1: Hoare triple {56539#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {56670#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:22,352 INFO L272 TraceCheckUtils]: 0: Hoare triple {56539#true} call ULTIMATE.init(); {56539#true} is VALID [2022-04-28 04:00:22,352 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:00:22,352 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1859162459] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:00:22,352 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:00:22,352 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:00:22,948 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:00:22,948 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [721344613] [2022-04-28 04:00:22,948 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [721344613] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:00:22,948 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:00:22,948 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [22] imperfect sequences [] total 22 [2022-04-28 04:00:22,948 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [575022343] [2022-04-28 04:00:22,948 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:00:22,949 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 22 states have (on average 1.8181818181818181) internal successors, (40), 21 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 46 [2022-04-28 04:00:22,949 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:00:22,949 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 22 states, 22 states have (on average 1.8181818181818181) internal successors, (40), 21 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:00:22,979 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:00:22,979 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-04-28 04:00:22,979 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:00:22,979 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-04-28 04:00:22,979 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=215, Invalid=715, Unknown=0, NotChecked=0, Total=930 [2022-04-28 04:00:22,980 INFO L87 Difference]: Start difference. First operand 262 states and 316 transitions. Second operand has 22 states, 22 states have (on average 1.8181818181818181) internal successors, (40), 21 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:00:25,637 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:00:25,637 INFO L93 Difference]: Finished difference Result 494 states and 597 transitions. [2022-04-28 04:00:25,637 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-28 04:00:25,637 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 22 states have (on average 1.8181818181818181) internal successors, (40), 21 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 46 [2022-04-28 04:00:25,637 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:00:25,637 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 22 states have (on average 1.8181818181818181) internal successors, (40), 21 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:00:25,638 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 100 transitions. [2022-04-28 04:00:25,638 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 22 states have (on average 1.8181818181818181) internal successors, (40), 21 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:00:25,639 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 100 transitions. [2022-04-28 04:00:25,639 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 100 transitions. [2022-04-28 04:00:25,706 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 100 edges. 100 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:00:25,711 INFO L225 Difference]: With dead ends: 494 [2022-04-28 04:00:25,711 INFO L226 Difference]: Without dead ends: 296 [2022-04-28 04:00:25,711 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 94 GetRequests, 54 SyntacticMatches, 8 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 584 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=254, Invalid=868, Unknown=0, NotChecked=0, Total=1122 [2022-04-28 04:00:25,712 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 69 mSDsluCounter, 15 mSDsCounter, 0 mSdLazyCounter, 807 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 70 SdHoareTripleChecker+Valid, 39 SdHoareTripleChecker+Invalid, 825 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 807 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-04-28 04:00:25,712 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [70 Valid, 39 Invalid, 825 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 807 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-04-28 04:00:25,712 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 296 states. [2022-04-28 04:00:26,902 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 296 to 262. [2022-04-28 04:00:26,902 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:00:26,903 INFO L82 GeneralOperation]: Start isEquivalent. First operand 296 states. Second operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:00:26,903 INFO L74 IsIncluded]: Start isIncluded. First operand 296 states. Second operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:00:26,903 INFO L87 Difference]: Start difference. First operand 296 states. Second operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:00:26,907 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:00:26,907 INFO L93 Difference]: Finished difference Result 296 states and 354 transitions. [2022-04-28 04:00:26,907 INFO L276 IsEmpty]: Start isEmpty. Operand 296 states and 354 transitions. [2022-04-28 04:00:26,907 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:00:26,907 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:00:26,907 INFO L74 IsIncluded]: Start isIncluded. First operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 296 states. [2022-04-28 04:00:26,907 INFO L87 Difference]: Start difference. First operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 296 states. [2022-04-28 04:00:26,911 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:00:26,911 INFO L93 Difference]: Finished difference Result 296 states and 354 transitions. [2022-04-28 04:00:26,911 INFO L276 IsEmpty]: Start isEmpty. Operand 296 states and 354 transitions. [2022-04-28 04:00:26,911 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:00:26,911 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:00:26,911 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:00:26,911 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:00:26,911 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 262 states, 247 states have (on average 1.2105263157894737) internal successors, (299), 250 states have internal predecessors, (299), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:00:26,914 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 262 states to 262 states and 316 transitions. [2022-04-28 04:00:26,915 INFO L78 Accepts]: Start accepts. Automaton has 262 states and 316 transitions. Word has length 46 [2022-04-28 04:00:26,915 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:00:26,915 INFO L495 AbstractCegarLoop]: Abstraction has 262 states and 316 transitions. [2022-04-28 04:00:26,915 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 22 states, 22 states have (on average 1.8181818181818181) internal successors, (40), 21 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:00:26,915 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 262 states and 316 transitions. [2022-04-28 04:00:27,661 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 316 edges. 316 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:00:27,661 INFO L276 IsEmpty]: Start isEmpty. Operand 262 states and 316 transitions. [2022-04-28 04:00:27,661 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-04-28 04:00:27,661 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:00:27,661 INFO L195 NwaCegarLoop]: trace histogram [8, 8, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:00:27,679 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (30)] Forceful destruction successful, exit code 0 [2022-04-28 04:00:27,863 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 30 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable37 [2022-04-28 04:00:27,863 INFO L420 AbstractCegarLoop]: === Iteration 39 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:00:27,864 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:00:27,864 INFO L85 PathProgramCache]: Analyzing trace with hash 2089980700, now seen corresponding path program 28 times [2022-04-28 04:00:27,864 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:00:27,864 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [781363079] [2022-04-28 04:00:31,998 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:00:32,118 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:00:32,306 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:00:32,307 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:00:32,310 INFO L85 PathProgramCache]: Analyzing trace with hash 1960289729, now seen corresponding path program 1 times [2022-04-28 04:00:32,310 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:00:32,310 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [111975270] [2022-04-28 04:00:32,310 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:00:32,310 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:00:32,322 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:00:32,368 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:00:32,370 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:00:32,374 INFO L290 TraceCheckUtils]: 0: Hoare triple {58850#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {58842#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:32,374 INFO L290 TraceCheckUtils]: 1: Hoare triple {58842#(<= 200000 ~SIZE~0)} assume true; {58842#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:32,374 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {58842#(<= 200000 ~SIZE~0)} {58837#true} #90#return; {58842#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:32,375 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:00:32,375 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:00:32,377 INFO L290 TraceCheckUtils]: 0: Hoare triple {58837#true} ~cond := #in~cond; {58837#true} is VALID [2022-04-28 04:00:32,377 INFO L290 TraceCheckUtils]: 1: Hoare triple {58837#true} assume !(0 == ~cond); {58837#true} is VALID [2022-04-28 04:00:32,377 INFO L290 TraceCheckUtils]: 2: Hoare triple {58837#true} assume true; {58837#true} is VALID [2022-04-28 04:00:32,378 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {58837#true} {58842#(<= 200000 ~SIZE~0)} #86#return; {58842#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:32,378 INFO L272 TraceCheckUtils]: 0: Hoare triple {58837#true} call ULTIMATE.init(); {58850#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:00:32,379 INFO L290 TraceCheckUtils]: 1: Hoare triple {58850#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {58842#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:32,379 INFO L290 TraceCheckUtils]: 2: Hoare triple {58842#(<= 200000 ~SIZE~0)} assume true; {58842#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:32,379 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {58842#(<= 200000 ~SIZE~0)} {58837#true} #90#return; {58842#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:32,380 INFO L272 TraceCheckUtils]: 4: Hoare triple {58842#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {58842#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:32,380 INFO L290 TraceCheckUtils]: 5: Hoare triple {58842#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {58842#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:32,380 INFO L272 TraceCheckUtils]: 6: Hoare triple {58842#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {58837#true} is VALID [2022-04-28 04:00:32,380 INFO L290 TraceCheckUtils]: 7: Hoare triple {58837#true} ~cond := #in~cond; {58837#true} is VALID [2022-04-28 04:00:32,380 INFO L290 TraceCheckUtils]: 8: Hoare triple {58837#true} assume !(0 == ~cond); {58837#true} is VALID [2022-04-28 04:00:32,380 INFO L290 TraceCheckUtils]: 9: Hoare triple {58837#true} assume true; {58837#true} is VALID [2022-04-28 04:00:32,381 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {58837#true} {58842#(<= 200000 ~SIZE~0)} #86#return; {58842#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:32,381 INFO L290 TraceCheckUtils]: 11: Hoare triple {58842#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {58842#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:32,381 INFO L290 TraceCheckUtils]: 12: Hoare triple {58842#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {58847#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:00:32,382 INFO L290 TraceCheckUtils]: 13: Hoare triple {58847#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [224] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_718 v_main_~c~0_717)) (.cse1 (= v_main_~st~0_381 v_main_~st~0_380)) (.cse2 (= |v_main_#t~post5_409| |v_main_#t~post5_407|)) (.cse3 (<= v_~last~0_315 v_main_~c~0_718))) (or (and .cse0 (= v_~SIZE~0_283 v_~SIZE~0_283) (= v_~last~0_315 v_~last~0_315) .cse1 .cse2) (and .cse0 (or (not (< v_main_~c~0_718 v_~SIZE~0_283)) (not .cse3)) .cse1 .cse2) (and (< v_main_~c~0_718 v_main_~c~0_717) (= v_main_~st~0_380 0) .cse3 (< v_main_~c~0_717 (+ v_~SIZE~0_283 1))))) InVars {~SIZE~0=v_~SIZE~0_283, main_~c~0=v_main_~c~0_718, main_#t~post5=|v_main_#t~post5_409|, main_~st~0=v_main_~st~0_381, ~last~0=v_~last~0_315} OutVars{~SIZE~0=v_~SIZE~0_283, main_#t~post5=|v_main_#t~post5_407|, main_~c~0=v_main_~c~0_717, main_~st~0=v_main_~st~0_380, ~last~0=v_~last~0_315} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {58848#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:00:32,383 INFO L290 TraceCheckUtils]: 14: Hoare triple {58848#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [225] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {58848#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:00:32,383 INFO L290 TraceCheckUtils]: 15: Hoare triple {58848#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [226] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_720 v_main_~c~0_719))) (or (and (= v_~SIZE~0_284 v_~SIZE~0_284) .cse0 (= |v_main_#t~post5_412| |v_main_#t~post5_408|) (= v_~last~0_316 v_~last~0_316)) (and (< v_main_~c~0_719 (+ v_~SIZE~0_284 1)) (< v_main_~c~0_720 v_main_~c~0_719) (< v_main_~c~0_719 (+ v_~last~0_316 1))) (and .cse0 (= |v_main_#t~post5_408| |v_main_#t~post5_412|) (or (not (< v_main_~c~0_720 v_~SIZE~0_284)) (not (< v_main_~c~0_720 v_~last~0_316)))))) InVars {~SIZE~0=v_~SIZE~0_284, main_~c~0=v_main_~c~0_720, main_#t~post5=|v_main_#t~post5_412|, ~last~0=v_~last~0_316} OutVars{~SIZE~0=v_~SIZE~0_284, main_#t~post5=|v_main_#t~post5_408|, main_~c~0=v_main_~c~0_719, ~last~0=v_~last~0_316} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {58848#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:00:32,384 INFO L290 TraceCheckUtils]: 16: Hoare triple {58848#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [223] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {58849#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:00:32,384 INFO L290 TraceCheckUtils]: 17: Hoare triple {58849#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {58838#false} is VALID [2022-04-28 04:00:32,384 INFO L290 TraceCheckUtils]: 18: Hoare triple {58838#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {58838#false} is VALID [2022-04-28 04:00:32,384 INFO L290 TraceCheckUtils]: 19: Hoare triple {58838#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {58838#false} is VALID [2022-04-28 04:00:32,384 INFO L290 TraceCheckUtils]: 20: Hoare triple {58838#false} assume !(~d~0 == ~SIZE~0); {58838#false} is VALID [2022-04-28 04:00:32,384 INFO L272 TraceCheckUtils]: 21: Hoare triple {58838#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {58838#false} is VALID [2022-04-28 04:00:32,384 INFO L290 TraceCheckUtils]: 22: Hoare triple {58838#false} ~cond := #in~cond; {58838#false} is VALID [2022-04-28 04:00:32,384 INFO L290 TraceCheckUtils]: 23: Hoare triple {58838#false} assume 0 == ~cond; {58838#false} is VALID [2022-04-28 04:00:32,384 INFO L290 TraceCheckUtils]: 24: Hoare triple {58838#false} assume !false; {58838#false} is VALID [2022-04-28 04:00:32,385 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:00:32,385 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:00:32,385 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [111975270] [2022-04-28 04:00:32,385 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [111975270] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:00:32,385 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [704921968] [2022-04-28 04:00:32,385 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:00:32,385 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:00:32,385 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:00:32,386 INFO L229 MonitoredProcess]: Starting monitored process 31 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:00:32,387 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (31)] Waiting until timeout for monitored process [2022-04-28 04:00:32,416 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:00:32,416 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:00:32,422 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:00:32,423 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:00:32,670 INFO L272 TraceCheckUtils]: 0: Hoare triple {58837#true} call ULTIMATE.init(); {58837#true} is VALID [2022-04-28 04:00:32,670 INFO L290 TraceCheckUtils]: 1: Hoare triple {58837#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {58842#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:32,670 INFO L290 TraceCheckUtils]: 2: Hoare triple {58842#(<= 200000 ~SIZE~0)} assume true; {58842#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:32,671 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {58842#(<= 200000 ~SIZE~0)} {58837#true} #90#return; {58842#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:32,671 INFO L272 TraceCheckUtils]: 4: Hoare triple {58842#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {58842#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:32,671 INFO L290 TraceCheckUtils]: 5: Hoare triple {58842#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {58842#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:32,672 INFO L272 TraceCheckUtils]: 6: Hoare triple {58842#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {58842#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:32,672 INFO L290 TraceCheckUtils]: 7: Hoare triple {58842#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {58842#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:32,672 INFO L290 TraceCheckUtils]: 8: Hoare triple {58842#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {58842#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:32,673 INFO L290 TraceCheckUtils]: 9: Hoare triple {58842#(<= 200000 ~SIZE~0)} assume true; {58842#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:32,673 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {58842#(<= 200000 ~SIZE~0)} {58842#(<= 200000 ~SIZE~0)} #86#return; {58842#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:32,673 INFO L290 TraceCheckUtils]: 11: Hoare triple {58842#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {58842#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:32,674 INFO L290 TraceCheckUtils]: 12: Hoare triple {58842#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {58890#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:00:32,674 INFO L290 TraceCheckUtils]: 13: Hoare triple {58890#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [224] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_718 v_main_~c~0_717)) (.cse1 (= v_main_~st~0_381 v_main_~st~0_380)) (.cse2 (= |v_main_#t~post5_409| |v_main_#t~post5_407|)) (.cse3 (<= v_~last~0_315 v_main_~c~0_718))) (or (and .cse0 (= v_~SIZE~0_283 v_~SIZE~0_283) (= v_~last~0_315 v_~last~0_315) .cse1 .cse2) (and .cse0 (or (not (< v_main_~c~0_718 v_~SIZE~0_283)) (not .cse3)) .cse1 .cse2) (and (< v_main_~c~0_718 v_main_~c~0_717) (= v_main_~st~0_380 0) .cse3 (< v_main_~c~0_717 (+ v_~SIZE~0_283 1))))) InVars {~SIZE~0=v_~SIZE~0_283, main_~c~0=v_main_~c~0_718, main_#t~post5=|v_main_#t~post5_409|, main_~st~0=v_main_~st~0_381, ~last~0=v_~last~0_315} OutVars{~SIZE~0=v_~SIZE~0_283, main_#t~post5=|v_main_#t~post5_407|, main_~c~0=v_main_~c~0_717, main_~st~0=v_main_~st~0_380, ~last~0=v_~last~0_315} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {58894#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:00:32,675 INFO L290 TraceCheckUtils]: 14: Hoare triple {58894#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [225] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {58894#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:00:32,675 INFO L290 TraceCheckUtils]: 15: Hoare triple {58894#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [226] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_720 v_main_~c~0_719))) (or (and (= v_~SIZE~0_284 v_~SIZE~0_284) .cse0 (= |v_main_#t~post5_412| |v_main_#t~post5_408|) (= v_~last~0_316 v_~last~0_316)) (and (< v_main_~c~0_719 (+ v_~SIZE~0_284 1)) (< v_main_~c~0_720 v_main_~c~0_719) (< v_main_~c~0_719 (+ v_~last~0_316 1))) (and .cse0 (= |v_main_#t~post5_408| |v_main_#t~post5_412|) (or (not (< v_main_~c~0_720 v_~SIZE~0_284)) (not (< v_main_~c~0_720 v_~last~0_316)))))) InVars {~SIZE~0=v_~SIZE~0_284, main_~c~0=v_main_~c~0_720, main_#t~post5=|v_main_#t~post5_412|, ~last~0=v_~last~0_316} OutVars{~SIZE~0=v_~SIZE~0_284, main_#t~post5=|v_main_#t~post5_408|, main_~c~0=v_main_~c~0_719, ~last~0=v_~last~0_316} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {58894#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:00:32,676 INFO L290 TraceCheckUtils]: 16: Hoare triple {58894#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [223] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {58904#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:00:32,676 INFO L290 TraceCheckUtils]: 17: Hoare triple {58904#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {58838#false} is VALID [2022-04-28 04:00:32,676 INFO L290 TraceCheckUtils]: 18: Hoare triple {58838#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {58838#false} is VALID [2022-04-28 04:00:32,676 INFO L290 TraceCheckUtils]: 19: Hoare triple {58838#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {58838#false} is VALID [2022-04-28 04:00:32,676 INFO L290 TraceCheckUtils]: 20: Hoare triple {58838#false} assume !(~d~0 == ~SIZE~0); {58838#false} is VALID [2022-04-28 04:00:32,677 INFO L272 TraceCheckUtils]: 21: Hoare triple {58838#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {58838#false} is VALID [2022-04-28 04:00:32,677 INFO L290 TraceCheckUtils]: 22: Hoare triple {58838#false} ~cond := #in~cond; {58838#false} is VALID [2022-04-28 04:00:32,677 INFO L290 TraceCheckUtils]: 23: Hoare triple {58838#false} assume 0 == ~cond; {58838#false} is VALID [2022-04-28 04:00:32,677 INFO L290 TraceCheckUtils]: 24: Hoare triple {58838#false} assume !false; {58838#false} is VALID [2022-04-28 04:00:32,677 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:00:32,677 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:00:32,984 INFO L290 TraceCheckUtils]: 24: Hoare triple {58838#false} assume !false; {58838#false} is VALID [2022-04-28 04:00:32,985 INFO L290 TraceCheckUtils]: 23: Hoare triple {58838#false} assume 0 == ~cond; {58838#false} is VALID [2022-04-28 04:00:32,985 INFO L290 TraceCheckUtils]: 22: Hoare triple {58838#false} ~cond := #in~cond; {58838#false} is VALID [2022-04-28 04:00:32,985 INFO L272 TraceCheckUtils]: 21: Hoare triple {58838#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {58838#false} is VALID [2022-04-28 04:00:32,985 INFO L290 TraceCheckUtils]: 20: Hoare triple {58838#false} assume !(~d~0 == ~SIZE~0); {58838#false} is VALID [2022-04-28 04:00:32,985 INFO L290 TraceCheckUtils]: 19: Hoare triple {58838#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {58838#false} is VALID [2022-04-28 04:00:32,985 INFO L290 TraceCheckUtils]: 18: Hoare triple {58838#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {58838#false} is VALID [2022-04-28 04:00:32,985 INFO L290 TraceCheckUtils]: 17: Hoare triple {58950#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {58838#false} is VALID [2022-04-28 04:00:32,986 INFO L290 TraceCheckUtils]: 16: Hoare triple {58954#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [223] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {58950#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:00:32,986 INFO L290 TraceCheckUtils]: 15: Hoare triple {58954#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [226] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_720 v_main_~c~0_719))) (or (and (= v_~SIZE~0_284 v_~SIZE~0_284) .cse0 (= |v_main_#t~post5_412| |v_main_#t~post5_408|) (= v_~last~0_316 v_~last~0_316)) (and (< v_main_~c~0_719 (+ v_~SIZE~0_284 1)) (< v_main_~c~0_720 v_main_~c~0_719) (< v_main_~c~0_719 (+ v_~last~0_316 1))) (and .cse0 (= |v_main_#t~post5_408| |v_main_#t~post5_412|) (or (not (< v_main_~c~0_720 v_~SIZE~0_284)) (not (< v_main_~c~0_720 v_~last~0_316)))))) InVars {~SIZE~0=v_~SIZE~0_284, main_~c~0=v_main_~c~0_720, main_#t~post5=|v_main_#t~post5_412|, ~last~0=v_~last~0_316} OutVars{~SIZE~0=v_~SIZE~0_284, main_#t~post5=|v_main_#t~post5_408|, main_~c~0=v_main_~c~0_719, ~last~0=v_~last~0_316} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {58954#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:00:32,987 INFO L290 TraceCheckUtils]: 14: Hoare triple {58954#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [225] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {58954#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:00:32,987 INFO L290 TraceCheckUtils]: 13: Hoare triple {58964#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [224] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_718 v_main_~c~0_717)) (.cse1 (= v_main_~st~0_381 v_main_~st~0_380)) (.cse2 (= |v_main_#t~post5_409| |v_main_#t~post5_407|)) (.cse3 (<= v_~last~0_315 v_main_~c~0_718))) (or (and .cse0 (= v_~SIZE~0_283 v_~SIZE~0_283) (= v_~last~0_315 v_~last~0_315) .cse1 .cse2) (and .cse0 (or (not (< v_main_~c~0_718 v_~SIZE~0_283)) (not .cse3)) .cse1 .cse2) (and (< v_main_~c~0_718 v_main_~c~0_717) (= v_main_~st~0_380 0) .cse3 (< v_main_~c~0_717 (+ v_~SIZE~0_283 1))))) InVars {~SIZE~0=v_~SIZE~0_283, main_~c~0=v_main_~c~0_718, main_#t~post5=|v_main_#t~post5_409|, main_~st~0=v_main_~st~0_381, ~last~0=v_~last~0_315} OutVars{~SIZE~0=v_~SIZE~0_283, main_#t~post5=|v_main_#t~post5_407|, main_~c~0=v_main_~c~0_717, main_~st~0=v_main_~st~0_380, ~last~0=v_~last~0_315} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {58954#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:00:32,988 INFO L290 TraceCheckUtils]: 12: Hoare triple {58968#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {58964#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:00:32,988 INFO L290 TraceCheckUtils]: 11: Hoare triple {58968#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {58968#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:32,988 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {58837#true} {58968#(< 1 ~SIZE~0)} #86#return; {58968#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:32,988 INFO L290 TraceCheckUtils]: 9: Hoare triple {58837#true} assume true; {58837#true} is VALID [2022-04-28 04:00:32,989 INFO L290 TraceCheckUtils]: 8: Hoare triple {58837#true} assume !(0 == ~cond); {58837#true} is VALID [2022-04-28 04:00:32,989 INFO L290 TraceCheckUtils]: 7: Hoare triple {58837#true} ~cond := #in~cond; {58837#true} is VALID [2022-04-28 04:00:32,989 INFO L272 TraceCheckUtils]: 6: Hoare triple {58968#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {58837#true} is VALID [2022-04-28 04:00:32,989 INFO L290 TraceCheckUtils]: 5: Hoare triple {58968#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {58968#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:32,989 INFO L272 TraceCheckUtils]: 4: Hoare triple {58968#(< 1 ~SIZE~0)} call #t~ret7 := main(); {58968#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:32,990 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {58968#(< 1 ~SIZE~0)} {58837#true} #90#return; {58968#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:32,990 INFO L290 TraceCheckUtils]: 2: Hoare triple {58968#(< 1 ~SIZE~0)} assume true; {58968#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:32,990 INFO L290 TraceCheckUtils]: 1: Hoare triple {58837#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {58968#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:32,990 INFO L272 TraceCheckUtils]: 0: Hoare triple {58837#true} call ULTIMATE.init(); {58837#true} is VALID [2022-04-28 04:00:32,990 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:00:32,991 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [704921968] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:00:32,991 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:00:32,991 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:00:33,555 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:00:33,555 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [781363079] [2022-04-28 04:00:33,555 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [781363079] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:00:33,555 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:00:33,555 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [23] imperfect sequences [] total 23 [2022-04-28 04:00:33,555 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2058885025] [2022-04-28 04:00:33,556 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:00:33,556 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 23 states have (on average 1.7391304347826086) internal successors, (40), 22 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 46 [2022-04-28 04:00:33,556 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:00:33,556 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 23 states, 23 states have (on average 1.7391304347826086) internal successors, (40), 22 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:00:33,605 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:00:33,605 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 23 states [2022-04-28 04:00:33,605 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:00:33,606 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2022-04-28 04:00:33,606 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=230, Invalid=762, Unknown=0, NotChecked=0, Total=992 [2022-04-28 04:00:33,606 INFO L87 Difference]: Start difference. First operand 262 states and 316 transitions. Second operand has 23 states, 23 states have (on average 1.7391304347826086) internal successors, (40), 22 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:00:36,232 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:00:36,232 INFO L93 Difference]: Finished difference Result 508 states and 621 transitions. [2022-04-28 04:00:36,232 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2022-04-28 04:00:36,232 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 23 states have (on average 1.7391304347826086) internal successors, (40), 22 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 46 [2022-04-28 04:00:36,232 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:00:36,233 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 23 states have (on average 1.7391304347826086) internal successors, (40), 22 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:00:36,233 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 102 transitions. [2022-04-28 04:00:36,233 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 23 states have (on average 1.7391304347826086) internal successors, (40), 22 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:00:36,234 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 102 transitions. [2022-04-28 04:00:36,234 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 23 states and 102 transitions. [2022-04-28 04:00:36,301 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 102 edges. 102 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:00:36,309 INFO L225 Difference]: With dead ends: 508 [2022-04-28 04:00:36,309 INFO L226 Difference]: Without dead ends: 299 [2022-04-28 04:00:36,310 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 94 GetRequests, 54 SyntacticMatches, 7 SemanticMatches, 33 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 569 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=271, Invalid=919, Unknown=0, NotChecked=0, Total=1190 [2022-04-28 04:00:36,310 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 76 mSDsluCounter, 12 mSDsCounter, 0 mSdLazyCounter, 780 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 77 SdHoareTripleChecker+Valid, 36 SdHoareTripleChecker+Invalid, 800 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 20 IncrementalHoareTripleChecker+Valid, 780 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-04-28 04:00:36,310 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [77 Valid, 36 Invalid, 800 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [20 Valid, 780 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-04-28 04:00:36,311 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 299 states. [2022-04-28 04:00:37,547 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 299 to 274. [2022-04-28 04:00:37,547 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:00:37,547 INFO L82 GeneralOperation]: Start isEquivalent. First operand 299 states. Second operand has 274 states, 259 states have (on average 1.2162162162162162) internal successors, (315), 262 states have internal predecessors, (315), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:00:37,548 INFO L74 IsIncluded]: Start isIncluded. First operand 299 states. Second operand has 274 states, 259 states have (on average 1.2162162162162162) internal successors, (315), 262 states have internal predecessors, (315), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:00:37,548 INFO L87 Difference]: Start difference. First operand 299 states. Second operand has 274 states, 259 states have (on average 1.2162162162162162) internal successors, (315), 262 states have internal predecessors, (315), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:00:37,551 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:00:37,551 INFO L93 Difference]: Finished difference Result 299 states and 361 transitions. [2022-04-28 04:00:37,551 INFO L276 IsEmpty]: Start isEmpty. Operand 299 states and 361 transitions. [2022-04-28 04:00:37,552 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:00:37,552 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:00:37,552 INFO L74 IsIncluded]: Start isIncluded. First operand has 274 states, 259 states have (on average 1.2162162162162162) internal successors, (315), 262 states have internal predecessors, (315), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 299 states. [2022-04-28 04:00:37,552 INFO L87 Difference]: Start difference. First operand has 274 states, 259 states have (on average 1.2162162162162162) internal successors, (315), 262 states have internal predecessors, (315), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 299 states. [2022-04-28 04:00:37,556 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:00:37,556 INFO L93 Difference]: Finished difference Result 299 states and 361 transitions. [2022-04-28 04:00:37,556 INFO L276 IsEmpty]: Start isEmpty. Operand 299 states and 361 transitions. [2022-04-28 04:00:37,556 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:00:37,556 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:00:37,556 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:00:37,556 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:00:37,557 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 274 states, 259 states have (on average 1.2162162162162162) internal successors, (315), 262 states have internal predecessors, (315), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:00:37,560 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 274 states to 274 states and 332 transitions. [2022-04-28 04:00:37,560 INFO L78 Accepts]: Start accepts. Automaton has 274 states and 332 transitions. Word has length 46 [2022-04-28 04:00:37,560 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:00:37,561 INFO L495 AbstractCegarLoop]: Abstraction has 274 states and 332 transitions. [2022-04-28 04:00:37,561 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 23 states, 23 states have (on average 1.7391304347826086) internal successors, (40), 22 states have internal predecessors, (40), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:00:37,561 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 274 states and 332 transitions. [2022-04-28 04:00:38,366 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 332 edges. 332 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:00:38,366 INFO L276 IsEmpty]: Start isEmpty. Operand 274 states and 332 transitions. [2022-04-28 04:00:38,366 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-04-28 04:00:38,366 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:00:38,367 INFO L195 NwaCegarLoop]: trace histogram [9, 9, 8, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:00:38,382 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (31)] Ended with exit code 0 [2022-04-28 04:00:38,567 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 31 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable38 [2022-04-28 04:00:38,567 INFO L420 AbstractCegarLoop]: === Iteration 40 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:00:38,568 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:00:38,568 INFO L85 PathProgramCache]: Analyzing trace with hash 1745750559, now seen corresponding path program 29 times [2022-04-28 04:00:38,568 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:00:38,568 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1754943803] [2022-04-28 04:00:42,695 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:00:42,828 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:00:46,977 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:00:47,079 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:00:47,081 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:00:47,083 INFO L85 PathProgramCache]: Analyzing trace with hash 157845185, now seen corresponding path program 1 times [2022-04-28 04:00:47,083 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:00:47,084 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [966736839] [2022-04-28 04:00:47,084 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:00:47,084 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:00:47,091 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:00:47,144 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:00:47,145 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:00:47,150 INFO L290 TraceCheckUtils]: 0: Hoare triple {61207#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {61199#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:47,150 INFO L290 TraceCheckUtils]: 1: Hoare triple {61199#(<= 200000 ~SIZE~0)} assume true; {61199#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:47,150 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {61199#(<= 200000 ~SIZE~0)} {61194#true} #90#return; {61199#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:47,151 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:00:47,151 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:00:47,153 INFO L290 TraceCheckUtils]: 0: Hoare triple {61194#true} ~cond := #in~cond; {61194#true} is VALID [2022-04-28 04:00:47,153 INFO L290 TraceCheckUtils]: 1: Hoare triple {61194#true} assume !(0 == ~cond); {61194#true} is VALID [2022-04-28 04:00:47,153 INFO L290 TraceCheckUtils]: 2: Hoare triple {61194#true} assume true; {61194#true} is VALID [2022-04-28 04:00:47,153 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {61194#true} {61199#(<= 200000 ~SIZE~0)} #86#return; {61199#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:47,154 INFO L272 TraceCheckUtils]: 0: Hoare triple {61194#true} call ULTIMATE.init(); {61207#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:00:47,154 INFO L290 TraceCheckUtils]: 1: Hoare triple {61207#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {61199#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:47,155 INFO L290 TraceCheckUtils]: 2: Hoare triple {61199#(<= 200000 ~SIZE~0)} assume true; {61199#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:47,155 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {61199#(<= 200000 ~SIZE~0)} {61194#true} #90#return; {61199#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:47,156 INFO L272 TraceCheckUtils]: 4: Hoare triple {61199#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {61199#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:47,156 INFO L290 TraceCheckUtils]: 5: Hoare triple {61199#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {61199#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:47,156 INFO L272 TraceCheckUtils]: 6: Hoare triple {61199#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {61194#true} is VALID [2022-04-28 04:00:47,156 INFO L290 TraceCheckUtils]: 7: Hoare triple {61194#true} ~cond := #in~cond; {61194#true} is VALID [2022-04-28 04:00:47,156 INFO L290 TraceCheckUtils]: 8: Hoare triple {61194#true} assume !(0 == ~cond); {61194#true} is VALID [2022-04-28 04:00:47,156 INFO L290 TraceCheckUtils]: 9: Hoare triple {61194#true} assume true; {61194#true} is VALID [2022-04-28 04:00:47,156 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {61194#true} {61199#(<= 200000 ~SIZE~0)} #86#return; {61199#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:47,157 INFO L290 TraceCheckUtils]: 11: Hoare triple {61199#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {61199#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:47,157 INFO L290 TraceCheckUtils]: 12: Hoare triple {61199#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {61204#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:00:47,158 INFO L290 TraceCheckUtils]: 13: Hoare triple {61204#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [228] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_743 v_main_~c~0_742)) (.cse1 (= v_main_~st~0_391 v_main_~st~0_390)) (.cse2 (= |v_main_#t~post5_422| |v_main_#t~post5_420|)) (.cse3 (<= v_~last~0_325 v_main_~c~0_743))) (or (and (= v_~last~0_325 v_~last~0_325) .cse0 .cse1 .cse2 (= v_~SIZE~0_292 v_~SIZE~0_292)) (and .cse0 .cse1 .cse2 (or (not (< v_main_~c~0_743 v_~SIZE~0_292)) (not .cse3))) (and (< v_main_~c~0_743 v_main_~c~0_742) .cse3 (= v_main_~st~0_390 0) (< v_main_~c~0_742 (+ v_~SIZE~0_292 1))))) InVars {~SIZE~0=v_~SIZE~0_292, main_~c~0=v_main_~c~0_743, main_#t~post5=|v_main_#t~post5_422|, main_~st~0=v_main_~st~0_391, ~last~0=v_~last~0_325} OutVars{~SIZE~0=v_~SIZE~0_292, main_#t~post5=|v_main_#t~post5_420|, main_~c~0=v_main_~c~0_742, main_~st~0=v_main_~st~0_390, ~last~0=v_~last~0_325} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {61205#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:00:47,158 INFO L290 TraceCheckUtils]: 14: Hoare triple {61205#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [229] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61205#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:00:47,159 INFO L290 TraceCheckUtils]: 15: Hoare triple {61205#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [230] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_425| |v_main_#t~post5_421|)) (.cse1 (= v_main_~c~0_745 v_main_~c~0_744))) (or (and (or (not (< v_main_~c~0_745 v_~SIZE~0_293)) (not (< v_main_~c~0_745 v_~last~0_326))) .cse0 .cse1) (and .cse0 .cse1 (= v_~last~0_326 v_~last~0_326) (= v_~SIZE~0_293 v_~SIZE~0_293)) (and (< v_main_~c~0_744 (+ v_~SIZE~0_293 1)) (< v_main_~c~0_745 v_main_~c~0_744) (< v_main_~c~0_744 (+ v_~last~0_326 1))))) InVars {~SIZE~0=v_~SIZE~0_293, main_~c~0=v_main_~c~0_745, main_#t~post5=|v_main_#t~post5_425|, ~last~0=v_~last~0_326} OutVars{~SIZE~0=v_~SIZE~0_293, main_#t~post5=|v_main_#t~post5_421|, main_~c~0=v_main_~c~0_744, ~last~0=v_~last~0_326} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {61205#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:00:47,159 INFO L290 TraceCheckUtils]: 16: Hoare triple {61205#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [227] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {61206#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:00:47,159 INFO L290 TraceCheckUtils]: 17: Hoare triple {61206#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {61195#false} is VALID [2022-04-28 04:00:47,159 INFO L290 TraceCheckUtils]: 18: Hoare triple {61195#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {61195#false} is VALID [2022-04-28 04:00:47,160 INFO L290 TraceCheckUtils]: 19: Hoare triple {61195#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {61195#false} is VALID [2022-04-28 04:00:47,160 INFO L290 TraceCheckUtils]: 20: Hoare triple {61195#false} assume !(~d~0 == ~SIZE~0); {61195#false} is VALID [2022-04-28 04:00:47,160 INFO L272 TraceCheckUtils]: 21: Hoare triple {61195#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {61195#false} is VALID [2022-04-28 04:00:47,160 INFO L290 TraceCheckUtils]: 22: Hoare triple {61195#false} ~cond := #in~cond; {61195#false} is VALID [2022-04-28 04:00:47,160 INFO L290 TraceCheckUtils]: 23: Hoare triple {61195#false} assume 0 == ~cond; {61195#false} is VALID [2022-04-28 04:00:47,160 INFO L290 TraceCheckUtils]: 24: Hoare triple {61195#false} assume !false; {61195#false} is VALID [2022-04-28 04:00:47,160 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:00:47,160 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:00:47,160 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [966736839] [2022-04-28 04:00:47,160 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [966736839] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:00:47,160 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1877239086] [2022-04-28 04:00:47,160 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:00:47,161 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:00:47,161 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:00:47,161 INFO L229 MonitoredProcess]: Starting monitored process 32 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:00:47,162 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (32)] Waiting until timeout for monitored process [2022-04-28 04:00:47,192 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:00:47,192 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:00:47,199 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:00:47,199 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:00:47,435 INFO L272 TraceCheckUtils]: 0: Hoare triple {61194#true} call ULTIMATE.init(); {61194#true} is VALID [2022-04-28 04:00:47,435 INFO L290 TraceCheckUtils]: 1: Hoare triple {61194#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {61199#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:47,436 INFO L290 TraceCheckUtils]: 2: Hoare triple {61199#(<= 200000 ~SIZE~0)} assume true; {61199#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:47,436 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {61199#(<= 200000 ~SIZE~0)} {61194#true} #90#return; {61199#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:47,436 INFO L272 TraceCheckUtils]: 4: Hoare triple {61199#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {61199#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:47,437 INFO L290 TraceCheckUtils]: 5: Hoare triple {61199#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {61199#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:47,437 INFO L272 TraceCheckUtils]: 6: Hoare triple {61199#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {61199#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:47,437 INFO L290 TraceCheckUtils]: 7: Hoare triple {61199#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {61199#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:47,438 INFO L290 TraceCheckUtils]: 8: Hoare triple {61199#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {61199#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:47,438 INFO L290 TraceCheckUtils]: 9: Hoare triple {61199#(<= 200000 ~SIZE~0)} assume true; {61199#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:47,438 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {61199#(<= 200000 ~SIZE~0)} {61199#(<= 200000 ~SIZE~0)} #86#return; {61199#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:47,439 INFO L290 TraceCheckUtils]: 11: Hoare triple {61199#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {61199#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:47,439 INFO L290 TraceCheckUtils]: 12: Hoare triple {61199#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {61247#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:00:47,440 INFO L290 TraceCheckUtils]: 13: Hoare triple {61247#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [228] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_743 v_main_~c~0_742)) (.cse1 (= v_main_~st~0_391 v_main_~st~0_390)) (.cse2 (= |v_main_#t~post5_422| |v_main_#t~post5_420|)) (.cse3 (<= v_~last~0_325 v_main_~c~0_743))) (or (and (= v_~last~0_325 v_~last~0_325) .cse0 .cse1 .cse2 (= v_~SIZE~0_292 v_~SIZE~0_292)) (and .cse0 .cse1 .cse2 (or (not (< v_main_~c~0_743 v_~SIZE~0_292)) (not .cse3))) (and (< v_main_~c~0_743 v_main_~c~0_742) .cse3 (= v_main_~st~0_390 0) (< v_main_~c~0_742 (+ v_~SIZE~0_292 1))))) InVars {~SIZE~0=v_~SIZE~0_292, main_~c~0=v_main_~c~0_743, main_#t~post5=|v_main_#t~post5_422|, main_~st~0=v_main_~st~0_391, ~last~0=v_~last~0_325} OutVars{~SIZE~0=v_~SIZE~0_292, main_#t~post5=|v_main_#t~post5_420|, main_~c~0=v_main_~c~0_742, main_~st~0=v_main_~st~0_390, ~last~0=v_~last~0_325} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {61251#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:00:47,440 INFO L290 TraceCheckUtils]: 14: Hoare triple {61251#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [229] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61251#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:00:47,441 INFO L290 TraceCheckUtils]: 15: Hoare triple {61251#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [230] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_425| |v_main_#t~post5_421|)) (.cse1 (= v_main_~c~0_745 v_main_~c~0_744))) (or (and (or (not (< v_main_~c~0_745 v_~SIZE~0_293)) (not (< v_main_~c~0_745 v_~last~0_326))) .cse0 .cse1) (and .cse0 .cse1 (= v_~last~0_326 v_~last~0_326) (= v_~SIZE~0_293 v_~SIZE~0_293)) (and (< v_main_~c~0_744 (+ v_~SIZE~0_293 1)) (< v_main_~c~0_745 v_main_~c~0_744) (< v_main_~c~0_744 (+ v_~last~0_326 1))))) InVars {~SIZE~0=v_~SIZE~0_293, main_~c~0=v_main_~c~0_745, main_#t~post5=|v_main_#t~post5_425|, ~last~0=v_~last~0_326} OutVars{~SIZE~0=v_~SIZE~0_293, main_#t~post5=|v_main_#t~post5_421|, main_~c~0=v_main_~c~0_744, ~last~0=v_~last~0_326} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {61251#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:00:47,442 INFO L290 TraceCheckUtils]: 16: Hoare triple {61251#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [227] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {61261#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:00:47,442 INFO L290 TraceCheckUtils]: 17: Hoare triple {61261#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {61195#false} is VALID [2022-04-28 04:00:47,442 INFO L290 TraceCheckUtils]: 18: Hoare triple {61195#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {61195#false} is VALID [2022-04-28 04:00:47,442 INFO L290 TraceCheckUtils]: 19: Hoare triple {61195#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {61195#false} is VALID [2022-04-28 04:00:47,442 INFO L290 TraceCheckUtils]: 20: Hoare triple {61195#false} assume !(~d~0 == ~SIZE~0); {61195#false} is VALID [2022-04-28 04:00:47,443 INFO L272 TraceCheckUtils]: 21: Hoare triple {61195#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {61195#false} is VALID [2022-04-28 04:00:47,443 INFO L290 TraceCheckUtils]: 22: Hoare triple {61195#false} ~cond := #in~cond; {61195#false} is VALID [2022-04-28 04:00:47,444 INFO L290 TraceCheckUtils]: 23: Hoare triple {61195#false} assume 0 == ~cond; {61195#false} is VALID [2022-04-28 04:00:47,444 INFO L290 TraceCheckUtils]: 24: Hoare triple {61195#false} assume !false; {61195#false} is VALID [2022-04-28 04:00:47,444 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:00:47,444 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:00:47,806 INFO L290 TraceCheckUtils]: 24: Hoare triple {61195#false} assume !false; {61195#false} is VALID [2022-04-28 04:00:47,807 INFO L290 TraceCheckUtils]: 23: Hoare triple {61195#false} assume 0 == ~cond; {61195#false} is VALID [2022-04-28 04:00:47,807 INFO L290 TraceCheckUtils]: 22: Hoare triple {61195#false} ~cond := #in~cond; {61195#false} is VALID [2022-04-28 04:00:47,807 INFO L272 TraceCheckUtils]: 21: Hoare triple {61195#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {61195#false} is VALID [2022-04-28 04:00:47,807 INFO L290 TraceCheckUtils]: 20: Hoare triple {61195#false} assume !(~d~0 == ~SIZE~0); {61195#false} is VALID [2022-04-28 04:00:47,808 INFO L290 TraceCheckUtils]: 19: Hoare triple {61195#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {61195#false} is VALID [2022-04-28 04:00:47,808 INFO L290 TraceCheckUtils]: 18: Hoare triple {61195#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {61195#false} is VALID [2022-04-28 04:00:47,809 INFO L290 TraceCheckUtils]: 17: Hoare triple {61307#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {61195#false} is VALID [2022-04-28 04:00:47,809 INFO L290 TraceCheckUtils]: 16: Hoare triple {61311#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [227] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {61307#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:00:47,810 INFO L290 TraceCheckUtils]: 15: Hoare triple {61311#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [230] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_425| |v_main_#t~post5_421|)) (.cse1 (= v_main_~c~0_745 v_main_~c~0_744))) (or (and (or (not (< v_main_~c~0_745 v_~SIZE~0_293)) (not (< v_main_~c~0_745 v_~last~0_326))) .cse0 .cse1) (and .cse0 .cse1 (= v_~last~0_326 v_~last~0_326) (= v_~SIZE~0_293 v_~SIZE~0_293)) (and (< v_main_~c~0_744 (+ v_~SIZE~0_293 1)) (< v_main_~c~0_745 v_main_~c~0_744) (< v_main_~c~0_744 (+ v_~last~0_326 1))))) InVars {~SIZE~0=v_~SIZE~0_293, main_~c~0=v_main_~c~0_745, main_#t~post5=|v_main_#t~post5_425|, ~last~0=v_~last~0_326} OutVars{~SIZE~0=v_~SIZE~0_293, main_#t~post5=|v_main_#t~post5_421|, main_~c~0=v_main_~c~0_744, ~last~0=v_~last~0_326} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {61311#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:00:47,810 INFO L290 TraceCheckUtils]: 14: Hoare triple {61311#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [229] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {61311#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:00:47,811 INFO L290 TraceCheckUtils]: 13: Hoare triple {61321#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [228] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_743 v_main_~c~0_742)) (.cse1 (= v_main_~st~0_391 v_main_~st~0_390)) (.cse2 (= |v_main_#t~post5_422| |v_main_#t~post5_420|)) (.cse3 (<= v_~last~0_325 v_main_~c~0_743))) (or (and (= v_~last~0_325 v_~last~0_325) .cse0 .cse1 .cse2 (= v_~SIZE~0_292 v_~SIZE~0_292)) (and .cse0 .cse1 .cse2 (or (not (< v_main_~c~0_743 v_~SIZE~0_292)) (not .cse3))) (and (< v_main_~c~0_743 v_main_~c~0_742) .cse3 (= v_main_~st~0_390 0) (< v_main_~c~0_742 (+ v_~SIZE~0_292 1))))) InVars {~SIZE~0=v_~SIZE~0_292, main_~c~0=v_main_~c~0_743, main_#t~post5=|v_main_#t~post5_422|, main_~st~0=v_main_~st~0_391, ~last~0=v_~last~0_325} OutVars{~SIZE~0=v_~SIZE~0_292, main_#t~post5=|v_main_#t~post5_420|, main_~c~0=v_main_~c~0_742, main_~st~0=v_main_~st~0_390, ~last~0=v_~last~0_325} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {61311#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:00:47,811 INFO L290 TraceCheckUtils]: 12: Hoare triple {61325#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {61321#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:00:47,812 INFO L290 TraceCheckUtils]: 11: Hoare triple {61325#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {61325#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:47,812 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {61194#true} {61325#(< 1 ~SIZE~0)} #86#return; {61325#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:47,812 INFO L290 TraceCheckUtils]: 9: Hoare triple {61194#true} assume true; {61194#true} is VALID [2022-04-28 04:00:47,812 INFO L290 TraceCheckUtils]: 8: Hoare triple {61194#true} assume !(0 == ~cond); {61194#true} is VALID [2022-04-28 04:00:47,812 INFO L290 TraceCheckUtils]: 7: Hoare triple {61194#true} ~cond := #in~cond; {61194#true} is VALID [2022-04-28 04:00:47,812 INFO L272 TraceCheckUtils]: 6: Hoare triple {61325#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {61194#true} is VALID [2022-04-28 04:00:47,813 INFO L290 TraceCheckUtils]: 5: Hoare triple {61325#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {61325#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:47,813 INFO L272 TraceCheckUtils]: 4: Hoare triple {61325#(< 1 ~SIZE~0)} call #t~ret7 := main(); {61325#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:47,813 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {61325#(< 1 ~SIZE~0)} {61194#true} #90#return; {61325#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:47,814 INFO L290 TraceCheckUtils]: 2: Hoare triple {61325#(< 1 ~SIZE~0)} assume true; {61325#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:47,814 INFO L290 TraceCheckUtils]: 1: Hoare triple {61194#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {61325#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:47,814 INFO L272 TraceCheckUtils]: 0: Hoare triple {61194#true} call ULTIMATE.init(); {61194#true} is VALID [2022-04-28 04:00:47,814 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:00:47,814 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1877239086] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:00:47,814 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:00:47,815 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:00:48,452 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:00:48,452 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1754943803] [2022-04-28 04:00:48,452 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1754943803] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:00:48,452 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:00:48,452 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [18] imperfect sequences [] total 18 [2022-04-28 04:00:48,452 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1682811740] [2022-04-28 04:00:48,452 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:00:48,453 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 2.388888888888889) internal successors, (43), 17 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 49 [2022-04-28 04:00:48,453 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:00:48,453 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 18 states, 18 states have (on average 2.388888888888889) internal successors, (43), 17 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:00:48,489 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:00:48,489 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-04-28 04:00:48,489 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:00:48,489 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-04-28 04:00:48,490 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=146, Invalid=556, Unknown=0, NotChecked=0, Total=702 [2022-04-28 04:00:48,490 INFO L87 Difference]: Start difference. First operand 274 states and 332 transitions. Second operand has 18 states, 18 states have (on average 2.388888888888889) internal successors, (43), 17 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:00:51,752 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:00:51,752 INFO L93 Difference]: Finished difference Result 556 states and 666 transitions. [2022-04-28 04:00:51,752 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-28 04:00:51,753 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 2.388888888888889) internal successors, (43), 17 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 49 [2022-04-28 04:00:51,753 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:00:51,753 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 2.388888888888889) internal successors, (43), 17 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:00:51,753 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 98 transitions. [2022-04-28 04:00:51,753 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 2.388888888888889) internal successors, (43), 17 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:00:51,754 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 98 transitions. [2022-04-28 04:00:51,754 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 98 transitions. [2022-04-28 04:00:51,820 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 98 edges. 98 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:00:51,825 INFO L225 Difference]: With dead ends: 556 [2022-04-28 04:00:51,825 INFO L226 Difference]: Without dead ends: 349 [2022-04-28 04:00:51,825 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 97 GetRequests, 54 SyntacticMatches, 15 SemanticMatches, 28 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 570 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=175, Invalid=695, Unknown=0, NotChecked=0, Total=870 [2022-04-28 04:00:51,825 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 49 mSDsluCounter, 23 mSDsCounter, 0 mSdLazyCounter, 938 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 50 SdHoareTripleChecker+Valid, 47 SdHoareTripleChecker+Invalid, 951 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 938 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-28 04:00:51,826 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [50 Valid, 47 Invalid, 951 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 938 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-28 04:00:51,826 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 349 states. [2022-04-28 04:00:53,212 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 349 to 283. [2022-04-28 04:00:53,212 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:00:53,212 INFO L82 GeneralOperation]: Start isEquivalent. First operand 349 states. Second operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:00:53,212 INFO L74 IsIncluded]: Start isIncluded. First operand 349 states. Second operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:00:53,213 INFO L87 Difference]: Start difference. First operand 349 states. Second operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:00:53,217 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:00:53,217 INFO L93 Difference]: Finished difference Result 349 states and 411 transitions. [2022-04-28 04:00:53,217 INFO L276 IsEmpty]: Start isEmpty. Operand 349 states and 411 transitions. [2022-04-28 04:00:53,217 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:00:53,217 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:00:53,217 INFO L74 IsIncluded]: Start isIncluded. First operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 349 states. [2022-04-28 04:00:53,218 INFO L87 Difference]: Start difference. First operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 349 states. [2022-04-28 04:00:53,222 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:00:53,222 INFO L93 Difference]: Finished difference Result 349 states and 411 transitions. [2022-04-28 04:00:53,222 INFO L276 IsEmpty]: Start isEmpty. Operand 349 states and 411 transitions. [2022-04-28 04:00:53,222 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:00:53,222 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:00:53,222 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:00:53,222 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:00:53,222 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:00:53,226 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 283 states to 283 states and 341 transitions. [2022-04-28 04:00:53,226 INFO L78 Accepts]: Start accepts. Automaton has 283 states and 341 transitions. Word has length 49 [2022-04-28 04:00:53,226 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:00:53,226 INFO L495 AbstractCegarLoop]: Abstraction has 283 states and 341 transitions. [2022-04-28 04:00:53,226 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 18 states have (on average 2.388888888888889) internal successors, (43), 17 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:00:53,226 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 283 states and 341 transitions. [2022-04-28 04:00:54,159 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 341 edges. 341 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:00:54,160 INFO L276 IsEmpty]: Start isEmpty. Operand 283 states and 341 transitions. [2022-04-28 04:00:54,160 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-04-28 04:00:54,160 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:00:54,160 INFO L195 NwaCegarLoop]: trace histogram [9, 9, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:00:54,176 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (32)] Forceful destruction successful, exit code 0 [2022-04-28 04:00:54,361 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 32 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable39 [2022-04-28 04:00:54,361 INFO L420 AbstractCegarLoop]: === Iteration 41 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:00:54,361 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:00:54,361 INFO L85 PathProgramCache]: Analyzing trace with hash 2020510173, now seen corresponding path program 30 times [2022-04-28 04:00:54,361 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:00:54,361 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2080383760] [2022-04-28 04:00:54,592 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:00:54,808 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:00:54,809 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:00:54,811 INFO L85 PathProgramCache]: Analyzing trace with hash -1644599359, now seen corresponding path program 1 times [2022-04-28 04:00:54,812 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:00:54,812 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1991503214] [2022-04-28 04:00:54,812 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:00:54,812 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:00:54,831 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:00:54,878 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:00:54,879 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:00:54,886 INFO L290 TraceCheckUtils]: 0: Hoare triple {63773#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {63765#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:54,886 INFO L290 TraceCheckUtils]: 1: Hoare triple {63765#(<= 200000 ~SIZE~0)} assume true; {63765#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:54,887 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {63765#(<= 200000 ~SIZE~0)} {63760#true} #90#return; {63765#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:54,887 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:00:54,887 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:00:54,889 INFO L290 TraceCheckUtils]: 0: Hoare triple {63760#true} ~cond := #in~cond; {63760#true} is VALID [2022-04-28 04:00:54,889 INFO L290 TraceCheckUtils]: 1: Hoare triple {63760#true} assume !(0 == ~cond); {63760#true} is VALID [2022-04-28 04:00:54,889 INFO L290 TraceCheckUtils]: 2: Hoare triple {63760#true} assume true; {63760#true} is VALID [2022-04-28 04:00:54,890 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {63760#true} {63765#(<= 200000 ~SIZE~0)} #86#return; {63765#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:54,890 INFO L272 TraceCheckUtils]: 0: Hoare triple {63760#true} call ULTIMATE.init(); {63773#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:00:54,891 INFO L290 TraceCheckUtils]: 1: Hoare triple {63773#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {63765#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:54,891 INFO L290 TraceCheckUtils]: 2: Hoare triple {63765#(<= 200000 ~SIZE~0)} assume true; {63765#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:54,892 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {63765#(<= 200000 ~SIZE~0)} {63760#true} #90#return; {63765#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:54,892 INFO L272 TraceCheckUtils]: 4: Hoare triple {63765#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {63765#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:54,892 INFO L290 TraceCheckUtils]: 5: Hoare triple {63765#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {63765#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:54,892 INFO L272 TraceCheckUtils]: 6: Hoare triple {63765#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {63760#true} is VALID [2022-04-28 04:00:54,892 INFO L290 TraceCheckUtils]: 7: Hoare triple {63760#true} ~cond := #in~cond; {63760#true} is VALID [2022-04-28 04:00:54,893 INFO L290 TraceCheckUtils]: 8: Hoare triple {63760#true} assume !(0 == ~cond); {63760#true} is VALID [2022-04-28 04:00:54,893 INFO L290 TraceCheckUtils]: 9: Hoare triple {63760#true} assume true; {63760#true} is VALID [2022-04-28 04:00:54,893 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {63760#true} {63765#(<= 200000 ~SIZE~0)} #86#return; {63765#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:54,893 INFO L290 TraceCheckUtils]: 11: Hoare triple {63765#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {63765#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:54,894 INFO L290 TraceCheckUtils]: 12: Hoare triple {63765#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {63770#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:00:54,894 INFO L290 TraceCheckUtils]: 13: Hoare triple {63770#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [232] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_335 v_main_~c~0_769)) (.cse1 (= |v_main_#t~post5_435| |v_main_#t~post5_433|)) (.cse2 (= v_main_~st~0_408 v_main_~st~0_407)) (.cse3 (= v_main_~c~0_769 v_main_~c~0_768))) (or (and (= v_main_~st~0_407 0) .cse0 (< v_main_~c~0_768 (+ v_~SIZE~0_301 1)) (< v_main_~c~0_769 v_main_~c~0_768)) (and .cse1 .cse2 .cse3 (= v_~SIZE~0_301 v_~SIZE~0_301) (= v_~last~0_335 v_~last~0_335)) (and (or (not .cse0) (not (< v_main_~c~0_769 v_~SIZE~0_301))) .cse1 .cse2 .cse3))) InVars {~SIZE~0=v_~SIZE~0_301, main_~c~0=v_main_~c~0_769, main_#t~post5=|v_main_#t~post5_435|, main_~st~0=v_main_~st~0_408, ~last~0=v_~last~0_335} OutVars{~SIZE~0=v_~SIZE~0_301, main_#t~post5=|v_main_#t~post5_433|, main_~c~0=v_main_~c~0_768, main_~st~0=v_main_~st~0_407, ~last~0=v_~last~0_335} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {63771#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:00:54,895 INFO L290 TraceCheckUtils]: 14: Hoare triple {63771#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [233] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {63771#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:00:54,895 INFO L290 TraceCheckUtils]: 15: Hoare triple {63771#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [234] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_438| |v_main_#t~post5_434|)) (.cse1 (= v_main_~c~0_771 v_main_~c~0_770))) (or (and (< v_main_~c~0_770 (+ v_~SIZE~0_302 1)) (< v_main_~c~0_771 v_main_~c~0_770) (< v_main_~c~0_770 (+ v_~last~0_336 1))) (and .cse0 .cse1 (or (not (< v_main_~c~0_771 v_~SIZE~0_302)) (not (< v_main_~c~0_771 v_~last~0_336)))) (and .cse0 .cse1 (= v_~last~0_336 v_~last~0_336) (= v_~SIZE~0_302 v_~SIZE~0_302)))) InVars {~SIZE~0=v_~SIZE~0_302, main_~c~0=v_main_~c~0_771, main_#t~post5=|v_main_#t~post5_438|, ~last~0=v_~last~0_336} OutVars{~SIZE~0=v_~SIZE~0_302, main_#t~post5=|v_main_#t~post5_434|, main_~c~0=v_main_~c~0_770, ~last~0=v_~last~0_336} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {63771#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:00:54,896 INFO L290 TraceCheckUtils]: 16: Hoare triple {63771#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [231] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {63772#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:00:54,896 INFO L290 TraceCheckUtils]: 17: Hoare triple {63772#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {63761#false} is VALID [2022-04-28 04:00:54,896 INFO L290 TraceCheckUtils]: 18: Hoare triple {63761#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {63761#false} is VALID [2022-04-28 04:00:54,896 INFO L290 TraceCheckUtils]: 19: Hoare triple {63761#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {63761#false} is VALID [2022-04-28 04:00:54,896 INFO L290 TraceCheckUtils]: 20: Hoare triple {63761#false} assume !(~d~0 == ~SIZE~0); {63761#false} is VALID [2022-04-28 04:00:54,897 INFO L272 TraceCheckUtils]: 21: Hoare triple {63761#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {63761#false} is VALID [2022-04-28 04:00:54,897 INFO L290 TraceCheckUtils]: 22: Hoare triple {63761#false} ~cond := #in~cond; {63761#false} is VALID [2022-04-28 04:00:54,897 INFO L290 TraceCheckUtils]: 23: Hoare triple {63761#false} assume 0 == ~cond; {63761#false} is VALID [2022-04-28 04:00:54,897 INFO L290 TraceCheckUtils]: 24: Hoare triple {63761#false} assume !false; {63761#false} is VALID [2022-04-28 04:00:54,897 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:00:54,897 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:00:54,897 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1991503214] [2022-04-28 04:00:54,897 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1991503214] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:00:54,897 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1445666204] [2022-04-28 04:00:54,897 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:00:54,897 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:00:54,898 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:00:54,898 INFO L229 MonitoredProcess]: Starting monitored process 33 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:00:54,899 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (33)] Waiting until timeout for monitored process [2022-04-28 04:00:54,928 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:00:54,929 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:00:54,936 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:00:54,937 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:00:55,200 INFO L272 TraceCheckUtils]: 0: Hoare triple {63760#true} call ULTIMATE.init(); {63760#true} is VALID [2022-04-28 04:00:55,201 INFO L290 TraceCheckUtils]: 1: Hoare triple {63760#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {63765#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:55,201 INFO L290 TraceCheckUtils]: 2: Hoare triple {63765#(<= 200000 ~SIZE~0)} assume true; {63765#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:55,201 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {63765#(<= 200000 ~SIZE~0)} {63760#true} #90#return; {63765#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:55,202 INFO L272 TraceCheckUtils]: 4: Hoare triple {63765#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {63765#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:55,202 INFO L290 TraceCheckUtils]: 5: Hoare triple {63765#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {63765#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:55,202 INFO L272 TraceCheckUtils]: 6: Hoare triple {63765#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {63765#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:55,203 INFO L290 TraceCheckUtils]: 7: Hoare triple {63765#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {63765#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:55,203 INFO L290 TraceCheckUtils]: 8: Hoare triple {63765#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {63765#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:55,203 INFO L290 TraceCheckUtils]: 9: Hoare triple {63765#(<= 200000 ~SIZE~0)} assume true; {63765#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:55,204 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {63765#(<= 200000 ~SIZE~0)} {63765#(<= 200000 ~SIZE~0)} #86#return; {63765#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:55,204 INFO L290 TraceCheckUtils]: 11: Hoare triple {63765#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {63765#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:00:55,204 INFO L290 TraceCheckUtils]: 12: Hoare triple {63765#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {63813#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:00:55,205 INFO L290 TraceCheckUtils]: 13: Hoare triple {63813#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [232] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_335 v_main_~c~0_769)) (.cse1 (= |v_main_#t~post5_435| |v_main_#t~post5_433|)) (.cse2 (= v_main_~st~0_408 v_main_~st~0_407)) (.cse3 (= v_main_~c~0_769 v_main_~c~0_768))) (or (and (= v_main_~st~0_407 0) .cse0 (< v_main_~c~0_768 (+ v_~SIZE~0_301 1)) (< v_main_~c~0_769 v_main_~c~0_768)) (and .cse1 .cse2 .cse3 (= v_~SIZE~0_301 v_~SIZE~0_301) (= v_~last~0_335 v_~last~0_335)) (and (or (not .cse0) (not (< v_main_~c~0_769 v_~SIZE~0_301))) .cse1 .cse2 .cse3))) InVars {~SIZE~0=v_~SIZE~0_301, main_~c~0=v_main_~c~0_769, main_#t~post5=|v_main_#t~post5_435|, main_~st~0=v_main_~st~0_408, ~last~0=v_~last~0_335} OutVars{~SIZE~0=v_~SIZE~0_301, main_#t~post5=|v_main_#t~post5_433|, main_~c~0=v_main_~c~0_768, main_~st~0=v_main_~st~0_407, ~last~0=v_~last~0_335} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {63817#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:00:55,205 INFO L290 TraceCheckUtils]: 14: Hoare triple {63817#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [233] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {63817#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:00:55,206 INFO L290 TraceCheckUtils]: 15: Hoare triple {63817#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [234] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_438| |v_main_#t~post5_434|)) (.cse1 (= v_main_~c~0_771 v_main_~c~0_770))) (or (and (< v_main_~c~0_770 (+ v_~SIZE~0_302 1)) (< v_main_~c~0_771 v_main_~c~0_770) (< v_main_~c~0_770 (+ v_~last~0_336 1))) (and .cse0 .cse1 (or (not (< v_main_~c~0_771 v_~SIZE~0_302)) (not (< v_main_~c~0_771 v_~last~0_336)))) (and .cse0 .cse1 (= v_~last~0_336 v_~last~0_336) (= v_~SIZE~0_302 v_~SIZE~0_302)))) InVars {~SIZE~0=v_~SIZE~0_302, main_~c~0=v_main_~c~0_771, main_#t~post5=|v_main_#t~post5_438|, ~last~0=v_~last~0_336} OutVars{~SIZE~0=v_~SIZE~0_302, main_#t~post5=|v_main_#t~post5_434|, main_~c~0=v_main_~c~0_770, ~last~0=v_~last~0_336} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {63817#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:00:55,211 INFO L290 TraceCheckUtils]: 16: Hoare triple {63817#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [231] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {63827#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:00:55,211 INFO L290 TraceCheckUtils]: 17: Hoare triple {63827#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {63761#false} is VALID [2022-04-28 04:00:55,211 INFO L290 TraceCheckUtils]: 18: Hoare triple {63761#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {63761#false} is VALID [2022-04-28 04:00:55,211 INFO L290 TraceCheckUtils]: 19: Hoare triple {63761#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {63761#false} is VALID [2022-04-28 04:00:55,211 INFO L290 TraceCheckUtils]: 20: Hoare triple {63761#false} assume !(~d~0 == ~SIZE~0); {63761#false} is VALID [2022-04-28 04:00:55,211 INFO L272 TraceCheckUtils]: 21: Hoare triple {63761#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {63761#false} is VALID [2022-04-28 04:00:55,211 INFO L290 TraceCheckUtils]: 22: Hoare triple {63761#false} ~cond := #in~cond; {63761#false} is VALID [2022-04-28 04:00:55,212 INFO L290 TraceCheckUtils]: 23: Hoare triple {63761#false} assume 0 == ~cond; {63761#false} is VALID [2022-04-28 04:00:55,212 INFO L290 TraceCheckUtils]: 24: Hoare triple {63761#false} assume !false; {63761#false} is VALID [2022-04-28 04:00:55,212 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:00:55,212 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:00:55,586 INFO L290 TraceCheckUtils]: 24: Hoare triple {63761#false} assume !false; {63761#false} is VALID [2022-04-28 04:00:55,587 INFO L290 TraceCheckUtils]: 23: Hoare triple {63761#false} assume 0 == ~cond; {63761#false} is VALID [2022-04-28 04:00:55,587 INFO L290 TraceCheckUtils]: 22: Hoare triple {63761#false} ~cond := #in~cond; {63761#false} is VALID [2022-04-28 04:00:55,587 INFO L272 TraceCheckUtils]: 21: Hoare triple {63761#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {63761#false} is VALID [2022-04-28 04:00:55,587 INFO L290 TraceCheckUtils]: 20: Hoare triple {63761#false} assume !(~d~0 == ~SIZE~0); {63761#false} is VALID [2022-04-28 04:00:55,587 INFO L290 TraceCheckUtils]: 19: Hoare triple {63761#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {63761#false} is VALID [2022-04-28 04:00:55,587 INFO L290 TraceCheckUtils]: 18: Hoare triple {63761#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {63761#false} is VALID [2022-04-28 04:00:55,588 INFO L290 TraceCheckUtils]: 17: Hoare triple {63873#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {63761#false} is VALID [2022-04-28 04:00:55,588 INFO L290 TraceCheckUtils]: 16: Hoare triple {63877#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [231] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {63873#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:00:55,589 INFO L290 TraceCheckUtils]: 15: Hoare triple {63877#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [234] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_438| |v_main_#t~post5_434|)) (.cse1 (= v_main_~c~0_771 v_main_~c~0_770))) (or (and (< v_main_~c~0_770 (+ v_~SIZE~0_302 1)) (< v_main_~c~0_771 v_main_~c~0_770) (< v_main_~c~0_770 (+ v_~last~0_336 1))) (and .cse0 .cse1 (or (not (< v_main_~c~0_771 v_~SIZE~0_302)) (not (< v_main_~c~0_771 v_~last~0_336)))) (and .cse0 .cse1 (= v_~last~0_336 v_~last~0_336) (= v_~SIZE~0_302 v_~SIZE~0_302)))) InVars {~SIZE~0=v_~SIZE~0_302, main_~c~0=v_main_~c~0_771, main_#t~post5=|v_main_#t~post5_438|, ~last~0=v_~last~0_336} OutVars{~SIZE~0=v_~SIZE~0_302, main_#t~post5=|v_main_#t~post5_434|, main_~c~0=v_main_~c~0_770, ~last~0=v_~last~0_336} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {63877#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:00:55,589 INFO L290 TraceCheckUtils]: 14: Hoare triple {63877#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [233] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {63877#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:00:55,590 INFO L290 TraceCheckUtils]: 13: Hoare triple {63887#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [232] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_335 v_main_~c~0_769)) (.cse1 (= |v_main_#t~post5_435| |v_main_#t~post5_433|)) (.cse2 (= v_main_~st~0_408 v_main_~st~0_407)) (.cse3 (= v_main_~c~0_769 v_main_~c~0_768))) (or (and (= v_main_~st~0_407 0) .cse0 (< v_main_~c~0_768 (+ v_~SIZE~0_301 1)) (< v_main_~c~0_769 v_main_~c~0_768)) (and .cse1 .cse2 .cse3 (= v_~SIZE~0_301 v_~SIZE~0_301) (= v_~last~0_335 v_~last~0_335)) (and (or (not .cse0) (not (< v_main_~c~0_769 v_~SIZE~0_301))) .cse1 .cse2 .cse3))) InVars {~SIZE~0=v_~SIZE~0_301, main_~c~0=v_main_~c~0_769, main_#t~post5=|v_main_#t~post5_435|, main_~st~0=v_main_~st~0_408, ~last~0=v_~last~0_335} OutVars{~SIZE~0=v_~SIZE~0_301, main_#t~post5=|v_main_#t~post5_433|, main_~c~0=v_main_~c~0_768, main_~st~0=v_main_~st~0_407, ~last~0=v_~last~0_335} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {63877#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:00:55,590 INFO L290 TraceCheckUtils]: 12: Hoare triple {63891#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {63887#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:00:55,590 INFO L290 TraceCheckUtils]: 11: Hoare triple {63891#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {63891#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:55,591 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {63760#true} {63891#(< 1 ~SIZE~0)} #86#return; {63891#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:55,591 INFO L290 TraceCheckUtils]: 9: Hoare triple {63760#true} assume true; {63760#true} is VALID [2022-04-28 04:00:55,591 INFO L290 TraceCheckUtils]: 8: Hoare triple {63760#true} assume !(0 == ~cond); {63760#true} is VALID [2022-04-28 04:00:55,591 INFO L290 TraceCheckUtils]: 7: Hoare triple {63760#true} ~cond := #in~cond; {63760#true} is VALID [2022-04-28 04:00:55,591 INFO L272 TraceCheckUtils]: 6: Hoare triple {63891#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {63760#true} is VALID [2022-04-28 04:00:55,591 INFO L290 TraceCheckUtils]: 5: Hoare triple {63891#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {63891#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:55,592 INFO L272 TraceCheckUtils]: 4: Hoare triple {63891#(< 1 ~SIZE~0)} call #t~ret7 := main(); {63891#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:55,592 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {63891#(< 1 ~SIZE~0)} {63760#true} #90#return; {63891#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:55,592 INFO L290 TraceCheckUtils]: 2: Hoare triple {63891#(< 1 ~SIZE~0)} assume true; {63891#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:55,593 INFO L290 TraceCheckUtils]: 1: Hoare triple {63760#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {63891#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:00:55,593 INFO L272 TraceCheckUtils]: 0: Hoare triple {63760#true} call ULTIMATE.init(); {63760#true} is VALID [2022-04-28 04:00:55,593 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:00:55,593 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1445666204] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:00:55,593 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:00:55,593 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:00:56,198 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:00:56,198 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2080383760] [2022-04-28 04:00:56,198 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2080383760] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:00:56,198 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:00:56,199 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [19] imperfect sequences [] total 19 [2022-04-28 04:00:56,199 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1459876688] [2022-04-28 04:00:56,199 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:00:56,199 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 2.263157894736842) internal successors, (43), 18 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 49 [2022-04-28 04:00:56,199 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:00:56,199 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 19 states, 19 states have (on average 2.263157894736842) internal successors, (43), 18 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:00:56,252 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:00:56,252 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2022-04-28 04:00:56,252 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:00:56,252 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-04-28 04:00:56,252 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=161, Invalid=595, Unknown=0, NotChecked=0, Total=756 [2022-04-28 04:00:56,252 INFO L87 Difference]: Start difference. First operand 283 states and 341 transitions. Second operand has 19 states, 19 states have (on average 2.263157894736842) internal successors, (43), 18 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:00:59,508 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:00:59,508 INFO L93 Difference]: Finished difference Result 574 states and 684 transitions. [2022-04-28 04:00:59,508 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2022-04-28 04:00:59,508 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 2.263157894736842) internal successors, (43), 18 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 49 [2022-04-28 04:00:59,509 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:00:59,509 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 2.263157894736842) internal successors, (43), 18 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:00:59,509 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 99 transitions. [2022-04-28 04:00:59,509 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 2.263157894736842) internal successors, (43), 18 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:00:59,510 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 99 transitions. [2022-04-28 04:00:59,510 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 19 states and 99 transitions. [2022-04-28 04:00:59,579 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 99 edges. 99 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:00:59,584 INFO L225 Difference]: With dead ends: 574 [2022-04-28 04:00:59,584 INFO L226 Difference]: Without dead ends: 358 [2022-04-28 04:00:59,589 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 97 GetRequests, 54 SyntacticMatches, 14 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 608 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=192, Invalid=738, Unknown=0, NotChecked=0, Total=930 [2022-04-28 04:00:59,589 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 55 mSDsluCounter, 23 mSDsCounter, 0 mSdLazyCounter, 851 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 56 SdHoareTripleChecker+Valid, 47 SdHoareTripleChecker+Invalid, 865 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 851 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-04-28 04:00:59,589 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [56 Valid, 47 Invalid, 865 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 851 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-04-28 04:00:59,589 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 358 states. [2022-04-28 04:01:01,065 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 358 to 283. [2022-04-28 04:01:01,065 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:01:01,066 INFO L82 GeneralOperation]: Start isEquivalent. First operand 358 states. Second operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:01:01,066 INFO L74 IsIncluded]: Start isIncluded. First operand 358 states. Second operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:01:01,066 INFO L87 Difference]: Start difference. First operand 358 states. Second operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:01:01,071 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:01:01,071 INFO L93 Difference]: Finished difference Result 358 states and 420 transitions. [2022-04-28 04:01:01,071 INFO L276 IsEmpty]: Start isEmpty. Operand 358 states and 420 transitions. [2022-04-28 04:01:01,071 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:01:01,071 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:01:01,071 INFO L74 IsIncluded]: Start isIncluded. First operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 358 states. [2022-04-28 04:01:01,071 INFO L87 Difference]: Start difference. First operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 358 states. [2022-04-28 04:01:01,076 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:01:01,076 INFO L93 Difference]: Finished difference Result 358 states and 420 transitions. [2022-04-28 04:01:01,076 INFO L276 IsEmpty]: Start isEmpty. Operand 358 states and 420 transitions. [2022-04-28 04:01:01,076 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:01:01,076 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:01:01,076 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:01:01,076 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:01:01,076 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:01:01,080 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 283 states to 283 states and 341 transitions. [2022-04-28 04:01:01,080 INFO L78 Accepts]: Start accepts. Automaton has 283 states and 341 transitions. Word has length 49 [2022-04-28 04:01:01,081 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:01:01,081 INFO L495 AbstractCegarLoop]: Abstraction has 283 states and 341 transitions. [2022-04-28 04:01:01,081 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 19 states have (on average 2.263157894736842) internal successors, (43), 18 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:01:01,081 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 283 states and 341 transitions. [2022-04-28 04:01:02,049 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 341 edges. 341 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:01:02,049 INFO L276 IsEmpty]: Start isEmpty. Operand 283 states and 341 transitions. [2022-04-28 04:01:02,050 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-04-28 04:01:02,050 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:01:02,050 INFO L195 NwaCegarLoop]: trace histogram [9, 9, 6, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:01:02,065 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (33)] Forceful destruction successful, exit code 0 [2022-04-28 04:01:02,251 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable40,33 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:01:02,251 INFO L420 AbstractCegarLoop]: === Iteration 42 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:01:02,252 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:01:02,252 INFO L85 PathProgramCache]: Analyzing trace with hash -888253729, now seen corresponding path program 31 times [2022-04-28 04:01:02,252 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:01:02,252 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1976983551] [2022-04-28 04:01:02,467 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:01:02,676 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:01:02,677 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:01:02,680 INFO L85 PathProgramCache]: Analyzing trace with hash 847923393, now seen corresponding path program 1 times [2022-04-28 04:01:02,680 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:01:02,680 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [605964768] [2022-04-28 04:01:02,680 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:01:02,680 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:01:02,689 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:02,756 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:01:02,757 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:02,765 INFO L290 TraceCheckUtils]: 0: Hoare triple {66394#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {66386#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:02,765 INFO L290 TraceCheckUtils]: 1: Hoare triple {66386#(<= 200000 ~SIZE~0)} assume true; {66386#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:02,765 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {66386#(<= 200000 ~SIZE~0)} {66381#true} #90#return; {66386#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:02,766 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:01:02,766 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:02,768 INFO L290 TraceCheckUtils]: 0: Hoare triple {66381#true} ~cond := #in~cond; {66381#true} is VALID [2022-04-28 04:01:02,768 INFO L290 TraceCheckUtils]: 1: Hoare triple {66381#true} assume !(0 == ~cond); {66381#true} is VALID [2022-04-28 04:01:02,768 INFO L290 TraceCheckUtils]: 2: Hoare triple {66381#true} assume true; {66381#true} is VALID [2022-04-28 04:01:02,768 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {66381#true} {66386#(<= 200000 ~SIZE~0)} #86#return; {66386#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:02,769 INFO L272 TraceCheckUtils]: 0: Hoare triple {66381#true} call ULTIMATE.init(); {66394#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:01:02,769 INFO L290 TraceCheckUtils]: 1: Hoare triple {66394#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {66386#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:02,770 INFO L290 TraceCheckUtils]: 2: Hoare triple {66386#(<= 200000 ~SIZE~0)} assume true; {66386#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:02,770 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {66386#(<= 200000 ~SIZE~0)} {66381#true} #90#return; {66386#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:02,770 INFO L272 TraceCheckUtils]: 4: Hoare triple {66386#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {66386#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:02,771 INFO L290 TraceCheckUtils]: 5: Hoare triple {66386#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {66386#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:02,771 INFO L272 TraceCheckUtils]: 6: Hoare triple {66386#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {66381#true} is VALID [2022-04-28 04:01:02,771 INFO L290 TraceCheckUtils]: 7: Hoare triple {66381#true} ~cond := #in~cond; {66381#true} is VALID [2022-04-28 04:01:02,771 INFO L290 TraceCheckUtils]: 8: Hoare triple {66381#true} assume !(0 == ~cond); {66381#true} is VALID [2022-04-28 04:01:02,771 INFO L290 TraceCheckUtils]: 9: Hoare triple {66381#true} assume true; {66381#true} is VALID [2022-04-28 04:01:02,771 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {66381#true} {66386#(<= 200000 ~SIZE~0)} #86#return; {66386#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:02,772 INFO L290 TraceCheckUtils]: 11: Hoare triple {66386#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {66386#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:02,772 INFO L290 TraceCheckUtils]: 12: Hoare triple {66386#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {66391#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:02,773 INFO L290 TraceCheckUtils]: 13: Hoare triple {66391#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [236] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~st~0_424 v_main_~st~0_423)) (.cse1 (= |v_main_#t~post5_448| |v_main_#t~post5_446|)) (.cse2 (= v_main_~c~0_795 v_main_~c~0_794)) (.cse3 (<= v_~last~0_345 v_main_~c~0_795))) (or (and (= v_~SIZE~0_310 v_~SIZE~0_310) (= v_~last~0_345 v_~last~0_345) .cse0 .cse1 .cse2) (and (or (not .cse3) (not (< v_main_~c~0_795 v_~SIZE~0_310))) .cse0 .cse1 .cse2) (and (= v_main_~st~0_423 0) .cse3 (< v_main_~c~0_794 (+ v_~SIZE~0_310 1)) (< v_main_~c~0_795 v_main_~c~0_794)))) InVars {~SIZE~0=v_~SIZE~0_310, main_~c~0=v_main_~c~0_795, main_#t~post5=|v_main_#t~post5_448|, main_~st~0=v_main_~st~0_424, ~last~0=v_~last~0_345} OutVars{~SIZE~0=v_~SIZE~0_310, main_#t~post5=|v_main_#t~post5_446|, main_~c~0=v_main_~c~0_794, main_~st~0=v_main_~st~0_423, ~last~0=v_~last~0_345} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {66392#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:01:02,773 INFO L290 TraceCheckUtils]: 14: Hoare triple {66392#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [237] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {66392#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:01:02,774 INFO L290 TraceCheckUtils]: 15: Hoare triple {66392#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [238] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_797 v_main_~c~0_796)) (.cse1 (= |v_main_#t~post5_451| |v_main_#t~post5_447|))) (or (and (< v_main_~c~0_797 v_main_~c~0_796) (< v_main_~c~0_796 (+ v_~SIZE~0_311 1)) (< v_main_~c~0_796 (+ v_~last~0_346 1))) (and (= v_~last~0_346 v_~last~0_346) .cse0 .cse1 (= v_~SIZE~0_311 v_~SIZE~0_311)) (and .cse0 .cse1 (or (not (< v_main_~c~0_797 v_~SIZE~0_311)) (not (< v_main_~c~0_797 v_~last~0_346)))))) InVars {~SIZE~0=v_~SIZE~0_311, main_~c~0=v_main_~c~0_797, main_#t~post5=|v_main_#t~post5_451|, ~last~0=v_~last~0_346} OutVars{~SIZE~0=v_~SIZE~0_311, main_#t~post5=|v_main_#t~post5_447|, main_~c~0=v_main_~c~0_796, ~last~0=v_~last~0_346} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {66392#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:01:02,774 INFO L290 TraceCheckUtils]: 16: Hoare triple {66392#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [235] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {66393#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:01:02,775 INFO L290 TraceCheckUtils]: 17: Hoare triple {66393#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {66382#false} is VALID [2022-04-28 04:01:02,775 INFO L290 TraceCheckUtils]: 18: Hoare triple {66382#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {66382#false} is VALID [2022-04-28 04:01:02,775 INFO L290 TraceCheckUtils]: 19: Hoare triple {66382#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {66382#false} is VALID [2022-04-28 04:01:02,775 INFO L290 TraceCheckUtils]: 20: Hoare triple {66382#false} assume !(~d~0 == ~SIZE~0); {66382#false} is VALID [2022-04-28 04:01:02,775 INFO L272 TraceCheckUtils]: 21: Hoare triple {66382#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {66382#false} is VALID [2022-04-28 04:01:02,775 INFO L290 TraceCheckUtils]: 22: Hoare triple {66382#false} ~cond := #in~cond; {66382#false} is VALID [2022-04-28 04:01:02,775 INFO L290 TraceCheckUtils]: 23: Hoare triple {66382#false} assume 0 == ~cond; {66382#false} is VALID [2022-04-28 04:01:02,775 INFO L290 TraceCheckUtils]: 24: Hoare triple {66382#false} assume !false; {66382#false} is VALID [2022-04-28 04:01:02,775 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:01:02,775 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:01:02,775 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [605964768] [2022-04-28 04:01:02,775 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [605964768] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:01:02,775 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1253132805] [2022-04-28 04:01:02,776 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:01:02,776 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:01:02,776 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:01:02,776 INFO L229 MonitoredProcess]: Starting monitored process 34 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:01:02,777 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (34)] Waiting until timeout for monitored process [2022-04-28 04:01:02,810 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:02,811 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:01:02,817 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:02,817 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:01:03,055 INFO L272 TraceCheckUtils]: 0: Hoare triple {66381#true} call ULTIMATE.init(); {66381#true} is VALID [2022-04-28 04:01:03,056 INFO L290 TraceCheckUtils]: 1: Hoare triple {66381#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {66386#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:03,056 INFO L290 TraceCheckUtils]: 2: Hoare triple {66386#(<= 200000 ~SIZE~0)} assume true; {66386#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:03,056 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {66386#(<= 200000 ~SIZE~0)} {66381#true} #90#return; {66386#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:03,057 INFO L272 TraceCheckUtils]: 4: Hoare triple {66386#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {66386#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:03,057 INFO L290 TraceCheckUtils]: 5: Hoare triple {66386#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {66386#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:03,057 INFO L272 TraceCheckUtils]: 6: Hoare triple {66386#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {66386#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:03,058 INFO L290 TraceCheckUtils]: 7: Hoare triple {66386#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {66386#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:03,058 INFO L290 TraceCheckUtils]: 8: Hoare triple {66386#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {66386#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:03,058 INFO L290 TraceCheckUtils]: 9: Hoare triple {66386#(<= 200000 ~SIZE~0)} assume true; {66386#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:03,059 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {66386#(<= 200000 ~SIZE~0)} {66386#(<= 200000 ~SIZE~0)} #86#return; {66386#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:03,059 INFO L290 TraceCheckUtils]: 11: Hoare triple {66386#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {66386#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:03,059 INFO L290 TraceCheckUtils]: 12: Hoare triple {66386#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {66434#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:03,060 INFO L290 TraceCheckUtils]: 13: Hoare triple {66434#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [236] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~st~0_424 v_main_~st~0_423)) (.cse1 (= |v_main_#t~post5_448| |v_main_#t~post5_446|)) (.cse2 (= v_main_~c~0_795 v_main_~c~0_794)) (.cse3 (<= v_~last~0_345 v_main_~c~0_795))) (or (and (= v_~SIZE~0_310 v_~SIZE~0_310) (= v_~last~0_345 v_~last~0_345) .cse0 .cse1 .cse2) (and (or (not .cse3) (not (< v_main_~c~0_795 v_~SIZE~0_310))) .cse0 .cse1 .cse2) (and (= v_main_~st~0_423 0) .cse3 (< v_main_~c~0_794 (+ v_~SIZE~0_310 1)) (< v_main_~c~0_795 v_main_~c~0_794)))) InVars {~SIZE~0=v_~SIZE~0_310, main_~c~0=v_main_~c~0_795, main_#t~post5=|v_main_#t~post5_448|, main_~st~0=v_main_~st~0_424, ~last~0=v_~last~0_345} OutVars{~SIZE~0=v_~SIZE~0_310, main_#t~post5=|v_main_#t~post5_446|, main_~c~0=v_main_~c~0_794, main_~st~0=v_main_~st~0_423, ~last~0=v_~last~0_345} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {66438#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:03,061 INFO L290 TraceCheckUtils]: 14: Hoare triple {66438#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [237] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {66438#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:03,061 INFO L290 TraceCheckUtils]: 15: Hoare triple {66438#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [238] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_797 v_main_~c~0_796)) (.cse1 (= |v_main_#t~post5_451| |v_main_#t~post5_447|))) (or (and (< v_main_~c~0_797 v_main_~c~0_796) (< v_main_~c~0_796 (+ v_~SIZE~0_311 1)) (< v_main_~c~0_796 (+ v_~last~0_346 1))) (and (= v_~last~0_346 v_~last~0_346) .cse0 .cse1 (= v_~SIZE~0_311 v_~SIZE~0_311)) (and .cse0 .cse1 (or (not (< v_main_~c~0_797 v_~SIZE~0_311)) (not (< v_main_~c~0_797 v_~last~0_346)))))) InVars {~SIZE~0=v_~SIZE~0_311, main_~c~0=v_main_~c~0_797, main_#t~post5=|v_main_#t~post5_451|, ~last~0=v_~last~0_346} OutVars{~SIZE~0=v_~SIZE~0_311, main_#t~post5=|v_main_#t~post5_447|, main_~c~0=v_main_~c~0_796, ~last~0=v_~last~0_346} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {66438#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:03,062 INFO L290 TraceCheckUtils]: 16: Hoare triple {66438#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [235] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {66448#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:01:03,063 INFO L290 TraceCheckUtils]: 17: Hoare triple {66448#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {66382#false} is VALID [2022-04-28 04:01:03,063 INFO L290 TraceCheckUtils]: 18: Hoare triple {66382#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {66382#false} is VALID [2022-04-28 04:01:03,063 INFO L290 TraceCheckUtils]: 19: Hoare triple {66382#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {66382#false} is VALID [2022-04-28 04:01:03,063 INFO L290 TraceCheckUtils]: 20: Hoare triple {66382#false} assume !(~d~0 == ~SIZE~0); {66382#false} is VALID [2022-04-28 04:01:03,063 INFO L272 TraceCheckUtils]: 21: Hoare triple {66382#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {66382#false} is VALID [2022-04-28 04:01:03,063 INFO L290 TraceCheckUtils]: 22: Hoare triple {66382#false} ~cond := #in~cond; {66382#false} is VALID [2022-04-28 04:01:03,063 INFO L290 TraceCheckUtils]: 23: Hoare triple {66382#false} assume 0 == ~cond; {66382#false} is VALID [2022-04-28 04:01:03,063 INFO L290 TraceCheckUtils]: 24: Hoare triple {66382#false} assume !false; {66382#false} is VALID [2022-04-28 04:01:03,063 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:01:03,063 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:01:03,391 INFO L290 TraceCheckUtils]: 24: Hoare triple {66382#false} assume !false; {66382#false} is VALID [2022-04-28 04:01:03,391 INFO L290 TraceCheckUtils]: 23: Hoare triple {66382#false} assume 0 == ~cond; {66382#false} is VALID [2022-04-28 04:01:03,391 INFO L290 TraceCheckUtils]: 22: Hoare triple {66382#false} ~cond := #in~cond; {66382#false} is VALID [2022-04-28 04:01:03,392 INFO L272 TraceCheckUtils]: 21: Hoare triple {66382#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {66382#false} is VALID [2022-04-28 04:01:03,392 INFO L290 TraceCheckUtils]: 20: Hoare triple {66382#false} assume !(~d~0 == ~SIZE~0); {66382#false} is VALID [2022-04-28 04:01:03,392 INFO L290 TraceCheckUtils]: 19: Hoare triple {66382#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {66382#false} is VALID [2022-04-28 04:01:03,392 INFO L290 TraceCheckUtils]: 18: Hoare triple {66382#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {66382#false} is VALID [2022-04-28 04:01:03,392 INFO L290 TraceCheckUtils]: 17: Hoare triple {66494#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {66382#false} is VALID [2022-04-28 04:01:03,393 INFO L290 TraceCheckUtils]: 16: Hoare triple {66498#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [235] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {66494#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:01:03,393 INFO L290 TraceCheckUtils]: 15: Hoare triple {66498#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [238] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_797 v_main_~c~0_796)) (.cse1 (= |v_main_#t~post5_451| |v_main_#t~post5_447|))) (or (and (< v_main_~c~0_797 v_main_~c~0_796) (< v_main_~c~0_796 (+ v_~SIZE~0_311 1)) (< v_main_~c~0_796 (+ v_~last~0_346 1))) (and (= v_~last~0_346 v_~last~0_346) .cse0 .cse1 (= v_~SIZE~0_311 v_~SIZE~0_311)) (and .cse0 .cse1 (or (not (< v_main_~c~0_797 v_~SIZE~0_311)) (not (< v_main_~c~0_797 v_~last~0_346)))))) InVars {~SIZE~0=v_~SIZE~0_311, main_~c~0=v_main_~c~0_797, main_#t~post5=|v_main_#t~post5_451|, ~last~0=v_~last~0_346} OutVars{~SIZE~0=v_~SIZE~0_311, main_#t~post5=|v_main_#t~post5_447|, main_~c~0=v_main_~c~0_796, ~last~0=v_~last~0_346} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {66498#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:01:03,393 INFO L290 TraceCheckUtils]: 14: Hoare triple {66498#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [237] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {66498#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:01:03,394 INFO L290 TraceCheckUtils]: 13: Hoare triple {66508#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [236] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~st~0_424 v_main_~st~0_423)) (.cse1 (= |v_main_#t~post5_448| |v_main_#t~post5_446|)) (.cse2 (= v_main_~c~0_795 v_main_~c~0_794)) (.cse3 (<= v_~last~0_345 v_main_~c~0_795))) (or (and (= v_~SIZE~0_310 v_~SIZE~0_310) (= v_~last~0_345 v_~last~0_345) .cse0 .cse1 .cse2) (and (or (not .cse3) (not (< v_main_~c~0_795 v_~SIZE~0_310))) .cse0 .cse1 .cse2) (and (= v_main_~st~0_423 0) .cse3 (< v_main_~c~0_794 (+ v_~SIZE~0_310 1)) (< v_main_~c~0_795 v_main_~c~0_794)))) InVars {~SIZE~0=v_~SIZE~0_310, main_~c~0=v_main_~c~0_795, main_#t~post5=|v_main_#t~post5_448|, main_~st~0=v_main_~st~0_424, ~last~0=v_~last~0_345} OutVars{~SIZE~0=v_~SIZE~0_310, main_#t~post5=|v_main_#t~post5_446|, main_~c~0=v_main_~c~0_794, main_~st~0=v_main_~st~0_423, ~last~0=v_~last~0_345} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {66498#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:01:03,395 INFO L290 TraceCheckUtils]: 12: Hoare triple {66512#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {66508#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:01:03,395 INFO L290 TraceCheckUtils]: 11: Hoare triple {66512#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {66512#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:03,395 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {66381#true} {66512#(< 1 ~SIZE~0)} #86#return; {66512#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:03,395 INFO L290 TraceCheckUtils]: 9: Hoare triple {66381#true} assume true; {66381#true} is VALID [2022-04-28 04:01:03,395 INFO L290 TraceCheckUtils]: 8: Hoare triple {66381#true} assume !(0 == ~cond); {66381#true} is VALID [2022-04-28 04:01:03,396 INFO L290 TraceCheckUtils]: 7: Hoare triple {66381#true} ~cond := #in~cond; {66381#true} is VALID [2022-04-28 04:01:03,396 INFO L272 TraceCheckUtils]: 6: Hoare triple {66512#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {66381#true} is VALID [2022-04-28 04:01:03,396 INFO L290 TraceCheckUtils]: 5: Hoare triple {66512#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {66512#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:03,396 INFO L272 TraceCheckUtils]: 4: Hoare triple {66512#(< 1 ~SIZE~0)} call #t~ret7 := main(); {66512#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:03,396 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {66512#(< 1 ~SIZE~0)} {66381#true} #90#return; {66512#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:03,397 INFO L290 TraceCheckUtils]: 2: Hoare triple {66512#(< 1 ~SIZE~0)} assume true; {66512#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:03,397 INFO L290 TraceCheckUtils]: 1: Hoare triple {66381#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {66512#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:03,397 INFO L272 TraceCheckUtils]: 0: Hoare triple {66381#true} call ULTIMATE.init(); {66381#true} is VALID [2022-04-28 04:01:03,397 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:01:03,398 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1253132805] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:01:03,398 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:01:03,398 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:01:03,996 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:01:03,996 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1976983551] [2022-04-28 04:01:03,996 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1976983551] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:01:03,996 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:01:03,996 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [20] imperfect sequences [] total 20 [2022-04-28 04:01:03,996 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [478020875] [2022-04-28 04:01:03,996 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:01:03,996 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 20 states have (on average 2.15) internal successors, (43), 19 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 49 [2022-04-28 04:01:03,997 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:01:03,997 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 20 states, 20 states have (on average 2.15) internal successors, (43), 19 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:01:04,031 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:01:04,032 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 20 states [2022-04-28 04:01:04,032 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:01:04,032 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2022-04-28 04:01:04,032 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=176, Invalid=636, Unknown=0, NotChecked=0, Total=812 [2022-04-28 04:01:04,032 INFO L87 Difference]: Start difference. First operand 283 states and 341 transitions. Second operand has 20 states, 20 states have (on average 2.15) internal successors, (43), 19 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:01:07,392 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:01:07,392 INFO L93 Difference]: Finished difference Result 565 states and 675 transitions. [2022-04-28 04:01:07,392 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-04-28 04:01:07,392 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 20 states have (on average 2.15) internal successors, (43), 19 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 49 [2022-04-28 04:01:07,392 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:01:07,392 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 20 states have (on average 2.15) internal successors, (43), 19 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:01:07,393 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 100 transitions. [2022-04-28 04:01:07,393 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 20 states have (on average 2.15) internal successors, (43), 19 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:01:07,393 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 100 transitions. [2022-04-28 04:01:07,393 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 100 transitions. [2022-04-28 04:01:07,462 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 100 edges. 100 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:01:07,467 INFO L225 Difference]: With dead ends: 565 [2022-04-28 04:01:07,467 INFO L226 Difference]: Without dead ends: 349 [2022-04-28 04:01:07,467 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 97 GetRequests, 54 SyntacticMatches, 13 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 637 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=209, Invalid=783, Unknown=0, NotChecked=0, Total=992 [2022-04-28 04:01:07,468 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 58 mSDsluCounter, 20 mSDsCounter, 0 mSdLazyCounter, 965 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 59 SdHoareTripleChecker+Valid, 44 SdHoareTripleChecker+Invalid, 980 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 965 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-28 04:01:07,468 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [59 Valid, 44 Invalid, 980 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 965 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-28 04:01:07,468 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 349 states. [2022-04-28 04:01:08,853 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 349 to 283. [2022-04-28 04:01:08,853 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:01:08,853 INFO L82 GeneralOperation]: Start isEquivalent. First operand 349 states. Second operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:01:08,853 INFO L74 IsIncluded]: Start isIncluded. First operand 349 states. Second operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:01:08,854 INFO L87 Difference]: Start difference. First operand 349 states. Second operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:01:08,858 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:01:08,858 INFO L93 Difference]: Finished difference Result 349 states and 411 transitions. [2022-04-28 04:01:08,858 INFO L276 IsEmpty]: Start isEmpty. Operand 349 states and 411 transitions. [2022-04-28 04:01:08,858 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:01:08,858 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:01:08,858 INFO L74 IsIncluded]: Start isIncluded. First operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 349 states. [2022-04-28 04:01:08,859 INFO L87 Difference]: Start difference. First operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 349 states. [2022-04-28 04:01:08,863 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:01:08,863 INFO L93 Difference]: Finished difference Result 349 states and 411 transitions. [2022-04-28 04:01:08,863 INFO L276 IsEmpty]: Start isEmpty. Operand 349 states and 411 transitions. [2022-04-28 04:01:08,863 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:01:08,863 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:01:08,863 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:01:08,863 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:01:08,863 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:01:08,867 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 283 states to 283 states and 341 transitions. [2022-04-28 04:01:08,867 INFO L78 Accepts]: Start accepts. Automaton has 283 states and 341 transitions. Word has length 49 [2022-04-28 04:01:08,867 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:01:08,867 INFO L495 AbstractCegarLoop]: Abstraction has 283 states and 341 transitions. [2022-04-28 04:01:08,867 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 20 states, 20 states have (on average 2.15) internal successors, (43), 19 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:01:08,868 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 283 states and 341 transitions. [2022-04-28 04:01:09,816 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 341 edges. 341 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:01:09,817 INFO L276 IsEmpty]: Start isEmpty. Operand 283 states and 341 transitions. [2022-04-28 04:01:09,817 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-04-28 04:01:09,817 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:01:09,817 INFO L195 NwaCegarLoop]: trace histogram [9, 9, 5, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:01:09,837 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (34)] Forceful destruction successful, exit code 0 [2022-04-28 04:01:10,017 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 34 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable41 [2022-04-28 04:01:10,018 INFO L420 AbstractCegarLoop]: === Iteration 43 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:01:10,018 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:01:10,018 INFO L85 PathProgramCache]: Analyzing trace with hash -826214115, now seen corresponding path program 32 times [2022-04-28 04:01:10,018 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:01:10,018 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [54491759] [2022-04-28 04:01:10,242 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:01:10,472 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:01:10,473 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:01:10,476 INFO L85 PathProgramCache]: Analyzing trace with hash -954521151, now seen corresponding path program 1 times [2022-04-28 04:01:10,476 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:01:10,476 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [81999268] [2022-04-28 04:01:10,476 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:01:10,477 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:01:10,484 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:10,542 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:01:10,544 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:10,551 INFO L290 TraceCheckUtils]: 0: Hoare triple {68980#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {68972#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:10,551 INFO L290 TraceCheckUtils]: 1: Hoare triple {68972#(<= 200000 ~SIZE~0)} assume true; {68972#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:10,551 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {68972#(<= 200000 ~SIZE~0)} {68967#true} #90#return; {68972#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:10,551 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:01:10,552 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:10,554 INFO L290 TraceCheckUtils]: 0: Hoare triple {68967#true} ~cond := #in~cond; {68967#true} is VALID [2022-04-28 04:01:10,554 INFO L290 TraceCheckUtils]: 1: Hoare triple {68967#true} assume !(0 == ~cond); {68967#true} is VALID [2022-04-28 04:01:10,554 INFO L290 TraceCheckUtils]: 2: Hoare triple {68967#true} assume true; {68967#true} is VALID [2022-04-28 04:01:10,554 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {68967#true} {68972#(<= 200000 ~SIZE~0)} #86#return; {68972#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:10,555 INFO L272 TraceCheckUtils]: 0: Hoare triple {68967#true} call ULTIMATE.init(); {68980#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:01:10,555 INFO L290 TraceCheckUtils]: 1: Hoare triple {68980#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {68972#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:10,555 INFO L290 TraceCheckUtils]: 2: Hoare triple {68972#(<= 200000 ~SIZE~0)} assume true; {68972#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:10,556 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {68972#(<= 200000 ~SIZE~0)} {68967#true} #90#return; {68972#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:10,556 INFO L272 TraceCheckUtils]: 4: Hoare triple {68972#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {68972#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:10,556 INFO L290 TraceCheckUtils]: 5: Hoare triple {68972#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {68972#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:10,556 INFO L272 TraceCheckUtils]: 6: Hoare triple {68972#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {68967#true} is VALID [2022-04-28 04:01:10,556 INFO L290 TraceCheckUtils]: 7: Hoare triple {68967#true} ~cond := #in~cond; {68967#true} is VALID [2022-04-28 04:01:10,556 INFO L290 TraceCheckUtils]: 8: Hoare triple {68967#true} assume !(0 == ~cond); {68967#true} is VALID [2022-04-28 04:01:10,556 INFO L290 TraceCheckUtils]: 9: Hoare triple {68967#true} assume true; {68967#true} is VALID [2022-04-28 04:01:10,557 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {68967#true} {68972#(<= 200000 ~SIZE~0)} #86#return; {68972#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:10,557 INFO L290 TraceCheckUtils]: 11: Hoare triple {68972#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {68972#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:10,557 INFO L290 TraceCheckUtils]: 12: Hoare triple {68972#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {68977#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:10,558 INFO L290 TraceCheckUtils]: 13: Hoare triple {68977#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [240] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~st~0_439 v_main_~st~0_438)) (.cse0 (<= v_~last~0_355 v_main_~c~0_821)) (.cse2 (= v_main_~c~0_821 v_main_~c~0_820))) (or (and (< v_main_~c~0_821 v_main_~c~0_820) (= v_main_~st~0_438 0) (< v_main_~c~0_820 (+ v_~SIZE~0_319 1)) .cse0) (and .cse1 .cse2 (= v_~last~0_355 v_~last~0_355) (= v_~SIZE~0_319 v_~SIZE~0_319) (= |v_main_#t~post5_461| |v_main_#t~post5_459|)) (and .cse1 (or (not .cse0) (not (< v_main_~c~0_821 v_~SIZE~0_319))) .cse2 (= |v_main_#t~post5_459| |v_main_#t~post5_461|)))) InVars {~SIZE~0=v_~SIZE~0_319, main_~c~0=v_main_~c~0_821, main_#t~post5=|v_main_#t~post5_461|, main_~st~0=v_main_~st~0_439, ~last~0=v_~last~0_355} OutVars{~SIZE~0=v_~SIZE~0_319, main_#t~post5=|v_main_#t~post5_459|, main_~c~0=v_main_~c~0_820, main_~st~0=v_main_~st~0_438, ~last~0=v_~last~0_355} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {68978#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:01:10,558 INFO L290 TraceCheckUtils]: 14: Hoare triple {68978#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [241] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {68978#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:01:10,559 INFO L290 TraceCheckUtils]: 15: Hoare triple {68978#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [242] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_823 v_main_~c~0_822)) (.cse1 (= |v_main_#t~post5_464| |v_main_#t~post5_460|))) (or (and .cse0 (or (not (< v_main_~c~0_823 v_~SIZE~0_320)) (not (< v_main_~c~0_823 v_~last~0_356))) .cse1) (and (< v_main_~c~0_823 v_main_~c~0_822) (< v_main_~c~0_822 (+ v_~SIZE~0_320 1)) (< v_main_~c~0_822 (+ v_~last~0_356 1))) (and (= v_~last~0_356 v_~last~0_356) (= v_~SIZE~0_320 v_~SIZE~0_320) .cse0 .cse1))) InVars {~SIZE~0=v_~SIZE~0_320, main_~c~0=v_main_~c~0_823, main_#t~post5=|v_main_#t~post5_464|, ~last~0=v_~last~0_356} OutVars{~SIZE~0=v_~SIZE~0_320, main_#t~post5=|v_main_#t~post5_460|, main_~c~0=v_main_~c~0_822, ~last~0=v_~last~0_356} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {68978#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:01:10,559 INFO L290 TraceCheckUtils]: 16: Hoare triple {68978#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [239] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {68979#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:01:10,560 INFO L290 TraceCheckUtils]: 17: Hoare triple {68979#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {68968#false} is VALID [2022-04-28 04:01:10,560 INFO L290 TraceCheckUtils]: 18: Hoare triple {68968#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {68968#false} is VALID [2022-04-28 04:01:10,560 INFO L290 TraceCheckUtils]: 19: Hoare triple {68968#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {68968#false} is VALID [2022-04-28 04:01:10,560 INFO L290 TraceCheckUtils]: 20: Hoare triple {68968#false} assume !(~d~0 == ~SIZE~0); {68968#false} is VALID [2022-04-28 04:01:10,560 INFO L272 TraceCheckUtils]: 21: Hoare triple {68968#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {68968#false} is VALID [2022-04-28 04:01:10,560 INFO L290 TraceCheckUtils]: 22: Hoare triple {68968#false} ~cond := #in~cond; {68968#false} is VALID [2022-04-28 04:01:10,560 INFO L290 TraceCheckUtils]: 23: Hoare triple {68968#false} assume 0 == ~cond; {68968#false} is VALID [2022-04-28 04:01:10,560 INFO L290 TraceCheckUtils]: 24: Hoare triple {68968#false} assume !false; {68968#false} is VALID [2022-04-28 04:01:10,560 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:01:10,560 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:01:10,560 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [81999268] [2022-04-28 04:01:10,561 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [81999268] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:01:10,561 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [806250815] [2022-04-28 04:01:10,561 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:01:10,561 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:01:10,561 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:01:10,562 INFO L229 MonitoredProcess]: Starting monitored process 35 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:01:10,562 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (35)] Waiting until timeout for monitored process [2022-04-28 04:01:10,591 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:10,591 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:01:10,598 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:10,598 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:01:10,833 INFO L272 TraceCheckUtils]: 0: Hoare triple {68967#true} call ULTIMATE.init(); {68967#true} is VALID [2022-04-28 04:01:10,834 INFO L290 TraceCheckUtils]: 1: Hoare triple {68967#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {68972#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:10,834 INFO L290 TraceCheckUtils]: 2: Hoare triple {68972#(<= 200000 ~SIZE~0)} assume true; {68972#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:10,834 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {68972#(<= 200000 ~SIZE~0)} {68967#true} #90#return; {68972#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:10,835 INFO L272 TraceCheckUtils]: 4: Hoare triple {68972#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {68972#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:10,835 INFO L290 TraceCheckUtils]: 5: Hoare triple {68972#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {68972#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:10,835 INFO L272 TraceCheckUtils]: 6: Hoare triple {68972#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {68972#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:10,836 INFO L290 TraceCheckUtils]: 7: Hoare triple {68972#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {68972#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:10,836 INFO L290 TraceCheckUtils]: 8: Hoare triple {68972#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {68972#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:10,836 INFO L290 TraceCheckUtils]: 9: Hoare triple {68972#(<= 200000 ~SIZE~0)} assume true; {68972#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:10,837 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {68972#(<= 200000 ~SIZE~0)} {68972#(<= 200000 ~SIZE~0)} #86#return; {68972#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:10,837 INFO L290 TraceCheckUtils]: 11: Hoare triple {68972#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {68972#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:10,837 INFO L290 TraceCheckUtils]: 12: Hoare triple {68972#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {69020#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:10,838 INFO L290 TraceCheckUtils]: 13: Hoare triple {69020#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [240] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~st~0_439 v_main_~st~0_438)) (.cse0 (<= v_~last~0_355 v_main_~c~0_821)) (.cse2 (= v_main_~c~0_821 v_main_~c~0_820))) (or (and (< v_main_~c~0_821 v_main_~c~0_820) (= v_main_~st~0_438 0) (< v_main_~c~0_820 (+ v_~SIZE~0_319 1)) .cse0) (and .cse1 .cse2 (= v_~last~0_355 v_~last~0_355) (= v_~SIZE~0_319 v_~SIZE~0_319) (= |v_main_#t~post5_461| |v_main_#t~post5_459|)) (and .cse1 (or (not .cse0) (not (< v_main_~c~0_821 v_~SIZE~0_319))) .cse2 (= |v_main_#t~post5_459| |v_main_#t~post5_461|)))) InVars {~SIZE~0=v_~SIZE~0_319, main_~c~0=v_main_~c~0_821, main_#t~post5=|v_main_#t~post5_461|, main_~st~0=v_main_~st~0_439, ~last~0=v_~last~0_355} OutVars{~SIZE~0=v_~SIZE~0_319, main_#t~post5=|v_main_#t~post5_459|, main_~c~0=v_main_~c~0_820, main_~st~0=v_main_~st~0_438, ~last~0=v_~last~0_355} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {69024#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:10,838 INFO L290 TraceCheckUtils]: 14: Hoare triple {69024#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [241] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {69024#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:10,839 INFO L290 TraceCheckUtils]: 15: Hoare triple {69024#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [242] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_823 v_main_~c~0_822)) (.cse1 (= |v_main_#t~post5_464| |v_main_#t~post5_460|))) (or (and .cse0 (or (not (< v_main_~c~0_823 v_~SIZE~0_320)) (not (< v_main_~c~0_823 v_~last~0_356))) .cse1) (and (< v_main_~c~0_823 v_main_~c~0_822) (< v_main_~c~0_822 (+ v_~SIZE~0_320 1)) (< v_main_~c~0_822 (+ v_~last~0_356 1))) (and (= v_~last~0_356 v_~last~0_356) (= v_~SIZE~0_320 v_~SIZE~0_320) .cse0 .cse1))) InVars {~SIZE~0=v_~SIZE~0_320, main_~c~0=v_main_~c~0_823, main_#t~post5=|v_main_#t~post5_464|, ~last~0=v_~last~0_356} OutVars{~SIZE~0=v_~SIZE~0_320, main_#t~post5=|v_main_#t~post5_460|, main_~c~0=v_main_~c~0_822, ~last~0=v_~last~0_356} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {69024#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:10,840 INFO L290 TraceCheckUtils]: 16: Hoare triple {69024#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [239] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {69034#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:01:10,840 INFO L290 TraceCheckUtils]: 17: Hoare triple {69034#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {68968#false} is VALID [2022-04-28 04:01:10,840 INFO L290 TraceCheckUtils]: 18: Hoare triple {68968#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {68968#false} is VALID [2022-04-28 04:01:10,840 INFO L290 TraceCheckUtils]: 19: Hoare triple {68968#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {68968#false} is VALID [2022-04-28 04:01:10,840 INFO L290 TraceCheckUtils]: 20: Hoare triple {68968#false} assume !(~d~0 == ~SIZE~0); {68968#false} is VALID [2022-04-28 04:01:10,841 INFO L272 TraceCheckUtils]: 21: Hoare triple {68968#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {68968#false} is VALID [2022-04-28 04:01:10,841 INFO L290 TraceCheckUtils]: 22: Hoare triple {68968#false} ~cond := #in~cond; {68968#false} is VALID [2022-04-28 04:01:10,841 INFO L290 TraceCheckUtils]: 23: Hoare triple {68968#false} assume 0 == ~cond; {68968#false} is VALID [2022-04-28 04:01:10,841 INFO L290 TraceCheckUtils]: 24: Hoare triple {68968#false} assume !false; {68968#false} is VALID [2022-04-28 04:01:10,841 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:01:10,841 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:01:11,223 INFO L290 TraceCheckUtils]: 24: Hoare triple {68968#false} assume !false; {68968#false} is VALID [2022-04-28 04:01:11,223 INFO L290 TraceCheckUtils]: 23: Hoare triple {68968#false} assume 0 == ~cond; {68968#false} is VALID [2022-04-28 04:01:11,223 INFO L290 TraceCheckUtils]: 22: Hoare triple {68968#false} ~cond := #in~cond; {68968#false} is VALID [2022-04-28 04:01:11,223 INFO L272 TraceCheckUtils]: 21: Hoare triple {68968#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {68968#false} is VALID [2022-04-28 04:01:11,223 INFO L290 TraceCheckUtils]: 20: Hoare triple {68968#false} assume !(~d~0 == ~SIZE~0); {68968#false} is VALID [2022-04-28 04:01:11,224 INFO L290 TraceCheckUtils]: 19: Hoare triple {68968#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {68968#false} is VALID [2022-04-28 04:01:11,224 INFO L290 TraceCheckUtils]: 18: Hoare triple {68968#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {68968#false} is VALID [2022-04-28 04:01:11,224 INFO L290 TraceCheckUtils]: 17: Hoare triple {69080#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {68968#false} is VALID [2022-04-28 04:01:11,225 INFO L290 TraceCheckUtils]: 16: Hoare triple {69084#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [239] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {69080#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:01:11,225 INFO L290 TraceCheckUtils]: 15: Hoare triple {69084#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [242] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_823 v_main_~c~0_822)) (.cse1 (= |v_main_#t~post5_464| |v_main_#t~post5_460|))) (or (and .cse0 (or (not (< v_main_~c~0_823 v_~SIZE~0_320)) (not (< v_main_~c~0_823 v_~last~0_356))) .cse1) (and (< v_main_~c~0_823 v_main_~c~0_822) (< v_main_~c~0_822 (+ v_~SIZE~0_320 1)) (< v_main_~c~0_822 (+ v_~last~0_356 1))) (and (= v_~last~0_356 v_~last~0_356) (= v_~SIZE~0_320 v_~SIZE~0_320) .cse0 .cse1))) InVars {~SIZE~0=v_~SIZE~0_320, main_~c~0=v_main_~c~0_823, main_#t~post5=|v_main_#t~post5_464|, ~last~0=v_~last~0_356} OutVars{~SIZE~0=v_~SIZE~0_320, main_#t~post5=|v_main_#t~post5_460|, main_~c~0=v_main_~c~0_822, ~last~0=v_~last~0_356} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {69084#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:01:11,225 INFO L290 TraceCheckUtils]: 14: Hoare triple {69084#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [241] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {69084#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:01:11,226 INFO L290 TraceCheckUtils]: 13: Hoare triple {69094#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [240] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~st~0_439 v_main_~st~0_438)) (.cse0 (<= v_~last~0_355 v_main_~c~0_821)) (.cse2 (= v_main_~c~0_821 v_main_~c~0_820))) (or (and (< v_main_~c~0_821 v_main_~c~0_820) (= v_main_~st~0_438 0) (< v_main_~c~0_820 (+ v_~SIZE~0_319 1)) .cse0) (and .cse1 .cse2 (= v_~last~0_355 v_~last~0_355) (= v_~SIZE~0_319 v_~SIZE~0_319) (= |v_main_#t~post5_461| |v_main_#t~post5_459|)) (and .cse1 (or (not .cse0) (not (< v_main_~c~0_821 v_~SIZE~0_319))) .cse2 (= |v_main_#t~post5_459| |v_main_#t~post5_461|)))) InVars {~SIZE~0=v_~SIZE~0_319, main_~c~0=v_main_~c~0_821, main_#t~post5=|v_main_#t~post5_461|, main_~st~0=v_main_~st~0_439, ~last~0=v_~last~0_355} OutVars{~SIZE~0=v_~SIZE~0_319, main_#t~post5=|v_main_#t~post5_459|, main_~c~0=v_main_~c~0_820, main_~st~0=v_main_~st~0_438, ~last~0=v_~last~0_355} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {69084#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:01:11,226 INFO L290 TraceCheckUtils]: 12: Hoare triple {69098#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {69094#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:01:11,227 INFO L290 TraceCheckUtils]: 11: Hoare triple {69098#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {69098#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:11,227 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {68967#true} {69098#(< 1 ~SIZE~0)} #86#return; {69098#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:11,227 INFO L290 TraceCheckUtils]: 9: Hoare triple {68967#true} assume true; {68967#true} is VALID [2022-04-28 04:01:11,227 INFO L290 TraceCheckUtils]: 8: Hoare triple {68967#true} assume !(0 == ~cond); {68967#true} is VALID [2022-04-28 04:01:11,227 INFO L290 TraceCheckUtils]: 7: Hoare triple {68967#true} ~cond := #in~cond; {68967#true} is VALID [2022-04-28 04:01:11,228 INFO L272 TraceCheckUtils]: 6: Hoare triple {69098#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {68967#true} is VALID [2022-04-28 04:01:11,228 INFO L290 TraceCheckUtils]: 5: Hoare triple {69098#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {69098#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:11,228 INFO L272 TraceCheckUtils]: 4: Hoare triple {69098#(< 1 ~SIZE~0)} call #t~ret7 := main(); {69098#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:11,228 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {69098#(< 1 ~SIZE~0)} {68967#true} #90#return; {69098#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:11,229 INFO L290 TraceCheckUtils]: 2: Hoare triple {69098#(< 1 ~SIZE~0)} assume true; {69098#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:11,229 INFO L290 TraceCheckUtils]: 1: Hoare triple {68967#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {69098#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:11,229 INFO L272 TraceCheckUtils]: 0: Hoare triple {68967#true} call ULTIMATE.init(); {68967#true} is VALID [2022-04-28 04:01:11,229 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:01:11,230 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [806250815] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:01:11,230 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:01:11,230 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:01:11,813 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:01:11,813 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [54491759] [2022-04-28 04:01:11,814 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [54491759] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:01:11,814 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:01:11,814 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [21] imperfect sequences [] total 21 [2022-04-28 04:01:11,814 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1858977810] [2022-04-28 04:01:11,814 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:01:11,814 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 21 states have (on average 2.0476190476190474) internal successors, (43), 20 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 49 [2022-04-28 04:01:11,814 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:01:11,814 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 21 states, 21 states have (on average 2.0476190476190474) internal successors, (43), 20 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:01:11,846 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:01:11,847 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2022-04-28 04:01:11,847 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:01:11,847 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2022-04-28 04:01:11,847 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=191, Invalid=679, Unknown=0, NotChecked=0, Total=870 [2022-04-28 04:01:11,847 INFO L87 Difference]: Start difference. First operand 283 states and 341 transitions. Second operand has 21 states, 21 states have (on average 2.0476190476190474) internal successors, (43), 20 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:01:15,019 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:01:15,019 INFO L93 Difference]: Finished difference Result 556 states and 666 transitions. [2022-04-28 04:01:15,019 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2022-04-28 04:01:15,020 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 21 states have (on average 2.0476190476190474) internal successors, (43), 20 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 49 [2022-04-28 04:01:15,020 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:01:15,020 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 21 states have (on average 2.0476190476190474) internal successors, (43), 20 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:01:15,020 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 101 transitions. [2022-04-28 04:01:15,020 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 21 states have (on average 2.0476190476190474) internal successors, (43), 20 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:01:15,021 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 101 transitions. [2022-04-28 04:01:15,021 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 21 states and 101 transitions. [2022-04-28 04:01:15,090 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 101 edges. 101 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:01:15,095 INFO L225 Difference]: With dead ends: 556 [2022-04-28 04:01:15,095 INFO L226 Difference]: Without dead ends: 340 [2022-04-28 04:01:15,096 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 97 GetRequests, 54 SyntacticMatches, 12 SemanticMatches, 31 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 657 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=226, Invalid=830, Unknown=0, NotChecked=0, Total=1056 [2022-04-28 04:01:15,096 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 58 mSDsluCounter, 25 mSDsCounter, 0 mSdLazyCounter, 888 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 59 SdHoareTripleChecker+Valid, 49 SdHoareTripleChecker+Invalid, 904 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 888 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-04-28 04:01:15,096 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [59 Valid, 49 Invalid, 904 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 888 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-04-28 04:01:15,096 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 340 states. [2022-04-28 04:01:16,442 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 340 to 283. [2022-04-28 04:01:16,442 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:01:16,442 INFO L82 GeneralOperation]: Start isEquivalent. First operand 340 states. Second operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:01:16,442 INFO L74 IsIncluded]: Start isIncluded. First operand 340 states. Second operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:01:16,443 INFO L87 Difference]: Start difference. First operand 340 states. Second operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:01:16,447 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:01:16,447 INFO L93 Difference]: Finished difference Result 340 states and 402 transitions. [2022-04-28 04:01:16,447 INFO L276 IsEmpty]: Start isEmpty. Operand 340 states and 402 transitions. [2022-04-28 04:01:16,447 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:01:16,447 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:01:16,447 INFO L74 IsIncluded]: Start isIncluded. First operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 340 states. [2022-04-28 04:01:16,448 INFO L87 Difference]: Start difference. First operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 340 states. [2022-04-28 04:01:16,452 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:01:16,452 INFO L93 Difference]: Finished difference Result 340 states and 402 transitions. [2022-04-28 04:01:16,452 INFO L276 IsEmpty]: Start isEmpty. Operand 340 states and 402 transitions. [2022-04-28 04:01:16,452 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:01:16,452 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:01:16,452 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:01:16,452 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:01:16,452 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:01:16,456 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 283 states to 283 states and 341 transitions. [2022-04-28 04:01:16,456 INFO L78 Accepts]: Start accepts. Automaton has 283 states and 341 transitions. Word has length 49 [2022-04-28 04:01:16,456 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:01:16,456 INFO L495 AbstractCegarLoop]: Abstraction has 283 states and 341 transitions. [2022-04-28 04:01:16,456 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 21 states have (on average 2.0476190476190474) internal successors, (43), 20 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:01:16,456 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 283 states and 341 transitions. [2022-04-28 04:01:17,467 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 341 edges. 341 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:01:17,467 INFO L276 IsEmpty]: Start isEmpty. Operand 283 states and 341 transitions. [2022-04-28 04:01:17,467 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-04-28 04:01:17,467 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:01:17,467 INFO L195 NwaCegarLoop]: trace histogram [9, 9, 5, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:01:17,483 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (35)] Forceful destruction successful, exit code 0 [2022-04-28 04:01:17,668 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable42,35 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:01:17,668 INFO L420 AbstractCegarLoop]: === Iteration 44 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:01:17,668 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:01:17,669 INFO L85 PathProgramCache]: Analyzing trace with hash 1663314847, now seen corresponding path program 33 times [2022-04-28 04:01:17,669 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:01:17,669 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1617562639] [2022-04-28 04:01:17,909 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:01:18,103 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:01:18,105 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:01:18,107 INFO L85 PathProgramCache]: Analyzing trace with hash 1538001601, now seen corresponding path program 1 times [2022-04-28 04:01:18,107 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:01:18,108 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1318617170] [2022-04-28 04:01:18,108 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:01:18,108 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:01:18,114 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:18,156 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:01:18,157 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:18,161 INFO L290 TraceCheckUtils]: 0: Hoare triple {71531#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {71523#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:18,161 INFO L290 TraceCheckUtils]: 1: Hoare triple {71523#(<= 200000 ~SIZE~0)} assume true; {71523#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:18,162 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {71523#(<= 200000 ~SIZE~0)} {71518#true} #90#return; {71523#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:18,162 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:01:18,162 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:18,164 INFO L290 TraceCheckUtils]: 0: Hoare triple {71518#true} ~cond := #in~cond; {71518#true} is VALID [2022-04-28 04:01:18,164 INFO L290 TraceCheckUtils]: 1: Hoare triple {71518#true} assume !(0 == ~cond); {71518#true} is VALID [2022-04-28 04:01:18,164 INFO L290 TraceCheckUtils]: 2: Hoare triple {71518#true} assume true; {71518#true} is VALID [2022-04-28 04:01:18,164 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {71518#true} {71523#(<= 200000 ~SIZE~0)} #86#return; {71523#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:18,165 INFO L272 TraceCheckUtils]: 0: Hoare triple {71518#true} call ULTIMATE.init(); {71531#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:01:18,165 INFO L290 TraceCheckUtils]: 1: Hoare triple {71531#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {71523#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:18,166 INFO L290 TraceCheckUtils]: 2: Hoare triple {71523#(<= 200000 ~SIZE~0)} assume true; {71523#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:18,166 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {71523#(<= 200000 ~SIZE~0)} {71518#true} #90#return; {71523#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:18,166 INFO L272 TraceCheckUtils]: 4: Hoare triple {71523#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {71523#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:18,167 INFO L290 TraceCheckUtils]: 5: Hoare triple {71523#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {71523#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:18,167 INFO L272 TraceCheckUtils]: 6: Hoare triple {71523#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {71518#true} is VALID [2022-04-28 04:01:18,167 INFO L290 TraceCheckUtils]: 7: Hoare triple {71518#true} ~cond := #in~cond; {71518#true} is VALID [2022-04-28 04:01:18,167 INFO L290 TraceCheckUtils]: 8: Hoare triple {71518#true} assume !(0 == ~cond); {71518#true} is VALID [2022-04-28 04:01:18,167 INFO L290 TraceCheckUtils]: 9: Hoare triple {71518#true} assume true; {71518#true} is VALID [2022-04-28 04:01:18,167 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {71518#true} {71523#(<= 200000 ~SIZE~0)} #86#return; {71523#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:18,167 INFO L290 TraceCheckUtils]: 11: Hoare triple {71523#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {71523#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:18,168 INFO L290 TraceCheckUtils]: 12: Hoare triple {71523#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {71528#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:18,168 INFO L290 TraceCheckUtils]: 13: Hoare triple {71528#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [244] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_474| |v_main_#t~post5_472|)) (.cse1 (= v_main_~st~0_453 v_main_~st~0_452)) (.cse2 (<= v_~last~0_365 v_main_~c~0_847))) (or (and .cse0 (= v_~last~0_365 v_~last~0_365) (= v_~SIZE~0_328 v_~SIZE~0_328) .cse1 (= v_main_~c~0_847 v_main_~c~0_846)) (and .cse0 (= v_main_~c~0_846 v_main_~c~0_847) .cse1 (or (not (< v_main_~c~0_847 v_~SIZE~0_328)) (not .cse2))) (and (= v_main_~st~0_452 0) .cse2 (< v_main_~c~0_846 (+ v_~SIZE~0_328 1)) (< v_main_~c~0_847 v_main_~c~0_846)))) InVars {~SIZE~0=v_~SIZE~0_328, main_~c~0=v_main_~c~0_847, main_#t~post5=|v_main_#t~post5_474|, main_~st~0=v_main_~st~0_453, ~last~0=v_~last~0_365} OutVars{~SIZE~0=v_~SIZE~0_328, main_#t~post5=|v_main_#t~post5_472|, main_~c~0=v_main_~c~0_846, main_~st~0=v_main_~st~0_452, ~last~0=v_~last~0_365} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {71529#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:01:18,169 INFO L290 TraceCheckUtils]: 14: Hoare triple {71529#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [245] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {71529#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:01:18,169 INFO L290 TraceCheckUtils]: 15: Hoare triple {71529#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [246] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_849 v_main_~c~0_848)) (.cse1 (= |v_main_#t~post5_477| |v_main_#t~post5_473|))) (or (and (< v_main_~c~0_848 (+ v_~SIZE~0_329 1)) (< v_main_~c~0_848 (+ v_~last~0_366 1)) (< v_main_~c~0_849 v_main_~c~0_848)) (and (= v_~SIZE~0_329 v_~SIZE~0_329) (= v_~last~0_366 v_~last~0_366) .cse0 .cse1) (and (or (not (< v_main_~c~0_849 v_~last~0_366)) (not (< v_main_~c~0_849 v_~SIZE~0_329))) .cse0 .cse1))) InVars {~SIZE~0=v_~SIZE~0_329, main_~c~0=v_main_~c~0_849, main_#t~post5=|v_main_#t~post5_477|, ~last~0=v_~last~0_366} OutVars{~SIZE~0=v_~SIZE~0_329, main_#t~post5=|v_main_#t~post5_473|, main_~c~0=v_main_~c~0_848, ~last~0=v_~last~0_366} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {71529#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:01:18,170 INFO L290 TraceCheckUtils]: 16: Hoare triple {71529#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [243] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {71530#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:01:18,170 INFO L290 TraceCheckUtils]: 17: Hoare triple {71530#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {71519#false} is VALID [2022-04-28 04:01:18,170 INFO L290 TraceCheckUtils]: 18: Hoare triple {71519#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {71519#false} is VALID [2022-04-28 04:01:18,170 INFO L290 TraceCheckUtils]: 19: Hoare triple {71519#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {71519#false} is VALID [2022-04-28 04:01:18,170 INFO L290 TraceCheckUtils]: 20: Hoare triple {71519#false} assume !(~d~0 == ~SIZE~0); {71519#false} is VALID [2022-04-28 04:01:18,170 INFO L272 TraceCheckUtils]: 21: Hoare triple {71519#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {71519#false} is VALID [2022-04-28 04:01:18,170 INFO L290 TraceCheckUtils]: 22: Hoare triple {71519#false} ~cond := #in~cond; {71519#false} is VALID [2022-04-28 04:01:18,170 INFO L290 TraceCheckUtils]: 23: Hoare triple {71519#false} assume 0 == ~cond; {71519#false} is VALID [2022-04-28 04:01:18,171 INFO L290 TraceCheckUtils]: 24: Hoare triple {71519#false} assume !false; {71519#false} is VALID [2022-04-28 04:01:18,171 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:01:18,171 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:01:18,171 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1318617170] [2022-04-28 04:01:18,171 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1318617170] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:01:18,171 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1834713352] [2022-04-28 04:01:18,171 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:01:18,171 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:01:18,171 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:01:18,172 INFO L229 MonitoredProcess]: Starting monitored process 36 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:01:18,173 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (36)] Waiting until timeout for monitored process [2022-04-28 04:01:18,200 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:18,201 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:01:18,207 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:18,207 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:01:18,452 INFO L272 TraceCheckUtils]: 0: Hoare triple {71518#true} call ULTIMATE.init(); {71518#true} is VALID [2022-04-28 04:01:18,453 INFO L290 TraceCheckUtils]: 1: Hoare triple {71518#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {71523#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:18,453 INFO L290 TraceCheckUtils]: 2: Hoare triple {71523#(<= 200000 ~SIZE~0)} assume true; {71523#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:18,453 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {71523#(<= 200000 ~SIZE~0)} {71518#true} #90#return; {71523#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:18,454 INFO L272 TraceCheckUtils]: 4: Hoare triple {71523#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {71523#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:18,454 INFO L290 TraceCheckUtils]: 5: Hoare triple {71523#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {71523#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:18,454 INFO L272 TraceCheckUtils]: 6: Hoare triple {71523#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {71523#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:18,455 INFO L290 TraceCheckUtils]: 7: Hoare triple {71523#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {71523#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:18,455 INFO L290 TraceCheckUtils]: 8: Hoare triple {71523#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {71523#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:18,455 INFO L290 TraceCheckUtils]: 9: Hoare triple {71523#(<= 200000 ~SIZE~0)} assume true; {71523#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:18,455 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {71523#(<= 200000 ~SIZE~0)} {71523#(<= 200000 ~SIZE~0)} #86#return; {71523#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:18,456 INFO L290 TraceCheckUtils]: 11: Hoare triple {71523#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {71523#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:18,456 INFO L290 TraceCheckUtils]: 12: Hoare triple {71523#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {71571#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:18,457 INFO L290 TraceCheckUtils]: 13: Hoare triple {71571#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [244] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_474| |v_main_#t~post5_472|)) (.cse1 (= v_main_~st~0_453 v_main_~st~0_452)) (.cse2 (<= v_~last~0_365 v_main_~c~0_847))) (or (and .cse0 (= v_~last~0_365 v_~last~0_365) (= v_~SIZE~0_328 v_~SIZE~0_328) .cse1 (= v_main_~c~0_847 v_main_~c~0_846)) (and .cse0 (= v_main_~c~0_846 v_main_~c~0_847) .cse1 (or (not (< v_main_~c~0_847 v_~SIZE~0_328)) (not .cse2))) (and (= v_main_~st~0_452 0) .cse2 (< v_main_~c~0_846 (+ v_~SIZE~0_328 1)) (< v_main_~c~0_847 v_main_~c~0_846)))) InVars {~SIZE~0=v_~SIZE~0_328, main_~c~0=v_main_~c~0_847, main_#t~post5=|v_main_#t~post5_474|, main_~st~0=v_main_~st~0_453, ~last~0=v_~last~0_365} OutVars{~SIZE~0=v_~SIZE~0_328, main_#t~post5=|v_main_#t~post5_472|, main_~c~0=v_main_~c~0_846, main_~st~0=v_main_~st~0_452, ~last~0=v_~last~0_365} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {71575#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:18,457 INFO L290 TraceCheckUtils]: 14: Hoare triple {71575#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [245] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {71575#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:18,458 INFO L290 TraceCheckUtils]: 15: Hoare triple {71575#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [246] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_849 v_main_~c~0_848)) (.cse1 (= |v_main_#t~post5_477| |v_main_#t~post5_473|))) (or (and (< v_main_~c~0_848 (+ v_~SIZE~0_329 1)) (< v_main_~c~0_848 (+ v_~last~0_366 1)) (< v_main_~c~0_849 v_main_~c~0_848)) (and (= v_~SIZE~0_329 v_~SIZE~0_329) (= v_~last~0_366 v_~last~0_366) .cse0 .cse1) (and (or (not (< v_main_~c~0_849 v_~last~0_366)) (not (< v_main_~c~0_849 v_~SIZE~0_329))) .cse0 .cse1))) InVars {~SIZE~0=v_~SIZE~0_329, main_~c~0=v_main_~c~0_849, main_#t~post5=|v_main_#t~post5_477|, ~last~0=v_~last~0_366} OutVars{~SIZE~0=v_~SIZE~0_329, main_#t~post5=|v_main_#t~post5_473|, main_~c~0=v_main_~c~0_848, ~last~0=v_~last~0_366} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {71575#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:18,458 INFO L290 TraceCheckUtils]: 16: Hoare triple {71575#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [243] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {71585#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:01:18,459 INFO L290 TraceCheckUtils]: 17: Hoare triple {71585#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {71519#false} is VALID [2022-04-28 04:01:18,459 INFO L290 TraceCheckUtils]: 18: Hoare triple {71519#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {71519#false} is VALID [2022-04-28 04:01:18,459 INFO L290 TraceCheckUtils]: 19: Hoare triple {71519#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {71519#false} is VALID [2022-04-28 04:01:18,459 INFO L290 TraceCheckUtils]: 20: Hoare triple {71519#false} assume !(~d~0 == ~SIZE~0); {71519#false} is VALID [2022-04-28 04:01:18,459 INFO L272 TraceCheckUtils]: 21: Hoare triple {71519#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {71519#false} is VALID [2022-04-28 04:01:18,459 INFO L290 TraceCheckUtils]: 22: Hoare triple {71519#false} ~cond := #in~cond; {71519#false} is VALID [2022-04-28 04:01:18,459 INFO L290 TraceCheckUtils]: 23: Hoare triple {71519#false} assume 0 == ~cond; {71519#false} is VALID [2022-04-28 04:01:18,459 INFO L290 TraceCheckUtils]: 24: Hoare triple {71519#false} assume !false; {71519#false} is VALID [2022-04-28 04:01:18,460 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:01:18,460 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:01:18,787 INFO L290 TraceCheckUtils]: 24: Hoare triple {71519#false} assume !false; {71519#false} is VALID [2022-04-28 04:01:18,788 INFO L290 TraceCheckUtils]: 23: Hoare triple {71519#false} assume 0 == ~cond; {71519#false} is VALID [2022-04-28 04:01:18,788 INFO L290 TraceCheckUtils]: 22: Hoare triple {71519#false} ~cond := #in~cond; {71519#false} is VALID [2022-04-28 04:01:18,788 INFO L272 TraceCheckUtils]: 21: Hoare triple {71519#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {71519#false} is VALID [2022-04-28 04:01:18,788 INFO L290 TraceCheckUtils]: 20: Hoare triple {71519#false} assume !(~d~0 == ~SIZE~0); {71519#false} is VALID [2022-04-28 04:01:18,788 INFO L290 TraceCheckUtils]: 19: Hoare triple {71519#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {71519#false} is VALID [2022-04-28 04:01:18,788 INFO L290 TraceCheckUtils]: 18: Hoare triple {71519#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {71519#false} is VALID [2022-04-28 04:01:18,788 INFO L290 TraceCheckUtils]: 17: Hoare triple {71631#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {71519#false} is VALID [2022-04-28 04:01:18,789 INFO L290 TraceCheckUtils]: 16: Hoare triple {71635#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [243] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {71631#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:01:18,789 INFO L290 TraceCheckUtils]: 15: Hoare triple {71635#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [246] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_849 v_main_~c~0_848)) (.cse1 (= |v_main_#t~post5_477| |v_main_#t~post5_473|))) (or (and (< v_main_~c~0_848 (+ v_~SIZE~0_329 1)) (< v_main_~c~0_848 (+ v_~last~0_366 1)) (< v_main_~c~0_849 v_main_~c~0_848)) (and (= v_~SIZE~0_329 v_~SIZE~0_329) (= v_~last~0_366 v_~last~0_366) .cse0 .cse1) (and (or (not (< v_main_~c~0_849 v_~last~0_366)) (not (< v_main_~c~0_849 v_~SIZE~0_329))) .cse0 .cse1))) InVars {~SIZE~0=v_~SIZE~0_329, main_~c~0=v_main_~c~0_849, main_#t~post5=|v_main_#t~post5_477|, ~last~0=v_~last~0_366} OutVars{~SIZE~0=v_~SIZE~0_329, main_#t~post5=|v_main_#t~post5_473|, main_~c~0=v_main_~c~0_848, ~last~0=v_~last~0_366} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {71635#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:01:18,790 INFO L290 TraceCheckUtils]: 14: Hoare triple {71635#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [245] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {71635#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:01:18,790 INFO L290 TraceCheckUtils]: 13: Hoare triple {71645#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [244] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_474| |v_main_#t~post5_472|)) (.cse1 (= v_main_~st~0_453 v_main_~st~0_452)) (.cse2 (<= v_~last~0_365 v_main_~c~0_847))) (or (and .cse0 (= v_~last~0_365 v_~last~0_365) (= v_~SIZE~0_328 v_~SIZE~0_328) .cse1 (= v_main_~c~0_847 v_main_~c~0_846)) (and .cse0 (= v_main_~c~0_846 v_main_~c~0_847) .cse1 (or (not (< v_main_~c~0_847 v_~SIZE~0_328)) (not .cse2))) (and (= v_main_~st~0_452 0) .cse2 (< v_main_~c~0_846 (+ v_~SIZE~0_328 1)) (< v_main_~c~0_847 v_main_~c~0_846)))) InVars {~SIZE~0=v_~SIZE~0_328, main_~c~0=v_main_~c~0_847, main_#t~post5=|v_main_#t~post5_474|, main_~st~0=v_main_~st~0_453, ~last~0=v_~last~0_365} OutVars{~SIZE~0=v_~SIZE~0_328, main_#t~post5=|v_main_#t~post5_472|, main_~c~0=v_main_~c~0_846, main_~st~0=v_main_~st~0_452, ~last~0=v_~last~0_365} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {71635#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:01:18,791 INFO L290 TraceCheckUtils]: 12: Hoare triple {71649#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {71645#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:01:18,791 INFO L290 TraceCheckUtils]: 11: Hoare triple {71649#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {71649#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:18,791 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {71518#true} {71649#(< 1 ~SIZE~0)} #86#return; {71649#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:18,792 INFO L290 TraceCheckUtils]: 9: Hoare triple {71518#true} assume true; {71518#true} is VALID [2022-04-28 04:01:18,792 INFO L290 TraceCheckUtils]: 8: Hoare triple {71518#true} assume !(0 == ~cond); {71518#true} is VALID [2022-04-28 04:01:18,792 INFO L290 TraceCheckUtils]: 7: Hoare triple {71518#true} ~cond := #in~cond; {71518#true} is VALID [2022-04-28 04:01:18,792 INFO L272 TraceCheckUtils]: 6: Hoare triple {71649#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {71518#true} is VALID [2022-04-28 04:01:18,792 INFO L290 TraceCheckUtils]: 5: Hoare triple {71649#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {71649#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:18,792 INFO L272 TraceCheckUtils]: 4: Hoare triple {71649#(< 1 ~SIZE~0)} call #t~ret7 := main(); {71649#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:18,793 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {71649#(< 1 ~SIZE~0)} {71518#true} #90#return; {71649#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:18,793 INFO L290 TraceCheckUtils]: 2: Hoare triple {71649#(< 1 ~SIZE~0)} assume true; {71649#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:18,793 INFO L290 TraceCheckUtils]: 1: Hoare triple {71518#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {71649#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:18,793 INFO L272 TraceCheckUtils]: 0: Hoare triple {71518#true} call ULTIMATE.init(); {71518#true} is VALID [2022-04-28 04:01:18,793 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:01:18,794 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1834713352] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:01:18,794 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:01:18,794 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:01:19,388 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:01:19,388 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1617562639] [2022-04-28 04:01:19,388 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1617562639] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:01:19,388 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:01:19,388 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [22] imperfect sequences [] total 22 [2022-04-28 04:01:19,388 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [638730458] [2022-04-28 04:01:19,388 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:01:19,388 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 22 states have (on average 1.9545454545454546) internal successors, (43), 21 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 49 [2022-04-28 04:01:19,388 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:01:19,389 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 22 states, 22 states have (on average 1.9545454545454546) internal successors, (43), 21 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:01:19,424 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:01:19,424 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-04-28 04:01:19,425 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:01:19,425 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-04-28 04:01:19,425 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=206, Invalid=724, Unknown=0, NotChecked=0, Total=930 [2022-04-28 04:01:19,425 INFO L87 Difference]: Start difference. First operand 283 states and 341 transitions. Second operand has 22 states, 22 states have (on average 1.9545454545454546) internal successors, (43), 21 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:01:22,335 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:01:22,335 INFO L93 Difference]: Finished difference Result 547 states and 657 transitions. [2022-04-28 04:01:22,335 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-28 04:01:22,335 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 22 states have (on average 1.9545454545454546) internal successors, (43), 21 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 49 [2022-04-28 04:01:22,335 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:01:22,335 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 22 states have (on average 1.9545454545454546) internal successors, (43), 21 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:01:22,336 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 102 transitions. [2022-04-28 04:01:22,336 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 22 states have (on average 1.9545454545454546) internal successors, (43), 21 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:01:22,337 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 102 transitions. [2022-04-28 04:01:22,337 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 102 transitions. [2022-04-28 04:01:22,404 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 102 edges. 102 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:01:22,408 INFO L225 Difference]: With dead ends: 547 [2022-04-28 04:01:22,408 INFO L226 Difference]: Without dead ends: 331 [2022-04-28 04:01:22,409 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 97 GetRequests, 54 SyntacticMatches, 11 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 668 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=243, Invalid=879, Unknown=0, NotChecked=0, Total=1122 [2022-04-28 04:01:22,409 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 67 mSDsluCounter, 16 mSDsCounter, 0 mSdLazyCounter, 754 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 68 SdHoareTripleChecker+Valid, 40 SdHoareTripleChecker+Invalid, 771 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 754 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-04-28 04:01:22,409 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [68 Valid, 40 Invalid, 771 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 754 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-04-28 04:01:22,410 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 331 states. [2022-04-28 04:01:23,806 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 331 to 283. [2022-04-28 04:01:23,806 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:01:23,807 INFO L82 GeneralOperation]: Start isEquivalent. First operand 331 states. Second operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:01:23,807 INFO L74 IsIncluded]: Start isIncluded. First operand 331 states. Second operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:01:23,807 INFO L87 Difference]: Start difference. First operand 331 states. Second operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:01:23,811 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:01:23,811 INFO L93 Difference]: Finished difference Result 331 states and 393 transitions. [2022-04-28 04:01:23,811 INFO L276 IsEmpty]: Start isEmpty. Operand 331 states and 393 transitions. [2022-04-28 04:01:23,811 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:01:23,811 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:01:23,812 INFO L74 IsIncluded]: Start isIncluded. First operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 331 states. [2022-04-28 04:01:23,812 INFO L87 Difference]: Start difference. First operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 331 states. [2022-04-28 04:01:23,816 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:01:23,816 INFO L93 Difference]: Finished difference Result 331 states and 393 transitions. [2022-04-28 04:01:23,816 INFO L276 IsEmpty]: Start isEmpty. Operand 331 states and 393 transitions. [2022-04-28 04:01:23,816 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:01:23,816 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:01:23,816 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:01:23,816 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:01:23,816 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:01:23,820 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 283 states to 283 states and 341 transitions. [2022-04-28 04:01:23,820 INFO L78 Accepts]: Start accepts. Automaton has 283 states and 341 transitions. Word has length 49 [2022-04-28 04:01:23,820 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:01:23,820 INFO L495 AbstractCegarLoop]: Abstraction has 283 states and 341 transitions. [2022-04-28 04:01:23,820 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 22 states, 22 states have (on average 1.9545454545454546) internal successors, (43), 21 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:01:23,820 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 283 states and 341 transitions. [2022-04-28 04:01:24,846 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 341 edges. 341 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:01:24,846 INFO L276 IsEmpty]: Start isEmpty. Operand 283 states and 341 transitions. [2022-04-28 04:01:24,846 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-04-28 04:01:24,847 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:01:24,847 INFO L195 NwaCegarLoop]: trace histogram [9, 9, 6, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:01:24,864 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (36)] Ended with exit code 0 [2022-04-28 04:01:25,047 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 36 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable43 [2022-04-28 04:01:25,047 INFO L420 AbstractCegarLoop]: === Iteration 45 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:01:25,047 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:01:25,048 INFO L85 PathProgramCache]: Analyzing trace with hash 845666397, now seen corresponding path program 34 times [2022-04-28 04:01:25,048 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:01:25,048 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1104591711] [2022-04-28 04:01:29,167 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:01:29,266 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:01:29,479 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:01:29,481 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:01:29,483 INFO L85 PathProgramCache]: Analyzing trace with hash -264442943, now seen corresponding path program 1 times [2022-04-28 04:01:29,483 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:01:29,483 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1865461759] [2022-04-28 04:01:29,483 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:01:29,484 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:01:29,490 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:29,538 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:01:29,539 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:29,543 INFO L290 TraceCheckUtils]: 0: Hoare triple {74047#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {74039#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:29,543 INFO L290 TraceCheckUtils]: 1: Hoare triple {74039#(<= 200000 ~SIZE~0)} assume true; {74039#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:29,543 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {74039#(<= 200000 ~SIZE~0)} {74034#true} #90#return; {74039#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:29,544 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:01:29,545 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:29,547 INFO L290 TraceCheckUtils]: 0: Hoare triple {74034#true} ~cond := #in~cond; {74034#true} is VALID [2022-04-28 04:01:29,547 INFO L290 TraceCheckUtils]: 1: Hoare triple {74034#true} assume !(0 == ~cond); {74034#true} is VALID [2022-04-28 04:01:29,547 INFO L290 TraceCheckUtils]: 2: Hoare triple {74034#true} assume true; {74034#true} is VALID [2022-04-28 04:01:29,547 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {74034#true} {74039#(<= 200000 ~SIZE~0)} #86#return; {74039#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:29,548 INFO L272 TraceCheckUtils]: 0: Hoare triple {74034#true} call ULTIMATE.init(); {74047#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:01:29,548 INFO L290 TraceCheckUtils]: 1: Hoare triple {74047#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {74039#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:29,549 INFO L290 TraceCheckUtils]: 2: Hoare triple {74039#(<= 200000 ~SIZE~0)} assume true; {74039#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:29,549 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {74039#(<= 200000 ~SIZE~0)} {74034#true} #90#return; {74039#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:29,550 INFO L272 TraceCheckUtils]: 4: Hoare triple {74039#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {74039#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:29,550 INFO L290 TraceCheckUtils]: 5: Hoare triple {74039#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {74039#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:29,550 INFO L272 TraceCheckUtils]: 6: Hoare triple {74039#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {74034#true} is VALID [2022-04-28 04:01:29,550 INFO L290 TraceCheckUtils]: 7: Hoare triple {74034#true} ~cond := #in~cond; {74034#true} is VALID [2022-04-28 04:01:29,550 INFO L290 TraceCheckUtils]: 8: Hoare triple {74034#true} assume !(0 == ~cond); {74034#true} is VALID [2022-04-28 04:01:29,550 INFO L290 TraceCheckUtils]: 9: Hoare triple {74034#true} assume true; {74034#true} is VALID [2022-04-28 04:01:29,551 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {74034#true} {74039#(<= 200000 ~SIZE~0)} #86#return; {74039#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:29,551 INFO L290 TraceCheckUtils]: 11: Hoare triple {74039#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {74039#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:29,551 INFO L290 TraceCheckUtils]: 12: Hoare triple {74039#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {74044#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:29,552 INFO L290 TraceCheckUtils]: 13: Hoare triple {74044#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [248] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_873 v_main_~c~0_872)) (.cse1 (= v_main_~st~0_466 v_main_~st~0_465)) (.cse2 (= |v_main_#t~post5_487| |v_main_#t~post5_485|)) (.cse3 (<= v_~last~0_375 v_main_~c~0_873))) (or (and .cse0 .cse1 .cse2 (= v_~last~0_375 v_~last~0_375) (= v_~SIZE~0_337 v_~SIZE~0_337)) (and (or (not .cse3) (not (< v_main_~c~0_873 v_~SIZE~0_337))) .cse0 .cse1 .cse2) (and (= v_main_~st~0_465 0) (< v_main_~c~0_872 (+ v_~SIZE~0_337 1)) .cse3 (< v_main_~c~0_873 v_main_~c~0_872)))) InVars {~SIZE~0=v_~SIZE~0_337, main_~c~0=v_main_~c~0_873, main_#t~post5=|v_main_#t~post5_487|, main_~st~0=v_main_~st~0_466, ~last~0=v_~last~0_375} OutVars{~SIZE~0=v_~SIZE~0_337, main_#t~post5=|v_main_#t~post5_485|, main_~c~0=v_main_~c~0_872, main_~st~0=v_main_~st~0_465, ~last~0=v_~last~0_375} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {74045#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:01:29,553 INFO L290 TraceCheckUtils]: 14: Hoare triple {74045#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [249] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {74045#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:01:29,553 INFO L290 TraceCheckUtils]: 15: Hoare triple {74045#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [250] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_490| |v_main_#t~post5_486|)) (.cse1 (= v_main_~c~0_875 v_main_~c~0_874))) (or (and (< v_main_~c~0_874 (+ v_~last~0_376 1)) (< v_main_~c~0_875 v_main_~c~0_874) (< v_main_~c~0_874 (+ v_~SIZE~0_338 1))) (and (= v_~SIZE~0_338 v_~SIZE~0_338) .cse0 .cse1 (= v_~last~0_376 v_~last~0_376)) (and .cse0 (or (not (< v_main_~c~0_875 v_~SIZE~0_338)) (not (< v_main_~c~0_875 v_~last~0_376))) .cse1))) InVars {~SIZE~0=v_~SIZE~0_338, main_~c~0=v_main_~c~0_875, main_#t~post5=|v_main_#t~post5_490|, ~last~0=v_~last~0_376} OutVars{~SIZE~0=v_~SIZE~0_338, main_#t~post5=|v_main_#t~post5_486|, main_~c~0=v_main_~c~0_874, ~last~0=v_~last~0_376} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {74045#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:01:29,554 INFO L290 TraceCheckUtils]: 16: Hoare triple {74045#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [247] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {74046#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:01:29,554 INFO L290 TraceCheckUtils]: 17: Hoare triple {74046#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {74035#false} is VALID [2022-04-28 04:01:29,554 INFO L290 TraceCheckUtils]: 18: Hoare triple {74035#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {74035#false} is VALID [2022-04-28 04:01:29,554 INFO L290 TraceCheckUtils]: 19: Hoare triple {74035#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {74035#false} is VALID [2022-04-28 04:01:29,554 INFO L290 TraceCheckUtils]: 20: Hoare triple {74035#false} assume !(~d~0 == ~SIZE~0); {74035#false} is VALID [2022-04-28 04:01:29,554 INFO L272 TraceCheckUtils]: 21: Hoare triple {74035#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {74035#false} is VALID [2022-04-28 04:01:29,554 INFO L290 TraceCheckUtils]: 22: Hoare triple {74035#false} ~cond := #in~cond; {74035#false} is VALID [2022-04-28 04:01:29,554 INFO L290 TraceCheckUtils]: 23: Hoare triple {74035#false} assume 0 == ~cond; {74035#false} is VALID [2022-04-28 04:01:29,554 INFO L290 TraceCheckUtils]: 24: Hoare triple {74035#false} assume !false; {74035#false} is VALID [2022-04-28 04:01:29,555 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:01:29,555 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:01:29,555 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1865461759] [2022-04-28 04:01:29,555 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1865461759] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:01:29,555 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [734981908] [2022-04-28 04:01:29,555 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:01:29,555 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:01:29,555 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:01:29,556 INFO L229 MonitoredProcess]: Starting monitored process 37 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:01:29,557 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (37)] Waiting until timeout for monitored process [2022-04-28 04:01:29,586 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:29,587 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:01:29,593 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:29,594 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:01:29,829 INFO L272 TraceCheckUtils]: 0: Hoare triple {74034#true} call ULTIMATE.init(); {74034#true} is VALID [2022-04-28 04:01:29,830 INFO L290 TraceCheckUtils]: 1: Hoare triple {74034#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {74039#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:29,830 INFO L290 TraceCheckUtils]: 2: Hoare triple {74039#(<= 200000 ~SIZE~0)} assume true; {74039#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:29,830 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {74039#(<= 200000 ~SIZE~0)} {74034#true} #90#return; {74039#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:29,830 INFO L272 TraceCheckUtils]: 4: Hoare triple {74039#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {74039#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:29,831 INFO L290 TraceCheckUtils]: 5: Hoare triple {74039#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {74039#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:29,831 INFO L272 TraceCheckUtils]: 6: Hoare triple {74039#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {74039#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:29,831 INFO L290 TraceCheckUtils]: 7: Hoare triple {74039#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {74039#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:29,832 INFO L290 TraceCheckUtils]: 8: Hoare triple {74039#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {74039#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:29,832 INFO L290 TraceCheckUtils]: 9: Hoare triple {74039#(<= 200000 ~SIZE~0)} assume true; {74039#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:29,832 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {74039#(<= 200000 ~SIZE~0)} {74039#(<= 200000 ~SIZE~0)} #86#return; {74039#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:29,833 INFO L290 TraceCheckUtils]: 11: Hoare triple {74039#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {74039#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:29,833 INFO L290 TraceCheckUtils]: 12: Hoare triple {74039#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {74087#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:29,834 INFO L290 TraceCheckUtils]: 13: Hoare triple {74087#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [248] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_873 v_main_~c~0_872)) (.cse1 (= v_main_~st~0_466 v_main_~st~0_465)) (.cse2 (= |v_main_#t~post5_487| |v_main_#t~post5_485|)) (.cse3 (<= v_~last~0_375 v_main_~c~0_873))) (or (and .cse0 .cse1 .cse2 (= v_~last~0_375 v_~last~0_375) (= v_~SIZE~0_337 v_~SIZE~0_337)) (and (or (not .cse3) (not (< v_main_~c~0_873 v_~SIZE~0_337))) .cse0 .cse1 .cse2) (and (= v_main_~st~0_465 0) (< v_main_~c~0_872 (+ v_~SIZE~0_337 1)) .cse3 (< v_main_~c~0_873 v_main_~c~0_872)))) InVars {~SIZE~0=v_~SIZE~0_337, main_~c~0=v_main_~c~0_873, main_#t~post5=|v_main_#t~post5_487|, main_~st~0=v_main_~st~0_466, ~last~0=v_~last~0_375} OutVars{~SIZE~0=v_~SIZE~0_337, main_#t~post5=|v_main_#t~post5_485|, main_~c~0=v_main_~c~0_872, main_~st~0=v_main_~st~0_465, ~last~0=v_~last~0_375} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {74091#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:29,834 INFO L290 TraceCheckUtils]: 14: Hoare triple {74091#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [249] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {74091#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:29,835 INFO L290 TraceCheckUtils]: 15: Hoare triple {74091#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [250] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_490| |v_main_#t~post5_486|)) (.cse1 (= v_main_~c~0_875 v_main_~c~0_874))) (or (and (< v_main_~c~0_874 (+ v_~last~0_376 1)) (< v_main_~c~0_875 v_main_~c~0_874) (< v_main_~c~0_874 (+ v_~SIZE~0_338 1))) (and (= v_~SIZE~0_338 v_~SIZE~0_338) .cse0 .cse1 (= v_~last~0_376 v_~last~0_376)) (and .cse0 (or (not (< v_main_~c~0_875 v_~SIZE~0_338)) (not (< v_main_~c~0_875 v_~last~0_376))) .cse1))) InVars {~SIZE~0=v_~SIZE~0_338, main_~c~0=v_main_~c~0_875, main_#t~post5=|v_main_#t~post5_490|, ~last~0=v_~last~0_376} OutVars{~SIZE~0=v_~SIZE~0_338, main_#t~post5=|v_main_#t~post5_486|, main_~c~0=v_main_~c~0_874, ~last~0=v_~last~0_376} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {74091#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:29,835 INFO L290 TraceCheckUtils]: 16: Hoare triple {74091#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [247] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {74101#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:01:29,836 INFO L290 TraceCheckUtils]: 17: Hoare triple {74101#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {74035#false} is VALID [2022-04-28 04:01:29,836 INFO L290 TraceCheckUtils]: 18: Hoare triple {74035#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {74035#false} is VALID [2022-04-28 04:01:29,836 INFO L290 TraceCheckUtils]: 19: Hoare triple {74035#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {74035#false} is VALID [2022-04-28 04:01:29,836 INFO L290 TraceCheckUtils]: 20: Hoare triple {74035#false} assume !(~d~0 == ~SIZE~0); {74035#false} is VALID [2022-04-28 04:01:29,836 INFO L272 TraceCheckUtils]: 21: Hoare triple {74035#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {74035#false} is VALID [2022-04-28 04:01:29,836 INFO L290 TraceCheckUtils]: 22: Hoare triple {74035#false} ~cond := #in~cond; {74035#false} is VALID [2022-04-28 04:01:29,836 INFO L290 TraceCheckUtils]: 23: Hoare triple {74035#false} assume 0 == ~cond; {74035#false} is VALID [2022-04-28 04:01:29,836 INFO L290 TraceCheckUtils]: 24: Hoare triple {74035#false} assume !false; {74035#false} is VALID [2022-04-28 04:01:29,836 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:01:29,836 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:01:30,147 INFO L290 TraceCheckUtils]: 24: Hoare triple {74035#false} assume !false; {74035#false} is VALID [2022-04-28 04:01:30,147 INFO L290 TraceCheckUtils]: 23: Hoare triple {74035#false} assume 0 == ~cond; {74035#false} is VALID [2022-04-28 04:01:30,147 INFO L290 TraceCheckUtils]: 22: Hoare triple {74035#false} ~cond := #in~cond; {74035#false} is VALID [2022-04-28 04:01:30,147 INFO L272 TraceCheckUtils]: 21: Hoare triple {74035#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {74035#false} is VALID [2022-04-28 04:01:30,148 INFO L290 TraceCheckUtils]: 20: Hoare triple {74035#false} assume !(~d~0 == ~SIZE~0); {74035#false} is VALID [2022-04-28 04:01:30,148 INFO L290 TraceCheckUtils]: 19: Hoare triple {74035#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {74035#false} is VALID [2022-04-28 04:01:30,148 INFO L290 TraceCheckUtils]: 18: Hoare triple {74035#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {74035#false} is VALID [2022-04-28 04:01:30,148 INFO L290 TraceCheckUtils]: 17: Hoare triple {74147#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {74035#false} is VALID [2022-04-28 04:01:30,149 INFO L290 TraceCheckUtils]: 16: Hoare triple {74151#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [247] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {74147#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:01:30,149 INFO L290 TraceCheckUtils]: 15: Hoare triple {74151#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [250] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_490| |v_main_#t~post5_486|)) (.cse1 (= v_main_~c~0_875 v_main_~c~0_874))) (or (and (< v_main_~c~0_874 (+ v_~last~0_376 1)) (< v_main_~c~0_875 v_main_~c~0_874) (< v_main_~c~0_874 (+ v_~SIZE~0_338 1))) (and (= v_~SIZE~0_338 v_~SIZE~0_338) .cse0 .cse1 (= v_~last~0_376 v_~last~0_376)) (and .cse0 (or (not (< v_main_~c~0_875 v_~SIZE~0_338)) (not (< v_main_~c~0_875 v_~last~0_376))) .cse1))) InVars {~SIZE~0=v_~SIZE~0_338, main_~c~0=v_main_~c~0_875, main_#t~post5=|v_main_#t~post5_490|, ~last~0=v_~last~0_376} OutVars{~SIZE~0=v_~SIZE~0_338, main_#t~post5=|v_main_#t~post5_486|, main_~c~0=v_main_~c~0_874, ~last~0=v_~last~0_376} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {74151#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:01:30,149 INFO L290 TraceCheckUtils]: 14: Hoare triple {74151#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [249] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {74151#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:01:30,150 INFO L290 TraceCheckUtils]: 13: Hoare triple {74161#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [248] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_873 v_main_~c~0_872)) (.cse1 (= v_main_~st~0_466 v_main_~st~0_465)) (.cse2 (= |v_main_#t~post5_487| |v_main_#t~post5_485|)) (.cse3 (<= v_~last~0_375 v_main_~c~0_873))) (or (and .cse0 .cse1 .cse2 (= v_~last~0_375 v_~last~0_375) (= v_~SIZE~0_337 v_~SIZE~0_337)) (and (or (not .cse3) (not (< v_main_~c~0_873 v_~SIZE~0_337))) .cse0 .cse1 .cse2) (and (= v_main_~st~0_465 0) (< v_main_~c~0_872 (+ v_~SIZE~0_337 1)) .cse3 (< v_main_~c~0_873 v_main_~c~0_872)))) InVars {~SIZE~0=v_~SIZE~0_337, main_~c~0=v_main_~c~0_873, main_#t~post5=|v_main_#t~post5_487|, main_~st~0=v_main_~st~0_466, ~last~0=v_~last~0_375} OutVars{~SIZE~0=v_~SIZE~0_337, main_#t~post5=|v_main_#t~post5_485|, main_~c~0=v_main_~c~0_872, main_~st~0=v_main_~st~0_465, ~last~0=v_~last~0_375} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {74151#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:01:30,150 INFO L290 TraceCheckUtils]: 12: Hoare triple {74165#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {74161#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:01:30,151 INFO L290 TraceCheckUtils]: 11: Hoare triple {74165#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {74165#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:30,151 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {74034#true} {74165#(< 1 ~SIZE~0)} #86#return; {74165#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:30,151 INFO L290 TraceCheckUtils]: 9: Hoare triple {74034#true} assume true; {74034#true} is VALID [2022-04-28 04:01:30,151 INFO L290 TraceCheckUtils]: 8: Hoare triple {74034#true} assume !(0 == ~cond); {74034#true} is VALID [2022-04-28 04:01:30,151 INFO L290 TraceCheckUtils]: 7: Hoare triple {74034#true} ~cond := #in~cond; {74034#true} is VALID [2022-04-28 04:01:30,151 INFO L272 TraceCheckUtils]: 6: Hoare triple {74165#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {74034#true} is VALID [2022-04-28 04:01:30,152 INFO L290 TraceCheckUtils]: 5: Hoare triple {74165#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {74165#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:30,153 INFO L272 TraceCheckUtils]: 4: Hoare triple {74165#(< 1 ~SIZE~0)} call #t~ret7 := main(); {74165#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:30,153 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {74165#(< 1 ~SIZE~0)} {74034#true} #90#return; {74165#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:30,153 INFO L290 TraceCheckUtils]: 2: Hoare triple {74165#(< 1 ~SIZE~0)} assume true; {74165#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:30,154 INFO L290 TraceCheckUtils]: 1: Hoare triple {74034#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {74165#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:30,154 INFO L272 TraceCheckUtils]: 0: Hoare triple {74034#true} call ULTIMATE.init(); {74034#true} is VALID [2022-04-28 04:01:30,154 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:01:30,154 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [734981908] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:01:30,154 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:01:30,154 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:01:30,750 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:01:30,750 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1104591711] [2022-04-28 04:01:30,750 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1104591711] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:01:30,750 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:01:30,750 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [23] imperfect sequences [] total 23 [2022-04-28 04:01:30,750 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [697981462] [2022-04-28 04:01:30,750 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:01:30,750 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 23 states have (on average 1.8695652173913044) internal successors, (43), 22 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 49 [2022-04-28 04:01:30,751 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:01:30,751 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 23 states, 23 states have (on average 1.8695652173913044) internal successors, (43), 22 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:01:30,785 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:01:30,785 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 23 states [2022-04-28 04:01:30,785 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:01:30,785 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2022-04-28 04:01:30,785 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=221, Invalid=771, Unknown=0, NotChecked=0, Total=992 [2022-04-28 04:01:30,785 INFO L87 Difference]: Start difference. First operand 283 states and 341 transitions. Second operand has 23 states, 23 states have (on average 1.8695652173913044) internal successors, (43), 22 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:01:33,857 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:01:33,857 INFO L93 Difference]: Finished difference Result 538 states and 648 transitions. [2022-04-28 04:01:33,857 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2022-04-28 04:01:33,858 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 23 states have (on average 1.8695652173913044) internal successors, (43), 22 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 49 [2022-04-28 04:01:33,858 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:01:33,858 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 23 states have (on average 1.8695652173913044) internal successors, (43), 22 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:01:33,858 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 103 transitions. [2022-04-28 04:01:33,859 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 23 states have (on average 1.8695652173913044) internal successors, (43), 22 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:01:33,859 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 103 transitions. [2022-04-28 04:01:33,859 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 23 states and 103 transitions. [2022-04-28 04:01:33,927 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 103 edges. 103 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:01:33,931 INFO L225 Difference]: With dead ends: 538 [2022-04-28 04:01:33,931 INFO L226 Difference]: Without dead ends: 322 [2022-04-28 04:01:33,932 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 97 GetRequests, 54 SyntacticMatches, 10 SemanticMatches, 33 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 670 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=260, Invalid=930, Unknown=0, NotChecked=0, Total=1190 [2022-04-28 04:01:33,932 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 61 mSDsluCounter, 28 mSDsCounter, 0 mSdLazyCounter, 1022 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 62 SdHoareTripleChecker+Valid, 52 SdHoareTripleChecker+Invalid, 1040 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 1022 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-28 04:01:33,932 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [62 Valid, 52 Invalid, 1040 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 1022 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-28 04:01:33,932 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 322 states. [2022-04-28 04:01:35,250 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 322 to 283. [2022-04-28 04:01:35,250 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:01:35,251 INFO L82 GeneralOperation]: Start isEquivalent. First operand 322 states. Second operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:01:35,251 INFO L74 IsIncluded]: Start isIncluded. First operand 322 states. Second operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:01:35,251 INFO L87 Difference]: Start difference. First operand 322 states. Second operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:01:35,255 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:01:35,255 INFO L93 Difference]: Finished difference Result 322 states and 384 transitions. [2022-04-28 04:01:35,255 INFO L276 IsEmpty]: Start isEmpty. Operand 322 states and 384 transitions. [2022-04-28 04:01:35,255 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:01:35,255 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:01:35,256 INFO L74 IsIncluded]: Start isIncluded. First operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 322 states. [2022-04-28 04:01:35,256 INFO L87 Difference]: Start difference. First operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 322 states. [2022-04-28 04:01:35,259 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:01:35,260 INFO L93 Difference]: Finished difference Result 322 states and 384 transitions. [2022-04-28 04:01:35,260 INFO L276 IsEmpty]: Start isEmpty. Operand 322 states and 384 transitions. [2022-04-28 04:01:35,260 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:01:35,260 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:01:35,260 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:01:35,260 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:01:35,260 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:01:35,264 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 283 states to 283 states and 341 transitions. [2022-04-28 04:01:35,264 INFO L78 Accepts]: Start accepts. Automaton has 283 states and 341 transitions. Word has length 49 [2022-04-28 04:01:35,264 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:01:35,264 INFO L495 AbstractCegarLoop]: Abstraction has 283 states and 341 transitions. [2022-04-28 04:01:35,264 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 23 states, 23 states have (on average 1.8695652173913044) internal successors, (43), 22 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:01:35,264 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 283 states and 341 transitions. [2022-04-28 04:01:36,273 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 341 edges. 341 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:01:36,273 INFO L276 IsEmpty]: Start isEmpty. Operand 283 states and 341 transitions. [2022-04-28 04:01:36,273 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-04-28 04:01:36,273 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:01:36,273 INFO L195 NwaCegarLoop]: trace histogram [9, 9, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:01:36,289 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (37)] Forceful destruction successful, exit code 0 [2022-04-28 04:01:36,474 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable44,37 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:01:36,474 INFO L420 AbstractCegarLoop]: === Iteration 46 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:01:36,474 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:01:36,474 INFO L85 PathProgramCache]: Analyzing trace with hash -742681505, now seen corresponding path program 35 times [2022-04-28 04:01:36,474 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:01:36,474 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [190461912] [2022-04-28 04:01:40,608 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:01:40,724 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:01:43,323 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:01:43,427 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:01:43,428 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:01:43,431 INFO L85 PathProgramCache]: Analyzing trace with hash -2066887487, now seen corresponding path program 1 times [2022-04-28 04:01:43,431 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:01:43,431 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [891464304] [2022-04-28 04:01:43,431 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:01:43,431 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:01:43,438 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:43,484 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:01:43,486 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:43,490 INFO L290 TraceCheckUtils]: 0: Hoare triple {76528#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {76520#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:43,490 INFO L290 TraceCheckUtils]: 1: Hoare triple {76520#(<= 200000 ~SIZE~0)} assume true; {76520#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:43,490 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {76520#(<= 200000 ~SIZE~0)} {76515#true} #90#return; {76520#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:43,491 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:01:43,491 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:43,493 INFO L290 TraceCheckUtils]: 0: Hoare triple {76515#true} ~cond := #in~cond; {76515#true} is VALID [2022-04-28 04:01:43,493 INFO L290 TraceCheckUtils]: 1: Hoare triple {76515#true} assume !(0 == ~cond); {76515#true} is VALID [2022-04-28 04:01:43,493 INFO L290 TraceCheckUtils]: 2: Hoare triple {76515#true} assume true; {76515#true} is VALID [2022-04-28 04:01:43,493 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {76515#true} {76520#(<= 200000 ~SIZE~0)} #86#return; {76520#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:43,494 INFO L272 TraceCheckUtils]: 0: Hoare triple {76515#true} call ULTIMATE.init(); {76528#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:01:43,494 INFO L290 TraceCheckUtils]: 1: Hoare triple {76528#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {76520#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:43,495 INFO L290 TraceCheckUtils]: 2: Hoare triple {76520#(<= 200000 ~SIZE~0)} assume true; {76520#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:43,495 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {76520#(<= 200000 ~SIZE~0)} {76515#true} #90#return; {76520#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:43,495 INFO L272 TraceCheckUtils]: 4: Hoare triple {76520#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {76520#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:43,496 INFO L290 TraceCheckUtils]: 5: Hoare triple {76520#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {76520#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:43,496 INFO L272 TraceCheckUtils]: 6: Hoare triple {76520#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {76515#true} is VALID [2022-04-28 04:01:43,496 INFO L290 TraceCheckUtils]: 7: Hoare triple {76515#true} ~cond := #in~cond; {76515#true} is VALID [2022-04-28 04:01:43,496 INFO L290 TraceCheckUtils]: 8: Hoare triple {76515#true} assume !(0 == ~cond); {76515#true} is VALID [2022-04-28 04:01:43,496 INFO L290 TraceCheckUtils]: 9: Hoare triple {76515#true} assume true; {76515#true} is VALID [2022-04-28 04:01:43,496 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {76515#true} {76520#(<= 200000 ~SIZE~0)} #86#return; {76520#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:43,497 INFO L290 TraceCheckUtils]: 11: Hoare triple {76520#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {76520#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:43,497 INFO L290 TraceCheckUtils]: 12: Hoare triple {76520#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {76525#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:43,498 INFO L290 TraceCheckUtils]: 13: Hoare triple {76525#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [252] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_500| |v_main_#t~post5_498|)) (.cse1 (= v_main_~st~0_478 v_main_~st~0_477)) (.cse2 (= v_main_~c~0_899 v_main_~c~0_898)) (.cse3 (<= v_~last~0_385 v_main_~c~0_899))) (or (and (= v_~SIZE~0_346 v_~SIZE~0_346) .cse0 .cse1 (= v_~last~0_385 v_~last~0_385) .cse2) (and (or (not (< v_main_~c~0_899 v_~SIZE~0_346)) (not .cse3)) .cse0 .cse1 .cse2) (and (< v_main_~c~0_899 v_main_~c~0_898) .cse3 (< v_main_~c~0_898 (+ v_~SIZE~0_346 1)) (= v_main_~st~0_477 0)))) InVars {~SIZE~0=v_~SIZE~0_346, main_~c~0=v_main_~c~0_899, main_#t~post5=|v_main_#t~post5_500|, main_~st~0=v_main_~st~0_478, ~last~0=v_~last~0_385} OutVars{~SIZE~0=v_~SIZE~0_346, main_#t~post5=|v_main_#t~post5_498|, main_~c~0=v_main_~c~0_898, main_~st~0=v_main_~st~0_477, ~last~0=v_~last~0_385} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {76526#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:01:43,498 INFO L290 TraceCheckUtils]: 14: Hoare triple {76526#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [253] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {76526#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:01:43,499 INFO L290 TraceCheckUtils]: 15: Hoare triple {76526#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [254] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_901 v_main_~c~0_900)) (.cse1 (= |v_main_#t~post5_503| |v_main_#t~post5_499|))) (or (and .cse0 (= v_~SIZE~0_347 v_~SIZE~0_347) .cse1 (= v_~last~0_386 v_~last~0_386)) (and (< v_main_~c~0_900 (+ v_~last~0_386 1)) (< v_main_~c~0_901 v_main_~c~0_900) (< v_main_~c~0_900 (+ v_~SIZE~0_347 1))) (and .cse0 .cse1 (or (not (< v_main_~c~0_901 v_~last~0_386)) (not (< v_main_~c~0_901 v_~SIZE~0_347)))))) InVars {~SIZE~0=v_~SIZE~0_347, main_~c~0=v_main_~c~0_901, main_#t~post5=|v_main_#t~post5_503|, ~last~0=v_~last~0_386} OutVars{~SIZE~0=v_~SIZE~0_347, main_#t~post5=|v_main_#t~post5_499|, main_~c~0=v_main_~c~0_900, ~last~0=v_~last~0_386} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {76526#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:01:43,499 INFO L290 TraceCheckUtils]: 16: Hoare triple {76526#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [251] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {76527#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:01:43,500 INFO L290 TraceCheckUtils]: 17: Hoare triple {76527#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {76516#false} is VALID [2022-04-28 04:01:43,500 INFO L290 TraceCheckUtils]: 18: Hoare triple {76516#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {76516#false} is VALID [2022-04-28 04:01:43,500 INFO L290 TraceCheckUtils]: 19: Hoare triple {76516#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {76516#false} is VALID [2022-04-28 04:01:43,500 INFO L290 TraceCheckUtils]: 20: Hoare triple {76516#false} assume !(~d~0 == ~SIZE~0); {76516#false} is VALID [2022-04-28 04:01:43,500 INFO L272 TraceCheckUtils]: 21: Hoare triple {76516#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {76516#false} is VALID [2022-04-28 04:01:43,500 INFO L290 TraceCheckUtils]: 22: Hoare triple {76516#false} ~cond := #in~cond; {76516#false} is VALID [2022-04-28 04:01:43,500 INFO L290 TraceCheckUtils]: 23: Hoare triple {76516#false} assume 0 == ~cond; {76516#false} is VALID [2022-04-28 04:01:43,500 INFO L290 TraceCheckUtils]: 24: Hoare triple {76516#false} assume !false; {76516#false} is VALID [2022-04-28 04:01:43,500 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:01:43,501 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:01:43,501 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [891464304] [2022-04-28 04:01:43,501 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [891464304] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:01:43,501 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [261499357] [2022-04-28 04:01:43,501 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:01:43,501 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:01:43,501 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:01:43,502 INFO L229 MonitoredProcess]: Starting monitored process 38 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:01:43,503 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (38)] Waiting until timeout for monitored process [2022-04-28 04:01:43,534 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:43,534 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:01:43,541 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:43,541 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:01:43,814 INFO L272 TraceCheckUtils]: 0: Hoare triple {76515#true} call ULTIMATE.init(); {76515#true} is VALID [2022-04-28 04:01:43,815 INFO L290 TraceCheckUtils]: 1: Hoare triple {76515#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {76520#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:43,815 INFO L290 TraceCheckUtils]: 2: Hoare triple {76520#(<= 200000 ~SIZE~0)} assume true; {76520#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:43,815 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {76520#(<= 200000 ~SIZE~0)} {76515#true} #90#return; {76520#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:43,816 INFO L272 TraceCheckUtils]: 4: Hoare triple {76520#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {76520#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:43,816 INFO L290 TraceCheckUtils]: 5: Hoare triple {76520#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {76520#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:43,816 INFO L272 TraceCheckUtils]: 6: Hoare triple {76520#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {76520#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:43,817 INFO L290 TraceCheckUtils]: 7: Hoare triple {76520#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {76520#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:43,817 INFO L290 TraceCheckUtils]: 8: Hoare triple {76520#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {76520#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:43,817 INFO L290 TraceCheckUtils]: 9: Hoare triple {76520#(<= 200000 ~SIZE~0)} assume true; {76520#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:43,818 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {76520#(<= 200000 ~SIZE~0)} {76520#(<= 200000 ~SIZE~0)} #86#return; {76520#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:43,818 INFO L290 TraceCheckUtils]: 11: Hoare triple {76520#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {76520#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:43,818 INFO L290 TraceCheckUtils]: 12: Hoare triple {76520#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {76568#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:43,819 INFO L290 TraceCheckUtils]: 13: Hoare triple {76568#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [252] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_500| |v_main_#t~post5_498|)) (.cse1 (= v_main_~st~0_478 v_main_~st~0_477)) (.cse2 (= v_main_~c~0_899 v_main_~c~0_898)) (.cse3 (<= v_~last~0_385 v_main_~c~0_899))) (or (and (= v_~SIZE~0_346 v_~SIZE~0_346) .cse0 .cse1 (= v_~last~0_385 v_~last~0_385) .cse2) (and (or (not (< v_main_~c~0_899 v_~SIZE~0_346)) (not .cse3)) .cse0 .cse1 .cse2) (and (< v_main_~c~0_899 v_main_~c~0_898) .cse3 (< v_main_~c~0_898 (+ v_~SIZE~0_346 1)) (= v_main_~st~0_477 0)))) InVars {~SIZE~0=v_~SIZE~0_346, main_~c~0=v_main_~c~0_899, main_#t~post5=|v_main_#t~post5_500|, main_~st~0=v_main_~st~0_478, ~last~0=v_~last~0_385} OutVars{~SIZE~0=v_~SIZE~0_346, main_#t~post5=|v_main_#t~post5_498|, main_~c~0=v_main_~c~0_898, main_~st~0=v_main_~st~0_477, ~last~0=v_~last~0_385} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {76572#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:43,820 INFO L290 TraceCheckUtils]: 14: Hoare triple {76572#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [253] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {76572#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:43,820 INFO L290 TraceCheckUtils]: 15: Hoare triple {76572#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [254] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_901 v_main_~c~0_900)) (.cse1 (= |v_main_#t~post5_503| |v_main_#t~post5_499|))) (or (and .cse0 (= v_~SIZE~0_347 v_~SIZE~0_347) .cse1 (= v_~last~0_386 v_~last~0_386)) (and (< v_main_~c~0_900 (+ v_~last~0_386 1)) (< v_main_~c~0_901 v_main_~c~0_900) (< v_main_~c~0_900 (+ v_~SIZE~0_347 1))) (and .cse0 .cse1 (or (not (< v_main_~c~0_901 v_~last~0_386)) (not (< v_main_~c~0_901 v_~SIZE~0_347)))))) InVars {~SIZE~0=v_~SIZE~0_347, main_~c~0=v_main_~c~0_901, main_#t~post5=|v_main_#t~post5_503|, ~last~0=v_~last~0_386} OutVars{~SIZE~0=v_~SIZE~0_347, main_#t~post5=|v_main_#t~post5_499|, main_~c~0=v_main_~c~0_900, ~last~0=v_~last~0_386} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {76572#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:43,821 INFO L290 TraceCheckUtils]: 16: Hoare triple {76572#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [251] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {76582#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:01:43,821 INFO L290 TraceCheckUtils]: 17: Hoare triple {76582#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {76516#false} is VALID [2022-04-28 04:01:43,821 INFO L290 TraceCheckUtils]: 18: Hoare triple {76516#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {76516#false} is VALID [2022-04-28 04:01:43,821 INFO L290 TraceCheckUtils]: 19: Hoare triple {76516#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {76516#false} is VALID [2022-04-28 04:01:43,821 INFO L290 TraceCheckUtils]: 20: Hoare triple {76516#false} assume !(~d~0 == ~SIZE~0); {76516#false} is VALID [2022-04-28 04:01:43,822 INFO L272 TraceCheckUtils]: 21: Hoare triple {76516#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {76516#false} is VALID [2022-04-28 04:01:43,822 INFO L290 TraceCheckUtils]: 22: Hoare triple {76516#false} ~cond := #in~cond; {76516#false} is VALID [2022-04-28 04:01:43,822 INFO L290 TraceCheckUtils]: 23: Hoare triple {76516#false} assume 0 == ~cond; {76516#false} is VALID [2022-04-28 04:01:43,822 INFO L290 TraceCheckUtils]: 24: Hoare triple {76516#false} assume !false; {76516#false} is VALID [2022-04-28 04:01:43,822 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:01:43,822 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:01:44,133 INFO L290 TraceCheckUtils]: 24: Hoare triple {76516#false} assume !false; {76516#false} is VALID [2022-04-28 04:01:44,133 INFO L290 TraceCheckUtils]: 23: Hoare triple {76516#false} assume 0 == ~cond; {76516#false} is VALID [2022-04-28 04:01:44,133 INFO L290 TraceCheckUtils]: 22: Hoare triple {76516#false} ~cond := #in~cond; {76516#false} is VALID [2022-04-28 04:01:44,133 INFO L272 TraceCheckUtils]: 21: Hoare triple {76516#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {76516#false} is VALID [2022-04-28 04:01:44,133 INFO L290 TraceCheckUtils]: 20: Hoare triple {76516#false} assume !(~d~0 == ~SIZE~0); {76516#false} is VALID [2022-04-28 04:01:44,133 INFO L290 TraceCheckUtils]: 19: Hoare triple {76516#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {76516#false} is VALID [2022-04-28 04:01:44,133 INFO L290 TraceCheckUtils]: 18: Hoare triple {76516#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {76516#false} is VALID [2022-04-28 04:01:44,134 INFO L290 TraceCheckUtils]: 17: Hoare triple {76628#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {76516#false} is VALID [2022-04-28 04:01:44,134 INFO L290 TraceCheckUtils]: 16: Hoare triple {76632#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [251] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {76628#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:01:44,135 INFO L290 TraceCheckUtils]: 15: Hoare triple {76632#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [254] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_901 v_main_~c~0_900)) (.cse1 (= |v_main_#t~post5_503| |v_main_#t~post5_499|))) (or (and .cse0 (= v_~SIZE~0_347 v_~SIZE~0_347) .cse1 (= v_~last~0_386 v_~last~0_386)) (and (< v_main_~c~0_900 (+ v_~last~0_386 1)) (< v_main_~c~0_901 v_main_~c~0_900) (< v_main_~c~0_900 (+ v_~SIZE~0_347 1))) (and .cse0 .cse1 (or (not (< v_main_~c~0_901 v_~last~0_386)) (not (< v_main_~c~0_901 v_~SIZE~0_347)))))) InVars {~SIZE~0=v_~SIZE~0_347, main_~c~0=v_main_~c~0_901, main_#t~post5=|v_main_#t~post5_503|, ~last~0=v_~last~0_386} OutVars{~SIZE~0=v_~SIZE~0_347, main_#t~post5=|v_main_#t~post5_499|, main_~c~0=v_main_~c~0_900, ~last~0=v_~last~0_386} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {76632#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:01:44,135 INFO L290 TraceCheckUtils]: 14: Hoare triple {76632#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [253] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {76632#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:01:44,136 INFO L290 TraceCheckUtils]: 13: Hoare triple {76642#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [252] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_500| |v_main_#t~post5_498|)) (.cse1 (= v_main_~st~0_478 v_main_~st~0_477)) (.cse2 (= v_main_~c~0_899 v_main_~c~0_898)) (.cse3 (<= v_~last~0_385 v_main_~c~0_899))) (or (and (= v_~SIZE~0_346 v_~SIZE~0_346) .cse0 .cse1 (= v_~last~0_385 v_~last~0_385) .cse2) (and (or (not (< v_main_~c~0_899 v_~SIZE~0_346)) (not .cse3)) .cse0 .cse1 .cse2) (and (< v_main_~c~0_899 v_main_~c~0_898) .cse3 (< v_main_~c~0_898 (+ v_~SIZE~0_346 1)) (= v_main_~st~0_477 0)))) InVars {~SIZE~0=v_~SIZE~0_346, main_~c~0=v_main_~c~0_899, main_#t~post5=|v_main_#t~post5_500|, main_~st~0=v_main_~st~0_478, ~last~0=v_~last~0_385} OutVars{~SIZE~0=v_~SIZE~0_346, main_#t~post5=|v_main_#t~post5_498|, main_~c~0=v_main_~c~0_898, main_~st~0=v_main_~st~0_477, ~last~0=v_~last~0_385} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {76632#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:01:44,136 INFO L290 TraceCheckUtils]: 12: Hoare triple {76646#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {76642#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:01:44,136 INFO L290 TraceCheckUtils]: 11: Hoare triple {76646#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {76646#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:44,137 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {76515#true} {76646#(< 1 ~SIZE~0)} #86#return; {76646#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:44,137 INFO L290 TraceCheckUtils]: 9: Hoare triple {76515#true} assume true; {76515#true} is VALID [2022-04-28 04:01:44,137 INFO L290 TraceCheckUtils]: 8: Hoare triple {76515#true} assume !(0 == ~cond); {76515#true} is VALID [2022-04-28 04:01:44,137 INFO L290 TraceCheckUtils]: 7: Hoare triple {76515#true} ~cond := #in~cond; {76515#true} is VALID [2022-04-28 04:01:44,137 INFO L272 TraceCheckUtils]: 6: Hoare triple {76646#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {76515#true} is VALID [2022-04-28 04:01:44,137 INFO L290 TraceCheckUtils]: 5: Hoare triple {76646#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {76646#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:44,138 INFO L272 TraceCheckUtils]: 4: Hoare triple {76646#(< 1 ~SIZE~0)} call #t~ret7 := main(); {76646#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:44,138 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {76646#(< 1 ~SIZE~0)} {76515#true} #90#return; {76646#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:44,138 INFO L290 TraceCheckUtils]: 2: Hoare triple {76646#(< 1 ~SIZE~0)} assume true; {76646#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:44,139 INFO L290 TraceCheckUtils]: 1: Hoare triple {76515#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {76646#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:44,139 INFO L272 TraceCheckUtils]: 0: Hoare triple {76515#true} call ULTIMATE.init(); {76515#true} is VALID [2022-04-28 04:01:44,139 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:01:44,139 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [261499357] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:01:44,139 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:01:44,139 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:01:44,788 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:01:44,788 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [190461912] [2022-04-28 04:01:44,788 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [190461912] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:01:44,788 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:01:44,788 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [24] imperfect sequences [] total 24 [2022-04-28 04:01:44,788 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1350379226] [2022-04-28 04:01:44,788 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:01:44,789 INFO L78 Accepts]: Start accepts. Automaton has has 24 states, 24 states have (on average 1.7916666666666667) internal successors, (43), 23 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 49 [2022-04-28 04:01:44,789 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:01:44,789 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 24 states, 24 states have (on average 1.7916666666666667) internal successors, (43), 23 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:01:44,827 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:01:44,827 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 24 states [2022-04-28 04:01:44,827 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:01:44,828 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 24 interpolants. [2022-04-28 04:01:44,828 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=236, Invalid=820, Unknown=0, NotChecked=0, Total=1056 [2022-04-28 04:01:44,828 INFO L87 Difference]: Start difference. First operand 283 states and 341 transitions. Second operand has 24 states, 24 states have (on average 1.7916666666666667) internal successors, (43), 23 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:01:47,619 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:01:47,619 INFO L93 Difference]: Finished difference Result 533 states and 643 transitions. [2022-04-28 04:01:47,620 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2022-04-28 04:01:47,620 INFO L78 Accepts]: Start accepts. Automaton has has 24 states, 24 states have (on average 1.7916666666666667) internal successors, (43), 23 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 49 [2022-04-28 04:01:47,620 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:01:47,620 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 24 states, 24 states have (on average 1.7916666666666667) internal successors, (43), 23 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:01:47,620 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 104 transitions. [2022-04-28 04:01:47,621 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 24 states, 24 states have (on average 1.7916666666666667) internal successors, (43), 23 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:01:47,621 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 104 transitions. [2022-04-28 04:01:47,621 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 24 states and 104 transitions. [2022-04-28 04:01:47,688 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 104 edges. 104 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:01:47,693 INFO L225 Difference]: With dead ends: 533 [2022-04-28 04:01:47,693 INFO L226 Difference]: Without dead ends: 317 [2022-04-28 04:01:47,694 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 97 GetRequests, 54 SyntacticMatches, 9 SemanticMatches, 34 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 663 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=277, Invalid=983, Unknown=0, NotChecked=0, Total=1260 [2022-04-28 04:01:47,695 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 73 mSDsluCounter, 18 mSDsCounter, 0 mSdLazyCounter, 844 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 74 SdHoareTripleChecker+Valid, 42 SdHoareTripleChecker+Invalid, 863 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 844 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-04-28 04:01:47,695 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [74 Valid, 42 Invalid, 863 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 844 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-04-28 04:01:47,695 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 317 states. [2022-04-28 04:01:49,054 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 317 to 283. [2022-04-28 04:01:49,054 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:01:49,055 INFO L82 GeneralOperation]: Start isEquivalent. First operand 317 states. Second operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:01:49,055 INFO L74 IsIncluded]: Start isIncluded. First operand 317 states. Second operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:01:49,055 INFO L87 Difference]: Start difference. First operand 317 states. Second operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:01:49,059 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:01:49,059 INFO L93 Difference]: Finished difference Result 317 states and 379 transitions. [2022-04-28 04:01:49,059 INFO L276 IsEmpty]: Start isEmpty. Operand 317 states and 379 transitions. [2022-04-28 04:01:49,059 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:01:49,059 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:01:49,059 INFO L74 IsIncluded]: Start isIncluded. First operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 317 states. [2022-04-28 04:01:49,059 INFO L87 Difference]: Start difference. First operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 317 states. [2022-04-28 04:01:49,063 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:01:49,063 INFO L93 Difference]: Finished difference Result 317 states and 379 transitions. [2022-04-28 04:01:49,063 INFO L276 IsEmpty]: Start isEmpty. Operand 317 states and 379 transitions. [2022-04-28 04:01:49,063 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:01:49,063 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:01:49,064 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:01:49,064 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:01:49,064 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 283 states, 268 states have (on average 1.208955223880597) internal successors, (324), 271 states have internal predecessors, (324), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:01:49,067 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 283 states to 283 states and 341 transitions. [2022-04-28 04:01:49,067 INFO L78 Accepts]: Start accepts. Automaton has 283 states and 341 transitions. Word has length 49 [2022-04-28 04:01:49,068 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:01:49,068 INFO L495 AbstractCegarLoop]: Abstraction has 283 states and 341 transitions. [2022-04-28 04:01:49,068 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 24 states, 24 states have (on average 1.7916666666666667) internal successors, (43), 23 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:01:49,068 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 283 states and 341 transitions. [2022-04-28 04:01:50,072 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 341 edges. 341 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:01:50,072 INFO L276 IsEmpty]: Start isEmpty. Operand 283 states and 341 transitions. [2022-04-28 04:01:50,073 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 50 [2022-04-28 04:01:50,073 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:01:50,073 INFO L195 NwaCegarLoop]: trace histogram [9, 9, 8, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:01:50,096 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (38)] Forceful destruction successful, exit code 0 [2022-04-28 04:01:50,273 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 38 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable45 [2022-04-28 04:01:50,273 INFO L420 AbstractCegarLoop]: === Iteration 47 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:01:50,273 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:01:50,274 INFO L85 PathProgramCache]: Analyzing trace with hash -1753798755, now seen corresponding path program 36 times [2022-04-28 04:01:50,274 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:01:50,274 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1913350575] [2022-04-28 04:01:51,370 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:01:51,553 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:01:51,555 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:01:51,557 INFO L85 PathProgramCache]: Analyzing trace with hash 425635265, now seen corresponding path program 1 times [2022-04-28 04:01:51,558 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:01:51,558 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [865255272] [2022-04-28 04:01:51,558 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:01:51,558 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:01:51,572 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:51,626 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:01:51,627 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:51,639 INFO L290 TraceCheckUtils]: 0: Hoare triple {78990#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {78982#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:51,639 INFO L290 TraceCheckUtils]: 1: Hoare triple {78982#(<= 200000 ~SIZE~0)} assume true; {78982#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:51,640 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {78982#(<= 200000 ~SIZE~0)} {78977#true} #90#return; {78982#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:51,640 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:01:51,640 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:51,642 INFO L290 TraceCheckUtils]: 0: Hoare triple {78977#true} ~cond := #in~cond; {78977#true} is VALID [2022-04-28 04:01:51,642 INFO L290 TraceCheckUtils]: 1: Hoare triple {78977#true} assume !(0 == ~cond); {78977#true} is VALID [2022-04-28 04:01:51,642 INFO L290 TraceCheckUtils]: 2: Hoare triple {78977#true} assume true; {78977#true} is VALID [2022-04-28 04:01:51,643 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {78977#true} {78982#(<= 200000 ~SIZE~0)} #86#return; {78982#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:51,643 INFO L272 TraceCheckUtils]: 0: Hoare triple {78977#true} call ULTIMATE.init(); {78990#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:01:51,644 INFO L290 TraceCheckUtils]: 1: Hoare triple {78990#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {78982#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:51,644 INFO L290 TraceCheckUtils]: 2: Hoare triple {78982#(<= 200000 ~SIZE~0)} assume true; {78982#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:51,644 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {78982#(<= 200000 ~SIZE~0)} {78977#true} #90#return; {78982#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:51,645 INFO L272 TraceCheckUtils]: 4: Hoare triple {78982#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {78982#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:51,645 INFO L290 TraceCheckUtils]: 5: Hoare triple {78982#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {78982#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:51,645 INFO L272 TraceCheckUtils]: 6: Hoare triple {78982#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {78977#true} is VALID [2022-04-28 04:01:51,645 INFO L290 TraceCheckUtils]: 7: Hoare triple {78977#true} ~cond := #in~cond; {78977#true} is VALID [2022-04-28 04:01:51,645 INFO L290 TraceCheckUtils]: 8: Hoare triple {78977#true} assume !(0 == ~cond); {78977#true} is VALID [2022-04-28 04:01:51,645 INFO L290 TraceCheckUtils]: 9: Hoare triple {78977#true} assume true; {78977#true} is VALID [2022-04-28 04:01:51,646 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {78977#true} {78982#(<= 200000 ~SIZE~0)} #86#return; {78982#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:51,646 INFO L290 TraceCheckUtils]: 11: Hoare triple {78982#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {78982#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:51,646 INFO L290 TraceCheckUtils]: 12: Hoare triple {78982#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {78987#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:51,647 INFO L290 TraceCheckUtils]: 13: Hoare triple {78987#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [256] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_395 v_main_~c~0_925)) (.cse1 (= v_main_~st~0_489 v_main_~st~0_488)) (.cse2 (= v_main_~c~0_925 v_main_~c~0_924)) (.cse3 (= |v_main_#t~post5_513| |v_main_#t~post5_511|))) (or (and .cse0 (< v_main_~c~0_925 v_main_~c~0_924) (= v_main_~st~0_488 0) (< v_main_~c~0_924 (+ v_~SIZE~0_355 1))) (and .cse1 .cse2 .cse3 (or (not (< v_main_~c~0_925 v_~SIZE~0_355)) (not .cse0))) (and (= v_~last~0_395 v_~last~0_395) .cse1 .cse2 (= v_~SIZE~0_355 v_~SIZE~0_355) .cse3))) InVars {~SIZE~0=v_~SIZE~0_355, main_~c~0=v_main_~c~0_925, main_#t~post5=|v_main_#t~post5_513|, main_~st~0=v_main_~st~0_489, ~last~0=v_~last~0_395} OutVars{~SIZE~0=v_~SIZE~0_355, main_#t~post5=|v_main_#t~post5_511|, main_~c~0=v_main_~c~0_924, main_~st~0=v_main_~st~0_488, ~last~0=v_~last~0_395} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {78988#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:01:51,647 INFO L290 TraceCheckUtils]: 14: Hoare triple {78988#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [257] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {78988#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:01:51,648 INFO L290 TraceCheckUtils]: 15: Hoare triple {78988#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [258] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_927 v_main_~c~0_926))) (or (and (or (not (< v_main_~c~0_927 v_~last~0_396)) (not (< v_main_~c~0_927 v_~SIZE~0_356))) (= |v_main_#t~post5_512| |v_main_#t~post5_516|) .cse0) (and (< v_main_~c~0_926 (+ v_~SIZE~0_356 1)) (< v_main_~c~0_927 v_main_~c~0_926) (< v_main_~c~0_926 (+ v_~last~0_396 1))) (and (= |v_main_#t~post5_516| |v_main_#t~post5_512|) (= v_~last~0_396 v_~last~0_396) .cse0 (= v_~SIZE~0_356 v_~SIZE~0_356)))) InVars {~SIZE~0=v_~SIZE~0_356, main_~c~0=v_main_~c~0_927, main_#t~post5=|v_main_#t~post5_516|, ~last~0=v_~last~0_396} OutVars{~SIZE~0=v_~SIZE~0_356, main_#t~post5=|v_main_#t~post5_512|, main_~c~0=v_main_~c~0_926, ~last~0=v_~last~0_396} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {78988#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:01:51,648 INFO L290 TraceCheckUtils]: 16: Hoare triple {78988#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [255] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {78989#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:01:51,649 INFO L290 TraceCheckUtils]: 17: Hoare triple {78989#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {78978#false} is VALID [2022-04-28 04:01:51,649 INFO L290 TraceCheckUtils]: 18: Hoare triple {78978#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {78978#false} is VALID [2022-04-28 04:01:51,649 INFO L290 TraceCheckUtils]: 19: Hoare triple {78978#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {78978#false} is VALID [2022-04-28 04:01:51,649 INFO L290 TraceCheckUtils]: 20: Hoare triple {78978#false} assume !(~d~0 == ~SIZE~0); {78978#false} is VALID [2022-04-28 04:01:51,649 INFO L272 TraceCheckUtils]: 21: Hoare triple {78978#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {78978#false} is VALID [2022-04-28 04:01:51,649 INFO L290 TraceCheckUtils]: 22: Hoare triple {78978#false} ~cond := #in~cond; {78978#false} is VALID [2022-04-28 04:01:51,649 INFO L290 TraceCheckUtils]: 23: Hoare triple {78978#false} assume 0 == ~cond; {78978#false} is VALID [2022-04-28 04:01:51,650 INFO L290 TraceCheckUtils]: 24: Hoare triple {78978#false} assume !false; {78978#false} is VALID [2022-04-28 04:01:51,650 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:01:51,650 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:01:51,650 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [865255272] [2022-04-28 04:01:51,650 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [865255272] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:01:51,650 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1547923460] [2022-04-28 04:01:51,650 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:01:51,650 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:01:51,650 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:01:51,656 INFO L229 MonitoredProcess]: Starting monitored process 39 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:01:51,671 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (39)] Waiting until timeout for monitored process [2022-04-28 04:01:51,690 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:51,691 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:01:51,696 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:51,697 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:01:51,932 INFO L272 TraceCheckUtils]: 0: Hoare triple {78977#true} call ULTIMATE.init(); {78977#true} is VALID [2022-04-28 04:01:51,932 INFO L290 TraceCheckUtils]: 1: Hoare triple {78977#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {78982#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:51,932 INFO L290 TraceCheckUtils]: 2: Hoare triple {78982#(<= 200000 ~SIZE~0)} assume true; {78982#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:51,933 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {78982#(<= 200000 ~SIZE~0)} {78977#true} #90#return; {78982#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:51,933 INFO L272 TraceCheckUtils]: 4: Hoare triple {78982#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {78982#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:51,933 INFO L290 TraceCheckUtils]: 5: Hoare triple {78982#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {78982#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:51,934 INFO L272 TraceCheckUtils]: 6: Hoare triple {78982#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {78982#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:51,934 INFO L290 TraceCheckUtils]: 7: Hoare triple {78982#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {78982#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:51,934 INFO L290 TraceCheckUtils]: 8: Hoare triple {78982#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {78982#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:51,935 INFO L290 TraceCheckUtils]: 9: Hoare triple {78982#(<= 200000 ~SIZE~0)} assume true; {78982#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:51,935 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {78982#(<= 200000 ~SIZE~0)} {78982#(<= 200000 ~SIZE~0)} #86#return; {78982#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:51,935 INFO L290 TraceCheckUtils]: 11: Hoare triple {78982#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {78982#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:51,936 INFO L290 TraceCheckUtils]: 12: Hoare triple {78982#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {79030#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:51,936 INFO L290 TraceCheckUtils]: 13: Hoare triple {79030#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [256] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_395 v_main_~c~0_925)) (.cse1 (= v_main_~st~0_489 v_main_~st~0_488)) (.cse2 (= v_main_~c~0_925 v_main_~c~0_924)) (.cse3 (= |v_main_#t~post5_513| |v_main_#t~post5_511|))) (or (and .cse0 (< v_main_~c~0_925 v_main_~c~0_924) (= v_main_~st~0_488 0) (< v_main_~c~0_924 (+ v_~SIZE~0_355 1))) (and .cse1 .cse2 .cse3 (or (not (< v_main_~c~0_925 v_~SIZE~0_355)) (not .cse0))) (and (= v_~last~0_395 v_~last~0_395) .cse1 .cse2 (= v_~SIZE~0_355 v_~SIZE~0_355) .cse3))) InVars {~SIZE~0=v_~SIZE~0_355, main_~c~0=v_main_~c~0_925, main_#t~post5=|v_main_#t~post5_513|, main_~st~0=v_main_~st~0_489, ~last~0=v_~last~0_395} OutVars{~SIZE~0=v_~SIZE~0_355, main_#t~post5=|v_main_#t~post5_511|, main_~c~0=v_main_~c~0_924, main_~st~0=v_main_~st~0_488, ~last~0=v_~last~0_395} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {79034#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:51,937 INFO L290 TraceCheckUtils]: 14: Hoare triple {79034#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [257] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {79034#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:51,938 INFO L290 TraceCheckUtils]: 15: Hoare triple {79034#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [258] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_927 v_main_~c~0_926))) (or (and (or (not (< v_main_~c~0_927 v_~last~0_396)) (not (< v_main_~c~0_927 v_~SIZE~0_356))) (= |v_main_#t~post5_512| |v_main_#t~post5_516|) .cse0) (and (< v_main_~c~0_926 (+ v_~SIZE~0_356 1)) (< v_main_~c~0_927 v_main_~c~0_926) (< v_main_~c~0_926 (+ v_~last~0_396 1))) (and (= |v_main_#t~post5_516| |v_main_#t~post5_512|) (= v_~last~0_396 v_~last~0_396) .cse0 (= v_~SIZE~0_356 v_~SIZE~0_356)))) InVars {~SIZE~0=v_~SIZE~0_356, main_~c~0=v_main_~c~0_927, main_#t~post5=|v_main_#t~post5_516|, ~last~0=v_~last~0_396} OutVars{~SIZE~0=v_~SIZE~0_356, main_#t~post5=|v_main_#t~post5_512|, main_~c~0=v_main_~c~0_926, ~last~0=v_~last~0_396} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {79034#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:51,939 INFO L290 TraceCheckUtils]: 16: Hoare triple {79034#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [255] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {79044#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:01:51,939 INFO L290 TraceCheckUtils]: 17: Hoare triple {79044#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {78978#false} is VALID [2022-04-28 04:01:51,939 INFO L290 TraceCheckUtils]: 18: Hoare triple {78978#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {78978#false} is VALID [2022-04-28 04:01:51,939 INFO L290 TraceCheckUtils]: 19: Hoare triple {78978#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {78978#false} is VALID [2022-04-28 04:01:51,939 INFO L290 TraceCheckUtils]: 20: Hoare triple {78978#false} assume !(~d~0 == ~SIZE~0); {78978#false} is VALID [2022-04-28 04:01:51,939 INFO L272 TraceCheckUtils]: 21: Hoare triple {78978#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {78978#false} is VALID [2022-04-28 04:01:51,939 INFO L290 TraceCheckUtils]: 22: Hoare triple {78978#false} ~cond := #in~cond; {78978#false} is VALID [2022-04-28 04:01:51,940 INFO L290 TraceCheckUtils]: 23: Hoare triple {78978#false} assume 0 == ~cond; {78978#false} is VALID [2022-04-28 04:01:51,940 INFO L290 TraceCheckUtils]: 24: Hoare triple {78978#false} assume !false; {78978#false} is VALID [2022-04-28 04:01:51,940 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:01:51,940 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:01:52,278 INFO L290 TraceCheckUtils]: 24: Hoare triple {78978#false} assume !false; {78978#false} is VALID [2022-04-28 04:01:52,279 INFO L290 TraceCheckUtils]: 23: Hoare triple {78978#false} assume 0 == ~cond; {78978#false} is VALID [2022-04-28 04:01:52,279 INFO L290 TraceCheckUtils]: 22: Hoare triple {78978#false} ~cond := #in~cond; {78978#false} is VALID [2022-04-28 04:01:52,279 INFO L272 TraceCheckUtils]: 21: Hoare triple {78978#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {78978#false} is VALID [2022-04-28 04:01:52,279 INFO L290 TraceCheckUtils]: 20: Hoare triple {78978#false} assume !(~d~0 == ~SIZE~0); {78978#false} is VALID [2022-04-28 04:01:52,279 INFO L290 TraceCheckUtils]: 19: Hoare triple {78978#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {78978#false} is VALID [2022-04-28 04:01:52,279 INFO L290 TraceCheckUtils]: 18: Hoare triple {78978#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {78978#false} is VALID [2022-04-28 04:01:52,279 INFO L290 TraceCheckUtils]: 17: Hoare triple {79090#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {78978#false} is VALID [2022-04-28 04:01:52,280 INFO L290 TraceCheckUtils]: 16: Hoare triple {79094#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [255] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {79090#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:01:52,280 INFO L290 TraceCheckUtils]: 15: Hoare triple {79094#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [258] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_927 v_main_~c~0_926))) (or (and (or (not (< v_main_~c~0_927 v_~last~0_396)) (not (< v_main_~c~0_927 v_~SIZE~0_356))) (= |v_main_#t~post5_512| |v_main_#t~post5_516|) .cse0) (and (< v_main_~c~0_926 (+ v_~SIZE~0_356 1)) (< v_main_~c~0_927 v_main_~c~0_926) (< v_main_~c~0_926 (+ v_~last~0_396 1))) (and (= |v_main_#t~post5_516| |v_main_#t~post5_512|) (= v_~last~0_396 v_~last~0_396) .cse0 (= v_~SIZE~0_356 v_~SIZE~0_356)))) InVars {~SIZE~0=v_~SIZE~0_356, main_~c~0=v_main_~c~0_927, main_#t~post5=|v_main_#t~post5_516|, ~last~0=v_~last~0_396} OutVars{~SIZE~0=v_~SIZE~0_356, main_#t~post5=|v_main_#t~post5_512|, main_~c~0=v_main_~c~0_926, ~last~0=v_~last~0_396} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {79094#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:01:52,281 INFO L290 TraceCheckUtils]: 14: Hoare triple {79094#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [257] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {79094#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:01:52,281 INFO L290 TraceCheckUtils]: 13: Hoare triple {79104#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [256] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_395 v_main_~c~0_925)) (.cse1 (= v_main_~st~0_489 v_main_~st~0_488)) (.cse2 (= v_main_~c~0_925 v_main_~c~0_924)) (.cse3 (= |v_main_#t~post5_513| |v_main_#t~post5_511|))) (or (and .cse0 (< v_main_~c~0_925 v_main_~c~0_924) (= v_main_~st~0_488 0) (< v_main_~c~0_924 (+ v_~SIZE~0_355 1))) (and .cse1 .cse2 .cse3 (or (not (< v_main_~c~0_925 v_~SIZE~0_355)) (not .cse0))) (and (= v_~last~0_395 v_~last~0_395) .cse1 .cse2 (= v_~SIZE~0_355 v_~SIZE~0_355) .cse3))) InVars {~SIZE~0=v_~SIZE~0_355, main_~c~0=v_main_~c~0_925, main_#t~post5=|v_main_#t~post5_513|, main_~st~0=v_main_~st~0_489, ~last~0=v_~last~0_395} OutVars{~SIZE~0=v_~SIZE~0_355, main_#t~post5=|v_main_#t~post5_511|, main_~c~0=v_main_~c~0_924, main_~st~0=v_main_~st~0_488, ~last~0=v_~last~0_395} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {79094#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:01:52,282 INFO L290 TraceCheckUtils]: 12: Hoare triple {79108#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {79104#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:01:52,282 INFO L290 TraceCheckUtils]: 11: Hoare triple {79108#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {79108#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:52,282 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {78977#true} {79108#(< 1 ~SIZE~0)} #86#return; {79108#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:52,282 INFO L290 TraceCheckUtils]: 9: Hoare triple {78977#true} assume true; {78977#true} is VALID [2022-04-28 04:01:52,282 INFO L290 TraceCheckUtils]: 8: Hoare triple {78977#true} assume !(0 == ~cond); {78977#true} is VALID [2022-04-28 04:01:52,283 INFO L290 TraceCheckUtils]: 7: Hoare triple {78977#true} ~cond := #in~cond; {78977#true} is VALID [2022-04-28 04:01:52,283 INFO L272 TraceCheckUtils]: 6: Hoare triple {79108#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {78977#true} is VALID [2022-04-28 04:01:52,283 INFO L290 TraceCheckUtils]: 5: Hoare triple {79108#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {79108#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:52,283 INFO L272 TraceCheckUtils]: 4: Hoare triple {79108#(< 1 ~SIZE~0)} call #t~ret7 := main(); {79108#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:52,283 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {79108#(< 1 ~SIZE~0)} {78977#true} #90#return; {79108#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:52,284 INFO L290 TraceCheckUtils]: 2: Hoare triple {79108#(< 1 ~SIZE~0)} assume true; {79108#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:52,284 INFO L290 TraceCheckUtils]: 1: Hoare triple {78977#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {79108#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:01:52,284 INFO L272 TraceCheckUtils]: 0: Hoare triple {78977#true} call ULTIMATE.init(); {78977#true} is VALID [2022-04-28 04:01:52,284 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:01:52,284 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1547923460] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:01:52,285 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:01:52,285 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:01:52,873 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:01:52,873 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1913350575] [2022-04-28 04:01:52,873 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1913350575] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:01:52,873 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:01:52,873 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [25] imperfect sequences [] total 25 [2022-04-28 04:01:52,874 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1629022952] [2022-04-28 04:01:52,874 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:01:52,874 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 25 states have (on average 1.72) internal successors, (43), 24 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 49 [2022-04-28 04:01:52,874 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:01:52,874 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 25 states, 25 states have (on average 1.72) internal successors, (43), 24 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:01:52,905 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:01:52,905 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 25 states [2022-04-28 04:01:52,906 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:01:52,906 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2022-04-28 04:01:52,906 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=251, Invalid=871, Unknown=0, NotChecked=0, Total=1122 [2022-04-28 04:01:52,906 INFO L87 Difference]: Start difference. First operand 283 states and 341 transitions. Second operand has 25 states, 25 states have (on average 1.72) internal successors, (43), 24 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:01:56,025 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:01:56,025 INFO L93 Difference]: Finished difference Result 547 states and 667 transitions. [2022-04-28 04:01:56,025 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2022-04-28 04:01:56,025 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 25 states have (on average 1.72) internal successors, (43), 24 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 49 [2022-04-28 04:01:56,025 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:01:56,025 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 25 states have (on average 1.72) internal successors, (43), 24 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:01:56,026 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 106 transitions. [2022-04-28 04:01:56,026 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 25 states have (on average 1.72) internal successors, (43), 24 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:01:56,027 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 106 transitions. [2022-04-28 04:01:56,027 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 25 states and 106 transitions. [2022-04-28 04:01:56,099 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 106 edges. 106 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:01:56,104 INFO L225 Difference]: With dead ends: 547 [2022-04-28 04:01:56,104 INFO L226 Difference]: Without dead ends: 320 [2022-04-28 04:01:56,105 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 97 GetRequests, 54 SyntacticMatches, 8 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 645 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=294, Invalid=1038, Unknown=0, NotChecked=0, Total=1332 [2022-04-28 04:01:56,105 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 73 mSDsluCounter, 20 mSDsCounter, 0 mSdLazyCounter, 1108 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 74 SdHoareTripleChecker+Valid, 44 SdHoareTripleChecker+Invalid, 1129 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 1108 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-28 04:01:56,106 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [74 Valid, 44 Invalid, 1129 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 1108 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-04-28 04:01:56,106 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 320 states. [2022-04-28 04:01:57,468 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 320 to 295. [2022-04-28 04:01:57,468 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:01:57,468 INFO L82 GeneralOperation]: Start isEquivalent. First operand 320 states. Second operand has 295 states, 280 states have (on average 1.2142857142857142) internal successors, (340), 283 states have internal predecessors, (340), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:01:57,469 INFO L74 IsIncluded]: Start isIncluded. First operand 320 states. Second operand has 295 states, 280 states have (on average 1.2142857142857142) internal successors, (340), 283 states have internal predecessors, (340), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:01:57,469 INFO L87 Difference]: Start difference. First operand 320 states. Second operand has 295 states, 280 states have (on average 1.2142857142857142) internal successors, (340), 283 states have internal predecessors, (340), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:01:57,473 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:01:57,473 INFO L93 Difference]: Finished difference Result 320 states and 386 transitions. [2022-04-28 04:01:57,473 INFO L276 IsEmpty]: Start isEmpty. Operand 320 states and 386 transitions. [2022-04-28 04:01:57,473 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:01:57,473 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:01:57,473 INFO L74 IsIncluded]: Start isIncluded. First operand has 295 states, 280 states have (on average 1.2142857142857142) internal successors, (340), 283 states have internal predecessors, (340), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 320 states. [2022-04-28 04:01:57,473 INFO L87 Difference]: Start difference. First operand has 295 states, 280 states have (on average 1.2142857142857142) internal successors, (340), 283 states have internal predecessors, (340), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 320 states. [2022-04-28 04:01:57,477 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:01:57,477 INFO L93 Difference]: Finished difference Result 320 states and 386 transitions. [2022-04-28 04:01:57,477 INFO L276 IsEmpty]: Start isEmpty. Operand 320 states and 386 transitions. [2022-04-28 04:01:57,478 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:01:57,478 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:01:57,478 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:01:57,478 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:01:57,478 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 295 states, 280 states have (on average 1.2142857142857142) internal successors, (340), 283 states have internal predecessors, (340), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:01:57,482 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 295 states to 295 states and 357 transitions. [2022-04-28 04:01:57,482 INFO L78 Accepts]: Start accepts. Automaton has 295 states and 357 transitions. Word has length 49 [2022-04-28 04:01:57,482 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:01:57,482 INFO L495 AbstractCegarLoop]: Abstraction has 295 states and 357 transitions. [2022-04-28 04:01:57,482 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 25 states, 25 states have (on average 1.72) internal successors, (43), 24 states have internal predecessors, (43), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:01:57,482 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 295 states and 357 transitions. [2022-04-28 04:01:58,489 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 357 edges. 357 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:01:58,490 INFO L276 IsEmpty]: Start isEmpty. Operand 295 states and 357 transitions. [2022-04-28 04:01:58,490 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2022-04-28 04:01:58,490 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:01:58,490 INFO L195 NwaCegarLoop]: trace histogram [6, 6, 6, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:01:58,507 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (39)] Forceful destruction successful, exit code 0 [2022-04-28 04:01:58,690 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 39 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable46 [2022-04-28 04:01:58,691 INFO L420 AbstractCegarLoop]: === Iteration 48 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:01:58,691 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:01:58,691 INFO L85 PathProgramCache]: Analyzing trace with hash -601579469, now seen corresponding path program 3 times [2022-04-28 04:01:58,691 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:01:58,691 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [937441647] [2022-04-28 04:01:58,907 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 4 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=3}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:01:59,046 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 4 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=3}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:01:59,046 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:01:59,049 INFO L85 PathProgramCache]: Analyzing trace with hash -328153106, now seen corresponding path program 1 times [2022-04-28 04:01:59,049 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:01:59,049 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [198125718] [2022-04-28 04:01:59,049 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:01:59,049 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:01:59,060 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:59,151 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:01:59,152 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:59,157 INFO L290 TraceCheckUtils]: 0: Hoare triple {81512#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {81503#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:59,157 INFO L290 TraceCheckUtils]: 1: Hoare triple {81503#(<= 200000 ~SIZE~0)} assume true; {81503#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:59,158 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {81503#(<= 200000 ~SIZE~0)} {81498#true} #90#return; {81503#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:59,158 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:01:59,158 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:59,160 INFO L290 TraceCheckUtils]: 0: Hoare triple {81498#true} ~cond := #in~cond; {81498#true} is VALID [2022-04-28 04:01:59,160 INFO L290 TraceCheckUtils]: 1: Hoare triple {81498#true} assume !(0 == ~cond); {81498#true} is VALID [2022-04-28 04:01:59,160 INFO L290 TraceCheckUtils]: 2: Hoare triple {81498#true} assume true; {81498#true} is VALID [2022-04-28 04:01:59,160 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {81498#true} {81503#(<= 200000 ~SIZE~0)} #86#return; {81503#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:59,161 INFO L272 TraceCheckUtils]: 0: Hoare triple {81498#true} call ULTIMATE.init(); {81512#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:01:59,161 INFO L290 TraceCheckUtils]: 1: Hoare triple {81512#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {81503#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:59,162 INFO L290 TraceCheckUtils]: 2: Hoare triple {81503#(<= 200000 ~SIZE~0)} assume true; {81503#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:59,162 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {81503#(<= 200000 ~SIZE~0)} {81498#true} #90#return; {81503#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:59,162 INFO L272 TraceCheckUtils]: 4: Hoare triple {81503#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {81503#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:59,163 INFO L290 TraceCheckUtils]: 5: Hoare triple {81503#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {81503#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:59,163 INFO L272 TraceCheckUtils]: 6: Hoare triple {81503#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {81498#true} is VALID [2022-04-28 04:01:59,163 INFO L290 TraceCheckUtils]: 7: Hoare triple {81498#true} ~cond := #in~cond; {81498#true} is VALID [2022-04-28 04:01:59,163 INFO L290 TraceCheckUtils]: 8: Hoare triple {81498#true} assume !(0 == ~cond); {81498#true} is VALID [2022-04-28 04:01:59,163 INFO L290 TraceCheckUtils]: 9: Hoare triple {81498#true} assume true; {81498#true} is VALID [2022-04-28 04:01:59,163 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {81498#true} {81503#(<= 200000 ~SIZE~0)} #86#return; {81503#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:59,163 INFO L290 TraceCheckUtils]: 11: Hoare triple {81503#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {81503#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:59,164 INFO L290 TraceCheckUtils]: 12: Hoare triple {81503#(<= 200000 ~SIZE~0)} [260] L44-->L27-3_primed: Formula: (let ((.cse4 (= v_main_~st~0_502 v_main_~st~0_498)) (.cse5 (= v_main_~b~0_141 v_main_~b~0_140)) (.cse6 (= v_main_~a~0_145 v_main_~a~0_144)) (.cse7 (= v_main_~c~0_956 v_main_~c~0_952)) (.cse8 (= |v_main_#t~post5_527| |v_main_#t~post5_524|)) (.cse2 (<= v_~last~0_405 0)) (.cse3 (= v_~SIZE~0_365 v_main_~d~0_46)) (.cse0 (= 3 v_~SIZE~0_365)) (.cse1 (= v_main_~a~0_145 v_main_~b~0_141))) (or (and (= 3 v_main_~c~0_952) .cse0 .cse1 (< 0 (div (+ v_main_~a~0_144 (* (- 1) v_main_~b~0_141)) 2)) (= v_main_~st~0_498 0) (= (mod (+ v_main_~a~0_144 v_main_~b~0_141) 2) 0) .cse2 (not .cse3) (= v_main_~b~0_140 (+ v_main_~b~0_141 (* 2 (div (+ v_main_~a~0_144 (- v_main_~b~0_141)) 2))))) (and .cse4 .cse5 .cse6 (= v_~SIZE~0_365 v_~SIZE~0_365) .cse7 .cse8 (= v_main_~d~0_46 v_main_~d~0_46) (= v_~last~0_405 v_~last~0_405)) (and .cse4 .cse5 .cse6 .cse7 .cse8 (or (not .cse2) .cse3 (not .cse0) (not .cse1))))) InVars {~SIZE~0=v_~SIZE~0_365, main_~c~0=v_main_~c~0_956, main_#t~post5=|v_main_#t~post5_527|, main_~d~0=v_main_~d~0_46, main_~st~0=v_main_~st~0_502, main_~b~0=v_main_~b~0_141, ~last~0=v_~last~0_405, main_~a~0=v_main_~a~0_145} OutVars{~SIZE~0=v_~SIZE~0_365, main_~c~0=v_main_~c~0_952, main_#t~post5=|v_main_#t~post5_524|, main_~d~0=v_main_~d~0_46, main_~st~0=v_main_~st~0_498, main_~b~0=v_main_~b~0_140, ~last~0=v_~last~0_405, main_~a~0=v_main_~a~0_144} AuxVars[] AssignedVars[main_~c~0, main_#t~post5, main_~st~0, main_~b~0, main_~a~0] {81503#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:59,174 INFO L290 TraceCheckUtils]: 13: Hoare triple {81503#(<= 200000 ~SIZE~0)} [261] L27-3_primed-->L44: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {81503#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:59,174 INFO L290 TraceCheckUtils]: 14: Hoare triple {81503#(<= 200000 ~SIZE~0)} [262] L44-->L27-3_primed: Formula: (let ((.cse0 (= v_main_~b~0_141 v_main_~b~0_140)) (.cse1 (= v_main_~a~0_145 v_main_~a~0_144)) (.cse2 (= v_main_~st~0_505 v_main_~st~0_498)) (.cse3 (= |v_main_#t~post5_530| |v_main_#t~post5_524|))) (or (and .cse0 .cse1 .cse2 .cse3 (= v_main_~c~0_959 v_main_~c~0_952)) (and .cse0 .cse1 .cse2 .cse3 (= v_main_~c~0_952 v_main_~c~0_959)))) InVars {main_~c~0=v_main_~c~0_959, main_#t~post5=|v_main_#t~post5_530|, main_~st~0=v_main_~st~0_505, main_~b~0=v_main_~b~0_141, main_~a~0=v_main_~a~0_145} OutVars{main_~c~0=v_main_~c~0_952, main_#t~post5=|v_main_#t~post5_524|, main_~st~0=v_main_~st~0_498, main_~b~0=v_main_~b~0_140, main_~a~0=v_main_~a~0_144} AuxVars[] AssignedVars[main_~c~0, main_#t~post5, main_~st~0, main_~b~0, main_~a~0] {81503#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:59,175 INFO L290 TraceCheckUtils]: 15: Hoare triple {81503#(<= 200000 ~SIZE~0)} [259] L27-3_primed-->L27-3: Formula: (and (= 0 v_main_~c~0_10) (= v_main_~st~0_7 1)) InVars {} OutVars{main_~c~0=v_main_~c~0_10, main_~st~0=v_main_~st~0_7} AuxVars[] AssignedVars[main_~c~0, main_~st~0] {81508#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:59,175 INFO L290 TraceCheckUtils]: 16: Hoare triple {81508#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} assume !!(~c~0 < ~SIZE~0); {81508#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:59,175 INFO L290 TraceCheckUtils]: 17: Hoare triple {81508#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} assume ~c~0 >= ~last~0;~st~0 := 0; {81508#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:59,176 INFO L290 TraceCheckUtils]: 18: Hoare triple {81508#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} #t~post5 := ~c~0;~c~0 := 1 + #t~post5;havoc #t~post5; {81509#(<= (+ main_~c~0 199999) ~SIZE~0)} is VALID [2022-04-28 04:01:59,176 INFO L290 TraceCheckUtils]: 19: Hoare triple {81509#(<= (+ main_~c~0 199999) ~SIZE~0)} assume !!(~c~0 < ~SIZE~0); {81509#(<= (+ main_~c~0 199999) ~SIZE~0)} is VALID [2022-04-28 04:01:59,177 INFO L290 TraceCheckUtils]: 20: Hoare triple {81509#(<= (+ main_~c~0 199999) ~SIZE~0)} assume ~c~0 >= ~last~0;~st~0 := 0; {81509#(<= (+ main_~c~0 199999) ~SIZE~0)} is VALID [2022-04-28 04:01:59,177 INFO L290 TraceCheckUtils]: 21: Hoare triple {81509#(<= (+ main_~c~0 199999) ~SIZE~0)} #t~post5 := ~c~0;~c~0 := 1 + #t~post5;havoc #t~post5; {81510#(<= (+ main_~c~0 199998) ~SIZE~0)} is VALID [2022-04-28 04:01:59,177 INFO L290 TraceCheckUtils]: 22: Hoare triple {81510#(<= (+ main_~c~0 199998) ~SIZE~0)} assume !!(~c~0 < ~SIZE~0); {81510#(<= (+ main_~c~0 199998) ~SIZE~0)} is VALID [2022-04-28 04:01:59,178 INFO L290 TraceCheckUtils]: 23: Hoare triple {81510#(<= (+ main_~c~0 199998) ~SIZE~0)} assume ~c~0 >= ~last~0;~st~0 := 0; {81510#(<= (+ main_~c~0 199998) ~SIZE~0)} is VALID [2022-04-28 04:01:59,178 INFO L290 TraceCheckUtils]: 24: Hoare triple {81510#(<= (+ main_~c~0 199998) ~SIZE~0)} #t~post5 := ~c~0;~c~0 := 1 + #t~post5;havoc #t~post5; {81511#(<= (+ main_~c~0 199997) ~SIZE~0)} is VALID [2022-04-28 04:01:59,179 INFO L290 TraceCheckUtils]: 25: Hoare triple {81511#(<= (+ main_~c~0 199997) ~SIZE~0)} assume !(~c~0 < ~SIZE~0); {81499#false} is VALID [2022-04-28 04:01:59,179 INFO L290 TraceCheckUtils]: 26: Hoare triple {81499#false} assume !(0 == ~st~0 && ~c~0 == 1 + ~last~0);~a~0 := 2 + ~a~0;~b~0 := 2 + ~b~0; {81499#false} is VALID [2022-04-28 04:01:59,179 INFO L290 TraceCheckUtils]: 27: Hoare triple {81499#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {81499#false} is VALID [2022-04-28 04:01:59,179 INFO L290 TraceCheckUtils]: 28: Hoare triple {81499#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {81499#false} is VALID [2022-04-28 04:01:59,179 INFO L290 TraceCheckUtils]: 29: Hoare triple {81499#false} assume !(~d~0 == ~SIZE~0); {81499#false} is VALID [2022-04-28 04:01:59,179 INFO L272 TraceCheckUtils]: 30: Hoare triple {81499#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {81499#false} is VALID [2022-04-28 04:01:59,179 INFO L290 TraceCheckUtils]: 31: Hoare triple {81499#false} ~cond := #in~cond; {81499#false} is VALID [2022-04-28 04:01:59,179 INFO L290 TraceCheckUtils]: 32: Hoare triple {81499#false} assume 0 == ~cond; {81499#false} is VALID [2022-04-28 04:01:59,179 INFO L290 TraceCheckUtils]: 33: Hoare triple {81499#false} assume !false; {81499#false} is VALID [2022-04-28 04:01:59,179 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 0 proven. 12 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-28 04:01:59,179 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:01:59,180 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [198125718] [2022-04-28 04:01:59,180 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [198125718] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:01:59,180 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1430217672] [2022-04-28 04:01:59,180 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:01:59,180 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:01:59,180 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:01:59,181 INFO L229 MonitoredProcess]: Starting monitored process 40 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:01:59,182 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (40)] Waiting until timeout for monitored process [2022-04-28 04:01:59,212 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:59,213 INFO L263 TraceCheckSpWp]: Trace formula consists of 119 conjuncts, 6 conjunts are in the unsatisfiable core [2022-04-28 04:01:59,219 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:01:59,220 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:01:59,407 INFO L272 TraceCheckUtils]: 0: Hoare triple {81498#true} call ULTIMATE.init(); {81498#true} is VALID [2022-04-28 04:01:59,408 INFO L290 TraceCheckUtils]: 1: Hoare triple {81498#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {81503#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:59,408 INFO L290 TraceCheckUtils]: 2: Hoare triple {81503#(<= 200000 ~SIZE~0)} assume true; {81503#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:59,408 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {81503#(<= 200000 ~SIZE~0)} {81498#true} #90#return; {81503#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:59,409 INFO L272 TraceCheckUtils]: 4: Hoare triple {81503#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {81503#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:59,409 INFO L290 TraceCheckUtils]: 5: Hoare triple {81503#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {81503#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:59,409 INFO L272 TraceCheckUtils]: 6: Hoare triple {81503#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {81503#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:59,410 INFO L290 TraceCheckUtils]: 7: Hoare triple {81503#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {81503#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:59,410 INFO L290 TraceCheckUtils]: 8: Hoare triple {81503#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {81503#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:59,410 INFO L290 TraceCheckUtils]: 9: Hoare triple {81503#(<= 200000 ~SIZE~0)} assume true; {81503#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:59,411 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {81503#(<= 200000 ~SIZE~0)} {81503#(<= 200000 ~SIZE~0)} #86#return; {81503#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:59,411 INFO L290 TraceCheckUtils]: 11: Hoare triple {81503#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {81503#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:59,411 INFO L290 TraceCheckUtils]: 12: Hoare triple {81503#(<= 200000 ~SIZE~0)} [260] L44-->L27-3_primed: Formula: (let ((.cse4 (= v_main_~st~0_502 v_main_~st~0_498)) (.cse5 (= v_main_~b~0_141 v_main_~b~0_140)) (.cse6 (= v_main_~a~0_145 v_main_~a~0_144)) (.cse7 (= v_main_~c~0_956 v_main_~c~0_952)) (.cse8 (= |v_main_#t~post5_527| |v_main_#t~post5_524|)) (.cse2 (<= v_~last~0_405 0)) (.cse3 (= v_~SIZE~0_365 v_main_~d~0_46)) (.cse0 (= 3 v_~SIZE~0_365)) (.cse1 (= v_main_~a~0_145 v_main_~b~0_141))) (or (and (= 3 v_main_~c~0_952) .cse0 .cse1 (< 0 (div (+ v_main_~a~0_144 (* (- 1) v_main_~b~0_141)) 2)) (= v_main_~st~0_498 0) (= (mod (+ v_main_~a~0_144 v_main_~b~0_141) 2) 0) .cse2 (not .cse3) (= v_main_~b~0_140 (+ v_main_~b~0_141 (* 2 (div (+ v_main_~a~0_144 (- v_main_~b~0_141)) 2))))) (and .cse4 .cse5 .cse6 (= v_~SIZE~0_365 v_~SIZE~0_365) .cse7 .cse8 (= v_main_~d~0_46 v_main_~d~0_46) (= v_~last~0_405 v_~last~0_405)) (and .cse4 .cse5 .cse6 .cse7 .cse8 (or (not .cse2) .cse3 (not .cse0) (not .cse1))))) InVars {~SIZE~0=v_~SIZE~0_365, main_~c~0=v_main_~c~0_956, main_#t~post5=|v_main_#t~post5_527|, main_~d~0=v_main_~d~0_46, main_~st~0=v_main_~st~0_502, main_~b~0=v_main_~b~0_141, ~last~0=v_~last~0_405, main_~a~0=v_main_~a~0_145} OutVars{~SIZE~0=v_~SIZE~0_365, main_~c~0=v_main_~c~0_952, main_#t~post5=|v_main_#t~post5_524|, main_~d~0=v_main_~d~0_46, main_~st~0=v_main_~st~0_498, main_~b~0=v_main_~b~0_140, ~last~0=v_~last~0_405, main_~a~0=v_main_~a~0_144} AuxVars[] AssignedVars[main_~c~0, main_#t~post5, main_~st~0, main_~b~0, main_~a~0] {81503#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:59,411 INFO L290 TraceCheckUtils]: 13: Hoare triple {81503#(<= 200000 ~SIZE~0)} [261] L27-3_primed-->L44: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {81503#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:59,412 INFO L290 TraceCheckUtils]: 14: Hoare triple {81503#(<= 200000 ~SIZE~0)} [262] L44-->L27-3_primed: Formula: (let ((.cse0 (= v_main_~b~0_141 v_main_~b~0_140)) (.cse1 (= v_main_~a~0_145 v_main_~a~0_144)) (.cse2 (= v_main_~st~0_505 v_main_~st~0_498)) (.cse3 (= |v_main_#t~post5_530| |v_main_#t~post5_524|))) (or (and .cse0 .cse1 .cse2 .cse3 (= v_main_~c~0_959 v_main_~c~0_952)) (and .cse0 .cse1 .cse2 .cse3 (= v_main_~c~0_952 v_main_~c~0_959)))) InVars {main_~c~0=v_main_~c~0_959, main_#t~post5=|v_main_#t~post5_530|, main_~st~0=v_main_~st~0_505, main_~b~0=v_main_~b~0_141, main_~a~0=v_main_~a~0_145} OutVars{main_~c~0=v_main_~c~0_952, main_#t~post5=|v_main_#t~post5_524|, main_~st~0=v_main_~st~0_498, main_~b~0=v_main_~b~0_140, main_~a~0=v_main_~a~0_144} AuxVars[] AssignedVars[main_~c~0, main_#t~post5, main_~st~0, main_~b~0, main_~a~0] {81503#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:01:59,412 INFO L290 TraceCheckUtils]: 15: Hoare triple {81503#(<= 200000 ~SIZE~0)} [259] L27-3_primed-->L27-3: Formula: (and (= 0 v_main_~c~0_10) (= v_main_~st~0_7 1)) InVars {} OutVars{main_~c~0=v_main_~c~0_10, main_~st~0=v_main_~st~0_7} AuxVars[] AssignedVars[main_~c~0, main_~st~0] {81561#(and (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:59,412 INFO L290 TraceCheckUtils]: 16: Hoare triple {81561#(and (<= main_~c~0 0) (<= 200000 ~SIZE~0))} assume !!(~c~0 < ~SIZE~0); {81561#(and (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:59,413 INFO L290 TraceCheckUtils]: 17: Hoare triple {81561#(and (<= main_~c~0 0) (<= 200000 ~SIZE~0))} assume ~c~0 >= ~last~0;~st~0 := 0; {81561#(and (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:59,413 INFO L290 TraceCheckUtils]: 18: Hoare triple {81561#(and (<= main_~c~0 0) (<= 200000 ~SIZE~0))} #t~post5 := ~c~0;~c~0 := 1 + #t~post5;havoc #t~post5; {81571#(and (<= 200000 ~SIZE~0) (<= main_~c~0 1))} is VALID [2022-04-28 04:01:59,413 INFO L290 TraceCheckUtils]: 19: Hoare triple {81571#(and (<= 200000 ~SIZE~0) (<= main_~c~0 1))} assume !!(~c~0 < ~SIZE~0); {81571#(and (<= 200000 ~SIZE~0) (<= main_~c~0 1))} is VALID [2022-04-28 04:01:59,414 INFO L290 TraceCheckUtils]: 20: Hoare triple {81571#(and (<= 200000 ~SIZE~0) (<= main_~c~0 1))} assume ~c~0 >= ~last~0;~st~0 := 0; {81571#(and (<= 200000 ~SIZE~0) (<= main_~c~0 1))} is VALID [2022-04-28 04:01:59,414 INFO L290 TraceCheckUtils]: 21: Hoare triple {81571#(and (<= 200000 ~SIZE~0) (<= main_~c~0 1))} #t~post5 := ~c~0;~c~0 := 1 + #t~post5;havoc #t~post5; {81581#(and (<= main_~c~0 2) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:59,415 INFO L290 TraceCheckUtils]: 22: Hoare triple {81581#(and (<= main_~c~0 2) (<= 200000 ~SIZE~0))} assume !!(~c~0 < ~SIZE~0); {81581#(and (<= main_~c~0 2) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:59,415 INFO L290 TraceCheckUtils]: 23: Hoare triple {81581#(and (<= main_~c~0 2) (<= 200000 ~SIZE~0))} assume ~c~0 >= ~last~0;~st~0 := 0; {81581#(and (<= main_~c~0 2) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:59,415 INFO L290 TraceCheckUtils]: 24: Hoare triple {81581#(and (<= main_~c~0 2) (<= 200000 ~SIZE~0))} #t~post5 := ~c~0;~c~0 := 1 + #t~post5;havoc #t~post5; {81591#(and (<= main_~c~0 3) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:01:59,416 INFO L290 TraceCheckUtils]: 25: Hoare triple {81591#(and (<= main_~c~0 3) (<= 200000 ~SIZE~0))} assume !(~c~0 < ~SIZE~0); {81499#false} is VALID [2022-04-28 04:01:59,416 INFO L290 TraceCheckUtils]: 26: Hoare triple {81499#false} assume !(0 == ~st~0 && ~c~0 == 1 + ~last~0);~a~0 := 2 + ~a~0;~b~0 := 2 + ~b~0; {81499#false} is VALID [2022-04-28 04:01:59,416 INFO L290 TraceCheckUtils]: 27: Hoare triple {81499#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {81499#false} is VALID [2022-04-28 04:01:59,416 INFO L290 TraceCheckUtils]: 28: Hoare triple {81499#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {81499#false} is VALID [2022-04-28 04:01:59,416 INFO L290 TraceCheckUtils]: 29: Hoare triple {81499#false} assume !(~d~0 == ~SIZE~0); {81499#false} is VALID [2022-04-28 04:01:59,416 INFO L272 TraceCheckUtils]: 30: Hoare triple {81499#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {81499#false} is VALID [2022-04-28 04:01:59,416 INFO L290 TraceCheckUtils]: 31: Hoare triple {81499#false} ~cond := #in~cond; {81499#false} is VALID [2022-04-28 04:01:59,416 INFO L290 TraceCheckUtils]: 32: Hoare triple {81499#false} assume 0 == ~cond; {81499#false} is VALID [2022-04-28 04:01:59,416 INFO L290 TraceCheckUtils]: 33: Hoare triple {81499#false} assume !false; {81499#false} is VALID [2022-04-28 04:01:59,416 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 0 proven. 12 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-28 04:01:59,416 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:01:59,574 INFO L290 TraceCheckUtils]: 33: Hoare triple {81499#false} assume !false; {81499#false} is VALID [2022-04-28 04:01:59,574 INFO L290 TraceCheckUtils]: 32: Hoare triple {81499#false} assume 0 == ~cond; {81499#false} is VALID [2022-04-28 04:01:59,574 INFO L290 TraceCheckUtils]: 31: Hoare triple {81499#false} ~cond := #in~cond; {81499#false} is VALID [2022-04-28 04:01:59,574 INFO L272 TraceCheckUtils]: 30: Hoare triple {81499#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {81499#false} is VALID [2022-04-28 04:01:59,574 INFO L290 TraceCheckUtils]: 29: Hoare triple {81499#false} assume !(~d~0 == ~SIZE~0); {81499#false} is VALID [2022-04-28 04:01:59,574 INFO L290 TraceCheckUtils]: 28: Hoare triple {81499#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {81499#false} is VALID [2022-04-28 04:01:59,574 INFO L290 TraceCheckUtils]: 27: Hoare triple {81499#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {81499#false} is VALID [2022-04-28 04:01:59,574 INFO L290 TraceCheckUtils]: 26: Hoare triple {81499#false} assume !(0 == ~st~0 && ~c~0 == 1 + ~last~0);~a~0 := 2 + ~a~0;~b~0 := 2 + ~b~0; {81499#false} is VALID [2022-04-28 04:01:59,575 INFO L290 TraceCheckUtils]: 25: Hoare triple {81643#(< main_~c~0 ~SIZE~0)} assume !(~c~0 < ~SIZE~0); {81499#false} is VALID [2022-04-28 04:01:59,575 INFO L290 TraceCheckUtils]: 24: Hoare triple {81647#(< (+ main_~c~0 1) ~SIZE~0)} #t~post5 := ~c~0;~c~0 := 1 + #t~post5;havoc #t~post5; {81643#(< main_~c~0 ~SIZE~0)} is VALID [2022-04-28 04:01:59,576 INFO L290 TraceCheckUtils]: 23: Hoare triple {81647#(< (+ main_~c~0 1) ~SIZE~0)} assume ~c~0 >= ~last~0;~st~0 := 0; {81647#(< (+ main_~c~0 1) ~SIZE~0)} is VALID [2022-04-28 04:01:59,576 INFO L290 TraceCheckUtils]: 22: Hoare triple {81647#(< (+ main_~c~0 1) ~SIZE~0)} assume !!(~c~0 < ~SIZE~0); {81647#(< (+ main_~c~0 1) ~SIZE~0)} is VALID [2022-04-28 04:01:59,576 INFO L290 TraceCheckUtils]: 21: Hoare triple {81657#(< (+ main_~c~0 2) ~SIZE~0)} #t~post5 := ~c~0;~c~0 := 1 + #t~post5;havoc #t~post5; {81647#(< (+ main_~c~0 1) ~SIZE~0)} is VALID [2022-04-28 04:01:59,577 INFO L290 TraceCheckUtils]: 20: Hoare triple {81657#(< (+ main_~c~0 2) ~SIZE~0)} assume ~c~0 >= ~last~0;~st~0 := 0; {81657#(< (+ main_~c~0 2) ~SIZE~0)} is VALID [2022-04-28 04:01:59,577 INFO L290 TraceCheckUtils]: 19: Hoare triple {81657#(< (+ main_~c~0 2) ~SIZE~0)} assume !!(~c~0 < ~SIZE~0); {81657#(< (+ main_~c~0 2) ~SIZE~0)} is VALID [2022-04-28 04:01:59,577 INFO L290 TraceCheckUtils]: 18: Hoare triple {81667#(< (+ main_~c~0 3) ~SIZE~0)} #t~post5 := ~c~0;~c~0 := 1 + #t~post5;havoc #t~post5; {81657#(< (+ main_~c~0 2) ~SIZE~0)} is VALID [2022-04-28 04:01:59,578 INFO L290 TraceCheckUtils]: 17: Hoare triple {81667#(< (+ main_~c~0 3) ~SIZE~0)} assume ~c~0 >= ~last~0;~st~0 := 0; {81667#(< (+ main_~c~0 3) ~SIZE~0)} is VALID [2022-04-28 04:01:59,578 INFO L290 TraceCheckUtils]: 16: Hoare triple {81667#(< (+ main_~c~0 3) ~SIZE~0)} assume !!(~c~0 < ~SIZE~0); {81667#(< (+ main_~c~0 3) ~SIZE~0)} is VALID [2022-04-28 04:01:59,578 INFO L290 TraceCheckUtils]: 15: Hoare triple {81677#(< 3 ~SIZE~0)} [259] L27-3_primed-->L27-3: Formula: (and (= 0 v_main_~c~0_10) (= v_main_~st~0_7 1)) InVars {} OutVars{main_~c~0=v_main_~c~0_10, main_~st~0=v_main_~st~0_7} AuxVars[] AssignedVars[main_~c~0, main_~st~0] {81667#(< (+ main_~c~0 3) ~SIZE~0)} is VALID [2022-04-28 04:01:59,579 INFO L290 TraceCheckUtils]: 14: Hoare triple {81677#(< 3 ~SIZE~0)} [262] L44-->L27-3_primed: Formula: (let ((.cse0 (= v_main_~b~0_141 v_main_~b~0_140)) (.cse1 (= v_main_~a~0_145 v_main_~a~0_144)) (.cse2 (= v_main_~st~0_505 v_main_~st~0_498)) (.cse3 (= |v_main_#t~post5_530| |v_main_#t~post5_524|))) (or (and .cse0 .cse1 .cse2 .cse3 (= v_main_~c~0_959 v_main_~c~0_952)) (and .cse0 .cse1 .cse2 .cse3 (= v_main_~c~0_952 v_main_~c~0_959)))) InVars {main_~c~0=v_main_~c~0_959, main_#t~post5=|v_main_#t~post5_530|, main_~st~0=v_main_~st~0_505, main_~b~0=v_main_~b~0_141, main_~a~0=v_main_~a~0_145} OutVars{main_~c~0=v_main_~c~0_952, main_#t~post5=|v_main_#t~post5_524|, main_~st~0=v_main_~st~0_498, main_~b~0=v_main_~b~0_140, main_~a~0=v_main_~a~0_144} AuxVars[] AssignedVars[main_~c~0, main_#t~post5, main_~st~0, main_~b~0, main_~a~0] {81677#(< 3 ~SIZE~0)} is VALID [2022-04-28 04:01:59,579 INFO L290 TraceCheckUtils]: 13: Hoare triple {81677#(< 3 ~SIZE~0)} [261] L27-3_primed-->L44: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {81677#(< 3 ~SIZE~0)} is VALID [2022-04-28 04:01:59,579 INFO L290 TraceCheckUtils]: 12: Hoare triple {81677#(< 3 ~SIZE~0)} [260] L44-->L27-3_primed: Formula: (let ((.cse4 (= v_main_~st~0_502 v_main_~st~0_498)) (.cse5 (= v_main_~b~0_141 v_main_~b~0_140)) (.cse6 (= v_main_~a~0_145 v_main_~a~0_144)) (.cse7 (= v_main_~c~0_956 v_main_~c~0_952)) (.cse8 (= |v_main_#t~post5_527| |v_main_#t~post5_524|)) (.cse2 (<= v_~last~0_405 0)) (.cse3 (= v_~SIZE~0_365 v_main_~d~0_46)) (.cse0 (= 3 v_~SIZE~0_365)) (.cse1 (= v_main_~a~0_145 v_main_~b~0_141))) (or (and (= 3 v_main_~c~0_952) .cse0 .cse1 (< 0 (div (+ v_main_~a~0_144 (* (- 1) v_main_~b~0_141)) 2)) (= v_main_~st~0_498 0) (= (mod (+ v_main_~a~0_144 v_main_~b~0_141) 2) 0) .cse2 (not .cse3) (= v_main_~b~0_140 (+ v_main_~b~0_141 (* 2 (div (+ v_main_~a~0_144 (- v_main_~b~0_141)) 2))))) (and .cse4 .cse5 .cse6 (= v_~SIZE~0_365 v_~SIZE~0_365) .cse7 .cse8 (= v_main_~d~0_46 v_main_~d~0_46) (= v_~last~0_405 v_~last~0_405)) (and .cse4 .cse5 .cse6 .cse7 .cse8 (or (not .cse2) .cse3 (not .cse0) (not .cse1))))) InVars {~SIZE~0=v_~SIZE~0_365, main_~c~0=v_main_~c~0_956, main_#t~post5=|v_main_#t~post5_527|, main_~d~0=v_main_~d~0_46, main_~st~0=v_main_~st~0_502, main_~b~0=v_main_~b~0_141, ~last~0=v_~last~0_405, main_~a~0=v_main_~a~0_145} OutVars{~SIZE~0=v_~SIZE~0_365, main_~c~0=v_main_~c~0_952, main_#t~post5=|v_main_#t~post5_524|, main_~d~0=v_main_~d~0_46, main_~st~0=v_main_~st~0_498, main_~b~0=v_main_~b~0_140, ~last~0=v_~last~0_405, main_~a~0=v_main_~a~0_144} AuxVars[] AssignedVars[main_~c~0, main_#t~post5, main_~st~0, main_~b~0, main_~a~0] {81677#(< 3 ~SIZE~0)} is VALID [2022-04-28 04:01:59,580 INFO L290 TraceCheckUtils]: 11: Hoare triple {81677#(< 3 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {81677#(< 3 ~SIZE~0)} is VALID [2022-04-28 04:01:59,580 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {81498#true} {81677#(< 3 ~SIZE~0)} #86#return; {81677#(< 3 ~SIZE~0)} is VALID [2022-04-28 04:01:59,580 INFO L290 TraceCheckUtils]: 9: Hoare triple {81498#true} assume true; {81498#true} is VALID [2022-04-28 04:01:59,580 INFO L290 TraceCheckUtils]: 8: Hoare triple {81498#true} assume !(0 == ~cond); {81498#true} is VALID [2022-04-28 04:01:59,580 INFO L290 TraceCheckUtils]: 7: Hoare triple {81498#true} ~cond := #in~cond; {81498#true} is VALID [2022-04-28 04:01:59,580 INFO L272 TraceCheckUtils]: 6: Hoare triple {81677#(< 3 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {81498#true} is VALID [2022-04-28 04:01:59,581 INFO L290 TraceCheckUtils]: 5: Hoare triple {81677#(< 3 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {81677#(< 3 ~SIZE~0)} is VALID [2022-04-28 04:01:59,581 INFO L272 TraceCheckUtils]: 4: Hoare triple {81677#(< 3 ~SIZE~0)} call #t~ret7 := main(); {81677#(< 3 ~SIZE~0)} is VALID [2022-04-28 04:01:59,581 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {81677#(< 3 ~SIZE~0)} {81498#true} #90#return; {81677#(< 3 ~SIZE~0)} is VALID [2022-04-28 04:01:59,582 INFO L290 TraceCheckUtils]: 2: Hoare triple {81677#(< 3 ~SIZE~0)} assume true; {81677#(< 3 ~SIZE~0)} is VALID [2022-04-28 04:01:59,582 INFO L290 TraceCheckUtils]: 1: Hoare triple {81498#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {81677#(< 3 ~SIZE~0)} is VALID [2022-04-28 04:01:59,582 INFO L272 TraceCheckUtils]: 0: Hoare triple {81498#true} call ULTIMATE.init(); {81498#true} is VALID [2022-04-28 04:01:59,582 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 0 proven. 12 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-28 04:01:59,582 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1430217672] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:01:59,583 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:01:59,583 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 7, 7] total 17 [2022-04-28 04:01:59,709 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:01:59,709 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [937441647] [2022-04-28 04:01:59,714 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [937441647] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:01:59,714 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:01:59,714 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-28 04:01:59,714 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [914994778] [2022-04-28 04:01:59,714 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:01:59,714 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 2.923076923076923) internal successors, (38), 12 states have internal predecessors, (38), 3 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Word has length 51 [2022-04-28 04:01:59,715 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:01:59,715 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 2.923076923076923) internal successors, (38), 12 states have internal predecessors, (38), 3 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 04:01:59,743 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 45 edges. 45 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:01:59,743 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-28 04:01:59,743 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:01:59,743 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-28 04:01:59,744 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=173, Invalid=289, Unknown=0, NotChecked=0, Total=462 [2022-04-28 04:01:59,744 INFO L87 Difference]: Start difference. First operand 295 states and 357 transitions. Second operand has 13 states, 13 states have (on average 2.923076923076923) internal successors, (38), 12 states have internal predecessors, (38), 3 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 04:02:01,404 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:02:01,404 INFO L93 Difference]: Finished difference Result 549 states and 663 transitions. [2022-04-28 04:02:01,404 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-28 04:02:01,404 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 2.923076923076923) internal successors, (38), 12 states have internal predecessors, (38), 3 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Word has length 51 [2022-04-28 04:02:01,404 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:02:01,404 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 2.923076923076923) internal successors, (38), 12 states have internal predecessors, (38), 3 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 04:02:01,405 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 80 transitions. [2022-04-28 04:02:01,405 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 2.923076923076923) internal successors, (38), 12 states have internal predecessors, (38), 3 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 04:02:01,405 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 80 transitions. [2022-04-28 04:02:01,406 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 80 transitions. [2022-04-28 04:02:01,455 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 80 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:02:01,460 INFO L225 Difference]: With dead ends: 549 [2022-04-28 04:02:01,460 INFO L226 Difference]: Without dead ends: 315 [2022-04-28 04:02:01,460 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 112 GetRequests, 82 SyntacticMatches, 6 SemanticMatches, 24 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 367 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=235, Invalid=415, Unknown=0, NotChecked=0, Total=650 [2022-04-28 04:02:01,461 INFO L413 NwaCegarLoop]: 21 mSDtfsCounter, 64 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 138 mSolverCounterSat, 29 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 65 SdHoareTripleChecker+Valid, 25 SdHoareTripleChecker+Invalid, 167 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 29 IncrementalHoareTripleChecker+Valid, 138 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 04:02:01,461 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [65 Valid, 25 Invalid, 167 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [29 Valid, 138 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 04:02:01,466 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 315 states. [2022-04-28 04:02:02,870 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 315 to 307. [2022-04-28 04:02:02,870 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:02:02,871 INFO L82 GeneralOperation]: Start isEquivalent. First operand 315 states. Second operand has 307 states, 292 states have (on average 1.2054794520547945) internal successors, (352), 295 states have internal predecessors, (352), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:02:02,871 INFO L74 IsIncluded]: Start isIncluded. First operand 315 states. Second operand has 307 states, 292 states have (on average 1.2054794520547945) internal successors, (352), 295 states have internal predecessors, (352), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:02:02,871 INFO L87 Difference]: Start difference. First operand 315 states. Second operand has 307 states, 292 states have (on average 1.2054794520547945) internal successors, (352), 295 states have internal predecessors, (352), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:02:02,875 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:02:02,875 INFO L93 Difference]: Finished difference Result 315 states and 377 transitions. [2022-04-28 04:02:02,875 INFO L276 IsEmpty]: Start isEmpty. Operand 315 states and 377 transitions. [2022-04-28 04:02:02,875 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:02:02,875 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:02:02,875 INFO L74 IsIncluded]: Start isIncluded. First operand has 307 states, 292 states have (on average 1.2054794520547945) internal successors, (352), 295 states have internal predecessors, (352), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 315 states. [2022-04-28 04:02:02,875 INFO L87 Difference]: Start difference. First operand has 307 states, 292 states have (on average 1.2054794520547945) internal successors, (352), 295 states have internal predecessors, (352), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 315 states. [2022-04-28 04:02:02,879 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:02:02,879 INFO L93 Difference]: Finished difference Result 315 states and 377 transitions. [2022-04-28 04:02:02,879 INFO L276 IsEmpty]: Start isEmpty. Operand 315 states and 377 transitions. [2022-04-28 04:02:02,879 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:02:02,879 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:02:02,879 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:02:02,879 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:02:02,880 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 307 states, 292 states have (on average 1.2054794520547945) internal successors, (352), 295 states have internal predecessors, (352), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:02:02,884 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 307 states to 307 states and 369 transitions. [2022-04-28 04:02:02,884 INFO L78 Accepts]: Start accepts. Automaton has 307 states and 369 transitions. Word has length 51 [2022-04-28 04:02:02,884 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:02:02,884 INFO L495 AbstractCegarLoop]: Abstraction has 307 states and 369 transitions. [2022-04-28 04:02:02,884 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 2.923076923076923) internal successors, (38), 12 states have internal predecessors, (38), 3 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 04:02:02,884 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 307 states and 369 transitions. [2022-04-28 04:02:03,810 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 369 edges. 369 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:02:03,810 INFO L276 IsEmpty]: Start isEmpty. Operand 307 states and 369 transitions. [2022-04-28 04:02:03,810 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2022-04-28 04:02:03,810 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:02:03,810 INFO L195 NwaCegarLoop]: trace histogram [10, 10, 9, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:02:03,829 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (40)] Forceful destruction successful, exit code 0 [2022-04-28 04:02:04,015 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 40 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable47 [2022-04-28 04:02:04,015 INFO L420 AbstractCegarLoop]: === Iteration 49 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:02:04,016 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:02:04,016 INFO L85 PathProgramCache]: Analyzing trace with hash 679090812, now seen corresponding path program 37 times [2022-04-28 04:02:04,016 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:02:04,016 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [236725805] [2022-04-28 04:02:08,136 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:02:08,245 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:02:10,816 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:02:10,909 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:02:10,911 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:02:10,913 INFO L85 PathProgramCache]: Analyzing trace with hash 1115713473, now seen corresponding path program 1 times [2022-04-28 04:02:10,913 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:02:10,913 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1528540872] [2022-04-28 04:02:10,913 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:02:10,914 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:02:10,920 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:02:10,961 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:02:10,962 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:02:10,967 INFO L290 TraceCheckUtils]: 0: Hoare triple {84094#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {84086#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:10,968 INFO L290 TraceCheckUtils]: 1: Hoare triple {84086#(<= 200000 ~SIZE~0)} assume true; {84086#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:10,968 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {84086#(<= 200000 ~SIZE~0)} {84081#true} #90#return; {84086#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:10,968 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:02:10,969 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:02:10,980 INFO L290 TraceCheckUtils]: 0: Hoare triple {84081#true} ~cond := #in~cond; {84081#true} is VALID [2022-04-28 04:02:10,980 INFO L290 TraceCheckUtils]: 1: Hoare triple {84081#true} assume !(0 == ~cond); {84081#true} is VALID [2022-04-28 04:02:10,980 INFO L290 TraceCheckUtils]: 2: Hoare triple {84081#true} assume true; {84081#true} is VALID [2022-04-28 04:02:10,980 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {84081#true} {84086#(<= 200000 ~SIZE~0)} #86#return; {84086#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:10,981 INFO L272 TraceCheckUtils]: 0: Hoare triple {84081#true} call ULTIMATE.init(); {84094#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:02:10,981 INFO L290 TraceCheckUtils]: 1: Hoare triple {84094#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {84086#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:10,982 INFO L290 TraceCheckUtils]: 2: Hoare triple {84086#(<= 200000 ~SIZE~0)} assume true; {84086#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:10,982 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {84086#(<= 200000 ~SIZE~0)} {84081#true} #90#return; {84086#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:10,982 INFO L272 TraceCheckUtils]: 4: Hoare triple {84086#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {84086#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:10,983 INFO L290 TraceCheckUtils]: 5: Hoare triple {84086#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {84086#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:10,983 INFO L272 TraceCheckUtils]: 6: Hoare triple {84086#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {84081#true} is VALID [2022-04-28 04:02:10,983 INFO L290 TraceCheckUtils]: 7: Hoare triple {84081#true} ~cond := #in~cond; {84081#true} is VALID [2022-04-28 04:02:10,983 INFO L290 TraceCheckUtils]: 8: Hoare triple {84081#true} assume !(0 == ~cond); {84081#true} is VALID [2022-04-28 04:02:10,983 INFO L290 TraceCheckUtils]: 9: Hoare triple {84081#true} assume true; {84081#true} is VALID [2022-04-28 04:02:10,983 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {84081#true} {84086#(<= 200000 ~SIZE~0)} #86#return; {84086#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:10,984 INFO L290 TraceCheckUtils]: 11: Hoare triple {84086#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {84086#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:10,984 INFO L290 TraceCheckUtils]: 12: Hoare triple {84086#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {84091#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:02:10,985 INFO L290 TraceCheckUtils]: 13: Hoare triple {84091#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [264] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~st~0_521 v_main_~st~0_520)) (.cse0 (<= v_~last~0_414 v_main_~c~0_978)) (.cse2 (= v_main_~c~0_978 v_main_~c~0_977)) (.cse3 (= |v_main_#t~post5_542| |v_main_#t~post5_540|))) (or (and (< v_main_~c~0_978 v_main_~c~0_977) (= v_main_~st~0_520 0) (< v_main_~c~0_977 (+ v_~SIZE~0_373 1)) .cse0) (and .cse1 (= v_~last~0_414 v_~last~0_414) .cse2 .cse3 (= v_~SIZE~0_373 v_~SIZE~0_373)) (and .cse1 (or (not .cse0) (not (< v_main_~c~0_978 v_~SIZE~0_373))) .cse2 .cse3))) InVars {~SIZE~0=v_~SIZE~0_373, main_~c~0=v_main_~c~0_978, main_#t~post5=|v_main_#t~post5_542|, main_~st~0=v_main_~st~0_521, ~last~0=v_~last~0_414} OutVars{~SIZE~0=v_~SIZE~0_373, main_#t~post5=|v_main_#t~post5_540|, main_~c~0=v_main_~c~0_977, main_~st~0=v_main_~st~0_520, ~last~0=v_~last~0_414} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {84092#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:02:10,985 INFO L290 TraceCheckUtils]: 14: Hoare triple {84092#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [265] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {84092#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:02:10,986 INFO L290 TraceCheckUtils]: 15: Hoare triple {84092#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [266] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_545| |v_main_#t~post5_541|)) (.cse1 (= v_main_~c~0_980 v_main_~c~0_979))) (or (and (< v_main_~c~0_979 (+ v_~last~0_415 1)) (< v_main_~c~0_980 v_main_~c~0_979) (< v_main_~c~0_979 (+ v_~SIZE~0_374 1))) (and (or (not (< v_main_~c~0_980 v_~last~0_415)) (not (< v_main_~c~0_980 v_~SIZE~0_374))) .cse0 .cse1) (and (= v_~last~0_415 v_~last~0_415) .cse0 .cse1 (= v_~SIZE~0_374 v_~SIZE~0_374)))) InVars {~SIZE~0=v_~SIZE~0_374, main_~c~0=v_main_~c~0_980, main_#t~post5=|v_main_#t~post5_545|, ~last~0=v_~last~0_415} OutVars{~SIZE~0=v_~SIZE~0_374, main_#t~post5=|v_main_#t~post5_541|, main_~c~0=v_main_~c~0_979, ~last~0=v_~last~0_415} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {84092#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:02:10,986 INFO L290 TraceCheckUtils]: 16: Hoare triple {84092#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [263] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {84093#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:02:10,986 INFO L290 TraceCheckUtils]: 17: Hoare triple {84093#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {84082#false} is VALID [2022-04-28 04:02:10,987 INFO L290 TraceCheckUtils]: 18: Hoare triple {84082#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {84082#false} is VALID [2022-04-28 04:02:10,987 INFO L290 TraceCheckUtils]: 19: Hoare triple {84082#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {84082#false} is VALID [2022-04-28 04:02:10,987 INFO L290 TraceCheckUtils]: 20: Hoare triple {84082#false} assume !(~d~0 == ~SIZE~0); {84082#false} is VALID [2022-04-28 04:02:10,987 INFO L272 TraceCheckUtils]: 21: Hoare triple {84082#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {84082#false} is VALID [2022-04-28 04:02:10,987 INFO L290 TraceCheckUtils]: 22: Hoare triple {84082#false} ~cond := #in~cond; {84082#false} is VALID [2022-04-28 04:02:10,987 INFO L290 TraceCheckUtils]: 23: Hoare triple {84082#false} assume 0 == ~cond; {84082#false} is VALID [2022-04-28 04:02:10,987 INFO L290 TraceCheckUtils]: 24: Hoare triple {84082#false} assume !false; {84082#false} is VALID [2022-04-28 04:02:10,987 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:02:10,987 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:02:10,987 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1528540872] [2022-04-28 04:02:10,987 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1528540872] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:02:10,987 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1571510326] [2022-04-28 04:02:10,988 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:02:10,988 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:02:10,988 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:02:10,989 INFO L229 MonitoredProcess]: Starting monitored process 41 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:02:10,989 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (41)] Waiting until timeout for monitored process [2022-04-28 04:02:11,019 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:02:11,019 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:02:11,026 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:02:11,026 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:02:11,258 INFO L272 TraceCheckUtils]: 0: Hoare triple {84081#true} call ULTIMATE.init(); {84081#true} is VALID [2022-04-28 04:02:11,259 INFO L290 TraceCheckUtils]: 1: Hoare triple {84081#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {84086#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:11,259 INFO L290 TraceCheckUtils]: 2: Hoare triple {84086#(<= 200000 ~SIZE~0)} assume true; {84086#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:11,259 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {84086#(<= 200000 ~SIZE~0)} {84081#true} #90#return; {84086#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:11,260 INFO L272 TraceCheckUtils]: 4: Hoare triple {84086#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {84086#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:11,260 INFO L290 TraceCheckUtils]: 5: Hoare triple {84086#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {84086#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:11,260 INFO L272 TraceCheckUtils]: 6: Hoare triple {84086#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {84086#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:11,261 INFO L290 TraceCheckUtils]: 7: Hoare triple {84086#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {84086#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:11,261 INFO L290 TraceCheckUtils]: 8: Hoare triple {84086#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {84086#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:11,261 INFO L290 TraceCheckUtils]: 9: Hoare triple {84086#(<= 200000 ~SIZE~0)} assume true; {84086#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:11,261 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {84086#(<= 200000 ~SIZE~0)} {84086#(<= 200000 ~SIZE~0)} #86#return; {84086#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:11,262 INFO L290 TraceCheckUtils]: 11: Hoare triple {84086#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {84086#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:11,262 INFO L290 TraceCheckUtils]: 12: Hoare triple {84086#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {84134#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:02:11,263 INFO L290 TraceCheckUtils]: 13: Hoare triple {84134#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [264] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~st~0_521 v_main_~st~0_520)) (.cse0 (<= v_~last~0_414 v_main_~c~0_978)) (.cse2 (= v_main_~c~0_978 v_main_~c~0_977)) (.cse3 (= |v_main_#t~post5_542| |v_main_#t~post5_540|))) (or (and (< v_main_~c~0_978 v_main_~c~0_977) (= v_main_~st~0_520 0) (< v_main_~c~0_977 (+ v_~SIZE~0_373 1)) .cse0) (and .cse1 (= v_~last~0_414 v_~last~0_414) .cse2 .cse3 (= v_~SIZE~0_373 v_~SIZE~0_373)) (and .cse1 (or (not .cse0) (not (< v_main_~c~0_978 v_~SIZE~0_373))) .cse2 .cse3))) InVars {~SIZE~0=v_~SIZE~0_373, main_~c~0=v_main_~c~0_978, main_#t~post5=|v_main_#t~post5_542|, main_~st~0=v_main_~st~0_521, ~last~0=v_~last~0_414} OutVars{~SIZE~0=v_~SIZE~0_373, main_#t~post5=|v_main_#t~post5_540|, main_~c~0=v_main_~c~0_977, main_~st~0=v_main_~st~0_520, ~last~0=v_~last~0_414} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {84138#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:02:11,263 INFO L290 TraceCheckUtils]: 14: Hoare triple {84138#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [265] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {84138#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:02:11,264 INFO L290 TraceCheckUtils]: 15: Hoare triple {84138#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [266] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_545| |v_main_#t~post5_541|)) (.cse1 (= v_main_~c~0_980 v_main_~c~0_979))) (or (and (< v_main_~c~0_979 (+ v_~last~0_415 1)) (< v_main_~c~0_980 v_main_~c~0_979) (< v_main_~c~0_979 (+ v_~SIZE~0_374 1))) (and (or (not (< v_main_~c~0_980 v_~last~0_415)) (not (< v_main_~c~0_980 v_~SIZE~0_374))) .cse0 .cse1) (and (= v_~last~0_415 v_~last~0_415) .cse0 .cse1 (= v_~SIZE~0_374 v_~SIZE~0_374)))) InVars {~SIZE~0=v_~SIZE~0_374, main_~c~0=v_main_~c~0_980, main_#t~post5=|v_main_#t~post5_545|, ~last~0=v_~last~0_415} OutVars{~SIZE~0=v_~SIZE~0_374, main_#t~post5=|v_main_#t~post5_541|, main_~c~0=v_main_~c~0_979, ~last~0=v_~last~0_415} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {84138#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:02:11,264 INFO L290 TraceCheckUtils]: 16: Hoare triple {84138#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [263] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {84148#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:02:11,265 INFO L290 TraceCheckUtils]: 17: Hoare triple {84148#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {84082#false} is VALID [2022-04-28 04:02:11,265 INFO L290 TraceCheckUtils]: 18: Hoare triple {84082#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {84082#false} is VALID [2022-04-28 04:02:11,265 INFO L290 TraceCheckUtils]: 19: Hoare triple {84082#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {84082#false} is VALID [2022-04-28 04:02:11,265 INFO L290 TraceCheckUtils]: 20: Hoare triple {84082#false} assume !(~d~0 == ~SIZE~0); {84082#false} is VALID [2022-04-28 04:02:11,265 INFO L272 TraceCheckUtils]: 21: Hoare triple {84082#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {84082#false} is VALID [2022-04-28 04:02:11,265 INFO L290 TraceCheckUtils]: 22: Hoare triple {84082#false} ~cond := #in~cond; {84082#false} is VALID [2022-04-28 04:02:11,265 INFO L290 TraceCheckUtils]: 23: Hoare triple {84082#false} assume 0 == ~cond; {84082#false} is VALID [2022-04-28 04:02:11,265 INFO L290 TraceCheckUtils]: 24: Hoare triple {84082#false} assume !false; {84082#false} is VALID [2022-04-28 04:02:11,265 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:02:11,265 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:02:11,563 INFO L290 TraceCheckUtils]: 24: Hoare triple {84082#false} assume !false; {84082#false} is VALID [2022-04-28 04:02:11,563 INFO L290 TraceCheckUtils]: 23: Hoare triple {84082#false} assume 0 == ~cond; {84082#false} is VALID [2022-04-28 04:02:11,563 INFO L290 TraceCheckUtils]: 22: Hoare triple {84082#false} ~cond := #in~cond; {84082#false} is VALID [2022-04-28 04:02:11,563 INFO L272 TraceCheckUtils]: 21: Hoare triple {84082#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {84082#false} is VALID [2022-04-28 04:02:11,563 INFO L290 TraceCheckUtils]: 20: Hoare triple {84082#false} assume !(~d~0 == ~SIZE~0); {84082#false} is VALID [2022-04-28 04:02:11,563 INFO L290 TraceCheckUtils]: 19: Hoare triple {84082#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {84082#false} is VALID [2022-04-28 04:02:11,563 INFO L290 TraceCheckUtils]: 18: Hoare triple {84082#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {84082#false} is VALID [2022-04-28 04:02:11,564 INFO L290 TraceCheckUtils]: 17: Hoare triple {84194#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {84082#false} is VALID [2022-04-28 04:02:11,564 INFO L290 TraceCheckUtils]: 16: Hoare triple {84198#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [263] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {84194#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:02:11,565 INFO L290 TraceCheckUtils]: 15: Hoare triple {84198#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [266] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_545| |v_main_#t~post5_541|)) (.cse1 (= v_main_~c~0_980 v_main_~c~0_979))) (or (and (< v_main_~c~0_979 (+ v_~last~0_415 1)) (< v_main_~c~0_980 v_main_~c~0_979) (< v_main_~c~0_979 (+ v_~SIZE~0_374 1))) (and (or (not (< v_main_~c~0_980 v_~last~0_415)) (not (< v_main_~c~0_980 v_~SIZE~0_374))) .cse0 .cse1) (and (= v_~last~0_415 v_~last~0_415) .cse0 .cse1 (= v_~SIZE~0_374 v_~SIZE~0_374)))) InVars {~SIZE~0=v_~SIZE~0_374, main_~c~0=v_main_~c~0_980, main_#t~post5=|v_main_#t~post5_545|, ~last~0=v_~last~0_415} OutVars{~SIZE~0=v_~SIZE~0_374, main_#t~post5=|v_main_#t~post5_541|, main_~c~0=v_main_~c~0_979, ~last~0=v_~last~0_415} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {84198#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:02:11,565 INFO L290 TraceCheckUtils]: 14: Hoare triple {84198#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [265] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {84198#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:02:11,566 INFO L290 TraceCheckUtils]: 13: Hoare triple {84208#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [264] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~st~0_521 v_main_~st~0_520)) (.cse0 (<= v_~last~0_414 v_main_~c~0_978)) (.cse2 (= v_main_~c~0_978 v_main_~c~0_977)) (.cse3 (= |v_main_#t~post5_542| |v_main_#t~post5_540|))) (or (and (< v_main_~c~0_978 v_main_~c~0_977) (= v_main_~st~0_520 0) (< v_main_~c~0_977 (+ v_~SIZE~0_373 1)) .cse0) (and .cse1 (= v_~last~0_414 v_~last~0_414) .cse2 .cse3 (= v_~SIZE~0_373 v_~SIZE~0_373)) (and .cse1 (or (not .cse0) (not (< v_main_~c~0_978 v_~SIZE~0_373))) .cse2 .cse3))) InVars {~SIZE~0=v_~SIZE~0_373, main_~c~0=v_main_~c~0_978, main_#t~post5=|v_main_#t~post5_542|, main_~st~0=v_main_~st~0_521, ~last~0=v_~last~0_414} OutVars{~SIZE~0=v_~SIZE~0_373, main_#t~post5=|v_main_#t~post5_540|, main_~c~0=v_main_~c~0_977, main_~st~0=v_main_~st~0_520, ~last~0=v_~last~0_414} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {84198#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:02:11,566 INFO L290 TraceCheckUtils]: 12: Hoare triple {84212#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {84208#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:02:11,566 INFO L290 TraceCheckUtils]: 11: Hoare triple {84212#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {84212#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:11,567 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {84081#true} {84212#(< 1 ~SIZE~0)} #86#return; {84212#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:11,567 INFO L290 TraceCheckUtils]: 9: Hoare triple {84081#true} assume true; {84081#true} is VALID [2022-04-28 04:02:11,567 INFO L290 TraceCheckUtils]: 8: Hoare triple {84081#true} assume !(0 == ~cond); {84081#true} is VALID [2022-04-28 04:02:11,567 INFO L290 TraceCheckUtils]: 7: Hoare triple {84081#true} ~cond := #in~cond; {84081#true} is VALID [2022-04-28 04:02:11,567 INFO L272 TraceCheckUtils]: 6: Hoare triple {84212#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {84081#true} is VALID [2022-04-28 04:02:11,567 INFO L290 TraceCheckUtils]: 5: Hoare triple {84212#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {84212#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:11,567 INFO L272 TraceCheckUtils]: 4: Hoare triple {84212#(< 1 ~SIZE~0)} call #t~ret7 := main(); {84212#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:11,568 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {84212#(< 1 ~SIZE~0)} {84081#true} #90#return; {84212#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:11,568 INFO L290 TraceCheckUtils]: 2: Hoare triple {84212#(< 1 ~SIZE~0)} assume true; {84212#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:11,568 INFO L290 TraceCheckUtils]: 1: Hoare triple {84081#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {84212#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:11,569 INFO L272 TraceCheckUtils]: 0: Hoare triple {84081#true} call ULTIMATE.init(); {84081#true} is VALID [2022-04-28 04:02:11,569 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:02:11,569 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1571510326] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:02:11,569 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:02:11,569 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:02:12,156 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:02:12,156 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [236725805] [2022-04-28 04:02:12,156 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [236725805] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:02:12,156 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:02:12,156 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [19] imperfect sequences [] total 19 [2022-04-28 04:02:12,156 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1432428884] [2022-04-28 04:02:12,157 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:02:12,157 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 2.4210526315789473) internal successors, (46), 18 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 52 [2022-04-28 04:02:12,157 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:02:12,157 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 19 states, 19 states have (on average 2.4210526315789473) internal successors, (46), 18 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:02:12,189 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:02:12,189 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2022-04-28 04:02:12,190 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:02:12,190 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-04-28 04:02:12,190 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=152, Invalid=604, Unknown=0, NotChecked=0, Total=756 [2022-04-28 04:02:12,190 INFO L87 Difference]: Start difference. First operand 307 states and 369 transitions. Second operand has 19 states, 19 states have (on average 2.4210526315789473) internal successors, (46), 18 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:02:15,668 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:02:15,668 INFO L93 Difference]: Finished difference Result 625 states and 742 transitions. [2022-04-28 04:02:15,668 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 19 states. [2022-04-28 04:02:15,669 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 2.4210526315789473) internal successors, (46), 18 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 52 [2022-04-28 04:02:15,669 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:02:15,669 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 2.4210526315789473) internal successors, (46), 18 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:02:15,669 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 101 transitions. [2022-04-28 04:02:15,669 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 2.4210526315789473) internal successors, (46), 18 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:02:15,670 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 101 transitions. [2022-04-28 04:02:15,670 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 19 states and 101 transitions. [2022-04-28 04:02:15,733 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 101 edges. 101 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:02:15,740 INFO L225 Difference]: With dead ends: 625 [2022-04-28 04:02:15,740 INFO L226 Difference]: Without dead ends: 391 [2022-04-28 04:02:15,740 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 100 GetRequests, 54 SyntacticMatches, 17 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 626 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=181, Invalid=749, Unknown=0, NotChecked=0, Total=930 [2022-04-28 04:02:15,741 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 52 mSDsluCounter, 21 mSDsCounter, 0 mSdLazyCounter, 1050 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 53 SdHoareTripleChecker+Valid, 45 SdHoareTripleChecker+Invalid, 1063 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 1050 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-28 04:02:15,741 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [53 Valid, 45 Invalid, 1063 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 1050 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-28 04:02:15,741 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 391 states. [2022-04-28 04:02:17,197 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 391 to 316. [2022-04-28 04:02:17,197 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:02:17,198 INFO L82 GeneralOperation]: Start isEquivalent. First operand 391 states. Second operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:02:17,198 INFO L74 IsIncluded]: Start isIncluded. First operand 391 states. Second operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:02:17,198 INFO L87 Difference]: Start difference. First operand 391 states. Second operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:02:17,204 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:02:17,204 INFO L93 Difference]: Finished difference Result 391 states and 457 transitions. [2022-04-28 04:02:17,204 INFO L276 IsEmpty]: Start isEmpty. Operand 391 states and 457 transitions. [2022-04-28 04:02:17,204 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:02:17,204 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:02:17,204 INFO L74 IsIncluded]: Start isIncluded. First operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 391 states. [2022-04-28 04:02:17,204 INFO L87 Difference]: Start difference. First operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 391 states. [2022-04-28 04:02:17,210 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:02:17,210 INFO L93 Difference]: Finished difference Result 391 states and 457 transitions. [2022-04-28 04:02:17,210 INFO L276 IsEmpty]: Start isEmpty. Operand 391 states and 457 transitions. [2022-04-28 04:02:17,210 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:02:17,210 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:02:17,210 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:02:17,210 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:02:17,210 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:02:17,215 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 316 states to 316 states and 378 transitions. [2022-04-28 04:02:17,215 INFO L78 Accepts]: Start accepts. Automaton has 316 states and 378 transitions. Word has length 52 [2022-04-28 04:02:17,215 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:02:17,215 INFO L495 AbstractCegarLoop]: Abstraction has 316 states and 378 transitions. [2022-04-28 04:02:17,215 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 19 states have (on average 2.4210526315789473) internal successors, (46), 18 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:02:17,215 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 316 states and 378 transitions. [2022-04-28 04:02:18,312 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 378 edges. 378 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:02:18,312 INFO L276 IsEmpty]: Start isEmpty. Operand 316 states and 378 transitions. [2022-04-28 04:02:18,312 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2022-04-28 04:02:18,312 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:02:18,312 INFO L195 NwaCegarLoop]: trace histogram [10, 10, 8, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:02:18,328 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (41)] Forceful destruction successful, exit code 0 [2022-04-28 04:02:18,513 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 41 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable48 [2022-04-28 04:02:18,513 INFO L420 AbstractCegarLoop]: === Iteration 50 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:02:18,513 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:02:18,513 INFO L85 PathProgramCache]: Analyzing trace with hash -164914690, now seen corresponding path program 38 times [2022-04-28 04:02:18,513 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:02:18,513 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1452165032] [2022-04-28 04:02:18,710 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:02:18,876 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:02:18,877 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:02:18,880 INFO L85 PathProgramCache]: Analyzing trace with hash -686731071, now seen corresponding path program 1 times [2022-04-28 04:02:18,880 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:02:18,880 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [152383612] [2022-04-28 04:02:18,880 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:02:18,880 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:02:18,886 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:02:18,943 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:02:18,944 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:02:18,948 INFO L290 TraceCheckUtils]: 0: Hoare triple {86949#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {86941#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:18,948 INFO L290 TraceCheckUtils]: 1: Hoare triple {86941#(<= 200000 ~SIZE~0)} assume true; {86941#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:18,948 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {86941#(<= 200000 ~SIZE~0)} {86936#true} #90#return; {86941#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:18,949 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:02:18,949 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:02:18,950 INFO L290 TraceCheckUtils]: 0: Hoare triple {86936#true} ~cond := #in~cond; {86936#true} is VALID [2022-04-28 04:02:18,950 INFO L290 TraceCheckUtils]: 1: Hoare triple {86936#true} assume !(0 == ~cond); {86936#true} is VALID [2022-04-28 04:02:18,951 INFO L290 TraceCheckUtils]: 2: Hoare triple {86936#true} assume true; {86936#true} is VALID [2022-04-28 04:02:18,951 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {86936#true} {86941#(<= 200000 ~SIZE~0)} #86#return; {86941#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:18,951 INFO L272 TraceCheckUtils]: 0: Hoare triple {86936#true} call ULTIMATE.init(); {86949#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:02:18,952 INFO L290 TraceCheckUtils]: 1: Hoare triple {86949#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {86941#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:18,952 INFO L290 TraceCheckUtils]: 2: Hoare triple {86941#(<= 200000 ~SIZE~0)} assume true; {86941#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:18,953 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {86941#(<= 200000 ~SIZE~0)} {86936#true} #90#return; {86941#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:18,953 INFO L272 TraceCheckUtils]: 4: Hoare triple {86941#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {86941#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:18,953 INFO L290 TraceCheckUtils]: 5: Hoare triple {86941#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {86941#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:18,953 INFO L272 TraceCheckUtils]: 6: Hoare triple {86941#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {86936#true} is VALID [2022-04-28 04:02:18,953 INFO L290 TraceCheckUtils]: 7: Hoare triple {86936#true} ~cond := #in~cond; {86936#true} is VALID [2022-04-28 04:02:18,953 INFO L290 TraceCheckUtils]: 8: Hoare triple {86936#true} assume !(0 == ~cond); {86936#true} is VALID [2022-04-28 04:02:18,953 INFO L290 TraceCheckUtils]: 9: Hoare triple {86936#true} assume true; {86936#true} is VALID [2022-04-28 04:02:18,954 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {86936#true} {86941#(<= 200000 ~SIZE~0)} #86#return; {86941#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:18,954 INFO L290 TraceCheckUtils]: 11: Hoare triple {86941#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {86941#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:18,954 INFO L290 TraceCheckUtils]: 12: Hoare triple {86941#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {86946#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:02:18,955 INFO L290 TraceCheckUtils]: 13: Hoare triple {86946#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [268] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_424 v_main_~c~0_1005)) (.cse1 (= v_main_~c~0_1005 v_main_~c~0_1004)) (.cse2 (= |v_main_#t~post5_555| |v_main_#t~post5_553|))) (or (and (= v_main_~st~0_538 0) .cse0 (< v_main_~c~0_1005 v_main_~c~0_1004) (< v_main_~c~0_1004 (+ v_~SIZE~0_382 1))) (and (or (not .cse0) (not (< v_main_~c~0_1005 v_~SIZE~0_382))) .cse1 (= v_main_~st~0_538 v_main_~st~0_539) .cse2) (and .cse1 (= v_~last~0_424 v_~last~0_424) (= v_main_~st~0_539 v_main_~st~0_538) (= v_~SIZE~0_382 v_~SIZE~0_382) .cse2))) InVars {~SIZE~0=v_~SIZE~0_382, main_~c~0=v_main_~c~0_1005, main_#t~post5=|v_main_#t~post5_555|, main_~st~0=v_main_~st~0_539, ~last~0=v_~last~0_424} OutVars{~SIZE~0=v_~SIZE~0_382, main_#t~post5=|v_main_#t~post5_553|, main_~c~0=v_main_~c~0_1004, main_~st~0=v_main_~st~0_538, ~last~0=v_~last~0_424} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {86947#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:02:18,955 INFO L290 TraceCheckUtils]: 14: Hoare triple {86947#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [269] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {86947#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:02:18,956 INFO L290 TraceCheckUtils]: 15: Hoare triple {86947#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [270] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_558| |v_main_#t~post5_554|)) (.cse1 (= v_main_~c~0_1007 v_main_~c~0_1006))) (or (and .cse0 .cse1 (or (not (< v_main_~c~0_1007 v_~SIZE~0_383)) (not (< v_main_~c~0_1007 v_~last~0_425)))) (and (< v_main_~c~0_1007 v_main_~c~0_1006) (< v_main_~c~0_1006 (+ v_~last~0_425 1)) (< v_main_~c~0_1006 (+ v_~SIZE~0_383 1))) (and (= v_~last~0_425 v_~last~0_425) .cse0 .cse1 (= v_~SIZE~0_383 v_~SIZE~0_383)))) InVars {~SIZE~0=v_~SIZE~0_383, main_~c~0=v_main_~c~0_1007, main_#t~post5=|v_main_#t~post5_558|, ~last~0=v_~last~0_425} OutVars{~SIZE~0=v_~SIZE~0_383, main_#t~post5=|v_main_#t~post5_554|, main_~c~0=v_main_~c~0_1006, ~last~0=v_~last~0_425} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {86947#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:02:18,956 INFO L290 TraceCheckUtils]: 16: Hoare triple {86947#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [267] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {86948#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:02:18,957 INFO L290 TraceCheckUtils]: 17: Hoare triple {86948#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {86937#false} is VALID [2022-04-28 04:02:18,957 INFO L290 TraceCheckUtils]: 18: Hoare triple {86937#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {86937#false} is VALID [2022-04-28 04:02:18,957 INFO L290 TraceCheckUtils]: 19: Hoare triple {86937#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {86937#false} is VALID [2022-04-28 04:02:18,957 INFO L290 TraceCheckUtils]: 20: Hoare triple {86937#false} assume !(~d~0 == ~SIZE~0); {86937#false} is VALID [2022-04-28 04:02:18,957 INFO L272 TraceCheckUtils]: 21: Hoare triple {86937#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {86937#false} is VALID [2022-04-28 04:02:18,957 INFO L290 TraceCheckUtils]: 22: Hoare triple {86937#false} ~cond := #in~cond; {86937#false} is VALID [2022-04-28 04:02:18,957 INFO L290 TraceCheckUtils]: 23: Hoare triple {86937#false} assume 0 == ~cond; {86937#false} is VALID [2022-04-28 04:02:18,957 INFO L290 TraceCheckUtils]: 24: Hoare triple {86937#false} assume !false; {86937#false} is VALID [2022-04-28 04:02:18,957 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:02:18,957 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:02:18,958 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [152383612] [2022-04-28 04:02:18,958 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [152383612] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:02:18,958 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1968917865] [2022-04-28 04:02:18,958 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:02:18,958 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:02:18,958 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:02:18,959 INFO L229 MonitoredProcess]: Starting monitored process 42 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:02:18,960 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (42)] Waiting until timeout for monitored process [2022-04-28 04:02:18,988 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:02:18,988 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:02:18,994 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:02:18,994 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:02:19,246 INFO L272 TraceCheckUtils]: 0: Hoare triple {86936#true} call ULTIMATE.init(); {86936#true} is VALID [2022-04-28 04:02:19,247 INFO L290 TraceCheckUtils]: 1: Hoare triple {86936#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {86941#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:19,247 INFO L290 TraceCheckUtils]: 2: Hoare triple {86941#(<= 200000 ~SIZE~0)} assume true; {86941#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:19,247 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {86941#(<= 200000 ~SIZE~0)} {86936#true} #90#return; {86941#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:19,247 INFO L272 TraceCheckUtils]: 4: Hoare triple {86941#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {86941#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:19,248 INFO L290 TraceCheckUtils]: 5: Hoare triple {86941#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {86941#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:19,248 INFO L272 TraceCheckUtils]: 6: Hoare triple {86941#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {86941#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:19,248 INFO L290 TraceCheckUtils]: 7: Hoare triple {86941#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {86941#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:19,249 INFO L290 TraceCheckUtils]: 8: Hoare triple {86941#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {86941#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:19,249 INFO L290 TraceCheckUtils]: 9: Hoare triple {86941#(<= 200000 ~SIZE~0)} assume true; {86941#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:19,249 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {86941#(<= 200000 ~SIZE~0)} {86941#(<= 200000 ~SIZE~0)} #86#return; {86941#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:19,250 INFO L290 TraceCheckUtils]: 11: Hoare triple {86941#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {86941#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:19,250 INFO L290 TraceCheckUtils]: 12: Hoare triple {86941#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {86989#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:02:19,251 INFO L290 TraceCheckUtils]: 13: Hoare triple {86989#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [268] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_424 v_main_~c~0_1005)) (.cse1 (= v_main_~c~0_1005 v_main_~c~0_1004)) (.cse2 (= |v_main_#t~post5_555| |v_main_#t~post5_553|))) (or (and (= v_main_~st~0_538 0) .cse0 (< v_main_~c~0_1005 v_main_~c~0_1004) (< v_main_~c~0_1004 (+ v_~SIZE~0_382 1))) (and (or (not .cse0) (not (< v_main_~c~0_1005 v_~SIZE~0_382))) .cse1 (= v_main_~st~0_538 v_main_~st~0_539) .cse2) (and .cse1 (= v_~last~0_424 v_~last~0_424) (= v_main_~st~0_539 v_main_~st~0_538) (= v_~SIZE~0_382 v_~SIZE~0_382) .cse2))) InVars {~SIZE~0=v_~SIZE~0_382, main_~c~0=v_main_~c~0_1005, main_#t~post5=|v_main_#t~post5_555|, main_~st~0=v_main_~st~0_539, ~last~0=v_~last~0_424} OutVars{~SIZE~0=v_~SIZE~0_382, main_#t~post5=|v_main_#t~post5_553|, main_~c~0=v_main_~c~0_1004, main_~st~0=v_main_~st~0_538, ~last~0=v_~last~0_424} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {86993#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:02:19,251 INFO L290 TraceCheckUtils]: 14: Hoare triple {86993#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [269] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {86993#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:02:19,252 INFO L290 TraceCheckUtils]: 15: Hoare triple {86993#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [270] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_558| |v_main_#t~post5_554|)) (.cse1 (= v_main_~c~0_1007 v_main_~c~0_1006))) (or (and .cse0 .cse1 (or (not (< v_main_~c~0_1007 v_~SIZE~0_383)) (not (< v_main_~c~0_1007 v_~last~0_425)))) (and (< v_main_~c~0_1007 v_main_~c~0_1006) (< v_main_~c~0_1006 (+ v_~last~0_425 1)) (< v_main_~c~0_1006 (+ v_~SIZE~0_383 1))) (and (= v_~last~0_425 v_~last~0_425) .cse0 .cse1 (= v_~SIZE~0_383 v_~SIZE~0_383)))) InVars {~SIZE~0=v_~SIZE~0_383, main_~c~0=v_main_~c~0_1007, main_#t~post5=|v_main_#t~post5_558|, ~last~0=v_~last~0_425} OutVars{~SIZE~0=v_~SIZE~0_383, main_#t~post5=|v_main_#t~post5_554|, main_~c~0=v_main_~c~0_1006, ~last~0=v_~last~0_425} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {86993#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:02:19,252 INFO L290 TraceCheckUtils]: 16: Hoare triple {86993#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [267] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {87003#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:02:19,253 INFO L290 TraceCheckUtils]: 17: Hoare triple {87003#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {86937#false} is VALID [2022-04-28 04:02:19,253 INFO L290 TraceCheckUtils]: 18: Hoare triple {86937#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {86937#false} is VALID [2022-04-28 04:02:19,253 INFO L290 TraceCheckUtils]: 19: Hoare triple {86937#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {86937#false} is VALID [2022-04-28 04:02:19,253 INFO L290 TraceCheckUtils]: 20: Hoare triple {86937#false} assume !(~d~0 == ~SIZE~0); {86937#false} is VALID [2022-04-28 04:02:19,253 INFO L272 TraceCheckUtils]: 21: Hoare triple {86937#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {86937#false} is VALID [2022-04-28 04:02:19,253 INFO L290 TraceCheckUtils]: 22: Hoare triple {86937#false} ~cond := #in~cond; {86937#false} is VALID [2022-04-28 04:02:19,253 INFO L290 TraceCheckUtils]: 23: Hoare triple {86937#false} assume 0 == ~cond; {86937#false} is VALID [2022-04-28 04:02:19,253 INFO L290 TraceCheckUtils]: 24: Hoare triple {86937#false} assume !false; {86937#false} is VALID [2022-04-28 04:02:19,253 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:02:19,253 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:02:19,546 INFO L290 TraceCheckUtils]: 24: Hoare triple {86937#false} assume !false; {86937#false} is VALID [2022-04-28 04:02:19,547 INFO L290 TraceCheckUtils]: 23: Hoare triple {86937#false} assume 0 == ~cond; {86937#false} is VALID [2022-04-28 04:02:19,547 INFO L290 TraceCheckUtils]: 22: Hoare triple {86937#false} ~cond := #in~cond; {86937#false} is VALID [2022-04-28 04:02:19,547 INFO L272 TraceCheckUtils]: 21: Hoare triple {86937#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {86937#false} is VALID [2022-04-28 04:02:19,547 INFO L290 TraceCheckUtils]: 20: Hoare triple {86937#false} assume !(~d~0 == ~SIZE~0); {86937#false} is VALID [2022-04-28 04:02:19,547 INFO L290 TraceCheckUtils]: 19: Hoare triple {86937#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {86937#false} is VALID [2022-04-28 04:02:19,547 INFO L290 TraceCheckUtils]: 18: Hoare triple {86937#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {86937#false} is VALID [2022-04-28 04:02:19,547 INFO L290 TraceCheckUtils]: 17: Hoare triple {87049#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {86937#false} is VALID [2022-04-28 04:02:19,548 INFO L290 TraceCheckUtils]: 16: Hoare triple {87053#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [267] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {87049#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:02:19,548 INFO L290 TraceCheckUtils]: 15: Hoare triple {87053#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [270] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_558| |v_main_#t~post5_554|)) (.cse1 (= v_main_~c~0_1007 v_main_~c~0_1006))) (or (and .cse0 .cse1 (or (not (< v_main_~c~0_1007 v_~SIZE~0_383)) (not (< v_main_~c~0_1007 v_~last~0_425)))) (and (< v_main_~c~0_1007 v_main_~c~0_1006) (< v_main_~c~0_1006 (+ v_~last~0_425 1)) (< v_main_~c~0_1006 (+ v_~SIZE~0_383 1))) (and (= v_~last~0_425 v_~last~0_425) .cse0 .cse1 (= v_~SIZE~0_383 v_~SIZE~0_383)))) InVars {~SIZE~0=v_~SIZE~0_383, main_~c~0=v_main_~c~0_1007, main_#t~post5=|v_main_#t~post5_558|, ~last~0=v_~last~0_425} OutVars{~SIZE~0=v_~SIZE~0_383, main_#t~post5=|v_main_#t~post5_554|, main_~c~0=v_main_~c~0_1006, ~last~0=v_~last~0_425} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {87053#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:02:19,549 INFO L290 TraceCheckUtils]: 14: Hoare triple {87053#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [269] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {87053#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:02:19,549 INFO L290 TraceCheckUtils]: 13: Hoare triple {87063#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [268] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_424 v_main_~c~0_1005)) (.cse1 (= v_main_~c~0_1005 v_main_~c~0_1004)) (.cse2 (= |v_main_#t~post5_555| |v_main_#t~post5_553|))) (or (and (= v_main_~st~0_538 0) .cse0 (< v_main_~c~0_1005 v_main_~c~0_1004) (< v_main_~c~0_1004 (+ v_~SIZE~0_382 1))) (and (or (not .cse0) (not (< v_main_~c~0_1005 v_~SIZE~0_382))) .cse1 (= v_main_~st~0_538 v_main_~st~0_539) .cse2) (and .cse1 (= v_~last~0_424 v_~last~0_424) (= v_main_~st~0_539 v_main_~st~0_538) (= v_~SIZE~0_382 v_~SIZE~0_382) .cse2))) InVars {~SIZE~0=v_~SIZE~0_382, main_~c~0=v_main_~c~0_1005, main_#t~post5=|v_main_#t~post5_555|, main_~st~0=v_main_~st~0_539, ~last~0=v_~last~0_424} OutVars{~SIZE~0=v_~SIZE~0_382, main_#t~post5=|v_main_#t~post5_553|, main_~c~0=v_main_~c~0_1004, main_~st~0=v_main_~st~0_538, ~last~0=v_~last~0_424} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {87053#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:02:19,550 INFO L290 TraceCheckUtils]: 12: Hoare triple {87067#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {87063#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:02:19,550 INFO L290 TraceCheckUtils]: 11: Hoare triple {87067#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {87067#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:19,550 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {86936#true} {87067#(< 1 ~SIZE~0)} #86#return; {87067#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:19,550 INFO L290 TraceCheckUtils]: 9: Hoare triple {86936#true} assume true; {86936#true} is VALID [2022-04-28 04:02:19,550 INFO L290 TraceCheckUtils]: 8: Hoare triple {86936#true} assume !(0 == ~cond); {86936#true} is VALID [2022-04-28 04:02:19,550 INFO L290 TraceCheckUtils]: 7: Hoare triple {86936#true} ~cond := #in~cond; {86936#true} is VALID [2022-04-28 04:02:19,551 INFO L272 TraceCheckUtils]: 6: Hoare triple {87067#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {86936#true} is VALID [2022-04-28 04:02:19,551 INFO L290 TraceCheckUtils]: 5: Hoare triple {87067#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {87067#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:19,551 INFO L272 TraceCheckUtils]: 4: Hoare triple {87067#(< 1 ~SIZE~0)} call #t~ret7 := main(); {87067#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:19,551 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {87067#(< 1 ~SIZE~0)} {86936#true} #90#return; {87067#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:19,552 INFO L290 TraceCheckUtils]: 2: Hoare triple {87067#(< 1 ~SIZE~0)} assume true; {87067#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:19,552 INFO L290 TraceCheckUtils]: 1: Hoare triple {86936#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {87067#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:19,552 INFO L272 TraceCheckUtils]: 0: Hoare triple {86936#true} call ULTIMATE.init(); {86936#true} is VALID [2022-04-28 04:02:19,552 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:02:19,552 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1968917865] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:02:19,552 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:02:19,553 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:02:20,140 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:02:20,140 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1452165032] [2022-04-28 04:02:20,140 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1452165032] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:02:20,140 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:02:20,140 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [20] imperfect sequences [] total 20 [2022-04-28 04:02:20,140 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2125120521] [2022-04-28 04:02:20,140 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:02:20,141 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 20 states have (on average 2.3) internal successors, (46), 19 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 52 [2022-04-28 04:02:20,141 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:02:20,141 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 20 states, 20 states have (on average 2.3) internal successors, (46), 19 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:02:20,173 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:02:20,174 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 20 states [2022-04-28 04:02:20,174 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:02:20,174 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2022-04-28 04:02:20,174 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=167, Invalid=645, Unknown=0, NotChecked=0, Total=812 [2022-04-28 04:02:20,174 INFO L87 Difference]: Start difference. First operand 316 states and 378 transitions. Second operand has 20 states, 20 states have (on average 2.3) internal successors, (46), 19 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:02:23,889 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:02:23,890 INFO L93 Difference]: Finished difference Result 643 states and 760 transitions. [2022-04-28 04:02:23,890 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-04-28 04:02:23,890 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 20 states have (on average 2.3) internal successors, (46), 19 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 52 [2022-04-28 04:02:23,890 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:02:23,890 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 20 states have (on average 2.3) internal successors, (46), 19 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:02:23,891 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 102 transitions. [2022-04-28 04:02:23,891 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 20 states have (on average 2.3) internal successors, (46), 19 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:02:23,891 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 102 transitions. [2022-04-28 04:02:23,891 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 102 transitions. [2022-04-28 04:02:23,976 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 102 edges. 102 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:02:23,983 INFO L225 Difference]: With dead ends: 643 [2022-04-28 04:02:23,984 INFO L226 Difference]: Without dead ends: 400 [2022-04-28 04:02:23,984 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 100 GetRequests, 54 SyntacticMatches, 16 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 670 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=198, Invalid=794, Unknown=0, NotChecked=0, Total=992 [2022-04-28 04:02:23,984 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 52 mSDsluCounter, 23 mSDsCounter, 0 mSdLazyCounter, 1082 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 53 SdHoareTripleChecker+Valid, 47 SdHoareTripleChecker+Invalid, 1096 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 1082 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-28 04:02:23,984 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [53 Valid, 47 Invalid, 1096 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 1082 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-28 04:02:23,985 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 400 states. [2022-04-28 04:02:25,495 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 400 to 316. [2022-04-28 04:02:25,496 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:02:25,496 INFO L82 GeneralOperation]: Start isEquivalent. First operand 400 states. Second operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:02:25,496 INFO L74 IsIncluded]: Start isIncluded. First operand 400 states. Second operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:02:25,496 INFO L87 Difference]: Start difference. First operand 400 states. Second operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:02:25,502 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:02:25,502 INFO L93 Difference]: Finished difference Result 400 states and 466 transitions. [2022-04-28 04:02:25,502 INFO L276 IsEmpty]: Start isEmpty. Operand 400 states and 466 transitions. [2022-04-28 04:02:25,503 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:02:25,503 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:02:25,503 INFO L74 IsIncluded]: Start isIncluded. First operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 400 states. [2022-04-28 04:02:25,503 INFO L87 Difference]: Start difference. First operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 400 states. [2022-04-28 04:02:25,509 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:02:25,509 INFO L93 Difference]: Finished difference Result 400 states and 466 transitions. [2022-04-28 04:02:25,509 INFO L276 IsEmpty]: Start isEmpty. Operand 400 states and 466 transitions. [2022-04-28 04:02:25,509 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:02:25,509 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:02:25,509 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:02:25,509 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:02:25,509 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:02:25,516 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 316 states to 316 states and 378 transitions. [2022-04-28 04:02:25,516 INFO L78 Accepts]: Start accepts. Automaton has 316 states and 378 transitions. Word has length 52 [2022-04-28 04:02:25,516 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:02:25,517 INFO L495 AbstractCegarLoop]: Abstraction has 316 states and 378 transitions. [2022-04-28 04:02:25,517 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 20 states, 20 states have (on average 2.3) internal successors, (46), 19 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:02:25,517 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 316 states and 378 transitions. [2022-04-28 04:02:26,599 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 378 edges. 378 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:02:26,600 INFO L276 IsEmpty]: Start isEmpty. Operand 316 states and 378 transitions. [2022-04-28 04:02:26,600 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2022-04-28 04:02:26,600 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:02:26,600 INFO L195 NwaCegarLoop]: trace histogram [10, 10, 7, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:02:26,617 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (42)] Forceful destruction successful, exit code 0 [2022-04-28 04:02:26,805 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 42 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable49 [2022-04-28 04:02:26,805 INFO L420 AbstractCegarLoop]: === Iteration 51 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:02:26,805 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:02:26,805 INFO L85 PathProgramCache]: Analyzing trace with hash 109844924, now seen corresponding path program 39 times [2022-04-28 04:02:26,805 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:02:26,805 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [265912460] [2022-04-28 04:02:29,041 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:02:29,149 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:02:29,338 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:02:29,339 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:02:29,342 INFO L85 PathProgramCache]: Analyzing trace with hash 1805791681, now seen corresponding path program 1 times [2022-04-28 04:02:29,342 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:02:29,342 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1350915020] [2022-04-28 04:02:29,342 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:02:29,342 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:02:29,348 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:02:29,398 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:02:29,399 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:02:29,402 INFO L290 TraceCheckUtils]: 0: Hoare triple {89859#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {89851#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:29,403 INFO L290 TraceCheckUtils]: 1: Hoare triple {89851#(<= 200000 ~SIZE~0)} assume true; {89851#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:29,403 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {89851#(<= 200000 ~SIZE~0)} {89846#true} #90#return; {89851#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:29,403 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:02:29,403 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:02:29,405 INFO L290 TraceCheckUtils]: 0: Hoare triple {89846#true} ~cond := #in~cond; {89846#true} is VALID [2022-04-28 04:02:29,405 INFO L290 TraceCheckUtils]: 1: Hoare triple {89846#true} assume !(0 == ~cond); {89846#true} is VALID [2022-04-28 04:02:29,405 INFO L290 TraceCheckUtils]: 2: Hoare triple {89846#true} assume true; {89846#true} is VALID [2022-04-28 04:02:29,405 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {89846#true} {89851#(<= 200000 ~SIZE~0)} #86#return; {89851#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:29,406 INFO L272 TraceCheckUtils]: 0: Hoare triple {89846#true} call ULTIMATE.init(); {89859#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:02:29,406 INFO L290 TraceCheckUtils]: 1: Hoare triple {89859#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {89851#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:29,407 INFO L290 TraceCheckUtils]: 2: Hoare triple {89851#(<= 200000 ~SIZE~0)} assume true; {89851#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:29,407 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {89851#(<= 200000 ~SIZE~0)} {89846#true} #90#return; {89851#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:29,407 INFO L272 TraceCheckUtils]: 4: Hoare triple {89851#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {89851#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:29,408 INFO L290 TraceCheckUtils]: 5: Hoare triple {89851#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {89851#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:29,408 INFO L272 TraceCheckUtils]: 6: Hoare triple {89851#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {89846#true} is VALID [2022-04-28 04:02:29,408 INFO L290 TraceCheckUtils]: 7: Hoare triple {89846#true} ~cond := #in~cond; {89846#true} is VALID [2022-04-28 04:02:29,408 INFO L290 TraceCheckUtils]: 8: Hoare triple {89846#true} assume !(0 == ~cond); {89846#true} is VALID [2022-04-28 04:02:29,408 INFO L290 TraceCheckUtils]: 9: Hoare triple {89846#true} assume true; {89846#true} is VALID [2022-04-28 04:02:29,408 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {89846#true} {89851#(<= 200000 ~SIZE~0)} #86#return; {89851#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:29,409 INFO L290 TraceCheckUtils]: 11: Hoare triple {89851#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {89851#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:29,409 INFO L290 TraceCheckUtils]: 12: Hoare triple {89851#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {89856#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:02:29,410 INFO L290 TraceCheckUtils]: 13: Hoare triple {89856#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [272] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~c~0_1032 v_main_~c~0_1031)) (.cse2 (= v_main_~st~0_556 v_main_~st~0_555)) (.cse3 (= |v_main_#t~post5_568| |v_main_#t~post5_566|)) (.cse0 (<= v_~last~0_434 v_main_~c~0_1032))) (or (and (< v_main_~c~0_1031 (+ v_~SIZE~0_391 1)) (< v_main_~c~0_1032 v_main_~c~0_1031) (= v_main_~st~0_555 0) .cse0) (and .cse1 .cse2 (= v_~SIZE~0_391 v_~SIZE~0_391) (= v_~last~0_434 v_~last~0_434) .cse3) (and .cse1 .cse2 .cse3 (or (not (< v_main_~c~0_1032 v_~SIZE~0_391)) (not .cse0))))) InVars {~SIZE~0=v_~SIZE~0_391, main_~c~0=v_main_~c~0_1032, main_#t~post5=|v_main_#t~post5_568|, main_~st~0=v_main_~st~0_556, ~last~0=v_~last~0_434} OutVars{~SIZE~0=v_~SIZE~0_391, main_#t~post5=|v_main_#t~post5_566|, main_~c~0=v_main_~c~0_1031, main_~st~0=v_main_~st~0_555, ~last~0=v_~last~0_434} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {89857#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:02:29,410 INFO L290 TraceCheckUtils]: 14: Hoare triple {89857#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [273] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {89857#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:02:29,411 INFO L290 TraceCheckUtils]: 15: Hoare triple {89857#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [274] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1034 v_main_~c~0_1033))) (or (and .cse0 (or (not (< v_main_~c~0_1034 v_~last~0_435)) (not (< v_main_~c~0_1034 v_~SIZE~0_392))) (= |v_main_#t~post5_567| |v_main_#t~post5_571|)) (and .cse0 (= |v_main_#t~post5_571| |v_main_#t~post5_567|) (= v_~last~0_435 v_~last~0_435) (= v_~SIZE~0_392 v_~SIZE~0_392)) (and (< v_main_~c~0_1034 v_main_~c~0_1033) (< v_main_~c~0_1033 (+ v_~last~0_435 1)) (< v_main_~c~0_1033 (+ v_~SIZE~0_392 1))))) InVars {~SIZE~0=v_~SIZE~0_392, main_~c~0=v_main_~c~0_1034, main_#t~post5=|v_main_#t~post5_571|, ~last~0=v_~last~0_435} OutVars{~SIZE~0=v_~SIZE~0_392, main_#t~post5=|v_main_#t~post5_567|, main_~c~0=v_main_~c~0_1033, ~last~0=v_~last~0_435} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {89857#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:02:29,411 INFO L290 TraceCheckUtils]: 16: Hoare triple {89857#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [271] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {89858#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:02:29,412 INFO L290 TraceCheckUtils]: 17: Hoare triple {89858#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {89847#false} is VALID [2022-04-28 04:02:29,412 INFO L290 TraceCheckUtils]: 18: Hoare triple {89847#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {89847#false} is VALID [2022-04-28 04:02:29,412 INFO L290 TraceCheckUtils]: 19: Hoare triple {89847#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {89847#false} is VALID [2022-04-28 04:02:29,412 INFO L290 TraceCheckUtils]: 20: Hoare triple {89847#false} assume !(~d~0 == ~SIZE~0); {89847#false} is VALID [2022-04-28 04:02:29,412 INFO L272 TraceCheckUtils]: 21: Hoare triple {89847#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {89847#false} is VALID [2022-04-28 04:02:29,412 INFO L290 TraceCheckUtils]: 22: Hoare triple {89847#false} ~cond := #in~cond; {89847#false} is VALID [2022-04-28 04:02:29,412 INFO L290 TraceCheckUtils]: 23: Hoare triple {89847#false} assume 0 == ~cond; {89847#false} is VALID [2022-04-28 04:02:29,412 INFO L290 TraceCheckUtils]: 24: Hoare triple {89847#false} assume !false; {89847#false} is VALID [2022-04-28 04:02:29,412 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:02:29,412 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:02:29,412 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1350915020] [2022-04-28 04:02:29,412 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1350915020] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:02:29,413 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1215113626] [2022-04-28 04:02:29,413 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:02:29,413 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:02:29,413 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:02:29,414 INFO L229 MonitoredProcess]: Starting monitored process 43 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:02:29,415 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (43)] Waiting until timeout for monitored process [2022-04-28 04:02:29,461 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:02:29,462 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:02:29,467 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:02:29,468 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:02:29,695 INFO L272 TraceCheckUtils]: 0: Hoare triple {89846#true} call ULTIMATE.init(); {89846#true} is VALID [2022-04-28 04:02:29,696 INFO L290 TraceCheckUtils]: 1: Hoare triple {89846#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {89851#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:29,696 INFO L290 TraceCheckUtils]: 2: Hoare triple {89851#(<= 200000 ~SIZE~0)} assume true; {89851#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:29,697 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {89851#(<= 200000 ~SIZE~0)} {89846#true} #90#return; {89851#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:29,697 INFO L272 TraceCheckUtils]: 4: Hoare triple {89851#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {89851#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:29,697 INFO L290 TraceCheckUtils]: 5: Hoare triple {89851#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {89851#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:29,698 INFO L272 TraceCheckUtils]: 6: Hoare triple {89851#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {89851#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:29,698 INFO L290 TraceCheckUtils]: 7: Hoare triple {89851#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {89851#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:29,698 INFO L290 TraceCheckUtils]: 8: Hoare triple {89851#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {89851#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:29,698 INFO L290 TraceCheckUtils]: 9: Hoare triple {89851#(<= 200000 ~SIZE~0)} assume true; {89851#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:29,699 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {89851#(<= 200000 ~SIZE~0)} {89851#(<= 200000 ~SIZE~0)} #86#return; {89851#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:29,699 INFO L290 TraceCheckUtils]: 11: Hoare triple {89851#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {89851#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:29,699 INFO L290 TraceCheckUtils]: 12: Hoare triple {89851#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {89899#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:02:29,700 INFO L290 TraceCheckUtils]: 13: Hoare triple {89899#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [272] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~c~0_1032 v_main_~c~0_1031)) (.cse2 (= v_main_~st~0_556 v_main_~st~0_555)) (.cse3 (= |v_main_#t~post5_568| |v_main_#t~post5_566|)) (.cse0 (<= v_~last~0_434 v_main_~c~0_1032))) (or (and (< v_main_~c~0_1031 (+ v_~SIZE~0_391 1)) (< v_main_~c~0_1032 v_main_~c~0_1031) (= v_main_~st~0_555 0) .cse0) (and .cse1 .cse2 (= v_~SIZE~0_391 v_~SIZE~0_391) (= v_~last~0_434 v_~last~0_434) .cse3) (and .cse1 .cse2 .cse3 (or (not (< v_main_~c~0_1032 v_~SIZE~0_391)) (not .cse0))))) InVars {~SIZE~0=v_~SIZE~0_391, main_~c~0=v_main_~c~0_1032, main_#t~post5=|v_main_#t~post5_568|, main_~st~0=v_main_~st~0_556, ~last~0=v_~last~0_434} OutVars{~SIZE~0=v_~SIZE~0_391, main_#t~post5=|v_main_#t~post5_566|, main_~c~0=v_main_~c~0_1031, main_~st~0=v_main_~st~0_555, ~last~0=v_~last~0_434} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {89903#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:02:29,701 INFO L290 TraceCheckUtils]: 14: Hoare triple {89903#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [273] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {89903#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:02:29,701 INFO L290 TraceCheckUtils]: 15: Hoare triple {89903#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [274] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1034 v_main_~c~0_1033))) (or (and .cse0 (or (not (< v_main_~c~0_1034 v_~last~0_435)) (not (< v_main_~c~0_1034 v_~SIZE~0_392))) (= |v_main_#t~post5_567| |v_main_#t~post5_571|)) (and .cse0 (= |v_main_#t~post5_571| |v_main_#t~post5_567|) (= v_~last~0_435 v_~last~0_435) (= v_~SIZE~0_392 v_~SIZE~0_392)) (and (< v_main_~c~0_1034 v_main_~c~0_1033) (< v_main_~c~0_1033 (+ v_~last~0_435 1)) (< v_main_~c~0_1033 (+ v_~SIZE~0_392 1))))) InVars {~SIZE~0=v_~SIZE~0_392, main_~c~0=v_main_~c~0_1034, main_#t~post5=|v_main_#t~post5_571|, ~last~0=v_~last~0_435} OutVars{~SIZE~0=v_~SIZE~0_392, main_#t~post5=|v_main_#t~post5_567|, main_~c~0=v_main_~c~0_1033, ~last~0=v_~last~0_435} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {89903#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:02:29,702 INFO L290 TraceCheckUtils]: 16: Hoare triple {89903#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [271] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {89913#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:02:29,703 INFO L290 TraceCheckUtils]: 17: Hoare triple {89913#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {89847#false} is VALID [2022-04-28 04:02:29,703 INFO L290 TraceCheckUtils]: 18: Hoare triple {89847#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {89847#false} is VALID [2022-04-28 04:02:29,703 INFO L290 TraceCheckUtils]: 19: Hoare triple {89847#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {89847#false} is VALID [2022-04-28 04:02:29,703 INFO L290 TraceCheckUtils]: 20: Hoare triple {89847#false} assume !(~d~0 == ~SIZE~0); {89847#false} is VALID [2022-04-28 04:02:29,703 INFO L272 TraceCheckUtils]: 21: Hoare triple {89847#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {89847#false} is VALID [2022-04-28 04:02:29,703 INFO L290 TraceCheckUtils]: 22: Hoare triple {89847#false} ~cond := #in~cond; {89847#false} is VALID [2022-04-28 04:02:29,703 INFO L290 TraceCheckUtils]: 23: Hoare triple {89847#false} assume 0 == ~cond; {89847#false} is VALID [2022-04-28 04:02:29,703 INFO L290 TraceCheckUtils]: 24: Hoare triple {89847#false} assume !false; {89847#false} is VALID [2022-04-28 04:02:29,703 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:02:29,703 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:02:29,996 INFO L290 TraceCheckUtils]: 24: Hoare triple {89847#false} assume !false; {89847#false} is VALID [2022-04-28 04:02:29,996 INFO L290 TraceCheckUtils]: 23: Hoare triple {89847#false} assume 0 == ~cond; {89847#false} is VALID [2022-04-28 04:02:29,996 INFO L290 TraceCheckUtils]: 22: Hoare triple {89847#false} ~cond := #in~cond; {89847#false} is VALID [2022-04-28 04:02:29,996 INFO L272 TraceCheckUtils]: 21: Hoare triple {89847#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {89847#false} is VALID [2022-04-28 04:02:29,996 INFO L290 TraceCheckUtils]: 20: Hoare triple {89847#false} assume !(~d~0 == ~SIZE~0); {89847#false} is VALID [2022-04-28 04:02:29,996 INFO L290 TraceCheckUtils]: 19: Hoare triple {89847#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {89847#false} is VALID [2022-04-28 04:02:29,996 INFO L290 TraceCheckUtils]: 18: Hoare triple {89847#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {89847#false} is VALID [2022-04-28 04:02:29,997 INFO L290 TraceCheckUtils]: 17: Hoare triple {89959#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {89847#false} is VALID [2022-04-28 04:02:29,997 INFO L290 TraceCheckUtils]: 16: Hoare triple {89963#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [271] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {89959#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:02:29,998 INFO L290 TraceCheckUtils]: 15: Hoare triple {89963#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [274] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1034 v_main_~c~0_1033))) (or (and .cse0 (or (not (< v_main_~c~0_1034 v_~last~0_435)) (not (< v_main_~c~0_1034 v_~SIZE~0_392))) (= |v_main_#t~post5_567| |v_main_#t~post5_571|)) (and .cse0 (= |v_main_#t~post5_571| |v_main_#t~post5_567|) (= v_~last~0_435 v_~last~0_435) (= v_~SIZE~0_392 v_~SIZE~0_392)) (and (< v_main_~c~0_1034 v_main_~c~0_1033) (< v_main_~c~0_1033 (+ v_~last~0_435 1)) (< v_main_~c~0_1033 (+ v_~SIZE~0_392 1))))) InVars {~SIZE~0=v_~SIZE~0_392, main_~c~0=v_main_~c~0_1034, main_#t~post5=|v_main_#t~post5_571|, ~last~0=v_~last~0_435} OutVars{~SIZE~0=v_~SIZE~0_392, main_#t~post5=|v_main_#t~post5_567|, main_~c~0=v_main_~c~0_1033, ~last~0=v_~last~0_435} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {89963#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:02:29,998 INFO L290 TraceCheckUtils]: 14: Hoare triple {89963#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [273] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {89963#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:02:29,999 INFO L290 TraceCheckUtils]: 13: Hoare triple {89973#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [272] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~c~0_1032 v_main_~c~0_1031)) (.cse2 (= v_main_~st~0_556 v_main_~st~0_555)) (.cse3 (= |v_main_#t~post5_568| |v_main_#t~post5_566|)) (.cse0 (<= v_~last~0_434 v_main_~c~0_1032))) (or (and (< v_main_~c~0_1031 (+ v_~SIZE~0_391 1)) (< v_main_~c~0_1032 v_main_~c~0_1031) (= v_main_~st~0_555 0) .cse0) (and .cse1 .cse2 (= v_~SIZE~0_391 v_~SIZE~0_391) (= v_~last~0_434 v_~last~0_434) .cse3) (and .cse1 .cse2 .cse3 (or (not (< v_main_~c~0_1032 v_~SIZE~0_391)) (not .cse0))))) InVars {~SIZE~0=v_~SIZE~0_391, main_~c~0=v_main_~c~0_1032, main_#t~post5=|v_main_#t~post5_568|, main_~st~0=v_main_~st~0_556, ~last~0=v_~last~0_434} OutVars{~SIZE~0=v_~SIZE~0_391, main_#t~post5=|v_main_#t~post5_566|, main_~c~0=v_main_~c~0_1031, main_~st~0=v_main_~st~0_555, ~last~0=v_~last~0_434} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {89963#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:02:29,999 INFO L290 TraceCheckUtils]: 12: Hoare triple {89977#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {89973#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:02:29,999 INFO L290 TraceCheckUtils]: 11: Hoare triple {89977#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {89977#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:30,000 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {89846#true} {89977#(< 1 ~SIZE~0)} #86#return; {89977#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:30,000 INFO L290 TraceCheckUtils]: 9: Hoare triple {89846#true} assume true; {89846#true} is VALID [2022-04-28 04:02:30,000 INFO L290 TraceCheckUtils]: 8: Hoare triple {89846#true} assume !(0 == ~cond); {89846#true} is VALID [2022-04-28 04:02:30,000 INFO L290 TraceCheckUtils]: 7: Hoare triple {89846#true} ~cond := #in~cond; {89846#true} is VALID [2022-04-28 04:02:30,000 INFO L272 TraceCheckUtils]: 6: Hoare triple {89977#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {89846#true} is VALID [2022-04-28 04:02:30,000 INFO L290 TraceCheckUtils]: 5: Hoare triple {89977#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {89977#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:30,000 INFO L272 TraceCheckUtils]: 4: Hoare triple {89977#(< 1 ~SIZE~0)} call #t~ret7 := main(); {89977#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:30,001 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {89977#(< 1 ~SIZE~0)} {89846#true} #90#return; {89977#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:30,001 INFO L290 TraceCheckUtils]: 2: Hoare triple {89977#(< 1 ~SIZE~0)} assume true; {89977#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:30,001 INFO L290 TraceCheckUtils]: 1: Hoare triple {89846#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {89977#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:30,002 INFO L272 TraceCheckUtils]: 0: Hoare triple {89846#true} call ULTIMATE.init(); {89846#true} is VALID [2022-04-28 04:02:30,002 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:02:30,002 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1215113626] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:02:30,002 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:02:30,002 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:02:30,641 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:02:30,641 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [265912460] [2022-04-28 04:02:30,641 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [265912460] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:02:30,641 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:02:30,641 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [21] imperfect sequences [] total 21 [2022-04-28 04:02:30,641 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1666269825] [2022-04-28 04:02:30,641 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:02:30,642 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 20 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 52 [2022-04-28 04:02:30,642 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:02:30,642 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 21 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 20 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:02:30,676 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:02:30,676 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2022-04-28 04:02:30,676 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:02:30,676 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2022-04-28 04:02:30,676 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=182, Invalid=688, Unknown=0, NotChecked=0, Total=870 [2022-04-28 04:02:30,676 INFO L87 Difference]: Start difference. First operand 316 states and 378 transitions. Second operand has 21 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 20 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:02:34,265 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:02:34,265 INFO L93 Difference]: Finished difference Result 634 states and 751 transitions. [2022-04-28 04:02:34,265 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2022-04-28 04:02:34,265 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 20 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 52 [2022-04-28 04:02:34,266 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:02:34,266 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 20 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:02:34,266 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 103 transitions. [2022-04-28 04:02:34,266 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 20 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:02:34,267 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 103 transitions. [2022-04-28 04:02:34,267 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 21 states and 103 transitions. [2022-04-28 04:02:34,343 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 103 edges. 103 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:02:34,350 INFO L225 Difference]: With dead ends: 634 [2022-04-28 04:02:34,350 INFO L226 Difference]: Without dead ends: 391 [2022-04-28 04:02:34,350 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 100 GetRequests, 54 SyntacticMatches, 15 SemanticMatches, 31 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 705 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=215, Invalid=841, Unknown=0, NotChecked=0, Total=1056 [2022-04-28 04:02:34,351 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 53 mSDsluCounter, 29 mSDsCounter, 0 mSdLazyCounter, 979 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 54 SdHoareTripleChecker+Valid, 53 SdHoareTripleChecker+Invalid, 994 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 979 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-28 04:02:34,351 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [54 Valid, 53 Invalid, 994 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 979 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-28 04:02:34,351 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 391 states. [2022-04-28 04:02:35,891 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 391 to 316. [2022-04-28 04:02:35,891 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:02:35,891 INFO L82 GeneralOperation]: Start isEquivalent. First operand 391 states. Second operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:02:35,892 INFO L74 IsIncluded]: Start isIncluded. First operand 391 states. Second operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:02:35,892 INFO L87 Difference]: Start difference. First operand 391 states. Second operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:02:35,898 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:02:35,898 INFO L93 Difference]: Finished difference Result 391 states and 457 transitions. [2022-04-28 04:02:35,898 INFO L276 IsEmpty]: Start isEmpty. Operand 391 states and 457 transitions. [2022-04-28 04:02:35,898 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:02:35,898 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:02:35,898 INFO L74 IsIncluded]: Start isIncluded. First operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 391 states. [2022-04-28 04:02:35,898 INFO L87 Difference]: Start difference. First operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 391 states. [2022-04-28 04:02:35,904 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:02:35,904 INFO L93 Difference]: Finished difference Result 391 states and 457 transitions. [2022-04-28 04:02:35,904 INFO L276 IsEmpty]: Start isEmpty. Operand 391 states and 457 transitions. [2022-04-28 04:02:35,904 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:02:35,904 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:02:35,904 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:02:35,904 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:02:35,905 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:02:35,909 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 316 states to 316 states and 378 transitions. [2022-04-28 04:02:35,909 INFO L78 Accepts]: Start accepts. Automaton has 316 states and 378 transitions. Word has length 52 [2022-04-28 04:02:35,909 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:02:35,909 INFO L495 AbstractCegarLoop]: Abstraction has 316 states and 378 transitions. [2022-04-28 04:02:35,909 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 21 states have (on average 2.1904761904761907) internal successors, (46), 20 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:02:35,909 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 316 states and 378 transitions. [2022-04-28 04:02:37,093 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 378 edges. 378 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:02:37,093 INFO L276 IsEmpty]: Start isEmpty. Operand 316 states and 378 transitions. [2022-04-28 04:02:37,094 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2022-04-28 04:02:37,094 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:02:37,094 INFO L195 NwaCegarLoop]: trace histogram [10, 10, 6, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:02:37,109 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (43)] Forceful destruction successful, exit code 0 [2022-04-28 04:02:37,301 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable50,43 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:02:37,302 INFO L420 AbstractCegarLoop]: === Iteration 52 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:02:37,302 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:02:37,302 INFO L85 PathProgramCache]: Analyzing trace with hash 1496048318, now seen corresponding path program 40 times [2022-04-28 04:02:37,302 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:02:37,302 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [633483085] [2022-04-28 04:02:37,499 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:02:40,083 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:02:40,178 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:02:40,179 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:02:40,182 INFO L85 PathProgramCache]: Analyzing trace with hash 3347137, now seen corresponding path program 1 times [2022-04-28 04:02:40,182 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:02:40,182 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1382776992] [2022-04-28 04:02:40,182 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:02:40,182 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:02:40,190 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:02:40,232 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:02:40,234 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:02:40,237 INFO L290 TraceCheckUtils]: 0: Hoare triple {92734#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {92726#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:40,237 INFO L290 TraceCheckUtils]: 1: Hoare triple {92726#(<= 200000 ~SIZE~0)} assume true; {92726#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:40,237 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {92726#(<= 200000 ~SIZE~0)} {92721#true} #90#return; {92726#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:40,237 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:02:40,238 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:02:40,239 INFO L290 TraceCheckUtils]: 0: Hoare triple {92721#true} ~cond := #in~cond; {92721#true} is VALID [2022-04-28 04:02:40,239 INFO L290 TraceCheckUtils]: 1: Hoare triple {92721#true} assume !(0 == ~cond); {92721#true} is VALID [2022-04-28 04:02:40,239 INFO L290 TraceCheckUtils]: 2: Hoare triple {92721#true} assume true; {92721#true} is VALID [2022-04-28 04:02:40,239 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {92721#true} {92726#(<= 200000 ~SIZE~0)} #86#return; {92726#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:40,240 INFO L272 TraceCheckUtils]: 0: Hoare triple {92721#true} call ULTIMATE.init(); {92734#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:02:40,240 INFO L290 TraceCheckUtils]: 1: Hoare triple {92734#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {92726#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:40,241 INFO L290 TraceCheckUtils]: 2: Hoare triple {92726#(<= 200000 ~SIZE~0)} assume true; {92726#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:40,241 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {92726#(<= 200000 ~SIZE~0)} {92721#true} #90#return; {92726#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:40,241 INFO L272 TraceCheckUtils]: 4: Hoare triple {92726#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {92726#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:40,241 INFO L290 TraceCheckUtils]: 5: Hoare triple {92726#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {92726#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:40,242 INFO L272 TraceCheckUtils]: 6: Hoare triple {92726#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {92721#true} is VALID [2022-04-28 04:02:40,242 INFO L290 TraceCheckUtils]: 7: Hoare triple {92721#true} ~cond := #in~cond; {92721#true} is VALID [2022-04-28 04:02:40,242 INFO L290 TraceCheckUtils]: 8: Hoare triple {92721#true} assume !(0 == ~cond); {92721#true} is VALID [2022-04-28 04:02:40,242 INFO L290 TraceCheckUtils]: 9: Hoare triple {92721#true} assume true; {92721#true} is VALID [2022-04-28 04:02:40,242 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {92721#true} {92726#(<= 200000 ~SIZE~0)} #86#return; {92726#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:40,242 INFO L290 TraceCheckUtils]: 11: Hoare triple {92726#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {92726#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:40,243 INFO L290 TraceCheckUtils]: 12: Hoare triple {92726#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {92731#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:02:40,243 INFO L290 TraceCheckUtils]: 13: Hoare triple {92731#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [276] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~c~0_1059 v_main_~c~0_1058)) (.cse2 (= v_main_~st~0_572 v_main_~st~0_571)) (.cse0 (<= v_~last~0_444 v_main_~c~0_1059))) (or (and (or (not (< v_main_~c~0_1059 v_~SIZE~0_400)) (not .cse0)) .cse1 (= |v_main_#t~post5_579| |v_main_#t~post5_581|) .cse2) (and .cse1 (= v_~SIZE~0_400 v_~SIZE~0_400) (= |v_main_#t~post5_581| |v_main_#t~post5_579|) (= v_~last~0_444 v_~last~0_444) .cse2) (and (< v_main_~c~0_1058 (+ v_~SIZE~0_400 1)) (= v_main_~st~0_571 0) .cse0 (< v_main_~c~0_1059 v_main_~c~0_1058)))) InVars {~SIZE~0=v_~SIZE~0_400, main_~c~0=v_main_~c~0_1059, main_#t~post5=|v_main_#t~post5_581|, main_~st~0=v_main_~st~0_572, ~last~0=v_~last~0_444} OutVars{~SIZE~0=v_~SIZE~0_400, main_#t~post5=|v_main_#t~post5_579|, main_~c~0=v_main_~c~0_1058, main_~st~0=v_main_~st~0_571, ~last~0=v_~last~0_444} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {92732#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:02:40,244 INFO L290 TraceCheckUtils]: 14: Hoare triple {92732#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [277] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {92732#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:02:40,244 INFO L290 TraceCheckUtils]: 15: Hoare triple {92732#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [278] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1061 v_main_~c~0_1060)) (.cse1 (= |v_main_#t~post5_584| |v_main_#t~post5_580|))) (or (and (< v_main_~c~0_1060 (+ v_~SIZE~0_401 1)) (< v_main_~c~0_1061 v_main_~c~0_1060) (< v_main_~c~0_1060 (+ v_~last~0_445 1))) (and .cse0 (= v_~SIZE~0_401 v_~SIZE~0_401) (= v_~last~0_445 v_~last~0_445) .cse1) (and .cse0 .cse1 (or (not (< v_main_~c~0_1061 v_~last~0_445)) (not (< v_main_~c~0_1061 v_~SIZE~0_401)))))) InVars {~SIZE~0=v_~SIZE~0_401, main_~c~0=v_main_~c~0_1061, main_#t~post5=|v_main_#t~post5_584|, ~last~0=v_~last~0_445} OutVars{~SIZE~0=v_~SIZE~0_401, main_#t~post5=|v_main_#t~post5_580|, main_~c~0=v_main_~c~0_1060, ~last~0=v_~last~0_445} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {92732#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:02:40,245 INFO L290 TraceCheckUtils]: 16: Hoare triple {92732#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [275] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {92733#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:02:40,245 INFO L290 TraceCheckUtils]: 17: Hoare triple {92733#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {92722#false} is VALID [2022-04-28 04:02:40,245 INFO L290 TraceCheckUtils]: 18: Hoare triple {92722#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {92722#false} is VALID [2022-04-28 04:02:40,245 INFO L290 TraceCheckUtils]: 19: Hoare triple {92722#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {92722#false} is VALID [2022-04-28 04:02:40,245 INFO L290 TraceCheckUtils]: 20: Hoare triple {92722#false} assume !(~d~0 == ~SIZE~0); {92722#false} is VALID [2022-04-28 04:02:40,245 INFO L272 TraceCheckUtils]: 21: Hoare triple {92722#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {92722#false} is VALID [2022-04-28 04:02:40,245 INFO L290 TraceCheckUtils]: 22: Hoare triple {92722#false} ~cond := #in~cond; {92722#false} is VALID [2022-04-28 04:02:40,245 INFO L290 TraceCheckUtils]: 23: Hoare triple {92722#false} assume 0 == ~cond; {92722#false} is VALID [2022-04-28 04:02:40,245 INFO L290 TraceCheckUtils]: 24: Hoare triple {92722#false} assume !false; {92722#false} is VALID [2022-04-28 04:02:40,246 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:02:40,246 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:02:40,246 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1382776992] [2022-04-28 04:02:40,246 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1382776992] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:02:40,246 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [236146234] [2022-04-28 04:02:40,246 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:02:40,246 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:02:40,246 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:02:40,247 INFO L229 MonitoredProcess]: Starting monitored process 44 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:02:40,248 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (44)] Waiting until timeout for monitored process [2022-04-28 04:02:40,275 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:02:40,276 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:02:40,282 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:02:40,282 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:02:40,496 INFO L272 TraceCheckUtils]: 0: Hoare triple {92721#true} call ULTIMATE.init(); {92721#true} is VALID [2022-04-28 04:02:40,497 INFO L290 TraceCheckUtils]: 1: Hoare triple {92721#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {92726#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:40,497 INFO L290 TraceCheckUtils]: 2: Hoare triple {92726#(<= 200000 ~SIZE~0)} assume true; {92726#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:40,497 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {92726#(<= 200000 ~SIZE~0)} {92721#true} #90#return; {92726#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:40,498 INFO L272 TraceCheckUtils]: 4: Hoare triple {92726#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {92726#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:40,498 INFO L290 TraceCheckUtils]: 5: Hoare triple {92726#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {92726#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:40,498 INFO L272 TraceCheckUtils]: 6: Hoare triple {92726#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {92726#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:40,498 INFO L290 TraceCheckUtils]: 7: Hoare triple {92726#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {92726#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:40,499 INFO L290 TraceCheckUtils]: 8: Hoare triple {92726#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {92726#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:40,499 INFO L290 TraceCheckUtils]: 9: Hoare triple {92726#(<= 200000 ~SIZE~0)} assume true; {92726#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:40,499 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {92726#(<= 200000 ~SIZE~0)} {92726#(<= 200000 ~SIZE~0)} #86#return; {92726#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:40,500 INFO L290 TraceCheckUtils]: 11: Hoare triple {92726#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {92726#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:40,500 INFO L290 TraceCheckUtils]: 12: Hoare triple {92726#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {92774#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:02:40,501 INFO L290 TraceCheckUtils]: 13: Hoare triple {92774#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [276] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~c~0_1059 v_main_~c~0_1058)) (.cse2 (= v_main_~st~0_572 v_main_~st~0_571)) (.cse0 (<= v_~last~0_444 v_main_~c~0_1059))) (or (and (or (not (< v_main_~c~0_1059 v_~SIZE~0_400)) (not .cse0)) .cse1 (= |v_main_#t~post5_579| |v_main_#t~post5_581|) .cse2) (and .cse1 (= v_~SIZE~0_400 v_~SIZE~0_400) (= |v_main_#t~post5_581| |v_main_#t~post5_579|) (= v_~last~0_444 v_~last~0_444) .cse2) (and (< v_main_~c~0_1058 (+ v_~SIZE~0_400 1)) (= v_main_~st~0_571 0) .cse0 (< v_main_~c~0_1059 v_main_~c~0_1058)))) InVars {~SIZE~0=v_~SIZE~0_400, main_~c~0=v_main_~c~0_1059, main_#t~post5=|v_main_#t~post5_581|, main_~st~0=v_main_~st~0_572, ~last~0=v_~last~0_444} OutVars{~SIZE~0=v_~SIZE~0_400, main_#t~post5=|v_main_#t~post5_579|, main_~c~0=v_main_~c~0_1058, main_~st~0=v_main_~st~0_571, ~last~0=v_~last~0_444} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {92778#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:02:40,501 INFO L290 TraceCheckUtils]: 14: Hoare triple {92778#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [277] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {92778#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:02:40,502 INFO L290 TraceCheckUtils]: 15: Hoare triple {92778#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [278] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1061 v_main_~c~0_1060)) (.cse1 (= |v_main_#t~post5_584| |v_main_#t~post5_580|))) (or (and (< v_main_~c~0_1060 (+ v_~SIZE~0_401 1)) (< v_main_~c~0_1061 v_main_~c~0_1060) (< v_main_~c~0_1060 (+ v_~last~0_445 1))) (and .cse0 (= v_~SIZE~0_401 v_~SIZE~0_401) (= v_~last~0_445 v_~last~0_445) .cse1) (and .cse0 .cse1 (or (not (< v_main_~c~0_1061 v_~last~0_445)) (not (< v_main_~c~0_1061 v_~SIZE~0_401)))))) InVars {~SIZE~0=v_~SIZE~0_401, main_~c~0=v_main_~c~0_1061, main_#t~post5=|v_main_#t~post5_584|, ~last~0=v_~last~0_445} OutVars{~SIZE~0=v_~SIZE~0_401, main_#t~post5=|v_main_#t~post5_580|, main_~c~0=v_main_~c~0_1060, ~last~0=v_~last~0_445} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {92778#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:02:40,502 INFO L290 TraceCheckUtils]: 16: Hoare triple {92778#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [275] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {92788#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:02:40,503 INFO L290 TraceCheckUtils]: 17: Hoare triple {92788#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {92722#false} is VALID [2022-04-28 04:02:40,503 INFO L290 TraceCheckUtils]: 18: Hoare triple {92722#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {92722#false} is VALID [2022-04-28 04:02:40,503 INFO L290 TraceCheckUtils]: 19: Hoare triple {92722#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {92722#false} is VALID [2022-04-28 04:02:40,503 INFO L290 TraceCheckUtils]: 20: Hoare triple {92722#false} assume !(~d~0 == ~SIZE~0); {92722#false} is VALID [2022-04-28 04:02:40,503 INFO L272 TraceCheckUtils]: 21: Hoare triple {92722#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {92722#false} is VALID [2022-04-28 04:02:40,503 INFO L290 TraceCheckUtils]: 22: Hoare triple {92722#false} ~cond := #in~cond; {92722#false} is VALID [2022-04-28 04:02:40,503 INFO L290 TraceCheckUtils]: 23: Hoare triple {92722#false} assume 0 == ~cond; {92722#false} is VALID [2022-04-28 04:02:40,503 INFO L290 TraceCheckUtils]: 24: Hoare triple {92722#false} assume !false; {92722#false} is VALID [2022-04-28 04:02:40,503 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:02:40,503 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:02:40,813 INFO L290 TraceCheckUtils]: 24: Hoare triple {92722#false} assume !false; {92722#false} is VALID [2022-04-28 04:02:40,813 INFO L290 TraceCheckUtils]: 23: Hoare triple {92722#false} assume 0 == ~cond; {92722#false} is VALID [2022-04-28 04:02:40,813 INFO L290 TraceCheckUtils]: 22: Hoare triple {92722#false} ~cond := #in~cond; {92722#false} is VALID [2022-04-28 04:02:40,813 INFO L272 TraceCheckUtils]: 21: Hoare triple {92722#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {92722#false} is VALID [2022-04-28 04:02:40,813 INFO L290 TraceCheckUtils]: 20: Hoare triple {92722#false} assume !(~d~0 == ~SIZE~0); {92722#false} is VALID [2022-04-28 04:02:40,814 INFO L290 TraceCheckUtils]: 19: Hoare triple {92722#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {92722#false} is VALID [2022-04-28 04:02:40,814 INFO L290 TraceCheckUtils]: 18: Hoare triple {92722#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {92722#false} is VALID [2022-04-28 04:02:40,814 INFO L290 TraceCheckUtils]: 17: Hoare triple {92834#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {92722#false} is VALID [2022-04-28 04:02:40,814 INFO L290 TraceCheckUtils]: 16: Hoare triple {92838#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [275] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {92834#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:02:40,815 INFO L290 TraceCheckUtils]: 15: Hoare triple {92838#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [278] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1061 v_main_~c~0_1060)) (.cse1 (= |v_main_#t~post5_584| |v_main_#t~post5_580|))) (or (and (< v_main_~c~0_1060 (+ v_~SIZE~0_401 1)) (< v_main_~c~0_1061 v_main_~c~0_1060) (< v_main_~c~0_1060 (+ v_~last~0_445 1))) (and .cse0 (= v_~SIZE~0_401 v_~SIZE~0_401) (= v_~last~0_445 v_~last~0_445) .cse1) (and .cse0 .cse1 (or (not (< v_main_~c~0_1061 v_~last~0_445)) (not (< v_main_~c~0_1061 v_~SIZE~0_401)))))) InVars {~SIZE~0=v_~SIZE~0_401, main_~c~0=v_main_~c~0_1061, main_#t~post5=|v_main_#t~post5_584|, ~last~0=v_~last~0_445} OutVars{~SIZE~0=v_~SIZE~0_401, main_#t~post5=|v_main_#t~post5_580|, main_~c~0=v_main_~c~0_1060, ~last~0=v_~last~0_445} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {92838#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:02:40,815 INFO L290 TraceCheckUtils]: 14: Hoare triple {92838#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [277] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {92838#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:02:40,816 INFO L290 TraceCheckUtils]: 13: Hoare triple {92848#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [276] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~c~0_1059 v_main_~c~0_1058)) (.cse2 (= v_main_~st~0_572 v_main_~st~0_571)) (.cse0 (<= v_~last~0_444 v_main_~c~0_1059))) (or (and (or (not (< v_main_~c~0_1059 v_~SIZE~0_400)) (not .cse0)) .cse1 (= |v_main_#t~post5_579| |v_main_#t~post5_581|) .cse2) (and .cse1 (= v_~SIZE~0_400 v_~SIZE~0_400) (= |v_main_#t~post5_581| |v_main_#t~post5_579|) (= v_~last~0_444 v_~last~0_444) .cse2) (and (< v_main_~c~0_1058 (+ v_~SIZE~0_400 1)) (= v_main_~st~0_571 0) .cse0 (< v_main_~c~0_1059 v_main_~c~0_1058)))) InVars {~SIZE~0=v_~SIZE~0_400, main_~c~0=v_main_~c~0_1059, main_#t~post5=|v_main_#t~post5_581|, main_~st~0=v_main_~st~0_572, ~last~0=v_~last~0_444} OutVars{~SIZE~0=v_~SIZE~0_400, main_#t~post5=|v_main_#t~post5_579|, main_~c~0=v_main_~c~0_1058, main_~st~0=v_main_~st~0_571, ~last~0=v_~last~0_444} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {92838#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:02:40,816 INFO L290 TraceCheckUtils]: 12: Hoare triple {92852#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {92848#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:02:40,816 INFO L290 TraceCheckUtils]: 11: Hoare triple {92852#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {92852#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:40,817 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {92721#true} {92852#(< 1 ~SIZE~0)} #86#return; {92852#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:40,817 INFO L290 TraceCheckUtils]: 9: Hoare triple {92721#true} assume true; {92721#true} is VALID [2022-04-28 04:02:40,817 INFO L290 TraceCheckUtils]: 8: Hoare triple {92721#true} assume !(0 == ~cond); {92721#true} is VALID [2022-04-28 04:02:40,817 INFO L290 TraceCheckUtils]: 7: Hoare triple {92721#true} ~cond := #in~cond; {92721#true} is VALID [2022-04-28 04:02:40,817 INFO L272 TraceCheckUtils]: 6: Hoare triple {92852#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {92721#true} is VALID [2022-04-28 04:02:40,817 INFO L290 TraceCheckUtils]: 5: Hoare triple {92852#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {92852#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:40,818 INFO L272 TraceCheckUtils]: 4: Hoare triple {92852#(< 1 ~SIZE~0)} call #t~ret7 := main(); {92852#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:40,818 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {92852#(< 1 ~SIZE~0)} {92721#true} #90#return; {92852#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:40,818 INFO L290 TraceCheckUtils]: 2: Hoare triple {92852#(< 1 ~SIZE~0)} assume true; {92852#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:40,819 INFO L290 TraceCheckUtils]: 1: Hoare triple {92721#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {92852#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:40,819 INFO L272 TraceCheckUtils]: 0: Hoare triple {92721#true} call ULTIMATE.init(); {92721#true} is VALID [2022-04-28 04:02:40,819 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:02:40,819 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [236146234] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:02:40,819 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:02:40,819 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:02:41,446 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:02:41,446 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [633483085] [2022-04-28 04:02:41,447 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [633483085] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:02:41,447 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:02:41,447 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [22] imperfect sequences [] total 22 [2022-04-28 04:02:41,447 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1705591196] [2022-04-28 04:02:41,447 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:02:41,447 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 22 states have (on average 2.090909090909091) internal successors, (46), 21 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 52 [2022-04-28 04:02:41,447 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:02:41,447 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 22 states, 22 states have (on average 2.090909090909091) internal successors, (46), 21 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:02:41,481 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:02:41,481 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-04-28 04:02:41,481 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:02:41,481 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-04-28 04:02:41,481 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=197, Invalid=733, Unknown=0, NotChecked=0, Total=930 [2022-04-28 04:02:41,481 INFO L87 Difference]: Start difference. First operand 316 states and 378 transitions. Second operand has 22 states, 22 states have (on average 2.090909090909091) internal successors, (46), 21 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:02:45,000 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:02:45,000 INFO L93 Difference]: Finished difference Result 625 states and 742 transitions. [2022-04-28 04:02:45,001 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-28 04:02:45,001 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 22 states have (on average 2.090909090909091) internal successors, (46), 21 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 52 [2022-04-28 04:02:45,001 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:02:45,001 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 22 states have (on average 2.090909090909091) internal successors, (46), 21 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:02:45,002 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 104 transitions. [2022-04-28 04:02:45,002 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 22 states have (on average 2.090909090909091) internal successors, (46), 21 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:02:45,003 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 104 transitions. [2022-04-28 04:02:45,003 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 104 transitions. [2022-04-28 04:02:45,072 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 104 edges. 104 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:02:45,078 INFO L225 Difference]: With dead ends: 625 [2022-04-28 04:02:45,078 INFO L226 Difference]: Without dead ends: 382 [2022-04-28 04:02:45,078 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 100 GetRequests, 54 SyntacticMatches, 14 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 731 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=232, Invalid=890, Unknown=0, NotChecked=0, Total=1122 [2022-04-28 04:02:45,079 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 61 mSDsluCounter, 20 mSDsCounter, 0 mSdLazyCounter, 1020 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 62 SdHoareTripleChecker+Valid, 44 SdHoareTripleChecker+Invalid, 1036 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 1020 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-28 04:02:45,079 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [62 Valid, 44 Invalid, 1036 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 1020 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-28 04:02:45,079 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 382 states. [2022-04-28 04:02:46,604 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 382 to 316. [2022-04-28 04:02:46,605 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:02:46,605 INFO L82 GeneralOperation]: Start isEquivalent. First operand 382 states. Second operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:02:46,605 INFO L74 IsIncluded]: Start isIncluded. First operand 382 states. Second operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:02:46,605 INFO L87 Difference]: Start difference. First operand 382 states. Second operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:02:46,610 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:02:46,610 INFO L93 Difference]: Finished difference Result 382 states and 448 transitions. [2022-04-28 04:02:46,610 INFO L276 IsEmpty]: Start isEmpty. Operand 382 states and 448 transitions. [2022-04-28 04:02:46,610 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:02:46,611 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:02:46,611 INFO L74 IsIncluded]: Start isIncluded. First operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 382 states. [2022-04-28 04:02:46,611 INFO L87 Difference]: Start difference. First operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 382 states. [2022-04-28 04:02:46,616 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:02:46,616 INFO L93 Difference]: Finished difference Result 382 states and 448 transitions. [2022-04-28 04:02:46,616 INFO L276 IsEmpty]: Start isEmpty. Operand 382 states and 448 transitions. [2022-04-28 04:02:46,616 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:02:46,616 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:02:46,616 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:02:46,616 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:02:46,616 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:02:46,620 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 316 states to 316 states and 378 transitions. [2022-04-28 04:02:46,621 INFO L78 Accepts]: Start accepts. Automaton has 316 states and 378 transitions. Word has length 52 [2022-04-28 04:02:46,621 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:02:46,621 INFO L495 AbstractCegarLoop]: Abstraction has 316 states and 378 transitions. [2022-04-28 04:02:46,621 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 22 states, 22 states have (on average 2.090909090909091) internal successors, (46), 21 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:02:46,621 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 316 states and 378 transitions. [2022-04-28 04:02:47,769 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 378 edges. 378 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:02:47,769 INFO L276 IsEmpty]: Start isEmpty. Operand 316 states and 378 transitions. [2022-04-28 04:02:47,775 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2022-04-28 04:02:47,775 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:02:47,775 INFO L195 NwaCegarLoop]: trace histogram [10, 10, 5, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:02:47,790 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (44)] Ended with exit code 0 [2022-04-28 04:02:47,979 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 44 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable51 [2022-04-28 04:02:47,979 INFO L420 AbstractCegarLoop]: === Iteration 53 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:02:47,981 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:02:47,981 INFO L85 PathProgramCache]: Analyzing trace with hash 1558087932, now seen corresponding path program 41 times [2022-04-28 04:02:47,981 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:02:47,981 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [413750006] [2022-04-28 04:02:48,192 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:02:52,299 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:02:52,398 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:02:52,399 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:02:52,402 INFO L85 PathProgramCache]: Analyzing trace with hash -1799097407, now seen corresponding path program 1 times [2022-04-28 04:02:52,402 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:02:52,402 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [591702805] [2022-04-28 04:02:52,402 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:02:52,402 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:02:52,408 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:02:52,456 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:02:52,457 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:02:52,460 INFO L290 TraceCheckUtils]: 0: Hoare triple {95574#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {95566#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:52,460 INFO L290 TraceCheckUtils]: 1: Hoare triple {95566#(<= 200000 ~SIZE~0)} assume true; {95566#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:52,461 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {95566#(<= 200000 ~SIZE~0)} {95561#true} #90#return; {95566#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:52,461 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:02:52,461 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:02:52,463 INFO L290 TraceCheckUtils]: 0: Hoare triple {95561#true} ~cond := #in~cond; {95561#true} is VALID [2022-04-28 04:02:52,463 INFO L290 TraceCheckUtils]: 1: Hoare triple {95561#true} assume !(0 == ~cond); {95561#true} is VALID [2022-04-28 04:02:52,463 INFO L290 TraceCheckUtils]: 2: Hoare triple {95561#true} assume true; {95561#true} is VALID [2022-04-28 04:02:52,463 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {95561#true} {95566#(<= 200000 ~SIZE~0)} #86#return; {95566#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:52,464 INFO L272 TraceCheckUtils]: 0: Hoare triple {95561#true} call ULTIMATE.init(); {95574#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:02:52,465 INFO L290 TraceCheckUtils]: 1: Hoare triple {95574#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {95566#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:52,465 INFO L290 TraceCheckUtils]: 2: Hoare triple {95566#(<= 200000 ~SIZE~0)} assume true; {95566#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:52,465 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {95566#(<= 200000 ~SIZE~0)} {95561#true} #90#return; {95566#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:52,466 INFO L272 TraceCheckUtils]: 4: Hoare triple {95566#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {95566#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:52,466 INFO L290 TraceCheckUtils]: 5: Hoare triple {95566#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {95566#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:52,466 INFO L272 TraceCheckUtils]: 6: Hoare triple {95566#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {95561#true} is VALID [2022-04-28 04:02:52,466 INFO L290 TraceCheckUtils]: 7: Hoare triple {95561#true} ~cond := #in~cond; {95561#true} is VALID [2022-04-28 04:02:52,466 INFO L290 TraceCheckUtils]: 8: Hoare triple {95561#true} assume !(0 == ~cond); {95561#true} is VALID [2022-04-28 04:02:52,466 INFO L290 TraceCheckUtils]: 9: Hoare triple {95561#true} assume true; {95561#true} is VALID [2022-04-28 04:02:52,466 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {95561#true} {95566#(<= 200000 ~SIZE~0)} #86#return; {95566#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:52,467 INFO L290 TraceCheckUtils]: 11: Hoare triple {95566#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {95566#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:52,467 INFO L290 TraceCheckUtils]: 12: Hoare triple {95566#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {95571#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:02:52,468 INFO L290 TraceCheckUtils]: 13: Hoare triple {95571#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [280] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= |v_main_#t~post5_594| |v_main_#t~post5_592|)) (.cse0 (<= v_~last~0_454 v_main_~c~0_1086)) (.cse2 (= v_main_~st~0_587 v_main_~st~0_586)) (.cse3 (= v_main_~c~0_1086 v_main_~c~0_1085))) (or (and .cse0 (< v_main_~c~0_1086 v_main_~c~0_1085) (< v_main_~c~0_1085 (+ v_~SIZE~0_409 1)) (= v_main_~st~0_586 0)) (and (= v_~last~0_454 v_~last~0_454) .cse1 (= v_~SIZE~0_409 v_~SIZE~0_409) .cse2 .cse3) (and .cse1 (or (not (< v_main_~c~0_1086 v_~SIZE~0_409)) (not .cse0)) .cse2 .cse3))) InVars {~SIZE~0=v_~SIZE~0_409, main_~c~0=v_main_~c~0_1086, main_#t~post5=|v_main_#t~post5_594|, main_~st~0=v_main_~st~0_587, ~last~0=v_~last~0_454} OutVars{~SIZE~0=v_~SIZE~0_409, main_#t~post5=|v_main_#t~post5_592|, main_~c~0=v_main_~c~0_1085, main_~st~0=v_main_~st~0_586, ~last~0=v_~last~0_454} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {95572#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:02:52,468 INFO L290 TraceCheckUtils]: 14: Hoare triple {95572#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [281] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {95572#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:02:52,468 INFO L290 TraceCheckUtils]: 15: Hoare triple {95572#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [282] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1088 v_main_~c~0_1087)) (.cse1 (= |v_main_#t~post5_597| |v_main_#t~post5_593|))) (or (and (< v_main_~c~0_1087 (+ v_~last~0_455 1)) (< v_main_~c~0_1087 (+ v_~SIZE~0_410 1)) (< v_main_~c~0_1088 v_main_~c~0_1087)) (and .cse0 (= v_~last~0_455 v_~last~0_455) .cse1 (= v_~SIZE~0_410 v_~SIZE~0_410)) (and .cse0 .cse1 (or (not (< v_main_~c~0_1088 v_~SIZE~0_410)) (not (< v_main_~c~0_1088 v_~last~0_455)))))) InVars {~SIZE~0=v_~SIZE~0_410, main_~c~0=v_main_~c~0_1088, main_#t~post5=|v_main_#t~post5_597|, ~last~0=v_~last~0_455} OutVars{~SIZE~0=v_~SIZE~0_410, main_#t~post5=|v_main_#t~post5_593|, main_~c~0=v_main_~c~0_1087, ~last~0=v_~last~0_455} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {95572#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:02:52,469 INFO L290 TraceCheckUtils]: 16: Hoare triple {95572#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [279] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {95573#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:02:52,469 INFO L290 TraceCheckUtils]: 17: Hoare triple {95573#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {95562#false} is VALID [2022-04-28 04:02:52,469 INFO L290 TraceCheckUtils]: 18: Hoare triple {95562#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {95562#false} is VALID [2022-04-28 04:02:52,469 INFO L290 TraceCheckUtils]: 19: Hoare triple {95562#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {95562#false} is VALID [2022-04-28 04:02:52,469 INFO L290 TraceCheckUtils]: 20: Hoare triple {95562#false} assume !(~d~0 == ~SIZE~0); {95562#false} is VALID [2022-04-28 04:02:52,470 INFO L272 TraceCheckUtils]: 21: Hoare triple {95562#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {95562#false} is VALID [2022-04-28 04:02:52,470 INFO L290 TraceCheckUtils]: 22: Hoare triple {95562#false} ~cond := #in~cond; {95562#false} is VALID [2022-04-28 04:02:52,470 INFO L290 TraceCheckUtils]: 23: Hoare triple {95562#false} assume 0 == ~cond; {95562#false} is VALID [2022-04-28 04:02:52,470 INFO L290 TraceCheckUtils]: 24: Hoare triple {95562#false} assume !false; {95562#false} is VALID [2022-04-28 04:02:52,470 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:02:52,470 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:02:52,470 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [591702805] [2022-04-28 04:02:52,470 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [591702805] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:02:52,470 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [685268689] [2022-04-28 04:02:52,470 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:02:52,470 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:02:52,470 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:02:52,471 INFO L229 MonitoredProcess]: Starting monitored process 45 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:02:52,472 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (45)] Waiting until timeout for monitored process [2022-04-28 04:02:52,502 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:02:52,502 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:02:52,508 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:02:52,509 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:02:52,721 INFO L272 TraceCheckUtils]: 0: Hoare triple {95561#true} call ULTIMATE.init(); {95561#true} is VALID [2022-04-28 04:02:52,722 INFO L290 TraceCheckUtils]: 1: Hoare triple {95561#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {95566#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:52,722 INFO L290 TraceCheckUtils]: 2: Hoare triple {95566#(<= 200000 ~SIZE~0)} assume true; {95566#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:52,722 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {95566#(<= 200000 ~SIZE~0)} {95561#true} #90#return; {95566#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:52,723 INFO L272 TraceCheckUtils]: 4: Hoare triple {95566#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {95566#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:52,723 INFO L290 TraceCheckUtils]: 5: Hoare triple {95566#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {95566#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:52,723 INFO L272 TraceCheckUtils]: 6: Hoare triple {95566#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {95566#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:52,724 INFO L290 TraceCheckUtils]: 7: Hoare triple {95566#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {95566#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:52,724 INFO L290 TraceCheckUtils]: 8: Hoare triple {95566#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {95566#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:52,724 INFO L290 TraceCheckUtils]: 9: Hoare triple {95566#(<= 200000 ~SIZE~0)} assume true; {95566#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:52,725 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {95566#(<= 200000 ~SIZE~0)} {95566#(<= 200000 ~SIZE~0)} #86#return; {95566#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:52,725 INFO L290 TraceCheckUtils]: 11: Hoare triple {95566#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {95566#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:02:52,725 INFO L290 TraceCheckUtils]: 12: Hoare triple {95566#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {95614#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:02:52,726 INFO L290 TraceCheckUtils]: 13: Hoare triple {95614#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [280] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= |v_main_#t~post5_594| |v_main_#t~post5_592|)) (.cse0 (<= v_~last~0_454 v_main_~c~0_1086)) (.cse2 (= v_main_~st~0_587 v_main_~st~0_586)) (.cse3 (= v_main_~c~0_1086 v_main_~c~0_1085))) (or (and .cse0 (< v_main_~c~0_1086 v_main_~c~0_1085) (< v_main_~c~0_1085 (+ v_~SIZE~0_409 1)) (= v_main_~st~0_586 0)) (and (= v_~last~0_454 v_~last~0_454) .cse1 (= v_~SIZE~0_409 v_~SIZE~0_409) .cse2 .cse3) (and .cse1 (or (not (< v_main_~c~0_1086 v_~SIZE~0_409)) (not .cse0)) .cse2 .cse3))) InVars {~SIZE~0=v_~SIZE~0_409, main_~c~0=v_main_~c~0_1086, main_#t~post5=|v_main_#t~post5_594|, main_~st~0=v_main_~st~0_587, ~last~0=v_~last~0_454} OutVars{~SIZE~0=v_~SIZE~0_409, main_#t~post5=|v_main_#t~post5_592|, main_~c~0=v_main_~c~0_1085, main_~st~0=v_main_~st~0_586, ~last~0=v_~last~0_454} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {95618#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:02:52,726 INFO L290 TraceCheckUtils]: 14: Hoare triple {95618#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [281] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {95618#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:02:52,727 INFO L290 TraceCheckUtils]: 15: Hoare triple {95618#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [282] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1088 v_main_~c~0_1087)) (.cse1 (= |v_main_#t~post5_597| |v_main_#t~post5_593|))) (or (and (< v_main_~c~0_1087 (+ v_~last~0_455 1)) (< v_main_~c~0_1087 (+ v_~SIZE~0_410 1)) (< v_main_~c~0_1088 v_main_~c~0_1087)) (and .cse0 (= v_~last~0_455 v_~last~0_455) .cse1 (= v_~SIZE~0_410 v_~SIZE~0_410)) (and .cse0 .cse1 (or (not (< v_main_~c~0_1088 v_~SIZE~0_410)) (not (< v_main_~c~0_1088 v_~last~0_455)))))) InVars {~SIZE~0=v_~SIZE~0_410, main_~c~0=v_main_~c~0_1088, main_#t~post5=|v_main_#t~post5_597|, ~last~0=v_~last~0_455} OutVars{~SIZE~0=v_~SIZE~0_410, main_#t~post5=|v_main_#t~post5_593|, main_~c~0=v_main_~c~0_1087, ~last~0=v_~last~0_455} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {95618#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:02:52,727 INFO L290 TraceCheckUtils]: 16: Hoare triple {95618#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [279] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {95628#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:02:52,728 INFO L290 TraceCheckUtils]: 17: Hoare triple {95628#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {95562#false} is VALID [2022-04-28 04:02:52,728 INFO L290 TraceCheckUtils]: 18: Hoare triple {95562#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {95562#false} is VALID [2022-04-28 04:02:52,728 INFO L290 TraceCheckUtils]: 19: Hoare triple {95562#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {95562#false} is VALID [2022-04-28 04:02:52,728 INFO L290 TraceCheckUtils]: 20: Hoare triple {95562#false} assume !(~d~0 == ~SIZE~0); {95562#false} is VALID [2022-04-28 04:02:52,728 INFO L272 TraceCheckUtils]: 21: Hoare triple {95562#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {95562#false} is VALID [2022-04-28 04:02:52,728 INFO L290 TraceCheckUtils]: 22: Hoare triple {95562#false} ~cond := #in~cond; {95562#false} is VALID [2022-04-28 04:02:52,728 INFO L290 TraceCheckUtils]: 23: Hoare triple {95562#false} assume 0 == ~cond; {95562#false} is VALID [2022-04-28 04:02:52,728 INFO L290 TraceCheckUtils]: 24: Hoare triple {95562#false} assume !false; {95562#false} is VALID [2022-04-28 04:02:52,728 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:02:52,728 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:02:53,038 INFO L290 TraceCheckUtils]: 24: Hoare triple {95562#false} assume !false; {95562#false} is VALID [2022-04-28 04:02:53,038 INFO L290 TraceCheckUtils]: 23: Hoare triple {95562#false} assume 0 == ~cond; {95562#false} is VALID [2022-04-28 04:02:53,038 INFO L290 TraceCheckUtils]: 22: Hoare triple {95562#false} ~cond := #in~cond; {95562#false} is VALID [2022-04-28 04:02:53,038 INFO L272 TraceCheckUtils]: 21: Hoare triple {95562#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {95562#false} is VALID [2022-04-28 04:02:53,038 INFO L290 TraceCheckUtils]: 20: Hoare triple {95562#false} assume !(~d~0 == ~SIZE~0); {95562#false} is VALID [2022-04-28 04:02:53,038 INFO L290 TraceCheckUtils]: 19: Hoare triple {95562#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {95562#false} is VALID [2022-04-28 04:02:53,038 INFO L290 TraceCheckUtils]: 18: Hoare triple {95562#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {95562#false} is VALID [2022-04-28 04:02:53,039 INFO L290 TraceCheckUtils]: 17: Hoare triple {95674#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {95562#false} is VALID [2022-04-28 04:02:53,039 INFO L290 TraceCheckUtils]: 16: Hoare triple {95678#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [279] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {95674#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:02:53,039 INFO L290 TraceCheckUtils]: 15: Hoare triple {95678#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [282] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1088 v_main_~c~0_1087)) (.cse1 (= |v_main_#t~post5_597| |v_main_#t~post5_593|))) (or (and (< v_main_~c~0_1087 (+ v_~last~0_455 1)) (< v_main_~c~0_1087 (+ v_~SIZE~0_410 1)) (< v_main_~c~0_1088 v_main_~c~0_1087)) (and .cse0 (= v_~last~0_455 v_~last~0_455) .cse1 (= v_~SIZE~0_410 v_~SIZE~0_410)) (and .cse0 .cse1 (or (not (< v_main_~c~0_1088 v_~SIZE~0_410)) (not (< v_main_~c~0_1088 v_~last~0_455)))))) InVars {~SIZE~0=v_~SIZE~0_410, main_~c~0=v_main_~c~0_1088, main_#t~post5=|v_main_#t~post5_597|, ~last~0=v_~last~0_455} OutVars{~SIZE~0=v_~SIZE~0_410, main_#t~post5=|v_main_#t~post5_593|, main_~c~0=v_main_~c~0_1087, ~last~0=v_~last~0_455} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {95678#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:02:53,040 INFO L290 TraceCheckUtils]: 14: Hoare triple {95678#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [281] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {95678#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:02:53,041 INFO L290 TraceCheckUtils]: 13: Hoare triple {95688#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [280] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= |v_main_#t~post5_594| |v_main_#t~post5_592|)) (.cse0 (<= v_~last~0_454 v_main_~c~0_1086)) (.cse2 (= v_main_~st~0_587 v_main_~st~0_586)) (.cse3 (= v_main_~c~0_1086 v_main_~c~0_1085))) (or (and .cse0 (< v_main_~c~0_1086 v_main_~c~0_1085) (< v_main_~c~0_1085 (+ v_~SIZE~0_409 1)) (= v_main_~st~0_586 0)) (and (= v_~last~0_454 v_~last~0_454) .cse1 (= v_~SIZE~0_409 v_~SIZE~0_409) .cse2 .cse3) (and .cse1 (or (not (< v_main_~c~0_1086 v_~SIZE~0_409)) (not .cse0)) .cse2 .cse3))) InVars {~SIZE~0=v_~SIZE~0_409, main_~c~0=v_main_~c~0_1086, main_#t~post5=|v_main_#t~post5_594|, main_~st~0=v_main_~st~0_587, ~last~0=v_~last~0_454} OutVars{~SIZE~0=v_~SIZE~0_409, main_#t~post5=|v_main_#t~post5_592|, main_~c~0=v_main_~c~0_1085, main_~st~0=v_main_~st~0_586, ~last~0=v_~last~0_454} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {95678#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:02:53,041 INFO L290 TraceCheckUtils]: 12: Hoare triple {95692#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {95688#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:02:53,041 INFO L290 TraceCheckUtils]: 11: Hoare triple {95692#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {95692#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:53,042 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {95561#true} {95692#(< 1 ~SIZE~0)} #86#return; {95692#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:53,042 INFO L290 TraceCheckUtils]: 9: Hoare triple {95561#true} assume true; {95561#true} is VALID [2022-04-28 04:02:53,042 INFO L290 TraceCheckUtils]: 8: Hoare triple {95561#true} assume !(0 == ~cond); {95561#true} is VALID [2022-04-28 04:02:53,042 INFO L290 TraceCheckUtils]: 7: Hoare triple {95561#true} ~cond := #in~cond; {95561#true} is VALID [2022-04-28 04:02:53,042 INFO L272 TraceCheckUtils]: 6: Hoare triple {95692#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {95561#true} is VALID [2022-04-28 04:02:53,042 INFO L290 TraceCheckUtils]: 5: Hoare triple {95692#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {95692#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:53,042 INFO L272 TraceCheckUtils]: 4: Hoare triple {95692#(< 1 ~SIZE~0)} call #t~ret7 := main(); {95692#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:53,043 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {95692#(< 1 ~SIZE~0)} {95561#true} #90#return; {95692#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:53,043 INFO L290 TraceCheckUtils]: 2: Hoare triple {95692#(< 1 ~SIZE~0)} assume true; {95692#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:53,043 INFO L290 TraceCheckUtils]: 1: Hoare triple {95561#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {95692#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:02:53,043 INFO L272 TraceCheckUtils]: 0: Hoare triple {95561#true} call ULTIMATE.init(); {95561#true} is VALID [2022-04-28 04:02:53,044 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:02:53,044 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [685268689] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:02:53,044 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:02:53,044 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:02:53,650 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:02:53,650 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [413750006] [2022-04-28 04:02:53,650 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [413750006] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:02:53,650 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:02:53,650 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [23] imperfect sequences [] total 23 [2022-04-28 04:02:53,650 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1418027459] [2022-04-28 04:02:53,650 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:02:53,651 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 23 states have (on average 2.0) internal successors, (46), 22 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 52 [2022-04-28 04:02:53,651 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:02:53,651 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 23 states, 23 states have (on average 2.0) internal successors, (46), 22 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:02:53,684 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:02:53,684 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 23 states [2022-04-28 04:02:53,684 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:02:53,684 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2022-04-28 04:02:53,685 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=212, Invalid=780, Unknown=0, NotChecked=0, Total=992 [2022-04-28 04:02:53,685 INFO L87 Difference]: Start difference. First operand 316 states and 378 transitions. Second operand has 23 states, 23 states have (on average 2.0) internal successors, (46), 22 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:02:57,297 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:02:57,297 INFO L93 Difference]: Finished difference Result 616 states and 733 transitions. [2022-04-28 04:02:57,297 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2022-04-28 04:02:57,297 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 23 states have (on average 2.0) internal successors, (46), 22 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 52 [2022-04-28 04:02:57,297 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:02:57,297 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 23 states have (on average 2.0) internal successors, (46), 22 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:02:57,298 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 105 transitions. [2022-04-28 04:02:57,298 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 23 states have (on average 2.0) internal successors, (46), 22 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:02:57,299 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 105 transitions. [2022-04-28 04:02:57,299 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 23 states and 105 transitions. [2022-04-28 04:02:57,366 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 105 edges. 105 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:02:57,371 INFO L225 Difference]: With dead ends: 616 [2022-04-28 04:02:57,371 INFO L226 Difference]: Without dead ends: 373 [2022-04-28 04:02:57,372 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 100 GetRequests, 54 SyntacticMatches, 13 SemanticMatches, 33 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 748 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=249, Invalid=941, Unknown=0, NotChecked=0, Total=1190 [2022-04-28 04:02:57,372 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 63 mSDsluCounter, 26 mSDsCounter, 0 mSdLazyCounter, 1186 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 64 SdHoareTripleChecker+Valid, 50 SdHoareTripleChecker+Invalid, 1203 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 1186 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-28 04:02:57,372 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [64 Valid, 50 Invalid, 1203 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 1186 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-04-28 04:02:57,372 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 373 states. [2022-04-28 04:02:58,891 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 373 to 316. [2022-04-28 04:02:58,891 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:02:58,891 INFO L82 GeneralOperation]: Start isEquivalent. First operand 373 states. Second operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:02:58,892 INFO L74 IsIncluded]: Start isIncluded. First operand 373 states. Second operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:02:58,892 INFO L87 Difference]: Start difference. First operand 373 states. Second operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:02:58,896 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:02:58,896 INFO L93 Difference]: Finished difference Result 373 states and 439 transitions. [2022-04-28 04:02:58,896 INFO L276 IsEmpty]: Start isEmpty. Operand 373 states and 439 transitions. [2022-04-28 04:02:58,897 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:02:58,897 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:02:58,897 INFO L74 IsIncluded]: Start isIncluded. First operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 373 states. [2022-04-28 04:02:58,897 INFO L87 Difference]: Start difference. First operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 373 states. [2022-04-28 04:02:58,902 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:02:58,902 INFO L93 Difference]: Finished difference Result 373 states and 439 transitions. [2022-04-28 04:02:58,902 INFO L276 IsEmpty]: Start isEmpty. Operand 373 states and 439 transitions. [2022-04-28 04:02:58,902 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:02:58,902 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:02:58,902 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:02:58,902 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:02:58,902 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:02:58,906 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 316 states to 316 states and 378 transitions. [2022-04-28 04:02:58,907 INFO L78 Accepts]: Start accepts. Automaton has 316 states and 378 transitions. Word has length 52 [2022-04-28 04:02:58,907 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:02:58,907 INFO L495 AbstractCegarLoop]: Abstraction has 316 states and 378 transitions. [2022-04-28 04:02:58,907 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 23 states, 23 states have (on average 2.0) internal successors, (46), 22 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:02:58,907 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 316 states and 378 transitions. [2022-04-28 04:03:00,094 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 378 edges. 378 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:03:00,095 INFO L276 IsEmpty]: Start isEmpty. Operand 316 states and 378 transitions. [2022-04-28 04:03:00,095 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2022-04-28 04:03:00,095 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:03:00,095 INFO L195 NwaCegarLoop]: trace histogram [10, 10, 6, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:03:00,111 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (45)] Forceful destruction successful, exit code 0 [2022-04-28 04:03:00,295 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable52,45 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:03:00,296 INFO L420 AbstractCegarLoop]: === Iteration 54 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:03:00,296 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:03:00,296 INFO L85 PathProgramCache]: Analyzing trace with hash -247350402, now seen corresponding path program 42 times [2022-04-28 04:03:00,296 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:03:00,296 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1935189118] [2022-04-28 04:03:00,494 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:03:04,614 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:03:04,721 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:03:04,723 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:03:04,726 INFO L85 PathProgramCache]: Analyzing trace with hash 693425345, now seen corresponding path program 1 times [2022-04-28 04:03:04,726 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:03:04,726 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1429235381] [2022-04-28 04:03:04,726 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:03:04,726 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:03:04,733 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:03:04,779 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:03:04,781 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:03:04,784 INFO L290 TraceCheckUtils]: 0: Hoare triple {98379#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {98371#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:04,785 INFO L290 TraceCheckUtils]: 1: Hoare triple {98371#(<= 200000 ~SIZE~0)} assume true; {98371#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:04,785 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {98371#(<= 200000 ~SIZE~0)} {98366#true} #90#return; {98371#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:04,785 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:03:04,786 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:03:04,787 INFO L290 TraceCheckUtils]: 0: Hoare triple {98366#true} ~cond := #in~cond; {98366#true} is VALID [2022-04-28 04:03:04,787 INFO L290 TraceCheckUtils]: 1: Hoare triple {98366#true} assume !(0 == ~cond); {98366#true} is VALID [2022-04-28 04:03:04,787 INFO L290 TraceCheckUtils]: 2: Hoare triple {98366#true} assume true; {98366#true} is VALID [2022-04-28 04:03:04,788 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {98366#true} {98371#(<= 200000 ~SIZE~0)} #86#return; {98371#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:04,788 INFO L272 TraceCheckUtils]: 0: Hoare triple {98366#true} call ULTIMATE.init(); {98379#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:03:04,789 INFO L290 TraceCheckUtils]: 1: Hoare triple {98379#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {98371#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:04,789 INFO L290 TraceCheckUtils]: 2: Hoare triple {98371#(<= 200000 ~SIZE~0)} assume true; {98371#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:04,790 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {98371#(<= 200000 ~SIZE~0)} {98366#true} #90#return; {98371#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:04,790 INFO L272 TraceCheckUtils]: 4: Hoare triple {98371#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {98371#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:04,790 INFO L290 TraceCheckUtils]: 5: Hoare triple {98371#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {98371#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:04,790 INFO L272 TraceCheckUtils]: 6: Hoare triple {98371#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {98366#true} is VALID [2022-04-28 04:03:04,790 INFO L290 TraceCheckUtils]: 7: Hoare triple {98366#true} ~cond := #in~cond; {98366#true} is VALID [2022-04-28 04:03:04,791 INFO L290 TraceCheckUtils]: 8: Hoare triple {98366#true} assume !(0 == ~cond); {98366#true} is VALID [2022-04-28 04:03:04,791 INFO L290 TraceCheckUtils]: 9: Hoare triple {98366#true} assume true; {98366#true} is VALID [2022-04-28 04:03:04,791 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {98366#true} {98371#(<= 200000 ~SIZE~0)} #86#return; {98371#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:04,791 INFO L290 TraceCheckUtils]: 11: Hoare triple {98371#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {98371#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:04,792 INFO L290 TraceCheckUtils]: 12: Hoare triple {98371#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {98376#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:03:04,792 INFO L290 TraceCheckUtils]: 13: Hoare triple {98376#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [284] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~c~0_1113 v_main_~c~0_1112)) (.cse0 (<= v_~last~0_464 v_main_~c~0_1113)) (.cse2 (= |v_main_#t~post5_607| |v_main_#t~post5_605|)) (.cse3 (= v_main_~st~0_601 v_main_~st~0_600))) (or (and (< v_main_~c~0_1113 v_main_~c~0_1112) .cse0 (< v_main_~c~0_1112 (+ v_~SIZE~0_418 1)) (= v_main_~st~0_600 0)) (and .cse1 (= v_~SIZE~0_418 v_~SIZE~0_418) .cse2 (= v_~last~0_464 v_~last~0_464) .cse3) (and .cse1 (or (not .cse0) (not (< v_main_~c~0_1113 v_~SIZE~0_418))) .cse2 .cse3))) InVars {~SIZE~0=v_~SIZE~0_418, main_~c~0=v_main_~c~0_1113, main_#t~post5=|v_main_#t~post5_607|, main_~st~0=v_main_~st~0_601, ~last~0=v_~last~0_464} OutVars{~SIZE~0=v_~SIZE~0_418, main_#t~post5=|v_main_#t~post5_605|, main_~c~0=v_main_~c~0_1112, main_~st~0=v_main_~st~0_600, ~last~0=v_~last~0_464} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {98377#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:03:04,793 INFO L290 TraceCheckUtils]: 14: Hoare triple {98377#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [285] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {98377#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:03:04,793 INFO L290 TraceCheckUtils]: 15: Hoare triple {98377#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [286] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1115 v_main_~c~0_1114))) (or (and (= |v_main_#t~post5_610| |v_main_#t~post5_606|) .cse0 (= v_~SIZE~0_419 v_~SIZE~0_419) (= v_~last~0_465 v_~last~0_465)) (and (< v_main_~c~0_1114 (+ v_~SIZE~0_419 1)) (< v_main_~c~0_1114 (+ v_~last~0_465 1)) (< v_main_~c~0_1115 v_main_~c~0_1114)) (and (or (not (< v_main_~c~0_1115 v_~SIZE~0_419)) (not (< v_main_~c~0_1115 v_~last~0_465))) .cse0 (= |v_main_#t~post5_606| |v_main_#t~post5_610|)))) InVars {~SIZE~0=v_~SIZE~0_419, main_~c~0=v_main_~c~0_1115, main_#t~post5=|v_main_#t~post5_610|, ~last~0=v_~last~0_465} OutVars{~SIZE~0=v_~SIZE~0_419, main_#t~post5=|v_main_#t~post5_606|, main_~c~0=v_main_~c~0_1114, ~last~0=v_~last~0_465} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {98377#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:03:04,794 INFO L290 TraceCheckUtils]: 16: Hoare triple {98377#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [283] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {98378#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:03:04,794 INFO L290 TraceCheckUtils]: 17: Hoare triple {98378#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {98367#false} is VALID [2022-04-28 04:03:04,794 INFO L290 TraceCheckUtils]: 18: Hoare triple {98367#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {98367#false} is VALID [2022-04-28 04:03:04,794 INFO L290 TraceCheckUtils]: 19: Hoare triple {98367#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {98367#false} is VALID [2022-04-28 04:03:04,795 INFO L290 TraceCheckUtils]: 20: Hoare triple {98367#false} assume !(~d~0 == ~SIZE~0); {98367#false} is VALID [2022-04-28 04:03:04,795 INFO L272 TraceCheckUtils]: 21: Hoare triple {98367#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {98367#false} is VALID [2022-04-28 04:03:04,795 INFO L290 TraceCheckUtils]: 22: Hoare triple {98367#false} ~cond := #in~cond; {98367#false} is VALID [2022-04-28 04:03:04,795 INFO L290 TraceCheckUtils]: 23: Hoare triple {98367#false} assume 0 == ~cond; {98367#false} is VALID [2022-04-28 04:03:04,795 INFO L290 TraceCheckUtils]: 24: Hoare triple {98367#false} assume !false; {98367#false} is VALID [2022-04-28 04:03:04,795 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:03:04,795 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:03:04,795 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1429235381] [2022-04-28 04:03:04,795 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1429235381] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:03:04,795 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [391612086] [2022-04-28 04:03:04,795 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:03:04,795 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:03:04,796 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:03:04,796 INFO L229 MonitoredProcess]: Starting monitored process 46 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:03:04,797 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (46)] Waiting until timeout for monitored process [2022-04-28 04:03:04,826 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:03:04,826 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:03:04,832 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:03:04,833 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:03:05,073 INFO L272 TraceCheckUtils]: 0: Hoare triple {98366#true} call ULTIMATE.init(); {98366#true} is VALID [2022-04-28 04:03:05,074 INFO L290 TraceCheckUtils]: 1: Hoare triple {98366#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {98371#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:05,074 INFO L290 TraceCheckUtils]: 2: Hoare triple {98371#(<= 200000 ~SIZE~0)} assume true; {98371#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:05,074 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {98371#(<= 200000 ~SIZE~0)} {98366#true} #90#return; {98371#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:05,074 INFO L272 TraceCheckUtils]: 4: Hoare triple {98371#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {98371#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:05,075 INFO L290 TraceCheckUtils]: 5: Hoare triple {98371#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {98371#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:05,075 INFO L272 TraceCheckUtils]: 6: Hoare triple {98371#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {98371#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:05,075 INFO L290 TraceCheckUtils]: 7: Hoare triple {98371#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {98371#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:05,076 INFO L290 TraceCheckUtils]: 8: Hoare triple {98371#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {98371#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:05,076 INFO L290 TraceCheckUtils]: 9: Hoare triple {98371#(<= 200000 ~SIZE~0)} assume true; {98371#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:05,076 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {98371#(<= 200000 ~SIZE~0)} {98371#(<= 200000 ~SIZE~0)} #86#return; {98371#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:05,076 INFO L290 TraceCheckUtils]: 11: Hoare triple {98371#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {98371#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:05,077 INFO L290 TraceCheckUtils]: 12: Hoare triple {98371#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {98419#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:03:05,077 INFO L290 TraceCheckUtils]: 13: Hoare triple {98419#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [284] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~c~0_1113 v_main_~c~0_1112)) (.cse0 (<= v_~last~0_464 v_main_~c~0_1113)) (.cse2 (= |v_main_#t~post5_607| |v_main_#t~post5_605|)) (.cse3 (= v_main_~st~0_601 v_main_~st~0_600))) (or (and (< v_main_~c~0_1113 v_main_~c~0_1112) .cse0 (< v_main_~c~0_1112 (+ v_~SIZE~0_418 1)) (= v_main_~st~0_600 0)) (and .cse1 (= v_~SIZE~0_418 v_~SIZE~0_418) .cse2 (= v_~last~0_464 v_~last~0_464) .cse3) (and .cse1 (or (not .cse0) (not (< v_main_~c~0_1113 v_~SIZE~0_418))) .cse2 .cse3))) InVars {~SIZE~0=v_~SIZE~0_418, main_~c~0=v_main_~c~0_1113, main_#t~post5=|v_main_#t~post5_607|, main_~st~0=v_main_~st~0_601, ~last~0=v_~last~0_464} OutVars{~SIZE~0=v_~SIZE~0_418, main_#t~post5=|v_main_#t~post5_605|, main_~c~0=v_main_~c~0_1112, main_~st~0=v_main_~st~0_600, ~last~0=v_~last~0_464} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {98423#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:03:05,078 INFO L290 TraceCheckUtils]: 14: Hoare triple {98423#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [285] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {98423#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:03:05,079 INFO L290 TraceCheckUtils]: 15: Hoare triple {98423#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [286] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1115 v_main_~c~0_1114))) (or (and (= |v_main_#t~post5_610| |v_main_#t~post5_606|) .cse0 (= v_~SIZE~0_419 v_~SIZE~0_419) (= v_~last~0_465 v_~last~0_465)) (and (< v_main_~c~0_1114 (+ v_~SIZE~0_419 1)) (< v_main_~c~0_1114 (+ v_~last~0_465 1)) (< v_main_~c~0_1115 v_main_~c~0_1114)) (and (or (not (< v_main_~c~0_1115 v_~SIZE~0_419)) (not (< v_main_~c~0_1115 v_~last~0_465))) .cse0 (= |v_main_#t~post5_606| |v_main_#t~post5_610|)))) InVars {~SIZE~0=v_~SIZE~0_419, main_~c~0=v_main_~c~0_1115, main_#t~post5=|v_main_#t~post5_610|, ~last~0=v_~last~0_465} OutVars{~SIZE~0=v_~SIZE~0_419, main_#t~post5=|v_main_#t~post5_606|, main_~c~0=v_main_~c~0_1114, ~last~0=v_~last~0_465} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {98423#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:03:05,079 INFO L290 TraceCheckUtils]: 16: Hoare triple {98423#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [283] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {98433#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:03:05,079 INFO L290 TraceCheckUtils]: 17: Hoare triple {98433#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {98367#false} is VALID [2022-04-28 04:03:05,080 INFO L290 TraceCheckUtils]: 18: Hoare triple {98367#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {98367#false} is VALID [2022-04-28 04:03:05,080 INFO L290 TraceCheckUtils]: 19: Hoare triple {98367#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {98367#false} is VALID [2022-04-28 04:03:05,080 INFO L290 TraceCheckUtils]: 20: Hoare triple {98367#false} assume !(~d~0 == ~SIZE~0); {98367#false} is VALID [2022-04-28 04:03:05,080 INFO L272 TraceCheckUtils]: 21: Hoare triple {98367#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {98367#false} is VALID [2022-04-28 04:03:05,080 INFO L290 TraceCheckUtils]: 22: Hoare triple {98367#false} ~cond := #in~cond; {98367#false} is VALID [2022-04-28 04:03:05,080 INFO L290 TraceCheckUtils]: 23: Hoare triple {98367#false} assume 0 == ~cond; {98367#false} is VALID [2022-04-28 04:03:05,080 INFO L290 TraceCheckUtils]: 24: Hoare triple {98367#false} assume !false; {98367#false} is VALID [2022-04-28 04:03:05,080 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:03:05,080 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:03:05,371 INFO L290 TraceCheckUtils]: 24: Hoare triple {98367#false} assume !false; {98367#false} is VALID [2022-04-28 04:03:05,371 INFO L290 TraceCheckUtils]: 23: Hoare triple {98367#false} assume 0 == ~cond; {98367#false} is VALID [2022-04-28 04:03:05,371 INFO L290 TraceCheckUtils]: 22: Hoare triple {98367#false} ~cond := #in~cond; {98367#false} is VALID [2022-04-28 04:03:05,371 INFO L272 TraceCheckUtils]: 21: Hoare triple {98367#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {98367#false} is VALID [2022-04-28 04:03:05,371 INFO L290 TraceCheckUtils]: 20: Hoare triple {98367#false} assume !(~d~0 == ~SIZE~0); {98367#false} is VALID [2022-04-28 04:03:05,371 INFO L290 TraceCheckUtils]: 19: Hoare triple {98367#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {98367#false} is VALID [2022-04-28 04:03:05,371 INFO L290 TraceCheckUtils]: 18: Hoare triple {98367#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {98367#false} is VALID [2022-04-28 04:03:05,371 INFO L290 TraceCheckUtils]: 17: Hoare triple {98479#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {98367#false} is VALID [2022-04-28 04:03:05,372 INFO L290 TraceCheckUtils]: 16: Hoare triple {98483#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [283] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {98479#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:03:05,372 INFO L290 TraceCheckUtils]: 15: Hoare triple {98483#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [286] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1115 v_main_~c~0_1114))) (or (and (= |v_main_#t~post5_610| |v_main_#t~post5_606|) .cse0 (= v_~SIZE~0_419 v_~SIZE~0_419) (= v_~last~0_465 v_~last~0_465)) (and (< v_main_~c~0_1114 (+ v_~SIZE~0_419 1)) (< v_main_~c~0_1114 (+ v_~last~0_465 1)) (< v_main_~c~0_1115 v_main_~c~0_1114)) (and (or (not (< v_main_~c~0_1115 v_~SIZE~0_419)) (not (< v_main_~c~0_1115 v_~last~0_465))) .cse0 (= |v_main_#t~post5_606| |v_main_#t~post5_610|)))) InVars {~SIZE~0=v_~SIZE~0_419, main_~c~0=v_main_~c~0_1115, main_#t~post5=|v_main_#t~post5_610|, ~last~0=v_~last~0_465} OutVars{~SIZE~0=v_~SIZE~0_419, main_#t~post5=|v_main_#t~post5_606|, main_~c~0=v_main_~c~0_1114, ~last~0=v_~last~0_465} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {98483#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:03:05,373 INFO L290 TraceCheckUtils]: 14: Hoare triple {98483#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [285] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {98483#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:03:05,373 INFO L290 TraceCheckUtils]: 13: Hoare triple {98493#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [284] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~c~0_1113 v_main_~c~0_1112)) (.cse0 (<= v_~last~0_464 v_main_~c~0_1113)) (.cse2 (= |v_main_#t~post5_607| |v_main_#t~post5_605|)) (.cse3 (= v_main_~st~0_601 v_main_~st~0_600))) (or (and (< v_main_~c~0_1113 v_main_~c~0_1112) .cse0 (< v_main_~c~0_1112 (+ v_~SIZE~0_418 1)) (= v_main_~st~0_600 0)) (and .cse1 (= v_~SIZE~0_418 v_~SIZE~0_418) .cse2 (= v_~last~0_464 v_~last~0_464) .cse3) (and .cse1 (or (not .cse0) (not (< v_main_~c~0_1113 v_~SIZE~0_418))) .cse2 .cse3))) InVars {~SIZE~0=v_~SIZE~0_418, main_~c~0=v_main_~c~0_1113, main_#t~post5=|v_main_#t~post5_607|, main_~st~0=v_main_~st~0_601, ~last~0=v_~last~0_464} OutVars{~SIZE~0=v_~SIZE~0_418, main_#t~post5=|v_main_#t~post5_605|, main_~c~0=v_main_~c~0_1112, main_~st~0=v_main_~st~0_600, ~last~0=v_~last~0_464} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {98483#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:03:05,374 INFO L290 TraceCheckUtils]: 12: Hoare triple {98497#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {98493#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:03:05,374 INFO L290 TraceCheckUtils]: 11: Hoare triple {98497#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {98497#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:05,374 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {98366#true} {98497#(< 1 ~SIZE~0)} #86#return; {98497#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:05,374 INFO L290 TraceCheckUtils]: 9: Hoare triple {98366#true} assume true; {98366#true} is VALID [2022-04-28 04:03:05,375 INFO L290 TraceCheckUtils]: 8: Hoare triple {98366#true} assume !(0 == ~cond); {98366#true} is VALID [2022-04-28 04:03:05,375 INFO L290 TraceCheckUtils]: 7: Hoare triple {98366#true} ~cond := #in~cond; {98366#true} is VALID [2022-04-28 04:03:05,375 INFO L272 TraceCheckUtils]: 6: Hoare triple {98497#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {98366#true} is VALID [2022-04-28 04:03:05,375 INFO L290 TraceCheckUtils]: 5: Hoare triple {98497#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {98497#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:05,375 INFO L272 TraceCheckUtils]: 4: Hoare triple {98497#(< 1 ~SIZE~0)} call #t~ret7 := main(); {98497#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:05,376 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {98497#(< 1 ~SIZE~0)} {98366#true} #90#return; {98497#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:05,376 INFO L290 TraceCheckUtils]: 2: Hoare triple {98497#(< 1 ~SIZE~0)} assume true; {98497#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:05,376 INFO L290 TraceCheckUtils]: 1: Hoare triple {98366#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {98497#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:05,376 INFO L272 TraceCheckUtils]: 0: Hoare triple {98366#true} call ULTIMATE.init(); {98366#true} is VALID [2022-04-28 04:03:05,376 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:03:05,377 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [391612086] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:03:05,377 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:03:05,377 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:03:06,016 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:03:06,016 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1935189118] [2022-04-28 04:03:06,016 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1935189118] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:03:06,016 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:03:06,016 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [24] imperfect sequences [] total 24 [2022-04-28 04:03:06,016 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [25287952] [2022-04-28 04:03:06,016 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:03:06,017 INFO L78 Accepts]: Start accepts. Automaton has has 24 states, 24 states have (on average 1.9166666666666667) internal successors, (46), 23 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 52 [2022-04-28 04:03:06,017 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:03:06,017 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 24 states, 24 states have (on average 1.9166666666666667) internal successors, (46), 23 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:03:06,055 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:03:06,055 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 24 states [2022-04-28 04:03:06,055 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:03:06,055 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 24 interpolants. [2022-04-28 04:03:06,055 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=227, Invalid=829, Unknown=0, NotChecked=0, Total=1056 [2022-04-28 04:03:06,055 INFO L87 Difference]: Start difference. First operand 316 states and 378 transitions. Second operand has 24 states, 24 states have (on average 1.9166666666666667) internal successors, (46), 23 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:03:09,601 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:03:09,601 INFO L93 Difference]: Finished difference Result 607 states and 724 transitions. [2022-04-28 04:03:09,601 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2022-04-28 04:03:09,601 INFO L78 Accepts]: Start accepts. Automaton has has 24 states, 24 states have (on average 1.9166666666666667) internal successors, (46), 23 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 52 [2022-04-28 04:03:09,601 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:03:09,601 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 24 states, 24 states have (on average 1.9166666666666667) internal successors, (46), 23 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:03:09,602 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 106 transitions. [2022-04-28 04:03:09,602 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 24 states, 24 states have (on average 1.9166666666666667) internal successors, (46), 23 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:03:09,602 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 106 transitions. [2022-04-28 04:03:09,602 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 24 states and 106 transitions. [2022-04-28 04:03:09,669 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 106 edges. 106 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:03:09,674 INFO L225 Difference]: With dead ends: 607 [2022-04-28 04:03:09,674 INFO L226 Difference]: Without dead ends: 364 [2022-04-28 04:03:09,674 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 100 GetRequests, 54 SyntacticMatches, 12 SemanticMatches, 34 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 756 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=266, Invalid=994, Unknown=0, NotChecked=0, Total=1260 [2022-04-28 04:03:09,675 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 66 mSDsluCounter, 23 mSDsCounter, 0 mSdLazyCounter, 1193 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 67 SdHoareTripleChecker+Valid, 47 SdHoareTripleChecker+Invalid, 1211 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 1193 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-28 04:03:09,675 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [67 Valid, 47 Invalid, 1211 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 1193 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-04-28 04:03:09,675 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 364 states. [2022-04-28 04:03:11,206 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 364 to 316. [2022-04-28 04:03:11,206 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:03:11,207 INFO L82 GeneralOperation]: Start isEquivalent. First operand 364 states. Second operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:03:11,207 INFO L74 IsIncluded]: Start isIncluded. First operand 364 states. Second operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:03:11,207 INFO L87 Difference]: Start difference. First operand 364 states. Second operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:03:11,211 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:03:11,211 INFO L93 Difference]: Finished difference Result 364 states and 430 transitions. [2022-04-28 04:03:11,212 INFO L276 IsEmpty]: Start isEmpty. Operand 364 states and 430 transitions. [2022-04-28 04:03:11,212 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:03:11,212 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:03:11,212 INFO L74 IsIncluded]: Start isIncluded. First operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 364 states. [2022-04-28 04:03:11,212 INFO L87 Difference]: Start difference. First operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 364 states. [2022-04-28 04:03:11,217 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:03:11,217 INFO L93 Difference]: Finished difference Result 364 states and 430 transitions. [2022-04-28 04:03:11,217 INFO L276 IsEmpty]: Start isEmpty. Operand 364 states and 430 transitions. [2022-04-28 04:03:11,217 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:03:11,217 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:03:11,217 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:03:11,217 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:03:11,217 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:03:11,221 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 316 states to 316 states and 378 transitions. [2022-04-28 04:03:11,222 INFO L78 Accepts]: Start accepts. Automaton has 316 states and 378 transitions. Word has length 52 [2022-04-28 04:03:11,222 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:03:11,222 INFO L495 AbstractCegarLoop]: Abstraction has 316 states and 378 transitions. [2022-04-28 04:03:11,222 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 24 states, 24 states have (on average 1.9166666666666667) internal successors, (46), 23 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:03:11,222 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 316 states and 378 transitions. [2022-04-28 04:03:12,442 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 378 edges. 378 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:03:12,442 INFO L276 IsEmpty]: Start isEmpty. Operand 316 states and 378 transitions. [2022-04-28 04:03:12,442 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2022-04-28 04:03:12,442 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:03:12,442 INFO L195 NwaCegarLoop]: trace histogram [10, 10, 7, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:03:12,460 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (46)] Forceful destruction successful, exit code 0 [2022-04-28 04:03:12,642 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 46 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable53 [2022-04-28 04:03:12,643 INFO L420 AbstractCegarLoop]: === Iteration 55 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:03:12,643 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:03:12,643 INFO L85 PathProgramCache]: Analyzing trace with hash -1064998852, now seen corresponding path program 43 times [2022-04-28 04:03:12,643 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:03:12,643 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [542101750] [2022-04-28 04:03:16,762 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:03:16,880 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:03:17,077 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:03:17,078 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:03:17,081 INFO L85 PathProgramCache]: Analyzing trace with hash -1109019199, now seen corresponding path program 1 times [2022-04-28 04:03:17,081 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:03:17,081 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [263195143] [2022-04-28 04:03:17,081 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:03:17,081 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:03:17,088 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:03:17,135 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:03:17,136 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:03:17,139 INFO L290 TraceCheckUtils]: 0: Hoare triple {101149#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {101141#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:17,140 INFO L290 TraceCheckUtils]: 1: Hoare triple {101141#(<= 200000 ~SIZE~0)} assume true; {101141#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:17,140 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {101141#(<= 200000 ~SIZE~0)} {101136#true} #90#return; {101141#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:17,140 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:03:17,141 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:03:17,143 INFO L290 TraceCheckUtils]: 0: Hoare triple {101136#true} ~cond := #in~cond; {101136#true} is VALID [2022-04-28 04:03:17,143 INFO L290 TraceCheckUtils]: 1: Hoare triple {101136#true} assume !(0 == ~cond); {101136#true} is VALID [2022-04-28 04:03:17,143 INFO L290 TraceCheckUtils]: 2: Hoare triple {101136#true} assume true; {101136#true} is VALID [2022-04-28 04:03:17,144 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {101136#true} {101141#(<= 200000 ~SIZE~0)} #86#return; {101141#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:17,144 INFO L272 TraceCheckUtils]: 0: Hoare triple {101136#true} call ULTIMATE.init(); {101149#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:03:17,145 INFO L290 TraceCheckUtils]: 1: Hoare triple {101149#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {101141#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:17,145 INFO L290 TraceCheckUtils]: 2: Hoare triple {101141#(<= 200000 ~SIZE~0)} assume true; {101141#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:17,145 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {101141#(<= 200000 ~SIZE~0)} {101136#true} #90#return; {101141#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:17,146 INFO L272 TraceCheckUtils]: 4: Hoare triple {101141#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {101141#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:17,146 INFO L290 TraceCheckUtils]: 5: Hoare triple {101141#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {101141#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:17,146 INFO L272 TraceCheckUtils]: 6: Hoare triple {101141#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {101136#true} is VALID [2022-04-28 04:03:17,146 INFO L290 TraceCheckUtils]: 7: Hoare triple {101136#true} ~cond := #in~cond; {101136#true} is VALID [2022-04-28 04:03:17,146 INFO L290 TraceCheckUtils]: 8: Hoare triple {101136#true} assume !(0 == ~cond); {101136#true} is VALID [2022-04-28 04:03:17,146 INFO L290 TraceCheckUtils]: 9: Hoare triple {101136#true} assume true; {101136#true} is VALID [2022-04-28 04:03:17,147 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {101136#true} {101141#(<= 200000 ~SIZE~0)} #86#return; {101141#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:17,147 INFO L290 TraceCheckUtils]: 11: Hoare triple {101141#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {101141#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:17,147 INFO L290 TraceCheckUtils]: 12: Hoare triple {101141#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {101146#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:03:17,148 INFO L290 TraceCheckUtils]: 13: Hoare triple {101146#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [288] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_474 v_main_~c~0_1140)) (.cse1 (= v_main_~st~0_614 v_main_~st~0_613))) (or (and (< v_main_~c~0_1140 v_main_~c~0_1139) .cse0 (< v_main_~c~0_1139 (+ v_~SIZE~0_427 1)) (= v_main_~st~0_613 0)) (and (= v_main_~c~0_1140 v_main_~c~0_1139) (= v_~last~0_474 v_~last~0_474) (= v_~SIZE~0_427 v_~SIZE~0_427) (= |v_main_#t~post5_620| |v_main_#t~post5_618|) .cse1) (and (or (not .cse0) (not (< v_main_~c~0_1140 v_~SIZE~0_427))) (= v_main_~c~0_1139 v_main_~c~0_1140) (= |v_main_#t~post5_618| |v_main_#t~post5_620|) .cse1))) InVars {~SIZE~0=v_~SIZE~0_427, main_~c~0=v_main_~c~0_1140, main_#t~post5=|v_main_#t~post5_620|, main_~st~0=v_main_~st~0_614, ~last~0=v_~last~0_474} OutVars{~SIZE~0=v_~SIZE~0_427, main_#t~post5=|v_main_#t~post5_618|, main_~c~0=v_main_~c~0_1139, main_~st~0=v_main_~st~0_613, ~last~0=v_~last~0_474} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {101147#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:03:17,148 INFO L290 TraceCheckUtils]: 14: Hoare triple {101147#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [289] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101147#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:03:17,149 INFO L290 TraceCheckUtils]: 15: Hoare triple {101147#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [290] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1142 v_main_~c~0_1141))) (or (and (or (not (< v_main_~c~0_1142 v_~SIZE~0_428)) (not (< v_main_~c~0_1142 v_~last~0_475))) .cse0 (= |v_main_#t~post5_619| |v_main_#t~post5_623|)) (and (< v_main_~c~0_1142 v_main_~c~0_1141) (< v_main_~c~0_1141 (+ v_~last~0_475 1)) (< v_main_~c~0_1141 (+ v_~SIZE~0_428 1))) (and (= |v_main_#t~post5_623| |v_main_#t~post5_619|) .cse0 (= v_~last~0_475 v_~last~0_475) (= v_~SIZE~0_428 v_~SIZE~0_428)))) InVars {~SIZE~0=v_~SIZE~0_428, main_~c~0=v_main_~c~0_1142, main_#t~post5=|v_main_#t~post5_623|, ~last~0=v_~last~0_475} OutVars{~SIZE~0=v_~SIZE~0_428, main_#t~post5=|v_main_#t~post5_619|, main_~c~0=v_main_~c~0_1141, ~last~0=v_~last~0_475} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {101147#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:03:17,149 INFO L290 TraceCheckUtils]: 16: Hoare triple {101147#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [287] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {101148#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:03:17,149 INFO L290 TraceCheckUtils]: 17: Hoare triple {101148#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {101137#false} is VALID [2022-04-28 04:03:17,150 INFO L290 TraceCheckUtils]: 18: Hoare triple {101137#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {101137#false} is VALID [2022-04-28 04:03:17,150 INFO L290 TraceCheckUtils]: 19: Hoare triple {101137#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {101137#false} is VALID [2022-04-28 04:03:17,150 INFO L290 TraceCheckUtils]: 20: Hoare triple {101137#false} assume !(~d~0 == ~SIZE~0); {101137#false} is VALID [2022-04-28 04:03:17,150 INFO L272 TraceCheckUtils]: 21: Hoare triple {101137#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {101137#false} is VALID [2022-04-28 04:03:17,150 INFO L290 TraceCheckUtils]: 22: Hoare triple {101137#false} ~cond := #in~cond; {101137#false} is VALID [2022-04-28 04:03:17,150 INFO L290 TraceCheckUtils]: 23: Hoare triple {101137#false} assume 0 == ~cond; {101137#false} is VALID [2022-04-28 04:03:17,150 INFO L290 TraceCheckUtils]: 24: Hoare triple {101137#false} assume !false; {101137#false} is VALID [2022-04-28 04:03:17,150 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:03:17,150 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:03:17,150 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [263195143] [2022-04-28 04:03:17,150 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [263195143] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:03:17,150 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [750144012] [2022-04-28 04:03:17,150 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:03:17,150 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:03:17,151 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:03:17,151 INFO L229 MonitoredProcess]: Starting monitored process 47 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:03:17,153 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (47)] Waiting until timeout for monitored process [2022-04-28 04:03:17,183 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:03:17,183 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:03:17,192 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:03:17,192 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:03:17,434 INFO L272 TraceCheckUtils]: 0: Hoare triple {101136#true} call ULTIMATE.init(); {101136#true} is VALID [2022-04-28 04:03:17,434 INFO L290 TraceCheckUtils]: 1: Hoare triple {101136#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {101141#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:17,434 INFO L290 TraceCheckUtils]: 2: Hoare triple {101141#(<= 200000 ~SIZE~0)} assume true; {101141#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:17,435 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {101141#(<= 200000 ~SIZE~0)} {101136#true} #90#return; {101141#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:17,435 INFO L272 TraceCheckUtils]: 4: Hoare triple {101141#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {101141#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:17,435 INFO L290 TraceCheckUtils]: 5: Hoare triple {101141#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {101141#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:17,436 INFO L272 TraceCheckUtils]: 6: Hoare triple {101141#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {101141#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:17,436 INFO L290 TraceCheckUtils]: 7: Hoare triple {101141#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {101141#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:17,436 INFO L290 TraceCheckUtils]: 8: Hoare triple {101141#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {101141#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:17,436 INFO L290 TraceCheckUtils]: 9: Hoare triple {101141#(<= 200000 ~SIZE~0)} assume true; {101141#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:17,437 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {101141#(<= 200000 ~SIZE~0)} {101141#(<= 200000 ~SIZE~0)} #86#return; {101141#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:17,437 INFO L290 TraceCheckUtils]: 11: Hoare triple {101141#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {101141#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:17,437 INFO L290 TraceCheckUtils]: 12: Hoare triple {101141#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {101189#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:03:17,438 INFO L290 TraceCheckUtils]: 13: Hoare triple {101189#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [288] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_474 v_main_~c~0_1140)) (.cse1 (= v_main_~st~0_614 v_main_~st~0_613))) (or (and (< v_main_~c~0_1140 v_main_~c~0_1139) .cse0 (< v_main_~c~0_1139 (+ v_~SIZE~0_427 1)) (= v_main_~st~0_613 0)) (and (= v_main_~c~0_1140 v_main_~c~0_1139) (= v_~last~0_474 v_~last~0_474) (= v_~SIZE~0_427 v_~SIZE~0_427) (= |v_main_#t~post5_620| |v_main_#t~post5_618|) .cse1) (and (or (not .cse0) (not (< v_main_~c~0_1140 v_~SIZE~0_427))) (= v_main_~c~0_1139 v_main_~c~0_1140) (= |v_main_#t~post5_618| |v_main_#t~post5_620|) .cse1))) InVars {~SIZE~0=v_~SIZE~0_427, main_~c~0=v_main_~c~0_1140, main_#t~post5=|v_main_#t~post5_620|, main_~st~0=v_main_~st~0_614, ~last~0=v_~last~0_474} OutVars{~SIZE~0=v_~SIZE~0_427, main_#t~post5=|v_main_#t~post5_618|, main_~c~0=v_main_~c~0_1139, main_~st~0=v_main_~st~0_613, ~last~0=v_~last~0_474} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {101193#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:03:17,438 INFO L290 TraceCheckUtils]: 14: Hoare triple {101193#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [289] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101193#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:03:17,439 INFO L290 TraceCheckUtils]: 15: Hoare triple {101193#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [290] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1142 v_main_~c~0_1141))) (or (and (or (not (< v_main_~c~0_1142 v_~SIZE~0_428)) (not (< v_main_~c~0_1142 v_~last~0_475))) .cse0 (= |v_main_#t~post5_619| |v_main_#t~post5_623|)) (and (< v_main_~c~0_1142 v_main_~c~0_1141) (< v_main_~c~0_1141 (+ v_~last~0_475 1)) (< v_main_~c~0_1141 (+ v_~SIZE~0_428 1))) (and (= |v_main_#t~post5_623| |v_main_#t~post5_619|) .cse0 (= v_~last~0_475 v_~last~0_475) (= v_~SIZE~0_428 v_~SIZE~0_428)))) InVars {~SIZE~0=v_~SIZE~0_428, main_~c~0=v_main_~c~0_1142, main_#t~post5=|v_main_#t~post5_623|, ~last~0=v_~last~0_475} OutVars{~SIZE~0=v_~SIZE~0_428, main_#t~post5=|v_main_#t~post5_619|, main_~c~0=v_main_~c~0_1141, ~last~0=v_~last~0_475} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {101193#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:03:17,439 INFO L290 TraceCheckUtils]: 16: Hoare triple {101193#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [287] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {101203#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:03:17,440 INFO L290 TraceCheckUtils]: 17: Hoare triple {101203#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {101137#false} is VALID [2022-04-28 04:03:17,440 INFO L290 TraceCheckUtils]: 18: Hoare triple {101137#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {101137#false} is VALID [2022-04-28 04:03:17,440 INFO L290 TraceCheckUtils]: 19: Hoare triple {101137#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {101137#false} is VALID [2022-04-28 04:03:17,440 INFO L290 TraceCheckUtils]: 20: Hoare triple {101137#false} assume !(~d~0 == ~SIZE~0); {101137#false} is VALID [2022-04-28 04:03:17,440 INFO L272 TraceCheckUtils]: 21: Hoare triple {101137#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {101137#false} is VALID [2022-04-28 04:03:17,440 INFO L290 TraceCheckUtils]: 22: Hoare triple {101137#false} ~cond := #in~cond; {101137#false} is VALID [2022-04-28 04:03:17,440 INFO L290 TraceCheckUtils]: 23: Hoare triple {101137#false} assume 0 == ~cond; {101137#false} is VALID [2022-04-28 04:03:17,440 INFO L290 TraceCheckUtils]: 24: Hoare triple {101137#false} assume !false; {101137#false} is VALID [2022-04-28 04:03:17,441 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:03:17,441 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:03:17,749 INFO L290 TraceCheckUtils]: 24: Hoare triple {101137#false} assume !false; {101137#false} is VALID [2022-04-28 04:03:17,749 INFO L290 TraceCheckUtils]: 23: Hoare triple {101137#false} assume 0 == ~cond; {101137#false} is VALID [2022-04-28 04:03:17,749 INFO L290 TraceCheckUtils]: 22: Hoare triple {101137#false} ~cond := #in~cond; {101137#false} is VALID [2022-04-28 04:03:17,749 INFO L272 TraceCheckUtils]: 21: Hoare triple {101137#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {101137#false} is VALID [2022-04-28 04:03:17,750 INFO L290 TraceCheckUtils]: 20: Hoare triple {101137#false} assume !(~d~0 == ~SIZE~0); {101137#false} is VALID [2022-04-28 04:03:17,750 INFO L290 TraceCheckUtils]: 19: Hoare triple {101137#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {101137#false} is VALID [2022-04-28 04:03:17,750 INFO L290 TraceCheckUtils]: 18: Hoare triple {101137#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {101137#false} is VALID [2022-04-28 04:03:17,750 INFO L290 TraceCheckUtils]: 17: Hoare triple {101249#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {101137#false} is VALID [2022-04-28 04:03:17,750 INFO L290 TraceCheckUtils]: 16: Hoare triple {101253#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [287] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {101249#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:03:17,751 INFO L290 TraceCheckUtils]: 15: Hoare triple {101253#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [290] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1142 v_main_~c~0_1141))) (or (and (or (not (< v_main_~c~0_1142 v_~SIZE~0_428)) (not (< v_main_~c~0_1142 v_~last~0_475))) .cse0 (= |v_main_#t~post5_619| |v_main_#t~post5_623|)) (and (< v_main_~c~0_1142 v_main_~c~0_1141) (< v_main_~c~0_1141 (+ v_~last~0_475 1)) (< v_main_~c~0_1141 (+ v_~SIZE~0_428 1))) (and (= |v_main_#t~post5_623| |v_main_#t~post5_619|) .cse0 (= v_~last~0_475 v_~last~0_475) (= v_~SIZE~0_428 v_~SIZE~0_428)))) InVars {~SIZE~0=v_~SIZE~0_428, main_~c~0=v_main_~c~0_1142, main_#t~post5=|v_main_#t~post5_623|, ~last~0=v_~last~0_475} OutVars{~SIZE~0=v_~SIZE~0_428, main_#t~post5=|v_main_#t~post5_619|, main_~c~0=v_main_~c~0_1141, ~last~0=v_~last~0_475} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {101253#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:03:17,751 INFO L290 TraceCheckUtils]: 14: Hoare triple {101253#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [289] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {101253#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:03:17,752 INFO L290 TraceCheckUtils]: 13: Hoare triple {101263#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [288] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_474 v_main_~c~0_1140)) (.cse1 (= v_main_~st~0_614 v_main_~st~0_613))) (or (and (< v_main_~c~0_1140 v_main_~c~0_1139) .cse0 (< v_main_~c~0_1139 (+ v_~SIZE~0_427 1)) (= v_main_~st~0_613 0)) (and (= v_main_~c~0_1140 v_main_~c~0_1139) (= v_~last~0_474 v_~last~0_474) (= v_~SIZE~0_427 v_~SIZE~0_427) (= |v_main_#t~post5_620| |v_main_#t~post5_618|) .cse1) (and (or (not .cse0) (not (< v_main_~c~0_1140 v_~SIZE~0_427))) (= v_main_~c~0_1139 v_main_~c~0_1140) (= |v_main_#t~post5_618| |v_main_#t~post5_620|) .cse1))) InVars {~SIZE~0=v_~SIZE~0_427, main_~c~0=v_main_~c~0_1140, main_#t~post5=|v_main_#t~post5_620|, main_~st~0=v_main_~st~0_614, ~last~0=v_~last~0_474} OutVars{~SIZE~0=v_~SIZE~0_427, main_#t~post5=|v_main_#t~post5_618|, main_~c~0=v_main_~c~0_1139, main_~st~0=v_main_~st~0_613, ~last~0=v_~last~0_474} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {101253#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:03:17,752 INFO L290 TraceCheckUtils]: 12: Hoare triple {101267#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {101263#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:03:17,753 INFO L290 TraceCheckUtils]: 11: Hoare triple {101267#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {101267#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:17,753 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {101136#true} {101267#(< 1 ~SIZE~0)} #86#return; {101267#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:17,753 INFO L290 TraceCheckUtils]: 9: Hoare triple {101136#true} assume true; {101136#true} is VALID [2022-04-28 04:03:17,753 INFO L290 TraceCheckUtils]: 8: Hoare triple {101136#true} assume !(0 == ~cond); {101136#true} is VALID [2022-04-28 04:03:17,753 INFO L290 TraceCheckUtils]: 7: Hoare triple {101136#true} ~cond := #in~cond; {101136#true} is VALID [2022-04-28 04:03:17,753 INFO L272 TraceCheckUtils]: 6: Hoare triple {101267#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {101136#true} is VALID [2022-04-28 04:03:17,753 INFO L290 TraceCheckUtils]: 5: Hoare triple {101267#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {101267#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:17,754 INFO L272 TraceCheckUtils]: 4: Hoare triple {101267#(< 1 ~SIZE~0)} call #t~ret7 := main(); {101267#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:17,754 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {101267#(< 1 ~SIZE~0)} {101136#true} #90#return; {101267#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:17,754 INFO L290 TraceCheckUtils]: 2: Hoare triple {101267#(< 1 ~SIZE~0)} assume true; {101267#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:17,755 INFO L290 TraceCheckUtils]: 1: Hoare triple {101136#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {101267#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:17,755 INFO L272 TraceCheckUtils]: 0: Hoare triple {101136#true} call ULTIMATE.init(); {101136#true} is VALID [2022-04-28 04:03:17,755 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:03:17,755 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [750144012] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:03:17,755 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:03:17,755 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:03:18,385 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:03:18,385 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [542101750] [2022-04-28 04:03:18,385 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [542101750] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:03:18,385 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:03:18,385 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [25] imperfect sequences [] total 25 [2022-04-28 04:03:18,385 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1030887811] [2022-04-28 04:03:18,385 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:03:18,385 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 25 states have (on average 1.84) internal successors, (46), 24 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 52 [2022-04-28 04:03:18,385 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:03:18,386 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 25 states, 25 states have (on average 1.84) internal successors, (46), 24 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:03:18,419 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:03:18,419 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 25 states [2022-04-28 04:03:18,419 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:03:18,419 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2022-04-28 04:03:18,419 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=242, Invalid=880, Unknown=0, NotChecked=0, Total=1122 [2022-04-28 04:03:18,419 INFO L87 Difference]: Start difference. First operand 316 states and 378 transitions. Second operand has 25 states, 25 states have (on average 1.84) internal successors, (46), 24 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:03:22,006 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:03:22,006 INFO L93 Difference]: Finished difference Result 598 states and 715 transitions. [2022-04-28 04:03:22,006 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2022-04-28 04:03:22,006 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 25 states have (on average 1.84) internal successors, (46), 24 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 52 [2022-04-28 04:03:22,006 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:03:22,006 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 25 states have (on average 1.84) internal successors, (46), 24 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:03:22,007 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 107 transitions. [2022-04-28 04:03:22,007 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 25 states have (on average 1.84) internal successors, (46), 24 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:03:22,008 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 107 transitions. [2022-04-28 04:03:22,008 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 25 states and 107 transitions. [2022-04-28 04:03:22,080 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 107 edges. 107 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:03:22,085 INFO L225 Difference]: With dead ends: 598 [2022-04-28 04:03:22,085 INFO L226 Difference]: Without dead ends: 355 [2022-04-28 04:03:22,086 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 100 GetRequests, 54 SyntacticMatches, 11 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 755 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=283, Invalid=1049, Unknown=0, NotChecked=0, Total=1332 [2022-04-28 04:03:22,086 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 68 mSDsluCounter, 24 mSDsCounter, 0 mSdLazyCounter, 1288 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 69 SdHoareTripleChecker+Valid, 48 SdHoareTripleChecker+Invalid, 1307 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 1288 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-28 04:03:22,086 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [69 Valid, 48 Invalid, 1307 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 1288 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-28 04:03:22,086 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 355 states. [2022-04-28 04:03:23,629 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 355 to 316. [2022-04-28 04:03:23,629 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:03:23,629 INFO L82 GeneralOperation]: Start isEquivalent. First operand 355 states. Second operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:03:23,629 INFO L74 IsIncluded]: Start isIncluded. First operand 355 states. Second operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:03:23,630 INFO L87 Difference]: Start difference. First operand 355 states. Second operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:03:23,634 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:03:23,634 INFO L93 Difference]: Finished difference Result 355 states and 421 transitions. [2022-04-28 04:03:23,634 INFO L276 IsEmpty]: Start isEmpty. Operand 355 states and 421 transitions. [2022-04-28 04:03:23,634 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:03:23,634 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:03:23,634 INFO L74 IsIncluded]: Start isIncluded. First operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 355 states. [2022-04-28 04:03:23,635 INFO L87 Difference]: Start difference. First operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 355 states. [2022-04-28 04:03:23,639 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:03:23,639 INFO L93 Difference]: Finished difference Result 355 states and 421 transitions. [2022-04-28 04:03:23,639 INFO L276 IsEmpty]: Start isEmpty. Operand 355 states and 421 transitions. [2022-04-28 04:03:23,639 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:03:23,639 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:03:23,639 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:03:23,639 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:03:23,639 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:03:23,644 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 316 states to 316 states and 378 transitions. [2022-04-28 04:03:23,644 INFO L78 Accepts]: Start accepts. Automaton has 316 states and 378 transitions. Word has length 52 [2022-04-28 04:03:23,644 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:03:23,644 INFO L495 AbstractCegarLoop]: Abstraction has 316 states and 378 transitions. [2022-04-28 04:03:23,644 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 25 states, 25 states have (on average 1.84) internal successors, (46), 24 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:03:23,644 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 316 states and 378 transitions. [2022-04-28 04:03:24,904 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 378 edges. 378 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:03:24,905 INFO L276 IsEmpty]: Start isEmpty. Operand 316 states and 378 transitions. [2022-04-28 04:03:24,905 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2022-04-28 04:03:24,905 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:03:24,905 INFO L195 NwaCegarLoop]: trace histogram [10, 10, 8, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:03:24,923 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (47)] Forceful destruction successful, exit code 0 [2022-04-28 04:03:25,105 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable54,47 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:03:25,106 INFO L420 AbstractCegarLoop]: === Iteration 56 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:03:25,106 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:03:25,106 INFO L85 PathProgramCache]: Analyzing trace with hash 1641620542, now seen corresponding path program 44 times [2022-04-28 04:03:25,106 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:03:25,106 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [872496483] [2022-04-28 04:03:28,455 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:03:28,547 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:03:31,185 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:03:31,285 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:03:31,287 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:03:31,289 INFO L85 PathProgramCache]: Analyzing trace with hash 1383503553, now seen corresponding path program 1 times [2022-04-28 04:03:31,289 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:03:31,289 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1170908554] [2022-04-28 04:03:31,289 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:03:31,290 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:03:31,296 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:03:31,349 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:03:31,350 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:03:31,353 INFO L290 TraceCheckUtils]: 0: Hoare triple {103884#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {103876#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:31,354 INFO L290 TraceCheckUtils]: 1: Hoare triple {103876#(<= 200000 ~SIZE~0)} assume true; {103876#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:31,354 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {103876#(<= 200000 ~SIZE~0)} {103871#true} #90#return; {103876#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:31,354 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:03:31,354 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:03:31,356 INFO L290 TraceCheckUtils]: 0: Hoare triple {103871#true} ~cond := #in~cond; {103871#true} is VALID [2022-04-28 04:03:31,356 INFO L290 TraceCheckUtils]: 1: Hoare triple {103871#true} assume !(0 == ~cond); {103871#true} is VALID [2022-04-28 04:03:31,356 INFO L290 TraceCheckUtils]: 2: Hoare triple {103871#true} assume true; {103871#true} is VALID [2022-04-28 04:03:31,356 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {103871#true} {103876#(<= 200000 ~SIZE~0)} #86#return; {103876#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:31,357 INFO L272 TraceCheckUtils]: 0: Hoare triple {103871#true} call ULTIMATE.init(); {103884#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:03:31,357 INFO L290 TraceCheckUtils]: 1: Hoare triple {103884#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {103876#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:31,357 INFO L290 TraceCheckUtils]: 2: Hoare triple {103876#(<= 200000 ~SIZE~0)} assume true; {103876#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:31,358 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {103876#(<= 200000 ~SIZE~0)} {103871#true} #90#return; {103876#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:31,358 INFO L272 TraceCheckUtils]: 4: Hoare triple {103876#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {103876#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:31,358 INFO L290 TraceCheckUtils]: 5: Hoare triple {103876#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {103876#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:31,358 INFO L272 TraceCheckUtils]: 6: Hoare triple {103876#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {103871#true} is VALID [2022-04-28 04:03:31,359 INFO L290 TraceCheckUtils]: 7: Hoare triple {103871#true} ~cond := #in~cond; {103871#true} is VALID [2022-04-28 04:03:31,359 INFO L290 TraceCheckUtils]: 8: Hoare triple {103871#true} assume !(0 == ~cond); {103871#true} is VALID [2022-04-28 04:03:31,359 INFO L290 TraceCheckUtils]: 9: Hoare triple {103871#true} assume true; {103871#true} is VALID [2022-04-28 04:03:31,359 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {103871#true} {103876#(<= 200000 ~SIZE~0)} #86#return; {103876#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:31,359 INFO L290 TraceCheckUtils]: 11: Hoare triple {103876#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {103876#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:31,360 INFO L290 TraceCheckUtils]: 12: Hoare triple {103876#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {103881#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:03:31,360 INFO L290 TraceCheckUtils]: 13: Hoare triple {103881#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [292] L27-3-->L27-4_primed: Formula: (let ((.cse1 (<= v_~last~0_484 v_main_~c~0_1167)) (.cse0 (= v_main_~st~0_626 v_main_~st~0_625)) (.cse2 (= |v_main_#t~post5_633| |v_main_#t~post5_631|)) (.cse3 (= v_main_~c~0_1167 v_main_~c~0_1166))) (or (and .cse0 (or (not .cse1) (not (< v_main_~c~0_1167 v_~SIZE~0_436))) .cse2 .cse3) (and (< v_main_~c~0_1166 (+ v_~SIZE~0_436 1)) (= v_main_~st~0_625 0) (< v_main_~c~0_1167 v_main_~c~0_1166) .cse1) (and .cse0 .cse2 .cse3 (= v_~SIZE~0_436 v_~SIZE~0_436) (= v_~last~0_484 v_~last~0_484)))) InVars {~SIZE~0=v_~SIZE~0_436, main_~c~0=v_main_~c~0_1167, main_#t~post5=|v_main_#t~post5_633|, main_~st~0=v_main_~st~0_626, ~last~0=v_~last~0_484} OutVars{~SIZE~0=v_~SIZE~0_436, main_#t~post5=|v_main_#t~post5_631|, main_~c~0=v_main_~c~0_1166, main_~st~0=v_main_~st~0_625, ~last~0=v_~last~0_484} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {103882#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:03:31,361 INFO L290 TraceCheckUtils]: 14: Hoare triple {103882#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [293] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {103882#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:03:31,361 INFO L290 TraceCheckUtils]: 15: Hoare triple {103882#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [294] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_636| |v_main_#t~post5_632|)) (.cse1 (= v_main_~c~0_1169 v_main_~c~0_1168))) (or (and (< v_main_~c~0_1168 (+ v_~last~0_485 1)) (< v_main_~c~0_1169 v_main_~c~0_1168) (< v_main_~c~0_1168 (+ v_~SIZE~0_437 1))) (and .cse0 .cse1 (= v_~SIZE~0_437 v_~SIZE~0_437) (= v_~last~0_485 v_~last~0_485)) (and .cse0 .cse1 (or (not (< v_main_~c~0_1169 v_~last~0_485)) (not (< v_main_~c~0_1169 v_~SIZE~0_437)))))) InVars {~SIZE~0=v_~SIZE~0_437, main_~c~0=v_main_~c~0_1169, main_#t~post5=|v_main_#t~post5_636|, ~last~0=v_~last~0_485} OutVars{~SIZE~0=v_~SIZE~0_437, main_#t~post5=|v_main_#t~post5_632|, main_~c~0=v_main_~c~0_1168, ~last~0=v_~last~0_485} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {103882#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:03:31,362 INFO L290 TraceCheckUtils]: 16: Hoare triple {103882#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [291] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {103883#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:03:31,362 INFO L290 TraceCheckUtils]: 17: Hoare triple {103883#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {103872#false} is VALID [2022-04-28 04:03:31,362 INFO L290 TraceCheckUtils]: 18: Hoare triple {103872#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {103872#false} is VALID [2022-04-28 04:03:31,362 INFO L290 TraceCheckUtils]: 19: Hoare triple {103872#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {103872#false} is VALID [2022-04-28 04:03:31,362 INFO L290 TraceCheckUtils]: 20: Hoare triple {103872#false} assume !(~d~0 == ~SIZE~0); {103872#false} is VALID [2022-04-28 04:03:31,362 INFO L272 TraceCheckUtils]: 21: Hoare triple {103872#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {103872#false} is VALID [2022-04-28 04:03:31,362 INFO L290 TraceCheckUtils]: 22: Hoare triple {103872#false} ~cond := #in~cond; {103872#false} is VALID [2022-04-28 04:03:31,362 INFO L290 TraceCheckUtils]: 23: Hoare triple {103872#false} assume 0 == ~cond; {103872#false} is VALID [2022-04-28 04:03:31,362 INFO L290 TraceCheckUtils]: 24: Hoare triple {103872#false} assume !false; {103872#false} is VALID [2022-04-28 04:03:31,363 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:03:31,363 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:03:31,363 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1170908554] [2022-04-28 04:03:31,363 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1170908554] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:03:31,363 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1343250093] [2022-04-28 04:03:31,363 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:03:31,363 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:03:31,363 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:03:31,364 INFO L229 MonitoredProcess]: Starting monitored process 48 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:03:31,367 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (48)] Waiting until timeout for monitored process [2022-04-28 04:03:31,401 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:03:31,401 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:03:31,408 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:03:31,408 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:03:31,681 INFO L272 TraceCheckUtils]: 0: Hoare triple {103871#true} call ULTIMATE.init(); {103871#true} is VALID [2022-04-28 04:03:31,682 INFO L290 TraceCheckUtils]: 1: Hoare triple {103871#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {103876#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:31,682 INFO L290 TraceCheckUtils]: 2: Hoare triple {103876#(<= 200000 ~SIZE~0)} assume true; {103876#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:31,683 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {103876#(<= 200000 ~SIZE~0)} {103871#true} #90#return; {103876#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:31,683 INFO L272 TraceCheckUtils]: 4: Hoare triple {103876#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {103876#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:31,683 INFO L290 TraceCheckUtils]: 5: Hoare triple {103876#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {103876#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:31,684 INFO L272 TraceCheckUtils]: 6: Hoare triple {103876#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {103876#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:31,684 INFO L290 TraceCheckUtils]: 7: Hoare triple {103876#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {103876#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:31,684 INFO L290 TraceCheckUtils]: 8: Hoare triple {103876#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {103876#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:31,684 INFO L290 TraceCheckUtils]: 9: Hoare triple {103876#(<= 200000 ~SIZE~0)} assume true; {103876#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:31,685 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {103876#(<= 200000 ~SIZE~0)} {103876#(<= 200000 ~SIZE~0)} #86#return; {103876#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:31,685 INFO L290 TraceCheckUtils]: 11: Hoare triple {103876#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {103876#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:31,685 INFO L290 TraceCheckUtils]: 12: Hoare triple {103876#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {103924#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:03:31,686 INFO L290 TraceCheckUtils]: 13: Hoare triple {103924#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [292] L27-3-->L27-4_primed: Formula: (let ((.cse1 (<= v_~last~0_484 v_main_~c~0_1167)) (.cse0 (= v_main_~st~0_626 v_main_~st~0_625)) (.cse2 (= |v_main_#t~post5_633| |v_main_#t~post5_631|)) (.cse3 (= v_main_~c~0_1167 v_main_~c~0_1166))) (or (and .cse0 (or (not .cse1) (not (< v_main_~c~0_1167 v_~SIZE~0_436))) .cse2 .cse3) (and (< v_main_~c~0_1166 (+ v_~SIZE~0_436 1)) (= v_main_~st~0_625 0) (< v_main_~c~0_1167 v_main_~c~0_1166) .cse1) (and .cse0 .cse2 .cse3 (= v_~SIZE~0_436 v_~SIZE~0_436) (= v_~last~0_484 v_~last~0_484)))) InVars {~SIZE~0=v_~SIZE~0_436, main_~c~0=v_main_~c~0_1167, main_#t~post5=|v_main_#t~post5_633|, main_~st~0=v_main_~st~0_626, ~last~0=v_~last~0_484} OutVars{~SIZE~0=v_~SIZE~0_436, main_#t~post5=|v_main_#t~post5_631|, main_~c~0=v_main_~c~0_1166, main_~st~0=v_main_~st~0_625, ~last~0=v_~last~0_484} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {103928#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:03:31,687 INFO L290 TraceCheckUtils]: 14: Hoare triple {103928#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [293] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {103928#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:03:31,687 INFO L290 TraceCheckUtils]: 15: Hoare triple {103928#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [294] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_636| |v_main_#t~post5_632|)) (.cse1 (= v_main_~c~0_1169 v_main_~c~0_1168))) (or (and (< v_main_~c~0_1168 (+ v_~last~0_485 1)) (< v_main_~c~0_1169 v_main_~c~0_1168) (< v_main_~c~0_1168 (+ v_~SIZE~0_437 1))) (and .cse0 .cse1 (= v_~SIZE~0_437 v_~SIZE~0_437) (= v_~last~0_485 v_~last~0_485)) (and .cse0 .cse1 (or (not (< v_main_~c~0_1169 v_~last~0_485)) (not (< v_main_~c~0_1169 v_~SIZE~0_437)))))) InVars {~SIZE~0=v_~SIZE~0_437, main_~c~0=v_main_~c~0_1169, main_#t~post5=|v_main_#t~post5_636|, ~last~0=v_~last~0_485} OutVars{~SIZE~0=v_~SIZE~0_437, main_#t~post5=|v_main_#t~post5_632|, main_~c~0=v_main_~c~0_1168, ~last~0=v_~last~0_485} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {103928#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:03:31,688 INFO L290 TraceCheckUtils]: 16: Hoare triple {103928#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [291] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {103938#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:03:31,689 INFO L290 TraceCheckUtils]: 17: Hoare triple {103938#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {103872#false} is VALID [2022-04-28 04:03:31,689 INFO L290 TraceCheckUtils]: 18: Hoare triple {103872#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {103872#false} is VALID [2022-04-28 04:03:31,689 INFO L290 TraceCheckUtils]: 19: Hoare triple {103872#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {103872#false} is VALID [2022-04-28 04:03:31,689 INFO L290 TraceCheckUtils]: 20: Hoare triple {103872#false} assume !(~d~0 == ~SIZE~0); {103872#false} is VALID [2022-04-28 04:03:31,689 INFO L272 TraceCheckUtils]: 21: Hoare triple {103872#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {103872#false} is VALID [2022-04-28 04:03:31,689 INFO L290 TraceCheckUtils]: 22: Hoare triple {103872#false} ~cond := #in~cond; {103872#false} is VALID [2022-04-28 04:03:31,689 INFO L290 TraceCheckUtils]: 23: Hoare triple {103872#false} assume 0 == ~cond; {103872#false} is VALID [2022-04-28 04:03:31,689 INFO L290 TraceCheckUtils]: 24: Hoare triple {103872#false} assume !false; {103872#false} is VALID [2022-04-28 04:03:31,689 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:03:31,689 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:03:31,991 INFO L290 TraceCheckUtils]: 24: Hoare triple {103872#false} assume !false; {103872#false} is VALID [2022-04-28 04:03:31,991 INFO L290 TraceCheckUtils]: 23: Hoare triple {103872#false} assume 0 == ~cond; {103872#false} is VALID [2022-04-28 04:03:31,991 INFO L290 TraceCheckUtils]: 22: Hoare triple {103872#false} ~cond := #in~cond; {103872#false} is VALID [2022-04-28 04:03:31,991 INFO L272 TraceCheckUtils]: 21: Hoare triple {103872#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {103872#false} is VALID [2022-04-28 04:03:31,991 INFO L290 TraceCheckUtils]: 20: Hoare triple {103872#false} assume !(~d~0 == ~SIZE~0); {103872#false} is VALID [2022-04-28 04:03:31,991 INFO L290 TraceCheckUtils]: 19: Hoare triple {103872#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {103872#false} is VALID [2022-04-28 04:03:31,991 INFO L290 TraceCheckUtils]: 18: Hoare triple {103872#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {103872#false} is VALID [2022-04-28 04:03:31,992 INFO L290 TraceCheckUtils]: 17: Hoare triple {103984#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {103872#false} is VALID [2022-04-28 04:03:31,992 INFO L290 TraceCheckUtils]: 16: Hoare triple {103988#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [291] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {103984#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:03:31,992 INFO L290 TraceCheckUtils]: 15: Hoare triple {103988#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [294] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_636| |v_main_#t~post5_632|)) (.cse1 (= v_main_~c~0_1169 v_main_~c~0_1168))) (or (and (< v_main_~c~0_1168 (+ v_~last~0_485 1)) (< v_main_~c~0_1169 v_main_~c~0_1168) (< v_main_~c~0_1168 (+ v_~SIZE~0_437 1))) (and .cse0 .cse1 (= v_~SIZE~0_437 v_~SIZE~0_437) (= v_~last~0_485 v_~last~0_485)) (and .cse0 .cse1 (or (not (< v_main_~c~0_1169 v_~last~0_485)) (not (< v_main_~c~0_1169 v_~SIZE~0_437)))))) InVars {~SIZE~0=v_~SIZE~0_437, main_~c~0=v_main_~c~0_1169, main_#t~post5=|v_main_#t~post5_636|, ~last~0=v_~last~0_485} OutVars{~SIZE~0=v_~SIZE~0_437, main_#t~post5=|v_main_#t~post5_632|, main_~c~0=v_main_~c~0_1168, ~last~0=v_~last~0_485} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {103988#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:03:31,993 INFO L290 TraceCheckUtils]: 14: Hoare triple {103988#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [293] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {103988#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:03:31,993 INFO L290 TraceCheckUtils]: 13: Hoare triple {103998#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [292] L27-3-->L27-4_primed: Formula: (let ((.cse1 (<= v_~last~0_484 v_main_~c~0_1167)) (.cse0 (= v_main_~st~0_626 v_main_~st~0_625)) (.cse2 (= |v_main_#t~post5_633| |v_main_#t~post5_631|)) (.cse3 (= v_main_~c~0_1167 v_main_~c~0_1166))) (or (and .cse0 (or (not .cse1) (not (< v_main_~c~0_1167 v_~SIZE~0_436))) .cse2 .cse3) (and (< v_main_~c~0_1166 (+ v_~SIZE~0_436 1)) (= v_main_~st~0_625 0) (< v_main_~c~0_1167 v_main_~c~0_1166) .cse1) (and .cse0 .cse2 .cse3 (= v_~SIZE~0_436 v_~SIZE~0_436) (= v_~last~0_484 v_~last~0_484)))) InVars {~SIZE~0=v_~SIZE~0_436, main_~c~0=v_main_~c~0_1167, main_#t~post5=|v_main_#t~post5_633|, main_~st~0=v_main_~st~0_626, ~last~0=v_~last~0_484} OutVars{~SIZE~0=v_~SIZE~0_436, main_#t~post5=|v_main_#t~post5_631|, main_~c~0=v_main_~c~0_1166, main_~st~0=v_main_~st~0_625, ~last~0=v_~last~0_484} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {103988#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:03:31,994 INFO L290 TraceCheckUtils]: 12: Hoare triple {104002#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {103998#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:03:31,994 INFO L290 TraceCheckUtils]: 11: Hoare triple {104002#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {104002#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:31,994 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {103871#true} {104002#(< 1 ~SIZE~0)} #86#return; {104002#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:31,995 INFO L290 TraceCheckUtils]: 9: Hoare triple {103871#true} assume true; {103871#true} is VALID [2022-04-28 04:03:31,995 INFO L290 TraceCheckUtils]: 8: Hoare triple {103871#true} assume !(0 == ~cond); {103871#true} is VALID [2022-04-28 04:03:31,995 INFO L290 TraceCheckUtils]: 7: Hoare triple {103871#true} ~cond := #in~cond; {103871#true} is VALID [2022-04-28 04:03:31,995 INFO L272 TraceCheckUtils]: 6: Hoare triple {104002#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {103871#true} is VALID [2022-04-28 04:03:31,995 INFO L290 TraceCheckUtils]: 5: Hoare triple {104002#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {104002#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:31,995 INFO L272 TraceCheckUtils]: 4: Hoare triple {104002#(< 1 ~SIZE~0)} call #t~ret7 := main(); {104002#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:31,996 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {104002#(< 1 ~SIZE~0)} {103871#true} #90#return; {104002#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:31,996 INFO L290 TraceCheckUtils]: 2: Hoare triple {104002#(< 1 ~SIZE~0)} assume true; {104002#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:31,996 INFO L290 TraceCheckUtils]: 1: Hoare triple {103871#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {104002#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:31,996 INFO L272 TraceCheckUtils]: 0: Hoare triple {103871#true} call ULTIMATE.init(); {103871#true} is VALID [2022-04-28 04:03:31,996 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:03:31,997 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1343250093] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:03:31,997 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:03:31,997 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:03:32,617 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:03:32,617 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [872496483] [2022-04-28 04:03:32,617 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [872496483] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:03:32,617 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:03:32,617 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [26] imperfect sequences [] total 26 [2022-04-28 04:03:32,617 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [845974338] [2022-04-28 04:03:32,617 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:03:32,617 INFO L78 Accepts]: Start accepts. Automaton has has 26 states, 26 states have (on average 1.7692307692307692) internal successors, (46), 25 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 52 [2022-04-28 04:03:32,617 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:03:32,617 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 26 states, 26 states have (on average 1.7692307692307692) internal successors, (46), 25 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:03:32,650 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:03:32,650 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 26 states [2022-04-28 04:03:32,650 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:03:32,650 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 26 interpolants. [2022-04-28 04:03:32,651 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=257, Invalid=933, Unknown=0, NotChecked=0, Total=1190 [2022-04-28 04:03:32,651 INFO L87 Difference]: Start difference. First operand 316 states and 378 transitions. Second operand has 26 states, 26 states have (on average 1.7692307692307692) internal successors, (46), 25 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:03:35,892 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:03:35,893 INFO L93 Difference]: Finished difference Result 593 states and 710 transitions. [2022-04-28 04:03:35,893 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2022-04-28 04:03:35,893 INFO L78 Accepts]: Start accepts. Automaton has has 26 states, 26 states have (on average 1.7692307692307692) internal successors, (46), 25 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 52 [2022-04-28 04:03:35,893 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:03:35,893 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 26 states, 26 states have (on average 1.7692307692307692) internal successors, (46), 25 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:03:35,894 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 108 transitions. [2022-04-28 04:03:35,894 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 26 states, 26 states have (on average 1.7692307692307692) internal successors, (46), 25 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:03:35,894 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 108 transitions. [2022-04-28 04:03:35,894 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 26 states and 108 transitions. [2022-04-28 04:03:35,964 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 108 edges. 108 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:03:35,969 INFO L225 Difference]: With dead ends: 593 [2022-04-28 04:03:35,969 INFO L226 Difference]: Without dead ends: 350 [2022-04-28 04:03:35,969 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 100 GetRequests, 54 SyntacticMatches, 10 SemanticMatches, 36 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 745 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=300, Invalid=1106, Unknown=0, NotChecked=0, Total=1406 [2022-04-28 04:03:35,969 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 69 mSDsluCounter, 24 mSDsCounter, 0 mSdLazyCounter, 1094 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 70 SdHoareTripleChecker+Valid, 48 SdHoareTripleChecker+Invalid, 1114 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 20 IncrementalHoareTripleChecker+Valid, 1094 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-28 04:03:35,969 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [70 Valid, 48 Invalid, 1114 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [20 Valid, 1094 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-28 04:03:35,970 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 350 states. [2022-04-28 04:03:37,525 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 350 to 316. [2022-04-28 04:03:37,525 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:03:37,525 INFO L82 GeneralOperation]: Start isEquivalent. First operand 350 states. Second operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:03:37,525 INFO L74 IsIncluded]: Start isIncluded. First operand 350 states. Second operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:03:37,526 INFO L87 Difference]: Start difference. First operand 350 states. Second operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:03:37,530 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:03:37,530 INFO L93 Difference]: Finished difference Result 350 states and 416 transitions. [2022-04-28 04:03:37,530 INFO L276 IsEmpty]: Start isEmpty. Operand 350 states and 416 transitions. [2022-04-28 04:03:37,530 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:03:37,530 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:03:37,530 INFO L74 IsIncluded]: Start isIncluded. First operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 350 states. [2022-04-28 04:03:37,531 INFO L87 Difference]: Start difference. First operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 350 states. [2022-04-28 04:03:37,538 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:03:37,538 INFO L93 Difference]: Finished difference Result 350 states and 416 transitions. [2022-04-28 04:03:37,538 INFO L276 IsEmpty]: Start isEmpty. Operand 350 states and 416 transitions. [2022-04-28 04:03:37,538 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:03:37,539 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:03:37,539 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:03:37,539 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:03:37,539 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 316 states, 301 states have (on average 1.1993355481727574) internal successors, (361), 304 states have internal predecessors, (361), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:03:37,543 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 316 states to 316 states and 378 transitions. [2022-04-28 04:03:37,543 INFO L78 Accepts]: Start accepts. Automaton has 316 states and 378 transitions. Word has length 52 [2022-04-28 04:03:37,544 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:03:37,544 INFO L495 AbstractCegarLoop]: Abstraction has 316 states and 378 transitions. [2022-04-28 04:03:37,544 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 26 states, 26 states have (on average 1.7692307692307692) internal successors, (46), 25 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:03:37,544 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 316 states and 378 transitions. [2022-04-28 04:03:38,808 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 378 edges. 378 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:03:38,808 INFO L276 IsEmpty]: Start isEmpty. Operand 316 states and 378 transitions. [2022-04-28 04:03:38,808 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 53 [2022-04-28 04:03:38,808 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:03:38,808 INFO L195 NwaCegarLoop]: trace histogram [10, 10, 9, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:03:38,830 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (48)] Forceful destruction successful, exit code 0 [2022-04-28 04:03:39,009 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable55,48 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:03:39,009 INFO L420 AbstractCegarLoop]: === Iteration 57 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:03:39,009 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:03:39,009 INFO L85 PathProgramCache]: Analyzing trace with hash 630503292, now seen corresponding path program 45 times [2022-04-28 04:03:39,010 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:03:39,010 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [893664320] [2022-04-28 04:03:39,226 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:03:39,402 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:03:39,403 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:03:39,406 INFO L85 PathProgramCache]: Analyzing trace with hash -418940991, now seen corresponding path program 1 times [2022-04-28 04:03:39,406 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:03:39,406 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [75660486] [2022-04-28 04:03:39,406 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:03:39,406 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:03:39,413 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:03:39,455 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:03:39,456 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:03:39,469 INFO L290 TraceCheckUtils]: 0: Hoare triple {106600#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {106592#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:39,470 INFO L290 TraceCheckUtils]: 1: Hoare triple {106592#(<= 200000 ~SIZE~0)} assume true; {106592#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:39,470 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {106592#(<= 200000 ~SIZE~0)} {106587#true} #90#return; {106592#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:39,470 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:03:39,471 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:03:39,472 INFO L290 TraceCheckUtils]: 0: Hoare triple {106587#true} ~cond := #in~cond; {106587#true} is VALID [2022-04-28 04:03:39,472 INFO L290 TraceCheckUtils]: 1: Hoare triple {106587#true} assume !(0 == ~cond); {106587#true} is VALID [2022-04-28 04:03:39,472 INFO L290 TraceCheckUtils]: 2: Hoare triple {106587#true} assume true; {106587#true} is VALID [2022-04-28 04:03:39,473 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {106587#true} {106592#(<= 200000 ~SIZE~0)} #86#return; {106592#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:39,473 INFO L272 TraceCheckUtils]: 0: Hoare triple {106587#true} call ULTIMATE.init(); {106600#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:03:39,474 INFO L290 TraceCheckUtils]: 1: Hoare triple {106600#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {106592#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:39,474 INFO L290 TraceCheckUtils]: 2: Hoare triple {106592#(<= 200000 ~SIZE~0)} assume true; {106592#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:39,474 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {106592#(<= 200000 ~SIZE~0)} {106587#true} #90#return; {106592#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:39,475 INFO L272 TraceCheckUtils]: 4: Hoare triple {106592#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {106592#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:39,475 INFO L290 TraceCheckUtils]: 5: Hoare triple {106592#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {106592#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:39,475 INFO L272 TraceCheckUtils]: 6: Hoare triple {106592#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {106587#true} is VALID [2022-04-28 04:03:39,475 INFO L290 TraceCheckUtils]: 7: Hoare triple {106587#true} ~cond := #in~cond; {106587#true} is VALID [2022-04-28 04:03:39,475 INFO L290 TraceCheckUtils]: 8: Hoare triple {106587#true} assume !(0 == ~cond); {106587#true} is VALID [2022-04-28 04:03:39,475 INFO L290 TraceCheckUtils]: 9: Hoare triple {106587#true} assume true; {106587#true} is VALID [2022-04-28 04:03:39,475 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {106587#true} {106592#(<= 200000 ~SIZE~0)} #86#return; {106592#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:39,476 INFO L290 TraceCheckUtils]: 11: Hoare triple {106592#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {106592#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:39,476 INFO L290 TraceCheckUtils]: 12: Hoare triple {106592#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {106597#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:03:39,477 INFO L290 TraceCheckUtils]: 13: Hoare triple {106597#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [296] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~c~0_1194 v_main_~c~0_1193)) (.cse0 (<= v_~last~0_494 v_main_~c~0_1194)) (.cse2 (= v_main_~st~0_637 v_main_~st~0_636)) (.cse3 (= |v_main_#t~post5_646| |v_main_#t~post5_644|))) (or (and .cse0 (= v_main_~st~0_636 0) (< v_main_~c~0_1194 v_main_~c~0_1193) (< v_main_~c~0_1193 (+ v_~SIZE~0_445 1))) (and .cse1 (= v_~SIZE~0_445 v_~SIZE~0_445) .cse2 .cse3 (= v_~last~0_494 v_~last~0_494)) (and .cse1 (or (not (< v_main_~c~0_1194 v_~SIZE~0_445)) (not .cse0)) .cse2 .cse3))) InVars {~SIZE~0=v_~SIZE~0_445, main_~c~0=v_main_~c~0_1194, main_#t~post5=|v_main_#t~post5_646|, main_~st~0=v_main_~st~0_637, ~last~0=v_~last~0_494} OutVars{~SIZE~0=v_~SIZE~0_445, main_#t~post5=|v_main_#t~post5_644|, main_~c~0=v_main_~c~0_1193, main_~st~0=v_main_~st~0_636, ~last~0=v_~last~0_494} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {106598#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:03:39,477 INFO L290 TraceCheckUtils]: 14: Hoare triple {106598#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [297] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {106598#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:03:39,478 INFO L290 TraceCheckUtils]: 15: Hoare triple {106598#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [298] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1196 v_main_~c~0_1195)) (.cse1 (= |v_main_#t~post5_649| |v_main_#t~post5_645|))) (or (and (< v_main_~c~0_1196 v_main_~c~0_1195) (< v_main_~c~0_1195 (+ v_~last~0_495 1)) (< v_main_~c~0_1195 (+ v_~SIZE~0_446 1))) (and (= v_~SIZE~0_446 v_~SIZE~0_446) .cse0 (= v_~last~0_495 v_~last~0_495) .cse1) (and .cse0 .cse1 (or (not (< v_main_~c~0_1196 v_~SIZE~0_446)) (not (< v_main_~c~0_1196 v_~last~0_495)))))) InVars {~SIZE~0=v_~SIZE~0_446, main_~c~0=v_main_~c~0_1196, main_#t~post5=|v_main_#t~post5_649|, ~last~0=v_~last~0_495} OutVars{~SIZE~0=v_~SIZE~0_446, main_#t~post5=|v_main_#t~post5_645|, main_~c~0=v_main_~c~0_1195, ~last~0=v_~last~0_495} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {106598#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:03:39,478 INFO L290 TraceCheckUtils]: 16: Hoare triple {106598#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [295] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {106599#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:03:39,478 INFO L290 TraceCheckUtils]: 17: Hoare triple {106599#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {106588#false} is VALID [2022-04-28 04:03:39,479 INFO L290 TraceCheckUtils]: 18: Hoare triple {106588#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {106588#false} is VALID [2022-04-28 04:03:39,479 INFO L290 TraceCheckUtils]: 19: Hoare triple {106588#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {106588#false} is VALID [2022-04-28 04:03:39,479 INFO L290 TraceCheckUtils]: 20: Hoare triple {106588#false} assume !(~d~0 == ~SIZE~0); {106588#false} is VALID [2022-04-28 04:03:39,479 INFO L272 TraceCheckUtils]: 21: Hoare triple {106588#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {106588#false} is VALID [2022-04-28 04:03:39,479 INFO L290 TraceCheckUtils]: 22: Hoare triple {106588#false} ~cond := #in~cond; {106588#false} is VALID [2022-04-28 04:03:39,479 INFO L290 TraceCheckUtils]: 23: Hoare triple {106588#false} assume 0 == ~cond; {106588#false} is VALID [2022-04-28 04:03:39,479 INFO L290 TraceCheckUtils]: 24: Hoare triple {106588#false} assume !false; {106588#false} is VALID [2022-04-28 04:03:39,479 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:03:39,479 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:03:39,479 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [75660486] [2022-04-28 04:03:39,479 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [75660486] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:03:39,479 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1125569450] [2022-04-28 04:03:39,479 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:03:39,480 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:03:39,480 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:03:39,480 INFO L229 MonitoredProcess]: Starting monitored process 49 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:03:39,481 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (49)] Waiting until timeout for monitored process [2022-04-28 04:03:39,522 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:03:39,522 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:03:39,527 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:03:39,528 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:03:39,770 INFO L272 TraceCheckUtils]: 0: Hoare triple {106587#true} call ULTIMATE.init(); {106587#true} is VALID [2022-04-28 04:03:39,771 INFO L290 TraceCheckUtils]: 1: Hoare triple {106587#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {106592#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:39,771 INFO L290 TraceCheckUtils]: 2: Hoare triple {106592#(<= 200000 ~SIZE~0)} assume true; {106592#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:39,772 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {106592#(<= 200000 ~SIZE~0)} {106587#true} #90#return; {106592#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:39,772 INFO L272 TraceCheckUtils]: 4: Hoare triple {106592#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {106592#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:39,772 INFO L290 TraceCheckUtils]: 5: Hoare triple {106592#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {106592#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:39,773 INFO L272 TraceCheckUtils]: 6: Hoare triple {106592#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {106592#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:39,773 INFO L290 TraceCheckUtils]: 7: Hoare triple {106592#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {106592#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:39,773 INFO L290 TraceCheckUtils]: 8: Hoare triple {106592#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {106592#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:39,773 INFO L290 TraceCheckUtils]: 9: Hoare triple {106592#(<= 200000 ~SIZE~0)} assume true; {106592#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:39,774 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {106592#(<= 200000 ~SIZE~0)} {106592#(<= 200000 ~SIZE~0)} #86#return; {106592#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:39,774 INFO L290 TraceCheckUtils]: 11: Hoare triple {106592#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {106592#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:39,774 INFO L290 TraceCheckUtils]: 12: Hoare triple {106592#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {106640#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:03:39,775 INFO L290 TraceCheckUtils]: 13: Hoare triple {106640#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [296] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~c~0_1194 v_main_~c~0_1193)) (.cse0 (<= v_~last~0_494 v_main_~c~0_1194)) (.cse2 (= v_main_~st~0_637 v_main_~st~0_636)) (.cse3 (= |v_main_#t~post5_646| |v_main_#t~post5_644|))) (or (and .cse0 (= v_main_~st~0_636 0) (< v_main_~c~0_1194 v_main_~c~0_1193) (< v_main_~c~0_1193 (+ v_~SIZE~0_445 1))) (and .cse1 (= v_~SIZE~0_445 v_~SIZE~0_445) .cse2 .cse3 (= v_~last~0_494 v_~last~0_494)) (and .cse1 (or (not (< v_main_~c~0_1194 v_~SIZE~0_445)) (not .cse0)) .cse2 .cse3))) InVars {~SIZE~0=v_~SIZE~0_445, main_~c~0=v_main_~c~0_1194, main_#t~post5=|v_main_#t~post5_646|, main_~st~0=v_main_~st~0_637, ~last~0=v_~last~0_494} OutVars{~SIZE~0=v_~SIZE~0_445, main_#t~post5=|v_main_#t~post5_644|, main_~c~0=v_main_~c~0_1193, main_~st~0=v_main_~st~0_636, ~last~0=v_~last~0_494} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {106644#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:03:39,776 INFO L290 TraceCheckUtils]: 14: Hoare triple {106644#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [297] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {106644#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:03:39,776 INFO L290 TraceCheckUtils]: 15: Hoare triple {106644#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [298] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1196 v_main_~c~0_1195)) (.cse1 (= |v_main_#t~post5_649| |v_main_#t~post5_645|))) (or (and (< v_main_~c~0_1196 v_main_~c~0_1195) (< v_main_~c~0_1195 (+ v_~last~0_495 1)) (< v_main_~c~0_1195 (+ v_~SIZE~0_446 1))) (and (= v_~SIZE~0_446 v_~SIZE~0_446) .cse0 (= v_~last~0_495 v_~last~0_495) .cse1) (and .cse0 .cse1 (or (not (< v_main_~c~0_1196 v_~SIZE~0_446)) (not (< v_main_~c~0_1196 v_~last~0_495)))))) InVars {~SIZE~0=v_~SIZE~0_446, main_~c~0=v_main_~c~0_1196, main_#t~post5=|v_main_#t~post5_649|, ~last~0=v_~last~0_495} OutVars{~SIZE~0=v_~SIZE~0_446, main_#t~post5=|v_main_#t~post5_645|, main_~c~0=v_main_~c~0_1195, ~last~0=v_~last~0_495} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {106644#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:03:39,777 INFO L290 TraceCheckUtils]: 16: Hoare triple {106644#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [295] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {106654#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:03:39,777 INFO L290 TraceCheckUtils]: 17: Hoare triple {106654#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {106588#false} is VALID [2022-04-28 04:03:39,777 INFO L290 TraceCheckUtils]: 18: Hoare triple {106588#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {106588#false} is VALID [2022-04-28 04:03:39,777 INFO L290 TraceCheckUtils]: 19: Hoare triple {106588#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {106588#false} is VALID [2022-04-28 04:03:39,778 INFO L290 TraceCheckUtils]: 20: Hoare triple {106588#false} assume !(~d~0 == ~SIZE~0); {106588#false} is VALID [2022-04-28 04:03:39,778 INFO L272 TraceCheckUtils]: 21: Hoare triple {106588#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {106588#false} is VALID [2022-04-28 04:03:39,778 INFO L290 TraceCheckUtils]: 22: Hoare triple {106588#false} ~cond := #in~cond; {106588#false} is VALID [2022-04-28 04:03:39,778 INFO L290 TraceCheckUtils]: 23: Hoare triple {106588#false} assume 0 == ~cond; {106588#false} is VALID [2022-04-28 04:03:39,778 INFO L290 TraceCheckUtils]: 24: Hoare triple {106588#false} assume !false; {106588#false} is VALID [2022-04-28 04:03:39,778 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:03:39,778 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:03:40,105 INFO L290 TraceCheckUtils]: 24: Hoare triple {106588#false} assume !false; {106588#false} is VALID [2022-04-28 04:03:40,105 INFO L290 TraceCheckUtils]: 23: Hoare triple {106588#false} assume 0 == ~cond; {106588#false} is VALID [2022-04-28 04:03:40,106 INFO L290 TraceCheckUtils]: 22: Hoare triple {106588#false} ~cond := #in~cond; {106588#false} is VALID [2022-04-28 04:03:40,106 INFO L272 TraceCheckUtils]: 21: Hoare triple {106588#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {106588#false} is VALID [2022-04-28 04:03:40,106 INFO L290 TraceCheckUtils]: 20: Hoare triple {106588#false} assume !(~d~0 == ~SIZE~0); {106588#false} is VALID [2022-04-28 04:03:40,106 INFO L290 TraceCheckUtils]: 19: Hoare triple {106588#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {106588#false} is VALID [2022-04-28 04:03:40,106 INFO L290 TraceCheckUtils]: 18: Hoare triple {106588#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {106588#false} is VALID [2022-04-28 04:03:40,106 INFO L290 TraceCheckUtils]: 17: Hoare triple {106700#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {106588#false} is VALID [2022-04-28 04:03:40,107 INFO L290 TraceCheckUtils]: 16: Hoare triple {106704#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [295] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {106700#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:03:40,107 INFO L290 TraceCheckUtils]: 15: Hoare triple {106704#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [298] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1196 v_main_~c~0_1195)) (.cse1 (= |v_main_#t~post5_649| |v_main_#t~post5_645|))) (or (and (< v_main_~c~0_1196 v_main_~c~0_1195) (< v_main_~c~0_1195 (+ v_~last~0_495 1)) (< v_main_~c~0_1195 (+ v_~SIZE~0_446 1))) (and (= v_~SIZE~0_446 v_~SIZE~0_446) .cse0 (= v_~last~0_495 v_~last~0_495) .cse1) (and .cse0 .cse1 (or (not (< v_main_~c~0_1196 v_~SIZE~0_446)) (not (< v_main_~c~0_1196 v_~last~0_495)))))) InVars {~SIZE~0=v_~SIZE~0_446, main_~c~0=v_main_~c~0_1196, main_#t~post5=|v_main_#t~post5_649|, ~last~0=v_~last~0_495} OutVars{~SIZE~0=v_~SIZE~0_446, main_#t~post5=|v_main_#t~post5_645|, main_~c~0=v_main_~c~0_1195, ~last~0=v_~last~0_495} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {106704#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:03:40,108 INFO L290 TraceCheckUtils]: 14: Hoare triple {106704#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [297] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {106704#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:03:40,108 INFO L290 TraceCheckUtils]: 13: Hoare triple {106714#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [296] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~c~0_1194 v_main_~c~0_1193)) (.cse0 (<= v_~last~0_494 v_main_~c~0_1194)) (.cse2 (= v_main_~st~0_637 v_main_~st~0_636)) (.cse3 (= |v_main_#t~post5_646| |v_main_#t~post5_644|))) (or (and .cse0 (= v_main_~st~0_636 0) (< v_main_~c~0_1194 v_main_~c~0_1193) (< v_main_~c~0_1193 (+ v_~SIZE~0_445 1))) (and .cse1 (= v_~SIZE~0_445 v_~SIZE~0_445) .cse2 .cse3 (= v_~last~0_494 v_~last~0_494)) (and .cse1 (or (not (< v_main_~c~0_1194 v_~SIZE~0_445)) (not .cse0)) .cse2 .cse3))) InVars {~SIZE~0=v_~SIZE~0_445, main_~c~0=v_main_~c~0_1194, main_#t~post5=|v_main_#t~post5_646|, main_~st~0=v_main_~st~0_637, ~last~0=v_~last~0_494} OutVars{~SIZE~0=v_~SIZE~0_445, main_#t~post5=|v_main_#t~post5_644|, main_~c~0=v_main_~c~0_1193, main_~st~0=v_main_~st~0_636, ~last~0=v_~last~0_494} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {106704#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:03:40,109 INFO L290 TraceCheckUtils]: 12: Hoare triple {106718#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {106714#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:03:40,109 INFO L290 TraceCheckUtils]: 11: Hoare triple {106718#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {106718#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:40,109 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {106587#true} {106718#(< 1 ~SIZE~0)} #86#return; {106718#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:40,109 INFO L290 TraceCheckUtils]: 9: Hoare triple {106587#true} assume true; {106587#true} is VALID [2022-04-28 04:03:40,109 INFO L290 TraceCheckUtils]: 8: Hoare triple {106587#true} assume !(0 == ~cond); {106587#true} is VALID [2022-04-28 04:03:40,109 INFO L290 TraceCheckUtils]: 7: Hoare triple {106587#true} ~cond := #in~cond; {106587#true} is VALID [2022-04-28 04:03:40,109 INFO L272 TraceCheckUtils]: 6: Hoare triple {106718#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {106587#true} is VALID [2022-04-28 04:03:40,110 INFO L290 TraceCheckUtils]: 5: Hoare triple {106718#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {106718#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:40,110 INFO L272 TraceCheckUtils]: 4: Hoare triple {106718#(< 1 ~SIZE~0)} call #t~ret7 := main(); {106718#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:40,110 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {106718#(< 1 ~SIZE~0)} {106587#true} #90#return; {106718#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:40,111 INFO L290 TraceCheckUtils]: 2: Hoare triple {106718#(< 1 ~SIZE~0)} assume true; {106718#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:40,111 INFO L290 TraceCheckUtils]: 1: Hoare triple {106587#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {106718#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:40,111 INFO L272 TraceCheckUtils]: 0: Hoare triple {106587#true} call ULTIMATE.init(); {106587#true} is VALID [2022-04-28 04:03:40,111 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:03:40,111 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1125569450] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:03:40,111 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:03:40,111 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:03:40,782 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:03:40,782 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [893664320] [2022-04-28 04:03:40,782 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [893664320] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:03:40,782 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:03:40,782 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [27] imperfect sequences [] total 27 [2022-04-28 04:03:40,782 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1779658791] [2022-04-28 04:03:40,782 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:03:40,782 INFO L78 Accepts]: Start accepts. Automaton has has 27 states, 27 states have (on average 1.7037037037037037) internal successors, (46), 26 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 52 [2022-04-28 04:03:40,782 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:03:40,782 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 27 states, 27 states have (on average 1.7037037037037037) internal successors, (46), 26 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:03:40,815 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 52 edges. 52 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:03:40,815 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 27 states [2022-04-28 04:03:40,815 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:03:40,815 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2022-04-28 04:03:40,815 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=272, Invalid=988, Unknown=0, NotChecked=0, Total=1260 [2022-04-28 04:03:40,815 INFO L87 Difference]: Start difference. First operand 316 states and 378 transitions. Second operand has 27 states, 27 states have (on average 1.7037037037037037) internal successors, (46), 26 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:03:44,070 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:03:44,071 INFO L93 Difference]: Finished difference Result 607 states and 734 transitions. [2022-04-28 04:03:44,071 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 27 states. [2022-04-28 04:03:44,071 INFO L78 Accepts]: Start accepts. Automaton has has 27 states, 27 states have (on average 1.7037037037037037) internal successors, (46), 26 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 52 [2022-04-28 04:03:44,071 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:03:44,071 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 27 states have (on average 1.7037037037037037) internal successors, (46), 26 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:03:44,072 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 110 transitions. [2022-04-28 04:03:44,072 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 27 states have (on average 1.7037037037037037) internal successors, (46), 26 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:03:44,072 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 110 transitions. [2022-04-28 04:03:44,072 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 27 states and 110 transitions. [2022-04-28 04:03:44,142 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 110 edges. 110 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:03:44,147 INFO L225 Difference]: With dead ends: 607 [2022-04-28 04:03:44,147 INFO L226 Difference]: Without dead ends: 353 [2022-04-28 04:03:44,148 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 100 GetRequests, 54 SyntacticMatches, 9 SemanticMatches, 37 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 724 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=317, Invalid=1165, Unknown=0, NotChecked=0, Total=1482 [2022-04-28 04:03:44,148 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 77 mSDsluCounter, 19 mSDsCounter, 0 mSdLazyCounter, 1130 mSolverCounterSat, 22 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 78 SdHoareTripleChecker+Valid, 43 SdHoareTripleChecker+Invalid, 1152 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 22 IncrementalHoareTripleChecker+Valid, 1130 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-28 04:03:44,148 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [78 Valid, 43 Invalid, 1152 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [22 Valid, 1130 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-28 04:03:44,148 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 353 states. [2022-04-28 04:03:45,746 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 353 to 328. [2022-04-28 04:03:45,746 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:03:45,746 INFO L82 GeneralOperation]: Start isEquivalent. First operand 353 states. Second operand has 328 states, 313 states have (on average 1.2044728434504792) internal successors, (377), 316 states have internal predecessors, (377), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:03:45,747 INFO L74 IsIncluded]: Start isIncluded. First operand 353 states. Second operand has 328 states, 313 states have (on average 1.2044728434504792) internal successors, (377), 316 states have internal predecessors, (377), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:03:45,747 INFO L87 Difference]: Start difference. First operand 353 states. Second operand has 328 states, 313 states have (on average 1.2044728434504792) internal successors, (377), 316 states have internal predecessors, (377), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:03:45,751 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:03:45,751 INFO L93 Difference]: Finished difference Result 353 states and 423 transitions. [2022-04-28 04:03:45,751 INFO L276 IsEmpty]: Start isEmpty. Operand 353 states and 423 transitions. [2022-04-28 04:03:45,751 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:03:45,751 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:03:45,752 INFO L74 IsIncluded]: Start isIncluded. First operand has 328 states, 313 states have (on average 1.2044728434504792) internal successors, (377), 316 states have internal predecessors, (377), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 353 states. [2022-04-28 04:03:45,752 INFO L87 Difference]: Start difference. First operand has 328 states, 313 states have (on average 1.2044728434504792) internal successors, (377), 316 states have internal predecessors, (377), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 353 states. [2022-04-28 04:03:45,756 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:03:45,756 INFO L93 Difference]: Finished difference Result 353 states and 423 transitions. [2022-04-28 04:03:45,756 INFO L276 IsEmpty]: Start isEmpty. Operand 353 states and 423 transitions. [2022-04-28 04:03:45,756 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:03:45,756 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:03:45,756 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:03:45,756 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:03:45,757 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 328 states, 313 states have (on average 1.2044728434504792) internal successors, (377), 316 states have internal predecessors, (377), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:03:45,761 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 328 states to 328 states and 394 transitions. [2022-04-28 04:03:45,761 INFO L78 Accepts]: Start accepts. Automaton has 328 states and 394 transitions. Word has length 52 [2022-04-28 04:03:45,761 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:03:45,761 INFO L495 AbstractCegarLoop]: Abstraction has 328 states and 394 transitions. [2022-04-28 04:03:45,761 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 27 states, 27 states have (on average 1.7037037037037037) internal successors, (46), 26 states have internal predecessors, (46), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:03:45,761 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 328 states and 394 transitions. [2022-04-28 04:03:47,054 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 394 edges. 394 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:03:47,054 INFO L276 IsEmpty]: Start isEmpty. Operand 328 states and 394 transitions. [2022-04-28 04:03:47,055 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-28 04:03:47,055 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:03:47,055 INFO L195 NwaCegarLoop]: trace histogram [11, 11, 10, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:03:47,072 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (49)] Forceful destruction successful, exit code 0 [2022-04-28 04:03:47,255 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 49 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable56 [2022-04-28 04:03:47,255 INFO L420 AbstractCegarLoop]: === Iteration 58 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:03:47,255 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:03:47,255 INFO L85 PathProgramCache]: Analyzing trace with hash -2013376257, now seen corresponding path program 46 times [2022-04-28 04:03:47,256 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:03:47,256 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [108125123] [2022-04-28 04:03:47,446 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:03:51,565 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:03:51,675 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:03:51,676 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:03:51,679 INFO L85 PathProgramCache]: Analyzing trace with hash 2073581761, now seen corresponding path program 1 times [2022-04-28 04:03:51,679 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:03:51,679 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1152569053] [2022-04-28 04:03:51,679 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:03:51,680 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:03:51,686 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:03:51,734 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:03:51,736 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:03:51,739 INFO L290 TraceCheckUtils]: 0: Hoare triple {109375#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {109367#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:51,739 INFO L290 TraceCheckUtils]: 1: Hoare triple {109367#(<= 200000 ~SIZE~0)} assume true; {109367#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:51,739 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {109367#(<= 200000 ~SIZE~0)} {109362#true} #90#return; {109367#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:51,740 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:03:51,740 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:03:51,741 INFO L290 TraceCheckUtils]: 0: Hoare triple {109362#true} ~cond := #in~cond; {109362#true} is VALID [2022-04-28 04:03:51,742 INFO L290 TraceCheckUtils]: 1: Hoare triple {109362#true} assume !(0 == ~cond); {109362#true} is VALID [2022-04-28 04:03:51,742 INFO L290 TraceCheckUtils]: 2: Hoare triple {109362#true} assume true; {109362#true} is VALID [2022-04-28 04:03:51,742 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {109362#true} {109367#(<= 200000 ~SIZE~0)} #86#return; {109367#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:51,742 INFO L272 TraceCheckUtils]: 0: Hoare triple {109362#true} call ULTIMATE.init(); {109375#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:03:51,743 INFO L290 TraceCheckUtils]: 1: Hoare triple {109375#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {109367#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:51,743 INFO L290 TraceCheckUtils]: 2: Hoare triple {109367#(<= 200000 ~SIZE~0)} assume true; {109367#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:51,744 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {109367#(<= 200000 ~SIZE~0)} {109362#true} #90#return; {109367#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:51,744 INFO L272 TraceCheckUtils]: 4: Hoare triple {109367#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {109367#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:51,744 INFO L290 TraceCheckUtils]: 5: Hoare triple {109367#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {109367#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:51,744 INFO L272 TraceCheckUtils]: 6: Hoare triple {109367#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {109362#true} is VALID [2022-04-28 04:03:51,744 INFO L290 TraceCheckUtils]: 7: Hoare triple {109362#true} ~cond := #in~cond; {109362#true} is VALID [2022-04-28 04:03:51,744 INFO L290 TraceCheckUtils]: 8: Hoare triple {109362#true} assume !(0 == ~cond); {109362#true} is VALID [2022-04-28 04:03:51,744 INFO L290 TraceCheckUtils]: 9: Hoare triple {109362#true} assume true; {109362#true} is VALID [2022-04-28 04:03:51,745 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {109362#true} {109367#(<= 200000 ~SIZE~0)} #86#return; {109367#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:51,745 INFO L290 TraceCheckUtils]: 11: Hoare triple {109367#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {109367#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:51,746 INFO L290 TraceCheckUtils]: 12: Hoare triple {109367#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {109372#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:03:51,746 INFO L290 TraceCheckUtils]: 13: Hoare triple {109372#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [300] L27-3-->L27-4_primed: Formula: (let ((.cse2 (<= v_~last~0_504 v_main_~c~0_1221)) (.cse0 (= v_main_~c~0_1221 v_main_~c~0_1220)) (.cse1 (= v_main_~st~0_647 v_main_~st~0_646))) (or (and .cse0 (= |v_main_#t~post5_657| |v_main_#t~post5_659|) .cse1 (or (not .cse2) (not (< v_main_~c~0_1221 v_~SIZE~0_454)))) (and .cse2 (< v_main_~c~0_1220 (+ v_~SIZE~0_454 1)) (= v_main_~st~0_646 0) (< v_main_~c~0_1221 v_main_~c~0_1220)) (and (= |v_main_#t~post5_659| |v_main_#t~post5_657|) .cse0 (= v_~last~0_504 v_~last~0_504) (= v_~SIZE~0_454 v_~SIZE~0_454) .cse1))) InVars {~SIZE~0=v_~SIZE~0_454, main_~c~0=v_main_~c~0_1221, main_#t~post5=|v_main_#t~post5_659|, main_~st~0=v_main_~st~0_647, ~last~0=v_~last~0_504} OutVars{~SIZE~0=v_~SIZE~0_454, main_#t~post5=|v_main_#t~post5_657|, main_~c~0=v_main_~c~0_1220, main_~st~0=v_main_~st~0_646, ~last~0=v_~last~0_504} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {109373#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:03:51,747 INFO L290 TraceCheckUtils]: 14: Hoare triple {109373#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [301] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {109373#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:03:51,747 INFO L290 TraceCheckUtils]: 15: Hoare triple {109373#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [302] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1223 v_main_~c~0_1222))) (or (and (= |v_main_#t~post5_658| |v_main_#t~post5_662|) (or (not (< v_main_~c~0_1223 v_~last~0_505)) (not (< v_main_~c~0_1223 v_~SIZE~0_455))) .cse0) (and (= v_~SIZE~0_455 v_~SIZE~0_455) .cse0 (= v_~last~0_505 v_~last~0_505) (= |v_main_#t~post5_662| |v_main_#t~post5_658|)) (and (< v_main_~c~0_1222 (+ v_~SIZE~0_455 1)) (< v_main_~c~0_1223 v_main_~c~0_1222) (< v_main_~c~0_1222 (+ v_~last~0_505 1))))) InVars {~SIZE~0=v_~SIZE~0_455, main_~c~0=v_main_~c~0_1223, main_#t~post5=|v_main_#t~post5_662|, ~last~0=v_~last~0_505} OutVars{~SIZE~0=v_~SIZE~0_455, main_#t~post5=|v_main_#t~post5_658|, main_~c~0=v_main_~c~0_1222, ~last~0=v_~last~0_505} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {109373#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:03:51,748 INFO L290 TraceCheckUtils]: 16: Hoare triple {109373#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [299] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {109374#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:03:51,748 INFO L290 TraceCheckUtils]: 17: Hoare triple {109374#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {109363#false} is VALID [2022-04-28 04:03:51,748 INFO L290 TraceCheckUtils]: 18: Hoare triple {109363#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {109363#false} is VALID [2022-04-28 04:03:51,748 INFO L290 TraceCheckUtils]: 19: Hoare triple {109363#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {109363#false} is VALID [2022-04-28 04:03:51,748 INFO L290 TraceCheckUtils]: 20: Hoare triple {109363#false} assume !(~d~0 == ~SIZE~0); {109363#false} is VALID [2022-04-28 04:03:51,748 INFO L272 TraceCheckUtils]: 21: Hoare triple {109363#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {109363#false} is VALID [2022-04-28 04:03:51,749 INFO L290 TraceCheckUtils]: 22: Hoare triple {109363#false} ~cond := #in~cond; {109363#false} is VALID [2022-04-28 04:03:51,749 INFO L290 TraceCheckUtils]: 23: Hoare triple {109363#false} assume 0 == ~cond; {109363#false} is VALID [2022-04-28 04:03:51,749 INFO L290 TraceCheckUtils]: 24: Hoare triple {109363#false} assume !false; {109363#false} is VALID [2022-04-28 04:03:51,749 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:03:51,749 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:03:51,749 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1152569053] [2022-04-28 04:03:51,749 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1152569053] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:03:51,749 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [972080392] [2022-04-28 04:03:51,749 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:03:51,749 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:03:51,749 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:03:51,750 INFO L229 MonitoredProcess]: Starting monitored process 50 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:03:51,751 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (50)] Waiting until timeout for monitored process [2022-04-28 04:03:51,780 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:03:51,781 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:03:51,788 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:03:51,788 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:03:52,026 INFO L272 TraceCheckUtils]: 0: Hoare triple {109362#true} call ULTIMATE.init(); {109362#true} is VALID [2022-04-28 04:03:52,027 INFO L290 TraceCheckUtils]: 1: Hoare triple {109362#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {109367#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:52,027 INFO L290 TraceCheckUtils]: 2: Hoare triple {109367#(<= 200000 ~SIZE~0)} assume true; {109367#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:52,027 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {109367#(<= 200000 ~SIZE~0)} {109362#true} #90#return; {109367#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:52,027 INFO L272 TraceCheckUtils]: 4: Hoare triple {109367#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {109367#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:52,028 INFO L290 TraceCheckUtils]: 5: Hoare triple {109367#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {109367#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:52,028 INFO L272 TraceCheckUtils]: 6: Hoare triple {109367#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {109367#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:52,028 INFO L290 TraceCheckUtils]: 7: Hoare triple {109367#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {109367#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:52,029 INFO L290 TraceCheckUtils]: 8: Hoare triple {109367#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {109367#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:52,029 INFO L290 TraceCheckUtils]: 9: Hoare triple {109367#(<= 200000 ~SIZE~0)} assume true; {109367#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:52,029 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {109367#(<= 200000 ~SIZE~0)} {109367#(<= 200000 ~SIZE~0)} #86#return; {109367#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:52,030 INFO L290 TraceCheckUtils]: 11: Hoare triple {109367#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {109367#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:03:52,030 INFO L290 TraceCheckUtils]: 12: Hoare triple {109367#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {109415#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:03:52,031 INFO L290 TraceCheckUtils]: 13: Hoare triple {109415#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [300] L27-3-->L27-4_primed: Formula: (let ((.cse2 (<= v_~last~0_504 v_main_~c~0_1221)) (.cse0 (= v_main_~c~0_1221 v_main_~c~0_1220)) (.cse1 (= v_main_~st~0_647 v_main_~st~0_646))) (or (and .cse0 (= |v_main_#t~post5_657| |v_main_#t~post5_659|) .cse1 (or (not .cse2) (not (< v_main_~c~0_1221 v_~SIZE~0_454)))) (and .cse2 (< v_main_~c~0_1220 (+ v_~SIZE~0_454 1)) (= v_main_~st~0_646 0) (< v_main_~c~0_1221 v_main_~c~0_1220)) (and (= |v_main_#t~post5_659| |v_main_#t~post5_657|) .cse0 (= v_~last~0_504 v_~last~0_504) (= v_~SIZE~0_454 v_~SIZE~0_454) .cse1))) InVars {~SIZE~0=v_~SIZE~0_454, main_~c~0=v_main_~c~0_1221, main_#t~post5=|v_main_#t~post5_659|, main_~st~0=v_main_~st~0_647, ~last~0=v_~last~0_504} OutVars{~SIZE~0=v_~SIZE~0_454, main_#t~post5=|v_main_#t~post5_657|, main_~c~0=v_main_~c~0_1220, main_~st~0=v_main_~st~0_646, ~last~0=v_~last~0_504} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {109419#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:03:52,031 INFO L290 TraceCheckUtils]: 14: Hoare triple {109419#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [301] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {109419#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:03:52,032 INFO L290 TraceCheckUtils]: 15: Hoare triple {109419#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [302] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1223 v_main_~c~0_1222))) (or (and (= |v_main_#t~post5_658| |v_main_#t~post5_662|) (or (not (< v_main_~c~0_1223 v_~last~0_505)) (not (< v_main_~c~0_1223 v_~SIZE~0_455))) .cse0) (and (= v_~SIZE~0_455 v_~SIZE~0_455) .cse0 (= v_~last~0_505 v_~last~0_505) (= |v_main_#t~post5_662| |v_main_#t~post5_658|)) (and (< v_main_~c~0_1222 (+ v_~SIZE~0_455 1)) (< v_main_~c~0_1223 v_main_~c~0_1222) (< v_main_~c~0_1222 (+ v_~last~0_505 1))))) InVars {~SIZE~0=v_~SIZE~0_455, main_~c~0=v_main_~c~0_1223, main_#t~post5=|v_main_#t~post5_662|, ~last~0=v_~last~0_505} OutVars{~SIZE~0=v_~SIZE~0_455, main_#t~post5=|v_main_#t~post5_658|, main_~c~0=v_main_~c~0_1222, ~last~0=v_~last~0_505} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {109419#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:03:52,033 INFO L290 TraceCheckUtils]: 16: Hoare triple {109419#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [299] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {109429#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:03:52,033 INFO L290 TraceCheckUtils]: 17: Hoare triple {109429#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {109363#false} is VALID [2022-04-28 04:03:52,033 INFO L290 TraceCheckUtils]: 18: Hoare triple {109363#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {109363#false} is VALID [2022-04-28 04:03:52,033 INFO L290 TraceCheckUtils]: 19: Hoare triple {109363#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {109363#false} is VALID [2022-04-28 04:03:52,033 INFO L290 TraceCheckUtils]: 20: Hoare triple {109363#false} assume !(~d~0 == ~SIZE~0); {109363#false} is VALID [2022-04-28 04:03:52,033 INFO L272 TraceCheckUtils]: 21: Hoare triple {109363#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {109363#false} is VALID [2022-04-28 04:03:52,033 INFO L290 TraceCheckUtils]: 22: Hoare triple {109363#false} ~cond := #in~cond; {109363#false} is VALID [2022-04-28 04:03:52,034 INFO L290 TraceCheckUtils]: 23: Hoare triple {109363#false} assume 0 == ~cond; {109363#false} is VALID [2022-04-28 04:03:52,034 INFO L290 TraceCheckUtils]: 24: Hoare triple {109363#false} assume !false; {109363#false} is VALID [2022-04-28 04:03:52,034 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:03:52,034 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:03:52,360 INFO L290 TraceCheckUtils]: 24: Hoare triple {109363#false} assume !false; {109363#false} is VALID [2022-04-28 04:03:52,360 INFO L290 TraceCheckUtils]: 23: Hoare triple {109363#false} assume 0 == ~cond; {109363#false} is VALID [2022-04-28 04:03:52,360 INFO L290 TraceCheckUtils]: 22: Hoare triple {109363#false} ~cond := #in~cond; {109363#false} is VALID [2022-04-28 04:03:52,360 INFO L272 TraceCheckUtils]: 21: Hoare triple {109363#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {109363#false} is VALID [2022-04-28 04:03:52,360 INFO L290 TraceCheckUtils]: 20: Hoare triple {109363#false} assume !(~d~0 == ~SIZE~0); {109363#false} is VALID [2022-04-28 04:03:52,360 INFO L290 TraceCheckUtils]: 19: Hoare triple {109363#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {109363#false} is VALID [2022-04-28 04:03:52,361 INFO L290 TraceCheckUtils]: 18: Hoare triple {109363#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {109363#false} is VALID [2022-04-28 04:03:52,361 INFO L290 TraceCheckUtils]: 17: Hoare triple {109475#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {109363#false} is VALID [2022-04-28 04:03:52,361 INFO L290 TraceCheckUtils]: 16: Hoare triple {109479#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [299] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {109475#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:03:52,362 INFO L290 TraceCheckUtils]: 15: Hoare triple {109479#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [302] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1223 v_main_~c~0_1222))) (or (and (= |v_main_#t~post5_658| |v_main_#t~post5_662|) (or (not (< v_main_~c~0_1223 v_~last~0_505)) (not (< v_main_~c~0_1223 v_~SIZE~0_455))) .cse0) (and (= v_~SIZE~0_455 v_~SIZE~0_455) .cse0 (= v_~last~0_505 v_~last~0_505) (= |v_main_#t~post5_662| |v_main_#t~post5_658|)) (and (< v_main_~c~0_1222 (+ v_~SIZE~0_455 1)) (< v_main_~c~0_1223 v_main_~c~0_1222) (< v_main_~c~0_1222 (+ v_~last~0_505 1))))) InVars {~SIZE~0=v_~SIZE~0_455, main_~c~0=v_main_~c~0_1223, main_#t~post5=|v_main_#t~post5_662|, ~last~0=v_~last~0_505} OutVars{~SIZE~0=v_~SIZE~0_455, main_#t~post5=|v_main_#t~post5_658|, main_~c~0=v_main_~c~0_1222, ~last~0=v_~last~0_505} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {109479#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:03:52,362 INFO L290 TraceCheckUtils]: 14: Hoare triple {109479#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [301] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {109479#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:03:52,363 INFO L290 TraceCheckUtils]: 13: Hoare triple {109489#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [300] L27-3-->L27-4_primed: Formula: (let ((.cse2 (<= v_~last~0_504 v_main_~c~0_1221)) (.cse0 (= v_main_~c~0_1221 v_main_~c~0_1220)) (.cse1 (= v_main_~st~0_647 v_main_~st~0_646))) (or (and .cse0 (= |v_main_#t~post5_657| |v_main_#t~post5_659|) .cse1 (or (not .cse2) (not (< v_main_~c~0_1221 v_~SIZE~0_454)))) (and .cse2 (< v_main_~c~0_1220 (+ v_~SIZE~0_454 1)) (= v_main_~st~0_646 0) (< v_main_~c~0_1221 v_main_~c~0_1220)) (and (= |v_main_#t~post5_659| |v_main_#t~post5_657|) .cse0 (= v_~last~0_504 v_~last~0_504) (= v_~SIZE~0_454 v_~SIZE~0_454) .cse1))) InVars {~SIZE~0=v_~SIZE~0_454, main_~c~0=v_main_~c~0_1221, main_#t~post5=|v_main_#t~post5_659|, main_~st~0=v_main_~st~0_647, ~last~0=v_~last~0_504} OutVars{~SIZE~0=v_~SIZE~0_454, main_#t~post5=|v_main_#t~post5_657|, main_~c~0=v_main_~c~0_1220, main_~st~0=v_main_~st~0_646, ~last~0=v_~last~0_504} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {109479#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:03:52,363 INFO L290 TraceCheckUtils]: 12: Hoare triple {109493#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {109489#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:03:52,363 INFO L290 TraceCheckUtils]: 11: Hoare triple {109493#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {109493#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:52,364 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {109362#true} {109493#(< 1 ~SIZE~0)} #86#return; {109493#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:52,364 INFO L290 TraceCheckUtils]: 9: Hoare triple {109362#true} assume true; {109362#true} is VALID [2022-04-28 04:03:52,364 INFO L290 TraceCheckUtils]: 8: Hoare triple {109362#true} assume !(0 == ~cond); {109362#true} is VALID [2022-04-28 04:03:52,364 INFO L290 TraceCheckUtils]: 7: Hoare triple {109362#true} ~cond := #in~cond; {109362#true} is VALID [2022-04-28 04:03:52,364 INFO L272 TraceCheckUtils]: 6: Hoare triple {109493#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {109362#true} is VALID [2022-04-28 04:03:52,364 INFO L290 TraceCheckUtils]: 5: Hoare triple {109493#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {109493#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:52,365 INFO L272 TraceCheckUtils]: 4: Hoare triple {109493#(< 1 ~SIZE~0)} call #t~ret7 := main(); {109493#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:52,365 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {109493#(< 1 ~SIZE~0)} {109362#true} #90#return; {109493#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:52,365 INFO L290 TraceCheckUtils]: 2: Hoare triple {109493#(< 1 ~SIZE~0)} assume true; {109493#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:52,366 INFO L290 TraceCheckUtils]: 1: Hoare triple {109362#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {109493#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:03:52,366 INFO L272 TraceCheckUtils]: 0: Hoare triple {109362#true} call ULTIMATE.init(); {109362#true} is VALID [2022-04-28 04:03:52,366 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:03:52,366 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [972080392] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:03:52,366 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:03:52,366 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:03:53,003 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:03:53,004 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [108125123] [2022-04-28 04:03:53,004 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [108125123] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:03:53,004 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:03:53,004 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [20] imperfect sequences [] total 20 [2022-04-28 04:03:53,004 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1810961892] [2022-04-28 04:03:53,004 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:03:53,004 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 20 states have (on average 2.45) internal successors, (49), 19 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 55 [2022-04-28 04:03:53,004 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:03:53,004 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 20 states, 20 states have (on average 2.45) internal successors, (49), 19 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:03:53,039 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:03:53,039 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 20 states [2022-04-28 04:03:53,039 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:03:53,040 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2022-04-28 04:03:53,040 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=158, Invalid=654, Unknown=0, NotChecked=0, Total=812 [2022-04-28 04:03:53,040 INFO L87 Difference]: Start difference. First operand 328 states and 394 transitions. Second operand has 20 states, 20 states have (on average 2.45) internal successors, (49), 19 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:03:57,039 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:03:57,039 INFO L93 Difference]: Finished difference Result 673 states and 797 transitions. [2022-04-28 04:03:57,039 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-04-28 04:03:57,039 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 20 states have (on average 2.45) internal successors, (49), 19 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 55 [2022-04-28 04:03:57,040 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:03:57,040 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 20 states have (on average 2.45) internal successors, (49), 19 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:03:57,040 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 104 transitions. [2022-04-28 04:03:57,040 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 20 states have (on average 2.45) internal successors, (49), 19 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:03:57,041 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 104 transitions. [2022-04-28 04:03:57,041 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 104 transitions. [2022-04-28 04:03:57,108 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 104 edges. 104 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:03:57,118 INFO L225 Difference]: With dead ends: 673 [2022-04-28 04:03:57,118 INFO L226 Difference]: Without dead ends: 421 [2022-04-28 04:03:57,118 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 103 GetRequests, 54 SyntacticMatches, 19 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 682 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=187, Invalid=805, Unknown=0, NotChecked=0, Total=992 [2022-04-28 04:03:57,119 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 51 mSDsluCounter, 26 mSDsCounter, 0 mSdLazyCounter, 1099 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 52 SdHoareTripleChecker+Valid, 50 SdHoareTripleChecker+Invalid, 1112 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 1099 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-28 04:03:57,119 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [52 Valid, 50 Invalid, 1112 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 1099 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-28 04:03:57,119 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 421 states. [2022-04-28 04:03:58,846 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 421 to 337. [2022-04-28 04:03:58,846 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:03:58,847 INFO L82 GeneralOperation]: Start isEquivalent. First operand 421 states. Second operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:03:58,847 INFO L74 IsIncluded]: Start isIncluded. First operand 421 states. Second operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:03:58,847 INFO L87 Difference]: Start difference. First operand 421 states. Second operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:03:58,856 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:03:58,856 INFO L93 Difference]: Finished difference Result 421 states and 491 transitions. [2022-04-28 04:03:58,856 INFO L276 IsEmpty]: Start isEmpty. Operand 421 states and 491 transitions. [2022-04-28 04:03:58,856 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:03:58,856 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:03:58,857 INFO L74 IsIncluded]: Start isIncluded. First operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 421 states. [2022-04-28 04:03:58,857 INFO L87 Difference]: Start difference. First operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 421 states. [2022-04-28 04:03:58,865 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:03:58,865 INFO L93 Difference]: Finished difference Result 421 states and 491 transitions. [2022-04-28 04:03:58,865 INFO L276 IsEmpty]: Start isEmpty. Operand 421 states and 491 transitions. [2022-04-28 04:03:58,866 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:03:58,866 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:03:58,866 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:03:58,866 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:03:58,866 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:03:58,873 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 337 states to 337 states and 403 transitions. [2022-04-28 04:03:58,873 INFO L78 Accepts]: Start accepts. Automaton has 337 states and 403 transitions. Word has length 55 [2022-04-28 04:03:58,873 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:03:58,873 INFO L495 AbstractCegarLoop]: Abstraction has 337 states and 403 transitions. [2022-04-28 04:03:58,874 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 20 states, 20 states have (on average 2.45) internal successors, (49), 19 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:03:58,874 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 337 states and 403 transitions. [2022-04-28 04:04:00,508 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 403 edges. 403 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:04:00,508 INFO L276 IsEmpty]: Start isEmpty. Operand 337 states and 403 transitions. [2022-04-28 04:04:00,508 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-28 04:04:00,508 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:04:00,508 INFO L195 NwaCegarLoop]: trace histogram [11, 11, 9, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:04:00,533 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (50)] Forceful destruction successful, exit code 0 [2022-04-28 04:04:00,709 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 50 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable57 [2022-04-28 04:04:00,711 INFO L420 AbstractCegarLoop]: === Iteration 59 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:04:00,711 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:04:00,711 INFO L85 PathProgramCache]: Analyzing trace with hash 1252231741, now seen corresponding path program 47 times [2022-04-28 04:04:00,711 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:04:00,711 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1444689636] [2022-04-28 04:04:00,920 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:04:01,118 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:04:01,119 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:04:01,122 INFO L85 PathProgramCache]: Analyzing trace with hash 271137217, now seen corresponding path program 1 times [2022-04-28 04:04:01,122 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:04:01,122 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [909709581] [2022-04-28 04:04:01,122 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:04:01,122 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:04:01,128 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:04:01,166 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:04:01,167 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:04:01,185 INFO L290 TraceCheckUtils]: 0: Hoare triple {112429#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {112421#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:01,186 INFO L290 TraceCheckUtils]: 1: Hoare triple {112421#(<= 200000 ~SIZE~0)} assume true; {112421#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:01,186 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {112421#(<= 200000 ~SIZE~0)} {112416#true} #90#return; {112421#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:01,186 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:04:01,187 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:04:01,188 INFO L290 TraceCheckUtils]: 0: Hoare triple {112416#true} ~cond := #in~cond; {112416#true} is VALID [2022-04-28 04:04:01,188 INFO L290 TraceCheckUtils]: 1: Hoare triple {112416#true} assume !(0 == ~cond); {112416#true} is VALID [2022-04-28 04:04:01,188 INFO L290 TraceCheckUtils]: 2: Hoare triple {112416#true} assume true; {112416#true} is VALID [2022-04-28 04:04:01,189 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {112416#true} {112421#(<= 200000 ~SIZE~0)} #86#return; {112421#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:01,189 INFO L272 TraceCheckUtils]: 0: Hoare triple {112416#true} call ULTIMATE.init(); {112429#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:04:01,189 INFO L290 TraceCheckUtils]: 1: Hoare triple {112429#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {112421#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:01,190 INFO L290 TraceCheckUtils]: 2: Hoare triple {112421#(<= 200000 ~SIZE~0)} assume true; {112421#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:01,190 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {112421#(<= 200000 ~SIZE~0)} {112416#true} #90#return; {112421#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:01,190 INFO L272 TraceCheckUtils]: 4: Hoare triple {112421#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {112421#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:01,191 INFO L290 TraceCheckUtils]: 5: Hoare triple {112421#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {112421#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:01,191 INFO L272 TraceCheckUtils]: 6: Hoare triple {112421#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {112416#true} is VALID [2022-04-28 04:04:01,191 INFO L290 TraceCheckUtils]: 7: Hoare triple {112416#true} ~cond := #in~cond; {112416#true} is VALID [2022-04-28 04:04:01,191 INFO L290 TraceCheckUtils]: 8: Hoare triple {112416#true} assume !(0 == ~cond); {112416#true} is VALID [2022-04-28 04:04:01,191 INFO L290 TraceCheckUtils]: 9: Hoare triple {112416#true} assume true; {112416#true} is VALID [2022-04-28 04:04:01,191 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {112416#true} {112421#(<= 200000 ~SIZE~0)} #86#return; {112421#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:01,192 INFO L290 TraceCheckUtils]: 11: Hoare triple {112421#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {112421#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:01,192 INFO L290 TraceCheckUtils]: 12: Hoare triple {112421#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {112426#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:04:01,193 INFO L290 TraceCheckUtils]: 13: Hoare triple {112426#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [304] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1249 v_main_~c~0_1248)) (.cse1 (= |v_main_#t~post5_672| |v_main_#t~post5_670|)) (.cse2 (= v_main_~st~0_666 v_main_~st~0_665)) (.cse3 (<= v_~last~0_514 v_main_~c~0_1249))) (or (and (= v_~last~0_514 v_~last~0_514) .cse0 .cse1 .cse2 (= v_~SIZE~0_463 v_~SIZE~0_463)) (and .cse0 .cse1 .cse2 (or (not (< v_main_~c~0_1249 v_~SIZE~0_463)) (not .cse3))) (and (< v_main_~c~0_1248 (+ v_~SIZE~0_463 1)) (= v_main_~st~0_665 0) (< v_main_~c~0_1249 v_main_~c~0_1248) .cse3))) InVars {~SIZE~0=v_~SIZE~0_463, main_~c~0=v_main_~c~0_1249, main_#t~post5=|v_main_#t~post5_672|, main_~st~0=v_main_~st~0_666, ~last~0=v_~last~0_514} OutVars{~SIZE~0=v_~SIZE~0_463, main_#t~post5=|v_main_#t~post5_670|, main_~c~0=v_main_~c~0_1248, main_~st~0=v_main_~st~0_665, ~last~0=v_~last~0_514} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {112427#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:04:01,193 INFO L290 TraceCheckUtils]: 14: Hoare triple {112427#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [305] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {112427#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:04:01,193 INFO L290 TraceCheckUtils]: 15: Hoare triple {112427#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [306] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1251 v_main_~c~0_1250)) (.cse1 (= |v_main_#t~post5_675| |v_main_#t~post5_671|))) (or (and (or (not (< v_main_~c~0_1251 v_~last~0_515)) (not (< v_main_~c~0_1251 v_~SIZE~0_464))) .cse0 .cse1) (and (= v_~SIZE~0_464 v_~SIZE~0_464) .cse0 .cse1 (= v_~last~0_515 v_~last~0_515)) (and (< v_main_~c~0_1251 v_main_~c~0_1250) (< v_main_~c~0_1250 (+ v_~last~0_515 1)) (< v_main_~c~0_1250 (+ v_~SIZE~0_464 1))))) InVars {~SIZE~0=v_~SIZE~0_464, main_~c~0=v_main_~c~0_1251, main_#t~post5=|v_main_#t~post5_675|, ~last~0=v_~last~0_515} OutVars{~SIZE~0=v_~SIZE~0_464, main_#t~post5=|v_main_#t~post5_671|, main_~c~0=v_main_~c~0_1250, ~last~0=v_~last~0_515} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {112427#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:04:01,194 INFO L290 TraceCheckUtils]: 16: Hoare triple {112427#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [303] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {112428#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:04:01,194 INFO L290 TraceCheckUtils]: 17: Hoare triple {112428#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {112417#false} is VALID [2022-04-28 04:04:01,194 INFO L290 TraceCheckUtils]: 18: Hoare triple {112417#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {112417#false} is VALID [2022-04-28 04:04:01,194 INFO L290 TraceCheckUtils]: 19: Hoare triple {112417#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {112417#false} is VALID [2022-04-28 04:04:01,195 INFO L290 TraceCheckUtils]: 20: Hoare triple {112417#false} assume !(~d~0 == ~SIZE~0); {112417#false} is VALID [2022-04-28 04:04:01,195 INFO L272 TraceCheckUtils]: 21: Hoare triple {112417#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {112417#false} is VALID [2022-04-28 04:04:01,195 INFO L290 TraceCheckUtils]: 22: Hoare triple {112417#false} ~cond := #in~cond; {112417#false} is VALID [2022-04-28 04:04:01,195 INFO L290 TraceCheckUtils]: 23: Hoare triple {112417#false} assume 0 == ~cond; {112417#false} is VALID [2022-04-28 04:04:01,195 INFO L290 TraceCheckUtils]: 24: Hoare triple {112417#false} assume !false; {112417#false} is VALID [2022-04-28 04:04:01,195 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:04:01,195 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:04:01,195 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [909709581] [2022-04-28 04:04:01,195 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [909709581] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:04:01,195 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [383969295] [2022-04-28 04:04:01,195 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:04:01,195 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:04:01,195 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:04:01,196 INFO L229 MonitoredProcess]: Starting monitored process 51 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:04:01,197 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (51)] Waiting until timeout for monitored process [2022-04-28 04:04:01,226 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:04:01,226 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:04:01,232 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:04:01,233 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:04:01,455 INFO L272 TraceCheckUtils]: 0: Hoare triple {112416#true} call ULTIMATE.init(); {112416#true} is VALID [2022-04-28 04:04:01,455 INFO L290 TraceCheckUtils]: 1: Hoare triple {112416#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {112421#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:01,456 INFO L290 TraceCheckUtils]: 2: Hoare triple {112421#(<= 200000 ~SIZE~0)} assume true; {112421#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:01,456 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {112421#(<= 200000 ~SIZE~0)} {112416#true} #90#return; {112421#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:01,456 INFO L272 TraceCheckUtils]: 4: Hoare triple {112421#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {112421#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:01,457 INFO L290 TraceCheckUtils]: 5: Hoare triple {112421#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {112421#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:01,457 INFO L272 TraceCheckUtils]: 6: Hoare triple {112421#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {112421#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:01,457 INFO L290 TraceCheckUtils]: 7: Hoare triple {112421#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {112421#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:01,457 INFO L290 TraceCheckUtils]: 8: Hoare triple {112421#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {112421#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:01,458 INFO L290 TraceCheckUtils]: 9: Hoare triple {112421#(<= 200000 ~SIZE~0)} assume true; {112421#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:01,458 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {112421#(<= 200000 ~SIZE~0)} {112421#(<= 200000 ~SIZE~0)} #86#return; {112421#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:01,458 INFO L290 TraceCheckUtils]: 11: Hoare triple {112421#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {112421#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:01,459 INFO L290 TraceCheckUtils]: 12: Hoare triple {112421#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {112469#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:04:01,459 INFO L290 TraceCheckUtils]: 13: Hoare triple {112469#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [304] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1249 v_main_~c~0_1248)) (.cse1 (= |v_main_#t~post5_672| |v_main_#t~post5_670|)) (.cse2 (= v_main_~st~0_666 v_main_~st~0_665)) (.cse3 (<= v_~last~0_514 v_main_~c~0_1249))) (or (and (= v_~last~0_514 v_~last~0_514) .cse0 .cse1 .cse2 (= v_~SIZE~0_463 v_~SIZE~0_463)) (and .cse0 .cse1 .cse2 (or (not (< v_main_~c~0_1249 v_~SIZE~0_463)) (not .cse3))) (and (< v_main_~c~0_1248 (+ v_~SIZE~0_463 1)) (= v_main_~st~0_665 0) (< v_main_~c~0_1249 v_main_~c~0_1248) .cse3))) InVars {~SIZE~0=v_~SIZE~0_463, main_~c~0=v_main_~c~0_1249, main_#t~post5=|v_main_#t~post5_672|, main_~st~0=v_main_~st~0_666, ~last~0=v_~last~0_514} OutVars{~SIZE~0=v_~SIZE~0_463, main_#t~post5=|v_main_#t~post5_670|, main_~c~0=v_main_~c~0_1248, main_~st~0=v_main_~st~0_665, ~last~0=v_~last~0_514} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {112473#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:04:01,460 INFO L290 TraceCheckUtils]: 14: Hoare triple {112473#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [305] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {112473#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:04:01,460 INFO L290 TraceCheckUtils]: 15: Hoare triple {112473#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [306] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1251 v_main_~c~0_1250)) (.cse1 (= |v_main_#t~post5_675| |v_main_#t~post5_671|))) (or (and (or (not (< v_main_~c~0_1251 v_~last~0_515)) (not (< v_main_~c~0_1251 v_~SIZE~0_464))) .cse0 .cse1) (and (= v_~SIZE~0_464 v_~SIZE~0_464) .cse0 .cse1 (= v_~last~0_515 v_~last~0_515)) (and (< v_main_~c~0_1251 v_main_~c~0_1250) (< v_main_~c~0_1250 (+ v_~last~0_515 1)) (< v_main_~c~0_1250 (+ v_~SIZE~0_464 1))))) InVars {~SIZE~0=v_~SIZE~0_464, main_~c~0=v_main_~c~0_1251, main_#t~post5=|v_main_#t~post5_675|, ~last~0=v_~last~0_515} OutVars{~SIZE~0=v_~SIZE~0_464, main_#t~post5=|v_main_#t~post5_671|, main_~c~0=v_main_~c~0_1250, ~last~0=v_~last~0_515} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {112473#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:04:01,461 INFO L290 TraceCheckUtils]: 16: Hoare triple {112473#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [303] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {112483#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:04:01,461 INFO L290 TraceCheckUtils]: 17: Hoare triple {112483#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {112417#false} is VALID [2022-04-28 04:04:01,461 INFO L290 TraceCheckUtils]: 18: Hoare triple {112417#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {112417#false} is VALID [2022-04-28 04:04:01,461 INFO L290 TraceCheckUtils]: 19: Hoare triple {112417#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {112417#false} is VALID [2022-04-28 04:04:01,462 INFO L290 TraceCheckUtils]: 20: Hoare triple {112417#false} assume !(~d~0 == ~SIZE~0); {112417#false} is VALID [2022-04-28 04:04:01,462 INFO L272 TraceCheckUtils]: 21: Hoare triple {112417#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {112417#false} is VALID [2022-04-28 04:04:01,462 INFO L290 TraceCheckUtils]: 22: Hoare triple {112417#false} ~cond := #in~cond; {112417#false} is VALID [2022-04-28 04:04:01,462 INFO L290 TraceCheckUtils]: 23: Hoare triple {112417#false} assume 0 == ~cond; {112417#false} is VALID [2022-04-28 04:04:01,462 INFO L290 TraceCheckUtils]: 24: Hoare triple {112417#false} assume !false; {112417#false} is VALID [2022-04-28 04:04:01,462 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:04:01,462 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:04:01,781 INFO L290 TraceCheckUtils]: 24: Hoare triple {112417#false} assume !false; {112417#false} is VALID [2022-04-28 04:04:01,781 INFO L290 TraceCheckUtils]: 23: Hoare triple {112417#false} assume 0 == ~cond; {112417#false} is VALID [2022-04-28 04:04:01,782 INFO L290 TraceCheckUtils]: 22: Hoare triple {112417#false} ~cond := #in~cond; {112417#false} is VALID [2022-04-28 04:04:01,782 INFO L272 TraceCheckUtils]: 21: Hoare triple {112417#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {112417#false} is VALID [2022-04-28 04:04:01,782 INFO L290 TraceCheckUtils]: 20: Hoare triple {112417#false} assume !(~d~0 == ~SIZE~0); {112417#false} is VALID [2022-04-28 04:04:01,782 INFO L290 TraceCheckUtils]: 19: Hoare triple {112417#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {112417#false} is VALID [2022-04-28 04:04:01,782 INFO L290 TraceCheckUtils]: 18: Hoare triple {112417#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {112417#false} is VALID [2022-04-28 04:04:01,782 INFO L290 TraceCheckUtils]: 17: Hoare triple {112529#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {112417#false} is VALID [2022-04-28 04:04:01,783 INFO L290 TraceCheckUtils]: 16: Hoare triple {112533#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [303] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {112529#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:04:01,783 INFO L290 TraceCheckUtils]: 15: Hoare triple {112533#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [306] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1251 v_main_~c~0_1250)) (.cse1 (= |v_main_#t~post5_675| |v_main_#t~post5_671|))) (or (and (or (not (< v_main_~c~0_1251 v_~last~0_515)) (not (< v_main_~c~0_1251 v_~SIZE~0_464))) .cse0 .cse1) (and (= v_~SIZE~0_464 v_~SIZE~0_464) .cse0 .cse1 (= v_~last~0_515 v_~last~0_515)) (and (< v_main_~c~0_1251 v_main_~c~0_1250) (< v_main_~c~0_1250 (+ v_~last~0_515 1)) (< v_main_~c~0_1250 (+ v_~SIZE~0_464 1))))) InVars {~SIZE~0=v_~SIZE~0_464, main_~c~0=v_main_~c~0_1251, main_#t~post5=|v_main_#t~post5_675|, ~last~0=v_~last~0_515} OutVars{~SIZE~0=v_~SIZE~0_464, main_#t~post5=|v_main_#t~post5_671|, main_~c~0=v_main_~c~0_1250, ~last~0=v_~last~0_515} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {112533#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:04:01,783 INFO L290 TraceCheckUtils]: 14: Hoare triple {112533#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [305] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {112533#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:04:01,784 INFO L290 TraceCheckUtils]: 13: Hoare triple {112543#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [304] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1249 v_main_~c~0_1248)) (.cse1 (= |v_main_#t~post5_672| |v_main_#t~post5_670|)) (.cse2 (= v_main_~st~0_666 v_main_~st~0_665)) (.cse3 (<= v_~last~0_514 v_main_~c~0_1249))) (or (and (= v_~last~0_514 v_~last~0_514) .cse0 .cse1 .cse2 (= v_~SIZE~0_463 v_~SIZE~0_463)) (and .cse0 .cse1 .cse2 (or (not (< v_main_~c~0_1249 v_~SIZE~0_463)) (not .cse3))) (and (< v_main_~c~0_1248 (+ v_~SIZE~0_463 1)) (= v_main_~st~0_665 0) (< v_main_~c~0_1249 v_main_~c~0_1248) .cse3))) InVars {~SIZE~0=v_~SIZE~0_463, main_~c~0=v_main_~c~0_1249, main_#t~post5=|v_main_#t~post5_672|, main_~st~0=v_main_~st~0_666, ~last~0=v_~last~0_514} OutVars{~SIZE~0=v_~SIZE~0_463, main_#t~post5=|v_main_#t~post5_670|, main_~c~0=v_main_~c~0_1248, main_~st~0=v_main_~st~0_665, ~last~0=v_~last~0_514} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {112533#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:04:01,784 INFO L290 TraceCheckUtils]: 12: Hoare triple {112547#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {112543#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:04:01,785 INFO L290 TraceCheckUtils]: 11: Hoare triple {112547#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {112547#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:01,785 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {112416#true} {112547#(< 1 ~SIZE~0)} #86#return; {112547#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:01,785 INFO L290 TraceCheckUtils]: 9: Hoare triple {112416#true} assume true; {112416#true} is VALID [2022-04-28 04:04:01,785 INFO L290 TraceCheckUtils]: 8: Hoare triple {112416#true} assume !(0 == ~cond); {112416#true} is VALID [2022-04-28 04:04:01,785 INFO L290 TraceCheckUtils]: 7: Hoare triple {112416#true} ~cond := #in~cond; {112416#true} is VALID [2022-04-28 04:04:01,785 INFO L272 TraceCheckUtils]: 6: Hoare triple {112547#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {112416#true} is VALID [2022-04-28 04:04:01,786 INFO L290 TraceCheckUtils]: 5: Hoare triple {112547#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {112547#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:01,786 INFO L272 TraceCheckUtils]: 4: Hoare triple {112547#(< 1 ~SIZE~0)} call #t~ret7 := main(); {112547#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:01,786 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {112547#(< 1 ~SIZE~0)} {112416#true} #90#return; {112547#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:01,786 INFO L290 TraceCheckUtils]: 2: Hoare triple {112547#(< 1 ~SIZE~0)} assume true; {112547#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:01,787 INFO L290 TraceCheckUtils]: 1: Hoare triple {112416#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {112547#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:01,787 INFO L272 TraceCheckUtils]: 0: Hoare triple {112416#true} call ULTIMATE.init(); {112416#true} is VALID [2022-04-28 04:04:01,787 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:04:01,787 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [383969295] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:04:01,787 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:04:01,787 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:04:02,430 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:04:02,430 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1444689636] [2022-04-28 04:04:02,430 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1444689636] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:04:02,430 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:04:02,430 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [21] imperfect sequences [] total 21 [2022-04-28 04:04:02,430 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1878908729] [2022-04-28 04:04:02,430 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:04:02,430 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 20 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 55 [2022-04-28 04:04:02,431 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:04:02,431 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 21 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 20 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:04:02,471 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:04:02,471 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2022-04-28 04:04:02,471 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:04:02,471 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2022-04-28 04:04:02,471 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=173, Invalid=697, Unknown=0, NotChecked=0, Total=870 [2022-04-28 04:04:02,471 INFO L87 Difference]: Start difference. First operand 337 states and 403 transitions. Second operand has 21 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 20 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:04:06,768 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:04:06,768 INFO L93 Difference]: Finished difference Result 691 states and 815 transitions. [2022-04-28 04:04:06,768 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2022-04-28 04:04:06,768 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 20 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 55 [2022-04-28 04:04:06,768 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:04:06,768 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 20 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:04:06,769 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 105 transitions. [2022-04-28 04:04:06,769 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 20 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:04:06,770 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 105 transitions. [2022-04-28 04:04:06,770 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 21 states and 105 transitions. [2022-04-28 04:04:06,846 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 105 edges. 105 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:04:06,858 INFO L225 Difference]: With dead ends: 691 [2022-04-28 04:04:06,858 INFO L226 Difference]: Without dead ends: 430 [2022-04-28 04:04:06,859 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 103 GetRequests, 54 SyntacticMatches, 18 SemanticMatches, 31 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 732 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=204, Invalid=852, Unknown=0, NotChecked=0, Total=1056 [2022-04-28 04:04:06,859 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 49 mSDsluCounter, 34 mSDsCounter, 0 mSdLazyCounter, 1186 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 50 SdHoareTripleChecker+Valid, 58 SdHoareTripleChecker+Invalid, 1200 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 1186 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-28 04:04:06,859 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [50 Valid, 58 Invalid, 1200 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 1186 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-04-28 04:04:06,860 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 430 states. [2022-04-28 04:04:08,644 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 430 to 337. [2022-04-28 04:04:08,645 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:04:08,645 INFO L82 GeneralOperation]: Start isEquivalent. First operand 430 states. Second operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:04:08,645 INFO L74 IsIncluded]: Start isIncluded. First operand 430 states. Second operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:04:08,645 INFO L87 Difference]: Start difference. First operand 430 states. Second operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:04:08,652 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:04:08,652 INFO L93 Difference]: Finished difference Result 430 states and 500 transitions. [2022-04-28 04:04:08,652 INFO L276 IsEmpty]: Start isEmpty. Operand 430 states and 500 transitions. [2022-04-28 04:04:08,652 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:04:08,652 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:04:08,653 INFO L74 IsIncluded]: Start isIncluded. First operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 430 states. [2022-04-28 04:04:08,653 INFO L87 Difference]: Start difference. First operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 430 states. [2022-04-28 04:04:08,659 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:04:08,659 INFO L93 Difference]: Finished difference Result 430 states and 500 transitions. [2022-04-28 04:04:08,659 INFO L276 IsEmpty]: Start isEmpty. Operand 430 states and 500 transitions. [2022-04-28 04:04:08,659 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:04:08,659 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:04:08,659 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:04:08,659 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:04:08,660 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:04:08,664 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 337 states to 337 states and 403 transitions. [2022-04-28 04:04:08,664 INFO L78 Accepts]: Start accepts. Automaton has 337 states and 403 transitions. Word has length 55 [2022-04-28 04:04:08,665 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:04:08,665 INFO L495 AbstractCegarLoop]: Abstraction has 337 states and 403 transitions. [2022-04-28 04:04:08,665 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 21 states have (on average 2.3333333333333335) internal successors, (49), 20 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:04:08,665 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 337 states and 403 transitions. [2022-04-28 04:04:10,153 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 403 edges. 403 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:04:10,153 INFO L276 IsEmpty]: Start isEmpty. Operand 337 states and 403 transitions. [2022-04-28 04:04:10,153 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-28 04:04:10,153 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:04:10,153 INFO L195 NwaCegarLoop]: trace histogram [11, 11, 8, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:04:10,171 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (51)] Forceful destruction successful, exit code 0 [2022-04-28 04:04:10,354 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 51 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable58 [2022-04-28 04:04:10,354 INFO L420 AbstractCegarLoop]: === Iteration 60 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:04:10,354 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:04:10,354 INFO L85 PathProgramCache]: Analyzing trace with hash 408226239, now seen corresponding path program 48 times [2022-04-28 04:04:10,354 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:04:10,354 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [810046615] [2022-04-28 04:04:10,583 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:04:10,781 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:04:10,782 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:04:10,784 INFO L85 PathProgramCache]: Analyzing trace with hash -1531307327, now seen corresponding path program 1 times [2022-04-28 04:04:10,784 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:04:10,785 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1611442704] [2022-04-28 04:04:10,785 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:04:10,785 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:04:10,791 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:04:10,846 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:04:10,847 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:04:10,850 INFO L290 TraceCheckUtils]: 0: Hoare triple {115538#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {115530#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:10,850 INFO L290 TraceCheckUtils]: 1: Hoare triple {115530#(<= 200000 ~SIZE~0)} assume true; {115530#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:10,851 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {115530#(<= 200000 ~SIZE~0)} {115525#true} #90#return; {115530#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:10,851 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:04:10,851 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:04:10,853 INFO L290 TraceCheckUtils]: 0: Hoare triple {115525#true} ~cond := #in~cond; {115525#true} is VALID [2022-04-28 04:04:10,853 INFO L290 TraceCheckUtils]: 1: Hoare triple {115525#true} assume !(0 == ~cond); {115525#true} is VALID [2022-04-28 04:04:10,853 INFO L290 TraceCheckUtils]: 2: Hoare triple {115525#true} assume true; {115525#true} is VALID [2022-04-28 04:04:10,853 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {115525#true} {115530#(<= 200000 ~SIZE~0)} #86#return; {115530#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:10,854 INFO L272 TraceCheckUtils]: 0: Hoare triple {115525#true} call ULTIMATE.init(); {115538#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:04:10,854 INFO L290 TraceCheckUtils]: 1: Hoare triple {115538#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {115530#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:10,854 INFO L290 TraceCheckUtils]: 2: Hoare triple {115530#(<= 200000 ~SIZE~0)} assume true; {115530#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:10,855 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {115530#(<= 200000 ~SIZE~0)} {115525#true} #90#return; {115530#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:10,855 INFO L272 TraceCheckUtils]: 4: Hoare triple {115530#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {115530#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:10,855 INFO L290 TraceCheckUtils]: 5: Hoare triple {115530#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {115530#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:10,855 INFO L272 TraceCheckUtils]: 6: Hoare triple {115530#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {115525#true} is VALID [2022-04-28 04:04:10,855 INFO L290 TraceCheckUtils]: 7: Hoare triple {115525#true} ~cond := #in~cond; {115525#true} is VALID [2022-04-28 04:04:10,856 INFO L290 TraceCheckUtils]: 8: Hoare triple {115525#true} assume !(0 == ~cond); {115525#true} is VALID [2022-04-28 04:04:10,856 INFO L290 TraceCheckUtils]: 9: Hoare triple {115525#true} assume true; {115525#true} is VALID [2022-04-28 04:04:10,856 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {115525#true} {115530#(<= 200000 ~SIZE~0)} #86#return; {115530#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:10,856 INFO L290 TraceCheckUtils]: 11: Hoare triple {115530#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {115530#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:10,857 INFO L290 TraceCheckUtils]: 12: Hoare triple {115530#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {115535#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:04:10,857 INFO L290 TraceCheckUtils]: 13: Hoare triple {115535#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [308] L27-3-->L27-4_primed: Formula: (let ((.cse3 (<= v_~last~0_524 v_main_~c~0_1277)) (.cse0 (= v_main_~c~0_1277 v_main_~c~0_1276)) (.cse1 (= v_main_~st~0_684 v_main_~st~0_683)) (.cse2 (= |v_main_#t~post5_685| |v_main_#t~post5_683|))) (or (and (= v_~last~0_524 v_~last~0_524) .cse0 (= v_~SIZE~0_472 v_~SIZE~0_472) .cse1 .cse2) (and (= v_main_~st~0_683 0) .cse3 (< v_main_~c~0_1276 (+ v_~SIZE~0_472 1)) (< v_main_~c~0_1277 v_main_~c~0_1276)) (and (or (not .cse3) (not (< v_main_~c~0_1277 v_~SIZE~0_472))) .cse0 .cse1 .cse2))) InVars {~SIZE~0=v_~SIZE~0_472, main_~c~0=v_main_~c~0_1277, main_#t~post5=|v_main_#t~post5_685|, main_~st~0=v_main_~st~0_684, ~last~0=v_~last~0_524} OutVars{~SIZE~0=v_~SIZE~0_472, main_#t~post5=|v_main_#t~post5_683|, main_~c~0=v_main_~c~0_1276, main_~st~0=v_main_~st~0_683, ~last~0=v_~last~0_524} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {115536#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:04:10,858 INFO L290 TraceCheckUtils]: 14: Hoare triple {115536#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [309] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {115536#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:04:10,858 INFO L290 TraceCheckUtils]: 15: Hoare triple {115536#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [310] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_688| |v_main_#t~post5_684|)) (.cse1 (= v_main_~c~0_1279 v_main_~c~0_1278))) (or (and (< v_main_~c~0_1278 (+ v_~SIZE~0_473 1)) (< v_main_~c~0_1279 v_main_~c~0_1278) (< v_main_~c~0_1278 (+ v_~last~0_525 1))) (and .cse0 (= v_~SIZE~0_473 v_~SIZE~0_473) .cse1 (= v_~last~0_525 v_~last~0_525)) (and .cse0 .cse1 (or (not (< v_main_~c~0_1279 v_~SIZE~0_473)) (not (< v_main_~c~0_1279 v_~last~0_525)))))) InVars {~SIZE~0=v_~SIZE~0_473, main_~c~0=v_main_~c~0_1279, main_#t~post5=|v_main_#t~post5_688|, ~last~0=v_~last~0_525} OutVars{~SIZE~0=v_~SIZE~0_473, main_#t~post5=|v_main_#t~post5_684|, main_~c~0=v_main_~c~0_1278, ~last~0=v_~last~0_525} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {115536#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:04:10,858 INFO L290 TraceCheckUtils]: 16: Hoare triple {115536#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [307] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {115537#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:04:10,859 INFO L290 TraceCheckUtils]: 17: Hoare triple {115537#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {115526#false} is VALID [2022-04-28 04:04:10,859 INFO L290 TraceCheckUtils]: 18: Hoare triple {115526#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {115526#false} is VALID [2022-04-28 04:04:10,859 INFO L290 TraceCheckUtils]: 19: Hoare triple {115526#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {115526#false} is VALID [2022-04-28 04:04:10,859 INFO L290 TraceCheckUtils]: 20: Hoare triple {115526#false} assume !(~d~0 == ~SIZE~0); {115526#false} is VALID [2022-04-28 04:04:10,859 INFO L272 TraceCheckUtils]: 21: Hoare triple {115526#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {115526#false} is VALID [2022-04-28 04:04:10,859 INFO L290 TraceCheckUtils]: 22: Hoare triple {115526#false} ~cond := #in~cond; {115526#false} is VALID [2022-04-28 04:04:10,859 INFO L290 TraceCheckUtils]: 23: Hoare triple {115526#false} assume 0 == ~cond; {115526#false} is VALID [2022-04-28 04:04:10,859 INFO L290 TraceCheckUtils]: 24: Hoare triple {115526#false} assume !false; {115526#false} is VALID [2022-04-28 04:04:10,859 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:04:10,859 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:04:10,860 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1611442704] [2022-04-28 04:04:10,860 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1611442704] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:04:10,860 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [743538867] [2022-04-28 04:04:10,860 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:04:10,860 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:04:10,860 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:04:10,861 INFO L229 MonitoredProcess]: Starting monitored process 52 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:04:10,861 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (52)] Waiting until timeout for monitored process [2022-04-28 04:04:10,888 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:04:10,889 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:04:10,895 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:04:10,895 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:04:11,143 INFO L272 TraceCheckUtils]: 0: Hoare triple {115525#true} call ULTIMATE.init(); {115525#true} is VALID [2022-04-28 04:04:11,144 INFO L290 TraceCheckUtils]: 1: Hoare triple {115525#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {115530#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:11,144 INFO L290 TraceCheckUtils]: 2: Hoare triple {115530#(<= 200000 ~SIZE~0)} assume true; {115530#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:11,144 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {115530#(<= 200000 ~SIZE~0)} {115525#true} #90#return; {115530#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:11,145 INFO L272 TraceCheckUtils]: 4: Hoare triple {115530#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {115530#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:11,145 INFO L290 TraceCheckUtils]: 5: Hoare triple {115530#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {115530#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:11,145 INFO L272 TraceCheckUtils]: 6: Hoare triple {115530#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {115530#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:11,146 INFO L290 TraceCheckUtils]: 7: Hoare triple {115530#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {115530#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:11,146 INFO L290 TraceCheckUtils]: 8: Hoare triple {115530#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {115530#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:11,146 INFO L290 TraceCheckUtils]: 9: Hoare triple {115530#(<= 200000 ~SIZE~0)} assume true; {115530#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:11,147 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {115530#(<= 200000 ~SIZE~0)} {115530#(<= 200000 ~SIZE~0)} #86#return; {115530#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:11,147 INFO L290 TraceCheckUtils]: 11: Hoare triple {115530#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {115530#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:11,147 INFO L290 TraceCheckUtils]: 12: Hoare triple {115530#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {115578#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:04:11,148 INFO L290 TraceCheckUtils]: 13: Hoare triple {115578#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [308] L27-3-->L27-4_primed: Formula: (let ((.cse3 (<= v_~last~0_524 v_main_~c~0_1277)) (.cse0 (= v_main_~c~0_1277 v_main_~c~0_1276)) (.cse1 (= v_main_~st~0_684 v_main_~st~0_683)) (.cse2 (= |v_main_#t~post5_685| |v_main_#t~post5_683|))) (or (and (= v_~last~0_524 v_~last~0_524) .cse0 (= v_~SIZE~0_472 v_~SIZE~0_472) .cse1 .cse2) (and (= v_main_~st~0_683 0) .cse3 (< v_main_~c~0_1276 (+ v_~SIZE~0_472 1)) (< v_main_~c~0_1277 v_main_~c~0_1276)) (and (or (not .cse3) (not (< v_main_~c~0_1277 v_~SIZE~0_472))) .cse0 .cse1 .cse2))) InVars {~SIZE~0=v_~SIZE~0_472, main_~c~0=v_main_~c~0_1277, main_#t~post5=|v_main_#t~post5_685|, main_~st~0=v_main_~st~0_684, ~last~0=v_~last~0_524} OutVars{~SIZE~0=v_~SIZE~0_472, main_#t~post5=|v_main_#t~post5_683|, main_~c~0=v_main_~c~0_1276, main_~st~0=v_main_~st~0_683, ~last~0=v_~last~0_524} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {115582#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:04:11,148 INFO L290 TraceCheckUtils]: 14: Hoare triple {115582#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [309] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {115582#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:04:11,149 INFO L290 TraceCheckUtils]: 15: Hoare triple {115582#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [310] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_688| |v_main_#t~post5_684|)) (.cse1 (= v_main_~c~0_1279 v_main_~c~0_1278))) (or (and (< v_main_~c~0_1278 (+ v_~SIZE~0_473 1)) (< v_main_~c~0_1279 v_main_~c~0_1278) (< v_main_~c~0_1278 (+ v_~last~0_525 1))) (and .cse0 (= v_~SIZE~0_473 v_~SIZE~0_473) .cse1 (= v_~last~0_525 v_~last~0_525)) (and .cse0 .cse1 (or (not (< v_main_~c~0_1279 v_~SIZE~0_473)) (not (< v_main_~c~0_1279 v_~last~0_525)))))) InVars {~SIZE~0=v_~SIZE~0_473, main_~c~0=v_main_~c~0_1279, main_#t~post5=|v_main_#t~post5_688|, ~last~0=v_~last~0_525} OutVars{~SIZE~0=v_~SIZE~0_473, main_#t~post5=|v_main_#t~post5_684|, main_~c~0=v_main_~c~0_1278, ~last~0=v_~last~0_525} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {115582#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:04:11,150 INFO L290 TraceCheckUtils]: 16: Hoare triple {115582#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [307] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {115592#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:04:11,150 INFO L290 TraceCheckUtils]: 17: Hoare triple {115592#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {115526#false} is VALID [2022-04-28 04:04:11,150 INFO L290 TraceCheckUtils]: 18: Hoare triple {115526#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {115526#false} is VALID [2022-04-28 04:04:11,150 INFO L290 TraceCheckUtils]: 19: Hoare triple {115526#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {115526#false} is VALID [2022-04-28 04:04:11,150 INFO L290 TraceCheckUtils]: 20: Hoare triple {115526#false} assume !(~d~0 == ~SIZE~0); {115526#false} is VALID [2022-04-28 04:04:11,150 INFO L272 TraceCheckUtils]: 21: Hoare triple {115526#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {115526#false} is VALID [2022-04-28 04:04:11,151 INFO L290 TraceCheckUtils]: 22: Hoare triple {115526#false} ~cond := #in~cond; {115526#false} is VALID [2022-04-28 04:04:11,151 INFO L290 TraceCheckUtils]: 23: Hoare triple {115526#false} assume 0 == ~cond; {115526#false} is VALID [2022-04-28 04:04:11,151 INFO L290 TraceCheckUtils]: 24: Hoare triple {115526#false} assume !false; {115526#false} is VALID [2022-04-28 04:04:11,151 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:04:11,151 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:04:11,444 INFO L290 TraceCheckUtils]: 24: Hoare triple {115526#false} assume !false; {115526#false} is VALID [2022-04-28 04:04:11,444 INFO L290 TraceCheckUtils]: 23: Hoare triple {115526#false} assume 0 == ~cond; {115526#false} is VALID [2022-04-28 04:04:11,444 INFO L290 TraceCheckUtils]: 22: Hoare triple {115526#false} ~cond := #in~cond; {115526#false} is VALID [2022-04-28 04:04:11,444 INFO L272 TraceCheckUtils]: 21: Hoare triple {115526#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {115526#false} is VALID [2022-04-28 04:04:11,444 INFO L290 TraceCheckUtils]: 20: Hoare triple {115526#false} assume !(~d~0 == ~SIZE~0); {115526#false} is VALID [2022-04-28 04:04:11,444 INFO L290 TraceCheckUtils]: 19: Hoare triple {115526#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {115526#false} is VALID [2022-04-28 04:04:11,444 INFO L290 TraceCheckUtils]: 18: Hoare triple {115526#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {115526#false} is VALID [2022-04-28 04:04:11,445 INFO L290 TraceCheckUtils]: 17: Hoare triple {115638#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {115526#false} is VALID [2022-04-28 04:04:11,445 INFO L290 TraceCheckUtils]: 16: Hoare triple {115642#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [307] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {115638#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:04:11,446 INFO L290 TraceCheckUtils]: 15: Hoare triple {115642#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [310] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_688| |v_main_#t~post5_684|)) (.cse1 (= v_main_~c~0_1279 v_main_~c~0_1278))) (or (and (< v_main_~c~0_1278 (+ v_~SIZE~0_473 1)) (< v_main_~c~0_1279 v_main_~c~0_1278) (< v_main_~c~0_1278 (+ v_~last~0_525 1))) (and .cse0 (= v_~SIZE~0_473 v_~SIZE~0_473) .cse1 (= v_~last~0_525 v_~last~0_525)) (and .cse0 .cse1 (or (not (< v_main_~c~0_1279 v_~SIZE~0_473)) (not (< v_main_~c~0_1279 v_~last~0_525)))))) InVars {~SIZE~0=v_~SIZE~0_473, main_~c~0=v_main_~c~0_1279, main_#t~post5=|v_main_#t~post5_688|, ~last~0=v_~last~0_525} OutVars{~SIZE~0=v_~SIZE~0_473, main_#t~post5=|v_main_#t~post5_684|, main_~c~0=v_main_~c~0_1278, ~last~0=v_~last~0_525} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {115642#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:04:11,446 INFO L290 TraceCheckUtils]: 14: Hoare triple {115642#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [309] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {115642#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:04:11,447 INFO L290 TraceCheckUtils]: 13: Hoare triple {115652#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [308] L27-3-->L27-4_primed: Formula: (let ((.cse3 (<= v_~last~0_524 v_main_~c~0_1277)) (.cse0 (= v_main_~c~0_1277 v_main_~c~0_1276)) (.cse1 (= v_main_~st~0_684 v_main_~st~0_683)) (.cse2 (= |v_main_#t~post5_685| |v_main_#t~post5_683|))) (or (and (= v_~last~0_524 v_~last~0_524) .cse0 (= v_~SIZE~0_472 v_~SIZE~0_472) .cse1 .cse2) (and (= v_main_~st~0_683 0) .cse3 (< v_main_~c~0_1276 (+ v_~SIZE~0_472 1)) (< v_main_~c~0_1277 v_main_~c~0_1276)) (and (or (not .cse3) (not (< v_main_~c~0_1277 v_~SIZE~0_472))) .cse0 .cse1 .cse2))) InVars {~SIZE~0=v_~SIZE~0_472, main_~c~0=v_main_~c~0_1277, main_#t~post5=|v_main_#t~post5_685|, main_~st~0=v_main_~st~0_684, ~last~0=v_~last~0_524} OutVars{~SIZE~0=v_~SIZE~0_472, main_#t~post5=|v_main_#t~post5_683|, main_~c~0=v_main_~c~0_1276, main_~st~0=v_main_~st~0_683, ~last~0=v_~last~0_524} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {115642#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:04:11,447 INFO L290 TraceCheckUtils]: 12: Hoare triple {115656#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {115652#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:04:11,447 INFO L290 TraceCheckUtils]: 11: Hoare triple {115656#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {115656#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:11,448 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {115525#true} {115656#(< 1 ~SIZE~0)} #86#return; {115656#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:11,448 INFO L290 TraceCheckUtils]: 9: Hoare triple {115525#true} assume true; {115525#true} is VALID [2022-04-28 04:04:11,448 INFO L290 TraceCheckUtils]: 8: Hoare triple {115525#true} assume !(0 == ~cond); {115525#true} is VALID [2022-04-28 04:04:11,448 INFO L290 TraceCheckUtils]: 7: Hoare triple {115525#true} ~cond := #in~cond; {115525#true} is VALID [2022-04-28 04:04:11,448 INFO L272 TraceCheckUtils]: 6: Hoare triple {115656#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {115525#true} is VALID [2022-04-28 04:04:11,448 INFO L290 TraceCheckUtils]: 5: Hoare triple {115656#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {115656#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:11,448 INFO L272 TraceCheckUtils]: 4: Hoare triple {115656#(< 1 ~SIZE~0)} call #t~ret7 := main(); {115656#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:11,449 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {115656#(< 1 ~SIZE~0)} {115525#true} #90#return; {115656#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:11,449 INFO L290 TraceCheckUtils]: 2: Hoare triple {115656#(< 1 ~SIZE~0)} assume true; {115656#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:11,449 INFO L290 TraceCheckUtils]: 1: Hoare triple {115525#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {115656#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:11,450 INFO L272 TraceCheckUtils]: 0: Hoare triple {115525#true} call ULTIMATE.init(); {115525#true} is VALID [2022-04-28 04:04:11,450 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:04:11,450 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [743538867] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:04:11,450 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:04:11,450 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:04:12,108 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:04:12,109 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [810046615] [2022-04-28 04:04:12,109 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [810046615] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:04:12,109 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:04:12,109 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [22] imperfect sequences [] total 22 [2022-04-28 04:04:12,109 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [150044451] [2022-04-28 04:04:12,109 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:04:12,109 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 22 states have (on average 2.227272727272727) internal successors, (49), 21 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 55 [2022-04-28 04:04:12,109 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:04:12,109 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 22 states, 22 states have (on average 2.227272727272727) internal successors, (49), 21 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:04:12,145 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:04:12,145 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-04-28 04:04:12,145 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:04:12,146 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-04-28 04:04:12,146 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=188, Invalid=742, Unknown=0, NotChecked=0, Total=930 [2022-04-28 04:04:12,146 INFO L87 Difference]: Start difference. First operand 337 states and 403 transitions. Second operand has 22 states, 22 states have (on average 2.227272727272727) internal successors, (49), 21 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:04:16,185 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:04:16,185 INFO L93 Difference]: Finished difference Result 682 states and 806 transitions. [2022-04-28 04:04:16,185 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-28 04:04:16,185 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 22 states have (on average 2.227272727272727) internal successors, (49), 21 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 55 [2022-04-28 04:04:16,185 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:04:16,185 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 22 states have (on average 2.227272727272727) internal successors, (49), 21 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:04:16,186 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 106 transitions. [2022-04-28 04:04:16,186 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 22 states have (on average 2.227272727272727) internal successors, (49), 21 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:04:16,186 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 106 transitions. [2022-04-28 04:04:16,187 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 106 transitions. [2022-04-28 04:04:16,256 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 106 edges. 106 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:04:16,263 INFO L225 Difference]: With dead ends: 682 [2022-04-28 04:04:16,263 INFO L226 Difference]: Without dead ends: 421 [2022-04-28 04:04:16,264 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 103 GetRequests, 54 SyntacticMatches, 17 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 773 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=221, Invalid=901, Unknown=0, NotChecked=0, Total=1122 [2022-04-28 04:04:16,264 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 58 mSDsluCounter, 26 mSDsCounter, 0 mSdLazyCounter, 1040 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 59 SdHoareTripleChecker+Valid, 50 SdHoareTripleChecker+Invalid, 1055 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 1040 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-28 04:04:16,264 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [59 Valid, 50 Invalid, 1055 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 1040 Invalid, 0 Unknown, 0 Unchecked, 0.7s Time] [2022-04-28 04:04:16,264 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 421 states. [2022-04-28 04:04:17,982 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 421 to 337. [2022-04-28 04:04:17,982 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:04:17,983 INFO L82 GeneralOperation]: Start isEquivalent. First operand 421 states. Second operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:04:17,983 INFO L74 IsIncluded]: Start isIncluded. First operand 421 states. Second operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:04:17,983 INFO L87 Difference]: Start difference. First operand 421 states. Second operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:04:17,990 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:04:17,990 INFO L93 Difference]: Finished difference Result 421 states and 491 transitions. [2022-04-28 04:04:17,990 INFO L276 IsEmpty]: Start isEmpty. Operand 421 states and 491 transitions. [2022-04-28 04:04:17,990 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:04:17,990 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:04:17,990 INFO L74 IsIncluded]: Start isIncluded. First operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 421 states. [2022-04-28 04:04:17,990 INFO L87 Difference]: Start difference. First operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 421 states. [2022-04-28 04:04:17,996 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:04:17,996 INFO L93 Difference]: Finished difference Result 421 states and 491 transitions. [2022-04-28 04:04:17,996 INFO L276 IsEmpty]: Start isEmpty. Operand 421 states and 491 transitions. [2022-04-28 04:04:17,997 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:04:17,997 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:04:17,997 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:04:17,997 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:04:17,997 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:04:18,002 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 337 states to 337 states and 403 transitions. [2022-04-28 04:04:18,002 INFO L78 Accepts]: Start accepts. Automaton has 337 states and 403 transitions. Word has length 55 [2022-04-28 04:04:18,002 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:04:18,002 INFO L495 AbstractCegarLoop]: Abstraction has 337 states and 403 transitions. [2022-04-28 04:04:18,002 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 22 states, 22 states have (on average 2.227272727272727) internal successors, (49), 21 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:04:18,002 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 337 states and 403 transitions. [2022-04-28 04:04:19,534 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 403 edges. 403 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:04:19,534 INFO L276 IsEmpty]: Start isEmpty. Operand 337 states and 403 transitions. [2022-04-28 04:04:19,534 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-28 04:04:19,534 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:04:19,534 INFO L195 NwaCegarLoop]: trace histogram [11, 11, 7, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:04:19,552 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (52)] Ended with exit code 0 [2022-04-28 04:04:19,734 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 52 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable59 [2022-04-28 04:04:19,735 INFO L420 AbstractCegarLoop]: === Iteration 61 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:04:19,735 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:04:19,735 INFO L85 PathProgramCache]: Analyzing trace with hash 682985853, now seen corresponding path program 49 times [2022-04-28 04:04:19,735 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:04:19,735 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1237524854] [2022-04-28 04:04:23,858 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:04:23,968 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:04:24,169 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:04:24,170 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:04:24,172 INFO L85 PathProgramCache]: Analyzing trace with hash 961215425, now seen corresponding path program 1 times [2022-04-28 04:04:24,172 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:04:24,173 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [730713272] [2022-04-28 04:04:24,173 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:04:24,173 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:04:24,179 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:04:24,228 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:04:24,229 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:04:24,233 INFO L290 TraceCheckUtils]: 0: Hoare triple {118612#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {118604#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:24,234 INFO L290 TraceCheckUtils]: 1: Hoare triple {118604#(<= 200000 ~SIZE~0)} assume true; {118604#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:24,234 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {118604#(<= 200000 ~SIZE~0)} {118599#true} #90#return; {118604#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:24,234 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:04:24,234 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:04:24,236 INFO L290 TraceCheckUtils]: 0: Hoare triple {118599#true} ~cond := #in~cond; {118599#true} is VALID [2022-04-28 04:04:24,236 INFO L290 TraceCheckUtils]: 1: Hoare triple {118599#true} assume !(0 == ~cond); {118599#true} is VALID [2022-04-28 04:04:24,236 INFO L290 TraceCheckUtils]: 2: Hoare triple {118599#true} assume true; {118599#true} is VALID [2022-04-28 04:04:24,236 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {118599#true} {118604#(<= 200000 ~SIZE~0)} #86#return; {118604#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:24,237 INFO L272 TraceCheckUtils]: 0: Hoare triple {118599#true} call ULTIMATE.init(); {118612#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:04:24,237 INFO L290 TraceCheckUtils]: 1: Hoare triple {118612#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {118604#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:24,238 INFO L290 TraceCheckUtils]: 2: Hoare triple {118604#(<= 200000 ~SIZE~0)} assume true; {118604#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:24,238 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {118604#(<= 200000 ~SIZE~0)} {118599#true} #90#return; {118604#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:24,238 INFO L272 TraceCheckUtils]: 4: Hoare triple {118604#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {118604#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:24,238 INFO L290 TraceCheckUtils]: 5: Hoare triple {118604#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {118604#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:24,238 INFO L272 TraceCheckUtils]: 6: Hoare triple {118604#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {118599#true} is VALID [2022-04-28 04:04:24,239 INFO L290 TraceCheckUtils]: 7: Hoare triple {118599#true} ~cond := #in~cond; {118599#true} is VALID [2022-04-28 04:04:24,239 INFO L290 TraceCheckUtils]: 8: Hoare triple {118599#true} assume !(0 == ~cond); {118599#true} is VALID [2022-04-28 04:04:24,239 INFO L290 TraceCheckUtils]: 9: Hoare triple {118599#true} assume true; {118599#true} is VALID [2022-04-28 04:04:24,239 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {118599#true} {118604#(<= 200000 ~SIZE~0)} #86#return; {118604#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:24,239 INFO L290 TraceCheckUtils]: 11: Hoare triple {118604#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {118604#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:24,240 INFO L290 TraceCheckUtils]: 12: Hoare triple {118604#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {118609#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:04:24,240 INFO L290 TraceCheckUtils]: 13: Hoare triple {118609#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [312] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1305 v_main_~c~0_1304)) (.cse1 (= |v_main_#t~post5_698| |v_main_#t~post5_696|)) (.cse2 (= v_main_~st~0_701 v_main_~st~0_700)) (.cse3 (<= v_~last~0_534 v_main_~c~0_1305))) (or (and .cse0 (= v_~last~0_534 v_~last~0_534) (= v_~SIZE~0_481 v_~SIZE~0_481) .cse1 .cse2) (and (or (not (< v_main_~c~0_1305 v_~SIZE~0_481)) (not .cse3)) .cse0 .cse1 .cse2) (and .cse3 (< v_main_~c~0_1305 v_main_~c~0_1304) (= v_main_~st~0_700 0) (< v_main_~c~0_1304 (+ v_~SIZE~0_481 1))))) InVars {~SIZE~0=v_~SIZE~0_481, main_~c~0=v_main_~c~0_1305, main_#t~post5=|v_main_#t~post5_698|, main_~st~0=v_main_~st~0_701, ~last~0=v_~last~0_534} OutVars{~SIZE~0=v_~SIZE~0_481, main_#t~post5=|v_main_#t~post5_696|, main_~c~0=v_main_~c~0_1304, main_~st~0=v_main_~st~0_700, ~last~0=v_~last~0_534} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {118610#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:04:24,241 INFO L290 TraceCheckUtils]: 14: Hoare triple {118610#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [313] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {118610#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:04:24,241 INFO L290 TraceCheckUtils]: 15: Hoare triple {118610#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [314] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_701| |v_main_#t~post5_697|)) (.cse1 (= v_main_~c~0_1307 v_main_~c~0_1306))) (or (and (= v_~last~0_535 v_~last~0_535) .cse0 .cse1 (= v_~SIZE~0_482 v_~SIZE~0_482)) (and (< v_main_~c~0_1307 v_main_~c~0_1306) (< v_main_~c~0_1306 (+ v_~SIZE~0_482 1)) (< v_main_~c~0_1306 (+ v_~last~0_535 1))) (and .cse0 .cse1 (or (not (< v_main_~c~0_1307 v_~SIZE~0_482)) (not (< v_main_~c~0_1307 v_~last~0_535)))))) InVars {~SIZE~0=v_~SIZE~0_482, main_~c~0=v_main_~c~0_1307, main_#t~post5=|v_main_#t~post5_701|, ~last~0=v_~last~0_535} OutVars{~SIZE~0=v_~SIZE~0_482, main_#t~post5=|v_main_#t~post5_697|, main_~c~0=v_main_~c~0_1306, ~last~0=v_~last~0_535} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {118610#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:04:24,242 INFO L290 TraceCheckUtils]: 16: Hoare triple {118610#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [311] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {118611#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:04:24,242 INFO L290 TraceCheckUtils]: 17: Hoare triple {118611#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {118600#false} is VALID [2022-04-28 04:04:24,242 INFO L290 TraceCheckUtils]: 18: Hoare triple {118600#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {118600#false} is VALID [2022-04-28 04:04:24,242 INFO L290 TraceCheckUtils]: 19: Hoare triple {118600#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {118600#false} is VALID [2022-04-28 04:04:24,242 INFO L290 TraceCheckUtils]: 20: Hoare triple {118600#false} assume !(~d~0 == ~SIZE~0); {118600#false} is VALID [2022-04-28 04:04:24,242 INFO L272 TraceCheckUtils]: 21: Hoare triple {118600#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {118600#false} is VALID [2022-04-28 04:04:24,242 INFO L290 TraceCheckUtils]: 22: Hoare triple {118600#false} ~cond := #in~cond; {118600#false} is VALID [2022-04-28 04:04:24,242 INFO L290 TraceCheckUtils]: 23: Hoare triple {118600#false} assume 0 == ~cond; {118600#false} is VALID [2022-04-28 04:04:24,242 INFO L290 TraceCheckUtils]: 24: Hoare triple {118600#false} assume !false; {118600#false} is VALID [2022-04-28 04:04:24,243 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:04:24,243 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:04:24,243 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [730713272] [2022-04-28 04:04:24,243 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [730713272] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:04:24,243 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [841721531] [2022-04-28 04:04:24,243 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:04:24,243 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:04:24,243 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:04:24,244 INFO L229 MonitoredProcess]: Starting monitored process 53 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:04:24,245 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (53)] Waiting until timeout for monitored process [2022-04-28 04:04:24,280 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:04:24,281 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:04:24,288 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:04:24,288 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:04:24,518 INFO L272 TraceCheckUtils]: 0: Hoare triple {118599#true} call ULTIMATE.init(); {118599#true} is VALID [2022-04-28 04:04:24,518 INFO L290 TraceCheckUtils]: 1: Hoare triple {118599#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {118604#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:24,519 INFO L290 TraceCheckUtils]: 2: Hoare triple {118604#(<= 200000 ~SIZE~0)} assume true; {118604#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:24,519 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {118604#(<= 200000 ~SIZE~0)} {118599#true} #90#return; {118604#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:24,519 INFO L272 TraceCheckUtils]: 4: Hoare triple {118604#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {118604#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:24,519 INFO L290 TraceCheckUtils]: 5: Hoare triple {118604#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {118604#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:24,520 INFO L272 TraceCheckUtils]: 6: Hoare triple {118604#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {118604#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:24,520 INFO L290 TraceCheckUtils]: 7: Hoare triple {118604#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {118604#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:24,520 INFO L290 TraceCheckUtils]: 8: Hoare triple {118604#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {118604#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:24,521 INFO L290 TraceCheckUtils]: 9: Hoare triple {118604#(<= 200000 ~SIZE~0)} assume true; {118604#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:24,521 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {118604#(<= 200000 ~SIZE~0)} {118604#(<= 200000 ~SIZE~0)} #86#return; {118604#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:24,521 INFO L290 TraceCheckUtils]: 11: Hoare triple {118604#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {118604#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:24,522 INFO L290 TraceCheckUtils]: 12: Hoare triple {118604#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {118652#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:04:24,522 INFO L290 TraceCheckUtils]: 13: Hoare triple {118652#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [312] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1305 v_main_~c~0_1304)) (.cse1 (= |v_main_#t~post5_698| |v_main_#t~post5_696|)) (.cse2 (= v_main_~st~0_701 v_main_~st~0_700)) (.cse3 (<= v_~last~0_534 v_main_~c~0_1305))) (or (and .cse0 (= v_~last~0_534 v_~last~0_534) (= v_~SIZE~0_481 v_~SIZE~0_481) .cse1 .cse2) (and (or (not (< v_main_~c~0_1305 v_~SIZE~0_481)) (not .cse3)) .cse0 .cse1 .cse2) (and .cse3 (< v_main_~c~0_1305 v_main_~c~0_1304) (= v_main_~st~0_700 0) (< v_main_~c~0_1304 (+ v_~SIZE~0_481 1))))) InVars {~SIZE~0=v_~SIZE~0_481, main_~c~0=v_main_~c~0_1305, main_#t~post5=|v_main_#t~post5_698|, main_~st~0=v_main_~st~0_701, ~last~0=v_~last~0_534} OutVars{~SIZE~0=v_~SIZE~0_481, main_#t~post5=|v_main_#t~post5_696|, main_~c~0=v_main_~c~0_1304, main_~st~0=v_main_~st~0_700, ~last~0=v_~last~0_534} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {118656#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:04:24,523 INFO L290 TraceCheckUtils]: 14: Hoare triple {118656#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [313] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {118656#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:04:24,523 INFO L290 TraceCheckUtils]: 15: Hoare triple {118656#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [314] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_701| |v_main_#t~post5_697|)) (.cse1 (= v_main_~c~0_1307 v_main_~c~0_1306))) (or (and (= v_~last~0_535 v_~last~0_535) .cse0 .cse1 (= v_~SIZE~0_482 v_~SIZE~0_482)) (and (< v_main_~c~0_1307 v_main_~c~0_1306) (< v_main_~c~0_1306 (+ v_~SIZE~0_482 1)) (< v_main_~c~0_1306 (+ v_~last~0_535 1))) (and .cse0 .cse1 (or (not (< v_main_~c~0_1307 v_~SIZE~0_482)) (not (< v_main_~c~0_1307 v_~last~0_535)))))) InVars {~SIZE~0=v_~SIZE~0_482, main_~c~0=v_main_~c~0_1307, main_#t~post5=|v_main_#t~post5_701|, ~last~0=v_~last~0_535} OutVars{~SIZE~0=v_~SIZE~0_482, main_#t~post5=|v_main_#t~post5_697|, main_~c~0=v_main_~c~0_1306, ~last~0=v_~last~0_535} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {118656#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:04:24,524 INFO L290 TraceCheckUtils]: 16: Hoare triple {118656#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [311] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {118666#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:04:24,524 INFO L290 TraceCheckUtils]: 17: Hoare triple {118666#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {118600#false} is VALID [2022-04-28 04:04:24,524 INFO L290 TraceCheckUtils]: 18: Hoare triple {118600#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {118600#false} is VALID [2022-04-28 04:04:24,524 INFO L290 TraceCheckUtils]: 19: Hoare triple {118600#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {118600#false} is VALID [2022-04-28 04:04:24,524 INFO L290 TraceCheckUtils]: 20: Hoare triple {118600#false} assume !(~d~0 == ~SIZE~0); {118600#false} is VALID [2022-04-28 04:04:24,525 INFO L272 TraceCheckUtils]: 21: Hoare triple {118600#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {118600#false} is VALID [2022-04-28 04:04:24,525 INFO L290 TraceCheckUtils]: 22: Hoare triple {118600#false} ~cond := #in~cond; {118600#false} is VALID [2022-04-28 04:04:24,525 INFO L290 TraceCheckUtils]: 23: Hoare triple {118600#false} assume 0 == ~cond; {118600#false} is VALID [2022-04-28 04:04:24,525 INFO L290 TraceCheckUtils]: 24: Hoare triple {118600#false} assume !false; {118600#false} is VALID [2022-04-28 04:04:24,525 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:04:24,525 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:04:24,837 INFO L290 TraceCheckUtils]: 24: Hoare triple {118600#false} assume !false; {118600#false} is VALID [2022-04-28 04:04:24,837 INFO L290 TraceCheckUtils]: 23: Hoare triple {118600#false} assume 0 == ~cond; {118600#false} is VALID [2022-04-28 04:04:24,837 INFO L290 TraceCheckUtils]: 22: Hoare triple {118600#false} ~cond := #in~cond; {118600#false} is VALID [2022-04-28 04:04:24,837 INFO L272 TraceCheckUtils]: 21: Hoare triple {118600#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {118600#false} is VALID [2022-04-28 04:04:24,837 INFO L290 TraceCheckUtils]: 20: Hoare triple {118600#false} assume !(~d~0 == ~SIZE~0); {118600#false} is VALID [2022-04-28 04:04:24,837 INFO L290 TraceCheckUtils]: 19: Hoare triple {118600#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {118600#false} is VALID [2022-04-28 04:04:24,837 INFO L290 TraceCheckUtils]: 18: Hoare triple {118600#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {118600#false} is VALID [2022-04-28 04:04:24,837 INFO L290 TraceCheckUtils]: 17: Hoare triple {118712#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {118600#false} is VALID [2022-04-28 04:04:24,838 INFO L290 TraceCheckUtils]: 16: Hoare triple {118716#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [311] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {118712#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:04:24,838 INFO L290 TraceCheckUtils]: 15: Hoare triple {118716#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [314] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_701| |v_main_#t~post5_697|)) (.cse1 (= v_main_~c~0_1307 v_main_~c~0_1306))) (or (and (= v_~last~0_535 v_~last~0_535) .cse0 .cse1 (= v_~SIZE~0_482 v_~SIZE~0_482)) (and (< v_main_~c~0_1307 v_main_~c~0_1306) (< v_main_~c~0_1306 (+ v_~SIZE~0_482 1)) (< v_main_~c~0_1306 (+ v_~last~0_535 1))) (and .cse0 .cse1 (or (not (< v_main_~c~0_1307 v_~SIZE~0_482)) (not (< v_main_~c~0_1307 v_~last~0_535)))))) InVars {~SIZE~0=v_~SIZE~0_482, main_~c~0=v_main_~c~0_1307, main_#t~post5=|v_main_#t~post5_701|, ~last~0=v_~last~0_535} OutVars{~SIZE~0=v_~SIZE~0_482, main_#t~post5=|v_main_#t~post5_697|, main_~c~0=v_main_~c~0_1306, ~last~0=v_~last~0_535} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {118716#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:04:24,839 INFO L290 TraceCheckUtils]: 14: Hoare triple {118716#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [313] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {118716#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:04:24,839 INFO L290 TraceCheckUtils]: 13: Hoare triple {118726#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [312] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1305 v_main_~c~0_1304)) (.cse1 (= |v_main_#t~post5_698| |v_main_#t~post5_696|)) (.cse2 (= v_main_~st~0_701 v_main_~st~0_700)) (.cse3 (<= v_~last~0_534 v_main_~c~0_1305))) (or (and .cse0 (= v_~last~0_534 v_~last~0_534) (= v_~SIZE~0_481 v_~SIZE~0_481) .cse1 .cse2) (and (or (not (< v_main_~c~0_1305 v_~SIZE~0_481)) (not .cse3)) .cse0 .cse1 .cse2) (and .cse3 (< v_main_~c~0_1305 v_main_~c~0_1304) (= v_main_~st~0_700 0) (< v_main_~c~0_1304 (+ v_~SIZE~0_481 1))))) InVars {~SIZE~0=v_~SIZE~0_481, main_~c~0=v_main_~c~0_1305, main_#t~post5=|v_main_#t~post5_698|, main_~st~0=v_main_~st~0_701, ~last~0=v_~last~0_534} OutVars{~SIZE~0=v_~SIZE~0_481, main_#t~post5=|v_main_#t~post5_696|, main_~c~0=v_main_~c~0_1304, main_~st~0=v_main_~st~0_700, ~last~0=v_~last~0_534} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {118716#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:04:24,840 INFO L290 TraceCheckUtils]: 12: Hoare triple {118730#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {118726#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:04:24,840 INFO L290 TraceCheckUtils]: 11: Hoare triple {118730#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {118730#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:24,840 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {118599#true} {118730#(< 1 ~SIZE~0)} #86#return; {118730#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:24,840 INFO L290 TraceCheckUtils]: 9: Hoare triple {118599#true} assume true; {118599#true} is VALID [2022-04-28 04:04:24,841 INFO L290 TraceCheckUtils]: 8: Hoare triple {118599#true} assume !(0 == ~cond); {118599#true} is VALID [2022-04-28 04:04:24,841 INFO L290 TraceCheckUtils]: 7: Hoare triple {118599#true} ~cond := #in~cond; {118599#true} is VALID [2022-04-28 04:04:24,841 INFO L272 TraceCheckUtils]: 6: Hoare triple {118730#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {118599#true} is VALID [2022-04-28 04:04:24,841 INFO L290 TraceCheckUtils]: 5: Hoare triple {118730#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {118730#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:24,841 INFO L272 TraceCheckUtils]: 4: Hoare triple {118730#(< 1 ~SIZE~0)} call #t~ret7 := main(); {118730#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:24,842 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {118730#(< 1 ~SIZE~0)} {118599#true} #90#return; {118730#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:24,842 INFO L290 TraceCheckUtils]: 2: Hoare triple {118730#(< 1 ~SIZE~0)} assume true; {118730#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:24,842 INFO L290 TraceCheckUtils]: 1: Hoare triple {118599#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {118730#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:24,842 INFO L272 TraceCheckUtils]: 0: Hoare triple {118599#true} call ULTIMATE.init(); {118599#true} is VALID [2022-04-28 04:04:24,842 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:04:24,843 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [841721531] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:04:24,843 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:04:24,843 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:04:25,512 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:04:25,512 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1237524854] [2022-04-28 04:04:25,512 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1237524854] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:04:25,512 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:04:25,512 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [23] imperfect sequences [] total 23 [2022-04-28 04:04:25,512 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [313119342] [2022-04-28 04:04:25,512 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:04:25,512 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 23 states have (on average 2.130434782608696) internal successors, (49), 22 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 55 [2022-04-28 04:04:25,512 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:04:25,513 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 23 states, 23 states have (on average 2.130434782608696) internal successors, (49), 22 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:04:25,547 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:04:25,547 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 23 states [2022-04-28 04:04:25,547 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:04:25,548 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2022-04-28 04:04:25,548 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=203, Invalid=789, Unknown=0, NotChecked=0, Total=992 [2022-04-28 04:04:25,548 INFO L87 Difference]: Start difference. First operand 337 states and 403 transitions. Second operand has 23 states, 23 states have (on average 2.130434782608696) internal successors, (49), 22 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:04:29,629 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:04:29,629 INFO L93 Difference]: Finished difference Result 673 states and 797 transitions. [2022-04-28 04:04:29,629 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2022-04-28 04:04:29,630 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 23 states have (on average 2.130434782608696) internal successors, (49), 22 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 55 [2022-04-28 04:04:29,630 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:04:29,630 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 23 states have (on average 2.130434782608696) internal successors, (49), 22 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:04:29,630 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 107 transitions. [2022-04-28 04:04:29,630 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 23 states have (on average 2.130434782608696) internal successors, (49), 22 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:04:29,631 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 107 transitions. [2022-04-28 04:04:29,631 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 23 states and 107 transitions. [2022-04-28 04:04:29,701 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 107 edges. 107 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:04:29,708 INFO L225 Difference]: With dead ends: 673 [2022-04-28 04:04:29,708 INFO L226 Difference]: Without dead ends: 412 [2022-04-28 04:04:29,708 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 103 GetRequests, 54 SyntacticMatches, 16 SemanticMatches, 33 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 805 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=238, Invalid=952, Unknown=0, NotChecked=0, Total=1190 [2022-04-28 04:04:29,708 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 58 mSDsluCounter, 27 mSDsCounter, 0 mSdLazyCounter, 1136 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 59 SdHoareTripleChecker+Valid, 51 SdHoareTripleChecker+Invalid, 1152 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 1136 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-28 04:04:29,709 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [59 Valid, 51 Invalid, 1152 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 1136 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-04-28 04:04:29,709 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 412 states. [2022-04-28 04:04:31,506 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 412 to 337. [2022-04-28 04:04:31,506 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:04:31,506 INFO L82 GeneralOperation]: Start isEquivalent. First operand 412 states. Second operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:04:31,506 INFO L74 IsIncluded]: Start isIncluded. First operand 412 states. Second operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:04:31,507 INFO L87 Difference]: Start difference. First operand 412 states. Second operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:04:31,513 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:04:31,513 INFO L93 Difference]: Finished difference Result 412 states and 482 transitions. [2022-04-28 04:04:31,513 INFO L276 IsEmpty]: Start isEmpty. Operand 412 states and 482 transitions. [2022-04-28 04:04:31,513 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:04:31,513 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:04:31,513 INFO L74 IsIncluded]: Start isIncluded. First operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 412 states. [2022-04-28 04:04:31,514 INFO L87 Difference]: Start difference. First operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 412 states. [2022-04-28 04:04:31,520 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:04:31,520 INFO L93 Difference]: Finished difference Result 412 states and 482 transitions. [2022-04-28 04:04:31,520 INFO L276 IsEmpty]: Start isEmpty. Operand 412 states and 482 transitions. [2022-04-28 04:04:31,520 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:04:31,520 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:04:31,520 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:04:31,520 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:04:31,520 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:04:31,525 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 337 states to 337 states and 403 transitions. [2022-04-28 04:04:31,525 INFO L78 Accepts]: Start accepts. Automaton has 337 states and 403 transitions. Word has length 55 [2022-04-28 04:04:31,525 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:04:31,525 INFO L495 AbstractCegarLoop]: Abstraction has 337 states and 403 transitions. [2022-04-28 04:04:31,526 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 23 states, 23 states have (on average 2.130434782608696) internal successors, (49), 22 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:04:31,526 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 337 states and 403 transitions. [2022-04-28 04:04:33,109 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 403 edges. 403 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:04:33,109 INFO L276 IsEmpty]: Start isEmpty. Operand 337 states and 403 transitions. [2022-04-28 04:04:33,109 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-28 04:04:33,110 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:04:33,110 INFO L195 NwaCegarLoop]: trace histogram [11, 11, 6, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:04:33,125 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (53)] Forceful destruction successful, exit code 0 [2022-04-28 04:04:33,310 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable60,53 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:04:33,310 INFO L420 AbstractCegarLoop]: === Iteration 62 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:04:33,310 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:04:33,311 INFO L85 PathProgramCache]: Analyzing trace with hash 2069189247, now seen corresponding path program 50 times [2022-04-28 04:04:33,311 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:04:33,311 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [919641717] [2022-04-28 04:04:33,524 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:04:33,717 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:04:33,718 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:04:33,721 INFO L85 PathProgramCache]: Analyzing trace with hash -841229119, now seen corresponding path program 1 times [2022-04-28 04:04:33,721 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:04:33,721 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1600273574] [2022-04-28 04:04:33,721 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:04:33,722 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:04:33,728 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:04:33,767 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:04:33,768 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:04:33,771 INFO L290 TraceCheckUtils]: 0: Hoare triple {121651#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {121643#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:33,772 INFO L290 TraceCheckUtils]: 1: Hoare triple {121643#(<= 200000 ~SIZE~0)} assume true; {121643#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:33,772 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {121643#(<= 200000 ~SIZE~0)} {121638#true} #90#return; {121643#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:33,772 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:04:33,773 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:04:33,774 INFO L290 TraceCheckUtils]: 0: Hoare triple {121638#true} ~cond := #in~cond; {121638#true} is VALID [2022-04-28 04:04:33,774 INFO L290 TraceCheckUtils]: 1: Hoare triple {121638#true} assume !(0 == ~cond); {121638#true} is VALID [2022-04-28 04:04:33,774 INFO L290 TraceCheckUtils]: 2: Hoare triple {121638#true} assume true; {121638#true} is VALID [2022-04-28 04:04:33,774 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {121638#true} {121643#(<= 200000 ~SIZE~0)} #86#return; {121643#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:33,775 INFO L272 TraceCheckUtils]: 0: Hoare triple {121638#true} call ULTIMATE.init(); {121651#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:04:33,775 INFO L290 TraceCheckUtils]: 1: Hoare triple {121651#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {121643#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:33,775 INFO L290 TraceCheckUtils]: 2: Hoare triple {121643#(<= 200000 ~SIZE~0)} assume true; {121643#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:33,776 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {121643#(<= 200000 ~SIZE~0)} {121638#true} #90#return; {121643#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:33,776 INFO L272 TraceCheckUtils]: 4: Hoare triple {121643#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {121643#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:33,776 INFO L290 TraceCheckUtils]: 5: Hoare triple {121643#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {121643#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:33,776 INFO L272 TraceCheckUtils]: 6: Hoare triple {121643#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {121638#true} is VALID [2022-04-28 04:04:33,776 INFO L290 TraceCheckUtils]: 7: Hoare triple {121638#true} ~cond := #in~cond; {121638#true} is VALID [2022-04-28 04:04:33,776 INFO L290 TraceCheckUtils]: 8: Hoare triple {121638#true} assume !(0 == ~cond); {121638#true} is VALID [2022-04-28 04:04:33,777 INFO L290 TraceCheckUtils]: 9: Hoare triple {121638#true} assume true; {121638#true} is VALID [2022-04-28 04:04:33,777 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {121638#true} {121643#(<= 200000 ~SIZE~0)} #86#return; {121643#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:33,777 INFO L290 TraceCheckUtils]: 11: Hoare triple {121643#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {121643#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:33,778 INFO L290 TraceCheckUtils]: 12: Hoare triple {121643#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {121648#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:04:33,778 INFO L290 TraceCheckUtils]: 13: Hoare triple {121648#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [316] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1333 v_main_~c~0_1332)) (.cse1 (= v_main_~st~0_717 v_main_~st~0_716)) (.cse2 (<= v_~last~0_544 v_main_~c~0_1333))) (or (and (= v_~last~0_544 v_~last~0_544) (= |v_main_#t~post5_711| |v_main_#t~post5_709|) .cse0 (= v_~SIZE~0_490 v_~SIZE~0_490) .cse1) (and (= |v_main_#t~post5_709| |v_main_#t~post5_711|) .cse0 (or (not (< v_main_~c~0_1333 v_~SIZE~0_490)) (not .cse2)) .cse1) (and .cse2 (< v_main_~c~0_1333 v_main_~c~0_1332) (< v_main_~c~0_1332 (+ v_~SIZE~0_490 1)) (= v_main_~st~0_716 0)))) InVars {~SIZE~0=v_~SIZE~0_490, main_~c~0=v_main_~c~0_1333, main_#t~post5=|v_main_#t~post5_711|, main_~st~0=v_main_~st~0_717, ~last~0=v_~last~0_544} OutVars{~SIZE~0=v_~SIZE~0_490, main_#t~post5=|v_main_#t~post5_709|, main_~c~0=v_main_~c~0_1332, main_~st~0=v_main_~st~0_716, ~last~0=v_~last~0_544} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {121649#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:04:33,779 INFO L290 TraceCheckUtils]: 14: Hoare triple {121649#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [317] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {121649#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:04:33,779 INFO L290 TraceCheckUtils]: 15: Hoare triple {121649#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [318] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1335 v_main_~c~0_1334))) (or (and (< v_main_~c~0_1334 (+ v_~last~0_545 1)) (< v_main_~c~0_1334 (+ v_~SIZE~0_491 1)) (< v_main_~c~0_1335 v_main_~c~0_1334)) (and (= v_~last~0_545 v_~last~0_545) .cse0 (= |v_main_#t~post5_714| |v_main_#t~post5_710|) (= v_~SIZE~0_491 v_~SIZE~0_491)) (and .cse0 (= |v_main_#t~post5_710| |v_main_#t~post5_714|) (or (not (< v_main_~c~0_1335 v_~SIZE~0_491)) (not (< v_main_~c~0_1335 v_~last~0_545)))))) InVars {~SIZE~0=v_~SIZE~0_491, main_~c~0=v_main_~c~0_1335, main_#t~post5=|v_main_#t~post5_714|, ~last~0=v_~last~0_545} OutVars{~SIZE~0=v_~SIZE~0_491, main_#t~post5=|v_main_#t~post5_710|, main_~c~0=v_main_~c~0_1334, ~last~0=v_~last~0_545} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {121649#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:04:33,779 INFO L290 TraceCheckUtils]: 16: Hoare triple {121649#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [315] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {121650#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:04:33,780 INFO L290 TraceCheckUtils]: 17: Hoare triple {121650#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {121639#false} is VALID [2022-04-28 04:04:33,780 INFO L290 TraceCheckUtils]: 18: Hoare triple {121639#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {121639#false} is VALID [2022-04-28 04:04:33,780 INFO L290 TraceCheckUtils]: 19: Hoare triple {121639#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {121639#false} is VALID [2022-04-28 04:04:33,780 INFO L290 TraceCheckUtils]: 20: Hoare triple {121639#false} assume !(~d~0 == ~SIZE~0); {121639#false} is VALID [2022-04-28 04:04:33,780 INFO L272 TraceCheckUtils]: 21: Hoare triple {121639#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {121639#false} is VALID [2022-04-28 04:04:33,780 INFO L290 TraceCheckUtils]: 22: Hoare triple {121639#false} ~cond := #in~cond; {121639#false} is VALID [2022-04-28 04:04:33,780 INFO L290 TraceCheckUtils]: 23: Hoare triple {121639#false} assume 0 == ~cond; {121639#false} is VALID [2022-04-28 04:04:33,780 INFO L290 TraceCheckUtils]: 24: Hoare triple {121639#false} assume !false; {121639#false} is VALID [2022-04-28 04:04:33,780 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:04:33,780 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:04:33,781 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1600273574] [2022-04-28 04:04:33,781 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1600273574] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:04:33,781 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [930698554] [2022-04-28 04:04:33,781 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:04:33,781 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:04:33,781 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:04:33,782 INFO L229 MonitoredProcess]: Starting monitored process 54 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:04:33,782 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (54)] Waiting until timeout for monitored process [2022-04-28 04:04:33,809 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:04:33,809 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:04:33,816 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:04:33,816 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:04:34,041 INFO L272 TraceCheckUtils]: 0: Hoare triple {121638#true} call ULTIMATE.init(); {121638#true} is VALID [2022-04-28 04:04:34,041 INFO L290 TraceCheckUtils]: 1: Hoare triple {121638#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {121643#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:34,042 INFO L290 TraceCheckUtils]: 2: Hoare triple {121643#(<= 200000 ~SIZE~0)} assume true; {121643#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:34,042 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {121643#(<= 200000 ~SIZE~0)} {121638#true} #90#return; {121643#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:34,042 INFO L272 TraceCheckUtils]: 4: Hoare triple {121643#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {121643#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:34,042 INFO L290 TraceCheckUtils]: 5: Hoare triple {121643#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {121643#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:34,043 INFO L272 TraceCheckUtils]: 6: Hoare triple {121643#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {121643#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:34,043 INFO L290 TraceCheckUtils]: 7: Hoare triple {121643#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {121643#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:34,043 INFO L290 TraceCheckUtils]: 8: Hoare triple {121643#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {121643#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:34,044 INFO L290 TraceCheckUtils]: 9: Hoare triple {121643#(<= 200000 ~SIZE~0)} assume true; {121643#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:34,044 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {121643#(<= 200000 ~SIZE~0)} {121643#(<= 200000 ~SIZE~0)} #86#return; {121643#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:34,044 INFO L290 TraceCheckUtils]: 11: Hoare triple {121643#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {121643#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:34,045 INFO L290 TraceCheckUtils]: 12: Hoare triple {121643#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {121691#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:04:34,045 INFO L290 TraceCheckUtils]: 13: Hoare triple {121691#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [316] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1333 v_main_~c~0_1332)) (.cse1 (= v_main_~st~0_717 v_main_~st~0_716)) (.cse2 (<= v_~last~0_544 v_main_~c~0_1333))) (or (and (= v_~last~0_544 v_~last~0_544) (= |v_main_#t~post5_711| |v_main_#t~post5_709|) .cse0 (= v_~SIZE~0_490 v_~SIZE~0_490) .cse1) (and (= |v_main_#t~post5_709| |v_main_#t~post5_711|) .cse0 (or (not (< v_main_~c~0_1333 v_~SIZE~0_490)) (not .cse2)) .cse1) (and .cse2 (< v_main_~c~0_1333 v_main_~c~0_1332) (< v_main_~c~0_1332 (+ v_~SIZE~0_490 1)) (= v_main_~st~0_716 0)))) InVars {~SIZE~0=v_~SIZE~0_490, main_~c~0=v_main_~c~0_1333, main_#t~post5=|v_main_#t~post5_711|, main_~st~0=v_main_~st~0_717, ~last~0=v_~last~0_544} OutVars{~SIZE~0=v_~SIZE~0_490, main_#t~post5=|v_main_#t~post5_709|, main_~c~0=v_main_~c~0_1332, main_~st~0=v_main_~st~0_716, ~last~0=v_~last~0_544} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {121695#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:04:34,046 INFO L290 TraceCheckUtils]: 14: Hoare triple {121695#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [317] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {121695#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:04:34,055 INFO L290 TraceCheckUtils]: 15: Hoare triple {121695#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [318] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1335 v_main_~c~0_1334))) (or (and (< v_main_~c~0_1334 (+ v_~last~0_545 1)) (< v_main_~c~0_1334 (+ v_~SIZE~0_491 1)) (< v_main_~c~0_1335 v_main_~c~0_1334)) (and (= v_~last~0_545 v_~last~0_545) .cse0 (= |v_main_#t~post5_714| |v_main_#t~post5_710|) (= v_~SIZE~0_491 v_~SIZE~0_491)) (and .cse0 (= |v_main_#t~post5_710| |v_main_#t~post5_714|) (or (not (< v_main_~c~0_1335 v_~SIZE~0_491)) (not (< v_main_~c~0_1335 v_~last~0_545)))))) InVars {~SIZE~0=v_~SIZE~0_491, main_~c~0=v_main_~c~0_1335, main_#t~post5=|v_main_#t~post5_714|, ~last~0=v_~last~0_545} OutVars{~SIZE~0=v_~SIZE~0_491, main_#t~post5=|v_main_#t~post5_710|, main_~c~0=v_main_~c~0_1334, ~last~0=v_~last~0_545} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {121695#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:04:34,055 INFO L290 TraceCheckUtils]: 16: Hoare triple {121695#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [315] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {121705#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:04:34,056 INFO L290 TraceCheckUtils]: 17: Hoare triple {121705#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {121639#false} is VALID [2022-04-28 04:04:34,056 INFO L290 TraceCheckUtils]: 18: Hoare triple {121639#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {121639#false} is VALID [2022-04-28 04:04:34,056 INFO L290 TraceCheckUtils]: 19: Hoare triple {121639#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {121639#false} is VALID [2022-04-28 04:04:34,056 INFO L290 TraceCheckUtils]: 20: Hoare triple {121639#false} assume !(~d~0 == ~SIZE~0); {121639#false} is VALID [2022-04-28 04:04:34,056 INFO L272 TraceCheckUtils]: 21: Hoare triple {121639#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {121639#false} is VALID [2022-04-28 04:04:34,056 INFO L290 TraceCheckUtils]: 22: Hoare triple {121639#false} ~cond := #in~cond; {121639#false} is VALID [2022-04-28 04:04:34,056 INFO L290 TraceCheckUtils]: 23: Hoare triple {121639#false} assume 0 == ~cond; {121639#false} is VALID [2022-04-28 04:04:34,056 INFO L290 TraceCheckUtils]: 24: Hoare triple {121639#false} assume !false; {121639#false} is VALID [2022-04-28 04:04:34,057 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:04:34,057 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:04:34,357 INFO L290 TraceCheckUtils]: 24: Hoare triple {121639#false} assume !false; {121639#false} is VALID [2022-04-28 04:04:34,358 INFO L290 TraceCheckUtils]: 23: Hoare triple {121639#false} assume 0 == ~cond; {121639#false} is VALID [2022-04-28 04:04:34,358 INFO L290 TraceCheckUtils]: 22: Hoare triple {121639#false} ~cond := #in~cond; {121639#false} is VALID [2022-04-28 04:04:34,358 INFO L272 TraceCheckUtils]: 21: Hoare triple {121639#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {121639#false} is VALID [2022-04-28 04:04:34,358 INFO L290 TraceCheckUtils]: 20: Hoare triple {121639#false} assume !(~d~0 == ~SIZE~0); {121639#false} is VALID [2022-04-28 04:04:34,358 INFO L290 TraceCheckUtils]: 19: Hoare triple {121639#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {121639#false} is VALID [2022-04-28 04:04:34,358 INFO L290 TraceCheckUtils]: 18: Hoare triple {121639#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {121639#false} is VALID [2022-04-28 04:04:34,358 INFO L290 TraceCheckUtils]: 17: Hoare triple {121751#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {121639#false} is VALID [2022-04-28 04:04:34,359 INFO L290 TraceCheckUtils]: 16: Hoare triple {121755#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [315] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {121751#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:04:34,359 INFO L290 TraceCheckUtils]: 15: Hoare triple {121755#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [318] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1335 v_main_~c~0_1334))) (or (and (< v_main_~c~0_1334 (+ v_~last~0_545 1)) (< v_main_~c~0_1334 (+ v_~SIZE~0_491 1)) (< v_main_~c~0_1335 v_main_~c~0_1334)) (and (= v_~last~0_545 v_~last~0_545) .cse0 (= |v_main_#t~post5_714| |v_main_#t~post5_710|) (= v_~SIZE~0_491 v_~SIZE~0_491)) (and .cse0 (= |v_main_#t~post5_710| |v_main_#t~post5_714|) (or (not (< v_main_~c~0_1335 v_~SIZE~0_491)) (not (< v_main_~c~0_1335 v_~last~0_545)))))) InVars {~SIZE~0=v_~SIZE~0_491, main_~c~0=v_main_~c~0_1335, main_#t~post5=|v_main_#t~post5_714|, ~last~0=v_~last~0_545} OutVars{~SIZE~0=v_~SIZE~0_491, main_#t~post5=|v_main_#t~post5_710|, main_~c~0=v_main_~c~0_1334, ~last~0=v_~last~0_545} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {121755#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:04:34,360 INFO L290 TraceCheckUtils]: 14: Hoare triple {121755#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [317] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {121755#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:04:34,360 INFO L290 TraceCheckUtils]: 13: Hoare triple {121765#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [316] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1333 v_main_~c~0_1332)) (.cse1 (= v_main_~st~0_717 v_main_~st~0_716)) (.cse2 (<= v_~last~0_544 v_main_~c~0_1333))) (or (and (= v_~last~0_544 v_~last~0_544) (= |v_main_#t~post5_711| |v_main_#t~post5_709|) .cse0 (= v_~SIZE~0_490 v_~SIZE~0_490) .cse1) (and (= |v_main_#t~post5_709| |v_main_#t~post5_711|) .cse0 (or (not (< v_main_~c~0_1333 v_~SIZE~0_490)) (not .cse2)) .cse1) (and .cse2 (< v_main_~c~0_1333 v_main_~c~0_1332) (< v_main_~c~0_1332 (+ v_~SIZE~0_490 1)) (= v_main_~st~0_716 0)))) InVars {~SIZE~0=v_~SIZE~0_490, main_~c~0=v_main_~c~0_1333, main_#t~post5=|v_main_#t~post5_711|, main_~st~0=v_main_~st~0_717, ~last~0=v_~last~0_544} OutVars{~SIZE~0=v_~SIZE~0_490, main_#t~post5=|v_main_#t~post5_709|, main_~c~0=v_main_~c~0_1332, main_~st~0=v_main_~st~0_716, ~last~0=v_~last~0_544} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {121755#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:04:34,361 INFO L290 TraceCheckUtils]: 12: Hoare triple {121769#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {121765#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:04:34,361 INFO L290 TraceCheckUtils]: 11: Hoare triple {121769#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {121769#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:34,361 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {121638#true} {121769#(< 1 ~SIZE~0)} #86#return; {121769#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:34,361 INFO L290 TraceCheckUtils]: 9: Hoare triple {121638#true} assume true; {121638#true} is VALID [2022-04-28 04:04:34,361 INFO L290 TraceCheckUtils]: 8: Hoare triple {121638#true} assume !(0 == ~cond); {121638#true} is VALID [2022-04-28 04:04:34,362 INFO L290 TraceCheckUtils]: 7: Hoare triple {121638#true} ~cond := #in~cond; {121638#true} is VALID [2022-04-28 04:04:34,362 INFO L272 TraceCheckUtils]: 6: Hoare triple {121769#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {121638#true} is VALID [2022-04-28 04:04:34,362 INFO L290 TraceCheckUtils]: 5: Hoare triple {121769#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {121769#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:34,362 INFO L272 TraceCheckUtils]: 4: Hoare triple {121769#(< 1 ~SIZE~0)} call #t~ret7 := main(); {121769#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:34,362 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {121769#(< 1 ~SIZE~0)} {121638#true} #90#return; {121769#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:34,363 INFO L290 TraceCheckUtils]: 2: Hoare triple {121769#(< 1 ~SIZE~0)} assume true; {121769#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:34,363 INFO L290 TraceCheckUtils]: 1: Hoare triple {121638#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {121769#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:34,363 INFO L272 TraceCheckUtils]: 0: Hoare triple {121638#true} call ULTIMATE.init(); {121638#true} is VALID [2022-04-28 04:04:34,363 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:04:34,363 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [930698554] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:04:34,364 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:04:34,364 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:04:35,054 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:04:35,054 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [919641717] [2022-04-28 04:04:35,054 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [919641717] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:04:35,054 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:04:35,054 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [24] imperfect sequences [] total 24 [2022-04-28 04:04:35,054 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [811386338] [2022-04-28 04:04:35,054 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:04:35,054 INFO L78 Accepts]: Start accepts. Automaton has has 24 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 23 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 55 [2022-04-28 04:04:35,054 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:04:35,055 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 24 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 23 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:04:35,090 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:04:35,090 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 24 states [2022-04-28 04:04:35,090 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:04:35,091 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 24 interpolants. [2022-04-28 04:04:35,091 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=218, Invalid=838, Unknown=0, NotChecked=0, Total=1056 [2022-04-28 04:04:35,091 INFO L87 Difference]: Start difference. First operand 337 states and 403 transitions. Second operand has 24 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 23 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:04:39,150 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:04:39,150 INFO L93 Difference]: Finished difference Result 664 states and 788 transitions. [2022-04-28 04:04:39,150 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2022-04-28 04:04:39,150 INFO L78 Accepts]: Start accepts. Automaton has has 24 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 23 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 55 [2022-04-28 04:04:39,150 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:04:39,150 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 24 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 23 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:04:39,151 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 108 transitions. [2022-04-28 04:04:39,151 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 24 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 23 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:04:39,152 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 108 transitions. [2022-04-28 04:04:39,152 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 24 states and 108 transitions. [2022-04-28 04:04:39,224 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 108 edges. 108 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:04:39,231 INFO L225 Difference]: With dead ends: 664 [2022-04-28 04:04:39,231 INFO L226 Difference]: Without dead ends: 403 [2022-04-28 04:04:39,232 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 103 GetRequests, 54 SyntacticMatches, 15 SemanticMatches, 34 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 828 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=255, Invalid=1005, Unknown=0, NotChecked=0, Total=1260 [2022-04-28 04:04:39,232 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 65 mSDsluCounter, 20 mSDsCounter, 0 mSdLazyCounter, 1109 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 66 SdHoareTripleChecker+Valid, 44 SdHoareTripleChecker+Invalid, 1126 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 1109 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-28 04:04:39,232 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [66 Valid, 44 Invalid, 1126 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 1109 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-04-28 04:04:39,233 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 403 states. [2022-04-28 04:04:41,049 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 403 to 337. [2022-04-28 04:04:41,049 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:04:41,050 INFO L82 GeneralOperation]: Start isEquivalent. First operand 403 states. Second operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:04:41,050 INFO L74 IsIncluded]: Start isIncluded. First operand 403 states. Second operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:04:41,050 INFO L87 Difference]: Start difference. First operand 403 states. Second operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:04:41,056 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:04:41,056 INFO L93 Difference]: Finished difference Result 403 states and 473 transitions. [2022-04-28 04:04:41,056 INFO L276 IsEmpty]: Start isEmpty. Operand 403 states and 473 transitions. [2022-04-28 04:04:41,057 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:04:41,057 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:04:41,057 INFO L74 IsIncluded]: Start isIncluded. First operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 403 states. [2022-04-28 04:04:41,057 INFO L87 Difference]: Start difference. First operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 403 states. [2022-04-28 04:04:41,063 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:04:41,063 INFO L93 Difference]: Finished difference Result 403 states and 473 transitions. [2022-04-28 04:04:41,063 INFO L276 IsEmpty]: Start isEmpty. Operand 403 states and 473 transitions. [2022-04-28 04:04:41,063 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:04:41,063 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:04:41,063 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:04:41,063 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:04:41,063 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:04:41,068 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 337 states to 337 states and 403 transitions. [2022-04-28 04:04:41,068 INFO L78 Accepts]: Start accepts. Automaton has 337 states and 403 transitions. Word has length 55 [2022-04-28 04:04:41,068 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:04:41,068 INFO L495 AbstractCegarLoop]: Abstraction has 337 states and 403 transitions. [2022-04-28 04:04:41,068 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 24 states, 24 states have (on average 2.0416666666666665) internal successors, (49), 23 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:04:41,068 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 337 states and 403 transitions. [2022-04-28 04:04:42,740 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 403 edges. 403 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:04:42,741 INFO L276 IsEmpty]: Start isEmpty. Operand 337 states and 403 transitions. [2022-04-28 04:04:42,741 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-28 04:04:42,741 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:04:42,741 INFO L195 NwaCegarLoop]: trace histogram [11, 11, 6, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:04:42,759 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (54)] Forceful destruction successful, exit code 0 [2022-04-28 04:04:42,941 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable61,54 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:04:42,942 INFO L420 AbstractCegarLoop]: === Iteration 63 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:04:42,942 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:04:42,942 INFO L85 PathProgramCache]: Analyzing trace with hash 2131228861, now seen corresponding path program 51 times [2022-04-28 04:04:42,942 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:04:42,942 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [170167912] [2022-04-28 04:04:45,764 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:04:45,859 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:04:46,034 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:04:46,035 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:04:46,038 INFO L85 PathProgramCache]: Analyzing trace with hash 1651293633, now seen corresponding path program 1 times [2022-04-28 04:04:46,038 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:04:46,038 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [713063185] [2022-04-28 04:04:46,038 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:04:46,038 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:04:46,045 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:04:46,084 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:04:46,085 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:04:46,088 INFO L290 TraceCheckUtils]: 0: Hoare triple {124655#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {124647#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:46,088 INFO L290 TraceCheckUtils]: 1: Hoare triple {124647#(<= 200000 ~SIZE~0)} assume true; {124647#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:46,089 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {124647#(<= 200000 ~SIZE~0)} {124642#true} #90#return; {124647#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:46,089 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:04:46,089 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:04:46,090 INFO L290 TraceCheckUtils]: 0: Hoare triple {124642#true} ~cond := #in~cond; {124642#true} is VALID [2022-04-28 04:04:46,090 INFO L290 TraceCheckUtils]: 1: Hoare triple {124642#true} assume !(0 == ~cond); {124642#true} is VALID [2022-04-28 04:04:46,091 INFO L290 TraceCheckUtils]: 2: Hoare triple {124642#true} assume true; {124642#true} is VALID [2022-04-28 04:04:46,091 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {124642#true} {124647#(<= 200000 ~SIZE~0)} #86#return; {124647#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:46,091 INFO L272 TraceCheckUtils]: 0: Hoare triple {124642#true} call ULTIMATE.init(); {124655#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:04:46,092 INFO L290 TraceCheckUtils]: 1: Hoare triple {124655#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {124647#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:46,092 INFO L290 TraceCheckUtils]: 2: Hoare triple {124647#(<= 200000 ~SIZE~0)} assume true; {124647#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:46,092 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {124647#(<= 200000 ~SIZE~0)} {124642#true} #90#return; {124647#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:46,093 INFO L272 TraceCheckUtils]: 4: Hoare triple {124647#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {124647#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:46,093 INFO L290 TraceCheckUtils]: 5: Hoare triple {124647#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {124647#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:46,093 INFO L272 TraceCheckUtils]: 6: Hoare triple {124647#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {124642#true} is VALID [2022-04-28 04:04:46,093 INFO L290 TraceCheckUtils]: 7: Hoare triple {124642#true} ~cond := #in~cond; {124642#true} is VALID [2022-04-28 04:04:46,093 INFO L290 TraceCheckUtils]: 8: Hoare triple {124642#true} assume !(0 == ~cond); {124642#true} is VALID [2022-04-28 04:04:46,093 INFO L290 TraceCheckUtils]: 9: Hoare triple {124642#true} assume true; {124642#true} is VALID [2022-04-28 04:04:46,094 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {124642#true} {124647#(<= 200000 ~SIZE~0)} #86#return; {124647#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:46,094 INFO L290 TraceCheckUtils]: 11: Hoare triple {124647#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {124647#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:46,094 INFO L290 TraceCheckUtils]: 12: Hoare triple {124647#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {124652#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:04:46,095 INFO L290 TraceCheckUtils]: 13: Hoare triple {124652#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [320] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_724| |v_main_#t~post5_722|)) (.cse1 (= v_main_~c~0_1361 v_main_~c~0_1360)) (.cse2 (= v_main_~st~0_732 v_main_~st~0_731)) (.cse3 (<= v_~last~0_554 v_main_~c~0_1361))) (or (and (= v_~last~0_554 v_~last~0_554) .cse0 (= v_~SIZE~0_499 v_~SIZE~0_499) .cse1 .cse2) (and .cse0 .cse1 (or (not .cse3) (not (< v_main_~c~0_1361 v_~SIZE~0_499))) .cse2) (and (= v_main_~st~0_731 0) (< v_main_~c~0_1361 v_main_~c~0_1360) (< v_main_~c~0_1360 (+ v_~SIZE~0_499 1)) .cse3))) InVars {~SIZE~0=v_~SIZE~0_499, main_~c~0=v_main_~c~0_1361, main_#t~post5=|v_main_#t~post5_724|, main_~st~0=v_main_~st~0_732, ~last~0=v_~last~0_554} OutVars{~SIZE~0=v_~SIZE~0_499, main_#t~post5=|v_main_#t~post5_722|, main_~c~0=v_main_~c~0_1360, main_~st~0=v_main_~st~0_731, ~last~0=v_~last~0_554} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {124653#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:04:46,095 INFO L290 TraceCheckUtils]: 14: Hoare triple {124653#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [321] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {124653#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:04:46,096 INFO L290 TraceCheckUtils]: 15: Hoare triple {124653#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [322] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1363 v_main_~c~0_1362)) (.cse1 (= |v_main_#t~post5_727| |v_main_#t~post5_723|))) (or (and (< v_main_~c~0_1363 v_main_~c~0_1362) (< v_main_~c~0_1362 (+ v_~SIZE~0_500 1)) (< v_main_~c~0_1362 (+ v_~last~0_555 1))) (and .cse0 .cse1 (= v_~last~0_555 v_~last~0_555) (= v_~SIZE~0_500 v_~SIZE~0_500)) (and .cse0 (or (not (< v_main_~c~0_1363 v_~last~0_555)) (not (< v_main_~c~0_1363 v_~SIZE~0_500))) .cse1))) InVars {~SIZE~0=v_~SIZE~0_500, main_~c~0=v_main_~c~0_1363, main_#t~post5=|v_main_#t~post5_727|, ~last~0=v_~last~0_555} OutVars{~SIZE~0=v_~SIZE~0_500, main_#t~post5=|v_main_#t~post5_723|, main_~c~0=v_main_~c~0_1362, ~last~0=v_~last~0_555} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {124653#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:04:46,096 INFO L290 TraceCheckUtils]: 16: Hoare triple {124653#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [319] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {124654#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:04:46,096 INFO L290 TraceCheckUtils]: 17: Hoare triple {124654#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {124643#false} is VALID [2022-04-28 04:04:46,096 INFO L290 TraceCheckUtils]: 18: Hoare triple {124643#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {124643#false} is VALID [2022-04-28 04:04:46,097 INFO L290 TraceCheckUtils]: 19: Hoare triple {124643#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {124643#false} is VALID [2022-04-28 04:04:46,097 INFO L290 TraceCheckUtils]: 20: Hoare triple {124643#false} assume !(~d~0 == ~SIZE~0); {124643#false} is VALID [2022-04-28 04:04:46,097 INFO L272 TraceCheckUtils]: 21: Hoare triple {124643#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {124643#false} is VALID [2022-04-28 04:04:46,097 INFO L290 TraceCheckUtils]: 22: Hoare triple {124643#false} ~cond := #in~cond; {124643#false} is VALID [2022-04-28 04:04:46,097 INFO L290 TraceCheckUtils]: 23: Hoare triple {124643#false} assume 0 == ~cond; {124643#false} is VALID [2022-04-28 04:04:46,097 INFO L290 TraceCheckUtils]: 24: Hoare triple {124643#false} assume !false; {124643#false} is VALID [2022-04-28 04:04:46,097 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:04:46,097 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:04:46,097 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [713063185] [2022-04-28 04:04:46,097 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [713063185] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:04:46,097 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [614890536] [2022-04-28 04:04:46,097 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:04:46,097 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:04:46,098 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:04:46,098 INFO L229 MonitoredProcess]: Starting monitored process 55 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:04:46,099 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (55)] Waiting until timeout for monitored process [2022-04-28 04:04:46,126 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:04:46,126 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:04:46,133 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:04:46,133 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:04:46,352 INFO L272 TraceCheckUtils]: 0: Hoare triple {124642#true} call ULTIMATE.init(); {124642#true} is VALID [2022-04-28 04:04:46,353 INFO L290 TraceCheckUtils]: 1: Hoare triple {124642#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {124647#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:46,353 INFO L290 TraceCheckUtils]: 2: Hoare triple {124647#(<= 200000 ~SIZE~0)} assume true; {124647#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:46,354 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {124647#(<= 200000 ~SIZE~0)} {124642#true} #90#return; {124647#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:46,354 INFO L272 TraceCheckUtils]: 4: Hoare triple {124647#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {124647#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:46,354 INFO L290 TraceCheckUtils]: 5: Hoare triple {124647#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {124647#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:46,355 INFO L272 TraceCheckUtils]: 6: Hoare triple {124647#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {124647#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:46,355 INFO L290 TraceCheckUtils]: 7: Hoare triple {124647#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {124647#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:46,355 INFO L290 TraceCheckUtils]: 8: Hoare triple {124647#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {124647#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:46,355 INFO L290 TraceCheckUtils]: 9: Hoare triple {124647#(<= 200000 ~SIZE~0)} assume true; {124647#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:46,356 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {124647#(<= 200000 ~SIZE~0)} {124647#(<= 200000 ~SIZE~0)} #86#return; {124647#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:46,356 INFO L290 TraceCheckUtils]: 11: Hoare triple {124647#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {124647#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:46,356 INFO L290 TraceCheckUtils]: 12: Hoare triple {124647#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {124695#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:04:46,357 INFO L290 TraceCheckUtils]: 13: Hoare triple {124695#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [320] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_724| |v_main_#t~post5_722|)) (.cse1 (= v_main_~c~0_1361 v_main_~c~0_1360)) (.cse2 (= v_main_~st~0_732 v_main_~st~0_731)) (.cse3 (<= v_~last~0_554 v_main_~c~0_1361))) (or (and (= v_~last~0_554 v_~last~0_554) .cse0 (= v_~SIZE~0_499 v_~SIZE~0_499) .cse1 .cse2) (and .cse0 .cse1 (or (not .cse3) (not (< v_main_~c~0_1361 v_~SIZE~0_499))) .cse2) (and (= v_main_~st~0_731 0) (< v_main_~c~0_1361 v_main_~c~0_1360) (< v_main_~c~0_1360 (+ v_~SIZE~0_499 1)) .cse3))) InVars {~SIZE~0=v_~SIZE~0_499, main_~c~0=v_main_~c~0_1361, main_#t~post5=|v_main_#t~post5_724|, main_~st~0=v_main_~st~0_732, ~last~0=v_~last~0_554} OutVars{~SIZE~0=v_~SIZE~0_499, main_#t~post5=|v_main_#t~post5_722|, main_~c~0=v_main_~c~0_1360, main_~st~0=v_main_~st~0_731, ~last~0=v_~last~0_554} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {124699#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:04:46,357 INFO L290 TraceCheckUtils]: 14: Hoare triple {124699#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [321] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {124699#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:04:46,358 INFO L290 TraceCheckUtils]: 15: Hoare triple {124699#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [322] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1363 v_main_~c~0_1362)) (.cse1 (= |v_main_#t~post5_727| |v_main_#t~post5_723|))) (or (and (< v_main_~c~0_1363 v_main_~c~0_1362) (< v_main_~c~0_1362 (+ v_~SIZE~0_500 1)) (< v_main_~c~0_1362 (+ v_~last~0_555 1))) (and .cse0 .cse1 (= v_~last~0_555 v_~last~0_555) (= v_~SIZE~0_500 v_~SIZE~0_500)) (and .cse0 (or (not (< v_main_~c~0_1363 v_~last~0_555)) (not (< v_main_~c~0_1363 v_~SIZE~0_500))) .cse1))) InVars {~SIZE~0=v_~SIZE~0_500, main_~c~0=v_main_~c~0_1363, main_#t~post5=|v_main_#t~post5_727|, ~last~0=v_~last~0_555} OutVars{~SIZE~0=v_~SIZE~0_500, main_#t~post5=|v_main_#t~post5_723|, main_~c~0=v_main_~c~0_1362, ~last~0=v_~last~0_555} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {124699#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:04:46,358 INFO L290 TraceCheckUtils]: 16: Hoare triple {124699#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [319] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {124709#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:04:46,359 INFO L290 TraceCheckUtils]: 17: Hoare triple {124709#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {124643#false} is VALID [2022-04-28 04:04:46,359 INFO L290 TraceCheckUtils]: 18: Hoare triple {124643#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {124643#false} is VALID [2022-04-28 04:04:46,359 INFO L290 TraceCheckUtils]: 19: Hoare triple {124643#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {124643#false} is VALID [2022-04-28 04:04:46,359 INFO L290 TraceCheckUtils]: 20: Hoare triple {124643#false} assume !(~d~0 == ~SIZE~0); {124643#false} is VALID [2022-04-28 04:04:46,359 INFO L272 TraceCheckUtils]: 21: Hoare triple {124643#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {124643#false} is VALID [2022-04-28 04:04:46,359 INFO L290 TraceCheckUtils]: 22: Hoare triple {124643#false} ~cond := #in~cond; {124643#false} is VALID [2022-04-28 04:04:46,359 INFO L290 TraceCheckUtils]: 23: Hoare triple {124643#false} assume 0 == ~cond; {124643#false} is VALID [2022-04-28 04:04:46,359 INFO L290 TraceCheckUtils]: 24: Hoare triple {124643#false} assume !false; {124643#false} is VALID [2022-04-28 04:04:46,360 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:04:46,360 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:04:46,664 INFO L290 TraceCheckUtils]: 24: Hoare triple {124643#false} assume !false; {124643#false} is VALID [2022-04-28 04:04:46,664 INFO L290 TraceCheckUtils]: 23: Hoare triple {124643#false} assume 0 == ~cond; {124643#false} is VALID [2022-04-28 04:04:46,664 INFO L290 TraceCheckUtils]: 22: Hoare triple {124643#false} ~cond := #in~cond; {124643#false} is VALID [2022-04-28 04:04:46,664 INFO L272 TraceCheckUtils]: 21: Hoare triple {124643#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {124643#false} is VALID [2022-04-28 04:04:46,665 INFO L290 TraceCheckUtils]: 20: Hoare triple {124643#false} assume !(~d~0 == ~SIZE~0); {124643#false} is VALID [2022-04-28 04:04:46,665 INFO L290 TraceCheckUtils]: 19: Hoare triple {124643#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {124643#false} is VALID [2022-04-28 04:04:46,665 INFO L290 TraceCheckUtils]: 18: Hoare triple {124643#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {124643#false} is VALID [2022-04-28 04:04:46,665 INFO L290 TraceCheckUtils]: 17: Hoare triple {124755#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {124643#false} is VALID [2022-04-28 04:04:46,665 INFO L290 TraceCheckUtils]: 16: Hoare triple {124759#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [319] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {124755#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:04:46,666 INFO L290 TraceCheckUtils]: 15: Hoare triple {124759#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [322] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1363 v_main_~c~0_1362)) (.cse1 (= |v_main_#t~post5_727| |v_main_#t~post5_723|))) (or (and (< v_main_~c~0_1363 v_main_~c~0_1362) (< v_main_~c~0_1362 (+ v_~SIZE~0_500 1)) (< v_main_~c~0_1362 (+ v_~last~0_555 1))) (and .cse0 .cse1 (= v_~last~0_555 v_~last~0_555) (= v_~SIZE~0_500 v_~SIZE~0_500)) (and .cse0 (or (not (< v_main_~c~0_1363 v_~last~0_555)) (not (< v_main_~c~0_1363 v_~SIZE~0_500))) .cse1))) InVars {~SIZE~0=v_~SIZE~0_500, main_~c~0=v_main_~c~0_1363, main_#t~post5=|v_main_#t~post5_727|, ~last~0=v_~last~0_555} OutVars{~SIZE~0=v_~SIZE~0_500, main_#t~post5=|v_main_#t~post5_723|, main_~c~0=v_main_~c~0_1362, ~last~0=v_~last~0_555} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {124759#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:04:46,666 INFO L290 TraceCheckUtils]: 14: Hoare triple {124759#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [321] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {124759#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:04:46,667 INFO L290 TraceCheckUtils]: 13: Hoare triple {124769#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [320] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_724| |v_main_#t~post5_722|)) (.cse1 (= v_main_~c~0_1361 v_main_~c~0_1360)) (.cse2 (= v_main_~st~0_732 v_main_~st~0_731)) (.cse3 (<= v_~last~0_554 v_main_~c~0_1361))) (or (and (= v_~last~0_554 v_~last~0_554) .cse0 (= v_~SIZE~0_499 v_~SIZE~0_499) .cse1 .cse2) (and .cse0 .cse1 (or (not .cse3) (not (< v_main_~c~0_1361 v_~SIZE~0_499))) .cse2) (and (= v_main_~st~0_731 0) (< v_main_~c~0_1361 v_main_~c~0_1360) (< v_main_~c~0_1360 (+ v_~SIZE~0_499 1)) .cse3))) InVars {~SIZE~0=v_~SIZE~0_499, main_~c~0=v_main_~c~0_1361, main_#t~post5=|v_main_#t~post5_724|, main_~st~0=v_main_~st~0_732, ~last~0=v_~last~0_554} OutVars{~SIZE~0=v_~SIZE~0_499, main_#t~post5=|v_main_#t~post5_722|, main_~c~0=v_main_~c~0_1360, main_~st~0=v_main_~st~0_731, ~last~0=v_~last~0_554} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {124759#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:04:46,667 INFO L290 TraceCheckUtils]: 12: Hoare triple {124773#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {124769#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:04:46,668 INFO L290 TraceCheckUtils]: 11: Hoare triple {124773#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {124773#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:46,668 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {124642#true} {124773#(< 1 ~SIZE~0)} #86#return; {124773#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:46,668 INFO L290 TraceCheckUtils]: 9: Hoare triple {124642#true} assume true; {124642#true} is VALID [2022-04-28 04:04:46,668 INFO L290 TraceCheckUtils]: 8: Hoare triple {124642#true} assume !(0 == ~cond); {124642#true} is VALID [2022-04-28 04:04:46,668 INFO L290 TraceCheckUtils]: 7: Hoare triple {124642#true} ~cond := #in~cond; {124642#true} is VALID [2022-04-28 04:04:46,668 INFO L272 TraceCheckUtils]: 6: Hoare triple {124773#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {124642#true} is VALID [2022-04-28 04:04:46,669 INFO L290 TraceCheckUtils]: 5: Hoare triple {124773#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {124773#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:46,669 INFO L272 TraceCheckUtils]: 4: Hoare triple {124773#(< 1 ~SIZE~0)} call #t~ret7 := main(); {124773#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:46,669 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {124773#(< 1 ~SIZE~0)} {124642#true} #90#return; {124773#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:46,669 INFO L290 TraceCheckUtils]: 2: Hoare triple {124773#(< 1 ~SIZE~0)} assume true; {124773#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:46,670 INFO L290 TraceCheckUtils]: 1: Hoare triple {124642#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {124773#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:04:46,670 INFO L272 TraceCheckUtils]: 0: Hoare triple {124642#true} call ULTIMATE.init(); {124642#true} is VALID [2022-04-28 04:04:46,670 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:04:46,670 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [614890536] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:04:46,670 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:04:46,670 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:04:47,354 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:04:47,355 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [170167912] [2022-04-28 04:04:47,355 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [170167912] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:04:47,355 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:04:47,355 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [25] imperfect sequences [] total 25 [2022-04-28 04:04:47,355 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1709304416] [2022-04-28 04:04:47,355 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:04:47,355 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 25 states have (on average 1.96) internal successors, (49), 24 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 55 [2022-04-28 04:04:47,355 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:04:47,355 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 25 states, 25 states have (on average 1.96) internal successors, (49), 24 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:04:47,390 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:04:47,391 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 25 states [2022-04-28 04:04:47,391 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:04:47,391 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2022-04-28 04:04:47,391 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=233, Invalid=889, Unknown=0, NotChecked=0, Total=1122 [2022-04-28 04:04:47,391 INFO L87 Difference]: Start difference. First operand 337 states and 403 transitions. Second operand has 25 states, 25 states have (on average 1.96) internal successors, (49), 24 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:04:51,519 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:04:51,519 INFO L93 Difference]: Finished difference Result 655 states and 779 transitions. [2022-04-28 04:04:51,520 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2022-04-28 04:04:51,520 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 25 states have (on average 1.96) internal successors, (49), 24 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 55 [2022-04-28 04:04:51,520 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:04:51,520 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 25 states have (on average 1.96) internal successors, (49), 24 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:04:51,520 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 109 transitions. [2022-04-28 04:04:51,521 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 25 states have (on average 1.96) internal successors, (49), 24 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:04:51,526 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 109 transitions. [2022-04-28 04:04:51,526 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 25 states and 109 transitions. [2022-04-28 04:04:51,600 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 109 edges. 109 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:04:51,607 INFO L225 Difference]: With dead ends: 655 [2022-04-28 04:04:51,607 INFO L226 Difference]: Without dead ends: 394 [2022-04-28 04:04:51,607 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 103 GetRequests, 54 SyntacticMatches, 14 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 842 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=272, Invalid=1060, Unknown=0, NotChecked=0, Total=1332 [2022-04-28 04:04:51,607 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 63 mSDsluCounter, 27 mSDsCounter, 0 mSdLazyCounter, 1326 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 64 SdHoareTripleChecker+Valid, 51 SdHoareTripleChecker+Invalid, 1344 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 1326 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-28 04:04:51,608 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [64 Valid, 51 Invalid, 1344 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 1326 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-28 04:04:51,608 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 394 states. [2022-04-28 04:04:53,417 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 394 to 337. [2022-04-28 04:04:53,417 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:04:53,417 INFO L82 GeneralOperation]: Start isEquivalent. First operand 394 states. Second operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:04:53,418 INFO L74 IsIncluded]: Start isIncluded. First operand 394 states. Second operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:04:53,418 INFO L87 Difference]: Start difference. First operand 394 states. Second operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:04:53,424 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:04:53,424 INFO L93 Difference]: Finished difference Result 394 states and 464 transitions. [2022-04-28 04:04:53,424 INFO L276 IsEmpty]: Start isEmpty. Operand 394 states and 464 transitions. [2022-04-28 04:04:53,424 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:04:53,424 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:04:53,424 INFO L74 IsIncluded]: Start isIncluded. First operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 394 states. [2022-04-28 04:04:53,425 INFO L87 Difference]: Start difference. First operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 394 states. [2022-04-28 04:04:53,430 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:04:53,430 INFO L93 Difference]: Finished difference Result 394 states and 464 transitions. [2022-04-28 04:04:53,430 INFO L276 IsEmpty]: Start isEmpty. Operand 394 states and 464 transitions. [2022-04-28 04:04:53,431 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:04:53,431 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:04:53,431 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:04:53,431 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:04:53,431 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:04:53,436 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 337 states to 337 states and 403 transitions. [2022-04-28 04:04:53,436 INFO L78 Accepts]: Start accepts. Automaton has 337 states and 403 transitions. Word has length 55 [2022-04-28 04:04:53,436 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:04:53,436 INFO L495 AbstractCegarLoop]: Abstraction has 337 states and 403 transitions. [2022-04-28 04:04:53,436 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 25 states, 25 states have (on average 1.96) internal successors, (49), 24 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:04:53,436 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 337 states and 403 transitions. [2022-04-28 04:04:55,117 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 403 edges. 403 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:04:55,117 INFO L276 IsEmpty]: Start isEmpty. Operand 337 states and 403 transitions. [2022-04-28 04:04:55,118 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-28 04:04:55,118 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:04:55,118 INFO L195 NwaCegarLoop]: trace histogram [11, 11, 7, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:04:55,134 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (55)] Forceful destruction successful, exit code 0 [2022-04-28 04:04:55,319 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable62,55 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:04:55,319 INFO L420 AbstractCegarLoop]: === Iteration 64 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:04:55,319 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:04:55,319 INFO L85 PathProgramCache]: Analyzing trace with hash 325790527, now seen corresponding path program 52 times [2022-04-28 04:04:55,320 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:04:55,320 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [73392925] [2022-04-28 04:04:59,441 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:04:59,553 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:04:59,750 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:04:59,751 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:04:59,754 INFO L85 PathProgramCache]: Analyzing trace with hash -151150911, now seen corresponding path program 1 times [2022-04-28 04:04:59,754 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:04:59,754 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2130913007] [2022-04-28 04:04:59,754 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:04:59,754 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:04:59,760 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:04:59,799 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:04:59,800 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:04:59,803 INFO L290 TraceCheckUtils]: 0: Hoare triple {127624#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {127616#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:59,804 INFO L290 TraceCheckUtils]: 1: Hoare triple {127616#(<= 200000 ~SIZE~0)} assume true; {127616#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:59,804 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {127616#(<= 200000 ~SIZE~0)} {127611#true} #90#return; {127616#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:59,804 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:04:59,804 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:04:59,806 INFO L290 TraceCheckUtils]: 0: Hoare triple {127611#true} ~cond := #in~cond; {127611#true} is VALID [2022-04-28 04:04:59,806 INFO L290 TraceCheckUtils]: 1: Hoare triple {127611#true} assume !(0 == ~cond); {127611#true} is VALID [2022-04-28 04:04:59,806 INFO L290 TraceCheckUtils]: 2: Hoare triple {127611#true} assume true; {127611#true} is VALID [2022-04-28 04:04:59,806 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {127611#true} {127616#(<= 200000 ~SIZE~0)} #86#return; {127616#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:59,807 INFO L272 TraceCheckUtils]: 0: Hoare triple {127611#true} call ULTIMATE.init(); {127624#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:04:59,807 INFO L290 TraceCheckUtils]: 1: Hoare triple {127624#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {127616#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:59,807 INFO L290 TraceCheckUtils]: 2: Hoare triple {127616#(<= 200000 ~SIZE~0)} assume true; {127616#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:59,808 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {127616#(<= 200000 ~SIZE~0)} {127611#true} #90#return; {127616#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:59,808 INFO L272 TraceCheckUtils]: 4: Hoare triple {127616#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {127616#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:59,808 INFO L290 TraceCheckUtils]: 5: Hoare triple {127616#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {127616#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:59,808 INFO L272 TraceCheckUtils]: 6: Hoare triple {127616#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {127611#true} is VALID [2022-04-28 04:04:59,809 INFO L290 TraceCheckUtils]: 7: Hoare triple {127611#true} ~cond := #in~cond; {127611#true} is VALID [2022-04-28 04:04:59,809 INFO L290 TraceCheckUtils]: 8: Hoare triple {127611#true} assume !(0 == ~cond); {127611#true} is VALID [2022-04-28 04:04:59,809 INFO L290 TraceCheckUtils]: 9: Hoare triple {127611#true} assume true; {127611#true} is VALID [2022-04-28 04:04:59,809 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {127611#true} {127616#(<= 200000 ~SIZE~0)} #86#return; {127616#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:59,809 INFO L290 TraceCheckUtils]: 11: Hoare triple {127616#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {127616#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:04:59,810 INFO L290 TraceCheckUtils]: 12: Hoare triple {127616#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {127621#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:04:59,810 INFO L290 TraceCheckUtils]: 13: Hoare triple {127621#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [324] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~c~0_1389 v_main_~c~0_1388)) (.cse2 (= v_main_~st~0_746 v_main_~st~0_745)) (.cse0 (<= v_~last~0_564 v_main_~c~0_1389))) (or (and (or (not .cse0) (not (< v_main_~c~0_1389 v_~SIZE~0_508))) .cse1 .cse2 (= |v_main_#t~post5_735| |v_main_#t~post5_737|)) (and (= |v_main_#t~post5_737| |v_main_#t~post5_735|) (= v_~SIZE~0_508 v_~SIZE~0_508) (= v_~last~0_564 v_~last~0_564) .cse1 .cse2) (and (= v_main_~st~0_745 0) (< v_main_~c~0_1389 v_main_~c~0_1388) (< v_main_~c~0_1388 (+ v_~SIZE~0_508 1)) .cse0))) InVars {~SIZE~0=v_~SIZE~0_508, main_~c~0=v_main_~c~0_1389, main_#t~post5=|v_main_#t~post5_737|, main_~st~0=v_main_~st~0_746, ~last~0=v_~last~0_564} OutVars{~SIZE~0=v_~SIZE~0_508, main_#t~post5=|v_main_#t~post5_735|, main_~c~0=v_main_~c~0_1388, main_~st~0=v_main_~st~0_745, ~last~0=v_~last~0_564} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {127622#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:04:59,811 INFO L290 TraceCheckUtils]: 14: Hoare triple {127622#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [325] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {127622#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:04:59,811 INFO L290 TraceCheckUtils]: 15: Hoare triple {127622#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [326] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1391 v_main_~c~0_1390))) (or (and (< v_main_~c~0_1391 v_main_~c~0_1390) (< v_main_~c~0_1390 (+ v_~SIZE~0_509 1)) (< v_main_~c~0_1390 (+ v_~last~0_565 1))) (and (= |v_main_#t~post5_740| |v_main_#t~post5_736|) .cse0 (= v_~SIZE~0_509 v_~SIZE~0_509) (= v_~last~0_565 v_~last~0_565)) (and (or (not (< v_main_~c~0_1391 v_~last~0_565)) (not (< v_main_~c~0_1391 v_~SIZE~0_509))) (= |v_main_#t~post5_736| |v_main_#t~post5_740|) .cse0))) InVars {~SIZE~0=v_~SIZE~0_509, main_~c~0=v_main_~c~0_1391, main_#t~post5=|v_main_#t~post5_740|, ~last~0=v_~last~0_565} OutVars{~SIZE~0=v_~SIZE~0_509, main_#t~post5=|v_main_#t~post5_736|, main_~c~0=v_main_~c~0_1390, ~last~0=v_~last~0_565} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {127622#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:04:59,811 INFO L290 TraceCheckUtils]: 16: Hoare triple {127622#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [323] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {127623#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:04:59,812 INFO L290 TraceCheckUtils]: 17: Hoare triple {127623#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {127612#false} is VALID [2022-04-28 04:04:59,812 INFO L290 TraceCheckUtils]: 18: Hoare triple {127612#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {127612#false} is VALID [2022-04-28 04:04:59,812 INFO L290 TraceCheckUtils]: 19: Hoare triple {127612#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {127612#false} is VALID [2022-04-28 04:04:59,812 INFO L290 TraceCheckUtils]: 20: Hoare triple {127612#false} assume !(~d~0 == ~SIZE~0); {127612#false} is VALID [2022-04-28 04:04:59,812 INFO L272 TraceCheckUtils]: 21: Hoare triple {127612#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {127612#false} is VALID [2022-04-28 04:04:59,812 INFO L290 TraceCheckUtils]: 22: Hoare triple {127612#false} ~cond := #in~cond; {127612#false} is VALID [2022-04-28 04:04:59,812 INFO L290 TraceCheckUtils]: 23: Hoare triple {127612#false} assume 0 == ~cond; {127612#false} is VALID [2022-04-28 04:04:59,812 INFO L290 TraceCheckUtils]: 24: Hoare triple {127612#false} assume !false; {127612#false} is VALID [2022-04-28 04:04:59,812 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:04:59,812 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:04:59,813 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2130913007] [2022-04-28 04:04:59,813 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2130913007] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:04:59,813 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [811271094] [2022-04-28 04:04:59,813 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:04:59,813 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:04:59,813 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:04:59,814 INFO L229 MonitoredProcess]: Starting monitored process 56 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:04:59,814 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (56)] Waiting until timeout for monitored process [2022-04-28 04:04:59,851 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:04:59,852 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:04:59,860 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:04:59,860 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:05:00,086 INFO L272 TraceCheckUtils]: 0: Hoare triple {127611#true} call ULTIMATE.init(); {127611#true} is VALID [2022-04-28 04:05:00,086 INFO L290 TraceCheckUtils]: 1: Hoare triple {127611#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {127616#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:00,087 INFO L290 TraceCheckUtils]: 2: Hoare triple {127616#(<= 200000 ~SIZE~0)} assume true; {127616#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:00,087 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {127616#(<= 200000 ~SIZE~0)} {127611#true} #90#return; {127616#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:00,087 INFO L272 TraceCheckUtils]: 4: Hoare triple {127616#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {127616#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:00,088 INFO L290 TraceCheckUtils]: 5: Hoare triple {127616#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {127616#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:00,088 INFO L272 TraceCheckUtils]: 6: Hoare triple {127616#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {127616#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:00,088 INFO L290 TraceCheckUtils]: 7: Hoare triple {127616#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {127616#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:00,088 INFO L290 TraceCheckUtils]: 8: Hoare triple {127616#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {127616#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:00,089 INFO L290 TraceCheckUtils]: 9: Hoare triple {127616#(<= 200000 ~SIZE~0)} assume true; {127616#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:00,089 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {127616#(<= 200000 ~SIZE~0)} {127616#(<= 200000 ~SIZE~0)} #86#return; {127616#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:00,089 INFO L290 TraceCheckUtils]: 11: Hoare triple {127616#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {127616#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:00,090 INFO L290 TraceCheckUtils]: 12: Hoare triple {127616#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {127664#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:05:00,090 INFO L290 TraceCheckUtils]: 13: Hoare triple {127664#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [324] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~c~0_1389 v_main_~c~0_1388)) (.cse2 (= v_main_~st~0_746 v_main_~st~0_745)) (.cse0 (<= v_~last~0_564 v_main_~c~0_1389))) (or (and (or (not .cse0) (not (< v_main_~c~0_1389 v_~SIZE~0_508))) .cse1 .cse2 (= |v_main_#t~post5_735| |v_main_#t~post5_737|)) (and (= |v_main_#t~post5_737| |v_main_#t~post5_735|) (= v_~SIZE~0_508 v_~SIZE~0_508) (= v_~last~0_564 v_~last~0_564) .cse1 .cse2) (and (= v_main_~st~0_745 0) (< v_main_~c~0_1389 v_main_~c~0_1388) (< v_main_~c~0_1388 (+ v_~SIZE~0_508 1)) .cse0))) InVars {~SIZE~0=v_~SIZE~0_508, main_~c~0=v_main_~c~0_1389, main_#t~post5=|v_main_#t~post5_737|, main_~st~0=v_main_~st~0_746, ~last~0=v_~last~0_564} OutVars{~SIZE~0=v_~SIZE~0_508, main_#t~post5=|v_main_#t~post5_735|, main_~c~0=v_main_~c~0_1388, main_~st~0=v_main_~st~0_745, ~last~0=v_~last~0_564} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {127668#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:05:00,091 INFO L290 TraceCheckUtils]: 14: Hoare triple {127668#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [325] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {127668#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:05:00,091 INFO L290 TraceCheckUtils]: 15: Hoare triple {127668#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [326] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1391 v_main_~c~0_1390))) (or (and (< v_main_~c~0_1391 v_main_~c~0_1390) (< v_main_~c~0_1390 (+ v_~SIZE~0_509 1)) (< v_main_~c~0_1390 (+ v_~last~0_565 1))) (and (= |v_main_#t~post5_740| |v_main_#t~post5_736|) .cse0 (= v_~SIZE~0_509 v_~SIZE~0_509) (= v_~last~0_565 v_~last~0_565)) (and (or (not (< v_main_~c~0_1391 v_~last~0_565)) (not (< v_main_~c~0_1391 v_~SIZE~0_509))) (= |v_main_#t~post5_736| |v_main_#t~post5_740|) .cse0))) InVars {~SIZE~0=v_~SIZE~0_509, main_~c~0=v_main_~c~0_1391, main_#t~post5=|v_main_#t~post5_740|, ~last~0=v_~last~0_565} OutVars{~SIZE~0=v_~SIZE~0_509, main_#t~post5=|v_main_#t~post5_736|, main_~c~0=v_main_~c~0_1390, ~last~0=v_~last~0_565} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {127668#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:05:00,092 INFO L290 TraceCheckUtils]: 16: Hoare triple {127668#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [323] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {127678#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:05:00,092 INFO L290 TraceCheckUtils]: 17: Hoare triple {127678#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {127612#false} is VALID [2022-04-28 04:05:00,093 INFO L290 TraceCheckUtils]: 18: Hoare triple {127612#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {127612#false} is VALID [2022-04-28 04:05:00,093 INFO L290 TraceCheckUtils]: 19: Hoare triple {127612#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {127612#false} is VALID [2022-04-28 04:05:00,093 INFO L290 TraceCheckUtils]: 20: Hoare triple {127612#false} assume !(~d~0 == ~SIZE~0); {127612#false} is VALID [2022-04-28 04:05:00,093 INFO L272 TraceCheckUtils]: 21: Hoare triple {127612#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {127612#false} is VALID [2022-04-28 04:05:00,093 INFO L290 TraceCheckUtils]: 22: Hoare triple {127612#false} ~cond := #in~cond; {127612#false} is VALID [2022-04-28 04:05:00,093 INFO L290 TraceCheckUtils]: 23: Hoare triple {127612#false} assume 0 == ~cond; {127612#false} is VALID [2022-04-28 04:05:00,093 INFO L290 TraceCheckUtils]: 24: Hoare triple {127612#false} assume !false; {127612#false} is VALID [2022-04-28 04:05:00,093 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:05:00,093 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:05:00,399 INFO L290 TraceCheckUtils]: 24: Hoare triple {127612#false} assume !false; {127612#false} is VALID [2022-04-28 04:05:00,400 INFO L290 TraceCheckUtils]: 23: Hoare triple {127612#false} assume 0 == ~cond; {127612#false} is VALID [2022-04-28 04:05:00,400 INFO L290 TraceCheckUtils]: 22: Hoare triple {127612#false} ~cond := #in~cond; {127612#false} is VALID [2022-04-28 04:05:00,400 INFO L272 TraceCheckUtils]: 21: Hoare triple {127612#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {127612#false} is VALID [2022-04-28 04:05:00,400 INFO L290 TraceCheckUtils]: 20: Hoare triple {127612#false} assume !(~d~0 == ~SIZE~0); {127612#false} is VALID [2022-04-28 04:05:00,400 INFO L290 TraceCheckUtils]: 19: Hoare triple {127612#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {127612#false} is VALID [2022-04-28 04:05:00,400 INFO L290 TraceCheckUtils]: 18: Hoare triple {127612#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {127612#false} is VALID [2022-04-28 04:05:00,400 INFO L290 TraceCheckUtils]: 17: Hoare triple {127724#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {127612#false} is VALID [2022-04-28 04:05:00,401 INFO L290 TraceCheckUtils]: 16: Hoare triple {127728#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [323] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {127724#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:05:00,401 INFO L290 TraceCheckUtils]: 15: Hoare triple {127728#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [326] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1391 v_main_~c~0_1390))) (or (and (< v_main_~c~0_1391 v_main_~c~0_1390) (< v_main_~c~0_1390 (+ v_~SIZE~0_509 1)) (< v_main_~c~0_1390 (+ v_~last~0_565 1))) (and (= |v_main_#t~post5_740| |v_main_#t~post5_736|) .cse0 (= v_~SIZE~0_509 v_~SIZE~0_509) (= v_~last~0_565 v_~last~0_565)) (and (or (not (< v_main_~c~0_1391 v_~last~0_565)) (not (< v_main_~c~0_1391 v_~SIZE~0_509))) (= |v_main_#t~post5_736| |v_main_#t~post5_740|) .cse0))) InVars {~SIZE~0=v_~SIZE~0_509, main_~c~0=v_main_~c~0_1391, main_#t~post5=|v_main_#t~post5_740|, ~last~0=v_~last~0_565} OutVars{~SIZE~0=v_~SIZE~0_509, main_#t~post5=|v_main_#t~post5_736|, main_~c~0=v_main_~c~0_1390, ~last~0=v_~last~0_565} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {127728#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:05:00,402 INFO L290 TraceCheckUtils]: 14: Hoare triple {127728#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [325] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {127728#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:05:00,402 INFO L290 TraceCheckUtils]: 13: Hoare triple {127738#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [324] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~c~0_1389 v_main_~c~0_1388)) (.cse2 (= v_main_~st~0_746 v_main_~st~0_745)) (.cse0 (<= v_~last~0_564 v_main_~c~0_1389))) (or (and (or (not .cse0) (not (< v_main_~c~0_1389 v_~SIZE~0_508))) .cse1 .cse2 (= |v_main_#t~post5_735| |v_main_#t~post5_737|)) (and (= |v_main_#t~post5_737| |v_main_#t~post5_735|) (= v_~SIZE~0_508 v_~SIZE~0_508) (= v_~last~0_564 v_~last~0_564) .cse1 .cse2) (and (= v_main_~st~0_745 0) (< v_main_~c~0_1389 v_main_~c~0_1388) (< v_main_~c~0_1388 (+ v_~SIZE~0_508 1)) .cse0))) InVars {~SIZE~0=v_~SIZE~0_508, main_~c~0=v_main_~c~0_1389, main_#t~post5=|v_main_#t~post5_737|, main_~st~0=v_main_~st~0_746, ~last~0=v_~last~0_564} OutVars{~SIZE~0=v_~SIZE~0_508, main_#t~post5=|v_main_#t~post5_735|, main_~c~0=v_main_~c~0_1388, main_~st~0=v_main_~st~0_745, ~last~0=v_~last~0_564} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {127728#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:05:00,403 INFO L290 TraceCheckUtils]: 12: Hoare triple {127742#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {127738#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:05:00,403 INFO L290 TraceCheckUtils]: 11: Hoare triple {127742#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {127742#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:05:00,403 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {127611#true} {127742#(< 1 ~SIZE~0)} #86#return; {127742#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:05:00,403 INFO L290 TraceCheckUtils]: 9: Hoare triple {127611#true} assume true; {127611#true} is VALID [2022-04-28 04:05:00,403 INFO L290 TraceCheckUtils]: 8: Hoare triple {127611#true} assume !(0 == ~cond); {127611#true} is VALID [2022-04-28 04:05:00,403 INFO L290 TraceCheckUtils]: 7: Hoare triple {127611#true} ~cond := #in~cond; {127611#true} is VALID [2022-04-28 04:05:00,403 INFO L272 TraceCheckUtils]: 6: Hoare triple {127742#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {127611#true} is VALID [2022-04-28 04:05:00,404 INFO L290 TraceCheckUtils]: 5: Hoare triple {127742#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {127742#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:05:00,404 INFO L272 TraceCheckUtils]: 4: Hoare triple {127742#(< 1 ~SIZE~0)} call #t~ret7 := main(); {127742#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:05:00,404 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {127742#(< 1 ~SIZE~0)} {127611#true} #90#return; {127742#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:05:00,405 INFO L290 TraceCheckUtils]: 2: Hoare triple {127742#(< 1 ~SIZE~0)} assume true; {127742#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:05:00,405 INFO L290 TraceCheckUtils]: 1: Hoare triple {127611#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {127742#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:05:00,405 INFO L272 TraceCheckUtils]: 0: Hoare triple {127611#true} call ULTIMATE.init(); {127611#true} is VALID [2022-04-28 04:05:00,405 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:05:00,405 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [811271094] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:05:00,405 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:05:00,405 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:05:01,104 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:05:01,104 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [73392925] [2022-04-28 04:05:01,104 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [73392925] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:05:01,104 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:05:01,104 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [26] imperfect sequences [] total 26 [2022-04-28 04:05:01,104 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [281906042] [2022-04-28 04:05:01,104 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:05:01,105 INFO L78 Accepts]: Start accepts. Automaton has has 26 states, 26 states have (on average 1.8846153846153846) internal successors, (49), 25 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 55 [2022-04-28 04:05:01,105 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:05:01,105 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 26 states, 26 states have (on average 1.8846153846153846) internal successors, (49), 25 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:05:01,140 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:05:01,140 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 26 states [2022-04-28 04:05:01,141 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:05:01,141 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 26 interpolants. [2022-04-28 04:05:01,141 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=248, Invalid=942, Unknown=0, NotChecked=0, Total=1190 [2022-04-28 04:05:01,141 INFO L87 Difference]: Start difference. First operand 337 states and 403 transitions. Second operand has 26 states, 26 states have (on average 1.8846153846153846) internal successors, (49), 25 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:05:05,179 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:05:05,180 INFO L93 Difference]: Finished difference Result 646 states and 770 transitions. [2022-04-28 04:05:05,180 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2022-04-28 04:05:05,180 INFO L78 Accepts]: Start accepts. Automaton has has 26 states, 26 states have (on average 1.8846153846153846) internal successors, (49), 25 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 55 [2022-04-28 04:05:05,180 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:05:05,180 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 26 states, 26 states have (on average 1.8846153846153846) internal successors, (49), 25 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:05:05,181 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 110 transitions. [2022-04-28 04:05:05,181 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 26 states, 26 states have (on average 1.8846153846153846) internal successors, (49), 25 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:05:05,181 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 110 transitions. [2022-04-28 04:05:05,181 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 26 states and 110 transitions. [2022-04-28 04:05:05,251 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 110 edges. 110 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:05:05,258 INFO L225 Difference]: With dead ends: 646 [2022-04-28 04:05:05,258 INFO L226 Difference]: Without dead ends: 385 [2022-04-28 04:05:05,258 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 103 GetRequests, 54 SyntacticMatches, 13 SemanticMatches, 36 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 847 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=289, Invalid=1117, Unknown=0, NotChecked=0, Total=1406 [2022-04-28 04:05:05,259 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 70 mSDsluCounter, 23 mSDsCounter, 0 mSdLazyCounter, 1343 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 71 SdHoareTripleChecker+Valid, 47 SdHoareTripleChecker+Invalid, 1362 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 1343 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-28 04:05:05,264 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [71 Valid, 47 Invalid, 1362 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 1343 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-28 04:05:05,265 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 385 states. [2022-04-28 04:05:07,090 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 385 to 337. [2022-04-28 04:05:07,090 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:05:07,091 INFO L82 GeneralOperation]: Start isEquivalent. First operand 385 states. Second operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:05:07,091 INFO L74 IsIncluded]: Start isIncluded. First operand 385 states. Second operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:05:07,091 INFO L87 Difference]: Start difference. First operand 385 states. Second operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:05:07,097 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:05:07,097 INFO L93 Difference]: Finished difference Result 385 states and 455 transitions. [2022-04-28 04:05:07,097 INFO L276 IsEmpty]: Start isEmpty. Operand 385 states and 455 transitions. [2022-04-28 04:05:07,097 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:05:07,097 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:05:07,098 INFO L74 IsIncluded]: Start isIncluded. First operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 385 states. [2022-04-28 04:05:07,098 INFO L87 Difference]: Start difference. First operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 385 states. [2022-04-28 04:05:07,105 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:05:07,105 INFO L93 Difference]: Finished difference Result 385 states and 455 transitions. [2022-04-28 04:05:07,105 INFO L276 IsEmpty]: Start isEmpty. Operand 385 states and 455 transitions. [2022-04-28 04:05:07,105 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:05:07,105 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:05:07,105 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:05:07,106 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:05:07,106 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:05:07,112 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 337 states to 337 states and 403 transitions. [2022-04-28 04:05:07,112 INFO L78 Accepts]: Start accepts. Automaton has 337 states and 403 transitions. Word has length 55 [2022-04-28 04:05:07,112 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:05:07,112 INFO L495 AbstractCegarLoop]: Abstraction has 337 states and 403 transitions. [2022-04-28 04:05:07,112 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 26 states, 26 states have (on average 1.8846153846153846) internal successors, (49), 25 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:05:07,112 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 337 states and 403 transitions. [2022-04-28 04:05:08,839 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 403 edges. 403 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:05:08,839 INFO L276 IsEmpty]: Start isEmpty. Operand 337 states and 403 transitions. [2022-04-28 04:05:08,839 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-28 04:05:08,839 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:05:08,839 INFO L195 NwaCegarLoop]: trace histogram [11, 11, 8, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:05:08,857 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (56)] Forceful destruction successful, exit code 0 [2022-04-28 04:05:09,039 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable63,56 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:05:09,042 INFO L420 AbstractCegarLoop]: === Iteration 65 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:05:09,042 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:05:09,042 INFO L85 PathProgramCache]: Analyzing trace with hash -491857923, now seen corresponding path program 53 times [2022-04-28 04:05:09,042 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:05:09,042 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1639432090] [2022-04-28 04:05:13,159 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:05:13,271 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:05:13,451 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:05:13,452 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:05:13,455 INFO L85 PathProgramCache]: Analyzing trace with hash -1953595455, now seen corresponding path program 1 times [2022-04-28 04:05:13,455 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:05:13,455 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1717785868] [2022-04-28 04:05:13,455 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:05:13,455 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:05:13,461 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:05:13,500 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:05:13,501 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:05:13,504 INFO L290 TraceCheckUtils]: 0: Hoare triple {130558#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {130550#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:13,504 INFO L290 TraceCheckUtils]: 1: Hoare triple {130550#(<= 200000 ~SIZE~0)} assume true; {130550#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:13,504 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {130550#(<= 200000 ~SIZE~0)} {130545#true} #90#return; {130550#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:13,504 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:05:13,505 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:05:13,506 INFO L290 TraceCheckUtils]: 0: Hoare triple {130545#true} ~cond := #in~cond; {130545#true} is VALID [2022-04-28 04:05:13,506 INFO L290 TraceCheckUtils]: 1: Hoare triple {130545#true} assume !(0 == ~cond); {130545#true} is VALID [2022-04-28 04:05:13,506 INFO L290 TraceCheckUtils]: 2: Hoare triple {130545#true} assume true; {130545#true} is VALID [2022-04-28 04:05:13,507 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {130545#true} {130550#(<= 200000 ~SIZE~0)} #86#return; {130550#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:13,507 INFO L272 TraceCheckUtils]: 0: Hoare triple {130545#true} call ULTIMATE.init(); {130558#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:05:13,508 INFO L290 TraceCheckUtils]: 1: Hoare triple {130558#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {130550#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:13,508 INFO L290 TraceCheckUtils]: 2: Hoare triple {130550#(<= 200000 ~SIZE~0)} assume true; {130550#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:13,508 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {130550#(<= 200000 ~SIZE~0)} {130545#true} #90#return; {130550#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:13,509 INFO L272 TraceCheckUtils]: 4: Hoare triple {130550#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {130550#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:13,509 INFO L290 TraceCheckUtils]: 5: Hoare triple {130550#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {130550#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:13,509 INFO L272 TraceCheckUtils]: 6: Hoare triple {130550#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {130545#true} is VALID [2022-04-28 04:05:13,509 INFO L290 TraceCheckUtils]: 7: Hoare triple {130545#true} ~cond := #in~cond; {130545#true} is VALID [2022-04-28 04:05:13,509 INFO L290 TraceCheckUtils]: 8: Hoare triple {130545#true} assume !(0 == ~cond); {130545#true} is VALID [2022-04-28 04:05:13,509 INFO L290 TraceCheckUtils]: 9: Hoare triple {130545#true} assume true; {130545#true} is VALID [2022-04-28 04:05:13,510 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {130545#true} {130550#(<= 200000 ~SIZE~0)} #86#return; {130550#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:13,510 INFO L290 TraceCheckUtils]: 11: Hoare triple {130550#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {130550#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:13,510 INFO L290 TraceCheckUtils]: 12: Hoare triple {130550#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {130555#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:05:13,511 INFO L290 TraceCheckUtils]: 13: Hoare triple {130555#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [328] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_574 v_main_~c~0_1417)) (.cse1 (= v_main_~c~0_1417 v_main_~c~0_1416))) (or (and .cse0 (= v_main_~st~0_758 0) (< v_main_~c~0_1416 (+ v_~SIZE~0_517 1)) (< v_main_~c~0_1417 v_main_~c~0_1416)) (and (= v_main_~st~0_759 v_main_~st~0_758) .cse1 (= v_~SIZE~0_517 v_~SIZE~0_517) (= |v_main_#t~post5_750| |v_main_#t~post5_748|) (= v_~last~0_574 v_~last~0_574)) (and (or (not .cse0) (not (< v_main_~c~0_1417 v_~SIZE~0_517))) .cse1 (= |v_main_#t~post5_748| |v_main_#t~post5_750|) (= v_main_~st~0_758 v_main_~st~0_759)))) InVars {~SIZE~0=v_~SIZE~0_517, main_~c~0=v_main_~c~0_1417, main_#t~post5=|v_main_#t~post5_750|, main_~st~0=v_main_~st~0_759, ~last~0=v_~last~0_574} OutVars{~SIZE~0=v_~SIZE~0_517, main_#t~post5=|v_main_#t~post5_748|, main_~c~0=v_main_~c~0_1416, main_~st~0=v_main_~st~0_758, ~last~0=v_~last~0_574} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {130556#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:05:13,511 INFO L290 TraceCheckUtils]: 14: Hoare triple {130556#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [329] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {130556#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:05:13,512 INFO L290 TraceCheckUtils]: 15: Hoare triple {130556#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [330] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1419 v_main_~c~0_1418))) (or (and (< v_main_~c~0_1419 v_main_~c~0_1418) (< v_main_~c~0_1418 (+ v_~last~0_575 1)) (< v_main_~c~0_1418 (+ v_~SIZE~0_518 1))) (and .cse0 (= v_~SIZE~0_518 v_~SIZE~0_518) (= |v_main_#t~post5_753| |v_main_#t~post5_749|) (= v_~last~0_575 v_~last~0_575)) (and (or (not (< v_main_~c~0_1419 v_~last~0_575)) (not (< v_main_~c~0_1419 v_~SIZE~0_518))) .cse0 (= |v_main_#t~post5_749| |v_main_#t~post5_753|)))) InVars {~SIZE~0=v_~SIZE~0_518, main_~c~0=v_main_~c~0_1419, main_#t~post5=|v_main_#t~post5_753|, ~last~0=v_~last~0_575} OutVars{~SIZE~0=v_~SIZE~0_518, main_#t~post5=|v_main_#t~post5_749|, main_~c~0=v_main_~c~0_1418, ~last~0=v_~last~0_575} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {130556#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:05:13,512 INFO L290 TraceCheckUtils]: 16: Hoare triple {130556#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [327] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {130557#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:05:13,512 INFO L290 TraceCheckUtils]: 17: Hoare triple {130557#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {130546#false} is VALID [2022-04-28 04:05:13,513 INFO L290 TraceCheckUtils]: 18: Hoare triple {130546#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {130546#false} is VALID [2022-04-28 04:05:13,513 INFO L290 TraceCheckUtils]: 19: Hoare triple {130546#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {130546#false} is VALID [2022-04-28 04:05:13,513 INFO L290 TraceCheckUtils]: 20: Hoare triple {130546#false} assume !(~d~0 == ~SIZE~0); {130546#false} is VALID [2022-04-28 04:05:13,513 INFO L272 TraceCheckUtils]: 21: Hoare triple {130546#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {130546#false} is VALID [2022-04-28 04:05:13,513 INFO L290 TraceCheckUtils]: 22: Hoare triple {130546#false} ~cond := #in~cond; {130546#false} is VALID [2022-04-28 04:05:13,513 INFO L290 TraceCheckUtils]: 23: Hoare triple {130546#false} assume 0 == ~cond; {130546#false} is VALID [2022-04-28 04:05:13,513 INFO L290 TraceCheckUtils]: 24: Hoare triple {130546#false} assume !false; {130546#false} is VALID [2022-04-28 04:05:13,513 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:05:13,513 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:05:13,513 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1717785868] [2022-04-28 04:05:13,513 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1717785868] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:05:13,513 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1154733473] [2022-04-28 04:05:13,513 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:05:13,513 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:05:13,514 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:05:13,514 INFO L229 MonitoredProcess]: Starting monitored process 57 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:05:13,515 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (57)] Waiting until timeout for monitored process [2022-04-28 04:05:13,545 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:05:13,545 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:05:13,552 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:05:13,552 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:05:13,779 INFO L272 TraceCheckUtils]: 0: Hoare triple {130545#true} call ULTIMATE.init(); {130545#true} is VALID [2022-04-28 04:05:13,780 INFO L290 TraceCheckUtils]: 1: Hoare triple {130545#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {130550#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:13,780 INFO L290 TraceCheckUtils]: 2: Hoare triple {130550#(<= 200000 ~SIZE~0)} assume true; {130550#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:13,780 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {130550#(<= 200000 ~SIZE~0)} {130545#true} #90#return; {130550#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:13,780 INFO L272 TraceCheckUtils]: 4: Hoare triple {130550#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {130550#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:13,781 INFO L290 TraceCheckUtils]: 5: Hoare triple {130550#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {130550#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:13,781 INFO L272 TraceCheckUtils]: 6: Hoare triple {130550#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {130550#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:13,781 INFO L290 TraceCheckUtils]: 7: Hoare triple {130550#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {130550#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:13,782 INFO L290 TraceCheckUtils]: 8: Hoare triple {130550#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {130550#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:13,782 INFO L290 TraceCheckUtils]: 9: Hoare triple {130550#(<= 200000 ~SIZE~0)} assume true; {130550#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:13,782 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {130550#(<= 200000 ~SIZE~0)} {130550#(<= 200000 ~SIZE~0)} #86#return; {130550#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:13,782 INFO L290 TraceCheckUtils]: 11: Hoare triple {130550#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {130550#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:13,783 INFO L290 TraceCheckUtils]: 12: Hoare triple {130550#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {130598#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:05:13,784 INFO L290 TraceCheckUtils]: 13: Hoare triple {130598#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [328] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_574 v_main_~c~0_1417)) (.cse1 (= v_main_~c~0_1417 v_main_~c~0_1416))) (or (and .cse0 (= v_main_~st~0_758 0) (< v_main_~c~0_1416 (+ v_~SIZE~0_517 1)) (< v_main_~c~0_1417 v_main_~c~0_1416)) (and (= v_main_~st~0_759 v_main_~st~0_758) .cse1 (= v_~SIZE~0_517 v_~SIZE~0_517) (= |v_main_#t~post5_750| |v_main_#t~post5_748|) (= v_~last~0_574 v_~last~0_574)) (and (or (not .cse0) (not (< v_main_~c~0_1417 v_~SIZE~0_517))) .cse1 (= |v_main_#t~post5_748| |v_main_#t~post5_750|) (= v_main_~st~0_758 v_main_~st~0_759)))) InVars {~SIZE~0=v_~SIZE~0_517, main_~c~0=v_main_~c~0_1417, main_#t~post5=|v_main_#t~post5_750|, main_~st~0=v_main_~st~0_759, ~last~0=v_~last~0_574} OutVars{~SIZE~0=v_~SIZE~0_517, main_#t~post5=|v_main_#t~post5_748|, main_~c~0=v_main_~c~0_1416, main_~st~0=v_main_~st~0_758, ~last~0=v_~last~0_574} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {130602#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:05:13,784 INFO L290 TraceCheckUtils]: 14: Hoare triple {130602#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [329] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {130602#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:05:13,785 INFO L290 TraceCheckUtils]: 15: Hoare triple {130602#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [330] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1419 v_main_~c~0_1418))) (or (and (< v_main_~c~0_1419 v_main_~c~0_1418) (< v_main_~c~0_1418 (+ v_~last~0_575 1)) (< v_main_~c~0_1418 (+ v_~SIZE~0_518 1))) (and .cse0 (= v_~SIZE~0_518 v_~SIZE~0_518) (= |v_main_#t~post5_753| |v_main_#t~post5_749|) (= v_~last~0_575 v_~last~0_575)) (and (or (not (< v_main_~c~0_1419 v_~last~0_575)) (not (< v_main_~c~0_1419 v_~SIZE~0_518))) .cse0 (= |v_main_#t~post5_749| |v_main_#t~post5_753|)))) InVars {~SIZE~0=v_~SIZE~0_518, main_~c~0=v_main_~c~0_1419, main_#t~post5=|v_main_#t~post5_753|, ~last~0=v_~last~0_575} OutVars{~SIZE~0=v_~SIZE~0_518, main_#t~post5=|v_main_#t~post5_749|, main_~c~0=v_main_~c~0_1418, ~last~0=v_~last~0_575} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {130602#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:05:13,785 INFO L290 TraceCheckUtils]: 16: Hoare triple {130602#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [327] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {130612#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:05:13,786 INFO L290 TraceCheckUtils]: 17: Hoare triple {130612#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {130546#false} is VALID [2022-04-28 04:05:13,786 INFO L290 TraceCheckUtils]: 18: Hoare triple {130546#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {130546#false} is VALID [2022-04-28 04:05:13,786 INFO L290 TraceCheckUtils]: 19: Hoare triple {130546#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {130546#false} is VALID [2022-04-28 04:05:13,786 INFO L290 TraceCheckUtils]: 20: Hoare triple {130546#false} assume !(~d~0 == ~SIZE~0); {130546#false} is VALID [2022-04-28 04:05:13,786 INFO L272 TraceCheckUtils]: 21: Hoare triple {130546#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {130546#false} is VALID [2022-04-28 04:05:13,786 INFO L290 TraceCheckUtils]: 22: Hoare triple {130546#false} ~cond := #in~cond; {130546#false} is VALID [2022-04-28 04:05:13,786 INFO L290 TraceCheckUtils]: 23: Hoare triple {130546#false} assume 0 == ~cond; {130546#false} is VALID [2022-04-28 04:05:13,786 INFO L290 TraceCheckUtils]: 24: Hoare triple {130546#false} assume !false; {130546#false} is VALID [2022-04-28 04:05:13,786 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:05:13,786 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:05:14,124 INFO L290 TraceCheckUtils]: 24: Hoare triple {130546#false} assume !false; {130546#false} is VALID [2022-04-28 04:05:14,125 INFO L290 TraceCheckUtils]: 23: Hoare triple {130546#false} assume 0 == ~cond; {130546#false} is VALID [2022-04-28 04:05:14,125 INFO L290 TraceCheckUtils]: 22: Hoare triple {130546#false} ~cond := #in~cond; {130546#false} is VALID [2022-04-28 04:05:14,125 INFO L272 TraceCheckUtils]: 21: Hoare triple {130546#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {130546#false} is VALID [2022-04-28 04:05:14,125 INFO L290 TraceCheckUtils]: 20: Hoare triple {130546#false} assume !(~d~0 == ~SIZE~0); {130546#false} is VALID [2022-04-28 04:05:14,125 INFO L290 TraceCheckUtils]: 19: Hoare triple {130546#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {130546#false} is VALID [2022-04-28 04:05:14,125 INFO L290 TraceCheckUtils]: 18: Hoare triple {130546#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {130546#false} is VALID [2022-04-28 04:05:14,125 INFO L290 TraceCheckUtils]: 17: Hoare triple {130658#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {130546#false} is VALID [2022-04-28 04:05:14,126 INFO L290 TraceCheckUtils]: 16: Hoare triple {130662#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [327] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {130658#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:05:14,126 INFO L290 TraceCheckUtils]: 15: Hoare triple {130662#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [330] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1419 v_main_~c~0_1418))) (or (and (< v_main_~c~0_1419 v_main_~c~0_1418) (< v_main_~c~0_1418 (+ v_~last~0_575 1)) (< v_main_~c~0_1418 (+ v_~SIZE~0_518 1))) (and .cse0 (= v_~SIZE~0_518 v_~SIZE~0_518) (= |v_main_#t~post5_753| |v_main_#t~post5_749|) (= v_~last~0_575 v_~last~0_575)) (and (or (not (< v_main_~c~0_1419 v_~last~0_575)) (not (< v_main_~c~0_1419 v_~SIZE~0_518))) .cse0 (= |v_main_#t~post5_749| |v_main_#t~post5_753|)))) InVars {~SIZE~0=v_~SIZE~0_518, main_~c~0=v_main_~c~0_1419, main_#t~post5=|v_main_#t~post5_753|, ~last~0=v_~last~0_575} OutVars{~SIZE~0=v_~SIZE~0_518, main_#t~post5=|v_main_#t~post5_749|, main_~c~0=v_main_~c~0_1418, ~last~0=v_~last~0_575} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {130662#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:05:14,126 INFO L290 TraceCheckUtils]: 14: Hoare triple {130662#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [329] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {130662#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:05:14,127 INFO L290 TraceCheckUtils]: 13: Hoare triple {130672#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [328] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_574 v_main_~c~0_1417)) (.cse1 (= v_main_~c~0_1417 v_main_~c~0_1416))) (or (and .cse0 (= v_main_~st~0_758 0) (< v_main_~c~0_1416 (+ v_~SIZE~0_517 1)) (< v_main_~c~0_1417 v_main_~c~0_1416)) (and (= v_main_~st~0_759 v_main_~st~0_758) .cse1 (= v_~SIZE~0_517 v_~SIZE~0_517) (= |v_main_#t~post5_750| |v_main_#t~post5_748|) (= v_~last~0_574 v_~last~0_574)) (and (or (not .cse0) (not (< v_main_~c~0_1417 v_~SIZE~0_517))) .cse1 (= |v_main_#t~post5_748| |v_main_#t~post5_750|) (= v_main_~st~0_758 v_main_~st~0_759)))) InVars {~SIZE~0=v_~SIZE~0_517, main_~c~0=v_main_~c~0_1417, main_#t~post5=|v_main_#t~post5_750|, main_~st~0=v_main_~st~0_759, ~last~0=v_~last~0_574} OutVars{~SIZE~0=v_~SIZE~0_517, main_#t~post5=|v_main_#t~post5_748|, main_~c~0=v_main_~c~0_1416, main_~st~0=v_main_~st~0_758, ~last~0=v_~last~0_574} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {130662#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:05:14,128 INFO L290 TraceCheckUtils]: 12: Hoare triple {130676#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {130672#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:05:14,128 INFO L290 TraceCheckUtils]: 11: Hoare triple {130676#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {130676#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:05:14,128 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {130545#true} {130676#(< 1 ~SIZE~0)} #86#return; {130676#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:05:14,128 INFO L290 TraceCheckUtils]: 9: Hoare triple {130545#true} assume true; {130545#true} is VALID [2022-04-28 04:05:14,128 INFO L290 TraceCheckUtils]: 8: Hoare triple {130545#true} assume !(0 == ~cond); {130545#true} is VALID [2022-04-28 04:05:14,128 INFO L290 TraceCheckUtils]: 7: Hoare triple {130545#true} ~cond := #in~cond; {130545#true} is VALID [2022-04-28 04:05:14,128 INFO L272 TraceCheckUtils]: 6: Hoare triple {130676#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {130545#true} is VALID [2022-04-28 04:05:14,129 INFO L290 TraceCheckUtils]: 5: Hoare triple {130676#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {130676#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:05:14,129 INFO L272 TraceCheckUtils]: 4: Hoare triple {130676#(< 1 ~SIZE~0)} call #t~ret7 := main(); {130676#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:05:14,129 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {130676#(< 1 ~SIZE~0)} {130545#true} #90#return; {130676#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:05:14,129 INFO L290 TraceCheckUtils]: 2: Hoare triple {130676#(< 1 ~SIZE~0)} assume true; {130676#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:05:14,130 INFO L290 TraceCheckUtils]: 1: Hoare triple {130545#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {130676#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:05:14,130 INFO L272 TraceCheckUtils]: 0: Hoare triple {130545#true} call ULTIMATE.init(); {130545#true} is VALID [2022-04-28 04:05:14,130 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:05:14,130 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1154733473] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:05:14,130 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:05:14,130 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:05:14,827 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:05:14,827 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1639432090] [2022-04-28 04:05:14,827 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1639432090] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:05:14,827 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:05:14,827 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [27] imperfect sequences [] total 27 [2022-04-28 04:05:14,827 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [539688462] [2022-04-28 04:05:14,827 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:05:14,828 INFO L78 Accepts]: Start accepts. Automaton has has 27 states, 27 states have (on average 1.8148148148148149) internal successors, (49), 26 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 55 [2022-04-28 04:05:14,828 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:05:14,828 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 27 states, 27 states have (on average 1.8148148148148149) internal successors, (49), 26 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:05:14,863 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:05:14,863 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 27 states [2022-04-28 04:05:14,863 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:05:14,863 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2022-04-28 04:05:14,863 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=263, Invalid=997, Unknown=0, NotChecked=0, Total=1260 [2022-04-28 04:05:14,863 INFO L87 Difference]: Start difference. First operand 337 states and 403 transitions. Second operand has 27 states, 27 states have (on average 1.8148148148148149) internal successors, (49), 26 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:05:18,771 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:05:18,771 INFO L93 Difference]: Finished difference Result 637 states and 761 transitions. [2022-04-28 04:05:18,771 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 27 states. [2022-04-28 04:05:18,771 INFO L78 Accepts]: Start accepts. Automaton has has 27 states, 27 states have (on average 1.8148148148148149) internal successors, (49), 26 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 55 [2022-04-28 04:05:18,772 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:05:18,772 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 27 states have (on average 1.8148148148148149) internal successors, (49), 26 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:05:18,772 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 111 transitions. [2022-04-28 04:05:18,772 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 27 states have (on average 1.8148148148148149) internal successors, (49), 26 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:05:18,773 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 111 transitions. [2022-04-28 04:05:18,773 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 27 states and 111 transitions. [2022-04-28 04:05:18,844 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 111 edges. 111 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:05:18,850 INFO L225 Difference]: With dead ends: 637 [2022-04-28 04:05:18,850 INFO L226 Difference]: Without dead ends: 376 [2022-04-28 04:05:18,851 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 103 GetRequests, 54 SyntacticMatches, 12 SemanticMatches, 37 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 843 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=306, Invalid=1176, Unknown=0, NotChecked=0, Total=1482 [2022-04-28 04:05:18,851 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 67 mSDsluCounter, 31 mSDsCounter, 0 mSdLazyCounter, 1316 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 68 SdHoareTripleChecker+Valid, 55 SdHoareTripleChecker+Invalid, 1336 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 20 IncrementalHoareTripleChecker+Valid, 1316 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-28 04:05:18,851 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [68 Valid, 55 Invalid, 1336 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [20 Valid, 1316 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-28 04:05:18,851 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 376 states. [2022-04-28 04:05:20,652 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 376 to 337. [2022-04-28 04:05:20,652 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:05:20,653 INFO L82 GeneralOperation]: Start isEquivalent. First operand 376 states. Second operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:05:20,653 INFO L74 IsIncluded]: Start isIncluded. First operand 376 states. Second operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:05:20,653 INFO L87 Difference]: Start difference. First operand 376 states. Second operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:05:20,658 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:05:20,658 INFO L93 Difference]: Finished difference Result 376 states and 446 transitions. [2022-04-28 04:05:20,658 INFO L276 IsEmpty]: Start isEmpty. Operand 376 states and 446 transitions. [2022-04-28 04:05:20,658 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:05:20,658 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:05:20,658 INFO L74 IsIncluded]: Start isIncluded. First operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 376 states. [2022-04-28 04:05:20,659 INFO L87 Difference]: Start difference. First operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 376 states. [2022-04-28 04:05:20,663 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:05:20,663 INFO L93 Difference]: Finished difference Result 376 states and 446 transitions. [2022-04-28 04:05:20,663 INFO L276 IsEmpty]: Start isEmpty. Operand 376 states and 446 transitions. [2022-04-28 04:05:20,663 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:05:20,663 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:05:20,663 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:05:20,664 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:05:20,664 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:05:20,668 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 337 states to 337 states and 403 transitions. [2022-04-28 04:05:20,669 INFO L78 Accepts]: Start accepts. Automaton has 337 states and 403 transitions. Word has length 55 [2022-04-28 04:05:20,669 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:05:20,669 INFO L495 AbstractCegarLoop]: Abstraction has 337 states and 403 transitions. [2022-04-28 04:05:20,669 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 27 states, 27 states have (on average 1.8148148148148149) internal successors, (49), 26 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:05:20,669 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 337 states and 403 transitions. [2022-04-28 04:05:22,427 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 403 edges. 403 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:05:22,427 INFO L276 IsEmpty]: Start isEmpty. Operand 337 states and 403 transitions. [2022-04-28 04:05:22,427 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-28 04:05:22,428 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:05:22,428 INFO L195 NwaCegarLoop]: trace histogram [11, 11, 9, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:05:22,445 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (57)] Forceful destruction successful, exit code 0 [2022-04-28 04:05:22,628 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable64,57 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:05:22,628 INFO L420 AbstractCegarLoop]: === Iteration 66 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:05:22,628 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:05:22,628 INFO L85 PathProgramCache]: Analyzing trace with hash -2080205825, now seen corresponding path program 54 times [2022-04-28 04:05:22,628 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:05:22,629 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1849303417] [2022-04-28 04:05:26,754 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:05:26,867 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:05:30,978 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:05:31,070 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:05:31,072 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:05:31,074 INFO L85 PathProgramCache]: Analyzing trace with hash 538927297, now seen corresponding path program 1 times [2022-04-28 04:05:31,074 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:05:31,074 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1836847396] [2022-04-28 04:05:31,074 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:05:31,074 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:05:31,085 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:05:31,128 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:05:31,129 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:05:31,133 INFO L290 TraceCheckUtils]: 0: Hoare triple {133457#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {133449#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:31,133 INFO L290 TraceCheckUtils]: 1: Hoare triple {133449#(<= 200000 ~SIZE~0)} assume true; {133449#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:31,133 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {133449#(<= 200000 ~SIZE~0)} {133444#true} #90#return; {133449#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:31,133 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:05:31,134 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:05:31,135 INFO L290 TraceCheckUtils]: 0: Hoare triple {133444#true} ~cond := #in~cond; {133444#true} is VALID [2022-04-28 04:05:31,135 INFO L290 TraceCheckUtils]: 1: Hoare triple {133444#true} assume !(0 == ~cond); {133444#true} is VALID [2022-04-28 04:05:31,135 INFO L290 TraceCheckUtils]: 2: Hoare triple {133444#true} assume true; {133444#true} is VALID [2022-04-28 04:05:31,136 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {133444#true} {133449#(<= 200000 ~SIZE~0)} #86#return; {133449#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:31,136 INFO L272 TraceCheckUtils]: 0: Hoare triple {133444#true} call ULTIMATE.init(); {133457#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:05:31,137 INFO L290 TraceCheckUtils]: 1: Hoare triple {133457#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {133449#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:31,137 INFO L290 TraceCheckUtils]: 2: Hoare triple {133449#(<= 200000 ~SIZE~0)} assume true; {133449#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:31,137 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {133449#(<= 200000 ~SIZE~0)} {133444#true} #90#return; {133449#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:31,137 INFO L272 TraceCheckUtils]: 4: Hoare triple {133449#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {133449#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:31,138 INFO L290 TraceCheckUtils]: 5: Hoare triple {133449#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {133449#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:31,138 INFO L272 TraceCheckUtils]: 6: Hoare triple {133449#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {133444#true} is VALID [2022-04-28 04:05:31,138 INFO L290 TraceCheckUtils]: 7: Hoare triple {133444#true} ~cond := #in~cond; {133444#true} is VALID [2022-04-28 04:05:31,138 INFO L290 TraceCheckUtils]: 8: Hoare triple {133444#true} assume !(0 == ~cond); {133444#true} is VALID [2022-04-28 04:05:31,138 INFO L290 TraceCheckUtils]: 9: Hoare triple {133444#true} assume true; {133444#true} is VALID [2022-04-28 04:05:31,138 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {133444#true} {133449#(<= 200000 ~SIZE~0)} #86#return; {133449#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:31,139 INFO L290 TraceCheckUtils]: 11: Hoare triple {133449#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {133449#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:31,139 INFO L290 TraceCheckUtils]: 12: Hoare triple {133449#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {133454#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:05:31,140 INFO L290 TraceCheckUtils]: 13: Hoare triple {133454#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [332] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~c~0_1445 v_main_~c~0_1444)) (.cse2 (= |v_main_#t~post5_763| |v_main_#t~post5_761|)) (.cse3 (= v_main_~st~0_771 v_main_~st~0_770)) (.cse0 (<= v_~last~0_584 v_main_~c~0_1445))) (or (and (= v_main_~st~0_770 0) .cse0 (< v_main_~c~0_1444 (+ v_~SIZE~0_526 1)) (< v_main_~c~0_1445 v_main_~c~0_1444)) (and (= v_~SIZE~0_526 v_~SIZE~0_526) .cse1 (= v_~last~0_584 v_~last~0_584) .cse2 .cse3) (and .cse1 .cse2 .cse3 (or (not .cse0) (not (< v_main_~c~0_1445 v_~SIZE~0_526)))))) InVars {~SIZE~0=v_~SIZE~0_526, main_~c~0=v_main_~c~0_1445, main_#t~post5=|v_main_#t~post5_763|, main_~st~0=v_main_~st~0_771, ~last~0=v_~last~0_584} OutVars{~SIZE~0=v_~SIZE~0_526, main_#t~post5=|v_main_#t~post5_761|, main_~c~0=v_main_~c~0_1444, main_~st~0=v_main_~st~0_770, ~last~0=v_~last~0_584} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {133455#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:05:31,140 INFO L290 TraceCheckUtils]: 14: Hoare triple {133455#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [333] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {133455#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:05:31,140 INFO L290 TraceCheckUtils]: 15: Hoare triple {133455#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [334] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_766| |v_main_#t~post5_762|)) (.cse1 (= v_main_~c~0_1447 v_main_~c~0_1446))) (or (and .cse0 .cse1 (or (not (< v_main_~c~0_1447 v_~SIZE~0_527)) (not (< v_main_~c~0_1447 v_~last~0_585)))) (and (= v_~SIZE~0_527 v_~SIZE~0_527) .cse0 (= v_~last~0_585 v_~last~0_585) .cse1) (and (< v_main_~c~0_1446 (+ v_~last~0_585 1)) (< v_main_~c~0_1447 v_main_~c~0_1446) (< v_main_~c~0_1446 (+ v_~SIZE~0_527 1))))) InVars {~SIZE~0=v_~SIZE~0_527, main_~c~0=v_main_~c~0_1447, main_#t~post5=|v_main_#t~post5_766|, ~last~0=v_~last~0_585} OutVars{~SIZE~0=v_~SIZE~0_527, main_#t~post5=|v_main_#t~post5_762|, main_~c~0=v_main_~c~0_1446, ~last~0=v_~last~0_585} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {133455#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:05:31,141 INFO L290 TraceCheckUtils]: 16: Hoare triple {133455#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [331] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {133456#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:05:31,141 INFO L290 TraceCheckUtils]: 17: Hoare triple {133456#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {133445#false} is VALID [2022-04-28 04:05:31,141 INFO L290 TraceCheckUtils]: 18: Hoare triple {133445#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {133445#false} is VALID [2022-04-28 04:05:31,141 INFO L290 TraceCheckUtils]: 19: Hoare triple {133445#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {133445#false} is VALID [2022-04-28 04:05:31,142 INFO L290 TraceCheckUtils]: 20: Hoare triple {133445#false} assume !(~d~0 == ~SIZE~0); {133445#false} is VALID [2022-04-28 04:05:31,142 INFO L272 TraceCheckUtils]: 21: Hoare triple {133445#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {133445#false} is VALID [2022-04-28 04:05:31,142 INFO L290 TraceCheckUtils]: 22: Hoare triple {133445#false} ~cond := #in~cond; {133445#false} is VALID [2022-04-28 04:05:31,142 INFO L290 TraceCheckUtils]: 23: Hoare triple {133445#false} assume 0 == ~cond; {133445#false} is VALID [2022-04-28 04:05:31,142 INFO L290 TraceCheckUtils]: 24: Hoare triple {133445#false} assume !false; {133445#false} is VALID [2022-04-28 04:05:31,142 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:05:31,142 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:05:31,142 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1836847396] [2022-04-28 04:05:31,142 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1836847396] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:05:31,142 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1477596007] [2022-04-28 04:05:31,142 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:05:31,142 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:05:31,142 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:05:31,143 INFO L229 MonitoredProcess]: Starting monitored process 58 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:05:31,169 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (58)] Waiting until timeout for monitored process [2022-04-28 04:05:31,184 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:05:31,185 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:05:31,207 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:05:31,208 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:05:31,431 INFO L272 TraceCheckUtils]: 0: Hoare triple {133444#true} call ULTIMATE.init(); {133444#true} is VALID [2022-04-28 04:05:31,431 INFO L290 TraceCheckUtils]: 1: Hoare triple {133444#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {133449#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:31,432 INFO L290 TraceCheckUtils]: 2: Hoare triple {133449#(<= 200000 ~SIZE~0)} assume true; {133449#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:31,432 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {133449#(<= 200000 ~SIZE~0)} {133444#true} #90#return; {133449#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:31,432 INFO L272 TraceCheckUtils]: 4: Hoare triple {133449#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {133449#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:31,433 INFO L290 TraceCheckUtils]: 5: Hoare triple {133449#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {133449#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:31,433 INFO L272 TraceCheckUtils]: 6: Hoare triple {133449#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {133449#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:31,433 INFO L290 TraceCheckUtils]: 7: Hoare triple {133449#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {133449#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:31,434 INFO L290 TraceCheckUtils]: 8: Hoare triple {133449#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {133449#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:31,434 INFO L290 TraceCheckUtils]: 9: Hoare triple {133449#(<= 200000 ~SIZE~0)} assume true; {133449#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:31,434 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {133449#(<= 200000 ~SIZE~0)} {133449#(<= 200000 ~SIZE~0)} #86#return; {133449#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:31,435 INFO L290 TraceCheckUtils]: 11: Hoare triple {133449#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {133449#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:31,435 INFO L290 TraceCheckUtils]: 12: Hoare triple {133449#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {133497#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:05:31,436 INFO L290 TraceCheckUtils]: 13: Hoare triple {133497#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [332] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~c~0_1445 v_main_~c~0_1444)) (.cse2 (= |v_main_#t~post5_763| |v_main_#t~post5_761|)) (.cse3 (= v_main_~st~0_771 v_main_~st~0_770)) (.cse0 (<= v_~last~0_584 v_main_~c~0_1445))) (or (and (= v_main_~st~0_770 0) .cse0 (< v_main_~c~0_1444 (+ v_~SIZE~0_526 1)) (< v_main_~c~0_1445 v_main_~c~0_1444)) (and (= v_~SIZE~0_526 v_~SIZE~0_526) .cse1 (= v_~last~0_584 v_~last~0_584) .cse2 .cse3) (and .cse1 .cse2 .cse3 (or (not .cse0) (not (< v_main_~c~0_1445 v_~SIZE~0_526)))))) InVars {~SIZE~0=v_~SIZE~0_526, main_~c~0=v_main_~c~0_1445, main_#t~post5=|v_main_#t~post5_763|, main_~st~0=v_main_~st~0_771, ~last~0=v_~last~0_584} OutVars{~SIZE~0=v_~SIZE~0_526, main_#t~post5=|v_main_#t~post5_761|, main_~c~0=v_main_~c~0_1444, main_~st~0=v_main_~st~0_770, ~last~0=v_~last~0_584} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {133501#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:05:31,436 INFO L290 TraceCheckUtils]: 14: Hoare triple {133501#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [333] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {133501#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:05:31,437 INFO L290 TraceCheckUtils]: 15: Hoare triple {133501#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [334] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_766| |v_main_#t~post5_762|)) (.cse1 (= v_main_~c~0_1447 v_main_~c~0_1446))) (or (and .cse0 .cse1 (or (not (< v_main_~c~0_1447 v_~SIZE~0_527)) (not (< v_main_~c~0_1447 v_~last~0_585)))) (and (= v_~SIZE~0_527 v_~SIZE~0_527) .cse0 (= v_~last~0_585 v_~last~0_585) .cse1) (and (< v_main_~c~0_1446 (+ v_~last~0_585 1)) (< v_main_~c~0_1447 v_main_~c~0_1446) (< v_main_~c~0_1446 (+ v_~SIZE~0_527 1))))) InVars {~SIZE~0=v_~SIZE~0_527, main_~c~0=v_main_~c~0_1447, main_#t~post5=|v_main_#t~post5_766|, ~last~0=v_~last~0_585} OutVars{~SIZE~0=v_~SIZE~0_527, main_#t~post5=|v_main_#t~post5_762|, main_~c~0=v_main_~c~0_1446, ~last~0=v_~last~0_585} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {133501#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:05:31,438 INFO L290 TraceCheckUtils]: 16: Hoare triple {133501#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [331] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {133511#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:05:31,438 INFO L290 TraceCheckUtils]: 17: Hoare triple {133511#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {133445#false} is VALID [2022-04-28 04:05:31,438 INFO L290 TraceCheckUtils]: 18: Hoare triple {133445#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {133445#false} is VALID [2022-04-28 04:05:31,438 INFO L290 TraceCheckUtils]: 19: Hoare triple {133445#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {133445#false} is VALID [2022-04-28 04:05:31,438 INFO L290 TraceCheckUtils]: 20: Hoare triple {133445#false} assume !(~d~0 == ~SIZE~0); {133445#false} is VALID [2022-04-28 04:05:31,438 INFO L272 TraceCheckUtils]: 21: Hoare triple {133445#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {133445#false} is VALID [2022-04-28 04:05:31,438 INFO L290 TraceCheckUtils]: 22: Hoare triple {133445#false} ~cond := #in~cond; {133445#false} is VALID [2022-04-28 04:05:31,439 INFO L290 TraceCheckUtils]: 23: Hoare triple {133445#false} assume 0 == ~cond; {133445#false} is VALID [2022-04-28 04:05:31,439 INFO L290 TraceCheckUtils]: 24: Hoare triple {133445#false} assume !false; {133445#false} is VALID [2022-04-28 04:05:31,439 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:05:31,439 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:05:31,739 INFO L290 TraceCheckUtils]: 24: Hoare triple {133445#false} assume !false; {133445#false} is VALID [2022-04-28 04:05:31,740 INFO L290 TraceCheckUtils]: 23: Hoare triple {133445#false} assume 0 == ~cond; {133445#false} is VALID [2022-04-28 04:05:31,740 INFO L290 TraceCheckUtils]: 22: Hoare triple {133445#false} ~cond := #in~cond; {133445#false} is VALID [2022-04-28 04:05:31,740 INFO L272 TraceCheckUtils]: 21: Hoare triple {133445#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {133445#false} is VALID [2022-04-28 04:05:31,740 INFO L290 TraceCheckUtils]: 20: Hoare triple {133445#false} assume !(~d~0 == ~SIZE~0); {133445#false} is VALID [2022-04-28 04:05:31,740 INFO L290 TraceCheckUtils]: 19: Hoare triple {133445#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {133445#false} is VALID [2022-04-28 04:05:31,740 INFO L290 TraceCheckUtils]: 18: Hoare triple {133445#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {133445#false} is VALID [2022-04-28 04:05:31,740 INFO L290 TraceCheckUtils]: 17: Hoare triple {133557#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {133445#false} is VALID [2022-04-28 04:05:31,741 INFO L290 TraceCheckUtils]: 16: Hoare triple {133561#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [331] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {133557#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:05:31,741 INFO L290 TraceCheckUtils]: 15: Hoare triple {133561#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [334] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_766| |v_main_#t~post5_762|)) (.cse1 (= v_main_~c~0_1447 v_main_~c~0_1446))) (or (and .cse0 .cse1 (or (not (< v_main_~c~0_1447 v_~SIZE~0_527)) (not (< v_main_~c~0_1447 v_~last~0_585)))) (and (= v_~SIZE~0_527 v_~SIZE~0_527) .cse0 (= v_~last~0_585 v_~last~0_585) .cse1) (and (< v_main_~c~0_1446 (+ v_~last~0_585 1)) (< v_main_~c~0_1447 v_main_~c~0_1446) (< v_main_~c~0_1446 (+ v_~SIZE~0_527 1))))) InVars {~SIZE~0=v_~SIZE~0_527, main_~c~0=v_main_~c~0_1447, main_#t~post5=|v_main_#t~post5_766|, ~last~0=v_~last~0_585} OutVars{~SIZE~0=v_~SIZE~0_527, main_#t~post5=|v_main_#t~post5_762|, main_~c~0=v_main_~c~0_1446, ~last~0=v_~last~0_585} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {133561#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:05:31,741 INFO L290 TraceCheckUtils]: 14: Hoare triple {133561#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [333] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {133561#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:05:31,742 INFO L290 TraceCheckUtils]: 13: Hoare triple {133571#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [332] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~c~0_1445 v_main_~c~0_1444)) (.cse2 (= |v_main_#t~post5_763| |v_main_#t~post5_761|)) (.cse3 (= v_main_~st~0_771 v_main_~st~0_770)) (.cse0 (<= v_~last~0_584 v_main_~c~0_1445))) (or (and (= v_main_~st~0_770 0) .cse0 (< v_main_~c~0_1444 (+ v_~SIZE~0_526 1)) (< v_main_~c~0_1445 v_main_~c~0_1444)) (and (= v_~SIZE~0_526 v_~SIZE~0_526) .cse1 (= v_~last~0_584 v_~last~0_584) .cse2 .cse3) (and .cse1 .cse2 .cse3 (or (not .cse0) (not (< v_main_~c~0_1445 v_~SIZE~0_526)))))) InVars {~SIZE~0=v_~SIZE~0_526, main_~c~0=v_main_~c~0_1445, main_#t~post5=|v_main_#t~post5_763|, main_~st~0=v_main_~st~0_771, ~last~0=v_~last~0_584} OutVars{~SIZE~0=v_~SIZE~0_526, main_#t~post5=|v_main_#t~post5_761|, main_~c~0=v_main_~c~0_1444, main_~st~0=v_main_~st~0_770, ~last~0=v_~last~0_584} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {133561#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:05:31,743 INFO L290 TraceCheckUtils]: 12: Hoare triple {133575#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {133571#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:05:31,743 INFO L290 TraceCheckUtils]: 11: Hoare triple {133575#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {133575#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:05:31,743 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {133444#true} {133575#(< 1 ~SIZE~0)} #86#return; {133575#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:05:31,743 INFO L290 TraceCheckUtils]: 9: Hoare triple {133444#true} assume true; {133444#true} is VALID [2022-04-28 04:05:31,743 INFO L290 TraceCheckUtils]: 8: Hoare triple {133444#true} assume !(0 == ~cond); {133444#true} is VALID [2022-04-28 04:05:31,743 INFO L290 TraceCheckUtils]: 7: Hoare triple {133444#true} ~cond := #in~cond; {133444#true} is VALID [2022-04-28 04:05:31,743 INFO L272 TraceCheckUtils]: 6: Hoare triple {133575#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {133444#true} is VALID [2022-04-28 04:05:31,744 INFO L290 TraceCheckUtils]: 5: Hoare triple {133575#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {133575#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:05:31,744 INFO L272 TraceCheckUtils]: 4: Hoare triple {133575#(< 1 ~SIZE~0)} call #t~ret7 := main(); {133575#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:05:31,744 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {133575#(< 1 ~SIZE~0)} {133444#true} #90#return; {133575#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:05:31,745 INFO L290 TraceCheckUtils]: 2: Hoare triple {133575#(< 1 ~SIZE~0)} assume true; {133575#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:05:31,745 INFO L290 TraceCheckUtils]: 1: Hoare triple {133444#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {133575#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:05:31,745 INFO L272 TraceCheckUtils]: 0: Hoare triple {133444#true} call ULTIMATE.init(); {133444#true} is VALID [2022-04-28 04:05:31,745 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:05:31,745 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1477596007] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:05:31,745 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:05:31,745 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:05:32,455 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:05:32,455 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1849303417] [2022-04-28 04:05:32,455 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1849303417] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:05:32,455 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:05:32,455 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [28] imperfect sequences [] total 28 [2022-04-28 04:05:32,455 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1461884328] [2022-04-28 04:05:32,455 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:05:32,455 INFO L78 Accepts]: Start accepts. Automaton has has 28 states, 28 states have (on average 1.75) internal successors, (49), 27 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 55 [2022-04-28 04:05:32,455 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:05:32,455 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 28 states, 28 states have (on average 1.75) internal successors, (49), 27 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:05:32,490 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:05:32,490 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 28 states [2022-04-28 04:05:32,490 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:05:32,490 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 28 interpolants. [2022-04-28 04:05:32,491 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=278, Invalid=1054, Unknown=0, NotChecked=0, Total=1332 [2022-04-28 04:05:32,491 INFO L87 Difference]: Start difference. First operand 337 states and 403 transitions. Second operand has 28 states, 28 states have (on average 1.75) internal successors, (49), 27 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:05:36,410 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:05:36,410 INFO L93 Difference]: Finished difference Result 632 states and 756 transitions. [2022-04-28 04:05:36,410 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2022-04-28 04:05:36,410 INFO L78 Accepts]: Start accepts. Automaton has has 28 states, 28 states have (on average 1.75) internal successors, (49), 27 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 55 [2022-04-28 04:05:36,410 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:05:36,410 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 28 states have (on average 1.75) internal successors, (49), 27 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:05:36,411 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 112 transitions. [2022-04-28 04:05:36,411 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 28 states have (on average 1.75) internal successors, (49), 27 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:05:36,412 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 112 transitions. [2022-04-28 04:05:36,412 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 28 states and 112 transitions. [2022-04-28 04:05:36,488 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 112 edges. 112 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:05:36,493 INFO L225 Difference]: With dead ends: 632 [2022-04-28 04:05:36,493 INFO L226 Difference]: Without dead ends: 371 [2022-04-28 04:05:36,494 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 103 GetRequests, 54 SyntacticMatches, 11 SemanticMatches, 38 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 830 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=323, Invalid=1237, Unknown=0, NotChecked=0, Total=1560 [2022-04-28 04:05:36,494 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 70 mSDsluCounter, 31 mSDsCounter, 0 mSdLazyCounter, 1436 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 71 SdHoareTripleChecker+Valid, 55 SdHoareTripleChecker+Invalid, 1457 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 1436 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-28 04:05:36,494 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [71 Valid, 55 Invalid, 1457 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 1436 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-28 04:05:36,495 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 371 states. [2022-04-28 04:05:38,297 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 371 to 337. [2022-04-28 04:05:38,298 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:05:38,298 INFO L82 GeneralOperation]: Start isEquivalent. First operand 371 states. Second operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:05:38,298 INFO L74 IsIncluded]: Start isIncluded. First operand 371 states. Second operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:05:38,299 INFO L87 Difference]: Start difference. First operand 371 states. Second operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:05:38,303 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:05:38,303 INFO L93 Difference]: Finished difference Result 371 states and 441 transitions. [2022-04-28 04:05:38,303 INFO L276 IsEmpty]: Start isEmpty. Operand 371 states and 441 transitions. [2022-04-28 04:05:38,303 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:05:38,304 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:05:38,304 INFO L74 IsIncluded]: Start isIncluded. First operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 371 states. [2022-04-28 04:05:38,304 INFO L87 Difference]: Start difference. First operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 371 states. [2022-04-28 04:05:38,308 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:05:38,308 INFO L93 Difference]: Finished difference Result 371 states and 441 transitions. [2022-04-28 04:05:38,309 INFO L276 IsEmpty]: Start isEmpty. Operand 371 states and 441 transitions. [2022-04-28 04:05:38,309 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:05:38,309 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:05:38,309 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:05:38,309 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:05:38,309 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 337 states, 322 states have (on average 1.1987577639751552) internal successors, (386), 325 states have internal predecessors, (386), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:05:38,314 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 337 states to 337 states and 403 transitions. [2022-04-28 04:05:38,314 INFO L78 Accepts]: Start accepts. Automaton has 337 states and 403 transitions. Word has length 55 [2022-04-28 04:05:38,314 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:05:38,314 INFO L495 AbstractCegarLoop]: Abstraction has 337 states and 403 transitions. [2022-04-28 04:05:38,314 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 28 states, 28 states have (on average 1.75) internal successors, (49), 27 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:05:38,314 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 337 states and 403 transitions. [2022-04-28 04:05:40,077 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 403 edges. 403 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:05:40,077 INFO L276 IsEmpty]: Start isEmpty. Operand 337 states and 403 transitions. [2022-04-28 04:05:40,078 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 56 [2022-04-28 04:05:40,078 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:05:40,078 INFO L195 NwaCegarLoop]: trace histogram [11, 11, 10, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:05:40,095 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (58)] Forceful destruction successful, exit code 0 [2022-04-28 04:05:40,278 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 58 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable65 [2022-04-28 04:05:40,278 INFO L420 AbstractCegarLoop]: === Iteration 67 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:05:40,278 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:05:40,278 INFO L85 PathProgramCache]: Analyzing trace with hash 1203644221, now seen corresponding path program 55 times [2022-04-28 04:05:40,279 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:05:40,279 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [604094838] [2022-04-28 04:05:44,408 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:05:44,508 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:05:47,119 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:05:47,225 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:05:47,226 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:05:47,229 INFO L85 PathProgramCache]: Analyzing trace with hash -1263517247, now seen corresponding path program 1 times [2022-04-28 04:05:47,229 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:05:47,229 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2006061029] [2022-04-28 04:05:47,229 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:05:47,229 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:05:47,236 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:05:47,290 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:05:47,291 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:05:47,294 INFO L290 TraceCheckUtils]: 0: Hoare triple {136337#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {136329#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:47,295 INFO L290 TraceCheckUtils]: 1: Hoare triple {136329#(<= 200000 ~SIZE~0)} assume true; {136329#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:47,295 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {136329#(<= 200000 ~SIZE~0)} {136324#true} #90#return; {136329#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:47,295 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:05:47,296 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:05:47,297 INFO L290 TraceCheckUtils]: 0: Hoare triple {136324#true} ~cond := #in~cond; {136324#true} is VALID [2022-04-28 04:05:47,297 INFO L290 TraceCheckUtils]: 1: Hoare triple {136324#true} assume !(0 == ~cond); {136324#true} is VALID [2022-04-28 04:05:47,297 INFO L290 TraceCheckUtils]: 2: Hoare triple {136324#true} assume true; {136324#true} is VALID [2022-04-28 04:05:47,298 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {136324#true} {136329#(<= 200000 ~SIZE~0)} #86#return; {136329#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:47,298 INFO L272 TraceCheckUtils]: 0: Hoare triple {136324#true} call ULTIMATE.init(); {136337#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:05:47,299 INFO L290 TraceCheckUtils]: 1: Hoare triple {136337#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {136329#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:47,299 INFO L290 TraceCheckUtils]: 2: Hoare triple {136329#(<= 200000 ~SIZE~0)} assume true; {136329#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:47,299 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {136329#(<= 200000 ~SIZE~0)} {136324#true} #90#return; {136329#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:47,300 INFO L272 TraceCheckUtils]: 4: Hoare triple {136329#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {136329#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:47,300 INFO L290 TraceCheckUtils]: 5: Hoare triple {136329#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {136329#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:47,300 INFO L272 TraceCheckUtils]: 6: Hoare triple {136329#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {136324#true} is VALID [2022-04-28 04:05:47,300 INFO L290 TraceCheckUtils]: 7: Hoare triple {136324#true} ~cond := #in~cond; {136324#true} is VALID [2022-04-28 04:05:47,300 INFO L290 TraceCheckUtils]: 8: Hoare triple {136324#true} assume !(0 == ~cond); {136324#true} is VALID [2022-04-28 04:05:47,300 INFO L290 TraceCheckUtils]: 9: Hoare triple {136324#true} assume true; {136324#true} is VALID [2022-04-28 04:05:47,301 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {136324#true} {136329#(<= 200000 ~SIZE~0)} #86#return; {136329#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:47,301 INFO L290 TraceCheckUtils]: 11: Hoare triple {136329#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {136329#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:47,301 INFO L290 TraceCheckUtils]: 12: Hoare triple {136329#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {136334#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:05:47,302 INFO L290 TraceCheckUtils]: 13: Hoare triple {136334#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [336] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_594 v_main_~c~0_1473)) (.cse1 (= |v_main_#t~post5_776| |v_main_#t~post5_774|)) (.cse2 (= v_main_~st~0_782 v_main_~st~0_781)) (.cse3 (= v_main_~c~0_1473 v_main_~c~0_1472))) (or (and (< v_main_~c~0_1473 v_main_~c~0_1472) (= v_main_~st~0_781 0) (< v_main_~c~0_1472 (+ v_~SIZE~0_535 1)) .cse0) (and .cse1 .cse2 (or (not (< v_main_~c~0_1473 v_~SIZE~0_535)) (not .cse0)) .cse3) (and .cse1 (= v_~SIZE~0_535 v_~SIZE~0_535) (= v_~last~0_594 v_~last~0_594) .cse2 .cse3))) InVars {~SIZE~0=v_~SIZE~0_535, main_~c~0=v_main_~c~0_1473, main_#t~post5=|v_main_#t~post5_776|, main_~st~0=v_main_~st~0_782, ~last~0=v_~last~0_594} OutVars{~SIZE~0=v_~SIZE~0_535, main_#t~post5=|v_main_#t~post5_774|, main_~c~0=v_main_~c~0_1472, main_~st~0=v_main_~st~0_781, ~last~0=v_~last~0_594} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {136335#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:05:47,303 INFO L290 TraceCheckUtils]: 14: Hoare triple {136335#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [337] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {136335#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:05:47,303 INFO L290 TraceCheckUtils]: 15: Hoare triple {136335#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [338] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1475 v_main_~c~0_1474)) (.cse1 (= |v_main_#t~post5_779| |v_main_#t~post5_775|))) (or (and (< v_main_~c~0_1474 (+ v_~SIZE~0_536 1)) (< v_main_~c~0_1474 (+ v_~last~0_595 1)) (< v_main_~c~0_1475 v_main_~c~0_1474)) (and .cse0 (= v_~last~0_595 v_~last~0_595) .cse1 (= v_~SIZE~0_536 v_~SIZE~0_536)) (and .cse0 .cse1 (or (not (< v_main_~c~0_1475 v_~SIZE~0_536)) (not (< v_main_~c~0_1475 v_~last~0_595)))))) InVars {~SIZE~0=v_~SIZE~0_536, main_~c~0=v_main_~c~0_1475, main_#t~post5=|v_main_#t~post5_779|, ~last~0=v_~last~0_595} OutVars{~SIZE~0=v_~SIZE~0_536, main_#t~post5=|v_main_#t~post5_775|, main_~c~0=v_main_~c~0_1474, ~last~0=v_~last~0_595} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {136335#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:05:47,304 INFO L290 TraceCheckUtils]: 16: Hoare triple {136335#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [335] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {136336#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:05:47,304 INFO L290 TraceCheckUtils]: 17: Hoare triple {136336#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {136325#false} is VALID [2022-04-28 04:05:47,304 INFO L290 TraceCheckUtils]: 18: Hoare triple {136325#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {136325#false} is VALID [2022-04-28 04:05:47,304 INFO L290 TraceCheckUtils]: 19: Hoare triple {136325#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {136325#false} is VALID [2022-04-28 04:05:47,304 INFO L290 TraceCheckUtils]: 20: Hoare triple {136325#false} assume !(~d~0 == ~SIZE~0); {136325#false} is VALID [2022-04-28 04:05:47,304 INFO L272 TraceCheckUtils]: 21: Hoare triple {136325#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {136325#false} is VALID [2022-04-28 04:05:47,304 INFO L290 TraceCheckUtils]: 22: Hoare triple {136325#false} ~cond := #in~cond; {136325#false} is VALID [2022-04-28 04:05:47,304 INFO L290 TraceCheckUtils]: 23: Hoare triple {136325#false} assume 0 == ~cond; {136325#false} is VALID [2022-04-28 04:05:47,304 INFO L290 TraceCheckUtils]: 24: Hoare triple {136325#false} assume !false; {136325#false} is VALID [2022-04-28 04:05:47,305 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:05:47,305 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:05:47,305 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2006061029] [2022-04-28 04:05:47,305 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2006061029] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:05:47,305 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1482432739] [2022-04-28 04:05:47,305 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:05:47,305 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:05:47,305 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:05:47,306 INFO L229 MonitoredProcess]: Starting monitored process 59 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:05:47,307 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (59)] Waiting until timeout for monitored process [2022-04-28 04:05:47,337 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:05:47,338 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:05:47,344 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:05:47,345 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:05:47,560 INFO L272 TraceCheckUtils]: 0: Hoare triple {136324#true} call ULTIMATE.init(); {136324#true} is VALID [2022-04-28 04:05:47,561 INFO L290 TraceCheckUtils]: 1: Hoare triple {136324#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {136329#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:47,561 INFO L290 TraceCheckUtils]: 2: Hoare triple {136329#(<= 200000 ~SIZE~0)} assume true; {136329#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:47,562 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {136329#(<= 200000 ~SIZE~0)} {136324#true} #90#return; {136329#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:47,562 INFO L272 TraceCheckUtils]: 4: Hoare triple {136329#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {136329#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:47,562 INFO L290 TraceCheckUtils]: 5: Hoare triple {136329#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {136329#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:47,562 INFO L272 TraceCheckUtils]: 6: Hoare triple {136329#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {136329#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:47,563 INFO L290 TraceCheckUtils]: 7: Hoare triple {136329#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {136329#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:47,563 INFO L290 TraceCheckUtils]: 8: Hoare triple {136329#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {136329#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:47,563 INFO L290 TraceCheckUtils]: 9: Hoare triple {136329#(<= 200000 ~SIZE~0)} assume true; {136329#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:47,564 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {136329#(<= 200000 ~SIZE~0)} {136329#(<= 200000 ~SIZE~0)} #86#return; {136329#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:47,564 INFO L290 TraceCheckUtils]: 11: Hoare triple {136329#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {136329#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:47,564 INFO L290 TraceCheckUtils]: 12: Hoare triple {136329#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {136377#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:05:47,565 INFO L290 TraceCheckUtils]: 13: Hoare triple {136377#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [336] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_594 v_main_~c~0_1473)) (.cse1 (= |v_main_#t~post5_776| |v_main_#t~post5_774|)) (.cse2 (= v_main_~st~0_782 v_main_~st~0_781)) (.cse3 (= v_main_~c~0_1473 v_main_~c~0_1472))) (or (and (< v_main_~c~0_1473 v_main_~c~0_1472) (= v_main_~st~0_781 0) (< v_main_~c~0_1472 (+ v_~SIZE~0_535 1)) .cse0) (and .cse1 .cse2 (or (not (< v_main_~c~0_1473 v_~SIZE~0_535)) (not .cse0)) .cse3) (and .cse1 (= v_~SIZE~0_535 v_~SIZE~0_535) (= v_~last~0_594 v_~last~0_594) .cse2 .cse3))) InVars {~SIZE~0=v_~SIZE~0_535, main_~c~0=v_main_~c~0_1473, main_#t~post5=|v_main_#t~post5_776|, main_~st~0=v_main_~st~0_782, ~last~0=v_~last~0_594} OutVars{~SIZE~0=v_~SIZE~0_535, main_#t~post5=|v_main_#t~post5_774|, main_~c~0=v_main_~c~0_1472, main_~st~0=v_main_~st~0_781, ~last~0=v_~last~0_594} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {136381#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:05:47,565 INFO L290 TraceCheckUtils]: 14: Hoare triple {136381#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [337] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {136381#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:05:47,566 INFO L290 TraceCheckUtils]: 15: Hoare triple {136381#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [338] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1475 v_main_~c~0_1474)) (.cse1 (= |v_main_#t~post5_779| |v_main_#t~post5_775|))) (or (and (< v_main_~c~0_1474 (+ v_~SIZE~0_536 1)) (< v_main_~c~0_1474 (+ v_~last~0_595 1)) (< v_main_~c~0_1475 v_main_~c~0_1474)) (and .cse0 (= v_~last~0_595 v_~last~0_595) .cse1 (= v_~SIZE~0_536 v_~SIZE~0_536)) (and .cse0 .cse1 (or (not (< v_main_~c~0_1475 v_~SIZE~0_536)) (not (< v_main_~c~0_1475 v_~last~0_595)))))) InVars {~SIZE~0=v_~SIZE~0_536, main_~c~0=v_main_~c~0_1475, main_#t~post5=|v_main_#t~post5_779|, ~last~0=v_~last~0_595} OutVars{~SIZE~0=v_~SIZE~0_536, main_#t~post5=|v_main_#t~post5_775|, main_~c~0=v_main_~c~0_1474, ~last~0=v_~last~0_595} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {136381#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:05:47,566 INFO L290 TraceCheckUtils]: 16: Hoare triple {136381#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [335] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {136391#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:05:47,567 INFO L290 TraceCheckUtils]: 17: Hoare triple {136391#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {136325#false} is VALID [2022-04-28 04:05:47,567 INFO L290 TraceCheckUtils]: 18: Hoare triple {136325#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {136325#false} is VALID [2022-04-28 04:05:47,567 INFO L290 TraceCheckUtils]: 19: Hoare triple {136325#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {136325#false} is VALID [2022-04-28 04:05:47,567 INFO L290 TraceCheckUtils]: 20: Hoare triple {136325#false} assume !(~d~0 == ~SIZE~0); {136325#false} is VALID [2022-04-28 04:05:47,567 INFO L272 TraceCheckUtils]: 21: Hoare triple {136325#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {136325#false} is VALID [2022-04-28 04:05:47,567 INFO L290 TraceCheckUtils]: 22: Hoare triple {136325#false} ~cond := #in~cond; {136325#false} is VALID [2022-04-28 04:05:47,567 INFO L290 TraceCheckUtils]: 23: Hoare triple {136325#false} assume 0 == ~cond; {136325#false} is VALID [2022-04-28 04:05:47,567 INFO L290 TraceCheckUtils]: 24: Hoare triple {136325#false} assume !false; {136325#false} is VALID [2022-04-28 04:05:47,567 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:05:47,568 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:05:47,891 INFO L290 TraceCheckUtils]: 24: Hoare triple {136325#false} assume !false; {136325#false} is VALID [2022-04-28 04:05:47,891 INFO L290 TraceCheckUtils]: 23: Hoare triple {136325#false} assume 0 == ~cond; {136325#false} is VALID [2022-04-28 04:05:47,891 INFO L290 TraceCheckUtils]: 22: Hoare triple {136325#false} ~cond := #in~cond; {136325#false} is VALID [2022-04-28 04:05:47,891 INFO L272 TraceCheckUtils]: 21: Hoare triple {136325#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {136325#false} is VALID [2022-04-28 04:05:47,891 INFO L290 TraceCheckUtils]: 20: Hoare triple {136325#false} assume !(~d~0 == ~SIZE~0); {136325#false} is VALID [2022-04-28 04:05:47,892 INFO L290 TraceCheckUtils]: 19: Hoare triple {136325#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {136325#false} is VALID [2022-04-28 04:05:47,892 INFO L290 TraceCheckUtils]: 18: Hoare triple {136325#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {136325#false} is VALID [2022-04-28 04:05:47,892 INFO L290 TraceCheckUtils]: 17: Hoare triple {136437#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {136325#false} is VALID [2022-04-28 04:05:47,892 INFO L290 TraceCheckUtils]: 16: Hoare triple {136441#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [335] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {136437#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:05:47,893 INFO L290 TraceCheckUtils]: 15: Hoare triple {136441#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [338] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1475 v_main_~c~0_1474)) (.cse1 (= |v_main_#t~post5_779| |v_main_#t~post5_775|))) (or (and (< v_main_~c~0_1474 (+ v_~SIZE~0_536 1)) (< v_main_~c~0_1474 (+ v_~last~0_595 1)) (< v_main_~c~0_1475 v_main_~c~0_1474)) (and .cse0 (= v_~last~0_595 v_~last~0_595) .cse1 (= v_~SIZE~0_536 v_~SIZE~0_536)) (and .cse0 .cse1 (or (not (< v_main_~c~0_1475 v_~SIZE~0_536)) (not (< v_main_~c~0_1475 v_~last~0_595)))))) InVars {~SIZE~0=v_~SIZE~0_536, main_~c~0=v_main_~c~0_1475, main_#t~post5=|v_main_#t~post5_779|, ~last~0=v_~last~0_595} OutVars{~SIZE~0=v_~SIZE~0_536, main_#t~post5=|v_main_#t~post5_775|, main_~c~0=v_main_~c~0_1474, ~last~0=v_~last~0_595} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {136441#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:05:47,893 INFO L290 TraceCheckUtils]: 14: Hoare triple {136441#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [337] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {136441#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:05:47,894 INFO L290 TraceCheckUtils]: 13: Hoare triple {136451#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [336] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_594 v_main_~c~0_1473)) (.cse1 (= |v_main_#t~post5_776| |v_main_#t~post5_774|)) (.cse2 (= v_main_~st~0_782 v_main_~st~0_781)) (.cse3 (= v_main_~c~0_1473 v_main_~c~0_1472))) (or (and (< v_main_~c~0_1473 v_main_~c~0_1472) (= v_main_~st~0_781 0) (< v_main_~c~0_1472 (+ v_~SIZE~0_535 1)) .cse0) (and .cse1 .cse2 (or (not (< v_main_~c~0_1473 v_~SIZE~0_535)) (not .cse0)) .cse3) (and .cse1 (= v_~SIZE~0_535 v_~SIZE~0_535) (= v_~last~0_594 v_~last~0_594) .cse2 .cse3))) InVars {~SIZE~0=v_~SIZE~0_535, main_~c~0=v_main_~c~0_1473, main_#t~post5=|v_main_#t~post5_776|, main_~st~0=v_main_~st~0_782, ~last~0=v_~last~0_594} OutVars{~SIZE~0=v_~SIZE~0_535, main_#t~post5=|v_main_#t~post5_774|, main_~c~0=v_main_~c~0_1472, main_~st~0=v_main_~st~0_781, ~last~0=v_~last~0_594} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {136441#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:05:47,894 INFO L290 TraceCheckUtils]: 12: Hoare triple {136455#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {136451#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:05:47,895 INFO L290 TraceCheckUtils]: 11: Hoare triple {136455#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {136455#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:05:47,895 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {136324#true} {136455#(< 1 ~SIZE~0)} #86#return; {136455#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:05:47,895 INFO L290 TraceCheckUtils]: 9: Hoare triple {136324#true} assume true; {136324#true} is VALID [2022-04-28 04:05:47,895 INFO L290 TraceCheckUtils]: 8: Hoare triple {136324#true} assume !(0 == ~cond); {136324#true} is VALID [2022-04-28 04:05:47,895 INFO L290 TraceCheckUtils]: 7: Hoare triple {136324#true} ~cond := #in~cond; {136324#true} is VALID [2022-04-28 04:05:47,895 INFO L272 TraceCheckUtils]: 6: Hoare triple {136455#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {136324#true} is VALID [2022-04-28 04:05:47,896 INFO L290 TraceCheckUtils]: 5: Hoare triple {136455#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {136455#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:05:47,896 INFO L272 TraceCheckUtils]: 4: Hoare triple {136455#(< 1 ~SIZE~0)} call #t~ret7 := main(); {136455#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:05:47,896 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {136455#(< 1 ~SIZE~0)} {136324#true} #90#return; {136455#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:05:47,896 INFO L290 TraceCheckUtils]: 2: Hoare triple {136455#(< 1 ~SIZE~0)} assume true; {136455#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:05:47,897 INFO L290 TraceCheckUtils]: 1: Hoare triple {136324#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {136455#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:05:47,897 INFO L272 TraceCheckUtils]: 0: Hoare triple {136324#true} call ULTIMATE.init(); {136324#true} is VALID [2022-04-28 04:05:47,897 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:05:47,897 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1482432739] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:05:47,897 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:05:47,897 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:05:48,628 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:05:48,628 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [604094838] [2022-04-28 04:05:48,628 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [604094838] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:05:48,628 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:05:48,628 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [29] imperfect sequences [] total 29 [2022-04-28 04:05:48,628 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1606414550] [2022-04-28 04:05:48,628 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:05:48,628 INFO L78 Accepts]: Start accepts. Automaton has has 29 states, 29 states have (on average 1.6896551724137931) internal successors, (49), 28 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 55 [2022-04-28 04:05:48,628 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:05:48,629 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 29 states, 29 states have (on average 1.6896551724137931) internal successors, (49), 28 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:05:48,665 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 55 edges. 55 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:05:48,665 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 29 states [2022-04-28 04:05:48,665 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:05:48,665 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 29 interpolants. [2022-04-28 04:05:48,665 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=293, Invalid=1113, Unknown=0, NotChecked=0, Total=1406 [2022-04-28 04:05:48,665 INFO L87 Difference]: Start difference. First operand 337 states and 403 transitions. Second operand has 29 states, 29 states have (on average 1.6896551724137931) internal successors, (49), 28 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:05:52,571 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:05:52,571 INFO L93 Difference]: Finished difference Result 646 states and 780 transitions. [2022-04-28 04:05:52,571 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 29 states. [2022-04-28 04:05:52,571 INFO L78 Accepts]: Start accepts. Automaton has has 29 states, 29 states have (on average 1.6896551724137931) internal successors, (49), 28 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 55 [2022-04-28 04:05:52,571 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:05:52,572 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 29 states have (on average 1.6896551724137931) internal successors, (49), 28 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:05:52,572 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 114 transitions. [2022-04-28 04:05:52,572 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 29 states have (on average 1.6896551724137931) internal successors, (49), 28 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:05:52,573 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 114 transitions. [2022-04-28 04:05:52,573 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 29 states and 114 transitions. [2022-04-28 04:05:52,656 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 114 edges. 114 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:05:52,662 INFO L225 Difference]: With dead ends: 646 [2022-04-28 04:05:52,662 INFO L226 Difference]: Without dead ends: 374 [2022-04-28 04:05:52,662 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 103 GetRequests, 54 SyntacticMatches, 10 SemanticMatches, 39 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 806 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=340, Invalid=1300, Unknown=0, NotChecked=0, Total=1640 [2022-04-28 04:05:52,662 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 83 mSDsluCounter, 25 mSDsCounter, 0 mSdLazyCounter, 1474 mSolverCounterSat, 23 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 84 SdHoareTripleChecker+Valid, 49 SdHoareTripleChecker+Invalid, 1497 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 23 IncrementalHoareTripleChecker+Valid, 1474 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.0s IncrementalHoareTripleChecker+Time [2022-04-28 04:05:52,662 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [84 Valid, 49 Invalid, 1497 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [23 Valid, 1474 Invalid, 0 Unknown, 0 Unchecked, 1.0s Time] [2022-04-28 04:05:52,663 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 374 states. [2022-04-28 04:05:54,509 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 374 to 349. [2022-04-28 04:05:54,509 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:05:54,510 INFO L82 GeneralOperation]: Start isEquivalent. First operand 374 states. Second operand has 349 states, 334 states have (on average 1.2035928143712575) internal successors, (402), 337 states have internal predecessors, (402), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:05:54,510 INFO L74 IsIncluded]: Start isIncluded. First operand 374 states. Second operand has 349 states, 334 states have (on average 1.2035928143712575) internal successors, (402), 337 states have internal predecessors, (402), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:05:54,510 INFO L87 Difference]: Start difference. First operand 374 states. Second operand has 349 states, 334 states have (on average 1.2035928143712575) internal successors, (402), 337 states have internal predecessors, (402), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:05:54,515 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:05:54,515 INFO L93 Difference]: Finished difference Result 374 states and 448 transitions. [2022-04-28 04:05:54,515 INFO L276 IsEmpty]: Start isEmpty. Operand 374 states and 448 transitions. [2022-04-28 04:05:54,515 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:05:54,515 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:05:54,515 INFO L74 IsIncluded]: Start isIncluded. First operand has 349 states, 334 states have (on average 1.2035928143712575) internal successors, (402), 337 states have internal predecessors, (402), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 374 states. [2022-04-28 04:05:54,515 INFO L87 Difference]: Start difference. First operand has 349 states, 334 states have (on average 1.2035928143712575) internal successors, (402), 337 states have internal predecessors, (402), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 374 states. [2022-04-28 04:05:54,522 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:05:54,523 INFO L93 Difference]: Finished difference Result 374 states and 448 transitions. [2022-04-28 04:05:54,523 INFO L276 IsEmpty]: Start isEmpty. Operand 374 states and 448 transitions. [2022-04-28 04:05:54,523 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:05:54,523 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:05:54,523 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:05:54,523 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:05:54,523 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 349 states, 334 states have (on average 1.2035928143712575) internal successors, (402), 337 states have internal predecessors, (402), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:05:54,528 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 349 states to 349 states and 419 transitions. [2022-04-28 04:05:54,528 INFO L78 Accepts]: Start accepts. Automaton has 349 states and 419 transitions. Word has length 55 [2022-04-28 04:05:54,528 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:05:54,528 INFO L495 AbstractCegarLoop]: Abstraction has 349 states and 419 transitions. [2022-04-28 04:05:54,528 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 29 states, 29 states have (on average 1.6896551724137931) internal successors, (49), 28 states have internal predecessors, (49), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:05:54,529 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 349 states and 419 transitions. [2022-04-28 04:05:56,366 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 419 edges. 419 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:05:56,366 INFO L276 IsEmpty]: Start isEmpty. Operand 349 states and 419 transitions. [2022-04-28 04:05:56,367 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 58 [2022-04-28 04:05:56,367 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:05:56,367 INFO L195 NwaCegarLoop]: trace histogram [8, 8, 8, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:05:56,384 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (59)] Forceful destruction successful, exit code 0 [2022-04-28 04:05:56,567 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 59 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable66 [2022-04-28 04:05:56,567 INFO L420 AbstractCegarLoop]: === Iteration 68 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:05:56,567 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:05:56,567 INFO L85 PathProgramCache]: Analyzing trace with hash -1847626205, now seen corresponding path program 4 times [2022-04-28 04:05:56,568 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:05:56,568 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [132314696] [2022-04-28 04:05:56,741 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 4 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {-1={1=1}, 0={1=2}, 1={2=1}}, 0 SequentialAcceleration, 1 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:05:56,822 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 4 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {-1={1=1}, 0={1=2}, 1={2=1}}, 0 SequentialAcceleration, 1 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:05:56,822 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:05:56,823 INFO L85 PathProgramCache]: Analyzing trace with hash -168282487, now seen corresponding path program 1 times [2022-04-28 04:05:56,823 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:05:56,823 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [400791405] [2022-04-28 04:05:56,823 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:05:56,823 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:05:56,830 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:05:56,878 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:05:56,880 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:05:56,883 INFO L290 TraceCheckUtils]: 0: Hoare triple {139278#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {139268#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:56,883 INFO L290 TraceCheckUtils]: 1: Hoare triple {139268#(<= 200000 ~SIZE~0)} assume true; {139268#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:56,883 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {139268#(<= 200000 ~SIZE~0)} {139263#true} #90#return; {139268#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:56,883 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:05:56,884 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:05:56,892 INFO L290 TraceCheckUtils]: 0: Hoare triple {139263#true} ~cond := #in~cond; {139263#true} is VALID [2022-04-28 04:05:56,892 INFO L290 TraceCheckUtils]: 1: Hoare triple {139263#true} assume !(0 == ~cond); {139263#true} is VALID [2022-04-28 04:05:56,892 INFO L290 TraceCheckUtils]: 2: Hoare triple {139263#true} assume true; {139263#true} is VALID [2022-04-28 04:05:56,892 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {139263#true} {139268#(<= 200000 ~SIZE~0)} #86#return; {139268#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:56,893 INFO L272 TraceCheckUtils]: 0: Hoare triple {139263#true} call ULTIMATE.init(); {139278#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:05:56,893 INFO L290 TraceCheckUtils]: 1: Hoare triple {139278#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {139268#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:56,894 INFO L290 TraceCheckUtils]: 2: Hoare triple {139268#(<= 200000 ~SIZE~0)} assume true; {139268#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:56,894 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {139268#(<= 200000 ~SIZE~0)} {139263#true} #90#return; {139268#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:56,894 INFO L272 TraceCheckUtils]: 4: Hoare triple {139268#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {139268#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:56,895 INFO L290 TraceCheckUtils]: 5: Hoare triple {139268#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {139268#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:56,895 INFO L272 TraceCheckUtils]: 6: Hoare triple {139268#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {139263#true} is VALID [2022-04-28 04:05:56,895 INFO L290 TraceCheckUtils]: 7: Hoare triple {139263#true} ~cond := #in~cond; {139263#true} is VALID [2022-04-28 04:05:56,895 INFO L290 TraceCheckUtils]: 8: Hoare triple {139263#true} assume !(0 == ~cond); {139263#true} is VALID [2022-04-28 04:05:56,895 INFO L290 TraceCheckUtils]: 9: Hoare triple {139263#true} assume true; {139263#true} is VALID [2022-04-28 04:05:56,895 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {139263#true} {139268#(<= 200000 ~SIZE~0)} #86#return; {139268#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:56,895 INFO L290 TraceCheckUtils]: 11: Hoare triple {139268#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {139268#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:56,896 INFO L290 TraceCheckUtils]: 12: Hoare triple {139268#(<= 200000 ~SIZE~0)} [340] L44-->L27-3_primed: Formula: (let ((.cse11 (= v_~SIZE~0_545 v_main_~d~0_69))) (let ((.cse0 (= v_main_~c~0_1502 4)) (.cse7 (* (- 1) v_main_~a~0_217)) (.cse3 (= v_main_~st~0_791 0)) (.cse2 (- v_main_~a~0_217)) (.cse6 (* v_main_~a~0_217 3)) (.cse8 (not .cse11)) (.cse5 (= v_~SIZE~0_545 4)) (.cse4 (= v_main_~a~0_218 v_main_~b~0_214)) (.cse1 (<= v_~last~0_604 0)) (.cse9 (= v_main_~c~0_1507 v_main_~c~0_1502)) (.cse10 (= |v_main_#t~post5_791| |v_main_#t~post5_787|)) (.cse12 (= v_main_~st~0_796 v_main_~st~0_791)) (.cse13 (= v_main_~a~0_218 v_main_~a~0_217)) (.cse14 (= v_main_~b~0_214 v_main_~b~0_213))) (or (and .cse0 .cse1 (= v_main_~b~0_213 (+ v_main_~b~0_214 (* (div (+ .cse2 v_main_~a~0_218) (- 4)) 4))) .cse3 .cse4 .cse5 (= (mod (+ v_main_~a~0_218 .cse6) 4) 0) (< 0 (div (+ v_main_~a~0_218 .cse7) (- 4))) .cse8) (and .cse0 .cse1 (<= 0 (div (+ v_main_~a~0_218 2 .cse7) (- 4))) .cse3 .cse4 (= v_main_~b~0_213 (+ 2 (* (div (+ .cse2 v_main_~a~0_218 2) (- 4)) 4) v_main_~b~0_214)) .cse5 (= (mod (+ v_main_~a~0_218 .cse6 2) 4) 0) .cse8) (and .cse9 .cse10 (or (not .cse5) .cse11 (not .cse4) (not .cse1)) .cse12 .cse13 .cse14) (and (= v_main_~d~0_69 v_main_~d~0_69) (= v_~last~0_604 v_~last~0_604) .cse9 .cse10 .cse12 .cse13 .cse14 (= v_~SIZE~0_545 v_~SIZE~0_545))))) InVars {~SIZE~0=v_~SIZE~0_545, main_~c~0=v_main_~c~0_1507, main_#t~post5=|v_main_#t~post5_791|, main_~d~0=v_main_~d~0_69, main_~st~0=v_main_~st~0_796, main_~b~0=v_main_~b~0_214, ~last~0=v_~last~0_604, main_~a~0=v_main_~a~0_218} OutVars{~SIZE~0=v_~SIZE~0_545, main_~c~0=v_main_~c~0_1502, main_#t~post5=|v_main_#t~post5_787|, main_~d~0=v_main_~d~0_69, main_~st~0=v_main_~st~0_791, main_~b~0=v_main_~b~0_213, ~last~0=v_~last~0_604, main_~a~0=v_main_~a~0_217} AuxVars[] AssignedVars[main_~c~0, main_#t~post5, main_~st~0, main_~b~0, main_~a~0] {139268#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:56,896 INFO L290 TraceCheckUtils]: 13: Hoare triple {139268#(<= 200000 ~SIZE~0)} [341] L27-3_primed-->L44: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {139268#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:56,896 INFO L290 TraceCheckUtils]: 14: Hoare triple {139268#(<= 200000 ~SIZE~0)} [342] L44-->L27-3_primed: Formula: (and (= |v_main_#t~post5_792| |v_main_#t~post5_787|) (= v_main_~c~0_1508 v_main_~c~0_1502) (= v_main_~a~0_218 v_main_~a~0_217) (= v_main_~b~0_214 v_main_~b~0_213) (= v_main_~st~0_797 v_main_~st~0_791)) InVars {main_~c~0=v_main_~c~0_1508, main_#t~post5=|v_main_#t~post5_792|, main_~st~0=v_main_~st~0_797, main_~b~0=v_main_~b~0_214, main_~a~0=v_main_~a~0_218} OutVars{main_~c~0=v_main_~c~0_1502, main_#t~post5=|v_main_#t~post5_787|, main_~st~0=v_main_~st~0_791, main_~b~0=v_main_~b~0_213, main_~a~0=v_main_~a~0_217} AuxVars[] AssignedVars[main_~c~0, main_#t~post5, main_~st~0, main_~b~0, main_~a~0] {139268#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:56,897 INFO L290 TraceCheckUtils]: 15: Hoare triple {139268#(<= 200000 ~SIZE~0)} [339] L27-3_primed-->L27-3: Formula: (and (= 0 v_main_~c~0_10) (= v_main_~st~0_7 1)) InVars {} OutVars{main_~c~0=v_main_~c~0_10, main_~st~0=v_main_~st~0_7} AuxVars[] AssignedVars[main_~c~0, main_~st~0] {139273#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:05:56,897 INFO L290 TraceCheckUtils]: 16: Hoare triple {139273#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} assume !!(~c~0 < ~SIZE~0); {139273#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:05:56,898 INFO L290 TraceCheckUtils]: 17: Hoare triple {139273#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} assume ~c~0 >= ~last~0;~st~0 := 0; {139273#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:05:56,898 INFO L290 TraceCheckUtils]: 18: Hoare triple {139273#(and (= main_~c~0 0) (<= 200000 ~SIZE~0))} #t~post5 := ~c~0;~c~0 := 1 + #t~post5;havoc #t~post5; {139274#(<= (+ main_~c~0 199999) ~SIZE~0)} is VALID [2022-04-28 04:05:56,898 INFO L290 TraceCheckUtils]: 19: Hoare triple {139274#(<= (+ main_~c~0 199999) ~SIZE~0)} assume !!(~c~0 < ~SIZE~0); {139274#(<= (+ main_~c~0 199999) ~SIZE~0)} is VALID [2022-04-28 04:05:56,898 INFO L290 TraceCheckUtils]: 20: Hoare triple {139274#(<= (+ main_~c~0 199999) ~SIZE~0)} assume ~c~0 >= ~last~0;~st~0 := 0; {139274#(<= (+ main_~c~0 199999) ~SIZE~0)} is VALID [2022-04-28 04:05:56,899 INFO L290 TraceCheckUtils]: 21: Hoare triple {139274#(<= (+ main_~c~0 199999) ~SIZE~0)} #t~post5 := ~c~0;~c~0 := 1 + #t~post5;havoc #t~post5; {139275#(<= (+ main_~c~0 199998) ~SIZE~0)} is VALID [2022-04-28 04:05:56,899 INFO L290 TraceCheckUtils]: 22: Hoare triple {139275#(<= (+ main_~c~0 199998) ~SIZE~0)} assume !!(~c~0 < ~SIZE~0); {139275#(<= (+ main_~c~0 199998) ~SIZE~0)} is VALID [2022-04-28 04:05:56,899 INFO L290 TraceCheckUtils]: 23: Hoare triple {139275#(<= (+ main_~c~0 199998) ~SIZE~0)} assume ~c~0 >= ~last~0;~st~0 := 0; {139275#(<= (+ main_~c~0 199998) ~SIZE~0)} is VALID [2022-04-28 04:05:56,900 INFO L290 TraceCheckUtils]: 24: Hoare triple {139275#(<= (+ main_~c~0 199998) ~SIZE~0)} #t~post5 := ~c~0;~c~0 := 1 + #t~post5;havoc #t~post5; {139276#(<= (+ main_~c~0 199997) ~SIZE~0)} is VALID [2022-04-28 04:05:56,900 INFO L290 TraceCheckUtils]: 25: Hoare triple {139276#(<= (+ main_~c~0 199997) ~SIZE~0)} assume !!(~c~0 < ~SIZE~0); {139276#(<= (+ main_~c~0 199997) ~SIZE~0)} is VALID [2022-04-28 04:05:56,900 INFO L290 TraceCheckUtils]: 26: Hoare triple {139276#(<= (+ main_~c~0 199997) ~SIZE~0)} assume ~c~0 >= ~last~0;~st~0 := 0; {139276#(<= (+ main_~c~0 199997) ~SIZE~0)} is VALID [2022-04-28 04:05:56,901 INFO L290 TraceCheckUtils]: 27: Hoare triple {139276#(<= (+ main_~c~0 199997) ~SIZE~0)} #t~post5 := ~c~0;~c~0 := 1 + #t~post5;havoc #t~post5; {139277#(<= (+ 199996 main_~c~0) ~SIZE~0)} is VALID [2022-04-28 04:05:56,901 INFO L290 TraceCheckUtils]: 28: Hoare triple {139277#(<= (+ 199996 main_~c~0) ~SIZE~0)} assume !(~c~0 < ~SIZE~0); {139264#false} is VALID [2022-04-28 04:05:56,901 INFO L290 TraceCheckUtils]: 29: Hoare triple {139264#false} assume !(0 == ~st~0 && ~c~0 == 1 + ~last~0);~a~0 := 2 + ~a~0;~b~0 := 2 + ~b~0; {139264#false} is VALID [2022-04-28 04:05:56,901 INFO L290 TraceCheckUtils]: 30: Hoare triple {139264#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {139264#false} is VALID [2022-04-28 04:05:56,901 INFO L290 TraceCheckUtils]: 31: Hoare triple {139264#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {139264#false} is VALID [2022-04-28 04:05:56,902 INFO L290 TraceCheckUtils]: 32: Hoare triple {139264#false} assume !(~d~0 == ~SIZE~0); {139264#false} is VALID [2022-04-28 04:05:56,902 INFO L272 TraceCheckUtils]: 33: Hoare triple {139264#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {139264#false} is VALID [2022-04-28 04:05:56,902 INFO L290 TraceCheckUtils]: 34: Hoare triple {139264#false} ~cond := #in~cond; {139264#false} is VALID [2022-04-28 04:05:56,902 INFO L290 TraceCheckUtils]: 35: Hoare triple {139264#false} assume 0 == ~cond; {139264#false} is VALID [2022-04-28 04:05:56,902 INFO L290 TraceCheckUtils]: 36: Hoare triple {139264#false} assume !false; {139264#false} is VALID [2022-04-28 04:05:56,902 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 22 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-28 04:05:56,902 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:05:56,902 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [400791405] [2022-04-28 04:05:56,902 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [400791405] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:05:56,902 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2021201316] [2022-04-28 04:05:56,902 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:05:56,902 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:05:56,903 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:05:56,903 INFO L229 MonitoredProcess]: Starting monitored process 60 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:05:56,904 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (60)] Waiting until timeout for monitored process [2022-04-28 04:05:56,941 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:05:56,941 INFO L263 TraceCheckSpWp]: Trace formula consists of 134 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-28 04:05:56,948 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:05:56,948 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:05:57,181 INFO L272 TraceCheckUtils]: 0: Hoare triple {139263#true} call ULTIMATE.init(); {139263#true} is VALID [2022-04-28 04:05:57,181 INFO L290 TraceCheckUtils]: 1: Hoare triple {139263#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {139268#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:57,182 INFO L290 TraceCheckUtils]: 2: Hoare triple {139268#(<= 200000 ~SIZE~0)} assume true; {139268#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:57,182 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {139268#(<= 200000 ~SIZE~0)} {139263#true} #90#return; {139268#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:57,182 INFO L272 TraceCheckUtils]: 4: Hoare triple {139268#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {139268#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:57,183 INFO L290 TraceCheckUtils]: 5: Hoare triple {139268#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {139268#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:57,183 INFO L272 TraceCheckUtils]: 6: Hoare triple {139268#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {139268#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:57,183 INFO L290 TraceCheckUtils]: 7: Hoare triple {139268#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {139268#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:57,184 INFO L290 TraceCheckUtils]: 8: Hoare triple {139268#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {139268#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:57,184 INFO L290 TraceCheckUtils]: 9: Hoare triple {139268#(<= 200000 ~SIZE~0)} assume true; {139268#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:57,184 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {139268#(<= 200000 ~SIZE~0)} {139268#(<= 200000 ~SIZE~0)} #86#return; {139268#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:57,184 INFO L290 TraceCheckUtils]: 11: Hoare triple {139268#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {139268#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:57,185 INFO L290 TraceCheckUtils]: 12: Hoare triple {139268#(<= 200000 ~SIZE~0)} [340] L44-->L27-3_primed: Formula: (let ((.cse11 (= v_~SIZE~0_545 v_main_~d~0_69))) (let ((.cse0 (= v_main_~c~0_1502 4)) (.cse7 (* (- 1) v_main_~a~0_217)) (.cse3 (= v_main_~st~0_791 0)) (.cse2 (- v_main_~a~0_217)) (.cse6 (* v_main_~a~0_217 3)) (.cse8 (not .cse11)) (.cse5 (= v_~SIZE~0_545 4)) (.cse4 (= v_main_~a~0_218 v_main_~b~0_214)) (.cse1 (<= v_~last~0_604 0)) (.cse9 (= v_main_~c~0_1507 v_main_~c~0_1502)) (.cse10 (= |v_main_#t~post5_791| |v_main_#t~post5_787|)) (.cse12 (= v_main_~st~0_796 v_main_~st~0_791)) (.cse13 (= v_main_~a~0_218 v_main_~a~0_217)) (.cse14 (= v_main_~b~0_214 v_main_~b~0_213))) (or (and .cse0 .cse1 (= v_main_~b~0_213 (+ v_main_~b~0_214 (* (div (+ .cse2 v_main_~a~0_218) (- 4)) 4))) .cse3 .cse4 .cse5 (= (mod (+ v_main_~a~0_218 .cse6) 4) 0) (< 0 (div (+ v_main_~a~0_218 .cse7) (- 4))) .cse8) (and .cse0 .cse1 (<= 0 (div (+ v_main_~a~0_218 2 .cse7) (- 4))) .cse3 .cse4 (= v_main_~b~0_213 (+ 2 (* (div (+ .cse2 v_main_~a~0_218 2) (- 4)) 4) v_main_~b~0_214)) .cse5 (= (mod (+ v_main_~a~0_218 .cse6 2) 4) 0) .cse8) (and .cse9 .cse10 (or (not .cse5) .cse11 (not .cse4) (not .cse1)) .cse12 .cse13 .cse14) (and (= v_main_~d~0_69 v_main_~d~0_69) (= v_~last~0_604 v_~last~0_604) .cse9 .cse10 .cse12 .cse13 .cse14 (= v_~SIZE~0_545 v_~SIZE~0_545))))) InVars {~SIZE~0=v_~SIZE~0_545, main_~c~0=v_main_~c~0_1507, main_#t~post5=|v_main_#t~post5_791|, main_~d~0=v_main_~d~0_69, main_~st~0=v_main_~st~0_796, main_~b~0=v_main_~b~0_214, ~last~0=v_~last~0_604, main_~a~0=v_main_~a~0_218} OutVars{~SIZE~0=v_~SIZE~0_545, main_~c~0=v_main_~c~0_1502, main_#t~post5=|v_main_#t~post5_787|, main_~d~0=v_main_~d~0_69, main_~st~0=v_main_~st~0_791, main_~b~0=v_main_~b~0_213, ~last~0=v_~last~0_604, main_~a~0=v_main_~a~0_217} AuxVars[] AssignedVars[main_~c~0, main_#t~post5, main_~st~0, main_~b~0, main_~a~0] {139268#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:57,185 INFO L290 TraceCheckUtils]: 13: Hoare triple {139268#(<= 200000 ~SIZE~0)} [341] L27-3_primed-->L44: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {139268#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:57,185 INFO L290 TraceCheckUtils]: 14: Hoare triple {139268#(<= 200000 ~SIZE~0)} [342] L44-->L27-3_primed: Formula: (and (= |v_main_#t~post5_792| |v_main_#t~post5_787|) (= v_main_~c~0_1508 v_main_~c~0_1502) (= v_main_~a~0_218 v_main_~a~0_217) (= v_main_~b~0_214 v_main_~b~0_213) (= v_main_~st~0_797 v_main_~st~0_791)) InVars {main_~c~0=v_main_~c~0_1508, main_#t~post5=|v_main_#t~post5_792|, main_~st~0=v_main_~st~0_797, main_~b~0=v_main_~b~0_214, main_~a~0=v_main_~a~0_218} OutVars{main_~c~0=v_main_~c~0_1502, main_#t~post5=|v_main_#t~post5_787|, main_~st~0=v_main_~st~0_791, main_~b~0=v_main_~b~0_213, main_~a~0=v_main_~a~0_217} AuxVars[] AssignedVars[main_~c~0, main_#t~post5, main_~st~0, main_~b~0, main_~a~0] {139268#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:05:57,186 INFO L290 TraceCheckUtils]: 15: Hoare triple {139268#(<= 200000 ~SIZE~0)} [339] L27-3_primed-->L27-3: Formula: (and (= 0 v_main_~c~0_10) (= v_main_~st~0_7 1)) InVars {} OutVars{main_~c~0=v_main_~c~0_10, main_~st~0=v_main_~st~0_7} AuxVars[] AssignedVars[main_~c~0, main_~st~0] {139327#(and (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:05:57,186 INFO L290 TraceCheckUtils]: 16: Hoare triple {139327#(and (<= main_~c~0 0) (<= 200000 ~SIZE~0))} assume !!(~c~0 < ~SIZE~0); {139327#(and (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:05:57,186 INFO L290 TraceCheckUtils]: 17: Hoare triple {139327#(and (<= main_~c~0 0) (<= 200000 ~SIZE~0))} assume ~c~0 >= ~last~0;~st~0 := 0; {139327#(and (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:05:57,187 INFO L290 TraceCheckUtils]: 18: Hoare triple {139327#(and (<= main_~c~0 0) (<= 200000 ~SIZE~0))} #t~post5 := ~c~0;~c~0 := 1 + #t~post5;havoc #t~post5; {139337#(and (<= 200000 ~SIZE~0) (<= main_~c~0 1))} is VALID [2022-04-28 04:05:57,187 INFO L290 TraceCheckUtils]: 19: Hoare triple {139337#(and (<= 200000 ~SIZE~0) (<= main_~c~0 1))} assume !!(~c~0 < ~SIZE~0); {139337#(and (<= 200000 ~SIZE~0) (<= main_~c~0 1))} is VALID [2022-04-28 04:05:57,187 INFO L290 TraceCheckUtils]: 20: Hoare triple {139337#(and (<= 200000 ~SIZE~0) (<= main_~c~0 1))} assume ~c~0 >= ~last~0;~st~0 := 0; {139337#(and (<= 200000 ~SIZE~0) (<= main_~c~0 1))} is VALID [2022-04-28 04:05:57,188 INFO L290 TraceCheckUtils]: 21: Hoare triple {139337#(and (<= 200000 ~SIZE~0) (<= main_~c~0 1))} #t~post5 := ~c~0;~c~0 := 1 + #t~post5;havoc #t~post5; {139347#(and (<= main_~c~0 2) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:05:57,188 INFO L290 TraceCheckUtils]: 22: Hoare triple {139347#(and (<= main_~c~0 2) (<= 200000 ~SIZE~0))} assume !!(~c~0 < ~SIZE~0); {139347#(and (<= main_~c~0 2) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:05:57,188 INFO L290 TraceCheckUtils]: 23: Hoare triple {139347#(and (<= main_~c~0 2) (<= 200000 ~SIZE~0))} assume ~c~0 >= ~last~0;~st~0 := 0; {139347#(and (<= main_~c~0 2) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:05:57,189 INFO L290 TraceCheckUtils]: 24: Hoare triple {139347#(and (<= main_~c~0 2) (<= 200000 ~SIZE~0))} #t~post5 := ~c~0;~c~0 := 1 + #t~post5;havoc #t~post5; {139357#(and (<= main_~c~0 3) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:05:57,189 INFO L290 TraceCheckUtils]: 25: Hoare triple {139357#(and (<= main_~c~0 3) (<= 200000 ~SIZE~0))} assume !!(~c~0 < ~SIZE~0); {139357#(and (<= main_~c~0 3) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:05:57,190 INFO L290 TraceCheckUtils]: 26: Hoare triple {139357#(and (<= main_~c~0 3) (<= 200000 ~SIZE~0))} assume ~c~0 >= ~last~0;~st~0 := 0; {139357#(and (<= main_~c~0 3) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:05:57,190 INFO L290 TraceCheckUtils]: 27: Hoare triple {139357#(and (<= main_~c~0 3) (<= 200000 ~SIZE~0))} #t~post5 := ~c~0;~c~0 := 1 + #t~post5;havoc #t~post5; {139367#(and (<= 200000 ~SIZE~0) (<= main_~c~0 4))} is VALID [2022-04-28 04:05:57,190 INFO L290 TraceCheckUtils]: 28: Hoare triple {139367#(and (<= 200000 ~SIZE~0) (<= main_~c~0 4))} assume !(~c~0 < ~SIZE~0); {139264#false} is VALID [2022-04-28 04:05:57,190 INFO L290 TraceCheckUtils]: 29: Hoare triple {139264#false} assume !(0 == ~st~0 && ~c~0 == 1 + ~last~0);~a~0 := 2 + ~a~0;~b~0 := 2 + ~b~0; {139264#false} is VALID [2022-04-28 04:05:57,190 INFO L290 TraceCheckUtils]: 30: Hoare triple {139264#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {139264#false} is VALID [2022-04-28 04:05:57,191 INFO L290 TraceCheckUtils]: 31: Hoare triple {139264#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {139264#false} is VALID [2022-04-28 04:05:57,191 INFO L290 TraceCheckUtils]: 32: Hoare triple {139264#false} assume !(~d~0 == ~SIZE~0); {139264#false} is VALID [2022-04-28 04:05:57,191 INFO L272 TraceCheckUtils]: 33: Hoare triple {139264#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {139264#false} is VALID [2022-04-28 04:05:57,191 INFO L290 TraceCheckUtils]: 34: Hoare triple {139264#false} ~cond := #in~cond; {139264#false} is VALID [2022-04-28 04:05:57,191 INFO L290 TraceCheckUtils]: 35: Hoare triple {139264#false} assume 0 == ~cond; {139264#false} is VALID [2022-04-28 04:05:57,191 INFO L290 TraceCheckUtils]: 36: Hoare triple {139264#false} assume !false; {139264#false} is VALID [2022-04-28 04:05:57,191 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 22 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-28 04:05:57,191 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:05:57,365 INFO L290 TraceCheckUtils]: 36: Hoare triple {139264#false} assume !false; {139264#false} is VALID [2022-04-28 04:05:57,365 INFO L290 TraceCheckUtils]: 35: Hoare triple {139264#false} assume 0 == ~cond; {139264#false} is VALID [2022-04-28 04:05:57,365 INFO L290 TraceCheckUtils]: 34: Hoare triple {139264#false} ~cond := #in~cond; {139264#false} is VALID [2022-04-28 04:05:57,365 INFO L272 TraceCheckUtils]: 33: Hoare triple {139264#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {139264#false} is VALID [2022-04-28 04:05:57,366 INFO L290 TraceCheckUtils]: 32: Hoare triple {139264#false} assume !(~d~0 == ~SIZE~0); {139264#false} is VALID [2022-04-28 04:05:57,366 INFO L290 TraceCheckUtils]: 31: Hoare triple {139264#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {139264#false} is VALID [2022-04-28 04:05:57,366 INFO L290 TraceCheckUtils]: 30: Hoare triple {139264#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {139264#false} is VALID [2022-04-28 04:05:57,366 INFO L290 TraceCheckUtils]: 29: Hoare triple {139264#false} assume !(0 == ~st~0 && ~c~0 == 1 + ~last~0);~a~0 := 2 + ~a~0;~b~0 := 2 + ~b~0; {139264#false} is VALID [2022-04-28 04:05:57,366 INFO L290 TraceCheckUtils]: 28: Hoare triple {139419#(< main_~c~0 ~SIZE~0)} assume !(~c~0 < ~SIZE~0); {139264#false} is VALID [2022-04-28 04:05:57,366 INFO L290 TraceCheckUtils]: 27: Hoare triple {139423#(< (+ main_~c~0 1) ~SIZE~0)} #t~post5 := ~c~0;~c~0 := 1 + #t~post5;havoc #t~post5; {139419#(< main_~c~0 ~SIZE~0)} is VALID [2022-04-28 04:05:57,367 INFO L290 TraceCheckUtils]: 26: Hoare triple {139423#(< (+ main_~c~0 1) ~SIZE~0)} assume ~c~0 >= ~last~0;~st~0 := 0; {139423#(< (+ main_~c~0 1) ~SIZE~0)} is VALID [2022-04-28 04:05:57,367 INFO L290 TraceCheckUtils]: 25: Hoare triple {139423#(< (+ main_~c~0 1) ~SIZE~0)} assume !!(~c~0 < ~SIZE~0); {139423#(< (+ main_~c~0 1) ~SIZE~0)} is VALID [2022-04-28 04:05:57,367 INFO L290 TraceCheckUtils]: 24: Hoare triple {139433#(< (+ main_~c~0 2) ~SIZE~0)} #t~post5 := ~c~0;~c~0 := 1 + #t~post5;havoc #t~post5; {139423#(< (+ main_~c~0 1) ~SIZE~0)} is VALID [2022-04-28 04:05:57,368 INFO L290 TraceCheckUtils]: 23: Hoare triple {139433#(< (+ main_~c~0 2) ~SIZE~0)} assume ~c~0 >= ~last~0;~st~0 := 0; {139433#(< (+ main_~c~0 2) ~SIZE~0)} is VALID [2022-04-28 04:05:57,368 INFO L290 TraceCheckUtils]: 22: Hoare triple {139433#(< (+ main_~c~0 2) ~SIZE~0)} assume !!(~c~0 < ~SIZE~0); {139433#(< (+ main_~c~0 2) ~SIZE~0)} is VALID [2022-04-28 04:05:57,368 INFO L290 TraceCheckUtils]: 21: Hoare triple {139443#(< (+ main_~c~0 3) ~SIZE~0)} #t~post5 := ~c~0;~c~0 := 1 + #t~post5;havoc #t~post5; {139433#(< (+ main_~c~0 2) ~SIZE~0)} is VALID [2022-04-28 04:05:57,369 INFO L290 TraceCheckUtils]: 20: Hoare triple {139443#(< (+ main_~c~0 3) ~SIZE~0)} assume ~c~0 >= ~last~0;~st~0 := 0; {139443#(< (+ main_~c~0 3) ~SIZE~0)} is VALID [2022-04-28 04:05:57,369 INFO L290 TraceCheckUtils]: 19: Hoare triple {139443#(< (+ main_~c~0 3) ~SIZE~0)} assume !!(~c~0 < ~SIZE~0); {139443#(< (+ main_~c~0 3) ~SIZE~0)} is VALID [2022-04-28 04:05:57,369 INFO L290 TraceCheckUtils]: 18: Hoare triple {139453#(< (+ main_~c~0 4) ~SIZE~0)} #t~post5 := ~c~0;~c~0 := 1 + #t~post5;havoc #t~post5; {139443#(< (+ main_~c~0 3) ~SIZE~0)} is VALID [2022-04-28 04:05:57,370 INFO L290 TraceCheckUtils]: 17: Hoare triple {139453#(< (+ main_~c~0 4) ~SIZE~0)} assume ~c~0 >= ~last~0;~st~0 := 0; {139453#(< (+ main_~c~0 4) ~SIZE~0)} is VALID [2022-04-28 04:05:57,370 INFO L290 TraceCheckUtils]: 16: Hoare triple {139453#(< (+ main_~c~0 4) ~SIZE~0)} assume !!(~c~0 < ~SIZE~0); {139453#(< (+ main_~c~0 4) ~SIZE~0)} is VALID [2022-04-28 04:05:57,370 INFO L290 TraceCheckUtils]: 15: Hoare triple {139463#(< 4 ~SIZE~0)} [339] L27-3_primed-->L27-3: Formula: (and (= 0 v_main_~c~0_10) (= v_main_~st~0_7 1)) InVars {} OutVars{main_~c~0=v_main_~c~0_10, main_~st~0=v_main_~st~0_7} AuxVars[] AssignedVars[main_~c~0, main_~st~0] {139453#(< (+ main_~c~0 4) ~SIZE~0)} is VALID [2022-04-28 04:05:57,370 INFO L290 TraceCheckUtils]: 14: Hoare triple {139463#(< 4 ~SIZE~0)} [342] L44-->L27-3_primed: Formula: (and (= |v_main_#t~post5_792| |v_main_#t~post5_787|) (= v_main_~c~0_1508 v_main_~c~0_1502) (= v_main_~a~0_218 v_main_~a~0_217) (= v_main_~b~0_214 v_main_~b~0_213) (= v_main_~st~0_797 v_main_~st~0_791)) InVars {main_~c~0=v_main_~c~0_1508, main_#t~post5=|v_main_#t~post5_792|, main_~st~0=v_main_~st~0_797, main_~b~0=v_main_~b~0_214, main_~a~0=v_main_~a~0_218} OutVars{main_~c~0=v_main_~c~0_1502, main_#t~post5=|v_main_#t~post5_787|, main_~st~0=v_main_~st~0_791, main_~b~0=v_main_~b~0_213, main_~a~0=v_main_~a~0_217} AuxVars[] AssignedVars[main_~c~0, main_#t~post5, main_~st~0, main_~b~0, main_~a~0] {139463#(< 4 ~SIZE~0)} is VALID [2022-04-28 04:05:57,371 INFO L290 TraceCheckUtils]: 13: Hoare triple {139463#(< 4 ~SIZE~0)} [341] L27-3_primed-->L44: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {139463#(< 4 ~SIZE~0)} is VALID [2022-04-28 04:05:57,371 INFO L290 TraceCheckUtils]: 12: Hoare triple {139463#(< 4 ~SIZE~0)} [340] L44-->L27-3_primed: Formula: (let ((.cse11 (= v_~SIZE~0_545 v_main_~d~0_69))) (let ((.cse0 (= v_main_~c~0_1502 4)) (.cse7 (* (- 1) v_main_~a~0_217)) (.cse3 (= v_main_~st~0_791 0)) (.cse2 (- v_main_~a~0_217)) (.cse6 (* v_main_~a~0_217 3)) (.cse8 (not .cse11)) (.cse5 (= v_~SIZE~0_545 4)) (.cse4 (= v_main_~a~0_218 v_main_~b~0_214)) (.cse1 (<= v_~last~0_604 0)) (.cse9 (= v_main_~c~0_1507 v_main_~c~0_1502)) (.cse10 (= |v_main_#t~post5_791| |v_main_#t~post5_787|)) (.cse12 (= v_main_~st~0_796 v_main_~st~0_791)) (.cse13 (= v_main_~a~0_218 v_main_~a~0_217)) (.cse14 (= v_main_~b~0_214 v_main_~b~0_213))) (or (and .cse0 .cse1 (= v_main_~b~0_213 (+ v_main_~b~0_214 (* (div (+ .cse2 v_main_~a~0_218) (- 4)) 4))) .cse3 .cse4 .cse5 (= (mod (+ v_main_~a~0_218 .cse6) 4) 0) (< 0 (div (+ v_main_~a~0_218 .cse7) (- 4))) .cse8) (and .cse0 .cse1 (<= 0 (div (+ v_main_~a~0_218 2 .cse7) (- 4))) .cse3 .cse4 (= v_main_~b~0_213 (+ 2 (* (div (+ .cse2 v_main_~a~0_218 2) (- 4)) 4) v_main_~b~0_214)) .cse5 (= (mod (+ v_main_~a~0_218 .cse6 2) 4) 0) .cse8) (and .cse9 .cse10 (or (not .cse5) .cse11 (not .cse4) (not .cse1)) .cse12 .cse13 .cse14) (and (= v_main_~d~0_69 v_main_~d~0_69) (= v_~last~0_604 v_~last~0_604) .cse9 .cse10 .cse12 .cse13 .cse14 (= v_~SIZE~0_545 v_~SIZE~0_545))))) InVars {~SIZE~0=v_~SIZE~0_545, main_~c~0=v_main_~c~0_1507, main_#t~post5=|v_main_#t~post5_791|, main_~d~0=v_main_~d~0_69, main_~st~0=v_main_~st~0_796, main_~b~0=v_main_~b~0_214, ~last~0=v_~last~0_604, main_~a~0=v_main_~a~0_218} OutVars{~SIZE~0=v_~SIZE~0_545, main_~c~0=v_main_~c~0_1502, main_#t~post5=|v_main_#t~post5_787|, main_~d~0=v_main_~d~0_69, main_~st~0=v_main_~st~0_791, main_~b~0=v_main_~b~0_213, ~last~0=v_~last~0_604, main_~a~0=v_main_~a~0_217} AuxVars[] AssignedVars[main_~c~0, main_#t~post5, main_~st~0, main_~b~0, main_~a~0] {139463#(< 4 ~SIZE~0)} is VALID [2022-04-28 04:05:57,371 INFO L290 TraceCheckUtils]: 11: Hoare triple {139463#(< 4 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {139463#(< 4 ~SIZE~0)} is VALID [2022-04-28 04:05:57,372 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {139263#true} {139463#(< 4 ~SIZE~0)} #86#return; {139463#(< 4 ~SIZE~0)} is VALID [2022-04-28 04:05:57,372 INFO L290 TraceCheckUtils]: 9: Hoare triple {139263#true} assume true; {139263#true} is VALID [2022-04-28 04:05:57,372 INFO L290 TraceCheckUtils]: 8: Hoare triple {139263#true} assume !(0 == ~cond); {139263#true} is VALID [2022-04-28 04:05:57,372 INFO L290 TraceCheckUtils]: 7: Hoare triple {139263#true} ~cond := #in~cond; {139263#true} is VALID [2022-04-28 04:05:57,372 INFO L272 TraceCheckUtils]: 6: Hoare triple {139463#(< 4 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {139263#true} is VALID [2022-04-28 04:05:57,372 INFO L290 TraceCheckUtils]: 5: Hoare triple {139463#(< 4 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {139463#(< 4 ~SIZE~0)} is VALID [2022-04-28 04:05:57,373 INFO L272 TraceCheckUtils]: 4: Hoare triple {139463#(< 4 ~SIZE~0)} call #t~ret7 := main(); {139463#(< 4 ~SIZE~0)} is VALID [2022-04-28 04:05:57,373 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {139463#(< 4 ~SIZE~0)} {139263#true} #90#return; {139463#(< 4 ~SIZE~0)} is VALID [2022-04-28 04:05:57,373 INFO L290 TraceCheckUtils]: 2: Hoare triple {139463#(< 4 ~SIZE~0)} assume true; {139463#(< 4 ~SIZE~0)} is VALID [2022-04-28 04:05:57,374 INFO L290 TraceCheckUtils]: 1: Hoare triple {139263#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {139463#(< 4 ~SIZE~0)} is VALID [2022-04-28 04:05:57,374 INFO L272 TraceCheckUtils]: 0: Hoare triple {139263#true} call ULTIMATE.init(); {139263#true} is VALID [2022-04-28 04:05:57,374 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 0 proven. 22 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-04-28 04:05:57,374 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2021201316] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:05:57,374 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:05:57,374 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 8, 8] total 20 [2022-04-28 04:05:57,541 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:05:57,541 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [132314696] [2022-04-28 04:05:57,541 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [132314696] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:05:57,541 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:05:57,541 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [15] imperfect sequences [] total 15 [2022-04-28 04:05:57,541 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1770445574] [2022-04-28 04:05:57,541 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:05:57,542 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.933333333333333) internal successors, (44), 14 states have internal predecessors, (44), 3 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Word has length 57 [2022-04-28 04:05:57,542 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:05:57,542 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 15 states, 15 states have (on average 2.933333333333333) internal successors, (44), 14 states have internal predecessors, (44), 3 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 04:05:57,573 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:05:57,573 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 15 states [2022-04-28 04:05:57,573 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:05:57,573 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 15 interpolants. [2022-04-28 04:05:57,573 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=243, Invalid=407, Unknown=0, NotChecked=0, Total=650 [2022-04-28 04:05:57,573 INFO L87 Difference]: Start difference. First operand 349 states and 419 transitions. Second operand has 15 states, 15 states have (on average 2.933333333333333) internal successors, (44), 14 states have internal predecessors, (44), 3 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 04:05:59,939 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:05:59,940 INFO L93 Difference]: Finished difference Result 648 states and 776 transitions. [2022-04-28 04:05:59,940 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 16 states. [2022-04-28 04:05:59,940 INFO L78 Accepts]: Start accepts. Automaton has has 15 states, 15 states have (on average 2.933333333333333) internal successors, (44), 14 states have internal predecessors, (44), 3 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Word has length 57 [2022-04-28 04:05:59,940 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:05:59,940 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.933333333333333) internal successors, (44), 14 states have internal predecessors, (44), 3 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 04:05:59,940 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 87 transitions. [2022-04-28 04:05:59,941 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 15 states, 15 states have (on average 2.933333333333333) internal successors, (44), 14 states have internal predecessors, (44), 3 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 04:05:59,941 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 87 transitions. [2022-04-28 04:05:59,941 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 87 transitions. [2022-04-28 04:05:59,995 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 87 edges. 87 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:06:00,001 INFO L225 Difference]: With dead ends: 648 [2022-04-28 04:06:00,001 INFO L226 Difference]: Without dead ends: 369 [2022-04-28 04:06:00,001 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 123 GetRequests, 86 SyntacticMatches, 8 SemanticMatches, 29 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 584 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=336, Invalid=594, Unknown=0, NotChecked=0, Total=930 [2022-04-28 04:06:00,002 INFO L413 NwaCegarLoop]: 21 mSDtfsCounter, 69 mSDsluCounter, 9 mSDsCounter, 0 mSdLazyCounter, 254 mSolverCounterSat, 32 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 70 SdHoareTripleChecker+Valid, 30 SdHoareTripleChecker+Invalid, 286 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 32 IncrementalHoareTripleChecker+Valid, 254 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 04:06:00,002 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [70 Valid, 30 Invalid, 286 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [32 Valid, 254 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 04:06:00,002 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 369 states. [2022-04-28 04:06:01,906 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 369 to 361. [2022-04-28 04:06:01,907 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:06:01,907 INFO L82 GeneralOperation]: Start isEquivalent. First operand 369 states. Second operand has 361 states, 346 states have (on average 1.1965317919075145) internal successors, (414), 349 states have internal predecessors, (414), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:06:01,907 INFO L74 IsIncluded]: Start isIncluded. First operand 369 states. Second operand has 361 states, 346 states have (on average 1.1965317919075145) internal successors, (414), 349 states have internal predecessors, (414), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:06:01,907 INFO L87 Difference]: Start difference. First operand 369 states. Second operand has 361 states, 346 states have (on average 1.1965317919075145) internal successors, (414), 349 states have internal predecessors, (414), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:06:01,912 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:06:01,912 INFO L93 Difference]: Finished difference Result 369 states and 439 transitions. [2022-04-28 04:06:01,912 INFO L276 IsEmpty]: Start isEmpty. Operand 369 states and 439 transitions. [2022-04-28 04:06:01,912 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:06:01,912 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:06:01,913 INFO L74 IsIncluded]: Start isIncluded. First operand has 361 states, 346 states have (on average 1.1965317919075145) internal successors, (414), 349 states have internal predecessors, (414), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 369 states. [2022-04-28 04:06:01,913 INFO L87 Difference]: Start difference. First operand has 361 states, 346 states have (on average 1.1965317919075145) internal successors, (414), 349 states have internal predecessors, (414), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 369 states. [2022-04-28 04:06:01,917 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:06:01,917 INFO L93 Difference]: Finished difference Result 369 states and 439 transitions. [2022-04-28 04:06:01,917 INFO L276 IsEmpty]: Start isEmpty. Operand 369 states and 439 transitions. [2022-04-28 04:06:01,918 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:06:01,918 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:06:01,918 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:06:01,918 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:06:01,918 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 361 states, 346 states have (on average 1.1965317919075145) internal successors, (414), 349 states have internal predecessors, (414), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:06:01,923 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 361 states to 361 states and 431 transitions. [2022-04-28 04:06:01,923 INFO L78 Accepts]: Start accepts. Automaton has 361 states and 431 transitions. Word has length 57 [2022-04-28 04:06:01,923 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:06:01,923 INFO L495 AbstractCegarLoop]: Abstraction has 361 states and 431 transitions. [2022-04-28 04:06:01,924 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 15 states, 15 states have (on average 2.933333333333333) internal successors, (44), 14 states have internal predecessors, (44), 3 states have call successors, (4), 4 states have call predecessors, (4), 3 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-28 04:06:01,924 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 361 states and 431 transitions. [2022-04-28 04:06:03,741 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 431 edges. 431 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:06:03,741 INFO L276 IsEmpty]: Start isEmpty. Operand 361 states and 431 transitions. [2022-04-28 04:06:03,741 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-28 04:06:03,741 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:06:03,742 INFO L195 NwaCegarLoop]: trace histogram [12, 12, 11, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:06:03,757 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (60)] Forceful destruction successful, exit code 0 [2022-04-28 04:06:03,942 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 60 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable67 [2022-04-28 04:06:03,942 INFO L420 AbstractCegarLoop]: === Iteration 69 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:06:03,942 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:06:03,942 INFO L85 PathProgramCache]: Analyzing trace with hash -490608740, now seen corresponding path program 56 times [2022-04-28 04:06:03,942 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:06:03,942 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [213468620] [2022-04-28 04:06:08,066 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:06:08,190 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:06:08,402 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:06:08,403 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:06:08,406 INFO L85 PathProgramCache]: Analyzing trace with hash -573439039, now seen corresponding path program 1 times [2022-04-28 04:06:08,406 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:06:08,406 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1271373012] [2022-04-28 04:06:08,406 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:06:08,406 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:06:08,413 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:06:08,458 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:06:08,459 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:06:08,462 INFO L290 TraceCheckUtils]: 0: Hoare triple {142297#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {142289#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:08,462 INFO L290 TraceCheckUtils]: 1: Hoare triple {142289#(<= 200000 ~SIZE~0)} assume true; {142289#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:08,463 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {142289#(<= 200000 ~SIZE~0)} {142284#true} #90#return; {142289#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:08,463 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:06:08,463 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:06:08,464 INFO L290 TraceCheckUtils]: 0: Hoare triple {142284#true} ~cond := #in~cond; {142284#true} is VALID [2022-04-28 04:06:08,465 INFO L290 TraceCheckUtils]: 1: Hoare triple {142284#true} assume !(0 == ~cond); {142284#true} is VALID [2022-04-28 04:06:08,465 INFO L290 TraceCheckUtils]: 2: Hoare triple {142284#true} assume true; {142284#true} is VALID [2022-04-28 04:06:08,465 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {142284#true} {142289#(<= 200000 ~SIZE~0)} #86#return; {142289#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:08,465 INFO L272 TraceCheckUtils]: 0: Hoare triple {142284#true} call ULTIMATE.init(); {142297#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:06:08,466 INFO L290 TraceCheckUtils]: 1: Hoare triple {142297#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {142289#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:08,466 INFO L290 TraceCheckUtils]: 2: Hoare triple {142289#(<= 200000 ~SIZE~0)} assume true; {142289#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:08,467 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {142289#(<= 200000 ~SIZE~0)} {142284#true} #90#return; {142289#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:08,467 INFO L272 TraceCheckUtils]: 4: Hoare triple {142289#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {142289#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:08,467 INFO L290 TraceCheckUtils]: 5: Hoare triple {142289#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {142289#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:08,467 INFO L272 TraceCheckUtils]: 6: Hoare triple {142289#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {142284#true} is VALID [2022-04-28 04:06:08,467 INFO L290 TraceCheckUtils]: 7: Hoare triple {142284#true} ~cond := #in~cond; {142284#true} is VALID [2022-04-28 04:06:08,467 INFO L290 TraceCheckUtils]: 8: Hoare triple {142284#true} assume !(0 == ~cond); {142284#true} is VALID [2022-04-28 04:06:08,467 INFO L290 TraceCheckUtils]: 9: Hoare triple {142284#true} assume true; {142284#true} is VALID [2022-04-28 04:06:08,474 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {142284#true} {142289#(<= 200000 ~SIZE~0)} #86#return; {142289#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:08,475 INFO L290 TraceCheckUtils]: 11: Hoare triple {142289#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {142289#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:08,475 INFO L290 TraceCheckUtils]: 12: Hoare triple {142289#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {142294#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:06:08,476 INFO L290 TraceCheckUtils]: 13: Hoare triple {142294#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [344] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1528 v_main_~c~0_1527)) (.cse1 (= |v_main_#t~post5_803| |v_main_#t~post5_801|)) (.cse2 (= v_main_~st~0_813 v_main_~st~0_812)) (.cse3 (<= v_~last~0_611 v_main_~c~0_1528))) (or (and .cse0 .cse1 .cse2 (or (not (< v_main_~c~0_1528 v_~SIZE~0_551)) (not .cse3))) (and .cse0 .cse1 (= v_~last~0_611 v_~last~0_611) (= v_~SIZE~0_551 v_~SIZE~0_551) .cse2) (and (= v_main_~st~0_812 0) .cse3 (< v_main_~c~0_1528 v_main_~c~0_1527) (< v_main_~c~0_1527 (+ v_~SIZE~0_551 1))))) InVars {~SIZE~0=v_~SIZE~0_551, main_~c~0=v_main_~c~0_1528, main_#t~post5=|v_main_#t~post5_803|, main_~st~0=v_main_~st~0_813, ~last~0=v_~last~0_611} OutVars{~SIZE~0=v_~SIZE~0_551, main_#t~post5=|v_main_#t~post5_801|, main_~c~0=v_main_~c~0_1527, main_~st~0=v_main_~st~0_812, ~last~0=v_~last~0_611} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {142295#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:06:08,476 INFO L290 TraceCheckUtils]: 14: Hoare triple {142295#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [345] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {142295#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:06:08,476 INFO L290 TraceCheckUtils]: 15: Hoare triple {142295#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [346] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1530 v_main_~c~0_1529)) (.cse1 (= |v_main_#t~post5_806| |v_main_#t~post5_802|))) (or (and .cse0 .cse1 (or (not (< v_main_~c~0_1530 v_~last~0_612)) (not (< v_main_~c~0_1530 v_~SIZE~0_552)))) (and (< v_main_~c~0_1529 (+ v_~last~0_612 1)) (< v_main_~c~0_1530 v_main_~c~0_1529) (< v_main_~c~0_1529 (+ v_~SIZE~0_552 1))) (and .cse0 (= v_~SIZE~0_552 v_~SIZE~0_552) (= v_~last~0_612 v_~last~0_612) .cse1))) InVars {~SIZE~0=v_~SIZE~0_552, main_~c~0=v_main_~c~0_1530, main_#t~post5=|v_main_#t~post5_806|, ~last~0=v_~last~0_612} OutVars{~SIZE~0=v_~SIZE~0_552, main_#t~post5=|v_main_#t~post5_802|, main_~c~0=v_main_~c~0_1529, ~last~0=v_~last~0_612} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {142295#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:06:08,477 INFO L290 TraceCheckUtils]: 16: Hoare triple {142295#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [343] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {142296#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:06:08,477 INFO L290 TraceCheckUtils]: 17: Hoare triple {142296#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {142285#false} is VALID [2022-04-28 04:06:08,477 INFO L290 TraceCheckUtils]: 18: Hoare triple {142285#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {142285#false} is VALID [2022-04-28 04:06:08,477 INFO L290 TraceCheckUtils]: 19: Hoare triple {142285#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {142285#false} is VALID [2022-04-28 04:06:08,477 INFO L290 TraceCheckUtils]: 20: Hoare triple {142285#false} assume !(~d~0 == ~SIZE~0); {142285#false} is VALID [2022-04-28 04:06:08,477 INFO L272 TraceCheckUtils]: 21: Hoare triple {142285#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {142285#false} is VALID [2022-04-28 04:06:08,478 INFO L290 TraceCheckUtils]: 22: Hoare triple {142285#false} ~cond := #in~cond; {142285#false} is VALID [2022-04-28 04:06:08,478 INFO L290 TraceCheckUtils]: 23: Hoare triple {142285#false} assume 0 == ~cond; {142285#false} is VALID [2022-04-28 04:06:08,478 INFO L290 TraceCheckUtils]: 24: Hoare triple {142285#false} assume !false; {142285#false} is VALID [2022-04-28 04:06:08,478 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:06:08,478 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:06:08,478 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1271373012] [2022-04-28 04:06:08,478 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1271373012] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:06:08,478 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [271971996] [2022-04-28 04:06:08,478 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:06:08,478 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:06:08,478 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:06:08,479 INFO L229 MonitoredProcess]: Starting monitored process 61 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:06:08,480 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (61)] Waiting until timeout for monitored process [2022-04-28 04:06:08,510 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:06:08,510 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:06:08,516 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:06:08,517 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:06:08,739 INFO L272 TraceCheckUtils]: 0: Hoare triple {142284#true} call ULTIMATE.init(); {142284#true} is VALID [2022-04-28 04:06:08,740 INFO L290 TraceCheckUtils]: 1: Hoare triple {142284#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {142289#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:08,740 INFO L290 TraceCheckUtils]: 2: Hoare triple {142289#(<= 200000 ~SIZE~0)} assume true; {142289#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:08,740 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {142289#(<= 200000 ~SIZE~0)} {142284#true} #90#return; {142289#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:08,741 INFO L272 TraceCheckUtils]: 4: Hoare triple {142289#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {142289#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:08,741 INFO L290 TraceCheckUtils]: 5: Hoare triple {142289#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {142289#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:08,741 INFO L272 TraceCheckUtils]: 6: Hoare triple {142289#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {142289#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:08,741 INFO L290 TraceCheckUtils]: 7: Hoare triple {142289#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {142289#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:08,742 INFO L290 TraceCheckUtils]: 8: Hoare triple {142289#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {142289#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:08,742 INFO L290 TraceCheckUtils]: 9: Hoare triple {142289#(<= 200000 ~SIZE~0)} assume true; {142289#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:08,750 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {142289#(<= 200000 ~SIZE~0)} {142289#(<= 200000 ~SIZE~0)} #86#return; {142289#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:08,750 INFO L290 TraceCheckUtils]: 11: Hoare triple {142289#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {142289#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:08,750 INFO L290 TraceCheckUtils]: 12: Hoare triple {142289#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {142337#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:06:08,751 INFO L290 TraceCheckUtils]: 13: Hoare triple {142337#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [344] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1528 v_main_~c~0_1527)) (.cse1 (= |v_main_#t~post5_803| |v_main_#t~post5_801|)) (.cse2 (= v_main_~st~0_813 v_main_~st~0_812)) (.cse3 (<= v_~last~0_611 v_main_~c~0_1528))) (or (and .cse0 .cse1 .cse2 (or (not (< v_main_~c~0_1528 v_~SIZE~0_551)) (not .cse3))) (and .cse0 .cse1 (= v_~last~0_611 v_~last~0_611) (= v_~SIZE~0_551 v_~SIZE~0_551) .cse2) (and (= v_main_~st~0_812 0) .cse3 (< v_main_~c~0_1528 v_main_~c~0_1527) (< v_main_~c~0_1527 (+ v_~SIZE~0_551 1))))) InVars {~SIZE~0=v_~SIZE~0_551, main_~c~0=v_main_~c~0_1528, main_#t~post5=|v_main_#t~post5_803|, main_~st~0=v_main_~st~0_813, ~last~0=v_~last~0_611} OutVars{~SIZE~0=v_~SIZE~0_551, main_#t~post5=|v_main_#t~post5_801|, main_~c~0=v_main_~c~0_1527, main_~st~0=v_main_~st~0_812, ~last~0=v_~last~0_611} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {142341#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:06:08,752 INFO L290 TraceCheckUtils]: 14: Hoare triple {142341#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [345] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {142341#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:06:08,752 INFO L290 TraceCheckUtils]: 15: Hoare triple {142341#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [346] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1530 v_main_~c~0_1529)) (.cse1 (= |v_main_#t~post5_806| |v_main_#t~post5_802|))) (or (and .cse0 .cse1 (or (not (< v_main_~c~0_1530 v_~last~0_612)) (not (< v_main_~c~0_1530 v_~SIZE~0_552)))) (and (< v_main_~c~0_1529 (+ v_~last~0_612 1)) (< v_main_~c~0_1530 v_main_~c~0_1529) (< v_main_~c~0_1529 (+ v_~SIZE~0_552 1))) (and .cse0 (= v_~SIZE~0_552 v_~SIZE~0_552) (= v_~last~0_612 v_~last~0_612) .cse1))) InVars {~SIZE~0=v_~SIZE~0_552, main_~c~0=v_main_~c~0_1530, main_#t~post5=|v_main_#t~post5_806|, ~last~0=v_~last~0_612} OutVars{~SIZE~0=v_~SIZE~0_552, main_#t~post5=|v_main_#t~post5_802|, main_~c~0=v_main_~c~0_1529, ~last~0=v_~last~0_612} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {142341#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:06:08,753 INFO L290 TraceCheckUtils]: 16: Hoare triple {142341#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [343] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {142351#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:06:08,753 INFO L290 TraceCheckUtils]: 17: Hoare triple {142351#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {142285#false} is VALID [2022-04-28 04:06:08,753 INFO L290 TraceCheckUtils]: 18: Hoare triple {142285#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {142285#false} is VALID [2022-04-28 04:06:08,753 INFO L290 TraceCheckUtils]: 19: Hoare triple {142285#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {142285#false} is VALID [2022-04-28 04:06:08,753 INFO L290 TraceCheckUtils]: 20: Hoare triple {142285#false} assume !(~d~0 == ~SIZE~0); {142285#false} is VALID [2022-04-28 04:06:08,753 INFO L272 TraceCheckUtils]: 21: Hoare triple {142285#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {142285#false} is VALID [2022-04-28 04:06:08,753 INFO L290 TraceCheckUtils]: 22: Hoare triple {142285#false} ~cond := #in~cond; {142285#false} is VALID [2022-04-28 04:06:08,754 INFO L290 TraceCheckUtils]: 23: Hoare triple {142285#false} assume 0 == ~cond; {142285#false} is VALID [2022-04-28 04:06:08,754 INFO L290 TraceCheckUtils]: 24: Hoare triple {142285#false} assume !false; {142285#false} is VALID [2022-04-28 04:06:08,754 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:06:08,754 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:06:09,074 INFO L290 TraceCheckUtils]: 24: Hoare triple {142285#false} assume !false; {142285#false} is VALID [2022-04-28 04:06:09,074 INFO L290 TraceCheckUtils]: 23: Hoare triple {142285#false} assume 0 == ~cond; {142285#false} is VALID [2022-04-28 04:06:09,074 INFO L290 TraceCheckUtils]: 22: Hoare triple {142285#false} ~cond := #in~cond; {142285#false} is VALID [2022-04-28 04:06:09,074 INFO L272 TraceCheckUtils]: 21: Hoare triple {142285#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {142285#false} is VALID [2022-04-28 04:06:09,075 INFO L290 TraceCheckUtils]: 20: Hoare triple {142285#false} assume !(~d~0 == ~SIZE~0); {142285#false} is VALID [2022-04-28 04:06:09,075 INFO L290 TraceCheckUtils]: 19: Hoare triple {142285#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {142285#false} is VALID [2022-04-28 04:06:09,075 INFO L290 TraceCheckUtils]: 18: Hoare triple {142285#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {142285#false} is VALID [2022-04-28 04:06:09,075 INFO L290 TraceCheckUtils]: 17: Hoare triple {142397#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {142285#false} is VALID [2022-04-28 04:06:09,075 INFO L290 TraceCheckUtils]: 16: Hoare triple {142401#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [343] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {142397#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:06:09,076 INFO L290 TraceCheckUtils]: 15: Hoare triple {142401#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [346] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1530 v_main_~c~0_1529)) (.cse1 (= |v_main_#t~post5_806| |v_main_#t~post5_802|))) (or (and .cse0 .cse1 (or (not (< v_main_~c~0_1530 v_~last~0_612)) (not (< v_main_~c~0_1530 v_~SIZE~0_552)))) (and (< v_main_~c~0_1529 (+ v_~last~0_612 1)) (< v_main_~c~0_1530 v_main_~c~0_1529) (< v_main_~c~0_1529 (+ v_~SIZE~0_552 1))) (and .cse0 (= v_~SIZE~0_552 v_~SIZE~0_552) (= v_~last~0_612 v_~last~0_612) .cse1))) InVars {~SIZE~0=v_~SIZE~0_552, main_~c~0=v_main_~c~0_1530, main_#t~post5=|v_main_#t~post5_806|, ~last~0=v_~last~0_612} OutVars{~SIZE~0=v_~SIZE~0_552, main_#t~post5=|v_main_#t~post5_802|, main_~c~0=v_main_~c~0_1529, ~last~0=v_~last~0_612} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {142401#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:06:09,076 INFO L290 TraceCheckUtils]: 14: Hoare triple {142401#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [345] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {142401#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:06:09,077 INFO L290 TraceCheckUtils]: 13: Hoare triple {142411#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [344] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1528 v_main_~c~0_1527)) (.cse1 (= |v_main_#t~post5_803| |v_main_#t~post5_801|)) (.cse2 (= v_main_~st~0_813 v_main_~st~0_812)) (.cse3 (<= v_~last~0_611 v_main_~c~0_1528))) (or (and .cse0 .cse1 .cse2 (or (not (< v_main_~c~0_1528 v_~SIZE~0_551)) (not .cse3))) (and .cse0 .cse1 (= v_~last~0_611 v_~last~0_611) (= v_~SIZE~0_551 v_~SIZE~0_551) .cse2) (and (= v_main_~st~0_812 0) .cse3 (< v_main_~c~0_1528 v_main_~c~0_1527) (< v_main_~c~0_1527 (+ v_~SIZE~0_551 1))))) InVars {~SIZE~0=v_~SIZE~0_551, main_~c~0=v_main_~c~0_1528, main_#t~post5=|v_main_#t~post5_803|, main_~st~0=v_main_~st~0_813, ~last~0=v_~last~0_611} OutVars{~SIZE~0=v_~SIZE~0_551, main_#t~post5=|v_main_#t~post5_801|, main_~c~0=v_main_~c~0_1527, main_~st~0=v_main_~st~0_812, ~last~0=v_~last~0_611} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {142401#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:06:09,077 INFO L290 TraceCheckUtils]: 12: Hoare triple {142415#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {142411#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:06:09,078 INFO L290 TraceCheckUtils]: 11: Hoare triple {142415#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {142415#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:06:09,078 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {142284#true} {142415#(< 1 ~SIZE~0)} #86#return; {142415#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:06:09,078 INFO L290 TraceCheckUtils]: 9: Hoare triple {142284#true} assume true; {142284#true} is VALID [2022-04-28 04:06:09,078 INFO L290 TraceCheckUtils]: 8: Hoare triple {142284#true} assume !(0 == ~cond); {142284#true} is VALID [2022-04-28 04:06:09,078 INFO L290 TraceCheckUtils]: 7: Hoare triple {142284#true} ~cond := #in~cond; {142284#true} is VALID [2022-04-28 04:06:09,078 INFO L272 TraceCheckUtils]: 6: Hoare triple {142415#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {142284#true} is VALID [2022-04-28 04:06:09,078 INFO L290 TraceCheckUtils]: 5: Hoare triple {142415#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {142415#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:06:09,079 INFO L272 TraceCheckUtils]: 4: Hoare triple {142415#(< 1 ~SIZE~0)} call #t~ret7 := main(); {142415#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:06:09,079 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {142415#(< 1 ~SIZE~0)} {142284#true} #90#return; {142415#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:06:09,079 INFO L290 TraceCheckUtils]: 2: Hoare triple {142415#(< 1 ~SIZE~0)} assume true; {142415#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:06:09,080 INFO L290 TraceCheckUtils]: 1: Hoare triple {142284#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {142415#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:06:09,080 INFO L272 TraceCheckUtils]: 0: Hoare triple {142284#true} call ULTIMATE.init(); {142284#true} is VALID [2022-04-28 04:06:09,080 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:06:09,080 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [271971996] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:06:09,080 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:06:09,080 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:06:09,792 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:06:09,792 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [213468620] [2022-04-28 04:06:09,792 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [213468620] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:06:09,792 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:06:09,792 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [21] imperfect sequences [] total 21 [2022-04-28 04:06:09,792 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1932596941] [2022-04-28 04:06:09,792 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:06:09,793 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 21 states have (on average 2.4761904761904763) internal successors, (52), 20 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 58 [2022-04-28 04:06:09,793 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:06:09,793 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 21 states, 21 states have (on average 2.4761904761904763) internal successors, (52), 20 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:06:09,830 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:06:09,830 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 21 states [2022-04-28 04:06:09,830 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:06:09,830 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 21 interpolants. [2022-04-28 04:06:09,830 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=164, Invalid=706, Unknown=0, NotChecked=0, Total=870 [2022-04-28 04:06:09,830 INFO L87 Difference]: Start difference. First operand 361 states and 431 transitions. Second operand has 21 states, 21 states have (on average 2.4761904761904763) internal successors, (52), 20 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:06:14,626 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:06:14,626 INFO L93 Difference]: Finished difference Result 742 states and 873 transitions. [2022-04-28 04:06:14,626 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2022-04-28 04:06:14,626 INFO L78 Accepts]: Start accepts. Automaton has has 21 states, 21 states have (on average 2.4761904761904763) internal successors, (52), 20 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 58 [2022-04-28 04:06:14,626 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:06:14,626 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 21 states have (on average 2.4761904761904763) internal successors, (52), 20 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:06:14,627 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 107 transitions. [2022-04-28 04:06:14,627 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 21 states, 21 states have (on average 2.4761904761904763) internal successors, (52), 20 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:06:14,627 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 107 transitions. [2022-04-28 04:06:14,627 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 21 states and 107 transitions. [2022-04-28 04:06:14,697 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 107 edges. 107 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:06:14,706 INFO L225 Difference]: With dead ends: 742 [2022-04-28 04:06:14,706 INFO L226 Difference]: Without dead ends: 463 [2022-04-28 04:06:14,706 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 106 GetRequests, 54 SyntacticMatches, 21 SemanticMatches, 31 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 738 ImplicationChecksByTransitivity, 0.6s TimeCoverageRelationStatistics Valid=193, Invalid=863, Unknown=0, NotChecked=0, Total=1056 [2022-04-28 04:06:14,707 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 51 mSDsluCounter, 22 mSDsCounter, 0 mSdLazyCounter, 1295 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 52 SdHoareTripleChecker+Valid, 46 SdHoareTripleChecker+Invalid, 1308 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 1295 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-28 04:06:14,707 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [52 Valid, 46 Invalid, 1308 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 1295 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-28 04:06:14,707 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 463 states. [2022-04-28 04:06:16,745 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 463 to 370. [2022-04-28 04:06:16,745 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:06:16,745 INFO L82 GeneralOperation]: Start isEquivalent. First operand 463 states. Second operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:06:16,745 INFO L74 IsIncluded]: Start isIncluded. First operand 463 states. Second operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:06:16,746 INFO L87 Difference]: Start difference. First operand 463 states. Second operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:06:16,753 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:06:16,753 INFO L93 Difference]: Finished difference Result 463 states and 537 transitions. [2022-04-28 04:06:16,753 INFO L276 IsEmpty]: Start isEmpty. Operand 463 states and 537 transitions. [2022-04-28 04:06:16,753 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:06:16,753 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:06:16,753 INFO L74 IsIncluded]: Start isIncluded. First operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 463 states. [2022-04-28 04:06:16,754 INFO L87 Difference]: Start difference. First operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 463 states. [2022-04-28 04:06:16,761 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:06:16,761 INFO L93 Difference]: Finished difference Result 463 states and 537 transitions. [2022-04-28 04:06:16,761 INFO L276 IsEmpty]: Start isEmpty. Operand 463 states and 537 transitions. [2022-04-28 04:06:16,761 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:06:16,761 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:06:16,761 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:06:16,761 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:06:16,761 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:06:16,767 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 370 states to 370 states and 440 transitions. [2022-04-28 04:06:16,767 INFO L78 Accepts]: Start accepts. Automaton has 370 states and 440 transitions. Word has length 58 [2022-04-28 04:06:16,767 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:06:16,767 INFO L495 AbstractCegarLoop]: Abstraction has 370 states and 440 transitions. [2022-04-28 04:06:16,767 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 21 states, 21 states have (on average 2.4761904761904763) internal successors, (52), 20 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:06:16,767 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 370 states and 440 transitions. [2022-04-28 04:06:18,653 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 440 edges. 440 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:06:18,654 INFO L276 IsEmpty]: Start isEmpty. Operand 370 states and 440 transitions. [2022-04-28 04:06:18,654 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-28 04:06:18,654 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:06:18,654 INFO L195 NwaCegarLoop]: trace histogram [12, 12, 10, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:06:18,671 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (61)] Forceful destruction successful, exit code 0 [2022-04-28 04:06:18,869 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable68,61 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:06:18,870 INFO L420 AbstractCegarLoop]: === Iteration 70 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:06:18,870 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:06:18,870 INFO L85 PathProgramCache]: Analyzing trace with hash -66962018, now seen corresponding path program 57 times [2022-04-28 04:06:18,870 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:06:18,870 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [966761575] [2022-04-28 04:06:22,983 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:06:23,092 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:06:23,302 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:06:23,303 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:06:23,306 INFO L85 PathProgramCache]: Analyzing trace with hash 1919083713, now seen corresponding path program 1 times [2022-04-28 04:06:23,306 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:06:23,306 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1770380897] [2022-04-28 04:06:23,306 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:06:23,306 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:06:23,312 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:06:23,366 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:06:23,368 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:06:23,375 INFO L290 TraceCheckUtils]: 0: Hoare triple {145640#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {145632#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:23,375 INFO L290 TraceCheckUtils]: 1: Hoare triple {145632#(<= 200000 ~SIZE~0)} assume true; {145632#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:23,376 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {145632#(<= 200000 ~SIZE~0)} {145627#true} #90#return; {145632#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:23,376 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:06:23,376 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:06:23,378 INFO L290 TraceCheckUtils]: 0: Hoare triple {145627#true} ~cond := #in~cond; {145627#true} is VALID [2022-04-28 04:06:23,378 INFO L290 TraceCheckUtils]: 1: Hoare triple {145627#true} assume !(0 == ~cond); {145627#true} is VALID [2022-04-28 04:06:23,378 INFO L290 TraceCheckUtils]: 2: Hoare triple {145627#true} assume true; {145627#true} is VALID [2022-04-28 04:06:23,378 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {145627#true} {145632#(<= 200000 ~SIZE~0)} #86#return; {145632#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:23,379 INFO L272 TraceCheckUtils]: 0: Hoare triple {145627#true} call ULTIMATE.init(); {145640#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:06:23,379 INFO L290 TraceCheckUtils]: 1: Hoare triple {145640#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {145632#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:23,379 INFO L290 TraceCheckUtils]: 2: Hoare triple {145632#(<= 200000 ~SIZE~0)} assume true; {145632#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:23,380 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {145632#(<= 200000 ~SIZE~0)} {145627#true} #90#return; {145632#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:23,380 INFO L272 TraceCheckUtils]: 4: Hoare triple {145632#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {145632#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:23,380 INFO L290 TraceCheckUtils]: 5: Hoare triple {145632#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {145632#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:23,380 INFO L272 TraceCheckUtils]: 6: Hoare triple {145632#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {145627#true} is VALID [2022-04-28 04:06:23,380 INFO L290 TraceCheckUtils]: 7: Hoare triple {145627#true} ~cond := #in~cond; {145627#true} is VALID [2022-04-28 04:06:23,381 INFO L290 TraceCheckUtils]: 8: Hoare triple {145627#true} assume !(0 == ~cond); {145627#true} is VALID [2022-04-28 04:06:23,381 INFO L290 TraceCheckUtils]: 9: Hoare triple {145627#true} assume true; {145627#true} is VALID [2022-04-28 04:06:23,381 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {145627#true} {145632#(<= 200000 ~SIZE~0)} #86#return; {145632#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:23,381 INFO L290 TraceCheckUtils]: 11: Hoare triple {145632#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {145632#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:23,382 INFO L290 TraceCheckUtils]: 12: Hoare triple {145632#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {145637#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:06:23,382 INFO L290 TraceCheckUtils]: 13: Hoare triple {145637#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [348] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_621 v_main_~c~0_1557)) (.cse1 (= v_main_~c~0_1557 v_main_~c~0_1556)) (.cse2 (= |v_main_#t~post5_816| |v_main_#t~post5_814|)) (.cse3 (= v_main_~st~0_833 v_main_~st~0_832))) (or (and (= v_main_~st~0_832 0) .cse0 (< v_main_~c~0_1556 (+ v_~SIZE~0_560 1)) (< v_main_~c~0_1557 v_main_~c~0_1556)) (and (or (not (< v_main_~c~0_1557 v_~SIZE~0_560)) (not .cse0)) .cse1 .cse2 .cse3) (and (= v_~last~0_621 v_~last~0_621) .cse1 .cse2 .cse3 (= v_~SIZE~0_560 v_~SIZE~0_560)))) InVars {~SIZE~0=v_~SIZE~0_560, main_~c~0=v_main_~c~0_1557, main_#t~post5=|v_main_#t~post5_816|, main_~st~0=v_main_~st~0_833, ~last~0=v_~last~0_621} OutVars{~SIZE~0=v_~SIZE~0_560, main_#t~post5=|v_main_#t~post5_814|, main_~c~0=v_main_~c~0_1556, main_~st~0=v_main_~st~0_832, ~last~0=v_~last~0_621} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {145638#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:06:23,383 INFO L290 TraceCheckUtils]: 14: Hoare triple {145638#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [349] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {145638#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:06:23,383 INFO L290 TraceCheckUtils]: 15: Hoare triple {145638#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [350] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_819| |v_main_#t~post5_815|)) (.cse1 (= v_main_~c~0_1559 v_main_~c~0_1558))) (or (and .cse0 (or (not (< v_main_~c~0_1559 v_~SIZE~0_561)) (not (< v_main_~c~0_1559 v_~last~0_622))) .cse1) (and (< v_main_~c~0_1559 v_main_~c~0_1558) (< v_main_~c~0_1558 (+ v_~SIZE~0_561 1)) (< v_main_~c~0_1558 (+ v_~last~0_622 1))) (and .cse0 .cse1 (= v_~SIZE~0_561 v_~SIZE~0_561) (= v_~last~0_622 v_~last~0_622)))) InVars {~SIZE~0=v_~SIZE~0_561, main_~c~0=v_main_~c~0_1559, main_#t~post5=|v_main_#t~post5_819|, ~last~0=v_~last~0_622} OutVars{~SIZE~0=v_~SIZE~0_561, main_#t~post5=|v_main_#t~post5_815|, main_~c~0=v_main_~c~0_1558, ~last~0=v_~last~0_622} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {145638#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:06:23,384 INFO L290 TraceCheckUtils]: 16: Hoare triple {145638#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [347] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {145639#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:06:23,384 INFO L290 TraceCheckUtils]: 17: Hoare triple {145639#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {145628#false} is VALID [2022-04-28 04:06:23,384 INFO L290 TraceCheckUtils]: 18: Hoare triple {145628#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {145628#false} is VALID [2022-04-28 04:06:23,384 INFO L290 TraceCheckUtils]: 19: Hoare triple {145628#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {145628#false} is VALID [2022-04-28 04:06:23,384 INFO L290 TraceCheckUtils]: 20: Hoare triple {145628#false} assume !(~d~0 == ~SIZE~0); {145628#false} is VALID [2022-04-28 04:06:23,384 INFO L272 TraceCheckUtils]: 21: Hoare triple {145628#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {145628#false} is VALID [2022-04-28 04:06:23,384 INFO L290 TraceCheckUtils]: 22: Hoare triple {145628#false} ~cond := #in~cond; {145628#false} is VALID [2022-04-28 04:06:23,384 INFO L290 TraceCheckUtils]: 23: Hoare triple {145628#false} assume 0 == ~cond; {145628#false} is VALID [2022-04-28 04:06:23,385 INFO L290 TraceCheckUtils]: 24: Hoare triple {145628#false} assume !false; {145628#false} is VALID [2022-04-28 04:06:23,385 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:06:23,385 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:06:23,385 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1770380897] [2022-04-28 04:06:23,385 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1770380897] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:06:23,385 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1723530751] [2022-04-28 04:06:23,385 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:06:23,385 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:06:23,385 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:06:23,386 INFO L229 MonitoredProcess]: Starting monitored process 62 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:06:23,387 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (62)] Waiting until timeout for monitored process [2022-04-28 04:06:23,418 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:06:23,418 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:06:23,424 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:06:23,425 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:06:23,642 INFO L272 TraceCheckUtils]: 0: Hoare triple {145627#true} call ULTIMATE.init(); {145627#true} is VALID [2022-04-28 04:06:23,642 INFO L290 TraceCheckUtils]: 1: Hoare triple {145627#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {145632#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:23,642 INFO L290 TraceCheckUtils]: 2: Hoare triple {145632#(<= 200000 ~SIZE~0)} assume true; {145632#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:23,643 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {145632#(<= 200000 ~SIZE~0)} {145627#true} #90#return; {145632#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:23,643 INFO L272 TraceCheckUtils]: 4: Hoare triple {145632#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {145632#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:23,643 INFO L290 TraceCheckUtils]: 5: Hoare triple {145632#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {145632#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:23,644 INFO L272 TraceCheckUtils]: 6: Hoare triple {145632#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {145632#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:23,644 INFO L290 TraceCheckUtils]: 7: Hoare triple {145632#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {145632#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:23,644 INFO L290 TraceCheckUtils]: 8: Hoare triple {145632#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {145632#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:23,644 INFO L290 TraceCheckUtils]: 9: Hoare triple {145632#(<= 200000 ~SIZE~0)} assume true; {145632#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:23,645 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {145632#(<= 200000 ~SIZE~0)} {145632#(<= 200000 ~SIZE~0)} #86#return; {145632#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:23,645 INFO L290 TraceCheckUtils]: 11: Hoare triple {145632#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {145632#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:23,645 INFO L290 TraceCheckUtils]: 12: Hoare triple {145632#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {145680#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:06:23,646 INFO L290 TraceCheckUtils]: 13: Hoare triple {145680#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [348] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_621 v_main_~c~0_1557)) (.cse1 (= v_main_~c~0_1557 v_main_~c~0_1556)) (.cse2 (= |v_main_#t~post5_816| |v_main_#t~post5_814|)) (.cse3 (= v_main_~st~0_833 v_main_~st~0_832))) (or (and (= v_main_~st~0_832 0) .cse0 (< v_main_~c~0_1556 (+ v_~SIZE~0_560 1)) (< v_main_~c~0_1557 v_main_~c~0_1556)) (and (or (not (< v_main_~c~0_1557 v_~SIZE~0_560)) (not .cse0)) .cse1 .cse2 .cse3) (and (= v_~last~0_621 v_~last~0_621) .cse1 .cse2 .cse3 (= v_~SIZE~0_560 v_~SIZE~0_560)))) InVars {~SIZE~0=v_~SIZE~0_560, main_~c~0=v_main_~c~0_1557, main_#t~post5=|v_main_#t~post5_816|, main_~st~0=v_main_~st~0_833, ~last~0=v_~last~0_621} OutVars{~SIZE~0=v_~SIZE~0_560, main_#t~post5=|v_main_#t~post5_814|, main_~c~0=v_main_~c~0_1556, main_~st~0=v_main_~st~0_832, ~last~0=v_~last~0_621} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {145684#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:06:23,646 INFO L290 TraceCheckUtils]: 14: Hoare triple {145684#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [349] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {145684#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:06:23,647 INFO L290 TraceCheckUtils]: 15: Hoare triple {145684#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [350] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_819| |v_main_#t~post5_815|)) (.cse1 (= v_main_~c~0_1559 v_main_~c~0_1558))) (or (and .cse0 (or (not (< v_main_~c~0_1559 v_~SIZE~0_561)) (not (< v_main_~c~0_1559 v_~last~0_622))) .cse1) (and (< v_main_~c~0_1559 v_main_~c~0_1558) (< v_main_~c~0_1558 (+ v_~SIZE~0_561 1)) (< v_main_~c~0_1558 (+ v_~last~0_622 1))) (and .cse0 .cse1 (= v_~SIZE~0_561 v_~SIZE~0_561) (= v_~last~0_622 v_~last~0_622)))) InVars {~SIZE~0=v_~SIZE~0_561, main_~c~0=v_main_~c~0_1559, main_#t~post5=|v_main_#t~post5_819|, ~last~0=v_~last~0_622} OutVars{~SIZE~0=v_~SIZE~0_561, main_#t~post5=|v_main_#t~post5_815|, main_~c~0=v_main_~c~0_1558, ~last~0=v_~last~0_622} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {145684#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:06:23,648 INFO L290 TraceCheckUtils]: 16: Hoare triple {145684#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [347] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {145694#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:06:23,648 INFO L290 TraceCheckUtils]: 17: Hoare triple {145694#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {145628#false} is VALID [2022-04-28 04:06:23,648 INFO L290 TraceCheckUtils]: 18: Hoare triple {145628#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {145628#false} is VALID [2022-04-28 04:06:23,648 INFO L290 TraceCheckUtils]: 19: Hoare triple {145628#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {145628#false} is VALID [2022-04-28 04:06:23,648 INFO L290 TraceCheckUtils]: 20: Hoare triple {145628#false} assume !(~d~0 == ~SIZE~0); {145628#false} is VALID [2022-04-28 04:06:23,648 INFO L272 TraceCheckUtils]: 21: Hoare triple {145628#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {145628#false} is VALID [2022-04-28 04:06:23,648 INFO L290 TraceCheckUtils]: 22: Hoare triple {145628#false} ~cond := #in~cond; {145628#false} is VALID [2022-04-28 04:06:23,649 INFO L290 TraceCheckUtils]: 23: Hoare triple {145628#false} assume 0 == ~cond; {145628#false} is VALID [2022-04-28 04:06:23,649 INFO L290 TraceCheckUtils]: 24: Hoare triple {145628#false} assume !false; {145628#false} is VALID [2022-04-28 04:06:23,649 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:06:23,649 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:06:23,959 INFO L290 TraceCheckUtils]: 24: Hoare triple {145628#false} assume !false; {145628#false} is VALID [2022-04-28 04:06:23,960 INFO L290 TraceCheckUtils]: 23: Hoare triple {145628#false} assume 0 == ~cond; {145628#false} is VALID [2022-04-28 04:06:23,960 INFO L290 TraceCheckUtils]: 22: Hoare triple {145628#false} ~cond := #in~cond; {145628#false} is VALID [2022-04-28 04:06:23,960 INFO L272 TraceCheckUtils]: 21: Hoare triple {145628#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {145628#false} is VALID [2022-04-28 04:06:23,960 INFO L290 TraceCheckUtils]: 20: Hoare triple {145628#false} assume !(~d~0 == ~SIZE~0); {145628#false} is VALID [2022-04-28 04:06:23,960 INFO L290 TraceCheckUtils]: 19: Hoare triple {145628#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {145628#false} is VALID [2022-04-28 04:06:23,960 INFO L290 TraceCheckUtils]: 18: Hoare triple {145628#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {145628#false} is VALID [2022-04-28 04:06:23,960 INFO L290 TraceCheckUtils]: 17: Hoare triple {145740#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {145628#false} is VALID [2022-04-28 04:06:23,961 INFO L290 TraceCheckUtils]: 16: Hoare triple {145744#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [347] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {145740#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:06:23,961 INFO L290 TraceCheckUtils]: 15: Hoare triple {145744#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [350] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_819| |v_main_#t~post5_815|)) (.cse1 (= v_main_~c~0_1559 v_main_~c~0_1558))) (or (and .cse0 (or (not (< v_main_~c~0_1559 v_~SIZE~0_561)) (not (< v_main_~c~0_1559 v_~last~0_622))) .cse1) (and (< v_main_~c~0_1559 v_main_~c~0_1558) (< v_main_~c~0_1558 (+ v_~SIZE~0_561 1)) (< v_main_~c~0_1558 (+ v_~last~0_622 1))) (and .cse0 .cse1 (= v_~SIZE~0_561 v_~SIZE~0_561) (= v_~last~0_622 v_~last~0_622)))) InVars {~SIZE~0=v_~SIZE~0_561, main_~c~0=v_main_~c~0_1559, main_#t~post5=|v_main_#t~post5_819|, ~last~0=v_~last~0_622} OutVars{~SIZE~0=v_~SIZE~0_561, main_#t~post5=|v_main_#t~post5_815|, main_~c~0=v_main_~c~0_1558, ~last~0=v_~last~0_622} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {145744#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:06:23,962 INFO L290 TraceCheckUtils]: 14: Hoare triple {145744#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [349] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {145744#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:06:23,962 INFO L290 TraceCheckUtils]: 13: Hoare triple {145754#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [348] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_621 v_main_~c~0_1557)) (.cse1 (= v_main_~c~0_1557 v_main_~c~0_1556)) (.cse2 (= |v_main_#t~post5_816| |v_main_#t~post5_814|)) (.cse3 (= v_main_~st~0_833 v_main_~st~0_832))) (or (and (= v_main_~st~0_832 0) .cse0 (< v_main_~c~0_1556 (+ v_~SIZE~0_560 1)) (< v_main_~c~0_1557 v_main_~c~0_1556)) (and (or (not (< v_main_~c~0_1557 v_~SIZE~0_560)) (not .cse0)) .cse1 .cse2 .cse3) (and (= v_~last~0_621 v_~last~0_621) .cse1 .cse2 .cse3 (= v_~SIZE~0_560 v_~SIZE~0_560)))) InVars {~SIZE~0=v_~SIZE~0_560, main_~c~0=v_main_~c~0_1557, main_#t~post5=|v_main_#t~post5_816|, main_~st~0=v_main_~st~0_833, ~last~0=v_~last~0_621} OutVars{~SIZE~0=v_~SIZE~0_560, main_#t~post5=|v_main_#t~post5_814|, main_~c~0=v_main_~c~0_1556, main_~st~0=v_main_~st~0_832, ~last~0=v_~last~0_621} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {145744#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:06:23,963 INFO L290 TraceCheckUtils]: 12: Hoare triple {145758#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {145754#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:06:23,963 INFO L290 TraceCheckUtils]: 11: Hoare triple {145758#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {145758#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:06:23,963 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {145627#true} {145758#(< 1 ~SIZE~0)} #86#return; {145758#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:06:23,963 INFO L290 TraceCheckUtils]: 9: Hoare triple {145627#true} assume true; {145627#true} is VALID [2022-04-28 04:06:23,964 INFO L290 TraceCheckUtils]: 8: Hoare triple {145627#true} assume !(0 == ~cond); {145627#true} is VALID [2022-04-28 04:06:23,964 INFO L290 TraceCheckUtils]: 7: Hoare triple {145627#true} ~cond := #in~cond; {145627#true} is VALID [2022-04-28 04:06:23,964 INFO L272 TraceCheckUtils]: 6: Hoare triple {145758#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {145627#true} is VALID [2022-04-28 04:06:23,964 INFO L290 TraceCheckUtils]: 5: Hoare triple {145758#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {145758#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:06:23,964 INFO L272 TraceCheckUtils]: 4: Hoare triple {145758#(< 1 ~SIZE~0)} call #t~ret7 := main(); {145758#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:06:23,965 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {145758#(< 1 ~SIZE~0)} {145627#true} #90#return; {145758#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:06:23,965 INFO L290 TraceCheckUtils]: 2: Hoare triple {145758#(< 1 ~SIZE~0)} assume true; {145758#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:06:23,965 INFO L290 TraceCheckUtils]: 1: Hoare triple {145627#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {145758#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:06:23,965 INFO L272 TraceCheckUtils]: 0: Hoare triple {145627#true} call ULTIMATE.init(); {145627#true} is VALID [2022-04-28 04:06:23,965 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:06:23,966 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1723530751] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:06:23,966 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:06:23,966 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:06:24,727 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:06:24,727 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [966761575] [2022-04-28 04:06:24,727 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [966761575] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:06:24,727 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:06:24,727 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [22] imperfect sequences [] total 22 [2022-04-28 04:06:24,727 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1050705900] [2022-04-28 04:06:24,727 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:06:24,728 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 22 states have (on average 2.3636363636363638) internal successors, (52), 21 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 58 [2022-04-28 04:06:24,728 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:06:24,728 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 22 states, 22 states have (on average 2.3636363636363638) internal successors, (52), 21 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:06:24,768 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:06:24,768 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-04-28 04:06:24,768 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:06:24,769 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-04-28 04:06:24,769 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=179, Invalid=751, Unknown=0, NotChecked=0, Total=930 [2022-04-28 04:06:24,769 INFO L87 Difference]: Start difference. First operand 370 states and 440 transitions. Second operand has 22 states, 22 states have (on average 2.3636363636363638) internal successors, (52), 21 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:06:29,923 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:06:29,923 INFO L93 Difference]: Finished difference Result 760 states and 891 transitions. [2022-04-28 04:06:29,923 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 22 states. [2022-04-28 04:06:29,923 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 22 states have (on average 2.3636363636363638) internal successors, (52), 21 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 58 [2022-04-28 04:06:29,923 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:06:29,923 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 22 states have (on average 2.3636363636363638) internal successors, (52), 21 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:06:29,924 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 108 transitions. [2022-04-28 04:06:29,924 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 22 states have (on average 2.3636363636363638) internal successors, (52), 21 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:06:29,924 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 108 transitions. [2022-04-28 04:06:29,924 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 108 transitions. [2022-04-28 04:06:30,001 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 108 edges. 108 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:06:30,010 INFO L225 Difference]: With dead ends: 760 [2022-04-28 04:06:30,010 INFO L226 Difference]: Without dead ends: 472 [2022-04-28 04:06:30,011 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 106 GetRequests, 54 SyntacticMatches, 20 SemanticMatches, 32 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 794 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=210, Invalid=912, Unknown=0, NotChecked=0, Total=1122 [2022-04-28 04:06:30,011 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 53 mSDsluCounter, 25 mSDsCounter, 0 mSdLazyCounter, 1312 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 54 SdHoareTripleChecker+Valid, 49 SdHoareTripleChecker+Invalid, 1326 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 1312 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-28 04:06:30,011 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [54 Valid, 49 Invalid, 1326 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 1312 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-28 04:06:30,012 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 472 states. [2022-04-28 04:06:32,151 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 472 to 370. [2022-04-28 04:06:32,151 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:06:32,151 INFO L82 GeneralOperation]: Start isEquivalent. First operand 472 states. Second operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:06:32,151 INFO L74 IsIncluded]: Start isIncluded. First operand 472 states. Second operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:06:32,152 INFO L87 Difference]: Start difference. First operand 472 states. Second operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:06:32,159 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:06:32,159 INFO L93 Difference]: Finished difference Result 472 states and 546 transitions. [2022-04-28 04:06:32,159 INFO L276 IsEmpty]: Start isEmpty. Operand 472 states and 546 transitions. [2022-04-28 04:06:32,159 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:06:32,159 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:06:32,160 INFO L74 IsIncluded]: Start isIncluded. First operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 472 states. [2022-04-28 04:06:32,160 INFO L87 Difference]: Start difference. First operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 472 states. [2022-04-28 04:06:32,167 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:06:32,167 INFO L93 Difference]: Finished difference Result 472 states and 546 transitions. [2022-04-28 04:06:32,167 INFO L276 IsEmpty]: Start isEmpty. Operand 472 states and 546 transitions. [2022-04-28 04:06:32,168 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:06:32,168 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:06:32,168 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:06:32,168 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:06:32,168 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:06:32,173 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 370 states to 370 states and 440 transitions. [2022-04-28 04:06:32,173 INFO L78 Accepts]: Start accepts. Automaton has 370 states and 440 transitions. Word has length 58 [2022-04-28 04:06:32,174 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:06:32,174 INFO L495 AbstractCegarLoop]: Abstraction has 370 states and 440 transitions. [2022-04-28 04:06:32,174 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 22 states, 22 states have (on average 2.3636363636363638) internal successors, (52), 21 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:06:32,174 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 370 states and 440 transitions. [2022-04-28 04:06:34,737 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 440 edges. 440 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:06:34,737 INFO L276 IsEmpty]: Start isEmpty. Operand 370 states and 440 transitions. [2022-04-28 04:06:34,737 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-28 04:06:34,738 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:06:34,738 INFO L195 NwaCegarLoop]: trace histogram [12, 12, 9, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:06:34,753 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (62)] Forceful destruction successful, exit code 0 [2022-04-28 04:06:34,938 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 62 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable69 [2022-04-28 04:06:34,938 INFO L420 AbstractCegarLoop]: === Iteration 71 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:06:34,938 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:06:34,938 INFO L85 PathProgramCache]: Analyzing trace with hash -1096321316, now seen corresponding path program 58 times [2022-04-28 04:06:34,938 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:06:34,939 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2064726463] [2022-04-28 04:06:38,005 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:06:38,118 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:06:42,239 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:06:42,347 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:06:42,349 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:06:42,352 INFO L85 PathProgramCache]: Analyzing trace with hash 116639169, now seen corresponding path program 1 times [2022-04-28 04:06:42,352 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:06:42,352 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1058010992] [2022-04-28 04:06:42,352 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:06:42,352 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:06:42,358 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:06:42,403 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:06:42,404 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:06:42,407 INFO L290 TraceCheckUtils]: 0: Hoare triple {149038#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {149030#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:42,408 INFO L290 TraceCheckUtils]: 1: Hoare triple {149030#(<= 200000 ~SIZE~0)} assume true; {149030#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:42,408 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {149030#(<= 200000 ~SIZE~0)} {149025#true} #90#return; {149030#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:42,408 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:06:42,409 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:06:42,410 INFO L290 TraceCheckUtils]: 0: Hoare triple {149025#true} ~cond := #in~cond; {149025#true} is VALID [2022-04-28 04:06:42,410 INFO L290 TraceCheckUtils]: 1: Hoare triple {149025#true} assume !(0 == ~cond); {149025#true} is VALID [2022-04-28 04:06:42,410 INFO L290 TraceCheckUtils]: 2: Hoare triple {149025#true} assume true; {149025#true} is VALID [2022-04-28 04:06:42,410 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {149025#true} {149030#(<= 200000 ~SIZE~0)} #86#return; {149030#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:42,411 INFO L272 TraceCheckUtils]: 0: Hoare triple {149025#true} call ULTIMATE.init(); {149038#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:06:42,411 INFO L290 TraceCheckUtils]: 1: Hoare triple {149038#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {149030#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:42,412 INFO L290 TraceCheckUtils]: 2: Hoare triple {149030#(<= 200000 ~SIZE~0)} assume true; {149030#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:42,412 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {149030#(<= 200000 ~SIZE~0)} {149025#true} #90#return; {149030#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:42,412 INFO L272 TraceCheckUtils]: 4: Hoare triple {149030#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {149030#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:42,412 INFO L290 TraceCheckUtils]: 5: Hoare triple {149030#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {149030#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:42,413 INFO L272 TraceCheckUtils]: 6: Hoare triple {149030#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {149025#true} is VALID [2022-04-28 04:06:42,413 INFO L290 TraceCheckUtils]: 7: Hoare triple {149025#true} ~cond := #in~cond; {149025#true} is VALID [2022-04-28 04:06:42,413 INFO L290 TraceCheckUtils]: 8: Hoare triple {149025#true} assume !(0 == ~cond); {149025#true} is VALID [2022-04-28 04:06:42,413 INFO L290 TraceCheckUtils]: 9: Hoare triple {149025#true} assume true; {149025#true} is VALID [2022-04-28 04:06:42,413 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {149025#true} {149030#(<= 200000 ~SIZE~0)} #86#return; {149030#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:42,413 INFO L290 TraceCheckUtils]: 11: Hoare triple {149030#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {149030#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:42,414 INFO L290 TraceCheckUtils]: 12: Hoare triple {149030#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {149035#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:06:42,414 INFO L290 TraceCheckUtils]: 13: Hoare triple {149035#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [352] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~st~0_852 v_main_~st~0_851)) (.cse2 (= |v_main_#t~post5_829| |v_main_#t~post5_827|)) (.cse3 (= v_main_~c~0_1586 v_main_~c~0_1585)) (.cse1 (<= v_~last~0_631 v_main_~c~0_1586))) (or (and .cse0 (or (not .cse1) (not (< v_main_~c~0_1586 v_~SIZE~0_569))) .cse2 .cse3) (and .cse0 (= v_~SIZE~0_569 v_~SIZE~0_569) .cse2 .cse3 (= v_~last~0_631 v_~last~0_631)) (and (< v_main_~c~0_1586 v_main_~c~0_1585) (= v_main_~st~0_851 0) .cse1 (< v_main_~c~0_1585 (+ v_~SIZE~0_569 1))))) InVars {~SIZE~0=v_~SIZE~0_569, main_~c~0=v_main_~c~0_1586, main_#t~post5=|v_main_#t~post5_829|, main_~st~0=v_main_~st~0_852, ~last~0=v_~last~0_631} OutVars{~SIZE~0=v_~SIZE~0_569, main_#t~post5=|v_main_#t~post5_827|, main_~c~0=v_main_~c~0_1585, main_~st~0=v_main_~st~0_851, ~last~0=v_~last~0_631} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {149036#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:06:42,415 INFO L290 TraceCheckUtils]: 14: Hoare triple {149036#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [353] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {149036#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:06:42,415 INFO L290 TraceCheckUtils]: 15: Hoare triple {149036#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [354] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1588 v_main_~c~0_1587))) (or (and (= |v_main_#t~post5_828| |v_main_#t~post5_832|) .cse0 (or (not (< v_main_~c~0_1588 v_~SIZE~0_570)) (not (< v_main_~c~0_1588 v_~last~0_632)))) (and (< v_main_~c~0_1587 (+ v_~SIZE~0_570 1)) (< v_main_~c~0_1587 (+ v_~last~0_632 1)) (< v_main_~c~0_1588 v_main_~c~0_1587)) (and (= v_~SIZE~0_570 v_~SIZE~0_570) (= v_~last~0_632 v_~last~0_632) (= |v_main_#t~post5_832| |v_main_#t~post5_828|) .cse0))) InVars {~SIZE~0=v_~SIZE~0_570, main_~c~0=v_main_~c~0_1588, main_#t~post5=|v_main_#t~post5_832|, ~last~0=v_~last~0_632} OutVars{~SIZE~0=v_~SIZE~0_570, main_#t~post5=|v_main_#t~post5_828|, main_~c~0=v_main_~c~0_1587, ~last~0=v_~last~0_632} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {149036#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:06:42,416 INFO L290 TraceCheckUtils]: 16: Hoare triple {149036#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [351] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {149037#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:06:42,416 INFO L290 TraceCheckUtils]: 17: Hoare triple {149037#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {149026#false} is VALID [2022-04-28 04:06:42,416 INFO L290 TraceCheckUtils]: 18: Hoare triple {149026#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {149026#false} is VALID [2022-04-28 04:06:42,416 INFO L290 TraceCheckUtils]: 19: Hoare triple {149026#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {149026#false} is VALID [2022-04-28 04:06:42,416 INFO L290 TraceCheckUtils]: 20: Hoare triple {149026#false} assume !(~d~0 == ~SIZE~0); {149026#false} is VALID [2022-04-28 04:06:42,416 INFO L272 TraceCheckUtils]: 21: Hoare triple {149026#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {149026#false} is VALID [2022-04-28 04:06:42,416 INFO L290 TraceCheckUtils]: 22: Hoare triple {149026#false} ~cond := #in~cond; {149026#false} is VALID [2022-04-28 04:06:42,416 INFO L290 TraceCheckUtils]: 23: Hoare triple {149026#false} assume 0 == ~cond; {149026#false} is VALID [2022-04-28 04:06:42,416 INFO L290 TraceCheckUtils]: 24: Hoare triple {149026#false} assume !false; {149026#false} is VALID [2022-04-28 04:06:42,417 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:06:42,417 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:06:42,417 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1058010992] [2022-04-28 04:06:42,417 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1058010992] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:06:42,417 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1631680634] [2022-04-28 04:06:42,417 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:06:42,417 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:06:42,417 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:06:42,418 INFO L229 MonitoredProcess]: Starting monitored process 63 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:06:42,418 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (63)] Waiting until timeout for monitored process [2022-04-28 04:06:42,448 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:06:42,448 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:06:42,455 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:06:42,460 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:06:42,682 INFO L272 TraceCheckUtils]: 0: Hoare triple {149025#true} call ULTIMATE.init(); {149025#true} is VALID [2022-04-28 04:06:42,682 INFO L290 TraceCheckUtils]: 1: Hoare triple {149025#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {149030#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:42,683 INFO L290 TraceCheckUtils]: 2: Hoare triple {149030#(<= 200000 ~SIZE~0)} assume true; {149030#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:42,683 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {149030#(<= 200000 ~SIZE~0)} {149025#true} #90#return; {149030#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:42,683 INFO L272 TraceCheckUtils]: 4: Hoare triple {149030#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {149030#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:42,684 INFO L290 TraceCheckUtils]: 5: Hoare triple {149030#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {149030#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:42,684 INFO L272 TraceCheckUtils]: 6: Hoare triple {149030#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {149030#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:42,684 INFO L290 TraceCheckUtils]: 7: Hoare triple {149030#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {149030#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:42,684 INFO L290 TraceCheckUtils]: 8: Hoare triple {149030#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {149030#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:42,685 INFO L290 TraceCheckUtils]: 9: Hoare triple {149030#(<= 200000 ~SIZE~0)} assume true; {149030#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:42,685 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {149030#(<= 200000 ~SIZE~0)} {149030#(<= 200000 ~SIZE~0)} #86#return; {149030#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:42,685 INFO L290 TraceCheckUtils]: 11: Hoare triple {149030#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {149030#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:42,686 INFO L290 TraceCheckUtils]: 12: Hoare triple {149030#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {149078#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:06:42,687 INFO L290 TraceCheckUtils]: 13: Hoare triple {149078#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [352] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~st~0_852 v_main_~st~0_851)) (.cse2 (= |v_main_#t~post5_829| |v_main_#t~post5_827|)) (.cse3 (= v_main_~c~0_1586 v_main_~c~0_1585)) (.cse1 (<= v_~last~0_631 v_main_~c~0_1586))) (or (and .cse0 (or (not .cse1) (not (< v_main_~c~0_1586 v_~SIZE~0_569))) .cse2 .cse3) (and .cse0 (= v_~SIZE~0_569 v_~SIZE~0_569) .cse2 .cse3 (= v_~last~0_631 v_~last~0_631)) (and (< v_main_~c~0_1586 v_main_~c~0_1585) (= v_main_~st~0_851 0) .cse1 (< v_main_~c~0_1585 (+ v_~SIZE~0_569 1))))) InVars {~SIZE~0=v_~SIZE~0_569, main_~c~0=v_main_~c~0_1586, main_#t~post5=|v_main_#t~post5_829|, main_~st~0=v_main_~st~0_852, ~last~0=v_~last~0_631} OutVars{~SIZE~0=v_~SIZE~0_569, main_#t~post5=|v_main_#t~post5_827|, main_~c~0=v_main_~c~0_1585, main_~st~0=v_main_~st~0_851, ~last~0=v_~last~0_631} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {149082#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:06:42,687 INFO L290 TraceCheckUtils]: 14: Hoare triple {149082#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [353] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {149082#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:06:42,688 INFO L290 TraceCheckUtils]: 15: Hoare triple {149082#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [354] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1588 v_main_~c~0_1587))) (or (and (= |v_main_#t~post5_828| |v_main_#t~post5_832|) .cse0 (or (not (< v_main_~c~0_1588 v_~SIZE~0_570)) (not (< v_main_~c~0_1588 v_~last~0_632)))) (and (< v_main_~c~0_1587 (+ v_~SIZE~0_570 1)) (< v_main_~c~0_1587 (+ v_~last~0_632 1)) (< v_main_~c~0_1588 v_main_~c~0_1587)) (and (= v_~SIZE~0_570 v_~SIZE~0_570) (= v_~last~0_632 v_~last~0_632) (= |v_main_#t~post5_832| |v_main_#t~post5_828|) .cse0))) InVars {~SIZE~0=v_~SIZE~0_570, main_~c~0=v_main_~c~0_1588, main_#t~post5=|v_main_#t~post5_832|, ~last~0=v_~last~0_632} OutVars{~SIZE~0=v_~SIZE~0_570, main_#t~post5=|v_main_#t~post5_828|, main_~c~0=v_main_~c~0_1587, ~last~0=v_~last~0_632} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {149082#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:06:42,688 INFO L290 TraceCheckUtils]: 16: Hoare triple {149082#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [351] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {149092#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:06:42,689 INFO L290 TraceCheckUtils]: 17: Hoare triple {149092#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {149026#false} is VALID [2022-04-28 04:06:42,689 INFO L290 TraceCheckUtils]: 18: Hoare triple {149026#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {149026#false} is VALID [2022-04-28 04:06:42,689 INFO L290 TraceCheckUtils]: 19: Hoare triple {149026#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {149026#false} is VALID [2022-04-28 04:06:42,689 INFO L290 TraceCheckUtils]: 20: Hoare triple {149026#false} assume !(~d~0 == ~SIZE~0); {149026#false} is VALID [2022-04-28 04:06:42,689 INFO L272 TraceCheckUtils]: 21: Hoare triple {149026#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {149026#false} is VALID [2022-04-28 04:06:42,689 INFO L290 TraceCheckUtils]: 22: Hoare triple {149026#false} ~cond := #in~cond; {149026#false} is VALID [2022-04-28 04:06:42,689 INFO L290 TraceCheckUtils]: 23: Hoare triple {149026#false} assume 0 == ~cond; {149026#false} is VALID [2022-04-28 04:06:42,689 INFO L290 TraceCheckUtils]: 24: Hoare triple {149026#false} assume !false; {149026#false} is VALID [2022-04-28 04:06:42,689 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:06:42,690 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:06:43,004 INFO L290 TraceCheckUtils]: 24: Hoare triple {149026#false} assume !false; {149026#false} is VALID [2022-04-28 04:06:43,004 INFO L290 TraceCheckUtils]: 23: Hoare triple {149026#false} assume 0 == ~cond; {149026#false} is VALID [2022-04-28 04:06:43,004 INFO L290 TraceCheckUtils]: 22: Hoare triple {149026#false} ~cond := #in~cond; {149026#false} is VALID [2022-04-28 04:06:43,004 INFO L272 TraceCheckUtils]: 21: Hoare triple {149026#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {149026#false} is VALID [2022-04-28 04:06:43,004 INFO L290 TraceCheckUtils]: 20: Hoare triple {149026#false} assume !(~d~0 == ~SIZE~0); {149026#false} is VALID [2022-04-28 04:06:43,004 INFO L290 TraceCheckUtils]: 19: Hoare triple {149026#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {149026#false} is VALID [2022-04-28 04:06:43,004 INFO L290 TraceCheckUtils]: 18: Hoare triple {149026#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {149026#false} is VALID [2022-04-28 04:06:43,005 INFO L290 TraceCheckUtils]: 17: Hoare triple {149138#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {149026#false} is VALID [2022-04-28 04:06:43,005 INFO L290 TraceCheckUtils]: 16: Hoare triple {149142#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [351] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {149138#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:06:43,006 INFO L290 TraceCheckUtils]: 15: Hoare triple {149142#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [354] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1588 v_main_~c~0_1587))) (or (and (= |v_main_#t~post5_828| |v_main_#t~post5_832|) .cse0 (or (not (< v_main_~c~0_1588 v_~SIZE~0_570)) (not (< v_main_~c~0_1588 v_~last~0_632)))) (and (< v_main_~c~0_1587 (+ v_~SIZE~0_570 1)) (< v_main_~c~0_1587 (+ v_~last~0_632 1)) (< v_main_~c~0_1588 v_main_~c~0_1587)) (and (= v_~SIZE~0_570 v_~SIZE~0_570) (= v_~last~0_632 v_~last~0_632) (= |v_main_#t~post5_832| |v_main_#t~post5_828|) .cse0))) InVars {~SIZE~0=v_~SIZE~0_570, main_~c~0=v_main_~c~0_1588, main_#t~post5=|v_main_#t~post5_832|, ~last~0=v_~last~0_632} OutVars{~SIZE~0=v_~SIZE~0_570, main_#t~post5=|v_main_#t~post5_828|, main_~c~0=v_main_~c~0_1587, ~last~0=v_~last~0_632} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {149142#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:06:43,006 INFO L290 TraceCheckUtils]: 14: Hoare triple {149142#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [353] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {149142#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:06:43,007 INFO L290 TraceCheckUtils]: 13: Hoare triple {149152#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [352] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~st~0_852 v_main_~st~0_851)) (.cse2 (= |v_main_#t~post5_829| |v_main_#t~post5_827|)) (.cse3 (= v_main_~c~0_1586 v_main_~c~0_1585)) (.cse1 (<= v_~last~0_631 v_main_~c~0_1586))) (or (and .cse0 (or (not .cse1) (not (< v_main_~c~0_1586 v_~SIZE~0_569))) .cse2 .cse3) (and .cse0 (= v_~SIZE~0_569 v_~SIZE~0_569) .cse2 .cse3 (= v_~last~0_631 v_~last~0_631)) (and (< v_main_~c~0_1586 v_main_~c~0_1585) (= v_main_~st~0_851 0) .cse1 (< v_main_~c~0_1585 (+ v_~SIZE~0_569 1))))) InVars {~SIZE~0=v_~SIZE~0_569, main_~c~0=v_main_~c~0_1586, main_#t~post5=|v_main_#t~post5_829|, main_~st~0=v_main_~st~0_852, ~last~0=v_~last~0_631} OutVars{~SIZE~0=v_~SIZE~0_569, main_#t~post5=|v_main_#t~post5_827|, main_~c~0=v_main_~c~0_1585, main_~st~0=v_main_~st~0_851, ~last~0=v_~last~0_631} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {149142#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:06:43,007 INFO L290 TraceCheckUtils]: 12: Hoare triple {149156#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {149152#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:06:43,007 INFO L290 TraceCheckUtils]: 11: Hoare triple {149156#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {149156#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:06:43,008 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {149025#true} {149156#(< 1 ~SIZE~0)} #86#return; {149156#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:06:43,008 INFO L290 TraceCheckUtils]: 9: Hoare triple {149025#true} assume true; {149025#true} is VALID [2022-04-28 04:06:43,008 INFO L290 TraceCheckUtils]: 8: Hoare triple {149025#true} assume !(0 == ~cond); {149025#true} is VALID [2022-04-28 04:06:43,008 INFO L290 TraceCheckUtils]: 7: Hoare triple {149025#true} ~cond := #in~cond; {149025#true} is VALID [2022-04-28 04:06:43,008 INFO L272 TraceCheckUtils]: 6: Hoare triple {149156#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {149025#true} is VALID [2022-04-28 04:06:43,008 INFO L290 TraceCheckUtils]: 5: Hoare triple {149156#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {149156#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:06:43,008 INFO L272 TraceCheckUtils]: 4: Hoare triple {149156#(< 1 ~SIZE~0)} call #t~ret7 := main(); {149156#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:06:43,009 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {149156#(< 1 ~SIZE~0)} {149025#true} #90#return; {149156#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:06:43,009 INFO L290 TraceCheckUtils]: 2: Hoare triple {149156#(< 1 ~SIZE~0)} assume true; {149156#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:06:43,009 INFO L290 TraceCheckUtils]: 1: Hoare triple {149025#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {149156#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:06:43,010 INFO L272 TraceCheckUtils]: 0: Hoare triple {149025#true} call ULTIMATE.init(); {149025#true} is VALID [2022-04-28 04:06:43,010 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:06:43,010 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1631680634] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:06:43,010 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:06:43,010 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:06:43,765 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:06:43,765 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2064726463] [2022-04-28 04:06:43,766 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2064726463] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:06:43,766 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:06:43,766 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [23] imperfect sequences [] total 23 [2022-04-28 04:06:43,766 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1174202972] [2022-04-28 04:06:43,766 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:06:43,766 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 23 states have (on average 2.260869565217391) internal successors, (52), 22 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 58 [2022-04-28 04:06:43,766 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:06:43,766 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 23 states, 23 states have (on average 2.260869565217391) internal successors, (52), 22 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:06:43,806 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:06:43,806 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 23 states [2022-04-28 04:06:43,806 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:06:43,806 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2022-04-28 04:06:43,806 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=194, Invalid=798, Unknown=0, NotChecked=0, Total=992 [2022-04-28 04:06:43,807 INFO L87 Difference]: Start difference. First operand 370 states and 440 transitions. Second operand has 23 states, 23 states have (on average 2.260869565217391) internal successors, (52), 22 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:06:48,770 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:06:48,771 INFO L93 Difference]: Finished difference Result 751 states and 882 transitions. [2022-04-28 04:06:48,771 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2022-04-28 04:06:48,771 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 23 states have (on average 2.260869565217391) internal successors, (52), 22 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 58 [2022-04-28 04:06:48,771 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:06:48,771 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 23 states have (on average 2.260869565217391) internal successors, (52), 22 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:06:48,771 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 109 transitions. [2022-04-28 04:06:48,772 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 23 states have (on average 2.260869565217391) internal successors, (52), 22 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:06:48,772 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 109 transitions. [2022-04-28 04:06:48,772 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 23 states and 109 transitions. [2022-04-28 04:06:48,842 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 109 edges. 109 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:06:48,851 INFO L225 Difference]: With dead ends: 751 [2022-04-28 04:06:48,851 INFO L226 Difference]: Without dead ends: 463 [2022-04-28 04:06:48,851 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 106 GetRequests, 54 SyntacticMatches, 19 SemanticMatches, 33 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 841 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=227, Invalid=963, Unknown=0, NotChecked=0, Total=1190 [2022-04-28 04:06:48,851 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 54 mSDsluCounter, 30 mSDsCounter, 0 mSdLazyCounter, 1271 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 55 SdHoareTripleChecker+Valid, 54 SdHoareTripleChecker+Invalid, 1286 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 1271 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-28 04:06:48,852 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [55 Valid, 54 Invalid, 1286 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 1271 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-28 04:06:48,852 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 463 states. [2022-04-28 04:06:50,917 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 463 to 370. [2022-04-28 04:06:50,918 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:06:50,918 INFO L82 GeneralOperation]: Start isEquivalent. First operand 463 states. Second operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:06:50,918 INFO L74 IsIncluded]: Start isIncluded. First operand 463 states. Second operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:06:50,919 INFO L87 Difference]: Start difference. First operand 463 states. Second operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:06:50,926 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:06:50,926 INFO L93 Difference]: Finished difference Result 463 states and 537 transitions. [2022-04-28 04:06:50,926 INFO L276 IsEmpty]: Start isEmpty. Operand 463 states and 537 transitions. [2022-04-28 04:06:50,926 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:06:50,926 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:06:50,926 INFO L74 IsIncluded]: Start isIncluded. First operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 463 states. [2022-04-28 04:06:50,927 INFO L87 Difference]: Start difference. First operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 463 states. [2022-04-28 04:06:50,933 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:06:50,934 INFO L93 Difference]: Finished difference Result 463 states and 537 transitions. [2022-04-28 04:06:50,934 INFO L276 IsEmpty]: Start isEmpty. Operand 463 states and 537 transitions. [2022-04-28 04:06:50,934 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:06:50,934 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:06:50,934 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:06:50,934 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:06:50,934 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:06:50,940 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 370 states to 370 states and 440 transitions. [2022-04-28 04:06:50,940 INFO L78 Accepts]: Start accepts. Automaton has 370 states and 440 transitions. Word has length 58 [2022-04-28 04:06:50,940 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:06:50,940 INFO L495 AbstractCegarLoop]: Abstraction has 370 states and 440 transitions. [2022-04-28 04:06:50,940 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 23 states, 23 states have (on average 2.260869565217391) internal successors, (52), 22 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:06:50,940 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 370 states and 440 transitions. [2022-04-28 04:06:53,215 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 440 edges. 440 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:06:53,215 INFO L276 IsEmpty]: Start isEmpty. Operand 370 states and 440 transitions. [2022-04-28 04:06:53,215 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-28 04:06:53,215 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:06:53,215 INFO L195 NwaCegarLoop]: trace histogram [12, 12, 8, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:06:53,231 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (63)] Forceful destruction successful, exit code 0 [2022-04-28 04:06:53,415 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable70,63 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:06:53,416 INFO L420 AbstractCegarLoop]: === Iteration 72 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:06:53,416 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:06:53,416 INFO L85 PathProgramCache]: Analyzing trace with hash -1940326818, now seen corresponding path program 59 times [2022-04-28 04:06:53,416 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:06:53,416 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [255152498] [2022-04-28 04:06:57,541 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:06:57,655 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:06:57,878 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:06:57,879 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:06:57,882 INFO L85 PathProgramCache]: Analyzing trace with hash -1685805375, now seen corresponding path program 1 times [2022-04-28 04:06:57,882 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:06:57,882 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [958710135] [2022-04-28 04:06:57,882 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:06:57,882 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:06:57,888 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:06:57,931 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:06:57,932 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:06:57,935 INFO L290 TraceCheckUtils]: 0: Hoare triple {152401#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {152393#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:57,935 INFO L290 TraceCheckUtils]: 1: Hoare triple {152393#(<= 200000 ~SIZE~0)} assume true; {152393#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:57,936 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {152393#(<= 200000 ~SIZE~0)} {152388#true} #90#return; {152393#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:57,936 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:06:57,936 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:06:57,937 INFO L290 TraceCheckUtils]: 0: Hoare triple {152388#true} ~cond := #in~cond; {152388#true} is VALID [2022-04-28 04:06:57,937 INFO L290 TraceCheckUtils]: 1: Hoare triple {152388#true} assume !(0 == ~cond); {152388#true} is VALID [2022-04-28 04:06:57,938 INFO L290 TraceCheckUtils]: 2: Hoare triple {152388#true} assume true; {152388#true} is VALID [2022-04-28 04:06:57,938 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {152388#true} {152393#(<= 200000 ~SIZE~0)} #86#return; {152393#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:57,938 INFO L272 TraceCheckUtils]: 0: Hoare triple {152388#true} call ULTIMATE.init(); {152401#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:06:57,939 INFO L290 TraceCheckUtils]: 1: Hoare triple {152401#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {152393#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:57,939 INFO L290 TraceCheckUtils]: 2: Hoare triple {152393#(<= 200000 ~SIZE~0)} assume true; {152393#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:57,939 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {152393#(<= 200000 ~SIZE~0)} {152388#true} #90#return; {152393#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:57,940 INFO L272 TraceCheckUtils]: 4: Hoare triple {152393#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {152393#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:57,940 INFO L290 TraceCheckUtils]: 5: Hoare triple {152393#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {152393#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:57,940 INFO L272 TraceCheckUtils]: 6: Hoare triple {152393#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {152388#true} is VALID [2022-04-28 04:06:57,940 INFO L290 TraceCheckUtils]: 7: Hoare triple {152388#true} ~cond := #in~cond; {152388#true} is VALID [2022-04-28 04:06:57,940 INFO L290 TraceCheckUtils]: 8: Hoare triple {152388#true} assume !(0 == ~cond); {152388#true} is VALID [2022-04-28 04:06:57,940 INFO L290 TraceCheckUtils]: 9: Hoare triple {152388#true} assume true; {152388#true} is VALID [2022-04-28 04:06:57,941 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {152388#true} {152393#(<= 200000 ~SIZE~0)} #86#return; {152393#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:57,941 INFO L290 TraceCheckUtils]: 11: Hoare triple {152393#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {152393#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:57,941 INFO L290 TraceCheckUtils]: 12: Hoare triple {152393#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {152398#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:06:57,942 INFO L290 TraceCheckUtils]: 13: Hoare triple {152398#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [356] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_641 v_main_~c~0_1615)) (.cse1 (= |v_main_#t~post5_842| |v_main_#t~post5_840|)) (.cse2 (= v_main_~c~0_1615 v_main_~c~0_1614)) (.cse3 (= v_main_~st~0_870 v_main_~st~0_869))) (or (and (< v_main_~c~0_1614 (+ v_~SIZE~0_578 1)) (= v_main_~st~0_869 0) .cse0 (< v_main_~c~0_1615 v_main_~c~0_1614)) (and .cse1 .cse2 (or (not .cse0) (not (< v_main_~c~0_1615 v_~SIZE~0_578))) .cse3) (and (= v_~SIZE~0_578 v_~SIZE~0_578) .cse1 .cse2 (= v_~last~0_641 v_~last~0_641) .cse3))) InVars {~SIZE~0=v_~SIZE~0_578, main_~c~0=v_main_~c~0_1615, main_#t~post5=|v_main_#t~post5_842|, main_~st~0=v_main_~st~0_870, ~last~0=v_~last~0_641} OutVars{~SIZE~0=v_~SIZE~0_578, main_#t~post5=|v_main_#t~post5_840|, main_~c~0=v_main_~c~0_1614, main_~st~0=v_main_~st~0_869, ~last~0=v_~last~0_641} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {152399#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:06:57,942 INFO L290 TraceCheckUtils]: 14: Hoare triple {152399#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [357] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {152399#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:06:57,943 INFO L290 TraceCheckUtils]: 15: Hoare triple {152399#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [358] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1617 v_main_~c~0_1616)) (.cse1 (= |v_main_#t~post5_845| |v_main_#t~post5_841|))) (or (and (= v_~last~0_642 v_~last~0_642) (= v_~SIZE~0_579 v_~SIZE~0_579) .cse0 .cse1) (and .cse0 (or (not (< v_main_~c~0_1617 v_~SIZE~0_579)) (not (< v_main_~c~0_1617 v_~last~0_642))) .cse1) (and (< v_main_~c~0_1616 (+ v_~last~0_642 1)) (< v_main_~c~0_1616 (+ v_~SIZE~0_579 1)) (< v_main_~c~0_1617 v_main_~c~0_1616)))) InVars {~SIZE~0=v_~SIZE~0_579, main_~c~0=v_main_~c~0_1617, main_#t~post5=|v_main_#t~post5_845|, ~last~0=v_~last~0_642} OutVars{~SIZE~0=v_~SIZE~0_579, main_#t~post5=|v_main_#t~post5_841|, main_~c~0=v_main_~c~0_1616, ~last~0=v_~last~0_642} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {152399#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:06:57,943 INFO L290 TraceCheckUtils]: 16: Hoare triple {152399#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [355] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {152400#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:06:57,944 INFO L290 TraceCheckUtils]: 17: Hoare triple {152400#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {152389#false} is VALID [2022-04-28 04:06:57,944 INFO L290 TraceCheckUtils]: 18: Hoare triple {152389#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {152389#false} is VALID [2022-04-28 04:06:57,944 INFO L290 TraceCheckUtils]: 19: Hoare triple {152389#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {152389#false} is VALID [2022-04-28 04:06:57,944 INFO L290 TraceCheckUtils]: 20: Hoare triple {152389#false} assume !(~d~0 == ~SIZE~0); {152389#false} is VALID [2022-04-28 04:06:57,944 INFO L272 TraceCheckUtils]: 21: Hoare triple {152389#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {152389#false} is VALID [2022-04-28 04:06:57,944 INFO L290 TraceCheckUtils]: 22: Hoare triple {152389#false} ~cond := #in~cond; {152389#false} is VALID [2022-04-28 04:06:57,944 INFO L290 TraceCheckUtils]: 23: Hoare triple {152389#false} assume 0 == ~cond; {152389#false} is VALID [2022-04-28 04:06:57,944 INFO L290 TraceCheckUtils]: 24: Hoare triple {152389#false} assume !false; {152389#false} is VALID [2022-04-28 04:06:57,944 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:06:57,944 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:06:57,944 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [958710135] [2022-04-28 04:06:57,944 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [958710135] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:06:57,944 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [720009916] [2022-04-28 04:06:57,945 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:06:57,945 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:06:57,945 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:06:57,945 INFO L229 MonitoredProcess]: Starting monitored process 64 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:06:57,946 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (64)] Waiting until timeout for monitored process [2022-04-28 04:06:57,987 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:06:57,988 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:06:57,994 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:06:57,994 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:06:58,233 INFO L272 TraceCheckUtils]: 0: Hoare triple {152388#true} call ULTIMATE.init(); {152388#true} is VALID [2022-04-28 04:06:58,234 INFO L290 TraceCheckUtils]: 1: Hoare triple {152388#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {152393#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:58,234 INFO L290 TraceCheckUtils]: 2: Hoare triple {152393#(<= 200000 ~SIZE~0)} assume true; {152393#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:58,235 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {152393#(<= 200000 ~SIZE~0)} {152388#true} #90#return; {152393#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:58,235 INFO L272 TraceCheckUtils]: 4: Hoare triple {152393#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {152393#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:58,235 INFO L290 TraceCheckUtils]: 5: Hoare triple {152393#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {152393#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:58,236 INFO L272 TraceCheckUtils]: 6: Hoare triple {152393#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {152393#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:58,236 INFO L290 TraceCheckUtils]: 7: Hoare triple {152393#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {152393#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:58,236 INFO L290 TraceCheckUtils]: 8: Hoare triple {152393#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {152393#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:58,236 INFO L290 TraceCheckUtils]: 9: Hoare triple {152393#(<= 200000 ~SIZE~0)} assume true; {152393#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:58,237 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {152393#(<= 200000 ~SIZE~0)} {152393#(<= 200000 ~SIZE~0)} #86#return; {152393#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:58,237 INFO L290 TraceCheckUtils]: 11: Hoare triple {152393#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {152393#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:06:58,237 INFO L290 TraceCheckUtils]: 12: Hoare triple {152393#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {152441#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:06:58,238 INFO L290 TraceCheckUtils]: 13: Hoare triple {152441#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [356] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_641 v_main_~c~0_1615)) (.cse1 (= |v_main_#t~post5_842| |v_main_#t~post5_840|)) (.cse2 (= v_main_~c~0_1615 v_main_~c~0_1614)) (.cse3 (= v_main_~st~0_870 v_main_~st~0_869))) (or (and (< v_main_~c~0_1614 (+ v_~SIZE~0_578 1)) (= v_main_~st~0_869 0) .cse0 (< v_main_~c~0_1615 v_main_~c~0_1614)) (and .cse1 .cse2 (or (not .cse0) (not (< v_main_~c~0_1615 v_~SIZE~0_578))) .cse3) (and (= v_~SIZE~0_578 v_~SIZE~0_578) .cse1 .cse2 (= v_~last~0_641 v_~last~0_641) .cse3))) InVars {~SIZE~0=v_~SIZE~0_578, main_~c~0=v_main_~c~0_1615, main_#t~post5=|v_main_#t~post5_842|, main_~st~0=v_main_~st~0_870, ~last~0=v_~last~0_641} OutVars{~SIZE~0=v_~SIZE~0_578, main_#t~post5=|v_main_#t~post5_840|, main_~c~0=v_main_~c~0_1614, main_~st~0=v_main_~st~0_869, ~last~0=v_~last~0_641} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {152445#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:06:58,239 INFO L290 TraceCheckUtils]: 14: Hoare triple {152445#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [357] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {152445#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:06:58,239 INFO L290 TraceCheckUtils]: 15: Hoare triple {152445#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [358] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1617 v_main_~c~0_1616)) (.cse1 (= |v_main_#t~post5_845| |v_main_#t~post5_841|))) (or (and (= v_~last~0_642 v_~last~0_642) (= v_~SIZE~0_579 v_~SIZE~0_579) .cse0 .cse1) (and .cse0 (or (not (< v_main_~c~0_1617 v_~SIZE~0_579)) (not (< v_main_~c~0_1617 v_~last~0_642))) .cse1) (and (< v_main_~c~0_1616 (+ v_~last~0_642 1)) (< v_main_~c~0_1616 (+ v_~SIZE~0_579 1)) (< v_main_~c~0_1617 v_main_~c~0_1616)))) InVars {~SIZE~0=v_~SIZE~0_579, main_~c~0=v_main_~c~0_1617, main_#t~post5=|v_main_#t~post5_845|, ~last~0=v_~last~0_642} OutVars{~SIZE~0=v_~SIZE~0_579, main_#t~post5=|v_main_#t~post5_841|, main_~c~0=v_main_~c~0_1616, ~last~0=v_~last~0_642} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {152445#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:06:58,240 INFO L290 TraceCheckUtils]: 16: Hoare triple {152445#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [355] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {152455#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:06:58,240 INFO L290 TraceCheckUtils]: 17: Hoare triple {152455#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {152389#false} is VALID [2022-04-28 04:06:58,241 INFO L290 TraceCheckUtils]: 18: Hoare triple {152389#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {152389#false} is VALID [2022-04-28 04:06:58,241 INFO L290 TraceCheckUtils]: 19: Hoare triple {152389#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {152389#false} is VALID [2022-04-28 04:06:58,241 INFO L290 TraceCheckUtils]: 20: Hoare triple {152389#false} assume !(~d~0 == ~SIZE~0); {152389#false} is VALID [2022-04-28 04:06:58,241 INFO L272 TraceCheckUtils]: 21: Hoare triple {152389#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {152389#false} is VALID [2022-04-28 04:06:58,241 INFO L290 TraceCheckUtils]: 22: Hoare triple {152389#false} ~cond := #in~cond; {152389#false} is VALID [2022-04-28 04:06:58,241 INFO L290 TraceCheckUtils]: 23: Hoare triple {152389#false} assume 0 == ~cond; {152389#false} is VALID [2022-04-28 04:06:58,241 INFO L290 TraceCheckUtils]: 24: Hoare triple {152389#false} assume !false; {152389#false} is VALID [2022-04-28 04:06:58,241 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:06:58,241 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:06:58,556 INFO L290 TraceCheckUtils]: 24: Hoare triple {152389#false} assume !false; {152389#false} is VALID [2022-04-28 04:06:58,556 INFO L290 TraceCheckUtils]: 23: Hoare triple {152389#false} assume 0 == ~cond; {152389#false} is VALID [2022-04-28 04:06:58,557 INFO L290 TraceCheckUtils]: 22: Hoare triple {152389#false} ~cond := #in~cond; {152389#false} is VALID [2022-04-28 04:06:58,557 INFO L272 TraceCheckUtils]: 21: Hoare triple {152389#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {152389#false} is VALID [2022-04-28 04:06:58,557 INFO L290 TraceCheckUtils]: 20: Hoare triple {152389#false} assume !(~d~0 == ~SIZE~0); {152389#false} is VALID [2022-04-28 04:06:58,557 INFO L290 TraceCheckUtils]: 19: Hoare triple {152389#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {152389#false} is VALID [2022-04-28 04:06:58,557 INFO L290 TraceCheckUtils]: 18: Hoare triple {152389#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {152389#false} is VALID [2022-04-28 04:06:58,557 INFO L290 TraceCheckUtils]: 17: Hoare triple {152501#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {152389#false} is VALID [2022-04-28 04:06:58,567 INFO L290 TraceCheckUtils]: 16: Hoare triple {152505#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [355] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {152501#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:06:58,567 INFO L290 TraceCheckUtils]: 15: Hoare triple {152505#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [358] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1617 v_main_~c~0_1616)) (.cse1 (= |v_main_#t~post5_845| |v_main_#t~post5_841|))) (or (and (= v_~last~0_642 v_~last~0_642) (= v_~SIZE~0_579 v_~SIZE~0_579) .cse0 .cse1) (and .cse0 (or (not (< v_main_~c~0_1617 v_~SIZE~0_579)) (not (< v_main_~c~0_1617 v_~last~0_642))) .cse1) (and (< v_main_~c~0_1616 (+ v_~last~0_642 1)) (< v_main_~c~0_1616 (+ v_~SIZE~0_579 1)) (< v_main_~c~0_1617 v_main_~c~0_1616)))) InVars {~SIZE~0=v_~SIZE~0_579, main_~c~0=v_main_~c~0_1617, main_#t~post5=|v_main_#t~post5_845|, ~last~0=v_~last~0_642} OutVars{~SIZE~0=v_~SIZE~0_579, main_#t~post5=|v_main_#t~post5_841|, main_~c~0=v_main_~c~0_1616, ~last~0=v_~last~0_642} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {152505#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:06:58,568 INFO L290 TraceCheckUtils]: 14: Hoare triple {152505#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [357] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {152505#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:06:58,568 INFO L290 TraceCheckUtils]: 13: Hoare triple {152515#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [356] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_641 v_main_~c~0_1615)) (.cse1 (= |v_main_#t~post5_842| |v_main_#t~post5_840|)) (.cse2 (= v_main_~c~0_1615 v_main_~c~0_1614)) (.cse3 (= v_main_~st~0_870 v_main_~st~0_869))) (or (and (< v_main_~c~0_1614 (+ v_~SIZE~0_578 1)) (= v_main_~st~0_869 0) .cse0 (< v_main_~c~0_1615 v_main_~c~0_1614)) (and .cse1 .cse2 (or (not .cse0) (not (< v_main_~c~0_1615 v_~SIZE~0_578))) .cse3) (and (= v_~SIZE~0_578 v_~SIZE~0_578) .cse1 .cse2 (= v_~last~0_641 v_~last~0_641) .cse3))) InVars {~SIZE~0=v_~SIZE~0_578, main_~c~0=v_main_~c~0_1615, main_#t~post5=|v_main_#t~post5_842|, main_~st~0=v_main_~st~0_870, ~last~0=v_~last~0_641} OutVars{~SIZE~0=v_~SIZE~0_578, main_#t~post5=|v_main_#t~post5_840|, main_~c~0=v_main_~c~0_1614, main_~st~0=v_main_~st~0_869, ~last~0=v_~last~0_641} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {152505#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:06:58,569 INFO L290 TraceCheckUtils]: 12: Hoare triple {152519#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {152515#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:06:58,569 INFO L290 TraceCheckUtils]: 11: Hoare triple {152519#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {152519#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:06:58,570 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {152388#true} {152519#(< 1 ~SIZE~0)} #86#return; {152519#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:06:58,570 INFO L290 TraceCheckUtils]: 9: Hoare triple {152388#true} assume true; {152388#true} is VALID [2022-04-28 04:06:58,570 INFO L290 TraceCheckUtils]: 8: Hoare triple {152388#true} assume !(0 == ~cond); {152388#true} is VALID [2022-04-28 04:06:58,570 INFO L290 TraceCheckUtils]: 7: Hoare triple {152388#true} ~cond := #in~cond; {152388#true} is VALID [2022-04-28 04:06:58,570 INFO L272 TraceCheckUtils]: 6: Hoare triple {152519#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {152388#true} is VALID [2022-04-28 04:06:58,570 INFO L290 TraceCheckUtils]: 5: Hoare triple {152519#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {152519#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:06:58,571 INFO L272 TraceCheckUtils]: 4: Hoare triple {152519#(< 1 ~SIZE~0)} call #t~ret7 := main(); {152519#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:06:58,571 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {152519#(< 1 ~SIZE~0)} {152388#true} #90#return; {152519#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:06:58,571 INFO L290 TraceCheckUtils]: 2: Hoare triple {152519#(< 1 ~SIZE~0)} assume true; {152519#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:06:58,572 INFO L290 TraceCheckUtils]: 1: Hoare triple {152388#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {152519#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:06:58,572 INFO L272 TraceCheckUtils]: 0: Hoare triple {152388#true} call ULTIMATE.init(); {152388#true} is VALID [2022-04-28 04:06:58,572 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:06:58,572 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [720009916] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:06:58,572 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:06:58,572 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:06:59,336 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:06:59,336 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [255152498] [2022-04-28 04:06:59,336 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [255152498] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:06:59,336 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:06:59,336 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [24] imperfect sequences [] total 24 [2022-04-28 04:06:59,336 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1169756934] [2022-04-28 04:06:59,336 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:06:59,337 INFO L78 Accepts]: Start accepts. Automaton has has 24 states, 24 states have (on average 2.1666666666666665) internal successors, (52), 23 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 58 [2022-04-28 04:06:59,337 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:06:59,337 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 24 states, 24 states have (on average 2.1666666666666665) internal successors, (52), 23 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:06:59,375 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:06:59,375 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 24 states [2022-04-28 04:06:59,375 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:06:59,375 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 24 interpolants. [2022-04-28 04:06:59,375 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=209, Invalid=847, Unknown=0, NotChecked=0, Total=1056 [2022-04-28 04:06:59,375 INFO L87 Difference]: Start difference. First operand 370 states and 440 transitions. Second operand has 24 states, 24 states have (on average 2.1666666666666665) internal successors, (52), 23 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:07:04,224 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:07:04,224 INFO L93 Difference]: Finished difference Result 742 states and 873 transitions. [2022-04-28 04:07:04,224 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2022-04-28 04:07:04,224 INFO L78 Accepts]: Start accepts. Automaton has has 24 states, 24 states have (on average 2.1666666666666665) internal successors, (52), 23 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 58 [2022-04-28 04:07:04,224 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:07:04,224 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 24 states, 24 states have (on average 2.1666666666666665) internal successors, (52), 23 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:07:04,225 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 110 transitions. [2022-04-28 04:07:04,225 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 24 states, 24 states have (on average 2.1666666666666665) internal successors, (52), 23 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:07:04,226 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 110 transitions. [2022-04-28 04:07:04,226 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 24 states and 110 transitions. [2022-04-28 04:07:04,301 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 110 edges. 110 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:07:04,310 INFO L225 Difference]: With dead ends: 742 [2022-04-28 04:07:04,310 INFO L226 Difference]: Without dead ends: 454 [2022-04-28 04:07:04,310 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 106 GetRequests, 54 SyntacticMatches, 18 SemanticMatches, 34 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 879 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=244, Invalid=1016, Unknown=0, NotChecked=0, Total=1260 [2022-04-28 04:07:04,311 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 58 mSDsluCounter, 26 mSDsCounter, 0 mSdLazyCounter, 1258 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 59 SdHoareTripleChecker+Valid, 50 SdHoareTripleChecker+Invalid, 1274 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 1258 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-28 04:07:04,311 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [59 Valid, 50 Invalid, 1274 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 1258 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-28 04:07:04,311 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 454 states. [2022-04-28 04:07:06,455 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 454 to 370. [2022-04-28 04:07:06,455 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:07:06,456 INFO L82 GeneralOperation]: Start isEquivalent. First operand 454 states. Second operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:07:06,456 INFO L74 IsIncluded]: Start isIncluded. First operand 454 states. Second operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:07:06,456 INFO L87 Difference]: Start difference. First operand 454 states. Second operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:07:06,463 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:07:06,463 INFO L93 Difference]: Finished difference Result 454 states and 528 transitions. [2022-04-28 04:07:06,463 INFO L276 IsEmpty]: Start isEmpty. Operand 454 states and 528 transitions. [2022-04-28 04:07:06,463 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:07:06,463 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:07:06,464 INFO L74 IsIncluded]: Start isIncluded. First operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 454 states. [2022-04-28 04:07:06,464 INFO L87 Difference]: Start difference. First operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 454 states. [2022-04-28 04:07:06,471 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:07:06,471 INFO L93 Difference]: Finished difference Result 454 states and 528 transitions. [2022-04-28 04:07:06,471 INFO L276 IsEmpty]: Start isEmpty. Operand 454 states and 528 transitions. [2022-04-28 04:07:06,471 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:07:06,471 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:07:06,471 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:07:06,471 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:07:06,471 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:07:06,477 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 370 states to 370 states and 440 transitions. [2022-04-28 04:07:06,477 INFO L78 Accepts]: Start accepts. Automaton has 370 states and 440 transitions. Word has length 58 [2022-04-28 04:07:06,477 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:07:06,477 INFO L495 AbstractCegarLoop]: Abstraction has 370 states and 440 transitions. [2022-04-28 04:07:06,477 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 24 states, 24 states have (on average 2.1666666666666665) internal successors, (52), 23 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:07:06,477 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 370 states and 440 transitions. [2022-04-28 04:07:08,836 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 440 edges. 440 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:07:08,836 INFO L276 IsEmpty]: Start isEmpty. Operand 370 states and 440 transitions. [2022-04-28 04:07:08,837 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-28 04:07:08,837 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:07:08,837 INFO L195 NwaCegarLoop]: trace histogram [12, 12, 7, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:07:08,862 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (64)] Forceful destruction successful, exit code 0 [2022-04-28 04:07:09,037 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable71,64 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:07:09,039 INFO L420 AbstractCegarLoop]: === Iteration 73 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:07:09,039 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:07:09,039 INFO L85 PathProgramCache]: Analyzing trace with hash -1665567204, now seen corresponding path program 60 times [2022-04-28 04:07:09,039 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:07:09,040 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [931506632] [2022-04-28 04:07:09,245 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:07:09,457 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:07:09,458 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:07:09,461 INFO L85 PathProgramCache]: Analyzing trace with hash 806717377, now seen corresponding path program 1 times [2022-04-28 04:07:09,461 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:07:09,461 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [159359694] [2022-04-28 04:07:09,461 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:07:09,461 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:07:09,467 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:07:09,521 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:07:09,522 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:07:09,525 INFO L290 TraceCheckUtils]: 0: Hoare triple {155729#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {155721#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:09,526 INFO L290 TraceCheckUtils]: 1: Hoare triple {155721#(<= 200000 ~SIZE~0)} assume true; {155721#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:09,526 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {155721#(<= 200000 ~SIZE~0)} {155716#true} #90#return; {155721#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:09,526 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:07:09,527 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:07:09,528 INFO L290 TraceCheckUtils]: 0: Hoare triple {155716#true} ~cond := #in~cond; {155716#true} is VALID [2022-04-28 04:07:09,528 INFO L290 TraceCheckUtils]: 1: Hoare triple {155716#true} assume !(0 == ~cond); {155716#true} is VALID [2022-04-28 04:07:09,528 INFO L290 TraceCheckUtils]: 2: Hoare triple {155716#true} assume true; {155716#true} is VALID [2022-04-28 04:07:09,528 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {155716#true} {155721#(<= 200000 ~SIZE~0)} #86#return; {155721#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:09,529 INFO L272 TraceCheckUtils]: 0: Hoare triple {155716#true} call ULTIMATE.init(); {155729#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:07:09,529 INFO L290 TraceCheckUtils]: 1: Hoare triple {155729#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {155721#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:09,529 INFO L290 TraceCheckUtils]: 2: Hoare triple {155721#(<= 200000 ~SIZE~0)} assume true; {155721#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:09,530 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {155721#(<= 200000 ~SIZE~0)} {155716#true} #90#return; {155721#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:09,530 INFO L272 TraceCheckUtils]: 4: Hoare triple {155721#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {155721#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:09,530 INFO L290 TraceCheckUtils]: 5: Hoare triple {155721#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {155721#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:09,530 INFO L272 TraceCheckUtils]: 6: Hoare triple {155721#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {155716#true} is VALID [2022-04-28 04:07:09,530 INFO L290 TraceCheckUtils]: 7: Hoare triple {155716#true} ~cond := #in~cond; {155716#true} is VALID [2022-04-28 04:07:09,530 INFO L290 TraceCheckUtils]: 8: Hoare triple {155716#true} assume !(0 == ~cond); {155716#true} is VALID [2022-04-28 04:07:09,531 INFO L290 TraceCheckUtils]: 9: Hoare triple {155716#true} assume true; {155716#true} is VALID [2022-04-28 04:07:09,531 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {155716#true} {155721#(<= 200000 ~SIZE~0)} #86#return; {155721#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:09,531 INFO L290 TraceCheckUtils]: 11: Hoare triple {155721#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {155721#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:09,531 INFO L290 TraceCheckUtils]: 12: Hoare triple {155721#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {155726#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:07:09,532 INFO L290 TraceCheckUtils]: 13: Hoare triple {155726#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [360] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= |v_main_#t~post5_855| |v_main_#t~post5_853|)) (.cse0 (<= v_~last~0_651 v_main_~c~0_1644)) (.cse2 (= v_main_~st~0_887 v_main_~st~0_886))) (or (and (= v_main_~st~0_886 0) .cse0 (< v_main_~c~0_1643 (+ v_~SIZE~0_587 1)) (< v_main_~c~0_1644 v_main_~c~0_1643)) (and .cse1 (= v_~last~0_651 v_~last~0_651) .cse2 (= v_~SIZE~0_587 v_~SIZE~0_587) (= v_main_~c~0_1644 v_main_~c~0_1643)) (and (= v_main_~c~0_1643 v_main_~c~0_1644) .cse1 (or (not (< v_main_~c~0_1644 v_~SIZE~0_587)) (not .cse0)) .cse2))) InVars {~SIZE~0=v_~SIZE~0_587, main_~c~0=v_main_~c~0_1644, main_#t~post5=|v_main_#t~post5_855|, main_~st~0=v_main_~st~0_887, ~last~0=v_~last~0_651} OutVars{~SIZE~0=v_~SIZE~0_587, main_#t~post5=|v_main_#t~post5_853|, main_~c~0=v_main_~c~0_1643, main_~st~0=v_main_~st~0_886, ~last~0=v_~last~0_651} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {155727#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:07:09,533 INFO L290 TraceCheckUtils]: 14: Hoare triple {155727#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [361] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {155727#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:07:09,533 INFO L290 TraceCheckUtils]: 15: Hoare triple {155727#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [362] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1646 v_main_~c~0_1645))) (or (and (= |v_main_#t~post5_854| |v_main_#t~post5_858|) .cse0 (or (not (< v_main_~c~0_1646 v_~last~0_652)) (not (< v_main_~c~0_1646 v_~SIZE~0_588)))) (and .cse0 (= v_~SIZE~0_588 v_~SIZE~0_588) (= |v_main_#t~post5_858| |v_main_#t~post5_854|) (= v_~last~0_652 v_~last~0_652)) (and (< v_main_~c~0_1646 v_main_~c~0_1645) (< v_main_~c~0_1645 (+ v_~last~0_652 1)) (< v_main_~c~0_1645 (+ v_~SIZE~0_588 1))))) InVars {~SIZE~0=v_~SIZE~0_588, main_~c~0=v_main_~c~0_1646, main_#t~post5=|v_main_#t~post5_858|, ~last~0=v_~last~0_652} OutVars{~SIZE~0=v_~SIZE~0_588, main_#t~post5=|v_main_#t~post5_854|, main_~c~0=v_main_~c~0_1645, ~last~0=v_~last~0_652} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {155727#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:07:09,533 INFO L290 TraceCheckUtils]: 16: Hoare triple {155727#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [359] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {155728#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:07:09,534 INFO L290 TraceCheckUtils]: 17: Hoare triple {155728#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {155717#false} is VALID [2022-04-28 04:07:09,534 INFO L290 TraceCheckUtils]: 18: Hoare triple {155717#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {155717#false} is VALID [2022-04-28 04:07:09,534 INFO L290 TraceCheckUtils]: 19: Hoare triple {155717#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {155717#false} is VALID [2022-04-28 04:07:09,534 INFO L290 TraceCheckUtils]: 20: Hoare triple {155717#false} assume !(~d~0 == ~SIZE~0); {155717#false} is VALID [2022-04-28 04:07:09,534 INFO L272 TraceCheckUtils]: 21: Hoare triple {155717#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {155717#false} is VALID [2022-04-28 04:07:09,534 INFO L290 TraceCheckUtils]: 22: Hoare triple {155717#false} ~cond := #in~cond; {155717#false} is VALID [2022-04-28 04:07:09,534 INFO L290 TraceCheckUtils]: 23: Hoare triple {155717#false} assume 0 == ~cond; {155717#false} is VALID [2022-04-28 04:07:09,534 INFO L290 TraceCheckUtils]: 24: Hoare triple {155717#false} assume !false; {155717#false} is VALID [2022-04-28 04:07:09,534 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:07:09,534 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:07:09,535 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [159359694] [2022-04-28 04:07:09,535 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [159359694] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:07:09,535 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1224821285] [2022-04-28 04:07:09,535 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:07:09,535 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:07:09,535 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:07:09,536 INFO L229 MonitoredProcess]: Starting monitored process 65 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:07:09,536 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (65)] Waiting until timeout for monitored process [2022-04-28 04:07:09,564 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:07:09,564 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:07:09,571 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:07:09,572 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:07:09,801 INFO L272 TraceCheckUtils]: 0: Hoare triple {155716#true} call ULTIMATE.init(); {155716#true} is VALID [2022-04-28 04:07:09,801 INFO L290 TraceCheckUtils]: 1: Hoare triple {155716#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {155721#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:09,802 INFO L290 TraceCheckUtils]: 2: Hoare triple {155721#(<= 200000 ~SIZE~0)} assume true; {155721#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:09,802 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {155721#(<= 200000 ~SIZE~0)} {155716#true} #90#return; {155721#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:09,802 INFO L272 TraceCheckUtils]: 4: Hoare triple {155721#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {155721#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:09,802 INFO L290 TraceCheckUtils]: 5: Hoare triple {155721#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {155721#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:09,803 INFO L272 TraceCheckUtils]: 6: Hoare triple {155721#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {155721#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:09,803 INFO L290 TraceCheckUtils]: 7: Hoare triple {155721#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {155721#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:09,803 INFO L290 TraceCheckUtils]: 8: Hoare triple {155721#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {155721#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:09,804 INFO L290 TraceCheckUtils]: 9: Hoare triple {155721#(<= 200000 ~SIZE~0)} assume true; {155721#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:09,804 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {155721#(<= 200000 ~SIZE~0)} {155721#(<= 200000 ~SIZE~0)} #86#return; {155721#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:09,804 INFO L290 TraceCheckUtils]: 11: Hoare triple {155721#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {155721#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:09,805 INFO L290 TraceCheckUtils]: 12: Hoare triple {155721#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {155769#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:07:09,805 INFO L290 TraceCheckUtils]: 13: Hoare triple {155769#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [360] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= |v_main_#t~post5_855| |v_main_#t~post5_853|)) (.cse0 (<= v_~last~0_651 v_main_~c~0_1644)) (.cse2 (= v_main_~st~0_887 v_main_~st~0_886))) (or (and (= v_main_~st~0_886 0) .cse0 (< v_main_~c~0_1643 (+ v_~SIZE~0_587 1)) (< v_main_~c~0_1644 v_main_~c~0_1643)) (and .cse1 (= v_~last~0_651 v_~last~0_651) .cse2 (= v_~SIZE~0_587 v_~SIZE~0_587) (= v_main_~c~0_1644 v_main_~c~0_1643)) (and (= v_main_~c~0_1643 v_main_~c~0_1644) .cse1 (or (not (< v_main_~c~0_1644 v_~SIZE~0_587)) (not .cse0)) .cse2))) InVars {~SIZE~0=v_~SIZE~0_587, main_~c~0=v_main_~c~0_1644, main_#t~post5=|v_main_#t~post5_855|, main_~st~0=v_main_~st~0_887, ~last~0=v_~last~0_651} OutVars{~SIZE~0=v_~SIZE~0_587, main_#t~post5=|v_main_#t~post5_853|, main_~c~0=v_main_~c~0_1643, main_~st~0=v_main_~st~0_886, ~last~0=v_~last~0_651} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {155773#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:07:09,806 INFO L290 TraceCheckUtils]: 14: Hoare triple {155773#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [361] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {155773#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:07:09,806 INFO L290 TraceCheckUtils]: 15: Hoare triple {155773#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [362] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1646 v_main_~c~0_1645))) (or (and (= |v_main_#t~post5_854| |v_main_#t~post5_858|) .cse0 (or (not (< v_main_~c~0_1646 v_~last~0_652)) (not (< v_main_~c~0_1646 v_~SIZE~0_588)))) (and .cse0 (= v_~SIZE~0_588 v_~SIZE~0_588) (= |v_main_#t~post5_858| |v_main_#t~post5_854|) (= v_~last~0_652 v_~last~0_652)) (and (< v_main_~c~0_1646 v_main_~c~0_1645) (< v_main_~c~0_1645 (+ v_~last~0_652 1)) (< v_main_~c~0_1645 (+ v_~SIZE~0_588 1))))) InVars {~SIZE~0=v_~SIZE~0_588, main_~c~0=v_main_~c~0_1646, main_#t~post5=|v_main_#t~post5_858|, ~last~0=v_~last~0_652} OutVars{~SIZE~0=v_~SIZE~0_588, main_#t~post5=|v_main_#t~post5_854|, main_~c~0=v_main_~c~0_1645, ~last~0=v_~last~0_652} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {155773#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:07:09,807 INFO L290 TraceCheckUtils]: 16: Hoare triple {155773#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [359] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {155783#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:07:09,807 INFO L290 TraceCheckUtils]: 17: Hoare triple {155783#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {155717#false} is VALID [2022-04-28 04:07:09,807 INFO L290 TraceCheckUtils]: 18: Hoare triple {155717#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {155717#false} is VALID [2022-04-28 04:07:09,807 INFO L290 TraceCheckUtils]: 19: Hoare triple {155717#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {155717#false} is VALID [2022-04-28 04:07:09,808 INFO L290 TraceCheckUtils]: 20: Hoare triple {155717#false} assume !(~d~0 == ~SIZE~0); {155717#false} is VALID [2022-04-28 04:07:09,808 INFO L272 TraceCheckUtils]: 21: Hoare triple {155717#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {155717#false} is VALID [2022-04-28 04:07:09,808 INFO L290 TraceCheckUtils]: 22: Hoare triple {155717#false} ~cond := #in~cond; {155717#false} is VALID [2022-04-28 04:07:09,808 INFO L290 TraceCheckUtils]: 23: Hoare triple {155717#false} assume 0 == ~cond; {155717#false} is VALID [2022-04-28 04:07:09,808 INFO L290 TraceCheckUtils]: 24: Hoare triple {155717#false} assume !false; {155717#false} is VALID [2022-04-28 04:07:09,808 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:07:09,808 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:07:10,127 INFO L290 TraceCheckUtils]: 24: Hoare triple {155717#false} assume !false; {155717#false} is VALID [2022-04-28 04:07:10,128 INFO L290 TraceCheckUtils]: 23: Hoare triple {155717#false} assume 0 == ~cond; {155717#false} is VALID [2022-04-28 04:07:10,128 INFO L290 TraceCheckUtils]: 22: Hoare triple {155717#false} ~cond := #in~cond; {155717#false} is VALID [2022-04-28 04:07:10,128 INFO L272 TraceCheckUtils]: 21: Hoare triple {155717#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {155717#false} is VALID [2022-04-28 04:07:10,128 INFO L290 TraceCheckUtils]: 20: Hoare triple {155717#false} assume !(~d~0 == ~SIZE~0); {155717#false} is VALID [2022-04-28 04:07:10,128 INFO L290 TraceCheckUtils]: 19: Hoare triple {155717#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {155717#false} is VALID [2022-04-28 04:07:10,128 INFO L290 TraceCheckUtils]: 18: Hoare triple {155717#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {155717#false} is VALID [2022-04-28 04:07:10,128 INFO L290 TraceCheckUtils]: 17: Hoare triple {155829#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {155717#false} is VALID [2022-04-28 04:07:10,129 INFO L290 TraceCheckUtils]: 16: Hoare triple {155833#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [359] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {155829#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:07:10,129 INFO L290 TraceCheckUtils]: 15: Hoare triple {155833#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [362] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1646 v_main_~c~0_1645))) (or (and (= |v_main_#t~post5_854| |v_main_#t~post5_858|) .cse0 (or (not (< v_main_~c~0_1646 v_~last~0_652)) (not (< v_main_~c~0_1646 v_~SIZE~0_588)))) (and .cse0 (= v_~SIZE~0_588 v_~SIZE~0_588) (= |v_main_#t~post5_858| |v_main_#t~post5_854|) (= v_~last~0_652 v_~last~0_652)) (and (< v_main_~c~0_1646 v_main_~c~0_1645) (< v_main_~c~0_1645 (+ v_~last~0_652 1)) (< v_main_~c~0_1645 (+ v_~SIZE~0_588 1))))) InVars {~SIZE~0=v_~SIZE~0_588, main_~c~0=v_main_~c~0_1646, main_#t~post5=|v_main_#t~post5_858|, ~last~0=v_~last~0_652} OutVars{~SIZE~0=v_~SIZE~0_588, main_#t~post5=|v_main_#t~post5_854|, main_~c~0=v_main_~c~0_1645, ~last~0=v_~last~0_652} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {155833#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:07:10,130 INFO L290 TraceCheckUtils]: 14: Hoare triple {155833#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [361] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {155833#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:07:10,130 INFO L290 TraceCheckUtils]: 13: Hoare triple {155843#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [360] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= |v_main_#t~post5_855| |v_main_#t~post5_853|)) (.cse0 (<= v_~last~0_651 v_main_~c~0_1644)) (.cse2 (= v_main_~st~0_887 v_main_~st~0_886))) (or (and (= v_main_~st~0_886 0) .cse0 (< v_main_~c~0_1643 (+ v_~SIZE~0_587 1)) (< v_main_~c~0_1644 v_main_~c~0_1643)) (and .cse1 (= v_~last~0_651 v_~last~0_651) .cse2 (= v_~SIZE~0_587 v_~SIZE~0_587) (= v_main_~c~0_1644 v_main_~c~0_1643)) (and (= v_main_~c~0_1643 v_main_~c~0_1644) .cse1 (or (not (< v_main_~c~0_1644 v_~SIZE~0_587)) (not .cse0)) .cse2))) InVars {~SIZE~0=v_~SIZE~0_587, main_~c~0=v_main_~c~0_1644, main_#t~post5=|v_main_#t~post5_855|, main_~st~0=v_main_~st~0_887, ~last~0=v_~last~0_651} OutVars{~SIZE~0=v_~SIZE~0_587, main_#t~post5=|v_main_#t~post5_853|, main_~c~0=v_main_~c~0_1643, main_~st~0=v_main_~st~0_886, ~last~0=v_~last~0_651} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {155833#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:07:10,131 INFO L290 TraceCheckUtils]: 12: Hoare triple {155847#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {155843#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:07:10,131 INFO L290 TraceCheckUtils]: 11: Hoare triple {155847#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {155847#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:07:10,131 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {155716#true} {155847#(< 1 ~SIZE~0)} #86#return; {155847#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:07:10,131 INFO L290 TraceCheckUtils]: 9: Hoare triple {155716#true} assume true; {155716#true} is VALID [2022-04-28 04:07:10,131 INFO L290 TraceCheckUtils]: 8: Hoare triple {155716#true} assume !(0 == ~cond); {155716#true} is VALID [2022-04-28 04:07:10,132 INFO L290 TraceCheckUtils]: 7: Hoare triple {155716#true} ~cond := #in~cond; {155716#true} is VALID [2022-04-28 04:07:10,132 INFO L272 TraceCheckUtils]: 6: Hoare triple {155847#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {155716#true} is VALID [2022-04-28 04:07:10,132 INFO L290 TraceCheckUtils]: 5: Hoare triple {155847#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {155847#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:07:10,132 INFO L272 TraceCheckUtils]: 4: Hoare triple {155847#(< 1 ~SIZE~0)} call #t~ret7 := main(); {155847#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:07:10,132 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {155847#(< 1 ~SIZE~0)} {155716#true} #90#return; {155847#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:07:10,133 INFO L290 TraceCheckUtils]: 2: Hoare triple {155847#(< 1 ~SIZE~0)} assume true; {155847#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:07:10,133 INFO L290 TraceCheckUtils]: 1: Hoare triple {155716#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {155847#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:07:10,133 INFO L272 TraceCheckUtils]: 0: Hoare triple {155716#true} call ULTIMATE.init(); {155716#true} is VALID [2022-04-28 04:07:10,133 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:07:10,133 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1224821285] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:07:10,134 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:07:10,134 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:07:10,904 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:07:10,904 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [931506632] [2022-04-28 04:07:10,905 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [931506632] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:07:10,905 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:07:10,905 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [25] imperfect sequences [] total 25 [2022-04-28 04:07:10,905 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [959761965] [2022-04-28 04:07:10,905 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:07:10,905 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 25 states have (on average 2.08) internal successors, (52), 24 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 58 [2022-04-28 04:07:10,905 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:07:10,905 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 25 states, 25 states have (on average 2.08) internal successors, (52), 24 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:07:10,945 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:07:10,945 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 25 states [2022-04-28 04:07:10,945 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:07:10,945 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2022-04-28 04:07:10,945 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=224, Invalid=898, Unknown=0, NotChecked=0, Total=1122 [2022-04-28 04:07:10,946 INFO L87 Difference]: Start difference. First operand 370 states and 440 transitions. Second operand has 25 states, 25 states have (on average 2.08) internal successors, (52), 24 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:07:15,564 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:07:15,564 INFO L93 Difference]: Finished difference Result 733 states and 864 transitions. [2022-04-28 04:07:15,564 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2022-04-28 04:07:15,564 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 25 states have (on average 2.08) internal successors, (52), 24 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 58 [2022-04-28 04:07:15,564 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:07:15,564 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 25 states have (on average 2.08) internal successors, (52), 24 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:07:15,565 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 111 transitions. [2022-04-28 04:07:15,565 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 25 states have (on average 2.08) internal successors, (52), 24 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:07:15,566 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 111 transitions. [2022-04-28 04:07:15,566 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 25 states and 111 transitions. [2022-04-28 04:07:15,646 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 111 edges. 111 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:07:15,654 INFO L225 Difference]: With dead ends: 733 [2022-04-28 04:07:15,654 INFO L226 Difference]: Without dead ends: 445 [2022-04-28 04:07:15,654 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 106 GetRequests, 54 SyntacticMatches, 17 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 908 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=261, Invalid=1071, Unknown=0, NotChecked=0, Total=1332 [2022-04-28 04:07:15,655 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 63 mSDsluCounter, 25 mSDsCounter, 0 mSdLazyCounter, 1172 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 64 SdHoareTripleChecker+Valid, 49 SdHoareTripleChecker+Invalid, 1189 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 1172 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-28 04:07:15,655 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [64 Valid, 49 Invalid, 1189 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 1172 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-04-28 04:07:15,655 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 445 states. [2022-04-28 04:07:17,761 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 445 to 370. [2022-04-28 04:07:17,762 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:07:17,762 INFO L82 GeneralOperation]: Start isEquivalent. First operand 445 states. Second operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:07:17,762 INFO L74 IsIncluded]: Start isIncluded. First operand 445 states. Second operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:07:17,762 INFO L87 Difference]: Start difference. First operand 445 states. Second operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:07:17,769 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:07:17,769 INFO L93 Difference]: Finished difference Result 445 states and 519 transitions. [2022-04-28 04:07:17,769 INFO L276 IsEmpty]: Start isEmpty. Operand 445 states and 519 transitions. [2022-04-28 04:07:17,769 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:07:17,769 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:07:17,770 INFO L74 IsIncluded]: Start isIncluded. First operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 445 states. [2022-04-28 04:07:17,770 INFO L87 Difference]: Start difference. First operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 445 states. [2022-04-28 04:07:17,777 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:07:17,777 INFO L93 Difference]: Finished difference Result 445 states and 519 transitions. [2022-04-28 04:07:17,777 INFO L276 IsEmpty]: Start isEmpty. Operand 445 states and 519 transitions. [2022-04-28 04:07:17,777 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:07:17,777 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:07:17,777 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:07:17,777 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:07:17,777 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:07:17,783 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 370 states to 370 states and 440 transitions. [2022-04-28 04:07:17,783 INFO L78 Accepts]: Start accepts. Automaton has 370 states and 440 transitions. Word has length 58 [2022-04-28 04:07:17,783 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:07:17,783 INFO L495 AbstractCegarLoop]: Abstraction has 370 states and 440 transitions. [2022-04-28 04:07:17,783 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 25 states, 25 states have (on average 2.08) internal successors, (52), 24 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:07:17,783 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 370 states and 440 transitions. [2022-04-28 04:07:20,042 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 440 edges. 440 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:07:20,043 INFO L276 IsEmpty]: Start isEmpty. Operand 370 states and 440 transitions. [2022-04-28 04:07:20,043 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-28 04:07:20,043 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:07:20,043 INFO L195 NwaCegarLoop]: trace histogram [12, 12, 6, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:07:20,059 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (65)] Forceful destruction successful, exit code 0 [2022-04-28 04:07:20,243 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable72,65 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:07:20,246 INFO L420 AbstractCegarLoop]: === Iteration 74 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:07:20,246 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:07:20,246 INFO L85 PathProgramCache]: Analyzing trace with hash -279363810, now seen corresponding path program 61 times [2022-04-28 04:07:20,246 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:07:20,246 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1230775847] [2022-04-28 04:07:20,484 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:07:20,691 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:07:20,692 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:07:20,695 INFO L85 PathProgramCache]: Analyzing trace with hash -995727167, now seen corresponding path program 1 times [2022-04-28 04:07:20,695 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:07:20,695 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1886656337] [2022-04-28 04:07:20,695 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:07:20,695 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:07:20,702 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:07:20,748 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:07:20,750 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:07:20,753 INFO L290 TraceCheckUtils]: 0: Hoare triple {159022#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {159014#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:20,753 INFO L290 TraceCheckUtils]: 1: Hoare triple {159014#(<= 200000 ~SIZE~0)} assume true; {159014#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:20,753 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {159014#(<= 200000 ~SIZE~0)} {159009#true} #90#return; {159014#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:20,754 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:07:20,754 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:07:20,755 INFO L290 TraceCheckUtils]: 0: Hoare triple {159009#true} ~cond := #in~cond; {159009#true} is VALID [2022-04-28 04:07:20,755 INFO L290 TraceCheckUtils]: 1: Hoare triple {159009#true} assume !(0 == ~cond); {159009#true} is VALID [2022-04-28 04:07:20,755 INFO L290 TraceCheckUtils]: 2: Hoare triple {159009#true} assume true; {159009#true} is VALID [2022-04-28 04:07:20,756 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {159009#true} {159014#(<= 200000 ~SIZE~0)} #86#return; {159014#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:20,756 INFO L272 TraceCheckUtils]: 0: Hoare triple {159009#true} call ULTIMATE.init(); {159022#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:07:20,757 INFO L290 TraceCheckUtils]: 1: Hoare triple {159022#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {159014#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:20,757 INFO L290 TraceCheckUtils]: 2: Hoare triple {159014#(<= 200000 ~SIZE~0)} assume true; {159014#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:20,757 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {159014#(<= 200000 ~SIZE~0)} {159009#true} #90#return; {159014#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:20,758 INFO L272 TraceCheckUtils]: 4: Hoare triple {159014#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {159014#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:20,758 INFO L290 TraceCheckUtils]: 5: Hoare triple {159014#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {159014#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:20,758 INFO L272 TraceCheckUtils]: 6: Hoare triple {159014#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {159009#true} is VALID [2022-04-28 04:07:20,758 INFO L290 TraceCheckUtils]: 7: Hoare triple {159009#true} ~cond := #in~cond; {159009#true} is VALID [2022-04-28 04:07:20,758 INFO L290 TraceCheckUtils]: 8: Hoare triple {159009#true} assume !(0 == ~cond); {159009#true} is VALID [2022-04-28 04:07:20,758 INFO L290 TraceCheckUtils]: 9: Hoare triple {159009#true} assume true; {159009#true} is VALID [2022-04-28 04:07:20,758 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {159009#true} {159014#(<= 200000 ~SIZE~0)} #86#return; {159014#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:20,759 INFO L290 TraceCheckUtils]: 11: Hoare triple {159014#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {159014#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:20,759 INFO L290 TraceCheckUtils]: 12: Hoare triple {159014#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {159019#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:07:20,760 INFO L290 TraceCheckUtils]: 13: Hoare triple {159019#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [364] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~st~0_903 v_main_~st~0_902)) (.cse2 (= |v_main_#t~post5_868| |v_main_#t~post5_866|)) (.cse3 (= v_main_~c~0_1673 v_main_~c~0_1672)) (.cse0 (<= v_~last~0_661 v_main_~c~0_1673))) (or (and (= v_main_~st~0_902 0) (< v_main_~c~0_1672 (+ v_~SIZE~0_596 1)) (< v_main_~c~0_1673 v_main_~c~0_1672) .cse0) (and .cse1 (= v_~last~0_661 v_~last~0_661) .cse2 (= v_~SIZE~0_596 v_~SIZE~0_596) .cse3) (and .cse1 .cse2 .cse3 (or (not (< v_main_~c~0_1673 v_~SIZE~0_596)) (not .cse0))))) InVars {~SIZE~0=v_~SIZE~0_596, main_~c~0=v_main_~c~0_1673, main_#t~post5=|v_main_#t~post5_868|, main_~st~0=v_main_~st~0_903, ~last~0=v_~last~0_661} OutVars{~SIZE~0=v_~SIZE~0_596, main_#t~post5=|v_main_#t~post5_866|, main_~c~0=v_main_~c~0_1672, main_~st~0=v_main_~st~0_902, ~last~0=v_~last~0_661} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {159020#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:07:20,760 INFO L290 TraceCheckUtils]: 14: Hoare triple {159020#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [365] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {159020#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:07:20,761 INFO L290 TraceCheckUtils]: 15: Hoare triple {159020#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [366] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_871| |v_main_#t~post5_867|)) (.cse1 (= v_main_~c~0_1675 v_main_~c~0_1674))) (or (and (< v_main_~c~0_1674 (+ v_~last~0_662 1)) (< v_main_~c~0_1674 (+ v_~SIZE~0_597 1)) (< v_main_~c~0_1675 v_main_~c~0_1674)) (and .cse0 .cse1 (or (not (< v_main_~c~0_1675 v_~last~0_662)) (not (< v_main_~c~0_1675 v_~SIZE~0_597)))) (and .cse0 .cse1 (= v_~last~0_662 v_~last~0_662) (= v_~SIZE~0_597 v_~SIZE~0_597)))) InVars {~SIZE~0=v_~SIZE~0_597, main_~c~0=v_main_~c~0_1675, main_#t~post5=|v_main_#t~post5_871|, ~last~0=v_~last~0_662} OutVars{~SIZE~0=v_~SIZE~0_597, main_#t~post5=|v_main_#t~post5_867|, main_~c~0=v_main_~c~0_1674, ~last~0=v_~last~0_662} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {159020#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:07:20,761 INFO L290 TraceCheckUtils]: 16: Hoare triple {159020#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [363] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {159021#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:07:20,761 INFO L290 TraceCheckUtils]: 17: Hoare triple {159021#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {159010#false} is VALID [2022-04-28 04:07:20,761 INFO L290 TraceCheckUtils]: 18: Hoare triple {159010#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {159010#false} is VALID [2022-04-28 04:07:20,761 INFO L290 TraceCheckUtils]: 19: Hoare triple {159010#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {159010#false} is VALID [2022-04-28 04:07:20,762 INFO L290 TraceCheckUtils]: 20: Hoare triple {159010#false} assume !(~d~0 == ~SIZE~0); {159010#false} is VALID [2022-04-28 04:07:20,762 INFO L272 TraceCheckUtils]: 21: Hoare triple {159010#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {159010#false} is VALID [2022-04-28 04:07:20,762 INFO L290 TraceCheckUtils]: 22: Hoare triple {159010#false} ~cond := #in~cond; {159010#false} is VALID [2022-04-28 04:07:20,762 INFO L290 TraceCheckUtils]: 23: Hoare triple {159010#false} assume 0 == ~cond; {159010#false} is VALID [2022-04-28 04:07:20,762 INFO L290 TraceCheckUtils]: 24: Hoare triple {159010#false} assume !false; {159010#false} is VALID [2022-04-28 04:07:20,762 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:07:20,762 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:07:20,762 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1886656337] [2022-04-28 04:07:20,762 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1886656337] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:07:20,762 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2133477938] [2022-04-28 04:07:20,762 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:07:20,762 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:07:20,763 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:07:20,763 INFO L229 MonitoredProcess]: Starting monitored process 66 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:07:20,764 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (66)] Waiting until timeout for monitored process [2022-04-28 04:07:20,793 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:07:20,794 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:07:20,799 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:07:20,800 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:07:21,023 INFO L272 TraceCheckUtils]: 0: Hoare triple {159009#true} call ULTIMATE.init(); {159009#true} is VALID [2022-04-28 04:07:21,024 INFO L290 TraceCheckUtils]: 1: Hoare triple {159009#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {159014#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:21,024 INFO L290 TraceCheckUtils]: 2: Hoare triple {159014#(<= 200000 ~SIZE~0)} assume true; {159014#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:21,024 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {159014#(<= 200000 ~SIZE~0)} {159009#true} #90#return; {159014#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:21,025 INFO L272 TraceCheckUtils]: 4: Hoare triple {159014#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {159014#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:21,025 INFO L290 TraceCheckUtils]: 5: Hoare triple {159014#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {159014#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:21,025 INFO L272 TraceCheckUtils]: 6: Hoare triple {159014#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {159014#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:21,025 INFO L290 TraceCheckUtils]: 7: Hoare triple {159014#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {159014#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:21,026 INFO L290 TraceCheckUtils]: 8: Hoare triple {159014#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {159014#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:21,026 INFO L290 TraceCheckUtils]: 9: Hoare triple {159014#(<= 200000 ~SIZE~0)} assume true; {159014#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:21,026 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {159014#(<= 200000 ~SIZE~0)} {159014#(<= 200000 ~SIZE~0)} #86#return; {159014#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:21,027 INFO L290 TraceCheckUtils]: 11: Hoare triple {159014#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {159014#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:21,027 INFO L290 TraceCheckUtils]: 12: Hoare triple {159014#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {159062#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:07:21,028 INFO L290 TraceCheckUtils]: 13: Hoare triple {159062#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [364] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~st~0_903 v_main_~st~0_902)) (.cse2 (= |v_main_#t~post5_868| |v_main_#t~post5_866|)) (.cse3 (= v_main_~c~0_1673 v_main_~c~0_1672)) (.cse0 (<= v_~last~0_661 v_main_~c~0_1673))) (or (and (= v_main_~st~0_902 0) (< v_main_~c~0_1672 (+ v_~SIZE~0_596 1)) (< v_main_~c~0_1673 v_main_~c~0_1672) .cse0) (and .cse1 (= v_~last~0_661 v_~last~0_661) .cse2 (= v_~SIZE~0_596 v_~SIZE~0_596) .cse3) (and .cse1 .cse2 .cse3 (or (not (< v_main_~c~0_1673 v_~SIZE~0_596)) (not .cse0))))) InVars {~SIZE~0=v_~SIZE~0_596, main_~c~0=v_main_~c~0_1673, main_#t~post5=|v_main_#t~post5_868|, main_~st~0=v_main_~st~0_903, ~last~0=v_~last~0_661} OutVars{~SIZE~0=v_~SIZE~0_596, main_#t~post5=|v_main_#t~post5_866|, main_~c~0=v_main_~c~0_1672, main_~st~0=v_main_~st~0_902, ~last~0=v_~last~0_661} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {159066#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:07:21,028 INFO L290 TraceCheckUtils]: 14: Hoare triple {159066#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [365] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {159066#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:07:21,029 INFO L290 TraceCheckUtils]: 15: Hoare triple {159066#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [366] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_871| |v_main_#t~post5_867|)) (.cse1 (= v_main_~c~0_1675 v_main_~c~0_1674))) (or (and (< v_main_~c~0_1674 (+ v_~last~0_662 1)) (< v_main_~c~0_1674 (+ v_~SIZE~0_597 1)) (< v_main_~c~0_1675 v_main_~c~0_1674)) (and .cse0 .cse1 (or (not (< v_main_~c~0_1675 v_~last~0_662)) (not (< v_main_~c~0_1675 v_~SIZE~0_597)))) (and .cse0 .cse1 (= v_~last~0_662 v_~last~0_662) (= v_~SIZE~0_597 v_~SIZE~0_597)))) InVars {~SIZE~0=v_~SIZE~0_597, main_~c~0=v_main_~c~0_1675, main_#t~post5=|v_main_#t~post5_871|, ~last~0=v_~last~0_662} OutVars{~SIZE~0=v_~SIZE~0_597, main_#t~post5=|v_main_#t~post5_867|, main_~c~0=v_main_~c~0_1674, ~last~0=v_~last~0_662} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {159066#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:07:21,029 INFO L290 TraceCheckUtils]: 16: Hoare triple {159066#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [363] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {159076#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:07:21,030 INFO L290 TraceCheckUtils]: 17: Hoare triple {159076#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {159010#false} is VALID [2022-04-28 04:07:21,030 INFO L290 TraceCheckUtils]: 18: Hoare triple {159010#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {159010#false} is VALID [2022-04-28 04:07:21,030 INFO L290 TraceCheckUtils]: 19: Hoare triple {159010#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {159010#false} is VALID [2022-04-28 04:07:21,030 INFO L290 TraceCheckUtils]: 20: Hoare triple {159010#false} assume !(~d~0 == ~SIZE~0); {159010#false} is VALID [2022-04-28 04:07:21,030 INFO L272 TraceCheckUtils]: 21: Hoare triple {159010#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {159010#false} is VALID [2022-04-28 04:07:21,030 INFO L290 TraceCheckUtils]: 22: Hoare triple {159010#false} ~cond := #in~cond; {159010#false} is VALID [2022-04-28 04:07:21,030 INFO L290 TraceCheckUtils]: 23: Hoare triple {159010#false} assume 0 == ~cond; {159010#false} is VALID [2022-04-28 04:07:21,030 INFO L290 TraceCheckUtils]: 24: Hoare triple {159010#false} assume !false; {159010#false} is VALID [2022-04-28 04:07:21,030 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:07:21,030 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:07:21,355 INFO L290 TraceCheckUtils]: 24: Hoare triple {159010#false} assume !false; {159010#false} is VALID [2022-04-28 04:07:21,355 INFO L290 TraceCheckUtils]: 23: Hoare triple {159010#false} assume 0 == ~cond; {159010#false} is VALID [2022-04-28 04:07:21,355 INFO L290 TraceCheckUtils]: 22: Hoare triple {159010#false} ~cond := #in~cond; {159010#false} is VALID [2022-04-28 04:07:21,355 INFO L272 TraceCheckUtils]: 21: Hoare triple {159010#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {159010#false} is VALID [2022-04-28 04:07:21,355 INFO L290 TraceCheckUtils]: 20: Hoare triple {159010#false} assume !(~d~0 == ~SIZE~0); {159010#false} is VALID [2022-04-28 04:07:21,355 INFO L290 TraceCheckUtils]: 19: Hoare triple {159010#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {159010#false} is VALID [2022-04-28 04:07:21,355 INFO L290 TraceCheckUtils]: 18: Hoare triple {159010#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {159010#false} is VALID [2022-04-28 04:07:21,356 INFO L290 TraceCheckUtils]: 17: Hoare triple {159122#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {159010#false} is VALID [2022-04-28 04:07:21,356 INFO L290 TraceCheckUtils]: 16: Hoare triple {159126#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [363] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {159122#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:07:21,357 INFO L290 TraceCheckUtils]: 15: Hoare triple {159126#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [366] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_871| |v_main_#t~post5_867|)) (.cse1 (= v_main_~c~0_1675 v_main_~c~0_1674))) (or (and (< v_main_~c~0_1674 (+ v_~last~0_662 1)) (< v_main_~c~0_1674 (+ v_~SIZE~0_597 1)) (< v_main_~c~0_1675 v_main_~c~0_1674)) (and .cse0 .cse1 (or (not (< v_main_~c~0_1675 v_~last~0_662)) (not (< v_main_~c~0_1675 v_~SIZE~0_597)))) (and .cse0 .cse1 (= v_~last~0_662 v_~last~0_662) (= v_~SIZE~0_597 v_~SIZE~0_597)))) InVars {~SIZE~0=v_~SIZE~0_597, main_~c~0=v_main_~c~0_1675, main_#t~post5=|v_main_#t~post5_871|, ~last~0=v_~last~0_662} OutVars{~SIZE~0=v_~SIZE~0_597, main_#t~post5=|v_main_#t~post5_867|, main_~c~0=v_main_~c~0_1674, ~last~0=v_~last~0_662} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {159126#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:07:21,357 INFO L290 TraceCheckUtils]: 14: Hoare triple {159126#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [365] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {159126#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:07:21,358 INFO L290 TraceCheckUtils]: 13: Hoare triple {159136#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [364] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~st~0_903 v_main_~st~0_902)) (.cse2 (= |v_main_#t~post5_868| |v_main_#t~post5_866|)) (.cse3 (= v_main_~c~0_1673 v_main_~c~0_1672)) (.cse0 (<= v_~last~0_661 v_main_~c~0_1673))) (or (and (= v_main_~st~0_902 0) (< v_main_~c~0_1672 (+ v_~SIZE~0_596 1)) (< v_main_~c~0_1673 v_main_~c~0_1672) .cse0) (and .cse1 (= v_~last~0_661 v_~last~0_661) .cse2 (= v_~SIZE~0_596 v_~SIZE~0_596) .cse3) (and .cse1 .cse2 .cse3 (or (not (< v_main_~c~0_1673 v_~SIZE~0_596)) (not .cse0))))) InVars {~SIZE~0=v_~SIZE~0_596, main_~c~0=v_main_~c~0_1673, main_#t~post5=|v_main_#t~post5_868|, main_~st~0=v_main_~st~0_903, ~last~0=v_~last~0_661} OutVars{~SIZE~0=v_~SIZE~0_596, main_#t~post5=|v_main_#t~post5_866|, main_~c~0=v_main_~c~0_1672, main_~st~0=v_main_~st~0_902, ~last~0=v_~last~0_661} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {159126#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:07:21,358 INFO L290 TraceCheckUtils]: 12: Hoare triple {159140#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {159136#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:07:21,358 INFO L290 TraceCheckUtils]: 11: Hoare triple {159140#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {159140#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:07:21,359 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {159009#true} {159140#(< 1 ~SIZE~0)} #86#return; {159140#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:07:21,359 INFO L290 TraceCheckUtils]: 9: Hoare triple {159009#true} assume true; {159009#true} is VALID [2022-04-28 04:07:21,359 INFO L290 TraceCheckUtils]: 8: Hoare triple {159009#true} assume !(0 == ~cond); {159009#true} is VALID [2022-04-28 04:07:21,359 INFO L290 TraceCheckUtils]: 7: Hoare triple {159009#true} ~cond := #in~cond; {159009#true} is VALID [2022-04-28 04:07:21,359 INFO L272 TraceCheckUtils]: 6: Hoare triple {159140#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {159009#true} is VALID [2022-04-28 04:07:21,359 INFO L290 TraceCheckUtils]: 5: Hoare triple {159140#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {159140#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:07:21,360 INFO L272 TraceCheckUtils]: 4: Hoare triple {159140#(< 1 ~SIZE~0)} call #t~ret7 := main(); {159140#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:07:21,360 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {159140#(< 1 ~SIZE~0)} {159009#true} #90#return; {159140#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:07:21,360 INFO L290 TraceCheckUtils]: 2: Hoare triple {159140#(< 1 ~SIZE~0)} assume true; {159140#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:07:21,361 INFO L290 TraceCheckUtils]: 1: Hoare triple {159009#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {159140#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:07:21,361 INFO L272 TraceCheckUtils]: 0: Hoare triple {159009#true} call ULTIMATE.init(); {159009#true} is VALID [2022-04-28 04:07:21,361 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:07:21,361 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2133477938] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:07:21,361 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:07:21,361 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:07:22,136 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:07:22,136 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1230775847] [2022-04-28 04:07:22,136 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1230775847] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:07:22,136 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:07:22,136 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [26] imperfect sequences [] total 26 [2022-04-28 04:07:22,136 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1754448165] [2022-04-28 04:07:22,136 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:07:22,137 INFO L78 Accepts]: Start accepts. Automaton has has 26 states, 26 states have (on average 2.0) internal successors, (52), 25 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 58 [2022-04-28 04:07:22,137 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:07:22,137 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 26 states, 26 states have (on average 2.0) internal successors, (52), 25 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:07:22,177 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:07:22,177 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 26 states [2022-04-28 04:07:22,177 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:07:22,178 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 26 interpolants. [2022-04-28 04:07:22,178 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=239, Invalid=951, Unknown=0, NotChecked=0, Total=1190 [2022-04-28 04:07:22,178 INFO L87 Difference]: Start difference. First operand 370 states and 440 transitions. Second operand has 26 states, 26 states have (on average 2.0) internal successors, (52), 25 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:07:26,718 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:07:26,718 INFO L93 Difference]: Finished difference Result 724 states and 855 transitions. [2022-04-28 04:07:26,718 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 26 states. [2022-04-28 04:07:26,718 INFO L78 Accepts]: Start accepts. Automaton has has 26 states, 26 states have (on average 2.0) internal successors, (52), 25 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 58 [2022-04-28 04:07:26,718 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:07:26,719 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 26 states, 26 states have (on average 2.0) internal successors, (52), 25 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:07:26,719 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 112 transitions. [2022-04-28 04:07:26,719 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 26 states, 26 states have (on average 2.0) internal successors, (52), 25 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:07:26,720 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 112 transitions. [2022-04-28 04:07:26,720 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 26 states and 112 transitions. [2022-04-28 04:07:26,796 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 112 edges. 112 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:07:26,804 INFO L225 Difference]: With dead ends: 724 [2022-04-28 04:07:26,804 INFO L226 Difference]: Without dead ends: 436 [2022-04-28 04:07:26,804 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 106 GetRequests, 54 SyntacticMatches, 16 SemanticMatches, 36 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 928 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=278, Invalid=1128, Unknown=0, NotChecked=0, Total=1406 [2022-04-28 04:07:26,805 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 62 mSDsluCounter, 25 mSDsCounter, 0 mSdLazyCounter, 1153 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 63 SdHoareTripleChecker+Valid, 49 SdHoareTripleChecker+Invalid, 1171 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 1153 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.8s IncrementalHoareTripleChecker+Time [2022-04-28 04:07:26,805 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [63 Valid, 49 Invalid, 1171 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 1153 Invalid, 0 Unknown, 0 Unchecked, 0.8s Time] [2022-04-28 04:07:26,805 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 436 states. [2022-04-28 04:07:28,907 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 436 to 370. [2022-04-28 04:07:28,907 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:07:28,907 INFO L82 GeneralOperation]: Start isEquivalent. First operand 436 states. Second operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:07:28,907 INFO L74 IsIncluded]: Start isIncluded. First operand 436 states. Second operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:07:28,908 INFO L87 Difference]: Start difference. First operand 436 states. Second operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:07:28,914 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:07:28,914 INFO L93 Difference]: Finished difference Result 436 states and 510 transitions. [2022-04-28 04:07:28,915 INFO L276 IsEmpty]: Start isEmpty. Operand 436 states and 510 transitions. [2022-04-28 04:07:28,915 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:07:28,915 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:07:28,915 INFO L74 IsIncluded]: Start isIncluded. First operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 436 states. [2022-04-28 04:07:28,915 INFO L87 Difference]: Start difference. First operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 436 states. [2022-04-28 04:07:28,922 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:07:28,922 INFO L93 Difference]: Finished difference Result 436 states and 510 transitions. [2022-04-28 04:07:28,922 INFO L276 IsEmpty]: Start isEmpty. Operand 436 states and 510 transitions. [2022-04-28 04:07:28,922 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:07:28,922 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:07:28,922 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:07:28,922 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:07:28,923 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:07:28,928 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 370 states to 370 states and 440 transitions. [2022-04-28 04:07:28,928 INFO L78 Accepts]: Start accepts. Automaton has 370 states and 440 transitions. Word has length 58 [2022-04-28 04:07:28,928 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:07:28,928 INFO L495 AbstractCegarLoop]: Abstraction has 370 states and 440 transitions. [2022-04-28 04:07:28,929 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 26 states, 26 states have (on average 2.0) internal successors, (52), 25 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:07:28,929 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 370 states and 440 transitions. [2022-04-28 04:07:31,316 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 440 edges. 440 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:07:31,316 INFO L276 IsEmpty]: Start isEmpty. Operand 370 states and 440 transitions. [2022-04-28 04:07:31,316 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-28 04:07:31,316 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:07:31,316 INFO L195 NwaCegarLoop]: trace histogram [12, 12, 7, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:07:31,334 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (66)] Forceful destruction successful, exit code 0 [2022-04-28 04:07:31,517 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 66 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable73 [2022-04-28 04:07:31,517 INFO L420 AbstractCegarLoop]: === Iteration 75 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:07:31,517 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:07:31,517 INFO L85 PathProgramCache]: Analyzing trace with hash -217324196, now seen corresponding path program 62 times [2022-04-28 04:07:31,517 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:07:31,517 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [557809934] [2022-04-28 04:07:31,751 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:07:34,419 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:07:34,527 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:07:34,528 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:07:34,531 INFO L85 PathProgramCache]: Analyzing trace with hash 1496795585, now seen corresponding path program 1 times [2022-04-28 04:07:34,531 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:07:34,531 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [229552501] [2022-04-28 04:07:34,531 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:07:34,531 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:07:34,537 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:07:34,579 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:07:34,580 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:07:34,584 INFO L290 TraceCheckUtils]: 0: Hoare triple {162280#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {162272#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:34,584 INFO L290 TraceCheckUtils]: 1: Hoare triple {162272#(<= 200000 ~SIZE~0)} assume true; {162272#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:34,585 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {162272#(<= 200000 ~SIZE~0)} {162267#true} #90#return; {162272#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:34,585 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:07:34,585 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:07:34,587 INFO L290 TraceCheckUtils]: 0: Hoare triple {162267#true} ~cond := #in~cond; {162267#true} is VALID [2022-04-28 04:07:34,587 INFO L290 TraceCheckUtils]: 1: Hoare triple {162267#true} assume !(0 == ~cond); {162267#true} is VALID [2022-04-28 04:07:34,587 INFO L290 TraceCheckUtils]: 2: Hoare triple {162267#true} assume true; {162267#true} is VALID [2022-04-28 04:07:34,587 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {162267#true} {162272#(<= 200000 ~SIZE~0)} #86#return; {162272#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:34,588 INFO L272 TraceCheckUtils]: 0: Hoare triple {162267#true} call ULTIMATE.init(); {162280#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:07:34,588 INFO L290 TraceCheckUtils]: 1: Hoare triple {162280#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {162272#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:34,588 INFO L290 TraceCheckUtils]: 2: Hoare triple {162272#(<= 200000 ~SIZE~0)} assume true; {162272#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:34,589 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {162272#(<= 200000 ~SIZE~0)} {162267#true} #90#return; {162272#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:34,589 INFO L272 TraceCheckUtils]: 4: Hoare triple {162272#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {162272#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:34,589 INFO L290 TraceCheckUtils]: 5: Hoare triple {162272#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {162272#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:34,589 INFO L272 TraceCheckUtils]: 6: Hoare triple {162272#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {162267#true} is VALID [2022-04-28 04:07:34,589 INFO L290 TraceCheckUtils]: 7: Hoare triple {162267#true} ~cond := #in~cond; {162267#true} is VALID [2022-04-28 04:07:34,589 INFO L290 TraceCheckUtils]: 8: Hoare triple {162267#true} assume !(0 == ~cond); {162267#true} is VALID [2022-04-28 04:07:34,589 INFO L290 TraceCheckUtils]: 9: Hoare triple {162267#true} assume true; {162267#true} is VALID [2022-04-28 04:07:34,590 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {162267#true} {162272#(<= 200000 ~SIZE~0)} #86#return; {162272#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:34,590 INFO L290 TraceCheckUtils]: 11: Hoare triple {162272#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {162272#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:34,590 INFO L290 TraceCheckUtils]: 12: Hoare triple {162272#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {162277#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:07:34,591 INFO L290 TraceCheckUtils]: 13: Hoare triple {162277#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [368] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1702 v_main_~c~0_1701)) (.cse1 (= v_main_~st~0_918 v_main_~st~0_917)) (.cse2 (<= v_~last~0_671 v_main_~c~0_1702))) (or (and (= |v_main_#t~post5_881| |v_main_#t~post5_879|) (= v_~SIZE~0_605 v_~SIZE~0_605) .cse0 (= v_~last~0_671 v_~last~0_671) .cse1) (and .cse0 .cse1 (or (not .cse2) (not (< v_main_~c~0_1702 v_~SIZE~0_605))) (= |v_main_#t~post5_879| |v_main_#t~post5_881|)) (and (= v_main_~st~0_917 0) (< v_main_~c~0_1701 (+ v_~SIZE~0_605 1)) (< v_main_~c~0_1702 v_main_~c~0_1701) .cse2))) InVars {~SIZE~0=v_~SIZE~0_605, main_~c~0=v_main_~c~0_1702, main_#t~post5=|v_main_#t~post5_881|, main_~st~0=v_main_~st~0_918, ~last~0=v_~last~0_671} OutVars{~SIZE~0=v_~SIZE~0_605, main_#t~post5=|v_main_#t~post5_879|, main_~c~0=v_main_~c~0_1701, main_~st~0=v_main_~st~0_917, ~last~0=v_~last~0_671} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {162278#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:07:34,591 INFO L290 TraceCheckUtils]: 14: Hoare triple {162278#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [369] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {162278#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:07:34,592 INFO L290 TraceCheckUtils]: 15: Hoare triple {162278#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [370] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_884| |v_main_#t~post5_880|)) (.cse1 (= v_main_~c~0_1704 v_main_~c~0_1703))) (or (and (< v_main_~c~0_1703 (+ v_~last~0_672 1)) (< v_main_~c~0_1704 v_main_~c~0_1703) (< v_main_~c~0_1703 (+ v_~SIZE~0_606 1))) (and .cse0 (= v_~SIZE~0_606 v_~SIZE~0_606) (= v_~last~0_672 v_~last~0_672) .cse1) (and .cse0 (or (not (< v_main_~c~0_1704 v_~SIZE~0_606)) (not (< v_main_~c~0_1704 v_~last~0_672))) .cse1))) InVars {~SIZE~0=v_~SIZE~0_606, main_~c~0=v_main_~c~0_1704, main_#t~post5=|v_main_#t~post5_884|, ~last~0=v_~last~0_672} OutVars{~SIZE~0=v_~SIZE~0_606, main_#t~post5=|v_main_#t~post5_880|, main_~c~0=v_main_~c~0_1703, ~last~0=v_~last~0_672} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {162278#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:07:34,592 INFO L290 TraceCheckUtils]: 16: Hoare triple {162278#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [367] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {162279#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:07:34,593 INFO L290 TraceCheckUtils]: 17: Hoare triple {162279#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {162268#false} is VALID [2022-04-28 04:07:34,593 INFO L290 TraceCheckUtils]: 18: Hoare triple {162268#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {162268#false} is VALID [2022-04-28 04:07:34,593 INFO L290 TraceCheckUtils]: 19: Hoare triple {162268#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {162268#false} is VALID [2022-04-28 04:07:34,593 INFO L290 TraceCheckUtils]: 20: Hoare triple {162268#false} assume !(~d~0 == ~SIZE~0); {162268#false} is VALID [2022-04-28 04:07:34,593 INFO L272 TraceCheckUtils]: 21: Hoare triple {162268#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {162268#false} is VALID [2022-04-28 04:07:34,593 INFO L290 TraceCheckUtils]: 22: Hoare triple {162268#false} ~cond := #in~cond; {162268#false} is VALID [2022-04-28 04:07:34,593 INFO L290 TraceCheckUtils]: 23: Hoare triple {162268#false} assume 0 == ~cond; {162268#false} is VALID [2022-04-28 04:07:34,593 INFO L290 TraceCheckUtils]: 24: Hoare triple {162268#false} assume !false; {162268#false} is VALID [2022-04-28 04:07:34,593 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:07:34,593 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:07:34,593 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [229552501] [2022-04-28 04:07:34,593 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [229552501] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:07:34,593 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [747058649] [2022-04-28 04:07:34,594 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:07:34,594 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:07:34,594 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:07:34,594 INFO L229 MonitoredProcess]: Starting monitored process 67 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:07:34,595 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (67)] Waiting until timeout for monitored process [2022-04-28 04:07:34,625 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:07:34,626 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:07:34,632 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:07:34,632 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:07:34,876 INFO L272 TraceCheckUtils]: 0: Hoare triple {162267#true} call ULTIMATE.init(); {162267#true} is VALID [2022-04-28 04:07:34,876 INFO L290 TraceCheckUtils]: 1: Hoare triple {162267#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {162272#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:34,877 INFO L290 TraceCheckUtils]: 2: Hoare triple {162272#(<= 200000 ~SIZE~0)} assume true; {162272#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:34,877 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {162272#(<= 200000 ~SIZE~0)} {162267#true} #90#return; {162272#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:34,877 INFO L272 TraceCheckUtils]: 4: Hoare triple {162272#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {162272#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:34,878 INFO L290 TraceCheckUtils]: 5: Hoare triple {162272#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {162272#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:34,878 INFO L272 TraceCheckUtils]: 6: Hoare triple {162272#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {162272#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:34,878 INFO L290 TraceCheckUtils]: 7: Hoare triple {162272#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {162272#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:34,879 INFO L290 TraceCheckUtils]: 8: Hoare triple {162272#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {162272#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:34,879 INFO L290 TraceCheckUtils]: 9: Hoare triple {162272#(<= 200000 ~SIZE~0)} assume true; {162272#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:34,879 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {162272#(<= 200000 ~SIZE~0)} {162272#(<= 200000 ~SIZE~0)} #86#return; {162272#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:34,879 INFO L290 TraceCheckUtils]: 11: Hoare triple {162272#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {162272#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:34,880 INFO L290 TraceCheckUtils]: 12: Hoare triple {162272#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {162320#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:07:34,880 INFO L290 TraceCheckUtils]: 13: Hoare triple {162320#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [368] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1702 v_main_~c~0_1701)) (.cse1 (= v_main_~st~0_918 v_main_~st~0_917)) (.cse2 (<= v_~last~0_671 v_main_~c~0_1702))) (or (and (= |v_main_#t~post5_881| |v_main_#t~post5_879|) (= v_~SIZE~0_605 v_~SIZE~0_605) .cse0 (= v_~last~0_671 v_~last~0_671) .cse1) (and .cse0 .cse1 (or (not .cse2) (not (< v_main_~c~0_1702 v_~SIZE~0_605))) (= |v_main_#t~post5_879| |v_main_#t~post5_881|)) (and (= v_main_~st~0_917 0) (< v_main_~c~0_1701 (+ v_~SIZE~0_605 1)) (< v_main_~c~0_1702 v_main_~c~0_1701) .cse2))) InVars {~SIZE~0=v_~SIZE~0_605, main_~c~0=v_main_~c~0_1702, main_#t~post5=|v_main_#t~post5_881|, main_~st~0=v_main_~st~0_918, ~last~0=v_~last~0_671} OutVars{~SIZE~0=v_~SIZE~0_605, main_#t~post5=|v_main_#t~post5_879|, main_~c~0=v_main_~c~0_1701, main_~st~0=v_main_~st~0_917, ~last~0=v_~last~0_671} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {162324#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:07:34,881 INFO L290 TraceCheckUtils]: 14: Hoare triple {162324#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [369] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {162324#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:07:34,882 INFO L290 TraceCheckUtils]: 15: Hoare triple {162324#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [370] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_884| |v_main_#t~post5_880|)) (.cse1 (= v_main_~c~0_1704 v_main_~c~0_1703))) (or (and (< v_main_~c~0_1703 (+ v_~last~0_672 1)) (< v_main_~c~0_1704 v_main_~c~0_1703) (< v_main_~c~0_1703 (+ v_~SIZE~0_606 1))) (and .cse0 (= v_~SIZE~0_606 v_~SIZE~0_606) (= v_~last~0_672 v_~last~0_672) .cse1) (and .cse0 (or (not (< v_main_~c~0_1704 v_~SIZE~0_606)) (not (< v_main_~c~0_1704 v_~last~0_672))) .cse1))) InVars {~SIZE~0=v_~SIZE~0_606, main_~c~0=v_main_~c~0_1704, main_#t~post5=|v_main_#t~post5_884|, ~last~0=v_~last~0_672} OutVars{~SIZE~0=v_~SIZE~0_606, main_#t~post5=|v_main_#t~post5_880|, main_~c~0=v_main_~c~0_1703, ~last~0=v_~last~0_672} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {162324#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:07:34,882 INFO L290 TraceCheckUtils]: 16: Hoare triple {162324#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [367] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {162334#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:07:34,883 INFO L290 TraceCheckUtils]: 17: Hoare triple {162334#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {162268#false} is VALID [2022-04-28 04:07:34,883 INFO L290 TraceCheckUtils]: 18: Hoare triple {162268#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {162268#false} is VALID [2022-04-28 04:07:34,883 INFO L290 TraceCheckUtils]: 19: Hoare triple {162268#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {162268#false} is VALID [2022-04-28 04:07:34,883 INFO L290 TraceCheckUtils]: 20: Hoare triple {162268#false} assume !(~d~0 == ~SIZE~0); {162268#false} is VALID [2022-04-28 04:07:34,883 INFO L272 TraceCheckUtils]: 21: Hoare triple {162268#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {162268#false} is VALID [2022-04-28 04:07:34,883 INFO L290 TraceCheckUtils]: 22: Hoare triple {162268#false} ~cond := #in~cond; {162268#false} is VALID [2022-04-28 04:07:34,883 INFO L290 TraceCheckUtils]: 23: Hoare triple {162268#false} assume 0 == ~cond; {162268#false} is VALID [2022-04-28 04:07:34,883 INFO L290 TraceCheckUtils]: 24: Hoare triple {162268#false} assume !false; {162268#false} is VALID [2022-04-28 04:07:34,883 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:07:34,883 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:07:35,198 INFO L290 TraceCheckUtils]: 24: Hoare triple {162268#false} assume !false; {162268#false} is VALID [2022-04-28 04:07:35,198 INFO L290 TraceCheckUtils]: 23: Hoare triple {162268#false} assume 0 == ~cond; {162268#false} is VALID [2022-04-28 04:07:35,199 INFO L290 TraceCheckUtils]: 22: Hoare triple {162268#false} ~cond := #in~cond; {162268#false} is VALID [2022-04-28 04:07:35,199 INFO L272 TraceCheckUtils]: 21: Hoare triple {162268#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {162268#false} is VALID [2022-04-28 04:07:35,199 INFO L290 TraceCheckUtils]: 20: Hoare triple {162268#false} assume !(~d~0 == ~SIZE~0); {162268#false} is VALID [2022-04-28 04:07:35,199 INFO L290 TraceCheckUtils]: 19: Hoare triple {162268#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {162268#false} is VALID [2022-04-28 04:07:35,199 INFO L290 TraceCheckUtils]: 18: Hoare triple {162268#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {162268#false} is VALID [2022-04-28 04:07:35,199 INFO L290 TraceCheckUtils]: 17: Hoare triple {162380#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {162268#false} is VALID [2022-04-28 04:07:35,200 INFO L290 TraceCheckUtils]: 16: Hoare triple {162384#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [367] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {162380#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:07:35,200 INFO L290 TraceCheckUtils]: 15: Hoare triple {162384#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [370] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= |v_main_#t~post5_884| |v_main_#t~post5_880|)) (.cse1 (= v_main_~c~0_1704 v_main_~c~0_1703))) (or (and (< v_main_~c~0_1703 (+ v_~last~0_672 1)) (< v_main_~c~0_1704 v_main_~c~0_1703) (< v_main_~c~0_1703 (+ v_~SIZE~0_606 1))) (and .cse0 (= v_~SIZE~0_606 v_~SIZE~0_606) (= v_~last~0_672 v_~last~0_672) .cse1) (and .cse0 (or (not (< v_main_~c~0_1704 v_~SIZE~0_606)) (not (< v_main_~c~0_1704 v_~last~0_672))) .cse1))) InVars {~SIZE~0=v_~SIZE~0_606, main_~c~0=v_main_~c~0_1704, main_#t~post5=|v_main_#t~post5_884|, ~last~0=v_~last~0_672} OutVars{~SIZE~0=v_~SIZE~0_606, main_#t~post5=|v_main_#t~post5_880|, main_~c~0=v_main_~c~0_1703, ~last~0=v_~last~0_672} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {162384#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:07:35,200 INFO L290 TraceCheckUtils]: 14: Hoare triple {162384#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [369] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {162384#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:07:35,201 INFO L290 TraceCheckUtils]: 13: Hoare triple {162394#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [368] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1702 v_main_~c~0_1701)) (.cse1 (= v_main_~st~0_918 v_main_~st~0_917)) (.cse2 (<= v_~last~0_671 v_main_~c~0_1702))) (or (and (= |v_main_#t~post5_881| |v_main_#t~post5_879|) (= v_~SIZE~0_605 v_~SIZE~0_605) .cse0 (= v_~last~0_671 v_~last~0_671) .cse1) (and .cse0 .cse1 (or (not .cse2) (not (< v_main_~c~0_1702 v_~SIZE~0_605))) (= |v_main_#t~post5_879| |v_main_#t~post5_881|)) (and (= v_main_~st~0_917 0) (< v_main_~c~0_1701 (+ v_~SIZE~0_605 1)) (< v_main_~c~0_1702 v_main_~c~0_1701) .cse2))) InVars {~SIZE~0=v_~SIZE~0_605, main_~c~0=v_main_~c~0_1702, main_#t~post5=|v_main_#t~post5_881|, main_~st~0=v_main_~st~0_918, ~last~0=v_~last~0_671} OutVars{~SIZE~0=v_~SIZE~0_605, main_#t~post5=|v_main_#t~post5_879|, main_~c~0=v_main_~c~0_1701, main_~st~0=v_main_~st~0_917, ~last~0=v_~last~0_671} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {162384#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:07:35,201 INFO L290 TraceCheckUtils]: 12: Hoare triple {162398#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {162394#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:07:35,202 INFO L290 TraceCheckUtils]: 11: Hoare triple {162398#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {162398#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:07:35,202 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {162267#true} {162398#(< 1 ~SIZE~0)} #86#return; {162398#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:07:35,202 INFO L290 TraceCheckUtils]: 9: Hoare triple {162267#true} assume true; {162267#true} is VALID [2022-04-28 04:07:35,202 INFO L290 TraceCheckUtils]: 8: Hoare triple {162267#true} assume !(0 == ~cond); {162267#true} is VALID [2022-04-28 04:07:35,202 INFO L290 TraceCheckUtils]: 7: Hoare triple {162267#true} ~cond := #in~cond; {162267#true} is VALID [2022-04-28 04:07:35,202 INFO L272 TraceCheckUtils]: 6: Hoare triple {162398#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {162267#true} is VALID [2022-04-28 04:07:35,203 INFO L290 TraceCheckUtils]: 5: Hoare triple {162398#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {162398#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:07:35,203 INFO L272 TraceCheckUtils]: 4: Hoare triple {162398#(< 1 ~SIZE~0)} call #t~ret7 := main(); {162398#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:07:35,203 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {162398#(< 1 ~SIZE~0)} {162267#true} #90#return; {162398#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:07:35,204 INFO L290 TraceCheckUtils]: 2: Hoare triple {162398#(< 1 ~SIZE~0)} assume true; {162398#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:07:35,204 INFO L290 TraceCheckUtils]: 1: Hoare triple {162267#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {162398#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:07:35,204 INFO L272 TraceCheckUtils]: 0: Hoare triple {162267#true} call ULTIMATE.init(); {162267#true} is VALID [2022-04-28 04:07:35,204 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:07:35,204 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [747058649] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:07:35,204 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:07:35,204 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:07:36,001 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:07:36,001 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [557809934] [2022-04-28 04:07:36,001 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [557809934] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:07:36,001 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:07:36,001 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [27] imperfect sequences [] total 27 [2022-04-28 04:07:36,001 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1456573837] [2022-04-28 04:07:36,001 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:07:36,001 INFO L78 Accepts]: Start accepts. Automaton has has 27 states, 27 states have (on average 1.9259259259259258) internal successors, (52), 26 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 58 [2022-04-28 04:07:36,001 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:07:36,002 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 27 states, 27 states have (on average 1.9259259259259258) internal successors, (52), 26 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:07:36,042 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:07:36,042 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 27 states [2022-04-28 04:07:36,042 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:07:36,042 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 27 interpolants. [2022-04-28 04:07:36,042 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=254, Invalid=1006, Unknown=0, NotChecked=0, Total=1260 [2022-04-28 04:07:36,043 INFO L87 Difference]: Start difference. First operand 370 states and 440 transitions. Second operand has 27 states, 27 states have (on average 1.9259259259259258) internal successors, (52), 26 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:07:40,743 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:07:40,743 INFO L93 Difference]: Finished difference Result 715 states and 846 transitions. [2022-04-28 04:07:40,743 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 27 states. [2022-04-28 04:07:40,743 INFO L78 Accepts]: Start accepts. Automaton has has 27 states, 27 states have (on average 1.9259259259259258) internal successors, (52), 26 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 58 [2022-04-28 04:07:40,744 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:07:40,744 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 27 states have (on average 1.9259259259259258) internal successors, (52), 26 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:07:40,744 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 113 transitions. [2022-04-28 04:07:40,744 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 27 states have (on average 1.9259259259259258) internal successors, (52), 26 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:07:40,745 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 113 transitions. [2022-04-28 04:07:40,745 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 27 states and 113 transitions. [2022-04-28 04:07:40,818 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 113 edges. 113 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:07:40,826 INFO L225 Difference]: With dead ends: 715 [2022-04-28 04:07:40,826 INFO L226 Difference]: Without dead ends: 427 [2022-04-28 04:07:40,826 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 106 GetRequests, 54 SyntacticMatches, 15 SemanticMatches, 37 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 939 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=295, Invalid=1187, Unknown=0, NotChecked=0, Total=1482 [2022-04-28 04:07:40,826 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 75 mSDsluCounter, 19 mSDsCounter, 0 mSdLazyCounter, 1343 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 76 SdHoareTripleChecker+Valid, 43 SdHoareTripleChecker+Invalid, 1362 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 1343 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-28 04:07:40,826 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [76 Valid, 43 Invalid, 1362 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 1343 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-28 04:07:40,827 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 427 states. [2022-04-28 04:07:42,970 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 427 to 370. [2022-04-28 04:07:42,971 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:07:42,971 INFO L82 GeneralOperation]: Start isEquivalent. First operand 427 states. Second operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:07:42,971 INFO L74 IsIncluded]: Start isIncluded. First operand 427 states. Second operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:07:42,972 INFO L87 Difference]: Start difference. First operand 427 states. Second operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:07:42,979 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:07:42,979 INFO L93 Difference]: Finished difference Result 427 states and 501 transitions. [2022-04-28 04:07:42,979 INFO L276 IsEmpty]: Start isEmpty. Operand 427 states and 501 transitions. [2022-04-28 04:07:42,979 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:07:42,979 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:07:42,980 INFO L74 IsIncluded]: Start isIncluded. First operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 427 states. [2022-04-28 04:07:42,980 INFO L87 Difference]: Start difference. First operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 427 states. [2022-04-28 04:07:42,987 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:07:42,987 INFO L93 Difference]: Finished difference Result 427 states and 501 transitions. [2022-04-28 04:07:42,987 INFO L276 IsEmpty]: Start isEmpty. Operand 427 states and 501 transitions. [2022-04-28 04:07:42,988 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:07:42,988 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:07:42,988 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:07:42,988 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:07:42,988 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:07:42,994 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 370 states to 370 states and 440 transitions. [2022-04-28 04:07:42,994 INFO L78 Accepts]: Start accepts. Automaton has 370 states and 440 transitions. Word has length 58 [2022-04-28 04:07:42,994 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:07:42,994 INFO L495 AbstractCegarLoop]: Abstraction has 370 states and 440 transitions. [2022-04-28 04:07:42,994 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 27 states, 27 states have (on average 1.9259259259259258) internal successors, (52), 26 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:07:42,994 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 370 states and 440 transitions. [2022-04-28 04:07:45,446 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 440 edges. 440 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:07:45,446 INFO L276 IsEmpty]: Start isEmpty. Operand 370 states and 440 transitions. [2022-04-28 04:07:45,446 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-28 04:07:45,446 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:07:45,446 INFO L195 NwaCegarLoop]: trace histogram [12, 12, 8, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:07:45,462 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (67)] Forceful destruction successful, exit code 0 [2022-04-28 04:07:45,662 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 67 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable74 [2022-04-28 04:07:45,662 INFO L420 AbstractCegarLoop]: === Iteration 76 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:07:45,662 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:07:45,662 INFO L85 PathProgramCache]: Analyzing trace with hash -2022762530, now seen corresponding path program 63 times [2022-04-28 04:07:45,662 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:07:45,662 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [49247492] [2022-04-28 04:07:45,915 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:07:50,029 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:07:50,130 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:07:50,131 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:07:50,134 INFO L85 PathProgramCache]: Analyzing trace with hash -305648959, now seen corresponding path program 1 times [2022-04-28 04:07:50,134 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:07:50,134 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [640426542] [2022-04-28 04:07:50,134 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:07:50,134 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:07:50,140 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:07:50,188 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:07:50,189 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:07:50,192 INFO L290 TraceCheckUtils]: 0: Hoare triple {165503#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {165495#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:50,193 INFO L290 TraceCheckUtils]: 1: Hoare triple {165495#(<= 200000 ~SIZE~0)} assume true; {165495#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:50,193 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {165495#(<= 200000 ~SIZE~0)} {165490#true} #90#return; {165495#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:50,193 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:07:50,193 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:07:50,195 INFO L290 TraceCheckUtils]: 0: Hoare triple {165490#true} ~cond := #in~cond; {165490#true} is VALID [2022-04-28 04:07:50,195 INFO L290 TraceCheckUtils]: 1: Hoare triple {165490#true} assume !(0 == ~cond); {165490#true} is VALID [2022-04-28 04:07:50,195 INFO L290 TraceCheckUtils]: 2: Hoare triple {165490#true} assume true; {165490#true} is VALID [2022-04-28 04:07:50,195 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {165490#true} {165495#(<= 200000 ~SIZE~0)} #86#return; {165495#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:50,196 INFO L272 TraceCheckUtils]: 0: Hoare triple {165490#true} call ULTIMATE.init(); {165503#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:07:50,196 INFO L290 TraceCheckUtils]: 1: Hoare triple {165503#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {165495#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:50,197 INFO L290 TraceCheckUtils]: 2: Hoare triple {165495#(<= 200000 ~SIZE~0)} assume true; {165495#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:50,197 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {165495#(<= 200000 ~SIZE~0)} {165490#true} #90#return; {165495#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:50,197 INFO L272 TraceCheckUtils]: 4: Hoare triple {165495#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {165495#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:50,197 INFO L290 TraceCheckUtils]: 5: Hoare triple {165495#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {165495#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:50,197 INFO L272 TraceCheckUtils]: 6: Hoare triple {165495#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {165490#true} is VALID [2022-04-28 04:07:50,198 INFO L290 TraceCheckUtils]: 7: Hoare triple {165490#true} ~cond := #in~cond; {165490#true} is VALID [2022-04-28 04:07:50,198 INFO L290 TraceCheckUtils]: 8: Hoare triple {165490#true} assume !(0 == ~cond); {165490#true} is VALID [2022-04-28 04:07:50,198 INFO L290 TraceCheckUtils]: 9: Hoare triple {165490#true} assume true; {165490#true} is VALID [2022-04-28 04:07:50,198 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {165490#true} {165495#(<= 200000 ~SIZE~0)} #86#return; {165495#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:50,198 INFO L290 TraceCheckUtils]: 11: Hoare triple {165495#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {165495#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:50,199 INFO L290 TraceCheckUtils]: 12: Hoare triple {165495#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {165500#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:07:50,199 INFO L290 TraceCheckUtils]: 13: Hoare triple {165500#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [372] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1731 v_main_~c~0_1730)) (.cse1 (= |v_main_#t~post5_894| |v_main_#t~post5_892|)) (.cse2 (= v_main_~st~0_932 v_main_~st~0_931)) (.cse3 (<= v_~last~0_681 v_main_~c~0_1731))) (or (and .cse0 .cse1 (= v_~SIZE~0_614 v_~SIZE~0_614) .cse2 (= v_~last~0_681 v_~last~0_681)) (and .cse0 .cse1 .cse2 (or (not .cse3) (not (< v_main_~c~0_1731 v_~SIZE~0_614)))) (and (< v_main_~c~0_1731 v_main_~c~0_1730) (= v_main_~st~0_931 0) (< v_main_~c~0_1730 (+ v_~SIZE~0_614 1)) .cse3))) InVars {~SIZE~0=v_~SIZE~0_614, main_~c~0=v_main_~c~0_1731, main_#t~post5=|v_main_#t~post5_894|, main_~st~0=v_main_~st~0_932, ~last~0=v_~last~0_681} OutVars{~SIZE~0=v_~SIZE~0_614, main_#t~post5=|v_main_#t~post5_892|, main_~c~0=v_main_~c~0_1730, main_~st~0=v_main_~st~0_931, ~last~0=v_~last~0_681} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {165501#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:07:50,200 INFO L290 TraceCheckUtils]: 14: Hoare triple {165501#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [373] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {165501#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:07:50,200 INFO L290 TraceCheckUtils]: 15: Hoare triple {165501#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [374] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1733 v_main_~c~0_1732)) (.cse1 (= |v_main_#t~post5_897| |v_main_#t~post5_893|))) (or (and .cse0 .cse1 (= v_~SIZE~0_615 v_~SIZE~0_615) (= v_~last~0_682 v_~last~0_682)) (and .cse0 .cse1 (or (not (< v_main_~c~0_1733 v_~last~0_682)) (not (< v_main_~c~0_1733 v_~SIZE~0_615)))) (and (< v_main_~c~0_1733 v_main_~c~0_1732) (< v_main_~c~0_1732 (+ v_~SIZE~0_615 1)) (< v_main_~c~0_1732 (+ v_~last~0_682 1))))) InVars {~SIZE~0=v_~SIZE~0_615, main_~c~0=v_main_~c~0_1733, main_#t~post5=|v_main_#t~post5_897|, ~last~0=v_~last~0_682} OutVars{~SIZE~0=v_~SIZE~0_615, main_#t~post5=|v_main_#t~post5_893|, main_~c~0=v_main_~c~0_1732, ~last~0=v_~last~0_682} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {165501#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:07:50,201 INFO L290 TraceCheckUtils]: 16: Hoare triple {165501#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [371] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {165502#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:07:50,201 INFO L290 TraceCheckUtils]: 17: Hoare triple {165502#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {165491#false} is VALID [2022-04-28 04:07:50,201 INFO L290 TraceCheckUtils]: 18: Hoare triple {165491#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {165491#false} is VALID [2022-04-28 04:07:50,201 INFO L290 TraceCheckUtils]: 19: Hoare triple {165491#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {165491#false} is VALID [2022-04-28 04:07:50,201 INFO L290 TraceCheckUtils]: 20: Hoare triple {165491#false} assume !(~d~0 == ~SIZE~0); {165491#false} is VALID [2022-04-28 04:07:50,201 INFO L272 TraceCheckUtils]: 21: Hoare triple {165491#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {165491#false} is VALID [2022-04-28 04:07:50,201 INFO L290 TraceCheckUtils]: 22: Hoare triple {165491#false} ~cond := #in~cond; {165491#false} is VALID [2022-04-28 04:07:50,201 INFO L290 TraceCheckUtils]: 23: Hoare triple {165491#false} assume 0 == ~cond; {165491#false} is VALID [2022-04-28 04:07:50,201 INFO L290 TraceCheckUtils]: 24: Hoare triple {165491#false} assume !false; {165491#false} is VALID [2022-04-28 04:07:50,201 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:07:50,202 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:07:50,202 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [640426542] [2022-04-28 04:07:50,202 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [640426542] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:07:50,202 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [124973440] [2022-04-28 04:07:50,202 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:07:50,202 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:07:50,202 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:07:50,203 INFO L229 MonitoredProcess]: Starting monitored process 68 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:07:50,204 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (68)] Waiting until timeout for monitored process [2022-04-28 04:07:50,235 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:07:50,235 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:07:50,242 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:07:50,242 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:07:50,493 INFO L272 TraceCheckUtils]: 0: Hoare triple {165490#true} call ULTIMATE.init(); {165490#true} is VALID [2022-04-28 04:07:50,494 INFO L290 TraceCheckUtils]: 1: Hoare triple {165490#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {165495#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:50,494 INFO L290 TraceCheckUtils]: 2: Hoare triple {165495#(<= 200000 ~SIZE~0)} assume true; {165495#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:50,494 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {165495#(<= 200000 ~SIZE~0)} {165490#true} #90#return; {165495#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:50,494 INFO L272 TraceCheckUtils]: 4: Hoare triple {165495#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {165495#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:50,495 INFO L290 TraceCheckUtils]: 5: Hoare triple {165495#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {165495#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:50,495 INFO L272 TraceCheckUtils]: 6: Hoare triple {165495#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {165495#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:50,495 INFO L290 TraceCheckUtils]: 7: Hoare triple {165495#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {165495#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:50,496 INFO L290 TraceCheckUtils]: 8: Hoare triple {165495#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {165495#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:50,496 INFO L290 TraceCheckUtils]: 9: Hoare triple {165495#(<= 200000 ~SIZE~0)} assume true; {165495#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:50,496 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {165495#(<= 200000 ~SIZE~0)} {165495#(<= 200000 ~SIZE~0)} #86#return; {165495#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:50,496 INFO L290 TraceCheckUtils]: 11: Hoare triple {165495#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {165495#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:07:50,497 INFO L290 TraceCheckUtils]: 12: Hoare triple {165495#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {165543#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:07:50,497 INFO L290 TraceCheckUtils]: 13: Hoare triple {165543#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [372] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1731 v_main_~c~0_1730)) (.cse1 (= |v_main_#t~post5_894| |v_main_#t~post5_892|)) (.cse2 (= v_main_~st~0_932 v_main_~st~0_931)) (.cse3 (<= v_~last~0_681 v_main_~c~0_1731))) (or (and .cse0 .cse1 (= v_~SIZE~0_614 v_~SIZE~0_614) .cse2 (= v_~last~0_681 v_~last~0_681)) (and .cse0 .cse1 .cse2 (or (not .cse3) (not (< v_main_~c~0_1731 v_~SIZE~0_614)))) (and (< v_main_~c~0_1731 v_main_~c~0_1730) (= v_main_~st~0_931 0) (< v_main_~c~0_1730 (+ v_~SIZE~0_614 1)) .cse3))) InVars {~SIZE~0=v_~SIZE~0_614, main_~c~0=v_main_~c~0_1731, main_#t~post5=|v_main_#t~post5_894|, main_~st~0=v_main_~st~0_932, ~last~0=v_~last~0_681} OutVars{~SIZE~0=v_~SIZE~0_614, main_#t~post5=|v_main_#t~post5_892|, main_~c~0=v_main_~c~0_1730, main_~st~0=v_main_~st~0_931, ~last~0=v_~last~0_681} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {165547#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:07:50,498 INFO L290 TraceCheckUtils]: 14: Hoare triple {165547#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [373] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {165547#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:07:50,499 INFO L290 TraceCheckUtils]: 15: Hoare triple {165547#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [374] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1733 v_main_~c~0_1732)) (.cse1 (= |v_main_#t~post5_897| |v_main_#t~post5_893|))) (or (and .cse0 .cse1 (= v_~SIZE~0_615 v_~SIZE~0_615) (= v_~last~0_682 v_~last~0_682)) (and .cse0 .cse1 (or (not (< v_main_~c~0_1733 v_~last~0_682)) (not (< v_main_~c~0_1733 v_~SIZE~0_615)))) (and (< v_main_~c~0_1733 v_main_~c~0_1732) (< v_main_~c~0_1732 (+ v_~SIZE~0_615 1)) (< v_main_~c~0_1732 (+ v_~last~0_682 1))))) InVars {~SIZE~0=v_~SIZE~0_615, main_~c~0=v_main_~c~0_1733, main_#t~post5=|v_main_#t~post5_897|, ~last~0=v_~last~0_682} OutVars{~SIZE~0=v_~SIZE~0_615, main_#t~post5=|v_main_#t~post5_893|, main_~c~0=v_main_~c~0_1732, ~last~0=v_~last~0_682} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {165547#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:07:50,499 INFO L290 TraceCheckUtils]: 16: Hoare triple {165547#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [371] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {165557#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:07:50,500 INFO L290 TraceCheckUtils]: 17: Hoare triple {165557#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {165491#false} is VALID [2022-04-28 04:07:50,500 INFO L290 TraceCheckUtils]: 18: Hoare triple {165491#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {165491#false} is VALID [2022-04-28 04:07:50,500 INFO L290 TraceCheckUtils]: 19: Hoare triple {165491#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {165491#false} is VALID [2022-04-28 04:07:50,500 INFO L290 TraceCheckUtils]: 20: Hoare triple {165491#false} assume !(~d~0 == ~SIZE~0); {165491#false} is VALID [2022-04-28 04:07:50,500 INFO L272 TraceCheckUtils]: 21: Hoare triple {165491#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {165491#false} is VALID [2022-04-28 04:07:50,500 INFO L290 TraceCheckUtils]: 22: Hoare triple {165491#false} ~cond := #in~cond; {165491#false} is VALID [2022-04-28 04:07:50,500 INFO L290 TraceCheckUtils]: 23: Hoare triple {165491#false} assume 0 == ~cond; {165491#false} is VALID [2022-04-28 04:07:50,500 INFO L290 TraceCheckUtils]: 24: Hoare triple {165491#false} assume !false; {165491#false} is VALID [2022-04-28 04:07:50,500 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:07:50,500 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:07:50,816 INFO L290 TraceCheckUtils]: 24: Hoare triple {165491#false} assume !false; {165491#false} is VALID [2022-04-28 04:07:50,817 INFO L290 TraceCheckUtils]: 23: Hoare triple {165491#false} assume 0 == ~cond; {165491#false} is VALID [2022-04-28 04:07:50,817 INFO L290 TraceCheckUtils]: 22: Hoare triple {165491#false} ~cond := #in~cond; {165491#false} is VALID [2022-04-28 04:07:50,817 INFO L272 TraceCheckUtils]: 21: Hoare triple {165491#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {165491#false} is VALID [2022-04-28 04:07:50,817 INFO L290 TraceCheckUtils]: 20: Hoare triple {165491#false} assume !(~d~0 == ~SIZE~0); {165491#false} is VALID [2022-04-28 04:07:50,817 INFO L290 TraceCheckUtils]: 19: Hoare triple {165491#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {165491#false} is VALID [2022-04-28 04:07:50,817 INFO L290 TraceCheckUtils]: 18: Hoare triple {165491#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {165491#false} is VALID [2022-04-28 04:07:50,817 INFO L290 TraceCheckUtils]: 17: Hoare triple {165603#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {165491#false} is VALID [2022-04-28 04:07:50,818 INFO L290 TraceCheckUtils]: 16: Hoare triple {165607#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [371] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {165603#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:07:50,818 INFO L290 TraceCheckUtils]: 15: Hoare triple {165607#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [374] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1733 v_main_~c~0_1732)) (.cse1 (= |v_main_#t~post5_897| |v_main_#t~post5_893|))) (or (and .cse0 .cse1 (= v_~SIZE~0_615 v_~SIZE~0_615) (= v_~last~0_682 v_~last~0_682)) (and .cse0 .cse1 (or (not (< v_main_~c~0_1733 v_~last~0_682)) (not (< v_main_~c~0_1733 v_~SIZE~0_615)))) (and (< v_main_~c~0_1733 v_main_~c~0_1732) (< v_main_~c~0_1732 (+ v_~SIZE~0_615 1)) (< v_main_~c~0_1732 (+ v_~last~0_682 1))))) InVars {~SIZE~0=v_~SIZE~0_615, main_~c~0=v_main_~c~0_1733, main_#t~post5=|v_main_#t~post5_897|, ~last~0=v_~last~0_682} OutVars{~SIZE~0=v_~SIZE~0_615, main_#t~post5=|v_main_#t~post5_893|, main_~c~0=v_main_~c~0_1732, ~last~0=v_~last~0_682} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {165607#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:07:50,818 INFO L290 TraceCheckUtils]: 14: Hoare triple {165607#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [373] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {165607#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:07:50,819 INFO L290 TraceCheckUtils]: 13: Hoare triple {165617#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [372] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1731 v_main_~c~0_1730)) (.cse1 (= |v_main_#t~post5_894| |v_main_#t~post5_892|)) (.cse2 (= v_main_~st~0_932 v_main_~st~0_931)) (.cse3 (<= v_~last~0_681 v_main_~c~0_1731))) (or (and .cse0 .cse1 (= v_~SIZE~0_614 v_~SIZE~0_614) .cse2 (= v_~last~0_681 v_~last~0_681)) (and .cse0 .cse1 .cse2 (or (not .cse3) (not (< v_main_~c~0_1731 v_~SIZE~0_614)))) (and (< v_main_~c~0_1731 v_main_~c~0_1730) (= v_main_~st~0_931 0) (< v_main_~c~0_1730 (+ v_~SIZE~0_614 1)) .cse3))) InVars {~SIZE~0=v_~SIZE~0_614, main_~c~0=v_main_~c~0_1731, main_#t~post5=|v_main_#t~post5_894|, main_~st~0=v_main_~st~0_932, ~last~0=v_~last~0_681} OutVars{~SIZE~0=v_~SIZE~0_614, main_#t~post5=|v_main_#t~post5_892|, main_~c~0=v_main_~c~0_1730, main_~st~0=v_main_~st~0_931, ~last~0=v_~last~0_681} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {165607#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:07:50,820 INFO L290 TraceCheckUtils]: 12: Hoare triple {165621#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {165617#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:07:50,820 INFO L290 TraceCheckUtils]: 11: Hoare triple {165621#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {165621#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:07:50,820 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {165490#true} {165621#(< 1 ~SIZE~0)} #86#return; {165621#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:07:50,820 INFO L290 TraceCheckUtils]: 9: Hoare triple {165490#true} assume true; {165490#true} is VALID [2022-04-28 04:07:50,820 INFO L290 TraceCheckUtils]: 8: Hoare triple {165490#true} assume !(0 == ~cond); {165490#true} is VALID [2022-04-28 04:07:50,820 INFO L290 TraceCheckUtils]: 7: Hoare triple {165490#true} ~cond := #in~cond; {165490#true} is VALID [2022-04-28 04:07:50,820 INFO L272 TraceCheckUtils]: 6: Hoare triple {165621#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {165490#true} is VALID [2022-04-28 04:07:50,821 INFO L290 TraceCheckUtils]: 5: Hoare triple {165621#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {165621#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:07:50,821 INFO L272 TraceCheckUtils]: 4: Hoare triple {165621#(< 1 ~SIZE~0)} call #t~ret7 := main(); {165621#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:07:50,821 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {165621#(< 1 ~SIZE~0)} {165490#true} #90#return; {165621#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:07:50,822 INFO L290 TraceCheckUtils]: 2: Hoare triple {165621#(< 1 ~SIZE~0)} assume true; {165621#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:07:50,822 INFO L290 TraceCheckUtils]: 1: Hoare triple {165490#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {165621#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:07:50,822 INFO L272 TraceCheckUtils]: 0: Hoare triple {165490#true} call ULTIMATE.init(); {165490#true} is VALID [2022-04-28 04:07:50,822 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:07:50,822 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [124973440] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:07:50,822 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:07:50,823 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:07:51,645 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:07:51,645 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [49247492] [2022-04-28 04:07:51,645 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [49247492] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:07:51,645 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:07:51,645 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [28] imperfect sequences [] total 28 [2022-04-28 04:07:51,645 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [600548875] [2022-04-28 04:07:51,645 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:07:51,646 INFO L78 Accepts]: Start accepts. Automaton has has 28 states, 28 states have (on average 1.8571428571428572) internal successors, (52), 27 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 58 [2022-04-28 04:07:51,646 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:07:51,646 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 28 states, 28 states have (on average 1.8571428571428572) internal successors, (52), 27 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:07:51,688 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:07:51,688 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 28 states [2022-04-28 04:07:51,688 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:07:51,689 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 28 interpolants. [2022-04-28 04:07:51,689 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=269, Invalid=1063, Unknown=0, NotChecked=0, Total=1332 [2022-04-28 04:07:51,689 INFO L87 Difference]: Start difference. First operand 370 states and 440 transitions. Second operand has 28 states, 28 states have (on average 1.8571428571428572) internal successors, (52), 27 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:07:56,073 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:07:56,073 INFO L93 Difference]: Finished difference Result 706 states and 837 transitions. [2022-04-28 04:07:56,073 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 28 states. [2022-04-28 04:07:56,073 INFO L78 Accepts]: Start accepts. Automaton has has 28 states, 28 states have (on average 1.8571428571428572) internal successors, (52), 27 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 58 [2022-04-28 04:07:56,073 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:07:56,073 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 28 states have (on average 1.8571428571428572) internal successors, (52), 27 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:07:56,074 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 114 transitions. [2022-04-28 04:07:56,074 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 28 states have (on average 1.8571428571428572) internal successors, (52), 27 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:07:56,074 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 114 transitions. [2022-04-28 04:07:56,074 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 28 states and 114 transitions. [2022-04-28 04:07:56,149 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 114 edges. 114 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:07:56,156 INFO L225 Difference]: With dead ends: 706 [2022-04-28 04:07:56,156 INFO L226 Difference]: Without dead ends: 418 [2022-04-28 04:07:56,157 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 106 GetRequests, 54 SyntacticMatches, 14 SemanticMatches, 38 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 941 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=312, Invalid=1248, Unknown=0, NotChecked=0, Total=1560 [2022-04-28 04:07:56,157 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 75 mSDsluCounter, 21 mSDsCounter, 0 mSdLazyCounter, 1281 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 76 SdHoareTripleChecker+Valid, 45 SdHoareTripleChecker+Invalid, 1301 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 20 IncrementalHoareTripleChecker+Valid, 1281 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-28 04:07:56,157 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [76 Valid, 45 Invalid, 1301 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [20 Valid, 1281 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-28 04:07:56,157 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 418 states. [2022-04-28 04:07:58,298 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 418 to 370. [2022-04-28 04:07:58,298 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:07:58,298 INFO L82 GeneralOperation]: Start isEquivalent. First operand 418 states. Second operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:07:58,299 INFO L74 IsIncluded]: Start isIncluded. First operand 418 states. Second operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:07:58,299 INFO L87 Difference]: Start difference. First operand 418 states. Second operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:07:58,305 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:07:58,305 INFO L93 Difference]: Finished difference Result 418 states and 492 transitions. [2022-04-28 04:07:58,305 INFO L276 IsEmpty]: Start isEmpty. Operand 418 states and 492 transitions. [2022-04-28 04:07:58,305 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:07:58,305 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:07:58,306 INFO L74 IsIncluded]: Start isIncluded. First operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 418 states. [2022-04-28 04:07:58,306 INFO L87 Difference]: Start difference. First operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 418 states. [2022-04-28 04:07:58,312 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:07:58,312 INFO L93 Difference]: Finished difference Result 418 states and 492 transitions. [2022-04-28 04:07:58,312 INFO L276 IsEmpty]: Start isEmpty. Operand 418 states and 492 transitions. [2022-04-28 04:07:58,312 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:07:58,312 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:07:58,312 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:07:58,313 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:07:58,313 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:07:58,318 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 370 states to 370 states and 440 transitions. [2022-04-28 04:07:58,318 INFO L78 Accepts]: Start accepts. Automaton has 370 states and 440 transitions. Word has length 58 [2022-04-28 04:07:58,318 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:07:58,318 INFO L495 AbstractCegarLoop]: Abstraction has 370 states and 440 transitions. [2022-04-28 04:07:58,319 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 28 states, 28 states have (on average 1.8571428571428572) internal successors, (52), 27 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:07:58,319 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 370 states and 440 transitions. [2022-04-28 04:08:01,041 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 440 edges. 440 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:08:01,041 INFO L276 IsEmpty]: Start isEmpty. Operand 370 states and 440 transitions. [2022-04-28 04:08:01,042 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-28 04:08:01,042 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:08:01,042 INFO L195 NwaCegarLoop]: trace histogram [12, 12, 9, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:08:01,061 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (68)] Forceful destruction successful, exit code 0 [2022-04-28 04:08:01,242 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 68 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable75 [2022-04-28 04:08:01,242 INFO L420 AbstractCegarLoop]: === Iteration 77 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:08:01,243 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:08:01,243 INFO L85 PathProgramCache]: Analyzing trace with hash 1454556316, now seen corresponding path program 64 times [2022-04-28 04:08:01,243 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:08:01,243 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [715494541] [2022-04-28 04:08:01,474 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:08:01,689 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:08:01,690 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:08:01,693 INFO L85 PathProgramCache]: Analyzing trace with hash -2108093503, now seen corresponding path program 1 times [2022-04-28 04:08:01,693 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:08:01,693 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [300901124] [2022-04-28 04:08:01,693 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:08:01,700 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:08:01,710 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:08:01,754 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:08:01,755 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:08:01,758 INFO L290 TraceCheckUtils]: 0: Hoare triple {168691#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {168683#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:01,759 INFO L290 TraceCheckUtils]: 1: Hoare triple {168683#(<= 200000 ~SIZE~0)} assume true; {168683#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:01,759 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {168683#(<= 200000 ~SIZE~0)} {168678#true} #90#return; {168683#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:01,759 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:08:01,759 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:08:01,761 INFO L290 TraceCheckUtils]: 0: Hoare triple {168678#true} ~cond := #in~cond; {168678#true} is VALID [2022-04-28 04:08:01,761 INFO L290 TraceCheckUtils]: 1: Hoare triple {168678#true} assume !(0 == ~cond); {168678#true} is VALID [2022-04-28 04:08:01,761 INFO L290 TraceCheckUtils]: 2: Hoare triple {168678#true} assume true; {168678#true} is VALID [2022-04-28 04:08:01,762 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {168678#true} {168683#(<= 200000 ~SIZE~0)} #86#return; {168683#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:01,762 INFO L272 TraceCheckUtils]: 0: Hoare triple {168678#true} call ULTIMATE.init(); {168691#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:08:01,762 INFO L290 TraceCheckUtils]: 1: Hoare triple {168691#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {168683#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:01,763 INFO L290 TraceCheckUtils]: 2: Hoare triple {168683#(<= 200000 ~SIZE~0)} assume true; {168683#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:01,763 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {168683#(<= 200000 ~SIZE~0)} {168678#true} #90#return; {168683#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:01,763 INFO L272 TraceCheckUtils]: 4: Hoare triple {168683#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {168683#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:01,764 INFO L290 TraceCheckUtils]: 5: Hoare triple {168683#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {168683#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:01,764 INFO L272 TraceCheckUtils]: 6: Hoare triple {168683#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {168678#true} is VALID [2022-04-28 04:08:01,764 INFO L290 TraceCheckUtils]: 7: Hoare triple {168678#true} ~cond := #in~cond; {168678#true} is VALID [2022-04-28 04:08:01,764 INFO L290 TraceCheckUtils]: 8: Hoare triple {168678#true} assume !(0 == ~cond); {168678#true} is VALID [2022-04-28 04:08:01,764 INFO L290 TraceCheckUtils]: 9: Hoare triple {168678#true} assume true; {168678#true} is VALID [2022-04-28 04:08:01,764 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {168678#true} {168683#(<= 200000 ~SIZE~0)} #86#return; {168683#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:01,764 INFO L290 TraceCheckUtils]: 11: Hoare triple {168683#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {168683#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:01,765 INFO L290 TraceCheckUtils]: 12: Hoare triple {168683#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {168688#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:08:01,765 INFO L290 TraceCheckUtils]: 13: Hoare triple {168688#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [376] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= |v_main_#t~post5_907| |v_main_#t~post5_905|)) (.cse0 (<= v_~last~0_691 v_main_~c~0_1760)) (.cse2 (= v_main_~st~0_945 v_main_~st~0_944))) (or (and (= v_main_~st~0_944 0) .cse0 (< v_main_~c~0_1759 (+ v_~SIZE~0_623 1)) (< v_main_~c~0_1760 v_main_~c~0_1759)) (and .cse1 (= v_~last~0_691 v_~last~0_691) (= v_~SIZE~0_623 v_~SIZE~0_623) (= v_main_~c~0_1760 v_main_~c~0_1759) .cse2) (and .cse1 (or (not (< v_main_~c~0_1760 v_~SIZE~0_623)) (not .cse0)) .cse2 (= v_main_~c~0_1759 v_main_~c~0_1760)))) InVars {~SIZE~0=v_~SIZE~0_623, main_~c~0=v_main_~c~0_1760, main_#t~post5=|v_main_#t~post5_907|, main_~st~0=v_main_~st~0_945, ~last~0=v_~last~0_691} OutVars{~SIZE~0=v_~SIZE~0_623, main_#t~post5=|v_main_#t~post5_905|, main_~c~0=v_main_~c~0_1759, main_~st~0=v_main_~st~0_944, ~last~0=v_~last~0_691} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {168689#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:08:01,766 INFO L290 TraceCheckUtils]: 14: Hoare triple {168689#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [377] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {168689#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:08:01,766 INFO L290 TraceCheckUtils]: 15: Hoare triple {168689#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [378] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1762 v_main_~c~0_1761))) (or (and (or (not (< v_main_~c~0_1762 v_~last~0_692)) (not (< v_main_~c~0_1762 v_~SIZE~0_624))) .cse0 (= |v_main_#t~post5_906| |v_main_#t~post5_910|)) (and (= |v_main_#t~post5_910| |v_main_#t~post5_906|) (= v_~SIZE~0_624 v_~SIZE~0_624) (= v_~last~0_692 v_~last~0_692) .cse0) (and (< v_main_~c~0_1762 v_main_~c~0_1761) (< v_main_~c~0_1761 (+ v_~SIZE~0_624 1)) (< v_main_~c~0_1761 (+ v_~last~0_692 1))))) InVars {~SIZE~0=v_~SIZE~0_624, main_~c~0=v_main_~c~0_1762, main_#t~post5=|v_main_#t~post5_910|, ~last~0=v_~last~0_692} OutVars{~SIZE~0=v_~SIZE~0_624, main_#t~post5=|v_main_#t~post5_906|, main_~c~0=v_main_~c~0_1761, ~last~0=v_~last~0_692} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {168689#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:08:01,767 INFO L290 TraceCheckUtils]: 16: Hoare triple {168689#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [375] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {168690#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:08:01,767 INFO L290 TraceCheckUtils]: 17: Hoare triple {168690#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {168679#false} is VALID [2022-04-28 04:08:01,767 INFO L290 TraceCheckUtils]: 18: Hoare triple {168679#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {168679#false} is VALID [2022-04-28 04:08:01,767 INFO L290 TraceCheckUtils]: 19: Hoare triple {168679#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {168679#false} is VALID [2022-04-28 04:08:01,767 INFO L290 TraceCheckUtils]: 20: Hoare triple {168679#false} assume !(~d~0 == ~SIZE~0); {168679#false} is VALID [2022-04-28 04:08:01,767 INFO L272 TraceCheckUtils]: 21: Hoare triple {168679#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {168679#false} is VALID [2022-04-28 04:08:01,767 INFO L290 TraceCheckUtils]: 22: Hoare triple {168679#false} ~cond := #in~cond; {168679#false} is VALID [2022-04-28 04:08:01,767 INFO L290 TraceCheckUtils]: 23: Hoare triple {168679#false} assume 0 == ~cond; {168679#false} is VALID [2022-04-28 04:08:01,767 INFO L290 TraceCheckUtils]: 24: Hoare triple {168679#false} assume !false; {168679#false} is VALID [2022-04-28 04:08:01,768 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:08:01,768 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:08:01,768 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [300901124] [2022-04-28 04:08:01,768 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [300901124] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:08:01,768 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [231707387] [2022-04-28 04:08:01,768 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:08:01,768 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:08:01,768 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:08:01,769 INFO L229 MonitoredProcess]: Starting monitored process 69 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:08:01,769 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (69)] Waiting until timeout for monitored process [2022-04-28 04:08:01,798 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:08:01,799 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:08:01,805 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:08:01,805 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:08:02,029 INFO L272 TraceCheckUtils]: 0: Hoare triple {168678#true} call ULTIMATE.init(); {168678#true} is VALID [2022-04-28 04:08:02,030 INFO L290 TraceCheckUtils]: 1: Hoare triple {168678#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {168683#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:02,030 INFO L290 TraceCheckUtils]: 2: Hoare triple {168683#(<= 200000 ~SIZE~0)} assume true; {168683#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:02,031 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {168683#(<= 200000 ~SIZE~0)} {168678#true} #90#return; {168683#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:02,031 INFO L272 TraceCheckUtils]: 4: Hoare triple {168683#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {168683#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:02,031 INFO L290 TraceCheckUtils]: 5: Hoare triple {168683#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {168683#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:02,032 INFO L272 TraceCheckUtils]: 6: Hoare triple {168683#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {168683#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:02,032 INFO L290 TraceCheckUtils]: 7: Hoare triple {168683#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {168683#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:02,032 INFO L290 TraceCheckUtils]: 8: Hoare triple {168683#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {168683#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:02,032 INFO L290 TraceCheckUtils]: 9: Hoare triple {168683#(<= 200000 ~SIZE~0)} assume true; {168683#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:02,033 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {168683#(<= 200000 ~SIZE~0)} {168683#(<= 200000 ~SIZE~0)} #86#return; {168683#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:02,033 INFO L290 TraceCheckUtils]: 11: Hoare triple {168683#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {168683#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:02,033 INFO L290 TraceCheckUtils]: 12: Hoare triple {168683#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {168731#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:08:02,034 INFO L290 TraceCheckUtils]: 13: Hoare triple {168731#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [376] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= |v_main_#t~post5_907| |v_main_#t~post5_905|)) (.cse0 (<= v_~last~0_691 v_main_~c~0_1760)) (.cse2 (= v_main_~st~0_945 v_main_~st~0_944))) (or (and (= v_main_~st~0_944 0) .cse0 (< v_main_~c~0_1759 (+ v_~SIZE~0_623 1)) (< v_main_~c~0_1760 v_main_~c~0_1759)) (and .cse1 (= v_~last~0_691 v_~last~0_691) (= v_~SIZE~0_623 v_~SIZE~0_623) (= v_main_~c~0_1760 v_main_~c~0_1759) .cse2) (and .cse1 (or (not (< v_main_~c~0_1760 v_~SIZE~0_623)) (not .cse0)) .cse2 (= v_main_~c~0_1759 v_main_~c~0_1760)))) InVars {~SIZE~0=v_~SIZE~0_623, main_~c~0=v_main_~c~0_1760, main_#t~post5=|v_main_#t~post5_907|, main_~st~0=v_main_~st~0_945, ~last~0=v_~last~0_691} OutVars{~SIZE~0=v_~SIZE~0_623, main_#t~post5=|v_main_#t~post5_905|, main_~c~0=v_main_~c~0_1759, main_~st~0=v_main_~st~0_944, ~last~0=v_~last~0_691} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {168735#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:08:02,035 INFO L290 TraceCheckUtils]: 14: Hoare triple {168735#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [377] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {168735#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:08:02,035 INFO L290 TraceCheckUtils]: 15: Hoare triple {168735#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [378] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1762 v_main_~c~0_1761))) (or (and (or (not (< v_main_~c~0_1762 v_~last~0_692)) (not (< v_main_~c~0_1762 v_~SIZE~0_624))) .cse0 (= |v_main_#t~post5_906| |v_main_#t~post5_910|)) (and (= |v_main_#t~post5_910| |v_main_#t~post5_906|) (= v_~SIZE~0_624 v_~SIZE~0_624) (= v_~last~0_692 v_~last~0_692) .cse0) (and (< v_main_~c~0_1762 v_main_~c~0_1761) (< v_main_~c~0_1761 (+ v_~SIZE~0_624 1)) (< v_main_~c~0_1761 (+ v_~last~0_692 1))))) InVars {~SIZE~0=v_~SIZE~0_624, main_~c~0=v_main_~c~0_1762, main_#t~post5=|v_main_#t~post5_910|, ~last~0=v_~last~0_692} OutVars{~SIZE~0=v_~SIZE~0_624, main_#t~post5=|v_main_#t~post5_906|, main_~c~0=v_main_~c~0_1761, ~last~0=v_~last~0_692} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {168735#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:08:02,036 INFO L290 TraceCheckUtils]: 16: Hoare triple {168735#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [375] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {168745#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:08:02,036 INFO L290 TraceCheckUtils]: 17: Hoare triple {168745#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {168679#false} is VALID [2022-04-28 04:08:02,036 INFO L290 TraceCheckUtils]: 18: Hoare triple {168679#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {168679#false} is VALID [2022-04-28 04:08:02,036 INFO L290 TraceCheckUtils]: 19: Hoare triple {168679#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {168679#false} is VALID [2022-04-28 04:08:02,036 INFO L290 TraceCheckUtils]: 20: Hoare triple {168679#false} assume !(~d~0 == ~SIZE~0); {168679#false} is VALID [2022-04-28 04:08:02,036 INFO L272 TraceCheckUtils]: 21: Hoare triple {168679#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {168679#false} is VALID [2022-04-28 04:08:02,037 INFO L290 TraceCheckUtils]: 22: Hoare triple {168679#false} ~cond := #in~cond; {168679#false} is VALID [2022-04-28 04:08:02,037 INFO L290 TraceCheckUtils]: 23: Hoare triple {168679#false} assume 0 == ~cond; {168679#false} is VALID [2022-04-28 04:08:02,037 INFO L290 TraceCheckUtils]: 24: Hoare triple {168679#false} assume !false; {168679#false} is VALID [2022-04-28 04:08:02,037 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:08:02,037 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:08:02,337 INFO L290 TraceCheckUtils]: 24: Hoare triple {168679#false} assume !false; {168679#false} is VALID [2022-04-28 04:08:02,337 INFO L290 TraceCheckUtils]: 23: Hoare triple {168679#false} assume 0 == ~cond; {168679#false} is VALID [2022-04-28 04:08:02,337 INFO L290 TraceCheckUtils]: 22: Hoare triple {168679#false} ~cond := #in~cond; {168679#false} is VALID [2022-04-28 04:08:02,337 INFO L272 TraceCheckUtils]: 21: Hoare triple {168679#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {168679#false} is VALID [2022-04-28 04:08:02,337 INFO L290 TraceCheckUtils]: 20: Hoare triple {168679#false} assume !(~d~0 == ~SIZE~0); {168679#false} is VALID [2022-04-28 04:08:02,337 INFO L290 TraceCheckUtils]: 19: Hoare triple {168679#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {168679#false} is VALID [2022-04-28 04:08:02,337 INFO L290 TraceCheckUtils]: 18: Hoare triple {168679#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {168679#false} is VALID [2022-04-28 04:08:02,338 INFO L290 TraceCheckUtils]: 17: Hoare triple {168791#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {168679#false} is VALID [2022-04-28 04:08:02,338 INFO L290 TraceCheckUtils]: 16: Hoare triple {168795#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [375] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {168791#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:08:02,338 INFO L290 TraceCheckUtils]: 15: Hoare triple {168795#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [378] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1762 v_main_~c~0_1761))) (or (and (or (not (< v_main_~c~0_1762 v_~last~0_692)) (not (< v_main_~c~0_1762 v_~SIZE~0_624))) .cse0 (= |v_main_#t~post5_906| |v_main_#t~post5_910|)) (and (= |v_main_#t~post5_910| |v_main_#t~post5_906|) (= v_~SIZE~0_624 v_~SIZE~0_624) (= v_~last~0_692 v_~last~0_692) .cse0) (and (< v_main_~c~0_1762 v_main_~c~0_1761) (< v_main_~c~0_1761 (+ v_~SIZE~0_624 1)) (< v_main_~c~0_1761 (+ v_~last~0_692 1))))) InVars {~SIZE~0=v_~SIZE~0_624, main_~c~0=v_main_~c~0_1762, main_#t~post5=|v_main_#t~post5_910|, ~last~0=v_~last~0_692} OutVars{~SIZE~0=v_~SIZE~0_624, main_#t~post5=|v_main_#t~post5_906|, main_~c~0=v_main_~c~0_1761, ~last~0=v_~last~0_692} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {168795#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:08:02,339 INFO L290 TraceCheckUtils]: 14: Hoare triple {168795#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [377] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {168795#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:08:02,339 INFO L290 TraceCheckUtils]: 13: Hoare triple {168805#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [376] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= |v_main_#t~post5_907| |v_main_#t~post5_905|)) (.cse0 (<= v_~last~0_691 v_main_~c~0_1760)) (.cse2 (= v_main_~st~0_945 v_main_~st~0_944))) (or (and (= v_main_~st~0_944 0) .cse0 (< v_main_~c~0_1759 (+ v_~SIZE~0_623 1)) (< v_main_~c~0_1760 v_main_~c~0_1759)) (and .cse1 (= v_~last~0_691 v_~last~0_691) (= v_~SIZE~0_623 v_~SIZE~0_623) (= v_main_~c~0_1760 v_main_~c~0_1759) .cse2) (and .cse1 (or (not (< v_main_~c~0_1760 v_~SIZE~0_623)) (not .cse0)) .cse2 (= v_main_~c~0_1759 v_main_~c~0_1760)))) InVars {~SIZE~0=v_~SIZE~0_623, main_~c~0=v_main_~c~0_1760, main_#t~post5=|v_main_#t~post5_907|, main_~st~0=v_main_~st~0_945, ~last~0=v_~last~0_691} OutVars{~SIZE~0=v_~SIZE~0_623, main_#t~post5=|v_main_#t~post5_905|, main_~c~0=v_main_~c~0_1759, main_~st~0=v_main_~st~0_944, ~last~0=v_~last~0_691} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {168795#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:08:02,340 INFO L290 TraceCheckUtils]: 12: Hoare triple {168809#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {168805#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:08:02,340 INFO L290 TraceCheckUtils]: 11: Hoare triple {168809#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {168809#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:08:02,340 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {168678#true} {168809#(< 1 ~SIZE~0)} #86#return; {168809#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:08:02,341 INFO L290 TraceCheckUtils]: 9: Hoare triple {168678#true} assume true; {168678#true} is VALID [2022-04-28 04:08:02,341 INFO L290 TraceCheckUtils]: 8: Hoare triple {168678#true} assume !(0 == ~cond); {168678#true} is VALID [2022-04-28 04:08:02,341 INFO L290 TraceCheckUtils]: 7: Hoare triple {168678#true} ~cond := #in~cond; {168678#true} is VALID [2022-04-28 04:08:02,341 INFO L272 TraceCheckUtils]: 6: Hoare triple {168809#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {168678#true} is VALID [2022-04-28 04:08:02,341 INFO L290 TraceCheckUtils]: 5: Hoare triple {168809#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {168809#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:08:02,341 INFO L272 TraceCheckUtils]: 4: Hoare triple {168809#(< 1 ~SIZE~0)} call #t~ret7 := main(); {168809#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:08:02,342 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {168809#(< 1 ~SIZE~0)} {168678#true} #90#return; {168809#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:08:02,342 INFO L290 TraceCheckUtils]: 2: Hoare triple {168809#(< 1 ~SIZE~0)} assume true; {168809#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:08:02,342 INFO L290 TraceCheckUtils]: 1: Hoare triple {168678#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {168809#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:08:02,342 INFO L272 TraceCheckUtils]: 0: Hoare triple {168678#true} call ULTIMATE.init(); {168678#true} is VALID [2022-04-28 04:08:02,342 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:08:02,343 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [231707387] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:08:02,343 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:08:02,343 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:08:03,162 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:08:03,163 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [715494541] [2022-04-28 04:08:03,163 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [715494541] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:08:03,163 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:08:03,163 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [29] imperfect sequences [] total 29 [2022-04-28 04:08:03,163 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [203915220] [2022-04-28 04:08:03,163 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:08:03,163 INFO L78 Accepts]: Start accepts. Automaton has has 29 states, 29 states have (on average 1.793103448275862) internal successors, (52), 28 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 58 [2022-04-28 04:08:03,163 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:08:03,163 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 29 states, 29 states have (on average 1.793103448275862) internal successors, (52), 28 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:08:03,200 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:08:03,200 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 29 states [2022-04-28 04:08:03,200 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:08:03,201 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 29 interpolants. [2022-04-28 04:08:03,201 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=284, Invalid=1122, Unknown=0, NotChecked=0, Total=1406 [2022-04-28 04:08:03,201 INFO L87 Difference]: Start difference. First operand 370 states and 440 transitions. Second operand has 29 states, 29 states have (on average 1.793103448275862) internal successors, (52), 28 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:08:07,560 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:08:07,561 INFO L93 Difference]: Finished difference Result 697 states and 828 transitions. [2022-04-28 04:08:07,561 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 29 states. [2022-04-28 04:08:07,561 INFO L78 Accepts]: Start accepts. Automaton has has 29 states, 29 states have (on average 1.793103448275862) internal successors, (52), 28 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 58 [2022-04-28 04:08:07,561 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:08:07,561 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 29 states have (on average 1.793103448275862) internal successors, (52), 28 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:08:07,562 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 115 transitions. [2022-04-28 04:08:07,562 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 29 states have (on average 1.793103448275862) internal successors, (52), 28 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:08:07,562 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 115 transitions. [2022-04-28 04:08:07,562 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 29 states and 115 transitions. [2022-04-28 04:08:07,638 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 115 edges. 115 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:08:07,645 INFO L225 Difference]: With dead ends: 697 [2022-04-28 04:08:07,645 INFO L226 Difference]: Without dead ends: 409 [2022-04-28 04:08:07,646 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 106 GetRequests, 54 SyntacticMatches, 13 SemanticMatches, 39 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 934 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=329, Invalid=1311, Unknown=0, NotChecked=0, Total=1640 [2022-04-28 04:08:07,646 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 71 mSDsluCounter, 24 mSDsCounter, 0 mSdLazyCounter, 1309 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 72 SdHoareTripleChecker+Valid, 48 SdHoareTripleChecker+Invalid, 1330 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 1309 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-28 04:08:07,646 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [72 Valid, 48 Invalid, 1330 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 1309 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-28 04:08:07,646 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 409 states. [2022-04-28 04:08:09,812 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 409 to 370. [2022-04-28 04:08:09,812 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:08:09,812 INFO L82 GeneralOperation]: Start isEquivalent. First operand 409 states. Second operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:08:09,812 INFO L74 IsIncluded]: Start isIncluded. First operand 409 states. Second operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:08:09,812 INFO L87 Difference]: Start difference. First operand 409 states. Second operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:08:09,818 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:08:09,819 INFO L93 Difference]: Finished difference Result 409 states and 483 transitions. [2022-04-28 04:08:09,819 INFO L276 IsEmpty]: Start isEmpty. Operand 409 states and 483 transitions. [2022-04-28 04:08:09,819 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:08:09,819 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:08:09,819 INFO L74 IsIncluded]: Start isIncluded. First operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 409 states. [2022-04-28 04:08:09,819 INFO L87 Difference]: Start difference. First operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 409 states. [2022-04-28 04:08:09,825 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:08:09,825 INFO L93 Difference]: Finished difference Result 409 states and 483 transitions. [2022-04-28 04:08:09,825 INFO L276 IsEmpty]: Start isEmpty. Operand 409 states and 483 transitions. [2022-04-28 04:08:09,826 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:08:09,826 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:08:09,826 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:08:09,826 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:08:09,826 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:08:09,832 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 370 states to 370 states and 440 transitions. [2022-04-28 04:08:09,832 INFO L78 Accepts]: Start accepts. Automaton has 370 states and 440 transitions. Word has length 58 [2022-04-28 04:08:09,832 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:08:09,832 INFO L495 AbstractCegarLoop]: Abstraction has 370 states and 440 transitions. [2022-04-28 04:08:09,832 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 29 states, 29 states have (on average 1.793103448275862) internal successors, (52), 28 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:08:09,832 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 370 states and 440 transitions. [2022-04-28 04:08:12,485 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 440 edges. 440 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:08:12,485 INFO L276 IsEmpty]: Start isEmpty. Operand 370 states and 440 transitions. [2022-04-28 04:08:12,486 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-28 04:08:12,486 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:08:12,486 INFO L195 NwaCegarLoop]: trace histogram [12, 12, 10, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:08:12,501 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (69)] Forceful destruction successful, exit code 0 [2022-04-28 04:08:12,698 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 69 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable76 [2022-04-28 04:08:12,699 INFO L420 AbstractCegarLoop]: === Iteration 78 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:08:12,699 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:08:12,699 INFO L85 PathProgramCache]: Analyzing trace with hash -133791586, now seen corresponding path program 65 times [2022-04-28 04:08:12,699 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:08:12,699 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1149827710] [2022-04-28 04:08:12,917 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:08:13,145 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:08:13,146 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:08:13,149 INFO L85 PathProgramCache]: Analyzing trace with hash 384429249, now seen corresponding path program 1 times [2022-04-28 04:08:13,149 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:08:13,149 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [739319039] [2022-04-28 04:08:13,149 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:08:13,149 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:08:13,155 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:08:13,198 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:08:13,200 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:08:13,203 INFO L290 TraceCheckUtils]: 0: Hoare triple {171844#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {171836#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:13,203 INFO L290 TraceCheckUtils]: 1: Hoare triple {171836#(<= 200000 ~SIZE~0)} assume true; {171836#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:13,204 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {171836#(<= 200000 ~SIZE~0)} {171831#true} #90#return; {171836#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:13,204 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:08:13,204 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:08:13,216 INFO L290 TraceCheckUtils]: 0: Hoare triple {171831#true} ~cond := #in~cond; {171831#true} is VALID [2022-04-28 04:08:13,216 INFO L290 TraceCheckUtils]: 1: Hoare triple {171831#true} assume !(0 == ~cond); {171831#true} is VALID [2022-04-28 04:08:13,216 INFO L290 TraceCheckUtils]: 2: Hoare triple {171831#true} assume true; {171831#true} is VALID [2022-04-28 04:08:13,217 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {171831#true} {171836#(<= 200000 ~SIZE~0)} #86#return; {171836#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:13,217 INFO L272 TraceCheckUtils]: 0: Hoare triple {171831#true} call ULTIMATE.init(); {171844#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:08:13,218 INFO L290 TraceCheckUtils]: 1: Hoare triple {171844#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {171836#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:13,218 INFO L290 TraceCheckUtils]: 2: Hoare triple {171836#(<= 200000 ~SIZE~0)} assume true; {171836#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:13,218 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {171836#(<= 200000 ~SIZE~0)} {171831#true} #90#return; {171836#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:13,218 INFO L272 TraceCheckUtils]: 4: Hoare triple {171836#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {171836#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:13,219 INFO L290 TraceCheckUtils]: 5: Hoare triple {171836#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {171836#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:13,219 INFO L272 TraceCheckUtils]: 6: Hoare triple {171836#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {171831#true} is VALID [2022-04-28 04:08:13,219 INFO L290 TraceCheckUtils]: 7: Hoare triple {171831#true} ~cond := #in~cond; {171831#true} is VALID [2022-04-28 04:08:13,219 INFO L290 TraceCheckUtils]: 8: Hoare triple {171831#true} assume !(0 == ~cond); {171831#true} is VALID [2022-04-28 04:08:13,219 INFO L290 TraceCheckUtils]: 9: Hoare triple {171831#true} assume true; {171831#true} is VALID [2022-04-28 04:08:13,219 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {171831#true} {171836#(<= 200000 ~SIZE~0)} #86#return; {171836#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:13,220 INFO L290 TraceCheckUtils]: 11: Hoare triple {171836#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {171836#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:13,220 INFO L290 TraceCheckUtils]: 12: Hoare triple {171836#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {171841#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:08:13,221 INFO L290 TraceCheckUtils]: 13: Hoare triple {171841#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [380] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_701 v_main_~c~0_1789)) (.cse1 (= v_main_~c~0_1789 v_main_~c~0_1788))) (or (and (= |v_main_#t~post5_918| |v_main_#t~post5_920|) (or (not (< v_main_~c~0_1789 v_~SIZE~0_632)) (not .cse0)) .cse1 (= v_main_~st~0_956 v_main_~st~0_957)) (and (< v_main_~c~0_1788 (+ v_~SIZE~0_632 1)) .cse0 (< v_main_~c~0_1789 v_main_~c~0_1788) (= v_main_~st~0_956 0)) (and (= v_~last~0_701 v_~last~0_701) (= |v_main_#t~post5_920| |v_main_#t~post5_918|) (= v_~SIZE~0_632 v_~SIZE~0_632) (= v_main_~st~0_957 v_main_~st~0_956) .cse1))) InVars {~SIZE~0=v_~SIZE~0_632, main_~c~0=v_main_~c~0_1789, main_#t~post5=|v_main_#t~post5_920|, main_~st~0=v_main_~st~0_957, ~last~0=v_~last~0_701} OutVars{~SIZE~0=v_~SIZE~0_632, main_#t~post5=|v_main_#t~post5_918|, main_~c~0=v_main_~c~0_1788, main_~st~0=v_main_~st~0_956, ~last~0=v_~last~0_701} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {171842#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:08:13,221 INFO L290 TraceCheckUtils]: 14: Hoare triple {171842#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [381] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {171842#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:08:13,222 INFO L290 TraceCheckUtils]: 15: Hoare triple {171842#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [382] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1791 v_main_~c~0_1790)) (.cse1 (= |v_main_#t~post5_923| |v_main_#t~post5_919|))) (or (and (= v_~SIZE~0_633 v_~SIZE~0_633) (= v_~last~0_702 v_~last~0_702) .cse0 .cse1) (and (< v_main_~c~0_1790 (+ v_~SIZE~0_633 1)) (< v_main_~c~0_1790 (+ v_~last~0_702 1)) (< v_main_~c~0_1791 v_main_~c~0_1790)) (and (or (not (< v_main_~c~0_1791 v_~SIZE~0_633)) (not (< v_main_~c~0_1791 v_~last~0_702))) .cse0 .cse1))) InVars {~SIZE~0=v_~SIZE~0_633, main_~c~0=v_main_~c~0_1791, main_#t~post5=|v_main_#t~post5_923|, ~last~0=v_~last~0_702} OutVars{~SIZE~0=v_~SIZE~0_633, main_#t~post5=|v_main_#t~post5_919|, main_~c~0=v_main_~c~0_1790, ~last~0=v_~last~0_702} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {171842#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:08:13,222 INFO L290 TraceCheckUtils]: 16: Hoare triple {171842#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [379] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {171843#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:08:13,222 INFO L290 TraceCheckUtils]: 17: Hoare triple {171843#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {171832#false} is VALID [2022-04-28 04:08:13,223 INFO L290 TraceCheckUtils]: 18: Hoare triple {171832#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {171832#false} is VALID [2022-04-28 04:08:13,223 INFO L290 TraceCheckUtils]: 19: Hoare triple {171832#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {171832#false} is VALID [2022-04-28 04:08:13,223 INFO L290 TraceCheckUtils]: 20: Hoare triple {171832#false} assume !(~d~0 == ~SIZE~0); {171832#false} is VALID [2022-04-28 04:08:13,223 INFO L272 TraceCheckUtils]: 21: Hoare triple {171832#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {171832#false} is VALID [2022-04-28 04:08:13,223 INFO L290 TraceCheckUtils]: 22: Hoare triple {171832#false} ~cond := #in~cond; {171832#false} is VALID [2022-04-28 04:08:13,223 INFO L290 TraceCheckUtils]: 23: Hoare triple {171832#false} assume 0 == ~cond; {171832#false} is VALID [2022-04-28 04:08:13,223 INFO L290 TraceCheckUtils]: 24: Hoare triple {171832#false} assume !false; {171832#false} is VALID [2022-04-28 04:08:13,223 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:08:13,223 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:08:13,223 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [739319039] [2022-04-28 04:08:13,223 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [739319039] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:08:13,223 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1260507835] [2022-04-28 04:08:13,223 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:08:13,224 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:08:13,224 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:08:13,224 INFO L229 MonitoredProcess]: Starting monitored process 70 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:08:13,225 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (70)] Waiting until timeout for monitored process [2022-04-28 04:08:13,254 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:08:13,254 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:08:13,260 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:08:13,260 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:08:13,548 INFO L272 TraceCheckUtils]: 0: Hoare triple {171831#true} call ULTIMATE.init(); {171831#true} is VALID [2022-04-28 04:08:13,548 INFO L290 TraceCheckUtils]: 1: Hoare triple {171831#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {171836#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:13,549 INFO L290 TraceCheckUtils]: 2: Hoare triple {171836#(<= 200000 ~SIZE~0)} assume true; {171836#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:13,549 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {171836#(<= 200000 ~SIZE~0)} {171831#true} #90#return; {171836#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:13,549 INFO L272 TraceCheckUtils]: 4: Hoare triple {171836#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {171836#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:13,550 INFO L290 TraceCheckUtils]: 5: Hoare triple {171836#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {171836#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:13,550 INFO L272 TraceCheckUtils]: 6: Hoare triple {171836#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {171836#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:13,550 INFO L290 TraceCheckUtils]: 7: Hoare triple {171836#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {171836#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:13,551 INFO L290 TraceCheckUtils]: 8: Hoare triple {171836#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {171836#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:13,551 INFO L290 TraceCheckUtils]: 9: Hoare triple {171836#(<= 200000 ~SIZE~0)} assume true; {171836#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:13,551 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {171836#(<= 200000 ~SIZE~0)} {171836#(<= 200000 ~SIZE~0)} #86#return; {171836#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:13,551 INFO L290 TraceCheckUtils]: 11: Hoare triple {171836#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {171836#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:13,552 INFO L290 TraceCheckUtils]: 12: Hoare triple {171836#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {171884#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:08:13,553 INFO L290 TraceCheckUtils]: 13: Hoare triple {171884#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [380] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_701 v_main_~c~0_1789)) (.cse1 (= v_main_~c~0_1789 v_main_~c~0_1788))) (or (and (= |v_main_#t~post5_918| |v_main_#t~post5_920|) (or (not (< v_main_~c~0_1789 v_~SIZE~0_632)) (not .cse0)) .cse1 (= v_main_~st~0_956 v_main_~st~0_957)) (and (< v_main_~c~0_1788 (+ v_~SIZE~0_632 1)) .cse0 (< v_main_~c~0_1789 v_main_~c~0_1788) (= v_main_~st~0_956 0)) (and (= v_~last~0_701 v_~last~0_701) (= |v_main_#t~post5_920| |v_main_#t~post5_918|) (= v_~SIZE~0_632 v_~SIZE~0_632) (= v_main_~st~0_957 v_main_~st~0_956) .cse1))) InVars {~SIZE~0=v_~SIZE~0_632, main_~c~0=v_main_~c~0_1789, main_#t~post5=|v_main_#t~post5_920|, main_~st~0=v_main_~st~0_957, ~last~0=v_~last~0_701} OutVars{~SIZE~0=v_~SIZE~0_632, main_#t~post5=|v_main_#t~post5_918|, main_~c~0=v_main_~c~0_1788, main_~st~0=v_main_~st~0_956, ~last~0=v_~last~0_701} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {171888#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:08:13,553 INFO L290 TraceCheckUtils]: 14: Hoare triple {171888#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [381] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {171888#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:08:13,554 INFO L290 TraceCheckUtils]: 15: Hoare triple {171888#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [382] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1791 v_main_~c~0_1790)) (.cse1 (= |v_main_#t~post5_923| |v_main_#t~post5_919|))) (or (and (= v_~SIZE~0_633 v_~SIZE~0_633) (= v_~last~0_702 v_~last~0_702) .cse0 .cse1) (and (< v_main_~c~0_1790 (+ v_~SIZE~0_633 1)) (< v_main_~c~0_1790 (+ v_~last~0_702 1)) (< v_main_~c~0_1791 v_main_~c~0_1790)) (and (or (not (< v_main_~c~0_1791 v_~SIZE~0_633)) (not (< v_main_~c~0_1791 v_~last~0_702))) .cse0 .cse1))) InVars {~SIZE~0=v_~SIZE~0_633, main_~c~0=v_main_~c~0_1791, main_#t~post5=|v_main_#t~post5_923|, ~last~0=v_~last~0_702} OutVars{~SIZE~0=v_~SIZE~0_633, main_#t~post5=|v_main_#t~post5_919|, main_~c~0=v_main_~c~0_1790, ~last~0=v_~last~0_702} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {171888#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:08:13,554 INFO L290 TraceCheckUtils]: 16: Hoare triple {171888#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [379] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {171898#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:08:13,555 INFO L290 TraceCheckUtils]: 17: Hoare triple {171898#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {171832#false} is VALID [2022-04-28 04:08:13,555 INFO L290 TraceCheckUtils]: 18: Hoare triple {171832#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {171832#false} is VALID [2022-04-28 04:08:13,555 INFO L290 TraceCheckUtils]: 19: Hoare triple {171832#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {171832#false} is VALID [2022-04-28 04:08:13,555 INFO L290 TraceCheckUtils]: 20: Hoare triple {171832#false} assume !(~d~0 == ~SIZE~0); {171832#false} is VALID [2022-04-28 04:08:13,555 INFO L272 TraceCheckUtils]: 21: Hoare triple {171832#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {171832#false} is VALID [2022-04-28 04:08:13,555 INFO L290 TraceCheckUtils]: 22: Hoare triple {171832#false} ~cond := #in~cond; {171832#false} is VALID [2022-04-28 04:08:13,555 INFO L290 TraceCheckUtils]: 23: Hoare triple {171832#false} assume 0 == ~cond; {171832#false} is VALID [2022-04-28 04:08:13,556 INFO L290 TraceCheckUtils]: 24: Hoare triple {171832#false} assume !false; {171832#false} is VALID [2022-04-28 04:08:13,556 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:08:13,556 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:08:13,893 INFO L290 TraceCheckUtils]: 24: Hoare triple {171832#false} assume !false; {171832#false} is VALID [2022-04-28 04:08:13,893 INFO L290 TraceCheckUtils]: 23: Hoare triple {171832#false} assume 0 == ~cond; {171832#false} is VALID [2022-04-28 04:08:13,893 INFO L290 TraceCheckUtils]: 22: Hoare triple {171832#false} ~cond := #in~cond; {171832#false} is VALID [2022-04-28 04:08:13,893 INFO L272 TraceCheckUtils]: 21: Hoare triple {171832#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {171832#false} is VALID [2022-04-28 04:08:13,894 INFO L290 TraceCheckUtils]: 20: Hoare triple {171832#false} assume !(~d~0 == ~SIZE~0); {171832#false} is VALID [2022-04-28 04:08:13,894 INFO L290 TraceCheckUtils]: 19: Hoare triple {171832#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {171832#false} is VALID [2022-04-28 04:08:13,894 INFO L290 TraceCheckUtils]: 18: Hoare triple {171832#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {171832#false} is VALID [2022-04-28 04:08:13,894 INFO L290 TraceCheckUtils]: 17: Hoare triple {171944#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {171832#false} is VALID [2022-04-28 04:08:13,894 INFO L290 TraceCheckUtils]: 16: Hoare triple {171948#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [379] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {171944#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:08:13,895 INFO L290 TraceCheckUtils]: 15: Hoare triple {171948#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [382] L27-3-->L27-4_primed: Formula: (let ((.cse0 (= v_main_~c~0_1791 v_main_~c~0_1790)) (.cse1 (= |v_main_#t~post5_923| |v_main_#t~post5_919|))) (or (and (= v_~SIZE~0_633 v_~SIZE~0_633) (= v_~last~0_702 v_~last~0_702) .cse0 .cse1) (and (< v_main_~c~0_1790 (+ v_~SIZE~0_633 1)) (< v_main_~c~0_1790 (+ v_~last~0_702 1)) (< v_main_~c~0_1791 v_main_~c~0_1790)) (and (or (not (< v_main_~c~0_1791 v_~SIZE~0_633)) (not (< v_main_~c~0_1791 v_~last~0_702))) .cse0 .cse1))) InVars {~SIZE~0=v_~SIZE~0_633, main_~c~0=v_main_~c~0_1791, main_#t~post5=|v_main_#t~post5_923|, ~last~0=v_~last~0_702} OutVars{~SIZE~0=v_~SIZE~0_633, main_#t~post5=|v_main_#t~post5_919|, main_~c~0=v_main_~c~0_1790, ~last~0=v_~last~0_702} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {171948#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:08:13,895 INFO L290 TraceCheckUtils]: 14: Hoare triple {171948#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [381] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {171948#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:08:13,896 INFO L290 TraceCheckUtils]: 13: Hoare triple {171958#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [380] L27-3-->L27-4_primed: Formula: (let ((.cse0 (<= v_~last~0_701 v_main_~c~0_1789)) (.cse1 (= v_main_~c~0_1789 v_main_~c~0_1788))) (or (and (= |v_main_#t~post5_918| |v_main_#t~post5_920|) (or (not (< v_main_~c~0_1789 v_~SIZE~0_632)) (not .cse0)) .cse1 (= v_main_~st~0_956 v_main_~st~0_957)) (and (< v_main_~c~0_1788 (+ v_~SIZE~0_632 1)) .cse0 (< v_main_~c~0_1789 v_main_~c~0_1788) (= v_main_~st~0_956 0)) (and (= v_~last~0_701 v_~last~0_701) (= |v_main_#t~post5_920| |v_main_#t~post5_918|) (= v_~SIZE~0_632 v_~SIZE~0_632) (= v_main_~st~0_957 v_main_~st~0_956) .cse1))) InVars {~SIZE~0=v_~SIZE~0_632, main_~c~0=v_main_~c~0_1789, main_#t~post5=|v_main_#t~post5_920|, main_~st~0=v_main_~st~0_957, ~last~0=v_~last~0_701} OutVars{~SIZE~0=v_~SIZE~0_632, main_#t~post5=|v_main_#t~post5_918|, main_~c~0=v_main_~c~0_1788, main_~st~0=v_main_~st~0_956, ~last~0=v_~last~0_701} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {171948#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:08:13,896 INFO L290 TraceCheckUtils]: 12: Hoare triple {171962#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {171958#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:08:13,897 INFO L290 TraceCheckUtils]: 11: Hoare triple {171962#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {171962#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:08:13,897 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {171831#true} {171962#(< 1 ~SIZE~0)} #86#return; {171962#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:08:13,897 INFO L290 TraceCheckUtils]: 9: Hoare triple {171831#true} assume true; {171831#true} is VALID [2022-04-28 04:08:13,897 INFO L290 TraceCheckUtils]: 8: Hoare triple {171831#true} assume !(0 == ~cond); {171831#true} is VALID [2022-04-28 04:08:13,897 INFO L290 TraceCheckUtils]: 7: Hoare triple {171831#true} ~cond := #in~cond; {171831#true} is VALID [2022-04-28 04:08:13,897 INFO L272 TraceCheckUtils]: 6: Hoare triple {171962#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {171831#true} is VALID [2022-04-28 04:08:13,897 INFO L290 TraceCheckUtils]: 5: Hoare triple {171962#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {171962#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:08:13,898 INFO L272 TraceCheckUtils]: 4: Hoare triple {171962#(< 1 ~SIZE~0)} call #t~ret7 := main(); {171962#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:08:13,898 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {171962#(< 1 ~SIZE~0)} {171831#true} #90#return; {171962#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:08:13,898 INFO L290 TraceCheckUtils]: 2: Hoare triple {171962#(< 1 ~SIZE~0)} assume true; {171962#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:08:13,899 INFO L290 TraceCheckUtils]: 1: Hoare triple {171831#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {171962#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:08:13,899 INFO L272 TraceCheckUtils]: 0: Hoare triple {171831#true} call ULTIMATE.init(); {171831#true} is VALID [2022-04-28 04:08:13,899 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:08:13,899 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1260507835] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:08:13,899 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:08:13,899 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:08:14,697 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:08:14,697 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1149827710] [2022-04-28 04:08:14,698 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1149827710] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:08:14,698 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:08:14,698 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [30] imperfect sequences [] total 30 [2022-04-28 04:08:14,698 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [818762723] [2022-04-28 04:08:14,698 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:08:14,698 INFO L78 Accepts]: Start accepts. Automaton has has 30 states, 30 states have (on average 1.7333333333333334) internal successors, (52), 29 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 58 [2022-04-28 04:08:14,698 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:08:14,698 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 30 states, 30 states have (on average 1.7333333333333334) internal successors, (52), 29 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:08:14,735 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:08:14,735 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 30 states [2022-04-28 04:08:14,735 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:08:14,736 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 30 interpolants. [2022-04-28 04:08:14,736 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=299, Invalid=1183, Unknown=0, NotChecked=0, Total=1482 [2022-04-28 04:08:14,736 INFO L87 Difference]: Start difference. First operand 370 states and 440 transitions. Second operand has 30 states, 30 states have (on average 1.7333333333333334) internal successors, (52), 29 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:08:19,599 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:08:19,600 INFO L93 Difference]: Finished difference Result 692 states and 823 transitions. [2022-04-28 04:08:19,600 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 30 states. [2022-04-28 04:08:19,600 INFO L78 Accepts]: Start accepts. Automaton has has 30 states, 30 states have (on average 1.7333333333333334) internal successors, (52), 29 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 58 [2022-04-28 04:08:19,600 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:08:19,600 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 30 states, 30 states have (on average 1.7333333333333334) internal successors, (52), 29 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:08:19,601 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 116 transitions. [2022-04-28 04:08:19,601 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 30 states, 30 states have (on average 1.7333333333333334) internal successors, (52), 29 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:08:19,602 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 116 transitions. [2022-04-28 04:08:19,602 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 30 states and 116 transitions. [2022-04-28 04:08:19,683 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 116 edges. 116 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:08:19,692 INFO L225 Difference]: With dead ends: 692 [2022-04-28 04:08:19,692 INFO L226 Difference]: Without dead ends: 404 [2022-04-28 04:08:19,693 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 106 GetRequests, 54 SyntacticMatches, 12 SemanticMatches, 40 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 918 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=346, Invalid=1376, Unknown=0, NotChecked=0, Total=1722 [2022-04-28 04:08:19,693 INFO L413 NwaCegarLoop]: 24 mSDtfsCounter, 75 mSDsluCounter, 37 mSDsCounter, 0 mSdLazyCounter, 1767 mSolverCounterSat, 22 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 76 SdHoareTripleChecker+Valid, 61 SdHoareTripleChecker+Invalid, 1789 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 22 IncrementalHoareTripleChecker+Valid, 1767 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.2s IncrementalHoareTripleChecker+Time [2022-04-28 04:08:19,693 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [76 Valid, 61 Invalid, 1789 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [22 Valid, 1767 Invalid, 0 Unknown, 0 Unchecked, 1.2s Time] [2022-04-28 04:08:19,693 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 404 states. [2022-04-28 04:08:21,883 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 404 to 370. [2022-04-28 04:08:21,883 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:08:21,884 INFO L82 GeneralOperation]: Start isEquivalent. First operand 404 states. Second operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:08:21,884 INFO L74 IsIncluded]: Start isIncluded. First operand 404 states. Second operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:08:21,884 INFO L87 Difference]: Start difference. First operand 404 states. Second operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:08:21,890 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:08:21,890 INFO L93 Difference]: Finished difference Result 404 states and 478 transitions. [2022-04-28 04:08:21,890 INFO L276 IsEmpty]: Start isEmpty. Operand 404 states and 478 transitions. [2022-04-28 04:08:21,890 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:08:21,890 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:08:21,891 INFO L74 IsIncluded]: Start isIncluded. First operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 404 states. [2022-04-28 04:08:21,891 INFO L87 Difference]: Start difference. First operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) Second operand 404 states. [2022-04-28 04:08:21,896 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:08:21,896 INFO L93 Difference]: Finished difference Result 404 states and 478 transitions. [2022-04-28 04:08:21,896 INFO L276 IsEmpty]: Start isEmpty. Operand 404 states and 478 transitions. [2022-04-28 04:08:21,897 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:08:21,897 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:08:21,897 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:08:21,897 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:08:21,897 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 370 states, 355 states have (on average 1.1915492957746479) internal successors, (423), 358 states have internal predecessors, (423), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (8), 5 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-28 04:08:21,902 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 370 states to 370 states and 440 transitions. [2022-04-28 04:08:21,903 INFO L78 Accepts]: Start accepts. Automaton has 370 states and 440 transitions. Word has length 58 [2022-04-28 04:08:21,903 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:08:21,903 INFO L495 AbstractCegarLoop]: Abstraction has 370 states and 440 transitions. [2022-04-28 04:08:21,903 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 30 states, 30 states have (on average 1.7333333333333334) internal successors, (52), 29 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:08:21,903 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 370 states and 440 transitions. [2022-04-28 04:08:24,626 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 440 edges. 440 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:08:24,626 INFO L276 IsEmpty]: Start isEmpty. Operand 370 states and 440 transitions. [2022-04-28 04:08:24,626 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 59 [2022-04-28 04:08:24,626 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:08:24,626 INFO L195 NwaCegarLoop]: trace histogram [12, 12, 11, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:08:24,642 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (70)] Forceful destruction successful, exit code 0 [2022-04-28 04:08:24,829 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable77,70 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:08:24,829 INFO L420 AbstractCegarLoop]: === Iteration 79 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:08:24,829 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:08:24,829 INFO L85 PathProgramCache]: Analyzing trace with hash -1144908836, now seen corresponding path program 66 times [2022-04-28 04:08:24,829 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:08:24,829 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [79612640] [2022-04-28 04:08:25,063 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 2 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {0={1=1}, 1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:08:29,192 WARN L977 rdanLoopAcceleration]: Unable to prove correctness of quantifier elimination. [2022-04-28 04:08:29,308 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 1 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {1={2=1}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-28 04:08:29,309 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-28 04:08:29,312 INFO L85 PathProgramCache]: Analyzing trace with hash -1418015295, now seen corresponding path program 1 times [2022-04-28 04:08:29,312 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:08:29,312 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1938457129] [2022-04-28 04:08:29,312 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:08:29,313 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:08:29,319 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:08:29,359 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:08:29,360 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:08:29,364 INFO L290 TraceCheckUtils]: 0: Hoare triple {174978#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {174970#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:29,364 INFO L290 TraceCheckUtils]: 1: Hoare triple {174970#(<= 200000 ~SIZE~0)} assume true; {174970#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:29,364 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {174970#(<= 200000 ~SIZE~0)} {174965#true} #90#return; {174970#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:29,364 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:08:29,365 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:08:29,367 INFO L290 TraceCheckUtils]: 0: Hoare triple {174965#true} ~cond := #in~cond; {174965#true} is VALID [2022-04-28 04:08:29,367 INFO L290 TraceCheckUtils]: 1: Hoare triple {174965#true} assume !(0 == ~cond); {174965#true} is VALID [2022-04-28 04:08:29,367 INFO L290 TraceCheckUtils]: 2: Hoare triple {174965#true} assume true; {174965#true} is VALID [2022-04-28 04:08:29,368 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {174965#true} {174970#(<= 200000 ~SIZE~0)} #86#return; {174970#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:29,368 INFO L272 TraceCheckUtils]: 0: Hoare triple {174965#true} call ULTIMATE.init(); {174978#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:08:29,369 INFO L290 TraceCheckUtils]: 1: Hoare triple {174978#(and (= ~last~0 |old(~last~0)|) (= |old(~SIZE~0)| ~SIZE~0) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {174970#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:29,369 INFO L290 TraceCheckUtils]: 2: Hoare triple {174970#(<= 200000 ~SIZE~0)} assume true; {174970#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:29,369 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {174970#(<= 200000 ~SIZE~0)} {174965#true} #90#return; {174970#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:29,369 INFO L272 TraceCheckUtils]: 4: Hoare triple {174970#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {174970#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:29,370 INFO L290 TraceCheckUtils]: 5: Hoare triple {174970#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {174970#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:29,370 INFO L272 TraceCheckUtils]: 6: Hoare triple {174970#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {174965#true} is VALID [2022-04-28 04:08:29,370 INFO L290 TraceCheckUtils]: 7: Hoare triple {174965#true} ~cond := #in~cond; {174965#true} is VALID [2022-04-28 04:08:29,370 INFO L290 TraceCheckUtils]: 8: Hoare triple {174965#true} assume !(0 == ~cond); {174965#true} is VALID [2022-04-28 04:08:29,370 INFO L290 TraceCheckUtils]: 9: Hoare triple {174965#true} assume true; {174965#true} is VALID [2022-04-28 04:08:29,370 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {174965#true} {174970#(<= 200000 ~SIZE~0)} #86#return; {174970#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:29,371 INFO L290 TraceCheckUtils]: 11: Hoare triple {174970#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {174970#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:29,371 INFO L290 TraceCheckUtils]: 12: Hoare triple {174970#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {174975#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:08:29,372 INFO L290 TraceCheckUtils]: 13: Hoare triple {174975#(and (= main_~st~0 1) (= main_~c~0 0) (<= 200000 ~SIZE~0))} [384] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~c~0_1818 v_main_~c~0_1817)) (.cse0 (<= v_~last~0_711 v_main_~c~0_1818)) (.cse2 (= |v_main_#t~post5_933| |v_main_#t~post5_931|))) (or (and (= v_main_~st~0_967 0) (< v_main_~c~0_1817 (+ v_~SIZE~0_641 1)) .cse0 (< v_main_~c~0_1818 v_main_~c~0_1817)) (and .cse1 (= v_~SIZE~0_641 v_~SIZE~0_641) (= v_main_~st~0_968 v_main_~st~0_967) (= v_~last~0_711 v_~last~0_711) .cse2) (and .cse1 (= v_main_~st~0_967 v_main_~st~0_968) (or (not (< v_main_~c~0_1818 v_~SIZE~0_641)) (not .cse0)) .cse2))) InVars {~SIZE~0=v_~SIZE~0_641, main_~c~0=v_main_~c~0_1818, main_#t~post5=|v_main_#t~post5_933|, main_~st~0=v_main_~st~0_968, ~last~0=v_~last~0_711} OutVars{~SIZE~0=v_~SIZE~0_641, main_#t~post5=|v_main_#t~post5_931|, main_~c~0=v_main_~c~0_1817, main_~st~0=v_main_~st~0_967, ~last~0=v_~last~0_711} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {174976#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:08:29,372 INFO L290 TraceCheckUtils]: 14: Hoare triple {174976#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [385] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {174976#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:08:29,373 INFO L290 TraceCheckUtils]: 15: Hoare triple {174976#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [386] L27-3-->L27-4_primed: Formula: (or (and (= |v_main_#t~post5_936| |v_main_#t~post5_932|) (= v_~SIZE~0_642 v_~SIZE~0_642) (= v_main_~c~0_1820 v_main_~c~0_1819) (= v_~last~0_712 v_~last~0_712)) (and (< v_main_~c~0_1819 (+ v_~last~0_712 1)) (< v_main_~c~0_1820 v_main_~c~0_1819) (< v_main_~c~0_1819 (+ v_~SIZE~0_642 1))) (and (or (not (< v_main_~c~0_1820 v_~last~0_712)) (not (< v_main_~c~0_1820 v_~SIZE~0_642))) (= |v_main_#t~post5_932| |v_main_#t~post5_936|) (= v_main_~c~0_1819 v_main_~c~0_1820))) InVars {~SIZE~0=v_~SIZE~0_642, main_~c~0=v_main_~c~0_1820, main_#t~post5=|v_main_#t~post5_936|, ~last~0=v_~last~0_712} OutVars{~SIZE~0=v_~SIZE~0_642, main_#t~post5=|v_main_#t~post5_932|, main_~c~0=v_main_~c~0_1819, ~last~0=v_~last~0_712} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {174976#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} is VALID [2022-04-28 04:08:29,373 INFO L290 TraceCheckUtils]: 16: Hoare triple {174976#(or (<= (+ ~last~0 200000) ~SIZE~0) (= main_~st~0 1))} [383] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {174977#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} is VALID [2022-04-28 04:08:29,373 INFO L290 TraceCheckUtils]: 17: Hoare triple {174977#(or (<= (+ ~last~0 200000) main_~c~0) (= main_~st~0 1))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {174966#false} is VALID [2022-04-28 04:08:29,373 INFO L290 TraceCheckUtils]: 18: Hoare triple {174966#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {174966#false} is VALID [2022-04-28 04:08:29,374 INFO L290 TraceCheckUtils]: 19: Hoare triple {174966#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {174966#false} is VALID [2022-04-28 04:08:29,374 INFO L290 TraceCheckUtils]: 20: Hoare triple {174966#false} assume !(~d~0 == ~SIZE~0); {174966#false} is VALID [2022-04-28 04:08:29,374 INFO L272 TraceCheckUtils]: 21: Hoare triple {174966#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {174966#false} is VALID [2022-04-28 04:08:29,374 INFO L290 TraceCheckUtils]: 22: Hoare triple {174966#false} ~cond := #in~cond; {174966#false} is VALID [2022-04-28 04:08:29,374 INFO L290 TraceCheckUtils]: 23: Hoare triple {174966#false} assume 0 == ~cond; {174966#false} is VALID [2022-04-28 04:08:29,374 INFO L290 TraceCheckUtils]: 24: Hoare triple {174966#false} assume !false; {174966#false} is VALID [2022-04-28 04:08:29,374 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:08:29,374 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:08:29,374 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1938457129] [2022-04-28 04:08:29,374 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1938457129] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:08:29,374 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [414411470] [2022-04-28 04:08:29,374 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:08:29,374 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:08:29,375 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:08:29,375 INFO L229 MonitoredProcess]: Starting monitored process 71 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-28 04:08:29,376 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (71)] Waiting until timeout for monitored process [2022-04-28 04:08:29,405 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:08:29,406 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-28 04:08:29,412 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:08:29,412 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:08:29,646 INFO L272 TraceCheckUtils]: 0: Hoare triple {174965#true} call ULTIMATE.init(); {174965#true} is VALID [2022-04-28 04:08:29,647 INFO L290 TraceCheckUtils]: 1: Hoare triple {174965#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {174970#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:29,647 INFO L290 TraceCheckUtils]: 2: Hoare triple {174970#(<= 200000 ~SIZE~0)} assume true; {174970#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:29,647 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {174970#(<= 200000 ~SIZE~0)} {174965#true} #90#return; {174970#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:29,648 INFO L272 TraceCheckUtils]: 4: Hoare triple {174970#(<= 200000 ~SIZE~0)} call #t~ret7 := main(); {174970#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:29,648 INFO L290 TraceCheckUtils]: 5: Hoare triple {174970#(<= 200000 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {174970#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:29,648 INFO L272 TraceCheckUtils]: 6: Hoare triple {174970#(<= 200000 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {174970#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:29,649 INFO L290 TraceCheckUtils]: 7: Hoare triple {174970#(<= 200000 ~SIZE~0)} ~cond := #in~cond; {174970#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:29,649 INFO L290 TraceCheckUtils]: 8: Hoare triple {174970#(<= 200000 ~SIZE~0)} assume !(0 == ~cond); {174970#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:29,649 INFO L290 TraceCheckUtils]: 9: Hoare triple {174970#(<= 200000 ~SIZE~0)} assume true; {174970#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:29,649 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {174970#(<= 200000 ~SIZE~0)} {174970#(<= 200000 ~SIZE~0)} #86#return; {174970#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:29,650 INFO L290 TraceCheckUtils]: 11: Hoare triple {174970#(<= 200000 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {174970#(<= 200000 ~SIZE~0)} is VALID [2022-04-28 04:08:29,650 INFO L290 TraceCheckUtils]: 12: Hoare triple {174970#(<= 200000 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {175018#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:08:29,651 INFO L290 TraceCheckUtils]: 13: Hoare triple {175018#(and (= main_~st~0 1) (<= main_~c~0 0) (<= 200000 ~SIZE~0))} [384] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~c~0_1818 v_main_~c~0_1817)) (.cse0 (<= v_~last~0_711 v_main_~c~0_1818)) (.cse2 (= |v_main_#t~post5_933| |v_main_#t~post5_931|))) (or (and (= v_main_~st~0_967 0) (< v_main_~c~0_1817 (+ v_~SIZE~0_641 1)) .cse0 (< v_main_~c~0_1818 v_main_~c~0_1817)) (and .cse1 (= v_~SIZE~0_641 v_~SIZE~0_641) (= v_main_~st~0_968 v_main_~st~0_967) (= v_~last~0_711 v_~last~0_711) .cse2) (and .cse1 (= v_main_~st~0_967 v_main_~st~0_968) (or (not (< v_main_~c~0_1818 v_~SIZE~0_641)) (not .cse0)) .cse2))) InVars {~SIZE~0=v_~SIZE~0_641, main_~c~0=v_main_~c~0_1818, main_#t~post5=|v_main_#t~post5_933|, main_~st~0=v_main_~st~0_968, ~last~0=v_~last~0_711} OutVars{~SIZE~0=v_~SIZE~0_641, main_#t~post5=|v_main_#t~post5_931|, main_~c~0=v_main_~c~0_1817, main_~st~0=v_main_~st~0_967, ~last~0=v_~last~0_711} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {175022#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:08:29,651 INFO L290 TraceCheckUtils]: 14: Hoare triple {175022#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [385] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {175022#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:08:29,652 INFO L290 TraceCheckUtils]: 15: Hoare triple {175022#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [386] L27-3-->L27-4_primed: Formula: (or (and (= |v_main_#t~post5_936| |v_main_#t~post5_932|) (= v_~SIZE~0_642 v_~SIZE~0_642) (= v_main_~c~0_1820 v_main_~c~0_1819) (= v_~last~0_712 v_~last~0_712)) (and (< v_main_~c~0_1819 (+ v_~last~0_712 1)) (< v_main_~c~0_1820 v_main_~c~0_1819) (< v_main_~c~0_1819 (+ v_~SIZE~0_642 1))) (and (or (not (< v_main_~c~0_1820 v_~last~0_712)) (not (< v_main_~c~0_1820 v_~SIZE~0_642))) (= |v_main_#t~post5_932| |v_main_#t~post5_936|) (= v_main_~c~0_1819 v_main_~c~0_1820))) InVars {~SIZE~0=v_~SIZE~0_642, main_~c~0=v_main_~c~0_1820, main_#t~post5=|v_main_#t~post5_936|, ~last~0=v_~last~0_712} OutVars{~SIZE~0=v_~SIZE~0_642, main_#t~post5=|v_main_#t~post5_932|, main_~c~0=v_main_~c~0_1819, ~last~0=v_~last~0_712} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {175022#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} is VALID [2022-04-28 04:08:29,653 INFO L290 TraceCheckUtils]: 16: Hoare triple {175022#(and (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)) (<= 200000 ~SIZE~0))} [383] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {175032#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} is VALID [2022-04-28 04:08:29,653 INFO L290 TraceCheckUtils]: 17: Hoare triple {175032#(and (<= 200000 main_~c~0) (or (and (<= ~last~0 0) (= main_~st~0 0)) (= main_~st~0 1)))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {174966#false} is VALID [2022-04-28 04:08:29,653 INFO L290 TraceCheckUtils]: 18: Hoare triple {174966#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {174966#false} is VALID [2022-04-28 04:08:29,653 INFO L290 TraceCheckUtils]: 19: Hoare triple {174966#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {174966#false} is VALID [2022-04-28 04:08:29,653 INFO L290 TraceCheckUtils]: 20: Hoare triple {174966#false} assume !(~d~0 == ~SIZE~0); {174966#false} is VALID [2022-04-28 04:08:29,653 INFO L272 TraceCheckUtils]: 21: Hoare triple {174966#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {174966#false} is VALID [2022-04-28 04:08:29,654 INFO L290 TraceCheckUtils]: 22: Hoare triple {174966#false} ~cond := #in~cond; {174966#false} is VALID [2022-04-28 04:08:29,654 INFO L290 TraceCheckUtils]: 23: Hoare triple {174966#false} assume 0 == ~cond; {174966#false} is VALID [2022-04-28 04:08:29,654 INFO L290 TraceCheckUtils]: 24: Hoare triple {174966#false} assume !false; {174966#false} is VALID [2022-04-28 04:08:29,654 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:08:29,654 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:08:29,990 INFO L290 TraceCheckUtils]: 24: Hoare triple {174966#false} assume !false; {174966#false} is VALID [2022-04-28 04:08:29,991 INFO L290 TraceCheckUtils]: 23: Hoare triple {174966#false} assume 0 == ~cond; {174966#false} is VALID [2022-04-28 04:08:29,991 INFO L290 TraceCheckUtils]: 22: Hoare triple {174966#false} ~cond := #in~cond; {174966#false} is VALID [2022-04-28 04:08:29,991 INFO L272 TraceCheckUtils]: 21: Hoare triple {174966#false} call __VERIFIER_assert((if ~a~0 == ~b~0 && ~c~0 == ~SIZE~0 then 1 else 0)); {174966#false} is VALID [2022-04-28 04:08:29,991 INFO L290 TraceCheckUtils]: 20: Hoare triple {174966#false} assume !(~d~0 == ~SIZE~0); {174966#false} is VALID [2022-04-28 04:08:29,991 INFO L290 TraceCheckUtils]: 19: Hoare triple {174966#false} assume !(1 == ~st~0 && ~last~0 < ~SIZE~0); {174966#false} is VALID [2022-04-28 04:08:29,991 INFO L290 TraceCheckUtils]: 18: Hoare triple {174966#false} assume !(~c~0 == ~last~0 && 0 == ~st~0); {174966#false} is VALID [2022-04-28 04:08:29,991 INFO L290 TraceCheckUtils]: 17: Hoare triple {175078#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} assume 0 == ~st~0 && ~c~0 == 1 + ~last~0;~a~0 := 3 + ~a~0;~b~0 := 3 + ~b~0; {174966#false} is VALID [2022-04-28 04:08:29,992 INFO L290 TraceCheckUtils]: 16: Hoare triple {175082#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [383] L27-4_primed-->L27-4: Formula: (not (< v_main_~c~0_11 v_~SIZE~0_3)) InVars {~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} OutVars{~SIZE~0=v_~SIZE~0_3, main_~c~0=v_main_~c~0_11} AuxVars[] AssignedVars[] {175078#(or (not (<= main_~st~0 0)) (not (<= main_~c~0 (+ ~last~0 1))))} is VALID [2022-04-28 04:08:29,992 INFO L290 TraceCheckUtils]: 15: Hoare triple {175082#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [386] L27-3-->L27-4_primed: Formula: (or (and (= |v_main_#t~post5_936| |v_main_#t~post5_932|) (= v_~SIZE~0_642 v_~SIZE~0_642) (= v_main_~c~0_1820 v_main_~c~0_1819) (= v_~last~0_712 v_~last~0_712)) (and (< v_main_~c~0_1819 (+ v_~last~0_712 1)) (< v_main_~c~0_1820 v_main_~c~0_1819) (< v_main_~c~0_1819 (+ v_~SIZE~0_642 1))) (and (or (not (< v_main_~c~0_1820 v_~last~0_712)) (not (< v_main_~c~0_1820 v_~SIZE~0_642))) (= |v_main_#t~post5_932| |v_main_#t~post5_936|) (= v_main_~c~0_1819 v_main_~c~0_1820))) InVars {~SIZE~0=v_~SIZE~0_642, main_~c~0=v_main_~c~0_1820, main_#t~post5=|v_main_#t~post5_936|, ~last~0=v_~last~0_712} OutVars{~SIZE~0=v_~SIZE~0_642, main_#t~post5=|v_main_#t~post5_932|, main_~c~0=v_main_~c~0_1819, ~last~0=v_~last~0_712} AuxVars[] AssignedVars[main_#t~post5, main_~c~0] {175082#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:08:29,993 INFO L290 TraceCheckUtils]: 14: Hoare triple {175082#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} [385] L27-4_primed-->L27-3: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {175082#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:08:29,993 INFO L290 TraceCheckUtils]: 13: Hoare triple {175092#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} [384] L27-3-->L27-4_primed: Formula: (let ((.cse1 (= v_main_~c~0_1818 v_main_~c~0_1817)) (.cse0 (<= v_~last~0_711 v_main_~c~0_1818)) (.cse2 (= |v_main_#t~post5_933| |v_main_#t~post5_931|))) (or (and (= v_main_~st~0_967 0) (< v_main_~c~0_1817 (+ v_~SIZE~0_641 1)) .cse0 (< v_main_~c~0_1818 v_main_~c~0_1817)) (and .cse1 (= v_~SIZE~0_641 v_~SIZE~0_641) (= v_main_~st~0_968 v_main_~st~0_967) (= v_~last~0_711 v_~last~0_711) .cse2) (and .cse1 (= v_main_~st~0_967 v_main_~st~0_968) (or (not (< v_main_~c~0_1818 v_~SIZE~0_641)) (not .cse0)) .cse2))) InVars {~SIZE~0=v_~SIZE~0_641, main_~c~0=v_main_~c~0_1818, main_#t~post5=|v_main_#t~post5_933|, main_~st~0=v_main_~st~0_968, ~last~0=v_~last~0_711} OutVars{~SIZE~0=v_~SIZE~0_641, main_#t~post5=|v_main_#t~post5_931|, main_~c~0=v_main_~c~0_1817, main_~st~0=v_main_~st~0_967, ~last~0=v_~last~0_711} AuxVars[] AssignedVars[main_#t~post5, main_~c~0, main_~st~0] {175082#(or (< (+ ~last~0 1) ~SIZE~0) (not (<= main_~st~0 0)))} is VALID [2022-04-28 04:08:29,994 INFO L290 TraceCheckUtils]: 12: Hoare triple {175096#(< 1 ~SIZE~0)} assume !false;~st~0 := 1;~c~0 := 0; {175092#(and (not (<= main_~st~0 0)) (or (<= ~SIZE~0 main_~c~0) (< (+ main_~c~0 1) ~SIZE~0)))} is VALID [2022-04-28 04:08:29,994 INFO L290 TraceCheckUtils]: 11: Hoare triple {175096#(< 1 ~SIZE~0)} ~a~0 := 0;~b~0 := 0;~c~0 := 0;~st~0 := 0;~d~0 := 0; {175096#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:08:29,994 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {174965#true} {175096#(< 1 ~SIZE~0)} #86#return; {175096#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:08:29,994 INFO L290 TraceCheckUtils]: 9: Hoare triple {174965#true} assume true; {174965#true} is VALID [2022-04-28 04:08:29,995 INFO L290 TraceCheckUtils]: 8: Hoare triple {174965#true} assume !(0 == ~cond); {174965#true} is VALID [2022-04-28 04:08:29,995 INFO L290 TraceCheckUtils]: 7: Hoare triple {174965#true} ~cond := #in~cond; {174965#true} is VALID [2022-04-28 04:08:29,995 INFO L272 TraceCheckUtils]: 6: Hoare triple {175096#(< 1 ~SIZE~0)} call assume_abort_if_not((if ~last~0 > 0 then 1 else 0)); {174965#true} is VALID [2022-04-28 04:08:29,995 INFO L290 TraceCheckUtils]: 5: Hoare triple {175096#(< 1 ~SIZE~0)} assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~last~0 := #t~nondet4;havoc #t~nondet4; {175096#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:08:29,995 INFO L272 TraceCheckUtils]: 4: Hoare triple {175096#(< 1 ~SIZE~0)} call #t~ret7 := main(); {175096#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:08:29,995 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {175096#(< 1 ~SIZE~0)} {174965#true} #90#return; {175096#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:08:29,996 INFO L290 TraceCheckUtils]: 2: Hoare triple {175096#(< 1 ~SIZE~0)} assume true; {175096#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:08:29,996 INFO L290 TraceCheckUtils]: 1: Hoare triple {174965#true} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~last~0 := 0;~SIZE~0 := 200000; {175096#(< 1 ~SIZE~0)} is VALID [2022-04-28 04:08:29,996 INFO L272 TraceCheckUtils]: 0: Hoare triple {174965#true} call ULTIMATE.init(); {174965#true} is VALID [2022-04-28 04:08:29,996 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 1 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-04-28 04:08:29,996 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [414411470] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:08:29,997 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:08:29,997 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 14 [2022-04-28 04:08:30,805 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:08:30,805 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [79612640] [2022-04-28 04:08:30,805 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [79612640] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:08:30,805 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:08:30,805 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [31] imperfect sequences [] total 31 [2022-04-28 04:08:30,805 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1162557173] [2022-04-28 04:08:30,805 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:08:30,806 INFO L78 Accepts]: Start accepts. Automaton has has 31 states, 31 states have (on average 1.6774193548387097) internal successors, (52), 30 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 58 [2022-04-28 04:08:30,806 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:08:30,806 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 31 states, 31 states have (on average 1.6774193548387097) internal successors, (52), 30 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-28 04:08:30,843 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:08:30,843 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 31 states [2022-04-28 04:08:30,843 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:08:30,843 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 31 interpolants. [2022-04-28 04:08:30,843 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=314, Invalid=1246, Unknown=0, NotChecked=0, Total=1560 [2022-04-28 04:08:30,843 INFO L87 Difference]: Start difference. First operand 370 states and 440 transitions. Second operand has 31 states, 31 states have (on average 1.6774193548387097) internal successors, (52), 30 states have internal predecessors, (52), 3 states have call successors, (4), 4 states have call predecessors, (4), 2 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2)