/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/verifythis/lcp.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-fb4f59a-m [2022-04-28 04:10:32,489 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-28 04:10:32,517 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-28 04:10:32,552 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-28 04:10:32,553 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-28 04:10:32,553 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-28 04:10:32,556 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-28 04:10:32,558 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-28 04:10:32,559 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-28 04:10:32,563 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-28 04:10:32,563 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-28 04:10:32,564 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-28 04:10:32,564 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-28 04:10:32,566 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-28 04:10:32,566 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-28 04:10:32,568 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-28 04:10:32,569 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-28 04:10:32,569 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-28 04:10:32,570 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-28 04:10:32,574 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-28 04:10:32,575 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-28 04:10:32,576 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-28 04:10:32,576 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-28 04:10:32,577 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-28 04:10:32,578 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-28 04:10:32,583 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-28 04:10:32,583 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-28 04:10:32,583 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-28 04:10:32,583 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-28 04:10:32,583 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-28 04:10:32,584 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-28 04:10:32,584 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-28 04:10:32,584 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-28 04:10:32,585 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-28 04:10:32,585 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-28 04:10:32,586 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-28 04:10:32,586 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-28 04:10:32,586 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-28 04:10:32,586 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-28 04:10:32,586 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-28 04:10:32,587 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-28 04:10:32,587 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-28 04:10:32,588 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 04:10:32,593 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-28 04:10:32,593 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-28 04:10:32,594 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-28 04:10:32,594 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-28 04:10:32,594 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-28 04:10:32,594 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-28 04:10:32,594 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-28 04:10:32,594 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-28 04:10:32,594 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-28 04:10:32,595 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-28 04:10:32,595 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-28 04:10:32,595 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-28 04:10:32,595 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-28 04:10:32,595 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-28 04:10:32,595 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-28 04:10:32,595 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-28 04:10:32,595 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-28 04:10:32,596 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-28 04:10:32,596 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 04:10:32,596 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-28 04:10:32,596 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-28 04:10:32,596 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-28 04:10:32,596 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-28 04:10:32,596 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-28 04:10:32,596 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-28 04:10:32,597 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 04:10:32,759 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-28 04:10:32,774 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-28 04:10:32,776 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-28 04:10:32,776 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-28 04:10:32,777 INFO L275 PluginConnector]: CDTParser initialized [2022-04-28 04:10:32,777 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/verifythis/lcp.c [2022-04-28 04:10:32,820 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c0f5bff92/0dcca3fc9e354b0483927fb7c69dce2e/FLAGc7c28fc73 [2022-04-28 04:10:33,161 INFO L306 CDTParser]: Found 1 translation units. [2022-04-28 04:10:33,162 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/verifythis/lcp.c [2022-04-28 04:10:33,165 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c0f5bff92/0dcca3fc9e354b0483927fb7c69dce2e/FLAGc7c28fc73 [2022-04-28 04:10:33,175 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/c0f5bff92/0dcca3fc9e354b0483927fb7c69dce2e [2022-04-28 04:10:33,176 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-28 04:10:33,177 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-28 04:10:33,178 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-28 04:10:33,178 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-28 04:10:33,180 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-28 04:10:33,181 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 04:10:33" (1/1) ... [2022-04-28 04:10:33,181 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@38754395 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:10:33, skipping insertion in model container [2022-04-28 04:10:33,182 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 28.04 04:10:33" (1/1) ... [2022-04-28 04:10:33,186 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-28 04:10:33,195 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-28 04:10:33,342 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/verifythis/lcp.c[515,528] [2022-04-28 04:10:33,372 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 04:10:33,382 INFO L203 MainTranslator]: Completed pre-run [2022-04-28 04:10:33,391 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/verifythis/lcp.c[515,528] [2022-04-28 04:10:33,400 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-28 04:10:33,409 INFO L208 MainTranslator]: Completed translation [2022-04-28 04:10:33,409 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:10:33 WrapperNode [2022-04-28 04:10:33,409 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-28 04:10:33,410 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-28 04:10:33,410 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-28 04:10:33,410 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-28 04:10:33,416 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:10:33" (1/1) ... [2022-04-28 04:10:33,416 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:10:33" (1/1) ... [2022-04-28 04:10:33,428 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:10:33" (1/1) ... [2022-04-28 04:10:33,428 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:10:33" (1/1) ... [2022-04-28 04:10:33,445 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:10:33" (1/1) ... [2022-04-28 04:10:33,447 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:10:33" (1/1) ... [2022-04-28 04:10:33,448 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:10:33" (1/1) ... [2022-04-28 04:10:33,449 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-28 04:10:33,450 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-28 04:10:33,450 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-28 04:10:33,450 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-28 04:10:33,452 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:10:33" (1/1) ... [2022-04-28 04:10:33,457 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-28 04:10:33,464 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:10:33,472 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 04:10:33,502 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 04:10:33,520 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-28 04:10:33,520 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-28 04:10:33,520 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-28 04:10:33,520 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-28 04:10:33,520 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-28 04:10:33,521 INFO L138 BoogieDeclarations]: Found implementation of procedure lcp [2022-04-28 04:10:33,521 INFO L138 BoogieDeclarations]: Found implementation of procedure check [2022-04-28 04:10:33,521 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-28 04:10:33,521 INFO L138 BoogieDeclarations]: Found implementation of procedure #Ultimate.meminit [2022-04-28 04:10:33,521 INFO L130 BoogieDeclarations]: Found specification of procedure calloc [2022-04-28 04:10:33,521 INFO L130 BoogieDeclarations]: Found specification of procedure free [2022-04-28 04:10:33,521 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-28 04:10:33,521 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-28 04:10:33,521 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-28 04:10:33,521 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-28 04:10:33,521 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-28 04:10:33,521 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-28 04:10:33,521 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-28 04:10:33,522 INFO L130 BoogieDeclarations]: Found specification of procedure lcp [2022-04-28 04:10:33,522 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-28 04:10:33,522 INFO L130 BoogieDeclarations]: Found specification of procedure check [2022-04-28 04:10:33,522 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-28 04:10:33,522 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnHeap [2022-04-28 04:10:33,522 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.meminit [2022-04-28 04:10:33,522 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-28 04:10:33,522 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-28 04:10:33,522 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-28 04:10:33,522 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-28 04:10:33,522 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-28 04:10:33,572 INFO L234 CfgBuilder]: Building ICFG [2022-04-28 04:10:33,573 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-28 04:10:33,767 INFO L275 CfgBuilder]: Performing block encoding [2022-04-28 04:10:33,784 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-28 04:10:33,784 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-28 04:10:33,785 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 04:10:33 BoogieIcfgContainer [2022-04-28 04:10:33,785 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-28 04:10:33,786 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-28 04:10:33,787 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-28 04:10:33,789 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-28 04:10:33,789 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 28.04 04:10:33" (1/3) ... [2022-04-28 04:10:33,790 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1f782c23 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 04:10:33, skipping insertion in model container [2022-04-28 04:10:33,790 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 28.04 04:10:33" (2/3) ... [2022-04-28 04:10:33,791 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1f782c23 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 28.04 04:10:33, skipping insertion in model container [2022-04-28 04:10:33,791 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 28.04 04:10:33" (3/3) ... [2022-04-28 04:10:33,792 INFO L111 eAbstractionObserver]: Analyzing ICFG lcp.c [2022-04-28 04:10:33,800 INFO L201 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-28 04:10:33,800 INFO L160 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-28 04:10:33,840 INFO L356 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-28 04:10:33,845 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@1579ea1f, mLbeIndependenceSettings=de.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings@499c327b [2022-04-28 04:10:33,845 INFO L358 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-28 04:10:33,850 INFO L276 IsEmpty]: Start isEmpty. Operand has 49 states, 30 states have (on average 1.2333333333333334) internal successors, (37), 31 states have internal predecessors, (37), 10 states have call successors, (10), 7 states have call predecessors, (10), 7 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-28 04:10:33,855 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 42 [2022-04-28 04:10:33,855 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:10:33,855 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:10:33,856 INFO L420 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:10:33,864 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:10:33,864 INFO L85 PathProgramCache]: Analyzing trace with hash -675162514, now seen corresponding path program 1 times [2022-04-28 04:10:33,868 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:10:33,869 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1318066553] [2022-04-28 04:10:33,877 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:10:33,877 INFO L85 PathProgramCache]: Analyzing trace with hash -675162514, now seen corresponding path program 2 times [2022-04-28 04:10:33,879 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:10:33,879 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1449053394] [2022-04-28 04:10:33,879 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:10:33,880 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:10:33,993 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:34,067 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:10:34,071 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:34,088 INFO L290 TraceCheckUtils]: 0: Hoare triple {77#(and (= |#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(6, 2);call write~init~int(108, 2, 0, 1);call write~init~int(99, 2, 1, 1);call write~init~int(112, 2, 2, 1);call write~init~int(46, 2, 3, 1);call write~init~int(99, 2, 4, 1);call write~init~int(0, 2, 5, 1);call #Ultimate.allocInit(12, 3); {52#true} is VALID [2022-04-28 04:10:34,088 INFO L290 TraceCheckUtils]: 1: Hoare triple {52#true} assume true; {52#true} is VALID [2022-04-28 04:10:34,089 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {52#true} {52#true} #91#return; {52#true} is VALID [2022-04-28 04:10:34,089 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:10:34,094 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:34,100 INFO L290 TraceCheckUtils]: 0: Hoare triple {52#true} ~cond := #in~cond; {52#true} is VALID [2022-04-28 04:10:34,101 INFO L290 TraceCheckUtils]: 1: Hoare triple {52#true} assume 0 == ~cond;assume false; {53#false} is VALID [2022-04-28 04:10:34,102 INFO L290 TraceCheckUtils]: 2: Hoare triple {53#false} assume true; {53#false} is VALID [2022-04-28 04:10:34,102 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {53#false} {52#true} #75#return; {53#false} is VALID [2022-04-28 04:10:34,109 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-28 04:10:34,115 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:34,122 INFO L290 TraceCheckUtils]: 0: Hoare triple {78#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {52#true} is VALID [2022-04-28 04:10:34,122 INFO L290 TraceCheckUtils]: 1: Hoare triple {52#true} assume true; {52#true} is VALID [2022-04-28 04:10:34,122 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {52#true} {53#false} #77#return; {53#false} is VALID [2022-04-28 04:10:34,123 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-28 04:10:34,124 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:34,128 INFO L290 TraceCheckUtils]: 0: Hoare triple {52#true} ~cond := #in~cond; {52#true} is VALID [2022-04-28 04:10:34,128 INFO L290 TraceCheckUtils]: 1: Hoare triple {52#true} assume 0 == ~cond;assume false; {53#false} is VALID [2022-04-28 04:10:34,129 INFO L290 TraceCheckUtils]: 2: Hoare triple {53#false} assume true; {53#false} is VALID [2022-04-28 04:10:34,129 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {53#false} {53#false} #79#return; {53#false} is VALID [2022-04-28 04:10:34,129 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-28 04:10:34,131 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:34,137 INFO L290 TraceCheckUtils]: 0: Hoare triple {52#true} ~a.base, ~a.offset := #in~a.base, #in~a.offset;~n := #in~n;~x := #in~x;~y := #in~y;~l~0 := 0; {52#true} is VALID [2022-04-28 04:10:34,137 INFO L290 TraceCheckUtils]: 1: Hoare triple {52#true} assume !true; {53#false} is VALID [2022-04-28 04:10:34,137 INFO L290 TraceCheckUtils]: 2: Hoare triple {53#false} #res := ~l~0; {53#false} is VALID [2022-04-28 04:10:34,138 INFO L290 TraceCheckUtils]: 3: Hoare triple {53#false} assume true; {53#false} is VALID [2022-04-28 04:10:34,139 INFO L284 TraceCheckUtils]: 4: Hoare quadruple {53#false} {53#false} #81#return; {53#false} is VALID [2022-04-28 04:10:34,140 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 31 [2022-04-28 04:10:34,143 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:34,150 INFO L290 TraceCheckUtils]: 0: Hoare triple {52#true} ~cond := #in~cond; {52#true} is VALID [2022-04-28 04:10:34,150 INFO L290 TraceCheckUtils]: 1: Hoare triple {52#true} assume 0 == ~cond;assume false; {53#false} is VALID [2022-04-28 04:10:34,150 INFO L290 TraceCheckUtils]: 2: Hoare triple {53#false} assume true; {53#false} is VALID [2022-04-28 04:10:34,151 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {53#false} {53#false} #85#return; {53#false} is VALID [2022-04-28 04:10:34,151 INFO L272 TraceCheckUtils]: 0: Hoare triple {52#true} call ULTIMATE.init(); {77#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:10:34,152 INFO L290 TraceCheckUtils]: 1: Hoare triple {77#(and (= |#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(6, 2);call write~init~int(108, 2, 0, 1);call write~init~int(99, 2, 1, 1);call write~init~int(112, 2, 2, 1);call write~init~int(46, 2, 3, 1);call write~init~int(99, 2, 4, 1);call write~init~int(0, 2, 5, 1);call #Ultimate.allocInit(12, 3); {52#true} is VALID [2022-04-28 04:10:34,152 INFO L290 TraceCheckUtils]: 2: Hoare triple {52#true} assume true; {52#true} is VALID [2022-04-28 04:10:34,153 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {52#true} {52#true} #91#return; {52#true} is VALID [2022-04-28 04:10:34,154 INFO L272 TraceCheckUtils]: 4: Hoare triple {52#true} call #t~ret19 := main(); {52#true} is VALID [2022-04-28 04:10:34,154 INFO L290 TraceCheckUtils]: 5: Hoare triple {52#true} assume -2147483648 <= #t~nondet14 && #t~nondet14 <= 2147483647;~n~0 := #t~nondet14;havoc #t~nondet14; {52#true} is VALID [2022-04-28 04:10:34,155 INFO L272 TraceCheckUtils]: 6: Hoare triple {52#true} call assume_abort_if_not((if ~n~0 >= 0 && ~n~0 < 1073741824 then 1 else 0)); {52#true} is VALID [2022-04-28 04:10:34,155 INFO L290 TraceCheckUtils]: 7: Hoare triple {52#true} ~cond := #in~cond; {52#true} is VALID [2022-04-28 04:10:34,157 INFO L290 TraceCheckUtils]: 8: Hoare triple {52#true} assume 0 == ~cond;assume false; {53#false} is VALID [2022-04-28 04:10:34,158 INFO L290 TraceCheckUtils]: 9: Hoare triple {53#false} assume true; {53#false} is VALID [2022-04-28 04:10:34,158 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {53#false} {52#true} #75#return; {53#false} is VALID [2022-04-28 04:10:34,158 INFO L290 TraceCheckUtils]: 11: Hoare triple {53#false} call #t~malloc15.base, #t~malloc15.offset := #Ultimate.allocOnHeap(4 * ~n~0); {53#false} is VALID [2022-04-28 04:10:34,158 INFO L272 TraceCheckUtils]: 12: Hoare triple {53#false} call #Ultimate.meminit(#t~malloc15.base, #t~malloc15.offset, ~n~0, 4, 4 * ~n~0); {78#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-04-28 04:10:34,158 INFO L290 TraceCheckUtils]: 13: Hoare triple {78#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {52#true} is VALID [2022-04-28 04:10:34,159 INFO L290 TraceCheckUtils]: 14: Hoare triple {52#true} assume true; {52#true} is VALID [2022-04-28 04:10:34,159 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {52#true} {53#false} #77#return; {53#false} is VALID [2022-04-28 04:10:34,159 INFO L290 TraceCheckUtils]: 16: Hoare triple {53#false} ~a~0.base, ~a~0.offset := #t~malloc15.base, #t~malloc15.offset;assume -2147483648 <= #t~nondet16 && #t~nondet16 <= 2147483647;~x~0 := #t~nondet16;havoc #t~nondet16;assume -2147483648 <= #t~nondet17 && #t~nondet17 <= 2147483647;~y~0 := #t~nondet17;havoc #t~nondet17; {53#false} is VALID [2022-04-28 04:10:34,159 INFO L272 TraceCheckUtils]: 17: Hoare triple {53#false} call assume_abort_if_not((if ~x~0 >= 0 && ~y~0 >= 0 then 1 else 0)); {52#true} is VALID [2022-04-28 04:10:34,159 INFO L290 TraceCheckUtils]: 18: Hoare triple {52#true} ~cond := #in~cond; {52#true} is VALID [2022-04-28 04:10:34,160 INFO L290 TraceCheckUtils]: 19: Hoare triple {52#true} assume 0 == ~cond;assume false; {53#false} is VALID [2022-04-28 04:10:34,161 INFO L290 TraceCheckUtils]: 20: Hoare triple {53#false} assume true; {53#false} is VALID [2022-04-28 04:10:34,161 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {53#false} {53#false} #79#return; {53#false} is VALID [2022-04-28 04:10:34,162 INFO L272 TraceCheckUtils]: 22: Hoare triple {53#false} call #t~ret18 := lcp(~a~0.base, ~a~0.offset, ~n~0, ~x~0, ~y~0); {52#true} is VALID [2022-04-28 04:10:34,162 INFO L290 TraceCheckUtils]: 23: Hoare triple {52#true} ~a.base, ~a.offset := #in~a.base, #in~a.offset;~n := #in~n;~x := #in~x;~y := #in~y;~l~0 := 0; {52#true} is VALID [2022-04-28 04:10:34,162 INFO L290 TraceCheckUtils]: 24: Hoare triple {52#true} assume !true; {53#false} is VALID [2022-04-28 04:10:34,162 INFO L290 TraceCheckUtils]: 25: Hoare triple {53#false} #res := ~l~0; {53#false} is VALID [2022-04-28 04:10:34,163 INFO L290 TraceCheckUtils]: 26: Hoare triple {53#false} assume true; {53#false} is VALID [2022-04-28 04:10:34,163 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {53#false} {53#false} #81#return; {53#false} is VALID [2022-04-28 04:10:34,163 INFO L290 TraceCheckUtils]: 28: Hoare triple {53#false} assume -2147483648 <= #t~ret18 && #t~ret18 <= 2147483647;~l~1 := #t~ret18;havoc #t~ret18; {53#false} is VALID [2022-04-28 04:10:34,163 INFO L272 TraceCheckUtils]: 29: Hoare triple {53#false} call check(~a~0.base, ~a~0.offset, ~n~0, ~x~0, ~y~0, ~l~1); {53#false} is VALID [2022-04-28 04:10:34,163 INFO L290 TraceCheckUtils]: 30: Hoare triple {53#false} ~a.base, ~a.offset := #in~a.base, #in~a.offset;~n := #in~n;~x := #in~x;~y := #in~y;~l := #in~l;assume -2147483648 <= #t~nondet9 && #t~nondet9 <= 2147483647;~i~0 := #t~nondet9;havoc #t~nondet9; {53#false} is VALID [2022-04-28 04:10:34,163 INFO L272 TraceCheckUtils]: 31: Hoare triple {53#false} call assume_abort_if_not((if 0 <= ~i~0 && ~i~0 < ~l then 1 else 0)); {52#true} is VALID [2022-04-28 04:10:34,164 INFO L290 TraceCheckUtils]: 32: Hoare triple {52#true} ~cond := #in~cond; {52#true} is VALID [2022-04-28 04:10:34,164 INFO L290 TraceCheckUtils]: 33: Hoare triple {52#true} assume 0 == ~cond;assume false; {53#false} is VALID [2022-04-28 04:10:34,164 INFO L290 TraceCheckUtils]: 34: Hoare triple {53#false} assume true; {53#false} is VALID [2022-04-28 04:10:34,164 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {53#false} {53#false} #85#return; {53#false} is VALID [2022-04-28 04:10:34,165 INFO L290 TraceCheckUtils]: 36: Hoare triple {53#false} call #t~mem10 := read~int(~a.base, ~a.offset + 4 * (~x + ~i~0), 4);call #t~mem11 := read~int(~a.base, ~a.offset + 4 * (~y + ~i~0), 4); {53#false} is VALID [2022-04-28 04:10:34,165 INFO L272 TraceCheckUtils]: 37: Hoare triple {53#false} call __VERIFIER_assert((if #t~mem10 == #t~mem11 then 1 else 0)); {53#false} is VALID [2022-04-28 04:10:34,165 INFO L290 TraceCheckUtils]: 38: Hoare triple {53#false} ~cond := #in~cond; {53#false} is VALID [2022-04-28 04:10:34,165 INFO L290 TraceCheckUtils]: 39: Hoare triple {53#false} assume 0 == ~cond; {53#false} is VALID [2022-04-28 04:10:34,165 INFO L290 TraceCheckUtils]: 40: Hoare triple {53#false} assume !false; {53#false} is VALID [2022-04-28 04:10:34,166 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-28 04:10:34,166 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:10:34,166 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1449053394] [2022-04-28 04:10:34,167 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1449053394] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:10:34,167 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:10:34,167 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 04:10:34,169 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:10:34,169 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1318066553] [2022-04-28 04:10:34,169 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1318066553] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:10:34,169 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:10:34,169 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-28 04:10:34,169 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [642936769] [2022-04-28 04:10:34,170 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:10:34,174 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 5.0) internal successors, (20), 2 states have internal predecessors, (20), 2 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 41 [2022-04-28 04:10:34,175 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:10:34,178 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 5.0) internal successors, (20), 2 states have internal predecessors, (20), 2 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-28 04:10:34,235 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:10:34,236 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-28 04:10:34,236 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:10:34,254 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-28 04:10:34,254 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-28 04:10:34,258 INFO L87 Difference]: Start difference. First operand has 49 states, 30 states have (on average 1.2333333333333334) internal successors, (37), 31 states have internal predecessors, (37), 10 states have call successors, (10), 7 states have call predecessors, (10), 7 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand has 4 states, 4 states have (on average 5.0) internal successors, (20), 2 states have internal predecessors, (20), 2 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-28 04:10:34,501 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:10:34,501 INFO L93 Difference]: Finished difference Result 91 states and 113 transitions. [2022-04-28 04:10:34,501 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-28 04:10:34,502 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 5.0) internal successors, (20), 2 states have internal predecessors, (20), 2 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) Word has length 41 [2022-04-28 04:10:34,502 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:10:34,503 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 5.0) internal successors, (20), 2 states have internal predecessors, (20), 2 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-28 04:10:34,512 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 113 transitions. [2022-04-28 04:10:34,513 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 5.0) internal successors, (20), 2 states have internal predecessors, (20), 2 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-28 04:10:34,516 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 113 transitions. [2022-04-28 04:10:34,517 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 113 transitions. [2022-04-28 04:10:34,617 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:10:34,626 INFO L225 Difference]: With dead ends: 91 [2022-04-28 04:10:34,626 INFO L226 Difference]: Without dead ends: 41 [2022-04-28 04:10:34,628 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 20 GetRequests, 17 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-04-28 04:10:34,632 INFO L413 NwaCegarLoop]: 41 mSDtfsCounter, 56 mSDsluCounter, 2 mSDsCounter, 0 mSdLazyCounter, 29 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 59 SdHoareTripleChecker+Valid, 43 SdHoareTripleChecker+Invalid, 59 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 29 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-28 04:10:34,635 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [59 Valid, 43 Invalid, 59 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 29 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-28 04:10:34,645 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 41 states. [2022-04-28 04:10:34,658 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 41 to 41. [2022-04-28 04:10:34,658 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:10:34,659 INFO L82 GeneralOperation]: Start isEquivalent. First operand 41 states. Second operand has 41 states, 25 states have (on average 1.12) internal successors, (28), 26 states have internal predecessors, (28), 10 states have call successors, (10), 7 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 04:10:34,660 INFO L74 IsIncluded]: Start isIncluded. First operand 41 states. Second operand has 41 states, 25 states have (on average 1.12) internal successors, (28), 26 states have internal predecessors, (28), 10 states have call successors, (10), 7 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 04:10:34,661 INFO L87 Difference]: Start difference. First operand 41 states. Second operand has 41 states, 25 states have (on average 1.12) internal successors, (28), 26 states have internal predecessors, (28), 10 states have call successors, (10), 7 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 04:10:34,666 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:10:34,666 INFO L93 Difference]: Finished difference Result 41 states and 45 transitions. [2022-04-28 04:10:34,666 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 45 transitions. [2022-04-28 04:10:34,667 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:10:34,667 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:10:34,667 INFO L74 IsIncluded]: Start isIncluded. First operand has 41 states, 25 states have (on average 1.12) internal successors, (28), 26 states have internal predecessors, (28), 10 states have call successors, (10), 7 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 41 states. [2022-04-28 04:10:34,668 INFO L87 Difference]: Start difference. First operand has 41 states, 25 states have (on average 1.12) internal successors, (28), 26 states have internal predecessors, (28), 10 states have call successors, (10), 7 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 41 states. [2022-04-28 04:10:34,676 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:10:34,676 INFO L93 Difference]: Finished difference Result 41 states and 45 transitions. [2022-04-28 04:10:34,677 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 45 transitions. [2022-04-28 04:10:34,677 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:10:34,677 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:10:34,677 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:10:34,678 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:10:34,678 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 25 states have (on average 1.12) internal successors, (28), 26 states have internal predecessors, (28), 10 states have call successors, (10), 7 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 04:10:34,681 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 45 transitions. [2022-04-28 04:10:34,683 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 45 transitions. Word has length 41 [2022-04-28 04:10:34,683 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:10:34,684 INFO L495 AbstractCegarLoop]: Abstraction has 41 states and 45 transitions. [2022-04-28 04:10:34,685 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 5.0) internal successors, (20), 2 states have internal predecessors, (20), 2 states have call successors, (9), 4 states have call predecessors, (9), 2 states have return successors, (6), 2 states have call predecessors, (6), 2 states have call successors, (6) [2022-04-28 04:10:34,686 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 41 states and 45 transitions. [2022-04-28 04:10:34,728 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:10:34,729 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 45 transitions. [2022-04-28 04:10:34,730 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-28 04:10:34,731 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:10:34,731 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:10:34,731 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-28 04:10:34,731 INFO L420 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:10:34,732 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:10:34,732 INFO L85 PathProgramCache]: Analyzing trace with hash 1025657093, now seen corresponding path program 1 times [2022-04-28 04:10:34,732 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:10:34,733 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [694632427] [2022-04-28 04:10:34,734 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:10:34,734 INFO L85 PathProgramCache]: Analyzing trace with hash 1025657093, now seen corresponding path program 2 times [2022-04-28 04:10:34,734 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:10:34,734 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [685314942] [2022-04-28 04:10:34,734 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:10:34,734 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:10:34,791 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:34,851 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:10:34,854 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:34,868 INFO L290 TraceCheckUtils]: 0: Hoare triple {459#(and (= |#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(6, 2);call write~init~int(108, 2, 0, 1);call write~init~int(99, 2, 1, 1);call write~init~int(112, 2, 2, 1);call write~init~int(46, 2, 3, 1);call write~init~int(99, 2, 4, 1);call write~init~int(0, 2, 5, 1);call #Ultimate.allocInit(12, 3); {430#true} is VALID [2022-04-28 04:10:34,869 INFO L290 TraceCheckUtils]: 1: Hoare triple {430#true} assume true; {430#true} is VALID [2022-04-28 04:10:34,869 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {430#true} {430#true} #91#return; {430#true} is VALID [2022-04-28 04:10:34,869 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:10:34,870 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:34,875 INFO L290 TraceCheckUtils]: 0: Hoare triple {430#true} ~cond := #in~cond; {430#true} is VALID [2022-04-28 04:10:34,875 INFO L290 TraceCheckUtils]: 1: Hoare triple {430#true} assume !(0 == ~cond); {430#true} is VALID [2022-04-28 04:10:34,875 INFO L290 TraceCheckUtils]: 2: Hoare triple {430#true} assume true; {430#true} is VALID [2022-04-28 04:10:34,875 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {430#true} {430#true} #75#return; {430#true} is VALID [2022-04-28 04:10:34,879 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-28 04:10:34,887 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:34,914 INFO L290 TraceCheckUtils]: 0: Hoare triple {460#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {461#(= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|))} is VALID [2022-04-28 04:10:34,914 INFO L290 TraceCheckUtils]: 1: Hoare triple {461#(= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|))} assume true; {461#(= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|))} is VALID [2022-04-28 04:10:34,915 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {461#(= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|))} {430#true} #77#return; {442#(= ((as const (Array Int Int)) 0) (select |#memory_int| |main_#t~malloc15.base|))} is VALID [2022-04-28 04:10:34,916 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-28 04:10:34,919 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:34,926 INFO L290 TraceCheckUtils]: 0: Hoare triple {430#true} ~cond := #in~cond; {430#true} is VALID [2022-04-28 04:10:34,927 INFO L290 TraceCheckUtils]: 1: Hoare triple {430#true} assume !(0 == ~cond); {430#true} is VALID [2022-04-28 04:10:34,927 INFO L290 TraceCheckUtils]: 2: Hoare triple {430#true} assume true; {430#true} is VALID [2022-04-28 04:10:34,928 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {430#true} {443#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} #79#return; {443#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} is VALID [2022-04-28 04:10:34,928 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-28 04:10:34,939 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:34,982 INFO L290 TraceCheckUtils]: 0: Hoare triple {430#true} ~a.base, ~a.offset := #in~a.base, #in~a.offset;~n := #in~n;~x := #in~x;~y := #in~y;~l~0 := 0; {462#(= |lcp_#in~a.base| lcp_~a.base)} is VALID [2022-04-28 04:10:34,983 INFO L290 TraceCheckUtils]: 1: Hoare triple {462#(= |lcp_#in~a.base| lcp_~a.base)} #t~short7 := ~x + ~l~0 < ~n && ~y + ~l~0 < ~n; {462#(= |lcp_#in~a.base| lcp_~a.base)} is VALID [2022-04-28 04:10:34,984 INFO L290 TraceCheckUtils]: 2: Hoare triple {462#(= |lcp_#in~a.base| lcp_~a.base)} assume #t~short7;call #t~mem5 := read~int(~a.base, ~a.offset + 4 * (~x + ~l~0), 4);call #t~mem6 := read~int(~a.base, ~a.offset + 4 * (~y + ~l~0), 4);#t~short7 := #t~mem5 == #t~mem6; {463#(or |lcp_#t~short7| (not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|))))} is VALID [2022-04-28 04:10:34,984 INFO L290 TraceCheckUtils]: 3: Hoare triple {463#(or |lcp_#t~short7| (not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|))))} assume !#t~short7;havoc #t~mem5;havoc #t~mem6;havoc #t~short7; {464#(not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|)))} is VALID [2022-04-28 04:10:34,985 INFO L290 TraceCheckUtils]: 4: Hoare triple {464#(not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|)))} #res := ~l~0; {464#(not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|)))} is VALID [2022-04-28 04:10:34,985 INFO L290 TraceCheckUtils]: 5: Hoare triple {464#(not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|)))} assume true; {464#(not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|)))} is VALID [2022-04-28 04:10:34,986 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {464#(not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|)))} {443#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} #81#return; {431#false} is VALID [2022-04-28 04:10:34,987 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 33 [2022-04-28 04:10:34,988 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:34,994 INFO L290 TraceCheckUtils]: 0: Hoare triple {430#true} ~cond := #in~cond; {430#true} is VALID [2022-04-28 04:10:34,994 INFO L290 TraceCheckUtils]: 1: Hoare triple {430#true} assume !(0 == ~cond); {430#true} is VALID [2022-04-28 04:10:34,996 INFO L290 TraceCheckUtils]: 2: Hoare triple {430#true} assume true; {430#true} is VALID [2022-04-28 04:10:34,996 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {430#true} {431#false} #85#return; {431#false} is VALID [2022-04-28 04:10:34,997 INFO L272 TraceCheckUtils]: 0: Hoare triple {430#true} call ULTIMATE.init(); {459#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:10:34,997 INFO L290 TraceCheckUtils]: 1: Hoare triple {459#(and (= |#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(6, 2);call write~init~int(108, 2, 0, 1);call write~init~int(99, 2, 1, 1);call write~init~int(112, 2, 2, 1);call write~init~int(46, 2, 3, 1);call write~init~int(99, 2, 4, 1);call write~init~int(0, 2, 5, 1);call #Ultimate.allocInit(12, 3); {430#true} is VALID [2022-04-28 04:10:34,998 INFO L290 TraceCheckUtils]: 2: Hoare triple {430#true} assume true; {430#true} is VALID [2022-04-28 04:10:34,998 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {430#true} {430#true} #91#return; {430#true} is VALID [2022-04-28 04:10:35,000 INFO L272 TraceCheckUtils]: 4: Hoare triple {430#true} call #t~ret19 := main(); {430#true} is VALID [2022-04-28 04:10:35,001 INFO L290 TraceCheckUtils]: 5: Hoare triple {430#true} assume -2147483648 <= #t~nondet14 && #t~nondet14 <= 2147483647;~n~0 := #t~nondet14;havoc #t~nondet14; {430#true} is VALID [2022-04-28 04:10:35,005 INFO L272 TraceCheckUtils]: 6: Hoare triple {430#true} call assume_abort_if_not((if ~n~0 >= 0 && ~n~0 < 1073741824 then 1 else 0)); {430#true} is VALID [2022-04-28 04:10:35,005 INFO L290 TraceCheckUtils]: 7: Hoare triple {430#true} ~cond := #in~cond; {430#true} is VALID [2022-04-28 04:10:35,005 INFO L290 TraceCheckUtils]: 8: Hoare triple {430#true} assume !(0 == ~cond); {430#true} is VALID [2022-04-28 04:10:35,005 INFO L290 TraceCheckUtils]: 9: Hoare triple {430#true} assume true; {430#true} is VALID [2022-04-28 04:10:35,006 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {430#true} {430#true} #75#return; {430#true} is VALID [2022-04-28 04:10:35,008 INFO L290 TraceCheckUtils]: 11: Hoare triple {430#true} call #t~malloc15.base, #t~malloc15.offset := #Ultimate.allocOnHeap(4 * ~n~0); {430#true} is VALID [2022-04-28 04:10:35,009 INFO L272 TraceCheckUtils]: 12: Hoare triple {430#true} call #Ultimate.meminit(#t~malloc15.base, #t~malloc15.offset, ~n~0, 4, 4 * ~n~0); {460#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-04-28 04:10:35,009 INFO L290 TraceCheckUtils]: 13: Hoare triple {460#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {461#(= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|))} is VALID [2022-04-28 04:10:35,010 INFO L290 TraceCheckUtils]: 14: Hoare triple {461#(= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|))} assume true; {461#(= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|))} is VALID [2022-04-28 04:10:35,011 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {461#(= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|))} {430#true} #77#return; {442#(= ((as const (Array Int Int)) 0) (select |#memory_int| |main_#t~malloc15.base|))} is VALID [2022-04-28 04:10:35,011 INFO L290 TraceCheckUtils]: 16: Hoare triple {442#(= ((as const (Array Int Int)) 0) (select |#memory_int| |main_#t~malloc15.base|))} ~a~0.base, ~a~0.offset := #t~malloc15.base, #t~malloc15.offset;assume -2147483648 <= #t~nondet16 && #t~nondet16 <= 2147483647;~x~0 := #t~nondet16;havoc #t~nondet16;assume -2147483648 <= #t~nondet17 && #t~nondet17 <= 2147483647;~y~0 := #t~nondet17;havoc #t~nondet17; {443#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} is VALID [2022-04-28 04:10:35,011 INFO L272 TraceCheckUtils]: 17: Hoare triple {443#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} call assume_abort_if_not((if ~x~0 >= 0 && ~y~0 >= 0 then 1 else 0)); {430#true} is VALID [2022-04-28 04:10:35,012 INFO L290 TraceCheckUtils]: 18: Hoare triple {430#true} ~cond := #in~cond; {430#true} is VALID [2022-04-28 04:10:35,012 INFO L290 TraceCheckUtils]: 19: Hoare triple {430#true} assume !(0 == ~cond); {430#true} is VALID [2022-04-28 04:10:35,012 INFO L290 TraceCheckUtils]: 20: Hoare triple {430#true} assume true; {430#true} is VALID [2022-04-28 04:10:35,013 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {430#true} {443#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} #79#return; {443#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} is VALID [2022-04-28 04:10:35,013 INFO L272 TraceCheckUtils]: 22: Hoare triple {443#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} call #t~ret18 := lcp(~a~0.base, ~a~0.offset, ~n~0, ~x~0, ~y~0); {430#true} is VALID [2022-04-28 04:10:35,014 INFO L290 TraceCheckUtils]: 23: Hoare triple {430#true} ~a.base, ~a.offset := #in~a.base, #in~a.offset;~n := #in~n;~x := #in~x;~y := #in~y;~l~0 := 0; {462#(= |lcp_#in~a.base| lcp_~a.base)} is VALID [2022-04-28 04:10:35,014 INFO L290 TraceCheckUtils]: 24: Hoare triple {462#(= |lcp_#in~a.base| lcp_~a.base)} #t~short7 := ~x + ~l~0 < ~n && ~y + ~l~0 < ~n; {462#(= |lcp_#in~a.base| lcp_~a.base)} is VALID [2022-04-28 04:10:35,016 INFO L290 TraceCheckUtils]: 25: Hoare triple {462#(= |lcp_#in~a.base| lcp_~a.base)} assume #t~short7;call #t~mem5 := read~int(~a.base, ~a.offset + 4 * (~x + ~l~0), 4);call #t~mem6 := read~int(~a.base, ~a.offset + 4 * (~y + ~l~0), 4);#t~short7 := #t~mem5 == #t~mem6; {463#(or |lcp_#t~short7| (not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|))))} is VALID [2022-04-28 04:10:35,016 INFO L290 TraceCheckUtils]: 26: Hoare triple {463#(or |lcp_#t~short7| (not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|))))} assume !#t~short7;havoc #t~mem5;havoc #t~mem6;havoc #t~short7; {464#(not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|)))} is VALID [2022-04-28 04:10:35,017 INFO L290 TraceCheckUtils]: 27: Hoare triple {464#(not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|)))} #res := ~l~0; {464#(not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|)))} is VALID [2022-04-28 04:10:35,019 INFO L290 TraceCheckUtils]: 28: Hoare triple {464#(not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|)))} assume true; {464#(not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|)))} is VALID [2022-04-28 04:10:35,020 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {464#(not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|)))} {443#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} #81#return; {431#false} is VALID [2022-04-28 04:10:35,029 INFO L290 TraceCheckUtils]: 30: Hoare triple {431#false} assume -2147483648 <= #t~ret18 && #t~ret18 <= 2147483647;~l~1 := #t~ret18;havoc #t~ret18; {431#false} is VALID [2022-04-28 04:10:35,030 INFO L272 TraceCheckUtils]: 31: Hoare triple {431#false} call check(~a~0.base, ~a~0.offset, ~n~0, ~x~0, ~y~0, ~l~1); {431#false} is VALID [2022-04-28 04:10:35,030 INFO L290 TraceCheckUtils]: 32: Hoare triple {431#false} ~a.base, ~a.offset := #in~a.base, #in~a.offset;~n := #in~n;~x := #in~x;~y := #in~y;~l := #in~l;assume -2147483648 <= #t~nondet9 && #t~nondet9 <= 2147483647;~i~0 := #t~nondet9;havoc #t~nondet9; {431#false} is VALID [2022-04-28 04:10:35,030 INFO L272 TraceCheckUtils]: 33: Hoare triple {431#false} call assume_abort_if_not((if 0 <= ~i~0 && ~i~0 < ~l then 1 else 0)); {430#true} is VALID [2022-04-28 04:10:35,030 INFO L290 TraceCheckUtils]: 34: Hoare triple {430#true} ~cond := #in~cond; {430#true} is VALID [2022-04-28 04:10:35,030 INFO L290 TraceCheckUtils]: 35: Hoare triple {430#true} assume !(0 == ~cond); {430#true} is VALID [2022-04-28 04:10:35,030 INFO L290 TraceCheckUtils]: 36: Hoare triple {430#true} assume true; {430#true} is VALID [2022-04-28 04:10:35,031 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {430#true} {431#false} #85#return; {431#false} is VALID [2022-04-28 04:10:35,031 INFO L290 TraceCheckUtils]: 38: Hoare triple {431#false} call #t~mem10 := read~int(~a.base, ~a.offset + 4 * (~x + ~i~0), 4);call #t~mem11 := read~int(~a.base, ~a.offset + 4 * (~y + ~i~0), 4); {431#false} is VALID [2022-04-28 04:10:35,031 INFO L272 TraceCheckUtils]: 39: Hoare triple {431#false} call __VERIFIER_assert((if #t~mem10 == #t~mem11 then 1 else 0)); {431#false} is VALID [2022-04-28 04:10:35,031 INFO L290 TraceCheckUtils]: 40: Hoare triple {431#false} ~cond := #in~cond; {431#false} is VALID [2022-04-28 04:10:35,031 INFO L290 TraceCheckUtils]: 41: Hoare triple {431#false} assume 0 == ~cond; {431#false} is VALID [2022-04-28 04:10:35,031 INFO L290 TraceCheckUtils]: 42: Hoare triple {431#false} assume !false; {431#false} is VALID [2022-04-28 04:10:35,032 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-28 04:10:35,032 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:10:35,032 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [685314942] [2022-04-28 04:10:35,032 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [685314942] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:10:35,032 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:10:35,032 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-28 04:10:35,032 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:10:35,033 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [694632427] [2022-04-28 04:10:35,033 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [694632427] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:10:35,033 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:10:35,033 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-28 04:10:35,033 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1510790351] [2022-04-28 04:10:35,033 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:10:35,034 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.4444444444444446) internal successors, (22), 7 states have internal predecessors, (22), 3 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) Word has length 43 [2022-04-28 04:10:35,034 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:10:35,034 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.4444444444444446) internal successors, (22), 7 states have internal predecessors, (22), 3 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 04:10:35,066 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 04:10:35,066 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-28 04:10:35,066 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:10:35,067 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-28 04:10:35,067 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=18, Invalid=72, Unknown=0, NotChecked=0, Total=90 [2022-04-28 04:10:35,067 INFO L87 Difference]: Start difference. First operand 41 states and 45 transitions. Second operand has 10 states, 9 states have (on average 2.4444444444444446) internal successors, (22), 7 states have internal predecessors, (22), 3 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 04:10:35,651 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:10:35,651 INFO L93 Difference]: Finished difference Result 64 states and 69 transitions. [2022-04-28 04:10:35,651 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-28 04:10:35,653 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.4444444444444446) internal successors, (22), 7 states have internal predecessors, (22), 3 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) Word has length 43 [2022-04-28 04:10:35,654 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:10:35,654 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.4444444444444446) internal successors, (22), 7 states have internal predecessors, (22), 3 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 04:10:35,658 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 69 transitions. [2022-04-28 04:10:35,658 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.4444444444444446) internal successors, (22), 7 states have internal predecessors, (22), 3 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 04:10:35,662 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 69 transitions. [2022-04-28 04:10:35,662 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 69 transitions. [2022-04-28 04:10:35,722 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 04:10:35,723 INFO L225 Difference]: With dead ends: 64 [2022-04-28 04:10:35,724 INFO L226 Difference]: Without dead ends: 42 [2022-04-28 04:10:35,724 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 26 GetRequests, 11 SyntacticMatches, 0 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 19 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=60, Invalid=212, Unknown=0, NotChecked=0, Total=272 [2022-04-28 04:10:35,725 INFO L413 NwaCegarLoop]: 31 mSDtfsCounter, 65 mSDsluCounter, 10 mSDsCounter, 0 mSdLazyCounter, 221 mSolverCounterSat, 39 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 65 SdHoareTripleChecker+Valid, 41 SdHoareTripleChecker+Invalid, 260 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 39 IncrementalHoareTripleChecker+Valid, 221 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-28 04:10:35,725 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [65 Valid, 41 Invalid, 260 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [39 Valid, 221 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-28 04:10:35,726 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 42 states. [2022-04-28 04:10:35,730 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 42 to 42. [2022-04-28 04:10:35,731 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:10:35,731 INFO L82 GeneralOperation]: Start isEquivalent. First operand 42 states. Second operand has 42 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 27 states have internal predecessors, (29), 10 states have call successors, (10), 7 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 04:10:35,731 INFO L74 IsIncluded]: Start isIncluded. First operand 42 states. Second operand has 42 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 27 states have internal predecessors, (29), 10 states have call successors, (10), 7 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 04:10:35,731 INFO L87 Difference]: Start difference. First operand 42 states. Second operand has 42 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 27 states have internal predecessors, (29), 10 states have call successors, (10), 7 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 04:10:35,733 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:10:35,733 INFO L93 Difference]: Finished difference Result 42 states and 46 transitions. [2022-04-28 04:10:35,733 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 46 transitions. [2022-04-28 04:10:35,733 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:10:35,733 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:10:35,734 INFO L74 IsIncluded]: Start isIncluded. First operand has 42 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 27 states have internal predecessors, (29), 10 states have call successors, (10), 7 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 42 states. [2022-04-28 04:10:35,734 INFO L87 Difference]: Start difference. First operand has 42 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 27 states have internal predecessors, (29), 10 states have call successors, (10), 7 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 42 states. [2022-04-28 04:10:35,735 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:10:35,735 INFO L93 Difference]: Finished difference Result 42 states and 46 transitions. [2022-04-28 04:10:35,735 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 46 transitions. [2022-04-28 04:10:35,736 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:10:35,736 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:10:35,736 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:10:35,736 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:10:35,736 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 42 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 27 states have internal predecessors, (29), 10 states have call successors, (10), 7 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 04:10:35,737 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 42 states to 42 states and 46 transitions. [2022-04-28 04:10:35,737 INFO L78 Accepts]: Start accepts. Automaton has 42 states and 46 transitions. Word has length 43 [2022-04-28 04:10:35,737 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:10:35,738 INFO L495 AbstractCegarLoop]: Abstraction has 42 states and 46 transitions. [2022-04-28 04:10:35,738 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.4444444444444446) internal successors, (22), 7 states have internal predecessors, (22), 3 states have call successors, (9), 4 states have call predecessors, (9), 3 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 04:10:35,738 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 42 states and 46 transitions. [2022-04-28 04:10:35,774 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:10:35,774 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 46 transitions. [2022-04-28 04:10:35,775 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-28 04:10:35,775 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:10:35,775 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:10:35,775 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-04-28 04:10:35,775 INFO L420 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:10:35,775 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:10:35,775 INFO L85 PathProgramCache]: Analyzing trace with hash -968487613, now seen corresponding path program 1 times [2022-04-28 04:10:35,775 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:10:35,775 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1008623779] [2022-04-28 04:10:35,776 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:10:35,776 INFO L85 PathProgramCache]: Analyzing trace with hash -968487613, now seen corresponding path program 2 times [2022-04-28 04:10:35,776 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:10:35,776 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2041986228] [2022-04-28 04:10:35,776 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:10:35,776 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:10:35,795 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:35,862 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:10:35,863 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:35,870 INFO L290 TraceCheckUtils]: 0: Hoare triple {812#(and (= |#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(6, 2);call write~init~int(108, 2, 0, 1);call write~init~int(99, 2, 1, 1);call write~init~int(112, 2, 2, 1);call write~init~int(46, 2, 3, 1);call write~init~int(99, 2, 4, 1);call write~init~int(0, 2, 5, 1);call #Ultimate.allocInit(12, 3); {778#true} is VALID [2022-04-28 04:10:35,870 INFO L290 TraceCheckUtils]: 1: Hoare triple {778#true} assume true; {778#true} is VALID [2022-04-28 04:10:35,870 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {778#true} {778#true} #91#return; {778#true} is VALID [2022-04-28 04:10:35,870 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:10:35,871 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:35,872 INFO L290 TraceCheckUtils]: 0: Hoare triple {778#true} ~cond := #in~cond; {778#true} is VALID [2022-04-28 04:10:35,873 INFO L290 TraceCheckUtils]: 1: Hoare triple {778#true} assume !(0 == ~cond); {778#true} is VALID [2022-04-28 04:10:35,873 INFO L290 TraceCheckUtils]: 2: Hoare triple {778#true} assume true; {778#true} is VALID [2022-04-28 04:10:35,873 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {778#true} {778#true} #75#return; {778#true} is VALID [2022-04-28 04:10:35,879 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-28 04:10:35,880 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:35,891 INFO L290 TraceCheckUtils]: 0: Hoare triple {813#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {814#(= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|))} is VALID [2022-04-28 04:10:35,891 INFO L290 TraceCheckUtils]: 1: Hoare triple {814#(= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|))} assume true; {814#(= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|))} is VALID [2022-04-28 04:10:35,892 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {814#(= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|))} {778#true} #77#return; {790#(= ((as const (Array Int Int)) 0) (select |#memory_int| |main_#t~malloc15.base|))} is VALID [2022-04-28 04:10:35,892 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-28 04:10:35,893 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:35,895 INFO L290 TraceCheckUtils]: 0: Hoare triple {778#true} ~cond := #in~cond; {778#true} is VALID [2022-04-28 04:10:35,895 INFO L290 TraceCheckUtils]: 1: Hoare triple {778#true} assume !(0 == ~cond); {778#true} is VALID [2022-04-28 04:10:35,895 INFO L290 TraceCheckUtils]: 2: Hoare triple {778#true} assume true; {778#true} is VALID [2022-04-28 04:10:35,896 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {778#true} {791#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} #79#return; {791#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} is VALID [2022-04-28 04:10:35,896 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-28 04:10:35,898 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:35,901 INFO L290 TraceCheckUtils]: 0: Hoare triple {778#true} ~a.base, ~a.offset := #in~a.base, #in~a.offset;~n := #in~n;~x := #in~x;~y := #in~y;~l~0 := 0; {778#true} is VALID [2022-04-28 04:10:35,901 INFO L290 TraceCheckUtils]: 1: Hoare triple {778#true} #t~short7 := ~x + ~l~0 < ~n && ~y + ~l~0 < ~n; {778#true} is VALID [2022-04-28 04:10:35,901 INFO L290 TraceCheckUtils]: 2: Hoare triple {778#true} assume !#t~short7; {778#true} is VALID [2022-04-28 04:10:35,901 INFO L290 TraceCheckUtils]: 3: Hoare triple {778#true} assume !#t~short7;havoc #t~mem5;havoc #t~mem6;havoc #t~short7; {778#true} is VALID [2022-04-28 04:10:35,901 INFO L290 TraceCheckUtils]: 4: Hoare triple {778#true} #res := ~l~0; {778#true} is VALID [2022-04-28 04:10:35,901 INFO L290 TraceCheckUtils]: 5: Hoare triple {778#true} assume true; {778#true} is VALID [2022-04-28 04:10:35,902 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {778#true} {791#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} #81#return; {791#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} is VALID [2022-04-28 04:10:35,902 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 33 [2022-04-28 04:10:35,903 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:35,906 INFO L290 TraceCheckUtils]: 0: Hoare triple {778#true} ~cond := #in~cond; {778#true} is VALID [2022-04-28 04:10:35,906 INFO L290 TraceCheckUtils]: 1: Hoare triple {778#true} assume !(0 == ~cond); {778#true} is VALID [2022-04-28 04:10:35,906 INFO L290 TraceCheckUtils]: 2: Hoare triple {778#true} assume true; {778#true} is VALID [2022-04-28 04:10:35,906 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {778#true} {804#(and (= (select (select |#memory_int| check_~a.base) (+ (* check_~i~0 4) (* 4 check_~x) check_~a.offset)) 0) (= (select (select |#memory_int| check_~a.base) (+ (* check_~i~0 4) (* 4 check_~y) check_~a.offset)) 0))} #85#return; {804#(and (= (select (select |#memory_int| check_~a.base) (+ (* check_~i~0 4) (* 4 check_~x) check_~a.offset)) 0) (= (select (select |#memory_int| check_~a.base) (+ (* check_~i~0 4) (* 4 check_~y) check_~a.offset)) 0))} is VALID [2022-04-28 04:10:35,907 INFO L272 TraceCheckUtils]: 0: Hoare triple {778#true} call ULTIMATE.init(); {812#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:10:35,907 INFO L290 TraceCheckUtils]: 1: Hoare triple {812#(and (= |#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(6, 2);call write~init~int(108, 2, 0, 1);call write~init~int(99, 2, 1, 1);call write~init~int(112, 2, 2, 1);call write~init~int(46, 2, 3, 1);call write~init~int(99, 2, 4, 1);call write~init~int(0, 2, 5, 1);call #Ultimate.allocInit(12, 3); {778#true} is VALID [2022-04-28 04:10:35,907 INFO L290 TraceCheckUtils]: 2: Hoare triple {778#true} assume true; {778#true} is VALID [2022-04-28 04:10:35,907 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {778#true} {778#true} #91#return; {778#true} is VALID [2022-04-28 04:10:35,907 INFO L272 TraceCheckUtils]: 4: Hoare triple {778#true} call #t~ret19 := main(); {778#true} is VALID [2022-04-28 04:10:35,907 INFO L290 TraceCheckUtils]: 5: Hoare triple {778#true} assume -2147483648 <= #t~nondet14 && #t~nondet14 <= 2147483647;~n~0 := #t~nondet14;havoc #t~nondet14; {778#true} is VALID [2022-04-28 04:10:35,908 INFO L272 TraceCheckUtils]: 6: Hoare triple {778#true} call assume_abort_if_not((if ~n~0 >= 0 && ~n~0 < 1073741824 then 1 else 0)); {778#true} is VALID [2022-04-28 04:10:35,908 INFO L290 TraceCheckUtils]: 7: Hoare triple {778#true} ~cond := #in~cond; {778#true} is VALID [2022-04-28 04:10:35,908 INFO L290 TraceCheckUtils]: 8: Hoare triple {778#true} assume !(0 == ~cond); {778#true} is VALID [2022-04-28 04:10:35,908 INFO L290 TraceCheckUtils]: 9: Hoare triple {778#true} assume true; {778#true} is VALID [2022-04-28 04:10:35,908 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {778#true} {778#true} #75#return; {778#true} is VALID [2022-04-28 04:10:35,925 INFO L290 TraceCheckUtils]: 11: Hoare triple {778#true} call #t~malloc15.base, #t~malloc15.offset := #Ultimate.allocOnHeap(4 * ~n~0); {778#true} is VALID [2022-04-28 04:10:35,929 INFO L272 TraceCheckUtils]: 12: Hoare triple {778#true} call #Ultimate.meminit(#t~malloc15.base, #t~malloc15.offset, ~n~0, 4, 4 * ~n~0); {813#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-04-28 04:10:35,929 INFO L290 TraceCheckUtils]: 13: Hoare triple {813#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {814#(= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|))} is VALID [2022-04-28 04:10:35,930 INFO L290 TraceCheckUtils]: 14: Hoare triple {814#(= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|))} assume true; {814#(= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|))} is VALID [2022-04-28 04:10:35,931 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {814#(= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|))} {778#true} #77#return; {790#(= ((as const (Array Int Int)) 0) (select |#memory_int| |main_#t~malloc15.base|))} is VALID [2022-04-28 04:10:35,931 INFO L290 TraceCheckUtils]: 16: Hoare triple {790#(= ((as const (Array Int Int)) 0) (select |#memory_int| |main_#t~malloc15.base|))} ~a~0.base, ~a~0.offset := #t~malloc15.base, #t~malloc15.offset;assume -2147483648 <= #t~nondet16 && #t~nondet16 <= 2147483647;~x~0 := #t~nondet16;havoc #t~nondet16;assume -2147483648 <= #t~nondet17 && #t~nondet17 <= 2147483647;~y~0 := #t~nondet17;havoc #t~nondet17; {791#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} is VALID [2022-04-28 04:10:35,931 INFO L272 TraceCheckUtils]: 17: Hoare triple {791#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} call assume_abort_if_not((if ~x~0 >= 0 && ~y~0 >= 0 then 1 else 0)); {778#true} is VALID [2022-04-28 04:10:35,931 INFO L290 TraceCheckUtils]: 18: Hoare triple {778#true} ~cond := #in~cond; {778#true} is VALID [2022-04-28 04:10:35,932 INFO L290 TraceCheckUtils]: 19: Hoare triple {778#true} assume !(0 == ~cond); {778#true} is VALID [2022-04-28 04:10:35,932 INFO L290 TraceCheckUtils]: 20: Hoare triple {778#true} assume true; {778#true} is VALID [2022-04-28 04:10:35,932 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {778#true} {791#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} #79#return; {791#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} is VALID [2022-04-28 04:10:35,932 INFO L272 TraceCheckUtils]: 22: Hoare triple {791#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} call #t~ret18 := lcp(~a~0.base, ~a~0.offset, ~n~0, ~x~0, ~y~0); {778#true} is VALID [2022-04-28 04:10:35,932 INFO L290 TraceCheckUtils]: 23: Hoare triple {778#true} ~a.base, ~a.offset := #in~a.base, #in~a.offset;~n := #in~n;~x := #in~x;~y := #in~y;~l~0 := 0; {778#true} is VALID [2022-04-28 04:10:35,932 INFO L290 TraceCheckUtils]: 24: Hoare triple {778#true} #t~short7 := ~x + ~l~0 < ~n && ~y + ~l~0 < ~n; {778#true} is VALID [2022-04-28 04:10:35,933 INFO L290 TraceCheckUtils]: 25: Hoare triple {778#true} assume !#t~short7; {778#true} is VALID [2022-04-28 04:10:35,933 INFO L290 TraceCheckUtils]: 26: Hoare triple {778#true} assume !#t~short7;havoc #t~mem5;havoc #t~mem6;havoc #t~short7; {778#true} is VALID [2022-04-28 04:10:35,933 INFO L290 TraceCheckUtils]: 27: Hoare triple {778#true} #res := ~l~0; {778#true} is VALID [2022-04-28 04:10:35,933 INFO L290 TraceCheckUtils]: 28: Hoare triple {778#true} assume true; {778#true} is VALID [2022-04-28 04:10:35,934 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {778#true} {791#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} #81#return; {791#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} is VALID [2022-04-28 04:10:35,934 INFO L290 TraceCheckUtils]: 30: Hoare triple {791#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} assume -2147483648 <= #t~ret18 && #t~ret18 <= 2147483647;~l~1 := #t~ret18;havoc #t~ret18; {791#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} is VALID [2022-04-28 04:10:35,935 INFO L272 TraceCheckUtils]: 31: Hoare triple {791#(= (select |#memory_int| main_~a~0.base) ((as const (Array Int Int)) 0))} call check(~a~0.base, ~a~0.offset, ~n~0, ~x~0, ~y~0, ~l~1); {803#(= ((as const (Array Int Int)) 0) (select |#memory_int| |check_#in~a.base|))} is VALID [2022-04-28 04:10:35,935 INFO L290 TraceCheckUtils]: 32: Hoare triple {803#(= ((as const (Array Int Int)) 0) (select |#memory_int| |check_#in~a.base|))} ~a.base, ~a.offset := #in~a.base, #in~a.offset;~n := #in~n;~x := #in~x;~y := #in~y;~l := #in~l;assume -2147483648 <= #t~nondet9 && #t~nondet9 <= 2147483647;~i~0 := #t~nondet9;havoc #t~nondet9; {804#(and (= (select (select |#memory_int| check_~a.base) (+ (* check_~i~0 4) (* 4 check_~x) check_~a.offset)) 0) (= (select (select |#memory_int| check_~a.base) (+ (* check_~i~0 4) (* 4 check_~y) check_~a.offset)) 0))} is VALID [2022-04-28 04:10:35,936 INFO L272 TraceCheckUtils]: 33: Hoare triple {804#(and (= (select (select |#memory_int| check_~a.base) (+ (* check_~i~0 4) (* 4 check_~x) check_~a.offset)) 0) (= (select (select |#memory_int| check_~a.base) (+ (* check_~i~0 4) (* 4 check_~y) check_~a.offset)) 0))} call assume_abort_if_not((if 0 <= ~i~0 && ~i~0 < ~l then 1 else 0)); {778#true} is VALID [2022-04-28 04:10:35,936 INFO L290 TraceCheckUtils]: 34: Hoare triple {778#true} ~cond := #in~cond; {778#true} is VALID [2022-04-28 04:10:35,936 INFO L290 TraceCheckUtils]: 35: Hoare triple {778#true} assume !(0 == ~cond); {778#true} is VALID [2022-04-28 04:10:35,936 INFO L290 TraceCheckUtils]: 36: Hoare triple {778#true} assume true; {778#true} is VALID [2022-04-28 04:10:35,936 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {778#true} {804#(and (= (select (select |#memory_int| check_~a.base) (+ (* check_~i~0 4) (* 4 check_~x) check_~a.offset)) 0) (= (select (select |#memory_int| check_~a.base) (+ (* check_~i~0 4) (* 4 check_~y) check_~a.offset)) 0))} #85#return; {804#(and (= (select (select |#memory_int| check_~a.base) (+ (* check_~i~0 4) (* 4 check_~x) check_~a.offset)) 0) (= (select (select |#memory_int| check_~a.base) (+ (* check_~i~0 4) (* 4 check_~y) check_~a.offset)) 0))} is VALID [2022-04-28 04:10:35,937 INFO L290 TraceCheckUtils]: 38: Hoare triple {804#(and (= (select (select |#memory_int| check_~a.base) (+ (* check_~i~0 4) (* 4 check_~x) check_~a.offset)) 0) (= (select (select |#memory_int| check_~a.base) (+ (* check_~i~0 4) (* 4 check_~y) check_~a.offset)) 0))} call #t~mem10 := read~int(~a.base, ~a.offset + 4 * (~x + ~i~0), 4);call #t~mem11 := read~int(~a.base, ~a.offset + 4 * (~y + ~i~0), 4); {809#(= |check_#t~mem11| |check_#t~mem10|)} is VALID [2022-04-28 04:10:35,937 INFO L272 TraceCheckUtils]: 39: Hoare triple {809#(= |check_#t~mem11| |check_#t~mem10|)} call __VERIFIER_assert((if #t~mem10 == #t~mem11 then 1 else 0)); {810#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-28 04:10:35,938 INFO L290 TraceCheckUtils]: 40: Hoare triple {810#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {811#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-28 04:10:35,938 INFO L290 TraceCheckUtils]: 41: Hoare triple {811#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {779#false} is VALID [2022-04-28 04:10:35,938 INFO L290 TraceCheckUtils]: 42: Hoare triple {779#false} assume !false; {779#false} is VALID [2022-04-28 04:10:35,938 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-28 04:10:35,938 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:10:35,939 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2041986228] [2022-04-28 04:10:35,939 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2041986228] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:10:35,939 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:10:35,939 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 04:10:35,939 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:10:35,939 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1008623779] [2022-04-28 04:10:35,939 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1008623779] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:10:35,939 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:10:35,939 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 04:10:35,939 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1071022002] [2022-04-28 04:10:35,939 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:10:35,940 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 2.0) internal successors, (22), 7 states have internal predecessors, (22), 4 states have call successors, (9), 5 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) Word has length 43 [2022-04-28 04:10:35,940 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:10:35,940 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 11 states have (on average 2.0) internal successors, (22), 7 states have internal predecessors, (22), 4 states have call successors, (9), 5 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 04:10:35,963 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 04:10:35,963 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 04:10:35,963 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:10:35,963 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 04:10:35,964 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=111, Unknown=0, NotChecked=0, Total=132 [2022-04-28 04:10:35,964 INFO L87 Difference]: Start difference. First operand 42 states and 46 transitions. Second operand has 12 states, 11 states have (on average 2.0) internal successors, (22), 7 states have internal predecessors, (22), 4 states have call successors, (9), 5 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 04:10:36,704 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:10:36,704 INFO L93 Difference]: Finished difference Result 48 states and 51 transitions. [2022-04-28 04:10:36,705 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 04:10:36,705 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 2.0) internal successors, (22), 7 states have internal predecessors, (22), 4 states have call successors, (9), 5 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) Word has length 43 [2022-04-28 04:10:36,705 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:10:36,705 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 2.0) internal successors, (22), 7 states have internal predecessors, (22), 4 states have call successors, (9), 5 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 04:10:36,706 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 50 transitions. [2022-04-28 04:10:36,706 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 2.0) internal successors, (22), 7 states have internal predecessors, (22), 4 states have call successors, (9), 5 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 04:10:36,708 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 50 transitions. [2022-04-28 04:10:36,708 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 50 transitions. [2022-04-28 04:10:36,751 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:10:36,753 INFO L225 Difference]: With dead ends: 48 [2022-04-28 04:10:36,753 INFO L226 Difference]: Without dead ends: 44 [2022-04-28 04:10:36,753 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 32 GetRequests, 12 SyntacticMatches, 0 SemanticMatches, 20 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 34 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=84, Invalid=378, Unknown=0, NotChecked=0, Total=462 [2022-04-28 04:10:36,754 INFO L413 NwaCegarLoop]: 30 mSDtfsCounter, 69 mSDsluCounter, 16 mSDsCounter, 0 mSdLazyCounter, 341 mSolverCounterSat, 36 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 69 SdHoareTripleChecker+Valid, 46 SdHoareTripleChecker+Invalid, 377 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 36 IncrementalHoareTripleChecker+Valid, 341 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 04:10:36,754 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [69 Valid, 46 Invalid, 377 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [36 Valid, 341 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 04:10:36,755 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 44 states. [2022-04-28 04:10:36,759 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 44 to 44. [2022-04-28 04:10:36,759 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:10:36,759 INFO L82 GeneralOperation]: Start isEquivalent. First operand 44 states. Second operand has 44 states, 28 states have (on average 1.0714285714285714) internal successors, (30), 28 states have internal predecessors, (30), 10 states have call successors, (10), 8 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 04:10:36,759 INFO L74 IsIncluded]: Start isIncluded. First operand 44 states. Second operand has 44 states, 28 states have (on average 1.0714285714285714) internal successors, (30), 28 states have internal predecessors, (30), 10 states have call successors, (10), 8 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 04:10:36,760 INFO L87 Difference]: Start difference. First operand 44 states. Second operand has 44 states, 28 states have (on average 1.0714285714285714) internal successors, (30), 28 states have internal predecessors, (30), 10 states have call successors, (10), 8 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 04:10:36,761 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:10:36,761 INFO L93 Difference]: Finished difference Result 44 states and 47 transitions. [2022-04-28 04:10:36,761 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 47 transitions. [2022-04-28 04:10:36,761 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:10:36,762 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:10:36,762 INFO L74 IsIncluded]: Start isIncluded. First operand has 44 states, 28 states have (on average 1.0714285714285714) internal successors, (30), 28 states have internal predecessors, (30), 10 states have call successors, (10), 8 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 44 states. [2022-04-28 04:10:36,762 INFO L87 Difference]: Start difference. First operand has 44 states, 28 states have (on average 1.0714285714285714) internal successors, (30), 28 states have internal predecessors, (30), 10 states have call successors, (10), 8 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 44 states. [2022-04-28 04:10:36,763 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:10:36,763 INFO L93 Difference]: Finished difference Result 44 states and 47 transitions. [2022-04-28 04:10:36,763 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 47 transitions. [2022-04-28 04:10:36,764 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:10:36,764 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:10:36,764 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:10:36,764 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:10:36,764 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 44 states, 28 states have (on average 1.0714285714285714) internal successors, (30), 28 states have internal predecessors, (30), 10 states have call successors, (10), 8 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 04:10:36,765 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 47 transitions. [2022-04-28 04:10:36,765 INFO L78 Accepts]: Start accepts. Automaton has 44 states and 47 transitions. Word has length 43 [2022-04-28 04:10:36,765 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:10:36,765 INFO L495 AbstractCegarLoop]: Abstraction has 44 states and 47 transitions. [2022-04-28 04:10:36,766 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 11 states have (on average 2.0) internal successors, (22), 7 states have internal predecessors, (22), 4 states have call successors, (9), 5 states have call predecessors, (9), 2 states have return successors, (6), 4 states have call predecessors, (6), 3 states have call successors, (6) [2022-04-28 04:10:36,766 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 44 states and 47 transitions. [2022-04-28 04:10:36,813 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:10:36,813 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 47 transitions. [2022-04-28 04:10:36,814 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 51 [2022-04-28 04:10:36,814 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:10:36,814 INFO L195 NwaCegarLoop]: trace histogram [3, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:10:36,814 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-04-28 04:10:36,814 INFO L420 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:10:36,815 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:10:36,815 INFO L85 PathProgramCache]: Analyzing trace with hash -582845443, now seen corresponding path program 1 times [2022-04-28 04:10:36,815 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:10:36,815 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [250281154] [2022-04-28 04:10:36,815 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:10:36,815 INFO L85 PathProgramCache]: Analyzing trace with hash -582845443, now seen corresponding path program 2 times [2022-04-28 04:10:36,815 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:10:36,816 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [843377972] [2022-04-28 04:10:36,816 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:10:36,816 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:10:36,837 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:36,927 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:10:36,928 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:36,931 INFO L290 TraceCheckUtils]: 0: Hoare triple {1145#(and (= |#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(6, 2);call write~init~int(108, 2, 0, 1);call write~init~int(99, 2, 1, 1);call write~init~int(112, 2, 2, 1);call write~init~int(46, 2, 3, 1);call write~init~int(99, 2, 4, 1);call write~init~int(0, 2, 5, 1);call #Ultimate.allocInit(12, 3); {1110#true} is VALID [2022-04-28 04:10:36,931 INFO L290 TraceCheckUtils]: 1: Hoare triple {1110#true} assume true; {1110#true} is VALID [2022-04-28 04:10:36,931 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {1110#true} {1110#true} #91#return; {1110#true} is VALID [2022-04-28 04:10:36,932 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:10:36,932 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:36,934 INFO L290 TraceCheckUtils]: 0: Hoare triple {1110#true} ~cond := #in~cond; {1110#true} is VALID [2022-04-28 04:10:36,934 INFO L290 TraceCheckUtils]: 1: Hoare triple {1110#true} assume !(0 == ~cond); {1110#true} is VALID [2022-04-28 04:10:36,934 INFO L290 TraceCheckUtils]: 2: Hoare triple {1110#true} assume true; {1110#true} is VALID [2022-04-28 04:10:36,934 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1110#true} {1110#true} #75#return; {1110#true} is VALID [2022-04-28 04:10:36,939 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-28 04:10:36,940 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:36,942 INFO L290 TraceCheckUtils]: 0: Hoare triple {1146#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {1110#true} is VALID [2022-04-28 04:10:36,942 INFO L290 TraceCheckUtils]: 1: Hoare triple {1110#true} assume true; {1110#true} is VALID [2022-04-28 04:10:36,943 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {1110#true} {1110#true} #77#return; {1110#true} is VALID [2022-04-28 04:10:36,943 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-28 04:10:36,943 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:36,945 INFO L290 TraceCheckUtils]: 0: Hoare triple {1110#true} ~cond := #in~cond; {1110#true} is VALID [2022-04-28 04:10:36,945 INFO L290 TraceCheckUtils]: 1: Hoare triple {1110#true} assume !(0 == ~cond); {1110#true} is VALID [2022-04-28 04:10:36,945 INFO L290 TraceCheckUtils]: 2: Hoare triple {1110#true} assume true; {1110#true} is VALID [2022-04-28 04:10:36,945 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1110#true} {1110#true} #79#return; {1110#true} is VALID [2022-04-28 04:10:36,945 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-28 04:10:36,949 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:37,066 INFO L290 TraceCheckUtils]: 0: Hoare triple {1110#true} ~a.base, ~a.offset := #in~a.base, #in~a.offset;~n := #in~n;~x := #in~x;~y := #in~y;~l~0 := 0; {1147#(and (<= lcp_~l~0 0) (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n) (<= 0 lcp_~l~0))} is VALID [2022-04-28 04:10:37,066 INFO L290 TraceCheckUtils]: 1: Hoare triple {1147#(and (<= lcp_~l~0 0) (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n) (<= 0 lcp_~l~0))} #t~short7 := ~x + ~l~0 < ~n && ~y + ~l~0 < ~n; {1148#(and (<= lcp_~l~0 0) (<= 0 lcp_~l~0) (or |lcp_#t~short7| (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)))} is VALID [2022-04-28 04:10:37,067 INFO L290 TraceCheckUtils]: 2: Hoare triple {1148#(and (<= lcp_~l~0 0) (<= 0 lcp_~l~0) (or |lcp_#t~short7| (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)))} assume !#t~short7; {1149#(and (or (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)) (<= lcp_~l~0 0) (<= 0 lcp_~l~0))} is VALID [2022-04-28 04:10:37,067 INFO L290 TraceCheckUtils]: 3: Hoare triple {1149#(and (or (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)) (<= lcp_~l~0 0) (<= 0 lcp_~l~0))} assume !#t~short7;havoc #t~mem5;havoc #t~mem6;havoc #t~short7; {1149#(and (or (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)) (<= lcp_~l~0 0) (<= 0 lcp_~l~0))} is VALID [2022-04-28 04:10:37,068 INFO L290 TraceCheckUtils]: 4: Hoare triple {1149#(and (or (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)) (<= lcp_~l~0 0) (<= 0 lcp_~l~0))} #res := ~l~0; {1150#(and (or (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)) (<= |lcp_#res| 0) (<= 0 |lcp_#res|))} is VALID [2022-04-28 04:10:37,068 INFO L290 TraceCheckUtils]: 5: Hoare triple {1150#(and (or (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)) (<= |lcp_#res| 0) (<= 0 |lcp_#res|))} assume true; {1150#(and (or (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)) (<= |lcp_#res| 0) (<= 0 |lcp_#res|))} is VALID [2022-04-28 04:10:37,070 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {1150#(and (or (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)) (<= |lcp_#res| 0) (<= 0 |lcp_#res|))} {1110#true} #81#return; {1133#(and (= |main_#t~ret18| 0) (or (<= main_~n~0 main_~x~0) (<= main_~n~0 main_~y~0)))} is VALID [2022-04-28 04:10:37,070 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 33 [2022-04-28 04:10:37,072 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:37,074 INFO L290 TraceCheckUtils]: 0: Hoare triple {1110#true} ~cond := #in~cond; {1110#true} is VALID [2022-04-28 04:10:37,074 INFO L290 TraceCheckUtils]: 1: Hoare triple {1110#true} assume !(0 == ~cond); {1110#true} is VALID [2022-04-28 04:10:37,074 INFO L290 TraceCheckUtils]: 2: Hoare triple {1110#true} assume true; {1110#true} is VALID [2022-04-28 04:10:37,075 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1110#true} {1136#(and (= check_~l 0) (or (<= check_~n check_~y) (<= check_~n check_~x)))} #85#return; {1136#(and (= check_~l 0) (or (<= check_~n check_~y) (<= check_~n check_~x)))} is VALID [2022-04-28 04:10:37,075 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 39 [2022-04-28 04:10:37,076 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:37,078 INFO L290 TraceCheckUtils]: 0: Hoare triple {1110#true} ~cond := #in~cond; {1110#true} is VALID [2022-04-28 04:10:37,078 INFO L290 TraceCheckUtils]: 1: Hoare triple {1110#true} assume !(0 == ~cond); {1110#true} is VALID [2022-04-28 04:10:37,078 INFO L290 TraceCheckUtils]: 2: Hoare triple {1110#true} assume true; {1110#true} is VALID [2022-04-28 04:10:37,079 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1110#true} {1136#(and (= check_~l 0) (or (<= check_~n check_~y) (<= check_~n check_~x)))} #87#return; {1136#(and (= check_~l 0) (or (<= check_~n check_~y) (<= check_~n check_~x)))} is VALID [2022-04-28 04:10:37,080 INFO L272 TraceCheckUtils]: 0: Hoare triple {1110#true} call ULTIMATE.init(); {1145#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:10:37,080 INFO L290 TraceCheckUtils]: 1: Hoare triple {1145#(and (= |#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(6, 2);call write~init~int(108, 2, 0, 1);call write~init~int(99, 2, 1, 1);call write~init~int(112, 2, 2, 1);call write~init~int(46, 2, 3, 1);call write~init~int(99, 2, 4, 1);call write~init~int(0, 2, 5, 1);call #Ultimate.allocInit(12, 3); {1110#true} is VALID [2022-04-28 04:10:37,080 INFO L290 TraceCheckUtils]: 2: Hoare triple {1110#true} assume true; {1110#true} is VALID [2022-04-28 04:10:37,080 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1110#true} {1110#true} #91#return; {1110#true} is VALID [2022-04-28 04:10:37,080 INFO L272 TraceCheckUtils]: 4: Hoare triple {1110#true} call #t~ret19 := main(); {1110#true} is VALID [2022-04-28 04:10:37,080 INFO L290 TraceCheckUtils]: 5: Hoare triple {1110#true} assume -2147483648 <= #t~nondet14 && #t~nondet14 <= 2147483647;~n~0 := #t~nondet14;havoc #t~nondet14; {1110#true} is VALID [2022-04-28 04:10:37,080 INFO L272 TraceCheckUtils]: 6: Hoare triple {1110#true} call assume_abort_if_not((if ~n~0 >= 0 && ~n~0 < 1073741824 then 1 else 0)); {1110#true} is VALID [2022-04-28 04:10:37,080 INFO L290 TraceCheckUtils]: 7: Hoare triple {1110#true} ~cond := #in~cond; {1110#true} is VALID [2022-04-28 04:10:37,080 INFO L290 TraceCheckUtils]: 8: Hoare triple {1110#true} assume !(0 == ~cond); {1110#true} is VALID [2022-04-28 04:10:37,081 INFO L290 TraceCheckUtils]: 9: Hoare triple {1110#true} assume true; {1110#true} is VALID [2022-04-28 04:10:37,081 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1110#true} {1110#true} #75#return; {1110#true} is VALID [2022-04-28 04:10:37,081 INFO L290 TraceCheckUtils]: 11: Hoare triple {1110#true} call #t~malloc15.base, #t~malloc15.offset := #Ultimate.allocOnHeap(4 * ~n~0); {1110#true} is VALID [2022-04-28 04:10:37,082 INFO L272 TraceCheckUtils]: 12: Hoare triple {1110#true} call #Ultimate.meminit(#t~malloc15.base, #t~malloc15.offset, ~n~0, 4, 4 * ~n~0); {1146#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-04-28 04:10:37,082 INFO L290 TraceCheckUtils]: 13: Hoare triple {1146#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {1110#true} is VALID [2022-04-28 04:10:37,082 INFO L290 TraceCheckUtils]: 14: Hoare triple {1110#true} assume true; {1110#true} is VALID [2022-04-28 04:10:37,082 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1110#true} {1110#true} #77#return; {1110#true} is VALID [2022-04-28 04:10:37,082 INFO L290 TraceCheckUtils]: 16: Hoare triple {1110#true} ~a~0.base, ~a~0.offset := #t~malloc15.base, #t~malloc15.offset;assume -2147483648 <= #t~nondet16 && #t~nondet16 <= 2147483647;~x~0 := #t~nondet16;havoc #t~nondet16;assume -2147483648 <= #t~nondet17 && #t~nondet17 <= 2147483647;~y~0 := #t~nondet17;havoc #t~nondet17; {1110#true} is VALID [2022-04-28 04:10:37,082 INFO L272 TraceCheckUtils]: 17: Hoare triple {1110#true} call assume_abort_if_not((if ~x~0 >= 0 && ~y~0 >= 0 then 1 else 0)); {1110#true} is VALID [2022-04-28 04:10:37,082 INFO L290 TraceCheckUtils]: 18: Hoare triple {1110#true} ~cond := #in~cond; {1110#true} is VALID [2022-04-28 04:10:37,082 INFO L290 TraceCheckUtils]: 19: Hoare triple {1110#true} assume !(0 == ~cond); {1110#true} is VALID [2022-04-28 04:10:37,082 INFO L290 TraceCheckUtils]: 20: Hoare triple {1110#true} assume true; {1110#true} is VALID [2022-04-28 04:10:37,083 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1110#true} {1110#true} #79#return; {1110#true} is VALID [2022-04-28 04:10:37,083 INFO L272 TraceCheckUtils]: 22: Hoare triple {1110#true} call #t~ret18 := lcp(~a~0.base, ~a~0.offset, ~n~0, ~x~0, ~y~0); {1110#true} is VALID [2022-04-28 04:10:37,083 INFO L290 TraceCheckUtils]: 23: Hoare triple {1110#true} ~a.base, ~a.offset := #in~a.base, #in~a.offset;~n := #in~n;~x := #in~x;~y := #in~y;~l~0 := 0; {1147#(and (<= lcp_~l~0 0) (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n) (<= 0 lcp_~l~0))} is VALID [2022-04-28 04:10:37,084 INFO L290 TraceCheckUtils]: 24: Hoare triple {1147#(and (<= lcp_~l~0 0) (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n) (<= 0 lcp_~l~0))} #t~short7 := ~x + ~l~0 < ~n && ~y + ~l~0 < ~n; {1148#(and (<= lcp_~l~0 0) (<= 0 lcp_~l~0) (or |lcp_#t~short7| (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)))} is VALID [2022-04-28 04:10:37,084 INFO L290 TraceCheckUtils]: 25: Hoare triple {1148#(and (<= lcp_~l~0 0) (<= 0 lcp_~l~0) (or |lcp_#t~short7| (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)))} assume !#t~short7; {1149#(and (or (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)) (<= lcp_~l~0 0) (<= 0 lcp_~l~0))} is VALID [2022-04-28 04:10:37,084 INFO L290 TraceCheckUtils]: 26: Hoare triple {1149#(and (or (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)) (<= lcp_~l~0 0) (<= 0 lcp_~l~0))} assume !#t~short7;havoc #t~mem5;havoc #t~mem6;havoc #t~short7; {1149#(and (or (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)) (<= lcp_~l~0 0) (<= 0 lcp_~l~0))} is VALID [2022-04-28 04:10:37,085 INFO L290 TraceCheckUtils]: 27: Hoare triple {1149#(and (or (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)) (<= lcp_~l~0 0) (<= 0 lcp_~l~0))} #res := ~l~0; {1150#(and (or (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)) (<= |lcp_#res| 0) (<= 0 |lcp_#res|))} is VALID [2022-04-28 04:10:37,085 INFO L290 TraceCheckUtils]: 28: Hoare triple {1150#(and (or (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)) (<= |lcp_#res| 0) (<= 0 |lcp_#res|))} assume true; {1150#(and (or (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)) (<= |lcp_#res| 0) (<= 0 |lcp_#res|))} is VALID [2022-04-28 04:10:37,086 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {1150#(and (or (<= |lcp_#in~n| |lcp_#in~x|) (<= |lcp_#in~n| |lcp_#in~y|)) (<= |lcp_#res| 0) (<= 0 |lcp_#res|))} {1110#true} #81#return; {1133#(and (= |main_#t~ret18| 0) (or (<= main_~n~0 main_~x~0) (<= main_~n~0 main_~y~0)))} is VALID [2022-04-28 04:10:37,087 INFO L290 TraceCheckUtils]: 30: Hoare triple {1133#(and (= |main_#t~ret18| 0) (or (<= main_~n~0 main_~x~0) (<= main_~n~0 main_~y~0)))} assume -2147483648 <= #t~ret18 && #t~ret18 <= 2147483647;~l~1 := #t~ret18;havoc #t~ret18; {1134#(and (= main_~l~1 0) (or (<= main_~n~0 main_~x~0) (<= main_~n~0 main_~y~0)))} is VALID [2022-04-28 04:10:37,087 INFO L272 TraceCheckUtils]: 31: Hoare triple {1134#(and (= main_~l~1 0) (or (<= main_~n~0 main_~x~0) (<= main_~n~0 main_~y~0)))} call check(~a~0.base, ~a~0.offset, ~n~0, ~x~0, ~y~0, ~l~1); {1135#(and (= |check_#in~l| 0) (or (<= |check_#in~n| |check_#in~x|) (<= |check_#in~n| |check_#in~y|)))} is VALID [2022-04-28 04:10:37,088 INFO L290 TraceCheckUtils]: 32: Hoare triple {1135#(and (= |check_#in~l| 0) (or (<= |check_#in~n| |check_#in~x|) (<= |check_#in~n| |check_#in~y|)))} ~a.base, ~a.offset := #in~a.base, #in~a.offset;~n := #in~n;~x := #in~x;~y := #in~y;~l := #in~l;assume -2147483648 <= #t~nondet9 && #t~nondet9 <= 2147483647;~i~0 := #t~nondet9;havoc #t~nondet9; {1136#(and (= check_~l 0) (or (<= check_~n check_~y) (<= check_~n check_~x)))} is VALID [2022-04-28 04:10:37,088 INFO L272 TraceCheckUtils]: 33: Hoare triple {1136#(and (= check_~l 0) (or (<= check_~n check_~y) (<= check_~n check_~x)))} call assume_abort_if_not((if 0 <= ~i~0 && ~i~0 < ~l then 1 else 0)); {1110#true} is VALID [2022-04-28 04:10:37,088 INFO L290 TraceCheckUtils]: 34: Hoare triple {1110#true} ~cond := #in~cond; {1110#true} is VALID [2022-04-28 04:10:37,088 INFO L290 TraceCheckUtils]: 35: Hoare triple {1110#true} assume !(0 == ~cond); {1110#true} is VALID [2022-04-28 04:10:37,088 INFO L290 TraceCheckUtils]: 36: Hoare triple {1110#true} assume true; {1110#true} is VALID [2022-04-28 04:10:37,089 INFO L284 TraceCheckUtils]: 37: Hoare quadruple {1110#true} {1136#(and (= check_~l 0) (or (<= check_~n check_~y) (<= check_~n check_~x)))} #85#return; {1136#(and (= check_~l 0) (or (<= check_~n check_~y) (<= check_~n check_~x)))} is VALID [2022-04-28 04:10:37,089 INFO L290 TraceCheckUtils]: 38: Hoare triple {1136#(and (= check_~l 0) (or (<= check_~n check_~y) (<= check_~n check_~x)))} call #t~mem10 := read~int(~a.base, ~a.offset + 4 * (~x + ~i~0), 4);call #t~mem11 := read~int(~a.base, ~a.offset + 4 * (~y + ~i~0), 4); {1136#(and (= check_~l 0) (or (<= check_~n check_~y) (<= check_~n check_~x)))} is VALID [2022-04-28 04:10:37,089 INFO L272 TraceCheckUtils]: 39: Hoare triple {1136#(and (= check_~l 0) (or (<= check_~n check_~y) (<= check_~n check_~x)))} call __VERIFIER_assert((if #t~mem10 == #t~mem11 then 1 else 0)); {1110#true} is VALID [2022-04-28 04:10:37,090 INFO L290 TraceCheckUtils]: 40: Hoare triple {1110#true} ~cond := #in~cond; {1110#true} is VALID [2022-04-28 04:10:37,090 INFO L290 TraceCheckUtils]: 41: Hoare triple {1110#true} assume !(0 == ~cond); {1110#true} is VALID [2022-04-28 04:10:37,090 INFO L290 TraceCheckUtils]: 42: Hoare triple {1110#true} assume true; {1110#true} is VALID [2022-04-28 04:10:37,090 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {1110#true} {1136#(and (= check_~l 0) (or (<= check_~n check_~y) (<= check_~n check_~x)))} #87#return; {1136#(and (= check_~l 0) (or (<= check_~n check_~y) (<= check_~n check_~x)))} is VALID [2022-04-28 04:10:37,091 INFO L290 TraceCheckUtils]: 44: Hoare triple {1136#(and (= check_~l 0) (or (<= check_~n check_~y) (<= check_~n check_~x)))} havoc #t~mem10;havoc #t~mem11; {1136#(and (= check_~l 0) (or (<= check_~n check_~y) (<= check_~n check_~x)))} is VALID [2022-04-28 04:10:37,091 INFO L290 TraceCheckUtils]: 45: Hoare triple {1136#(and (= check_~l 0) (or (<= check_~n check_~y) (<= check_~n check_~x)))} assume ~x + ~l < ~n && ~y + ~l < ~n;call #t~mem12 := read~int(~a.base, ~a.offset + 4 * (~x + ~l), 4);call #t~mem13 := read~int(~a.base, ~a.offset + 4 * (~y + ~l), 4); {1111#false} is VALID [2022-04-28 04:10:37,091 INFO L272 TraceCheckUtils]: 46: Hoare triple {1111#false} call __VERIFIER_assert((if #t~mem12 != #t~mem13 then 1 else 0)); {1111#false} is VALID [2022-04-28 04:10:37,091 INFO L290 TraceCheckUtils]: 47: Hoare triple {1111#false} ~cond := #in~cond; {1111#false} is VALID [2022-04-28 04:10:37,091 INFO L290 TraceCheckUtils]: 48: Hoare triple {1111#false} assume 0 == ~cond; {1111#false} is VALID [2022-04-28 04:10:37,092 INFO L290 TraceCheckUtils]: 49: Hoare triple {1111#false} assume !false; {1111#false} is VALID [2022-04-28 04:10:37,092 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-28 04:10:37,092 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:10:37,092 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [843377972] [2022-04-28 04:10:37,092 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [843377972] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:10:37,092 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:10:37,092 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 04:10:37,092 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:10:37,093 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [250281154] [2022-04-28 04:10:37,093 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [250281154] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:10:37,093 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:10:37,093 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 04:10:37,093 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [623200582] [2022-04-28 04:10:37,093 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:10:37,093 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 8 states have internal predecessors, (27), 4 states have call successors, (10), 5 states have call predecessors, (10), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) Word has length 50 [2022-04-28 04:10:37,093 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:10:37,094 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 8 states have internal predecessors, (27), 4 states have call successors, (10), 5 states have call predecessors, (10), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 04:10:37,121 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:10:37,121 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 04:10:37,121 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:10:37,122 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 04:10:37,122 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=22, Invalid=110, Unknown=0, NotChecked=0, Total=132 [2022-04-28 04:10:37,122 INFO L87 Difference]: Start difference. First operand 44 states and 47 transitions. Second operand has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 8 states have internal predecessors, (27), 4 states have call successors, (10), 5 states have call predecessors, (10), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 04:10:38,134 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:10:38,134 INFO L93 Difference]: Finished difference Result 64 states and 70 transitions. [2022-04-28 04:10:38,134 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 04:10:38,135 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 8 states have internal predecessors, (27), 4 states have call successors, (10), 5 states have call predecessors, (10), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) Word has length 50 [2022-04-28 04:10:38,135 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:10:38,135 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 8 states have internal predecessors, (27), 4 states have call successors, (10), 5 states have call predecessors, (10), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 04:10:38,137 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 68 transitions. [2022-04-28 04:10:38,137 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 8 states have internal predecessors, (27), 4 states have call successors, (10), 5 states have call predecessors, (10), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 04:10:38,138 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 68 transitions. [2022-04-28 04:10:38,138 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 68 transitions. [2022-04-28 04:10:38,196 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:10:38,197 INFO L225 Difference]: With dead ends: 64 [2022-04-28 04:10:38,197 INFO L226 Difference]: Without dead ends: 48 [2022-04-28 04:10:38,197 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 33 GetRequests, 14 SyntacticMatches, 0 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 30 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=84, Invalid=336, Unknown=0, NotChecked=0, Total=420 [2022-04-28 04:10:38,198 INFO L413 NwaCegarLoop]: 30 mSDtfsCounter, 72 mSDsluCounter, 16 mSDsCounter, 0 mSdLazyCounter, 415 mSolverCounterSat, 43 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 75 SdHoareTripleChecker+Valid, 46 SdHoareTripleChecker+Invalid, 458 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 43 IncrementalHoareTripleChecker+Valid, 415 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-28 04:10:38,198 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [75 Valid, 46 Invalid, 458 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [43 Valid, 415 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-28 04:10:38,199 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-04-28 04:10:38,208 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 46. [2022-04-28 04:10:38,208 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:10:38,208 INFO L82 GeneralOperation]: Start isEquivalent. First operand 48 states. Second operand has 46 states, 30 states have (on average 1.1) internal successors, (33), 30 states have internal predecessors, (33), 10 states have call successors, (10), 8 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 04:10:38,208 INFO L74 IsIncluded]: Start isIncluded. First operand 48 states. Second operand has 46 states, 30 states have (on average 1.1) internal successors, (33), 30 states have internal predecessors, (33), 10 states have call successors, (10), 8 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 04:10:38,209 INFO L87 Difference]: Start difference. First operand 48 states. Second operand has 46 states, 30 states have (on average 1.1) internal successors, (33), 30 states have internal predecessors, (33), 10 states have call successors, (10), 8 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 04:10:38,210 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:10:38,210 INFO L93 Difference]: Finished difference Result 48 states and 52 transitions. [2022-04-28 04:10:38,210 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 52 transitions. [2022-04-28 04:10:38,211 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:10:38,211 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:10:38,211 INFO L74 IsIncluded]: Start isIncluded. First operand has 46 states, 30 states have (on average 1.1) internal successors, (33), 30 states have internal predecessors, (33), 10 states have call successors, (10), 8 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 48 states. [2022-04-28 04:10:38,211 INFO L87 Difference]: Start difference. First operand has 46 states, 30 states have (on average 1.1) internal successors, (33), 30 states have internal predecessors, (33), 10 states have call successors, (10), 8 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 48 states. [2022-04-28 04:10:38,212 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:10:38,212 INFO L93 Difference]: Finished difference Result 48 states and 52 transitions. [2022-04-28 04:10:38,212 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 52 transitions. [2022-04-28 04:10:38,213 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:10:38,213 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:10:38,213 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:10:38,213 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:10:38,213 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 46 states, 30 states have (on average 1.1) internal successors, (33), 30 states have internal predecessors, (33), 10 states have call successors, (10), 8 states have call predecessors, (10), 5 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-28 04:10:38,214 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 50 transitions. [2022-04-28 04:10:38,214 INFO L78 Accepts]: Start accepts. Automaton has 46 states and 50 transitions. Word has length 50 [2022-04-28 04:10:38,214 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:10:38,214 INFO L495 AbstractCegarLoop]: Abstraction has 46 states and 50 transitions. [2022-04-28 04:10:38,214 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 11 states have (on average 2.4545454545454546) internal successors, (27), 8 states have internal predecessors, (27), 4 states have call successors, (10), 5 states have call predecessors, (10), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 04:10:38,214 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 46 states and 50 transitions. [2022-04-28 04:10:38,254 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:10:38,254 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 50 transitions. [2022-04-28 04:10:38,256 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 54 [2022-04-28 04:10:38,256 INFO L187 NwaCegarLoop]: Found error trace [2022-04-28 04:10:38,256 INFO L195 NwaCegarLoop]: trace histogram [3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-28 04:10:38,256 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-04-28 04:10:38,256 INFO L420 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-28 04:10:38,257 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-28 04:10:38,257 INFO L85 PathProgramCache]: Analyzing trace with hash 611931899, now seen corresponding path program 1 times [2022-04-28 04:10:38,257 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-28 04:10:38,257 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [880141465] [2022-04-28 04:10:38,257 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-28 04:10:38,257 INFO L85 PathProgramCache]: Analyzing trace with hash 611931899, now seen corresponding path program 2 times [2022-04-28 04:10:38,257 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-28 04:10:38,258 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [545082329] [2022-04-28 04:10:38,258 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-28 04:10:38,258 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-28 04:10:38,285 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:38,360 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-28 04:10:38,362 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:38,366 INFO L290 TraceCheckUtils]: 0: Hoare triple {1526#(and (= |#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(6, 2);call write~init~int(108, 2, 0, 1);call write~init~int(99, 2, 1, 1);call write~init~int(112, 2, 2, 1);call write~init~int(46, 2, 3, 1);call write~init~int(99, 2, 4, 1);call write~init~int(0, 2, 5, 1);call #Ultimate.allocInit(12, 3); {1488#true} is VALID [2022-04-28 04:10:38,366 INFO L290 TraceCheckUtils]: 1: Hoare triple {1488#true} assume true; {1488#true} is VALID [2022-04-28 04:10:38,366 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {1488#true} {1488#true} #91#return; {1488#true} is VALID [2022-04-28 04:10:38,366 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-28 04:10:38,367 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:38,369 INFO L290 TraceCheckUtils]: 0: Hoare triple {1488#true} ~cond := #in~cond; {1488#true} is VALID [2022-04-28 04:10:38,369 INFO L290 TraceCheckUtils]: 1: Hoare triple {1488#true} assume !(0 == ~cond); {1488#true} is VALID [2022-04-28 04:10:38,369 INFO L290 TraceCheckUtils]: 2: Hoare triple {1488#true} assume true; {1488#true} is VALID [2022-04-28 04:10:38,370 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1488#true} {1488#true} #75#return; {1488#true} is VALID [2022-04-28 04:10:38,374 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 12 [2022-04-28 04:10:38,375 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:38,379 INFO L290 TraceCheckUtils]: 0: Hoare triple {1527#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {1488#true} is VALID [2022-04-28 04:10:38,379 INFO L290 TraceCheckUtils]: 1: Hoare triple {1488#true} assume true; {1488#true} is VALID [2022-04-28 04:10:38,379 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {1488#true} {1488#true} #77#return; {1488#true} is VALID [2022-04-28 04:10:38,380 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 17 [2022-04-28 04:10:38,381 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:38,386 INFO L290 TraceCheckUtils]: 0: Hoare triple {1488#true} ~cond := #in~cond; {1488#true} is VALID [2022-04-28 04:10:38,386 INFO L290 TraceCheckUtils]: 1: Hoare triple {1488#true} assume !(0 == ~cond); {1488#true} is VALID [2022-04-28 04:10:38,386 INFO L290 TraceCheckUtils]: 2: Hoare triple {1488#true} assume true; {1488#true} is VALID [2022-04-28 04:10:38,386 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1488#true} {1488#true} #79#return; {1488#true} is VALID [2022-04-28 04:10:38,386 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 22 [2022-04-28 04:10:38,392 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:38,476 INFO L290 TraceCheckUtils]: 0: Hoare triple {1488#true} ~a.base, ~a.offset := #in~a.base, #in~a.offset;~n := #in~n;~x := #in~x;~y := #in~y;~l~0 := 0; {1528#(and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n))} is VALID [2022-04-28 04:10:38,477 INFO L290 TraceCheckUtils]: 1: Hoare triple {1528#(and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n))} #t~short7 := ~x + ~l~0 < ~n && ~y + ~l~0 < ~n; {1528#(and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n))} is VALID [2022-04-28 04:10:38,477 INFO L290 TraceCheckUtils]: 2: Hoare triple {1528#(and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n))} assume #t~short7;call #t~mem5 := read~int(~a.base, ~a.offset + 4 * (~x + ~l~0), 4);call #t~mem6 := read~int(~a.base, ~a.offset + 4 * (~y + ~l~0), 4);#t~short7 := #t~mem5 == #t~mem6; {1528#(and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n))} is VALID [2022-04-28 04:10:38,477 INFO L290 TraceCheckUtils]: 3: Hoare triple {1528#(and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n))} assume !!#t~short7;havoc #t~mem5;havoc #t~mem6;havoc #t~short7;#t~post8 := ~l~0;~l~0 := 1 + #t~post8;havoc #t~post8; {1528#(and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n))} is VALID [2022-04-28 04:10:38,478 INFO L290 TraceCheckUtils]: 4: Hoare triple {1528#(and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n))} #t~short7 := ~x + ~l~0 < ~n && ~y + ~l~0 < ~n; {1529#(or |lcp_#t~short7| (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} is VALID [2022-04-28 04:10:38,478 INFO L290 TraceCheckUtils]: 5: Hoare triple {1529#(or |lcp_#t~short7| (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} assume !#t~short7; {1530#(or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} is VALID [2022-04-28 04:10:38,478 INFO L290 TraceCheckUtils]: 6: Hoare triple {1530#(or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} assume !#t~short7;havoc #t~mem5;havoc #t~mem6;havoc #t~short7; {1530#(or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} is VALID [2022-04-28 04:10:38,479 INFO L290 TraceCheckUtils]: 7: Hoare triple {1530#(or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} #res := ~l~0; {1531#(or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|)))} is VALID [2022-04-28 04:10:38,479 INFO L290 TraceCheckUtils]: 8: Hoare triple {1531#(or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|)))} assume true; {1531#(or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|)))} is VALID [2022-04-28 04:10:38,480 INFO L284 TraceCheckUtils]: 9: Hoare quadruple {1531#(or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|)))} {1488#true} #81#return; {1514#(or (<= main_~n~0 (+ |main_#t~ret18| main_~x~0)) (<= main_~n~0 (+ |main_#t~ret18| main_~y~0)))} is VALID [2022-04-28 04:10:38,480 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 36 [2022-04-28 04:10:38,482 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:38,485 INFO L290 TraceCheckUtils]: 0: Hoare triple {1488#true} ~cond := #in~cond; {1488#true} is VALID [2022-04-28 04:10:38,485 INFO L290 TraceCheckUtils]: 1: Hoare triple {1488#true} assume !(0 == ~cond); {1488#true} is VALID [2022-04-28 04:10:38,485 INFO L290 TraceCheckUtils]: 2: Hoare triple {1488#true} assume true; {1488#true} is VALID [2022-04-28 04:10:38,486 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1488#true} {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} #85#return; {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-28 04:10:38,486 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 42 [2022-04-28 04:10:38,488 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:38,492 INFO L290 TraceCheckUtils]: 0: Hoare triple {1488#true} ~cond := #in~cond; {1488#true} is VALID [2022-04-28 04:10:38,493 INFO L290 TraceCheckUtils]: 1: Hoare triple {1488#true} assume !(0 == ~cond); {1488#true} is VALID [2022-04-28 04:10:38,493 INFO L290 TraceCheckUtils]: 2: Hoare triple {1488#true} assume true; {1488#true} is VALID [2022-04-28 04:10:38,493 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1488#true} {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} #87#return; {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-28 04:10:38,494 INFO L272 TraceCheckUtils]: 0: Hoare triple {1488#true} call ULTIMATE.init(); {1526#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-28 04:10:38,494 INFO L290 TraceCheckUtils]: 1: Hoare triple {1526#(and (= |#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(6, 2);call write~init~int(108, 2, 0, 1);call write~init~int(99, 2, 1, 1);call write~init~int(112, 2, 2, 1);call write~init~int(46, 2, 3, 1);call write~init~int(99, 2, 4, 1);call write~init~int(0, 2, 5, 1);call #Ultimate.allocInit(12, 3); {1488#true} is VALID [2022-04-28 04:10:38,494 INFO L290 TraceCheckUtils]: 2: Hoare triple {1488#true} assume true; {1488#true} is VALID [2022-04-28 04:10:38,494 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1488#true} {1488#true} #91#return; {1488#true} is VALID [2022-04-28 04:10:38,494 INFO L272 TraceCheckUtils]: 4: Hoare triple {1488#true} call #t~ret19 := main(); {1488#true} is VALID [2022-04-28 04:10:38,494 INFO L290 TraceCheckUtils]: 5: Hoare triple {1488#true} assume -2147483648 <= #t~nondet14 && #t~nondet14 <= 2147483647;~n~0 := #t~nondet14;havoc #t~nondet14; {1488#true} is VALID [2022-04-28 04:10:38,494 INFO L272 TraceCheckUtils]: 6: Hoare triple {1488#true} call assume_abort_if_not((if ~n~0 >= 0 && ~n~0 < 1073741824 then 1 else 0)); {1488#true} is VALID [2022-04-28 04:10:38,494 INFO L290 TraceCheckUtils]: 7: Hoare triple {1488#true} ~cond := #in~cond; {1488#true} is VALID [2022-04-28 04:10:38,494 INFO L290 TraceCheckUtils]: 8: Hoare triple {1488#true} assume !(0 == ~cond); {1488#true} is VALID [2022-04-28 04:10:38,495 INFO L290 TraceCheckUtils]: 9: Hoare triple {1488#true} assume true; {1488#true} is VALID [2022-04-28 04:10:38,495 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1488#true} {1488#true} #75#return; {1488#true} is VALID [2022-04-28 04:10:38,495 INFO L290 TraceCheckUtils]: 11: Hoare triple {1488#true} call #t~malloc15.base, #t~malloc15.offset := #Ultimate.allocOnHeap(4 * ~n~0); {1488#true} is VALID [2022-04-28 04:10:38,496 INFO L272 TraceCheckUtils]: 12: Hoare triple {1488#true} call #Ultimate.meminit(#t~malloc15.base, #t~malloc15.offset, ~n~0, 4, 4 * ~n~0); {1527#(= |#memory_int| |old(#memory_int)|)} is VALID [2022-04-28 04:10:38,497 INFO L290 TraceCheckUtils]: 13: Hoare triple {1527#(= |#memory_int| |old(#memory_int)|)} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {1488#true} is VALID [2022-04-28 04:10:38,497 INFO L290 TraceCheckUtils]: 14: Hoare triple {1488#true} assume true; {1488#true} is VALID [2022-04-28 04:10:38,497 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1488#true} {1488#true} #77#return; {1488#true} is VALID [2022-04-28 04:10:38,497 INFO L290 TraceCheckUtils]: 16: Hoare triple {1488#true} ~a~0.base, ~a~0.offset := #t~malloc15.base, #t~malloc15.offset;assume -2147483648 <= #t~nondet16 && #t~nondet16 <= 2147483647;~x~0 := #t~nondet16;havoc #t~nondet16;assume -2147483648 <= #t~nondet17 && #t~nondet17 <= 2147483647;~y~0 := #t~nondet17;havoc #t~nondet17; {1488#true} is VALID [2022-04-28 04:10:38,515 INFO L272 TraceCheckUtils]: 17: Hoare triple {1488#true} call assume_abort_if_not((if ~x~0 >= 0 && ~y~0 >= 0 then 1 else 0)); {1488#true} is VALID [2022-04-28 04:10:38,515 INFO L290 TraceCheckUtils]: 18: Hoare triple {1488#true} ~cond := #in~cond; {1488#true} is VALID [2022-04-28 04:10:38,515 INFO L290 TraceCheckUtils]: 19: Hoare triple {1488#true} assume !(0 == ~cond); {1488#true} is VALID [2022-04-28 04:10:38,516 INFO L290 TraceCheckUtils]: 20: Hoare triple {1488#true} assume true; {1488#true} is VALID [2022-04-28 04:10:38,516 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1488#true} {1488#true} #79#return; {1488#true} is VALID [2022-04-28 04:10:38,516 INFO L272 TraceCheckUtils]: 22: Hoare triple {1488#true} call #t~ret18 := lcp(~a~0.base, ~a~0.offset, ~n~0, ~x~0, ~y~0); {1488#true} is VALID [2022-04-28 04:10:38,517 INFO L290 TraceCheckUtils]: 23: Hoare triple {1488#true} ~a.base, ~a.offset := #in~a.base, #in~a.offset;~n := #in~n;~x := #in~x;~y := #in~y;~l~0 := 0; {1528#(and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n))} is VALID [2022-04-28 04:10:38,517 INFO L290 TraceCheckUtils]: 24: Hoare triple {1528#(and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n))} #t~short7 := ~x + ~l~0 < ~n && ~y + ~l~0 < ~n; {1528#(and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n))} is VALID [2022-04-28 04:10:38,517 INFO L290 TraceCheckUtils]: 25: Hoare triple {1528#(and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n))} assume #t~short7;call #t~mem5 := read~int(~a.base, ~a.offset + 4 * (~x + ~l~0), 4);call #t~mem6 := read~int(~a.base, ~a.offset + 4 * (~y + ~l~0), 4);#t~short7 := #t~mem5 == #t~mem6; {1528#(and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n))} is VALID [2022-04-28 04:10:38,518 INFO L290 TraceCheckUtils]: 26: Hoare triple {1528#(and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n))} assume !!#t~short7;havoc #t~mem5;havoc #t~mem6;havoc #t~short7;#t~post8 := ~l~0;~l~0 := 1 + #t~post8;havoc #t~post8; {1528#(and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n))} is VALID [2022-04-28 04:10:38,518 INFO L290 TraceCheckUtils]: 27: Hoare triple {1528#(and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n))} #t~short7 := ~x + ~l~0 < ~n && ~y + ~l~0 < ~n; {1529#(or |lcp_#t~short7| (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} is VALID [2022-04-28 04:10:38,519 INFO L290 TraceCheckUtils]: 28: Hoare triple {1529#(or |lcp_#t~short7| (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} assume !#t~short7; {1530#(or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} is VALID [2022-04-28 04:10:38,519 INFO L290 TraceCheckUtils]: 29: Hoare triple {1530#(or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} assume !#t~short7;havoc #t~mem5;havoc #t~mem6;havoc #t~short7; {1530#(or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} is VALID [2022-04-28 04:10:38,519 INFO L290 TraceCheckUtils]: 30: Hoare triple {1530#(or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} #res := ~l~0; {1531#(or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|)))} is VALID [2022-04-28 04:10:38,520 INFO L290 TraceCheckUtils]: 31: Hoare triple {1531#(or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|)))} assume true; {1531#(or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|)))} is VALID [2022-04-28 04:10:38,521 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1531#(or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|)))} {1488#true} #81#return; {1514#(or (<= main_~n~0 (+ |main_#t~ret18| main_~x~0)) (<= main_~n~0 (+ |main_#t~ret18| main_~y~0)))} is VALID [2022-04-28 04:10:38,521 INFO L290 TraceCheckUtils]: 33: Hoare triple {1514#(or (<= main_~n~0 (+ |main_#t~ret18| main_~x~0)) (<= main_~n~0 (+ |main_#t~ret18| main_~y~0)))} assume -2147483648 <= #t~ret18 && #t~ret18 <= 2147483647;~l~1 := #t~ret18;havoc #t~ret18; {1515#(or (<= main_~n~0 (+ main_~l~1 main_~y~0)) (<= main_~n~0 (+ main_~l~1 main_~x~0)))} is VALID [2022-04-28 04:10:38,522 INFO L272 TraceCheckUtils]: 34: Hoare triple {1515#(or (<= main_~n~0 (+ main_~l~1 main_~y~0)) (<= main_~n~0 (+ main_~l~1 main_~x~0)))} call check(~a~0.base, ~a~0.offset, ~n~0, ~x~0, ~y~0, ~l~1); {1516#(or (<= |check_#in~n| (+ |check_#in~x| |check_#in~l|)) (<= |check_#in~n| (+ |check_#in~y| |check_#in~l|)))} is VALID [2022-04-28 04:10:38,522 INFO L290 TraceCheckUtils]: 35: Hoare triple {1516#(or (<= |check_#in~n| (+ |check_#in~x| |check_#in~l|)) (<= |check_#in~n| (+ |check_#in~y| |check_#in~l|)))} ~a.base, ~a.offset := #in~a.base, #in~a.offset;~n := #in~n;~x := #in~x;~y := #in~y;~l := #in~l;assume -2147483648 <= #t~nondet9 && #t~nondet9 <= 2147483647;~i~0 := #t~nondet9;havoc #t~nondet9; {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-28 04:10:38,523 INFO L272 TraceCheckUtils]: 36: Hoare triple {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} call assume_abort_if_not((if 0 <= ~i~0 && ~i~0 < ~l then 1 else 0)); {1488#true} is VALID [2022-04-28 04:10:38,523 INFO L290 TraceCheckUtils]: 37: Hoare triple {1488#true} ~cond := #in~cond; {1488#true} is VALID [2022-04-28 04:10:38,523 INFO L290 TraceCheckUtils]: 38: Hoare triple {1488#true} assume !(0 == ~cond); {1488#true} is VALID [2022-04-28 04:10:38,523 INFO L290 TraceCheckUtils]: 39: Hoare triple {1488#true} assume true; {1488#true} is VALID [2022-04-28 04:10:38,523 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {1488#true} {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} #85#return; {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-28 04:10:38,524 INFO L290 TraceCheckUtils]: 41: Hoare triple {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} call #t~mem10 := read~int(~a.base, ~a.offset + 4 * (~x + ~i~0), 4);call #t~mem11 := read~int(~a.base, ~a.offset + 4 * (~y + ~i~0), 4); {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-28 04:10:38,524 INFO L272 TraceCheckUtils]: 42: Hoare triple {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} call __VERIFIER_assert((if #t~mem10 == #t~mem11 then 1 else 0)); {1488#true} is VALID [2022-04-28 04:10:38,524 INFO L290 TraceCheckUtils]: 43: Hoare triple {1488#true} ~cond := #in~cond; {1488#true} is VALID [2022-04-28 04:10:38,524 INFO L290 TraceCheckUtils]: 44: Hoare triple {1488#true} assume !(0 == ~cond); {1488#true} is VALID [2022-04-28 04:10:38,524 INFO L290 TraceCheckUtils]: 45: Hoare triple {1488#true} assume true; {1488#true} is VALID [2022-04-28 04:10:38,524 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {1488#true} {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} #87#return; {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-28 04:10:38,525 INFO L290 TraceCheckUtils]: 47: Hoare triple {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} havoc #t~mem10;havoc #t~mem11; {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-28 04:10:38,525 INFO L290 TraceCheckUtils]: 48: Hoare triple {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} assume ~x + ~l < ~n && ~y + ~l < ~n;call #t~mem12 := read~int(~a.base, ~a.offset + 4 * (~x + ~l), 4);call #t~mem13 := read~int(~a.base, ~a.offset + 4 * (~y + ~l), 4); {1489#false} is VALID [2022-04-28 04:10:38,525 INFO L272 TraceCheckUtils]: 49: Hoare triple {1489#false} call __VERIFIER_assert((if #t~mem12 != #t~mem13 then 1 else 0)); {1489#false} is VALID [2022-04-28 04:10:38,525 INFO L290 TraceCheckUtils]: 50: Hoare triple {1489#false} ~cond := #in~cond; {1489#false} is VALID [2022-04-28 04:10:38,525 INFO L290 TraceCheckUtils]: 51: Hoare triple {1489#false} assume 0 == ~cond; {1489#false} is VALID [2022-04-28 04:10:38,525 INFO L290 TraceCheckUtils]: 52: Hoare triple {1489#false} assume !false; {1489#false} is VALID [2022-04-28 04:10:38,526 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 13 trivial. 0 not checked. [2022-04-28 04:10:38,526 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-28 04:10:38,526 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [545082329] [2022-04-28 04:10:38,526 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [545082329] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-28 04:10:38,526 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [681207358] [2022-04-28 04:10:38,526 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-28 04:10:38,526 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:10:38,526 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-28 04:10:38,528 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 04:10:38,539 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 04:10:38,601 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-28 04:10:38,602 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-28 04:10:38,604 INFO L263 TraceCheckSpWp]: Trace formula consists of 231 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-28 04:10:38,626 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-28 04:10:38,643 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-28 04:10:39,858 INFO L272 TraceCheckUtils]: 0: Hoare triple {1488#true} call ULTIMATE.init(); {1488#true} is VALID [2022-04-28 04:10:39,859 INFO L290 TraceCheckUtils]: 1: Hoare triple {1488#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(6, 2);call write~init~int(108, 2, 0, 1);call write~init~int(99, 2, 1, 1);call write~init~int(112, 2, 2, 1);call write~init~int(46, 2, 3, 1);call write~init~int(99, 2, 4, 1);call write~init~int(0, 2, 5, 1);call #Ultimate.allocInit(12, 3); {1488#true} is VALID [2022-04-28 04:10:39,859 INFO L290 TraceCheckUtils]: 2: Hoare triple {1488#true} assume true; {1488#true} is VALID [2022-04-28 04:10:39,859 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1488#true} {1488#true} #91#return; {1488#true} is VALID [2022-04-28 04:10:39,859 INFO L272 TraceCheckUtils]: 4: Hoare triple {1488#true} call #t~ret19 := main(); {1488#true} is VALID [2022-04-28 04:10:39,859 INFO L290 TraceCheckUtils]: 5: Hoare triple {1488#true} assume -2147483648 <= #t~nondet14 && #t~nondet14 <= 2147483647;~n~0 := #t~nondet14;havoc #t~nondet14; {1488#true} is VALID [2022-04-28 04:10:39,859 INFO L272 TraceCheckUtils]: 6: Hoare triple {1488#true} call assume_abort_if_not((if ~n~0 >= 0 && ~n~0 < 1073741824 then 1 else 0)); {1488#true} is VALID [2022-04-28 04:10:39,859 INFO L290 TraceCheckUtils]: 7: Hoare triple {1488#true} ~cond := #in~cond; {1488#true} is VALID [2022-04-28 04:10:39,859 INFO L290 TraceCheckUtils]: 8: Hoare triple {1488#true} assume !(0 == ~cond); {1488#true} is VALID [2022-04-28 04:10:39,859 INFO L290 TraceCheckUtils]: 9: Hoare triple {1488#true} assume true; {1488#true} is VALID [2022-04-28 04:10:39,860 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1488#true} {1488#true} #75#return; {1488#true} is VALID [2022-04-28 04:10:39,860 INFO L290 TraceCheckUtils]: 11: Hoare triple {1488#true} call #t~malloc15.base, #t~malloc15.offset := #Ultimate.allocOnHeap(4 * ~n~0); {1488#true} is VALID [2022-04-28 04:10:39,860 INFO L272 TraceCheckUtils]: 12: Hoare triple {1488#true} call #Ultimate.meminit(#t~malloc15.base, #t~malloc15.offset, ~n~0, 4, 4 * ~n~0); {1488#true} is VALID [2022-04-28 04:10:39,860 INFO L290 TraceCheckUtils]: 13: Hoare triple {1488#true} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {1488#true} is VALID [2022-04-28 04:10:39,860 INFO L290 TraceCheckUtils]: 14: Hoare triple {1488#true} assume true; {1488#true} is VALID [2022-04-28 04:10:39,860 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1488#true} {1488#true} #77#return; {1488#true} is VALID [2022-04-28 04:10:39,860 INFO L290 TraceCheckUtils]: 16: Hoare triple {1488#true} ~a~0.base, ~a~0.offset := #t~malloc15.base, #t~malloc15.offset;assume -2147483648 <= #t~nondet16 && #t~nondet16 <= 2147483647;~x~0 := #t~nondet16;havoc #t~nondet16;assume -2147483648 <= #t~nondet17 && #t~nondet17 <= 2147483647;~y~0 := #t~nondet17;havoc #t~nondet17; {1488#true} is VALID [2022-04-28 04:10:39,860 INFO L272 TraceCheckUtils]: 17: Hoare triple {1488#true} call assume_abort_if_not((if ~x~0 >= 0 && ~y~0 >= 0 then 1 else 0)); {1488#true} is VALID [2022-04-28 04:10:39,860 INFO L290 TraceCheckUtils]: 18: Hoare triple {1488#true} ~cond := #in~cond; {1488#true} is VALID [2022-04-28 04:10:39,860 INFO L290 TraceCheckUtils]: 19: Hoare triple {1488#true} assume !(0 == ~cond); {1488#true} is VALID [2022-04-28 04:10:39,861 INFO L290 TraceCheckUtils]: 20: Hoare triple {1488#true} assume true; {1488#true} is VALID [2022-04-28 04:10:39,861 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1488#true} {1488#true} #79#return; {1488#true} is VALID [2022-04-28 04:10:39,861 INFO L272 TraceCheckUtils]: 22: Hoare triple {1488#true} call #t~ret18 := lcp(~a~0.base, ~a~0.offset, ~n~0, ~x~0, ~y~0); {1488#true} is VALID [2022-04-28 04:10:39,861 INFO L290 TraceCheckUtils]: 23: Hoare triple {1488#true} ~a.base, ~a.offset := #in~a.base, #in~a.offset;~n := #in~n;~x := #in~x;~y := #in~y;~l~0 := 0; {1604#(and (<= lcp_~y |lcp_#in~y|) (<= |lcp_#in~n| lcp_~n) (<= lcp_~x |lcp_#in~x|))} is VALID [2022-04-28 04:10:39,862 INFO L290 TraceCheckUtils]: 24: Hoare triple {1604#(and (<= lcp_~y |lcp_#in~y|) (<= |lcp_#in~n| lcp_~n) (<= lcp_~x |lcp_#in~x|))} #t~short7 := ~x + ~l~0 < ~n && ~y + ~l~0 < ~n; {1604#(and (<= lcp_~y |lcp_#in~y|) (<= |lcp_#in~n| lcp_~n) (<= lcp_~x |lcp_#in~x|))} is VALID [2022-04-28 04:10:39,862 INFO L290 TraceCheckUtils]: 25: Hoare triple {1604#(and (<= lcp_~y |lcp_#in~y|) (<= |lcp_#in~n| lcp_~n) (<= lcp_~x |lcp_#in~x|))} assume #t~short7;call #t~mem5 := read~int(~a.base, ~a.offset + 4 * (~x + ~l~0), 4);call #t~mem6 := read~int(~a.base, ~a.offset + 4 * (~y + ~l~0), 4);#t~short7 := #t~mem5 == #t~mem6; {1604#(and (<= lcp_~y |lcp_#in~y|) (<= |lcp_#in~n| lcp_~n) (<= lcp_~x |lcp_#in~x|))} is VALID [2022-04-28 04:10:39,863 INFO L290 TraceCheckUtils]: 26: Hoare triple {1604#(and (<= lcp_~y |lcp_#in~y|) (<= |lcp_#in~n| lcp_~n) (<= lcp_~x |lcp_#in~x|))} assume !!#t~short7;havoc #t~mem5;havoc #t~mem6;havoc #t~short7;#t~post8 := ~l~0;~l~0 := 1 + #t~post8;havoc #t~post8; {1604#(and (<= lcp_~y |lcp_#in~y|) (<= |lcp_#in~n| lcp_~n) (<= lcp_~x |lcp_#in~x|))} is VALID [2022-04-28 04:10:39,863 INFO L290 TraceCheckUtils]: 27: Hoare triple {1604#(and (<= lcp_~y |lcp_#in~y|) (<= |lcp_#in~n| lcp_~n) (<= lcp_~x |lcp_#in~x|))} #t~short7 := ~x + ~l~0 < ~n && ~y + ~l~0 < ~n; {1529#(or |lcp_#t~short7| (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} is VALID [2022-04-28 04:10:39,864 INFO L290 TraceCheckUtils]: 28: Hoare triple {1529#(or |lcp_#t~short7| (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} assume !#t~short7; {1530#(or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} is VALID [2022-04-28 04:10:39,864 INFO L290 TraceCheckUtils]: 29: Hoare triple {1530#(or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} assume !#t~short7;havoc #t~mem5;havoc #t~mem6;havoc #t~short7; {1530#(or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} is VALID [2022-04-28 04:10:39,864 INFO L290 TraceCheckUtils]: 30: Hoare triple {1530#(or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} #res := ~l~0; {1531#(or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|)))} is VALID [2022-04-28 04:10:39,865 INFO L290 TraceCheckUtils]: 31: Hoare triple {1531#(or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|)))} assume true; {1531#(or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|)))} is VALID [2022-04-28 04:10:39,866 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1531#(or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|)))} {1488#true} #81#return; {1514#(or (<= main_~n~0 (+ |main_#t~ret18| main_~x~0)) (<= main_~n~0 (+ |main_#t~ret18| main_~y~0)))} is VALID [2022-04-28 04:10:39,866 INFO L290 TraceCheckUtils]: 33: Hoare triple {1514#(or (<= main_~n~0 (+ |main_#t~ret18| main_~x~0)) (<= main_~n~0 (+ |main_#t~ret18| main_~y~0)))} assume -2147483648 <= #t~ret18 && #t~ret18 <= 2147483647;~l~1 := #t~ret18;havoc #t~ret18; {1515#(or (<= main_~n~0 (+ main_~l~1 main_~y~0)) (<= main_~n~0 (+ main_~l~1 main_~x~0)))} is VALID [2022-04-28 04:10:39,867 INFO L272 TraceCheckUtils]: 34: Hoare triple {1515#(or (<= main_~n~0 (+ main_~l~1 main_~y~0)) (<= main_~n~0 (+ main_~l~1 main_~x~0)))} call check(~a~0.base, ~a~0.offset, ~n~0, ~x~0, ~y~0, ~l~1); {1516#(or (<= |check_#in~n| (+ |check_#in~x| |check_#in~l|)) (<= |check_#in~n| (+ |check_#in~y| |check_#in~l|)))} is VALID [2022-04-28 04:10:39,867 INFO L290 TraceCheckUtils]: 35: Hoare triple {1516#(or (<= |check_#in~n| (+ |check_#in~x| |check_#in~l|)) (<= |check_#in~n| (+ |check_#in~y| |check_#in~l|)))} ~a.base, ~a.offset := #in~a.base, #in~a.offset;~n := #in~n;~x := #in~x;~y := #in~y;~l := #in~l;assume -2147483648 <= #t~nondet9 && #t~nondet9 <= 2147483647;~i~0 := #t~nondet9;havoc #t~nondet9; {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-28 04:10:39,868 INFO L272 TraceCheckUtils]: 36: Hoare triple {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} call assume_abort_if_not((if 0 <= ~i~0 && ~i~0 < ~l then 1 else 0)); {1488#true} is VALID [2022-04-28 04:10:39,868 INFO L290 TraceCheckUtils]: 37: Hoare triple {1488#true} ~cond := #in~cond; {1488#true} is VALID [2022-04-28 04:10:39,868 INFO L290 TraceCheckUtils]: 38: Hoare triple {1488#true} assume !(0 == ~cond); {1488#true} is VALID [2022-04-28 04:10:39,868 INFO L290 TraceCheckUtils]: 39: Hoare triple {1488#true} assume true; {1488#true} is VALID [2022-04-28 04:10:39,868 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {1488#true} {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} #85#return; {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-28 04:10:39,869 INFO L290 TraceCheckUtils]: 41: Hoare triple {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} call #t~mem10 := read~int(~a.base, ~a.offset + 4 * (~x + ~i~0), 4);call #t~mem11 := read~int(~a.base, ~a.offset + 4 * (~y + ~i~0), 4); {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-28 04:10:39,869 INFO L272 TraceCheckUtils]: 42: Hoare triple {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} call __VERIFIER_assert((if #t~mem10 == #t~mem11 then 1 else 0)); {1488#true} is VALID [2022-04-28 04:10:39,869 INFO L290 TraceCheckUtils]: 43: Hoare triple {1488#true} ~cond := #in~cond; {1488#true} is VALID [2022-04-28 04:10:39,869 INFO L290 TraceCheckUtils]: 44: Hoare triple {1488#true} assume !(0 == ~cond); {1488#true} is VALID [2022-04-28 04:10:39,869 INFO L290 TraceCheckUtils]: 45: Hoare triple {1488#true} assume true; {1488#true} is VALID [2022-04-28 04:10:39,870 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {1488#true} {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} #87#return; {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-28 04:10:39,870 INFO L290 TraceCheckUtils]: 47: Hoare triple {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} havoc #t~mem10;havoc #t~mem11; {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-28 04:10:39,870 INFO L290 TraceCheckUtils]: 48: Hoare triple {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} assume ~x + ~l < ~n && ~y + ~l < ~n;call #t~mem12 := read~int(~a.base, ~a.offset + 4 * (~x + ~l), 4);call #t~mem13 := read~int(~a.base, ~a.offset + 4 * (~y + ~l), 4); {1489#false} is VALID [2022-04-28 04:10:39,870 INFO L272 TraceCheckUtils]: 49: Hoare triple {1489#false} call __VERIFIER_assert((if #t~mem12 != #t~mem13 then 1 else 0)); {1489#false} is VALID [2022-04-28 04:10:39,870 INFO L290 TraceCheckUtils]: 50: Hoare triple {1489#false} ~cond := #in~cond; {1489#false} is VALID [2022-04-28 04:10:39,871 INFO L290 TraceCheckUtils]: 51: Hoare triple {1489#false} assume 0 == ~cond; {1489#false} is VALID [2022-04-28 04:10:39,871 INFO L290 TraceCheckUtils]: 52: Hoare triple {1489#false} assume !false; {1489#false} is VALID [2022-04-28 04:10:39,871 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 13 trivial. 0 not checked. [2022-04-28 04:10:39,871 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-28 04:10:41,263 INFO L290 TraceCheckUtils]: 52: Hoare triple {1489#false} assume !false; {1489#false} is VALID [2022-04-28 04:10:41,263 INFO L290 TraceCheckUtils]: 51: Hoare triple {1489#false} assume 0 == ~cond; {1489#false} is VALID [2022-04-28 04:10:41,263 INFO L290 TraceCheckUtils]: 50: Hoare triple {1489#false} ~cond := #in~cond; {1489#false} is VALID [2022-04-28 04:10:41,264 INFO L272 TraceCheckUtils]: 49: Hoare triple {1489#false} call __VERIFIER_assert((if #t~mem12 != #t~mem13 then 1 else 0)); {1489#false} is VALID [2022-04-28 04:10:41,264 INFO L290 TraceCheckUtils]: 48: Hoare triple {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} assume ~x + ~l < ~n && ~y + ~l < ~n;call #t~mem12 := read~int(~a.base, ~a.offset + 4 * (~x + ~l), 4);call #t~mem13 := read~int(~a.base, ~a.offset + 4 * (~y + ~l), 4); {1489#false} is VALID [2022-04-28 04:10:41,264 INFO L290 TraceCheckUtils]: 47: Hoare triple {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} havoc #t~mem10;havoc #t~mem11; {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-28 04:10:41,265 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {1488#true} {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} #87#return; {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-28 04:10:41,265 INFO L290 TraceCheckUtils]: 45: Hoare triple {1488#true} assume true; {1488#true} is VALID [2022-04-28 04:10:41,265 INFO L290 TraceCheckUtils]: 44: Hoare triple {1488#true} assume !(0 == ~cond); {1488#true} is VALID [2022-04-28 04:10:41,266 INFO L290 TraceCheckUtils]: 43: Hoare triple {1488#true} ~cond := #in~cond; {1488#true} is VALID [2022-04-28 04:10:41,266 INFO L272 TraceCheckUtils]: 42: Hoare triple {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} call __VERIFIER_assert((if #t~mem10 == #t~mem11 then 1 else 0)); {1488#true} is VALID [2022-04-28 04:10:41,266 INFO L290 TraceCheckUtils]: 41: Hoare triple {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} call #t~mem10 := read~int(~a.base, ~a.offset + 4 * (~x + ~i~0), 4);call #t~mem11 := read~int(~a.base, ~a.offset + 4 * (~y + ~i~0), 4); {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-28 04:10:41,267 INFO L284 TraceCheckUtils]: 40: Hoare quadruple {1488#true} {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} #85#return; {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-28 04:10:41,267 INFO L290 TraceCheckUtils]: 39: Hoare triple {1488#true} assume true; {1488#true} is VALID [2022-04-28 04:10:41,267 INFO L290 TraceCheckUtils]: 38: Hoare triple {1488#true} assume !(0 == ~cond); {1488#true} is VALID [2022-04-28 04:10:41,267 INFO L290 TraceCheckUtils]: 37: Hoare triple {1488#true} ~cond := #in~cond; {1488#true} is VALID [2022-04-28 04:10:41,267 INFO L272 TraceCheckUtils]: 36: Hoare triple {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} call assume_abort_if_not((if 0 <= ~i~0 && ~i~0 < ~l then 1 else 0)); {1488#true} is VALID [2022-04-28 04:10:41,267 INFO L290 TraceCheckUtils]: 35: Hoare triple {1516#(or (<= |check_#in~n| (+ |check_#in~x| |check_#in~l|)) (<= |check_#in~n| (+ |check_#in~y| |check_#in~l|)))} ~a.base, ~a.offset := #in~a.base, #in~a.offset;~n := #in~n;~x := #in~x;~y := #in~y;~l := #in~l;assume -2147483648 <= #t~nondet9 && #t~nondet9 <= 2147483647;~i~0 := #t~nondet9;havoc #t~nondet9; {1517#(or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x)))} is VALID [2022-04-28 04:10:41,268 INFO L272 TraceCheckUtils]: 34: Hoare triple {1515#(or (<= main_~n~0 (+ main_~l~1 main_~y~0)) (<= main_~n~0 (+ main_~l~1 main_~x~0)))} call check(~a~0.base, ~a~0.offset, ~n~0, ~x~0, ~y~0, ~l~1); {1516#(or (<= |check_#in~n| (+ |check_#in~x| |check_#in~l|)) (<= |check_#in~n| (+ |check_#in~y| |check_#in~l|)))} is VALID [2022-04-28 04:10:41,269 INFO L290 TraceCheckUtils]: 33: Hoare triple {1514#(or (<= main_~n~0 (+ |main_#t~ret18| main_~x~0)) (<= main_~n~0 (+ |main_#t~ret18| main_~y~0)))} assume -2147483648 <= #t~ret18 && #t~ret18 <= 2147483647;~l~1 := #t~ret18;havoc #t~ret18; {1515#(or (<= main_~n~0 (+ main_~l~1 main_~y~0)) (<= main_~n~0 (+ main_~l~1 main_~x~0)))} is VALID [2022-04-28 04:10:41,270 INFO L284 TraceCheckUtils]: 32: Hoare quadruple {1531#(or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|)))} {1488#true} #81#return; {1514#(or (<= main_~n~0 (+ |main_#t~ret18| main_~x~0)) (<= main_~n~0 (+ |main_#t~ret18| main_~y~0)))} is VALID [2022-04-28 04:10:41,270 INFO L290 TraceCheckUtils]: 31: Hoare triple {1531#(or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|)))} assume true; {1531#(or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|)))} is VALID [2022-04-28 04:10:41,271 INFO L290 TraceCheckUtils]: 30: Hoare triple {1530#(or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} #res := ~l~0; {1531#(or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|)))} is VALID [2022-04-28 04:10:41,271 INFO L290 TraceCheckUtils]: 29: Hoare triple {1530#(or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} assume !#t~short7;havoc #t~mem5;havoc #t~mem6;havoc #t~short7; {1530#(or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} is VALID [2022-04-28 04:10:41,271 INFO L290 TraceCheckUtils]: 28: Hoare triple {1529#(or |lcp_#t~short7| (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} assume !#t~short7; {1530#(or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} is VALID [2022-04-28 04:10:41,272 INFO L290 TraceCheckUtils]: 27: Hoare triple {1770#(and (or (<= (+ |lcp_#in~n| lcp_~x) (+ |lcp_#in~y| lcp_~n)) (<= (+ |lcp_#in~n| lcp_~x) (+ |lcp_#in~x| lcp_~n))) (or (<= (+ |lcp_#in~n| lcp_~y) (+ |lcp_#in~x| lcp_~n)) (<= (+ |lcp_#in~n| lcp_~y) (+ |lcp_#in~y| lcp_~n))))} #t~short7 := ~x + ~l~0 < ~n && ~y + ~l~0 < ~n; {1529#(or |lcp_#t~short7| (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))} is VALID [2022-04-28 04:10:41,273 INFO L290 TraceCheckUtils]: 26: Hoare triple {1770#(and (or (<= (+ |lcp_#in~n| lcp_~x) (+ |lcp_#in~y| lcp_~n)) (<= (+ |lcp_#in~n| lcp_~x) (+ |lcp_#in~x| lcp_~n))) (or (<= (+ |lcp_#in~n| lcp_~y) (+ |lcp_#in~x| lcp_~n)) (<= (+ |lcp_#in~n| lcp_~y) (+ |lcp_#in~y| lcp_~n))))} assume !!#t~short7;havoc #t~mem5;havoc #t~mem6;havoc #t~short7;#t~post8 := ~l~0;~l~0 := 1 + #t~post8;havoc #t~post8; {1770#(and (or (<= (+ |lcp_#in~n| lcp_~x) (+ |lcp_#in~y| lcp_~n)) (<= (+ |lcp_#in~n| lcp_~x) (+ |lcp_#in~x| lcp_~n))) (or (<= (+ |lcp_#in~n| lcp_~y) (+ |lcp_#in~x| lcp_~n)) (<= (+ |lcp_#in~n| lcp_~y) (+ |lcp_#in~y| lcp_~n))))} is VALID [2022-04-28 04:10:41,273 INFO L290 TraceCheckUtils]: 25: Hoare triple {1770#(and (or (<= (+ |lcp_#in~n| lcp_~x) (+ |lcp_#in~y| lcp_~n)) (<= (+ |lcp_#in~n| lcp_~x) (+ |lcp_#in~x| lcp_~n))) (or (<= (+ |lcp_#in~n| lcp_~y) (+ |lcp_#in~x| lcp_~n)) (<= (+ |lcp_#in~n| lcp_~y) (+ |lcp_#in~y| lcp_~n))))} assume #t~short7;call #t~mem5 := read~int(~a.base, ~a.offset + 4 * (~x + ~l~0), 4);call #t~mem6 := read~int(~a.base, ~a.offset + 4 * (~y + ~l~0), 4);#t~short7 := #t~mem5 == #t~mem6; {1770#(and (or (<= (+ |lcp_#in~n| lcp_~x) (+ |lcp_#in~y| lcp_~n)) (<= (+ |lcp_#in~n| lcp_~x) (+ |lcp_#in~x| lcp_~n))) (or (<= (+ |lcp_#in~n| lcp_~y) (+ |lcp_#in~x| lcp_~n)) (<= (+ |lcp_#in~n| lcp_~y) (+ |lcp_#in~y| lcp_~n))))} is VALID [2022-04-28 04:10:41,274 INFO L290 TraceCheckUtils]: 24: Hoare triple {1770#(and (or (<= (+ |lcp_#in~n| lcp_~x) (+ |lcp_#in~y| lcp_~n)) (<= (+ |lcp_#in~n| lcp_~x) (+ |lcp_#in~x| lcp_~n))) (or (<= (+ |lcp_#in~n| lcp_~y) (+ |lcp_#in~x| lcp_~n)) (<= (+ |lcp_#in~n| lcp_~y) (+ |lcp_#in~y| lcp_~n))))} #t~short7 := ~x + ~l~0 < ~n && ~y + ~l~0 < ~n; {1770#(and (or (<= (+ |lcp_#in~n| lcp_~x) (+ |lcp_#in~y| lcp_~n)) (<= (+ |lcp_#in~n| lcp_~x) (+ |lcp_#in~x| lcp_~n))) (or (<= (+ |lcp_#in~n| lcp_~y) (+ |lcp_#in~x| lcp_~n)) (<= (+ |lcp_#in~n| lcp_~y) (+ |lcp_#in~y| lcp_~n))))} is VALID [2022-04-28 04:10:41,275 INFO L290 TraceCheckUtils]: 23: Hoare triple {1488#true} ~a.base, ~a.offset := #in~a.base, #in~a.offset;~n := #in~n;~x := #in~x;~y := #in~y;~l~0 := 0; {1770#(and (or (<= (+ |lcp_#in~n| lcp_~x) (+ |lcp_#in~y| lcp_~n)) (<= (+ |lcp_#in~n| lcp_~x) (+ |lcp_#in~x| lcp_~n))) (or (<= (+ |lcp_#in~n| lcp_~y) (+ |lcp_#in~x| lcp_~n)) (<= (+ |lcp_#in~n| lcp_~y) (+ |lcp_#in~y| lcp_~n))))} is VALID [2022-04-28 04:10:41,275 INFO L272 TraceCheckUtils]: 22: Hoare triple {1488#true} call #t~ret18 := lcp(~a~0.base, ~a~0.offset, ~n~0, ~x~0, ~y~0); {1488#true} is VALID [2022-04-28 04:10:41,275 INFO L284 TraceCheckUtils]: 21: Hoare quadruple {1488#true} {1488#true} #79#return; {1488#true} is VALID [2022-04-28 04:10:41,275 INFO L290 TraceCheckUtils]: 20: Hoare triple {1488#true} assume true; {1488#true} is VALID [2022-04-28 04:10:41,275 INFO L290 TraceCheckUtils]: 19: Hoare triple {1488#true} assume !(0 == ~cond); {1488#true} is VALID [2022-04-28 04:10:41,275 INFO L290 TraceCheckUtils]: 18: Hoare triple {1488#true} ~cond := #in~cond; {1488#true} is VALID [2022-04-28 04:10:41,275 INFO L272 TraceCheckUtils]: 17: Hoare triple {1488#true} call assume_abort_if_not((if ~x~0 >= 0 && ~y~0 >= 0 then 1 else 0)); {1488#true} is VALID [2022-04-28 04:10:41,275 INFO L290 TraceCheckUtils]: 16: Hoare triple {1488#true} ~a~0.base, ~a~0.offset := #t~malloc15.base, #t~malloc15.offset;assume -2147483648 <= #t~nondet16 && #t~nondet16 <= 2147483647;~x~0 := #t~nondet16;havoc #t~nondet16;assume -2147483648 <= #t~nondet17 && #t~nondet17 <= 2147483647;~y~0 := #t~nondet17;havoc #t~nondet17; {1488#true} is VALID [2022-04-28 04:10:41,275 INFO L284 TraceCheckUtils]: 15: Hoare quadruple {1488#true} {1488#true} #77#return; {1488#true} is VALID [2022-04-28 04:10:41,276 INFO L290 TraceCheckUtils]: 14: Hoare triple {1488#true} assume true; {1488#true} is VALID [2022-04-28 04:10:41,276 INFO L290 TraceCheckUtils]: 13: Hoare triple {1488#true} #memory_int := ~initToZeroAtPointerBaseAddress~int(#memory_int, #ptr.base); {1488#true} is VALID [2022-04-28 04:10:41,276 INFO L272 TraceCheckUtils]: 12: Hoare triple {1488#true} call #Ultimate.meminit(#t~malloc15.base, #t~malloc15.offset, ~n~0, 4, 4 * ~n~0); {1488#true} is VALID [2022-04-28 04:10:41,276 INFO L290 TraceCheckUtils]: 11: Hoare triple {1488#true} call #t~malloc15.base, #t~malloc15.offset := #Ultimate.allocOnHeap(4 * ~n~0); {1488#true} is VALID [2022-04-28 04:10:41,276 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1488#true} {1488#true} #75#return; {1488#true} is VALID [2022-04-28 04:10:41,276 INFO L290 TraceCheckUtils]: 9: Hoare triple {1488#true} assume true; {1488#true} is VALID [2022-04-28 04:10:41,276 INFO L290 TraceCheckUtils]: 8: Hoare triple {1488#true} assume !(0 == ~cond); {1488#true} is VALID [2022-04-28 04:10:41,276 INFO L290 TraceCheckUtils]: 7: Hoare triple {1488#true} ~cond := #in~cond; {1488#true} is VALID [2022-04-28 04:10:41,276 INFO L272 TraceCheckUtils]: 6: Hoare triple {1488#true} call assume_abort_if_not((if ~n~0 >= 0 && ~n~0 < 1073741824 then 1 else 0)); {1488#true} is VALID [2022-04-28 04:10:41,276 INFO L290 TraceCheckUtils]: 5: Hoare triple {1488#true} assume -2147483648 <= #t~nondet14 && #t~nondet14 <= 2147483647;~n~0 := #t~nondet14;havoc #t~nondet14; {1488#true} is VALID [2022-04-28 04:10:41,276 INFO L272 TraceCheckUtils]: 4: Hoare triple {1488#true} call #t~ret19 := main(); {1488#true} is VALID [2022-04-28 04:10:41,277 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1488#true} {1488#true} #91#return; {1488#true} is VALID [2022-04-28 04:10:41,277 INFO L290 TraceCheckUtils]: 2: Hoare triple {1488#true} assume true; {1488#true} is VALID [2022-04-28 04:10:41,277 INFO L290 TraceCheckUtils]: 1: Hoare triple {1488#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(6, 2);call write~init~int(108, 2, 0, 1);call write~init~int(99, 2, 1, 1);call write~init~int(112, 2, 2, 1);call write~init~int(46, 2, 3, 1);call write~init~int(99, 2, 4, 1);call write~init~int(0, 2, 5, 1);call #Ultimate.allocInit(12, 3); {1488#true} is VALID [2022-04-28 04:10:41,277 INFO L272 TraceCheckUtils]: 0: Hoare triple {1488#true} call ULTIMATE.init(); {1488#true} is VALID [2022-04-28 04:10:41,277 INFO L134 CoverageAnalysis]: Checked inductivity of 17 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 13 trivial. 0 not checked. [2022-04-28 04:10:41,277 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [681207358] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-28 04:10:41,277 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-28 04:10:41,277 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 10, 10] total 14 [2022-04-28 04:10:41,278 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-28 04:10:41,278 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [880141465] [2022-04-28 04:10:41,278 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [880141465] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-28 04:10:41,278 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-28 04:10:41,278 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-28 04:10:41,278 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [249783132] [2022-04-28 04:10:41,278 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-28 04:10:41,279 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 2.727272727272727) internal successors, (30), 8 states have internal predecessors, (30), 4 states have call successors, (10), 5 states have call predecessors, (10), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) Word has length 53 [2022-04-28 04:10:41,279 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-28 04:10:41,279 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 11 states have (on average 2.727272727272727) internal successors, (30), 8 states have internal predecessors, (30), 4 states have call successors, (10), 5 states have call predecessors, (10), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 04:10:41,313 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:10:41,314 INFO L571 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-28 04:10:41,314 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-28 04:10:41,314 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-28 04:10:41,314 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=29, Invalid=153, Unknown=0, NotChecked=0, Total=182 [2022-04-28 04:10:41,314 INFO L87 Difference]: Start difference. First operand 46 states and 50 transitions. Second operand has 12 states, 11 states have (on average 2.727272727272727) internal successors, (30), 8 states have internal predecessors, (30), 4 states have call successors, (10), 5 states have call predecessors, (10), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 04:10:42,103 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:10:42,103 INFO L93 Difference]: Finished difference Result 49 states and 54 transitions. [2022-04-28 04:10:42,103 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-28 04:10:42,104 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 2.727272727272727) internal successors, (30), 8 states have internal predecessors, (30), 4 states have call successors, (10), 5 states have call predecessors, (10), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) Word has length 53 [2022-04-28 04:10:42,104 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-28 04:10:42,104 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 2.727272727272727) internal successors, (30), 8 states have internal predecessors, (30), 4 states have call successors, (10), 5 states have call predecessors, (10), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 04:10:42,105 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 50 transitions. [2022-04-28 04:10:42,105 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 2.727272727272727) internal successors, (30), 8 states have internal predecessors, (30), 4 states have call successors, (10), 5 states have call predecessors, (10), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 04:10:42,106 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 50 transitions. [2022-04-28 04:10:42,106 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 50 transitions. [2022-04-28 04:10:42,143 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 50 edges. 50 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:10:42,143 INFO L225 Difference]: With dead ends: 49 [2022-04-28 04:10:42,143 INFO L226 Difference]: Without dead ends: 0 [2022-04-28 04:10:42,144 INFO L412 NwaCegarLoop]: 0 DeclaredPredicates, 138 GetRequests, 116 SyntacticMatches, 1 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 32 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=99, Invalid=407, Unknown=0, NotChecked=0, Total=506 [2022-04-28 04:10:42,144 INFO L413 NwaCegarLoop]: 27 mSDtfsCounter, 52 mSDsluCounter, 16 mSDsCounter, 0 mSdLazyCounter, 329 mSolverCounterSat, 31 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 54 SdHoareTripleChecker+Valid, 43 SdHoareTripleChecker+Invalid, 360 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 31 IncrementalHoareTripleChecker+Valid, 329 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-28 04:10:42,144 INFO L414 NwaCegarLoop]: SdHoareTripleChecker [54 Valid, 43 Invalid, 360 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [31 Valid, 329 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-28 04:10:42,145 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 0 states. [2022-04-28 04:10:42,145 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 0 to 0. [2022-04-28 04:10:42,145 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-28 04:10:42,145 INFO L82 GeneralOperation]: Start isEquivalent. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-28 04:10:42,145 INFO L74 IsIncluded]: Start isIncluded. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-28 04:10:42,145 INFO L87 Difference]: Start difference. First operand 0 states. Second operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-28 04:10:42,145 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:10:42,145 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-28 04:10:42,145 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-28 04:10:42,145 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:10:42,145 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:10:42,146 INFO L74 IsIncluded]: Start isIncluded. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-28 04:10:42,146 INFO L87 Difference]: Start difference. First operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 0 states. [2022-04-28 04:10:42,146 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-28 04:10:42,146 INFO L93 Difference]: Finished difference Result 0 states and 0 transitions. [2022-04-28 04:10:42,146 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-28 04:10:42,146 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:10:42,146 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-28 04:10:42,146 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-28 04:10:42,146 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-28 04:10:42,146 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 0 states, 0 states have (on average 0.0) internal successors, (0), 0 states have internal predecessors, (0), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-04-28 04:10:42,146 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 0 states to 0 states and 0 transitions. [2022-04-28 04:10:42,146 INFO L78 Accepts]: Start accepts. Automaton has 0 states and 0 transitions. Word has length 53 [2022-04-28 04:10:42,146 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-28 04:10:42,146 INFO L495 AbstractCegarLoop]: Abstraction has 0 states and 0 transitions. [2022-04-28 04:10:42,147 INFO L496 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 11 states have (on average 2.727272727272727) internal successors, (30), 8 states have internal predecessors, (30), 4 states have call successors, (10), 5 states have call predecessors, (10), 2 states have return successors, (7), 3 states have call predecessors, (7), 2 states have call successors, (7) [2022-04-28 04:10:42,147 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 0 states and 0 transitions. [2022-04-28 04:10:42,147 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 0 edges. 0 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-28 04:10:42,147 INFO L276 IsEmpty]: Start isEmpty. Operand 0 states and 0 transitions. [2022-04-28 04:10:42,147 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-28 04:10:42,149 INFO L805 garLoopResultBuilder]: Registering result SAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-28 04:10:42,184 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 04:10:42,354 WARN L477 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-28 04:10:42,356 INFO L343 DoubleDeckerVisitor]: Before removal of dead ends 0 states and 0 transitions. [2022-04-28 04:10:43,027 INFO L899 garLoopResultBuilder]: For program point reach_errorEXIT(line 11) no Hoare annotation was computed. [2022-04-28 04:10:43,027 INFO L899 garLoopResultBuilder]: For program point reach_errorENTRY(line 11) no Hoare annotation was computed. [2022-04-28 04:10:43,027 INFO L899 garLoopResultBuilder]: For program point reach_errorFINAL(line 11) no Hoare annotation was computed. [2022-04-28 04:10:43,027 INFO L902 garLoopResultBuilder]: At program point assume_abort_if_notENTRY(lines 5 7) the Hoare annotation is: true [2022-04-28 04:10:43,027 INFO L902 garLoopResultBuilder]: At program point L6(line 6) the Hoare annotation is: true [2022-04-28 04:10:43,027 INFO L902 garLoopResultBuilder]: At program point L6-2(lines 5 7) the Hoare annotation is: true [2022-04-28 04:10:43,027 INFO L902 garLoopResultBuilder]: At program point assume_abort_if_notEXIT(lines 5 7) the Hoare annotation is: true [2022-04-28 04:10:43,028 INFO L895 garLoopResultBuilder]: At program point mainENTRY(lines 35 49) the Hoare annotation is: (= |#memory_int| |old(#memory_int)|) [2022-04-28 04:10:43,028 INFO L895 garLoopResultBuilder]: At program point L45(line 45) the Hoare annotation is: (let ((.cse0 ((as const (Array Int Int)) 0))) (and (= (select |#memory_int| main_~a~0.base) .cse0) (or (<= main_~n~0 (+ main_~l~1 main_~y~0)) (<= main_~n~0 (+ main_~l~1 main_~x~0))) (= .cse0 (select |#memory_int| |main_#t~malloc15.base|)))) [2022-04-28 04:10:43,028 INFO L902 garLoopResultBuilder]: At program point mainFINAL(lines 35 49) the Hoare annotation is: true [2022-04-28 04:10:43,028 INFO L895 garLoopResultBuilder]: At program point L44(line 44) the Hoare annotation is: (let ((.cse0 ((as const (Array Int Int)) 0))) (and (= (select |#memory_int| main_~a~0.base) .cse0) (or (<= main_~n~0 (+ |main_#t~ret18| main_~x~0)) (<= main_~n~0 (+ |main_#t~ret18| main_~y~0))) (= .cse0 (select |#memory_int| |main_#t~malloc15.base|)))) [2022-04-28 04:10:43,028 INFO L902 garLoopResultBuilder]: At program point L45-1(line 45) the Hoare annotation is: true [2022-04-28 04:10:43,028 INFO L895 garLoopResultBuilder]: At program point L43(line 43) the Hoare annotation is: (let ((.cse0 ((as const (Array Int Int)) 0))) (and (= (select |#memory_int| main_~a~0.base) .cse0) (= .cse0 (select |#memory_int| |main_#t~malloc15.base|)))) [2022-04-28 04:10:43,028 INFO L895 garLoopResultBuilder]: At program point L43-1(line 43) the Hoare annotation is: (let ((.cse0 ((as const (Array Int Int)) 0))) (and (= (select |#memory_int| main_~a~0.base) .cse0) (= .cse0 (select |#memory_int| |main_#t~malloc15.base|)))) [2022-04-28 04:10:43,028 INFO L902 garLoopResultBuilder]: At program point mainEXIT(lines 35 49) the Hoare annotation is: true [2022-04-28 04:10:43,028 INFO L895 garLoopResultBuilder]: At program point L39(line 39) the Hoare annotation is: (= |#memory_int| |old(#memory_int)|) [2022-04-28 04:10:43,028 INFO L895 garLoopResultBuilder]: At program point L38(line 38) the Hoare annotation is: (= |#memory_int| |old(#memory_int)|) [2022-04-28 04:10:43,028 INFO L895 garLoopResultBuilder]: At program point L39-1(line 39) the Hoare annotation is: (= ((as const (Array Int Int)) 0) (select |#memory_int| |main_#t~malloc15.base|)) [2022-04-28 04:10:43,028 INFO L895 garLoopResultBuilder]: At program point L38-1(line 38) the Hoare annotation is: (= |#memory_int| |old(#memory_int)|) [2022-04-28 04:10:43,029 INFO L895 garLoopResultBuilder]: At program point L32(line 32) the Hoare annotation is: (or (not (= ((as const (Array Int Int)) 0) (select |#memory_int| |check_#in~a.base|))) (and (not (<= |check_#in~n| (+ |check_#in~x| |check_#in~l|))) (not (<= |check_#in~n| (+ |check_#in~y| |check_#in~l|))))) [2022-04-28 04:10:43,029 INFO L902 garLoopResultBuilder]: At program point checkENTRY(lines 24 33) the Hoare annotation is: true [2022-04-28 04:10:43,029 INFO L895 garLoopResultBuilder]: At program point L31(lines 31 32) the Hoare annotation is: (let ((.cse0 (not (= ((as const (Array Int Int)) 0) (select |#memory_int| |check_#in~a.base|))))) (and (or .cse0 (and (not (<= |check_#in~n| (+ |check_#in~x| |check_#in~l|))) (not (<= |check_#in~n| (+ |check_#in~y| |check_#in~l|)))) (let ((.cse1 (select |#memory_int| check_~a.base)) (.cse2 (* check_~i~0 4))) (and (or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x))) (= (select .cse1 (+ .cse2 (* 4 check_~x) check_~a.offset)) 0) (= (select .cse1 (+ .cse2 (* 4 check_~y) check_~a.offset)) 0)))) (or .cse0 (and (not (<= |check_#in~n| |check_#in~y|)) (not (<= |check_#in~n| |check_#in~x|))) (= check_~l 0) (not (= |check_#in~l| 0))))) [2022-04-28 04:10:43,029 INFO L902 garLoopResultBuilder]: At program point L32-1(line 32) the Hoare annotation is: true [2022-04-28 04:10:43,029 INFO L902 garLoopResultBuilder]: At program point L31-2(lines 24 33) the Hoare annotation is: true [2022-04-28 04:10:43,029 INFO L895 garLoopResultBuilder]: At program point L28(line 28) the Hoare annotation is: (let ((.cse0 (not (= ((as const (Array Int Int)) 0) (select |#memory_int| |check_#in~a.base|))))) (and (or .cse0 (and (not (<= |check_#in~n| (+ |check_#in~x| |check_#in~l|))) (not (<= |check_#in~n| (+ |check_#in~y| |check_#in~l|)))) (let ((.cse1 (select |#memory_int| check_~a.base)) (.cse2 (* check_~i~0 4))) (and (or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x))) (= |check_#t~mem11| |check_#t~mem10|) (= (select .cse1 (+ .cse2 (* 4 check_~x) check_~a.offset)) 0) (= (select .cse1 (+ .cse2 (* 4 check_~y) check_~a.offset)) 0)))) (or .cse0 (and (not (<= |check_#in~n| |check_#in~y|)) (not (<= |check_#in~n| |check_#in~x|))) (= check_~l 0) (not (= |check_#in~l| 0))))) [2022-04-28 04:10:43,030 INFO L895 garLoopResultBuilder]: At program point L27(line 27) the Hoare annotation is: (let ((.cse0 (not (= ((as const (Array Int Int)) 0) (select |#memory_int| |check_#in~a.base|))))) (and (or .cse0 (and (not (<= |check_#in~n| (+ |check_#in~x| |check_#in~l|))) (not (<= |check_#in~n| (+ |check_#in~y| |check_#in~l|)))) (let ((.cse1 (select |#memory_int| check_~a.base)) (.cse2 (* check_~i~0 4))) (and (or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x))) (= (select .cse1 (+ .cse2 (* 4 check_~x) check_~a.offset)) 0) (= (select .cse1 (+ .cse2 (* 4 check_~y) check_~a.offset)) 0)))) (or .cse0 (and (not (<= |check_#in~n| |check_#in~y|)) (not (<= |check_#in~n| |check_#in~x|))) (= check_~l 0) (not (= |check_#in~l| 0))))) [2022-04-28 04:10:43,030 INFO L895 garLoopResultBuilder]: At program point L28-1(line 28) the Hoare annotation is: (let ((.cse0 (not (= ((as const (Array Int Int)) 0) (select |#memory_int| |check_#in~a.base|))))) (and (or .cse0 (and (not (<= |check_#in~n| (+ |check_#in~x| |check_#in~l|))) (not (<= |check_#in~n| (+ |check_#in~y| |check_#in~l|)))) (let ((.cse1 (select |#memory_int| check_~a.base)) (.cse2 (* check_~i~0 4))) (and (or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x))) (= |check_#t~mem11| |check_#t~mem10|) (= (select .cse1 (+ .cse2 (* 4 check_~x) check_~a.offset)) 0) (= (select .cse1 (+ .cse2 (* 4 check_~y) check_~a.offset)) 0)))) (or .cse0 (and (not (<= |check_#in~n| |check_#in~y|)) (not (<= |check_#in~n| |check_#in~x|))) (= check_~l 0) (not (= |check_#in~l| 0))))) [2022-04-28 04:10:43,030 INFO L895 garLoopResultBuilder]: At program point L27-1(line 27) the Hoare annotation is: (let ((.cse0 (not (= ((as const (Array Int Int)) 0) (select |#memory_int| |check_#in~a.base|))))) (and (or .cse0 (and (not (<= |check_#in~n| (+ |check_#in~x| |check_#in~l|))) (not (<= |check_#in~n| (+ |check_#in~y| |check_#in~l|)))) (let ((.cse1 (select |#memory_int| check_~a.base)) (.cse2 (* check_~i~0 4))) (and (or (<= check_~n (+ check_~l check_~y)) (<= check_~n (+ check_~l check_~x))) (= (select .cse1 (+ .cse2 (* 4 check_~x) check_~a.offset)) 0) (= (select .cse1 (+ .cse2 (* 4 check_~y) check_~a.offset)) 0)))) (or .cse0 (and (not (<= |check_#in~n| |check_#in~y|)) (not (<= |check_#in~n| |check_#in~x|))) (= check_~l 0) (not (= |check_#in~l| 0))))) [2022-04-28 04:10:43,030 INFO L902 garLoopResultBuilder]: At program point checkEXIT(lines 24 33) the Hoare annotation is: true [2022-04-28 04:10:43,030 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.initFINAL(line -1) the Hoare annotation is: true [2022-04-28 04:10:43,030 INFO L895 garLoopResultBuilder]: At program point ULTIMATE.initENTRY(line -1) the Hoare annotation is: (and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|)) [2022-04-28 04:10:43,030 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.initEXIT(line -1) the Hoare annotation is: true [2022-04-28 04:10:43,030 INFO L895 garLoopResultBuilder]: At program point L18-1(line 18) the Hoare annotation is: (let ((.cse0 (= |lcp_#in~x| lcp_~x)) (.cse1 (= |lcp_#in~y| lcp_~y)) (.cse2 (= |lcp_#in~n| lcp_~n)) (.cse3 (= |lcp_#in~a.base| lcp_~a.base))) (or (and .cse0 .cse1 .cse2 .cse3 (or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))) (and |lcp_#t~short7| .cse0 .cse1 .cse2 .cse3))) [2022-04-28 04:10:43,030 INFO L895 garLoopResultBuilder]: At program point lcpFINAL(lines 16 22) the Hoare annotation is: (let ((.cse0 (= |lcp_#in~a.base| lcp_~a.base))) (or (and .cse0 (not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|)))) (and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n) (or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|))) .cse0 (or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))))) [2022-04-28 04:10:43,030 INFO L895 garLoopResultBuilder]: At program point L18-3(lines 18 20) the Hoare annotation is: (let ((.cse0 (= |lcp_#in~x| lcp_~x)) (.cse1 (= |lcp_#in~y| lcp_~y)) (.cse2 (= |lcp_#in~n| lcp_~n)) (.cse3 (= |lcp_#in~a.base| lcp_~a.base))) (or (and (or |lcp_#t~short7| (not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|)))) .cse0 .cse1 .cse2 .cse3) (and .cse0 .cse1 .cse2 .cse3 (or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))))) [2022-04-28 04:10:43,030 INFO L895 garLoopResultBuilder]: At program point L18-5(lines 18 20) the Hoare annotation is: (and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n) (= |lcp_#in~a.base| lcp_~a.base)) [2022-04-28 04:10:43,031 INFO L895 garLoopResultBuilder]: At program point L18-6(lines 18 20) the Hoare annotation is: (let ((.cse0 (= |lcp_#in~a.base| lcp_~a.base))) (or (and .cse0 (not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|)))) (and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n) .cse0 (or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))))) [2022-04-28 04:10:43,031 INFO L895 garLoopResultBuilder]: At program point lcpEXIT(lines 16 22) the Hoare annotation is: (let ((.cse0 (= |lcp_#in~a.base| lcp_~a.base))) (or (and .cse0 (not (= ((as const (Array Int Int)) 0) (select |#memory_int| |lcp_#in~a.base|)))) (and (= |lcp_#in~x| lcp_~x) (= |lcp_#in~y| lcp_~y) (= |lcp_#in~n| lcp_~n) (or (<= |lcp_#in~n| (+ |lcp_#in~x| |lcp_#res|)) (<= |lcp_#in~n| (+ |lcp_#in~y| |lcp_#res|))) .cse0 (or (<= |lcp_#in~n| (+ |lcp_#in~x| lcp_~l~0)) (<= |lcp_#in~n| (+ |lcp_#in~y| lcp_~l~0)))))) [2022-04-28 04:10:43,031 INFO L902 garLoopResultBuilder]: At program point lcpENTRY(lines 16 22) the Hoare annotation is: true [2022-04-28 04:10:43,031 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.startEXIT(line -1) the Hoare annotation is: true [2022-04-28 04:10:43,031 INFO L902 garLoopResultBuilder]: At program point L-1(line -1) the Hoare annotation is: true [2022-04-28 04:10:43,031 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.startENTRY(line -1) the Hoare annotation is: true [2022-04-28 04:10:43,031 INFO L902 garLoopResultBuilder]: At program point ULTIMATE.startFINAL(line -1) the Hoare annotation is: true [2022-04-28 04:10:43,031 INFO L902 garLoopResultBuilder]: At program point __VERIFIER_assertENTRY(lines 12 14) the Hoare annotation is: true [2022-04-28 04:10:43,031 INFO L895 garLoopResultBuilder]: At program point L13(line 13) the Hoare annotation is: (or (= |__VERIFIER_assert_#in~cond| 0) (not (= __VERIFIER_assert_~cond 0))) [2022-04-28 04:10:43,031 INFO L895 garLoopResultBuilder]: At program point L13-1(line 13) the Hoare annotation is: (= |__VERIFIER_assert_#in~cond| 0) [2022-04-28 04:10:43,031 INFO L895 garLoopResultBuilder]: At program point L13-3(lines 12 14) the Hoare annotation is: (or (= |__VERIFIER_assert_#in~cond| 0) (not (= __VERIFIER_assert_~cond 0))) [2022-04-28 04:10:43,031 INFO L895 garLoopResultBuilder]: At program point __VERIFIER_assertEXIT(lines 12 14) the Hoare annotation is: (or (= |__VERIFIER_assert_#in~cond| 0) (not (= __VERIFIER_assert_~cond 0))) [2022-04-28 04:10:43,031 INFO L895 garLoopResultBuilder]: At program point __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION(line 13) the Hoare annotation is: (= |__VERIFIER_assert_#in~cond| 0) [2022-04-28 04:10:43,031 INFO L895 garLoopResultBuilder]: At program point #Ultimate.meminitENTRY(line -1) the Hoare annotation is: (= |#memory_int| |old(#memory_int)|) [2022-04-28 04:10:43,032 INFO L895 garLoopResultBuilder]: At program point #Ultimate.meminitEXIT(line -1) the Hoare annotation is: (= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|)) [2022-04-28 04:10:43,032 INFO L895 garLoopResultBuilder]: At program point #Ultimate.meminitFINAL(line -1) the Hoare annotation is: (= ((as const (Array Int Int)) 0) (select |#memory_int| |#Ultimate.meminit_#ptr.base|)) [2022-04-28 04:10:43,033 INFO L356 BasicCegarLoop]: Path program histogram: [2, 2, 2, 2, 2] [2022-04-28 04:10:43,035 INFO L176 ceAbstractionStarter]: Computing trace abstraction results [2022-04-28 04:10:43,036 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-28 04:10:43,041 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-28 04:10:43,064 INFO L163 areAnnotationChecker]: CFG has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-28 04:10:43,071 FATAL L? ?]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction has thrown an exception: java.lang.IllegalArgumentException: unknown symbol (const Int (Array Int Int)) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.boogie.Term2Expression.translate(Term2Expression.java:262) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.boogie.Term2Expression.translate(Term2Expression.java:135) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.boogie.Term2Expression.translate(Term2Expression.java:171) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.boogie.Term2Expression.translate(Term2Expression.java:135) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.boogie.Term2Expression.translate(Term2Expression.java:171) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.boogie.Term2Expression.translate(Term2Expression.java:135) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.boogie.Term2Expression.translate(Term2Expression.java:171) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.boogie.Term2Expression.translate(Term2Expression.java:135) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.boogie.Term2Expression.translate(Term2Expression.java:171) at de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.boogie.Term2Expression.translate(Term2Expression.java:135) at de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder.RCFGBacktranslator.translateExpression(RCFGBacktranslator.java:394) at de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder.RCFGBacktranslator.translateExpression(RCFGBacktranslator.java:1) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ModelTranslationContainer.translateExpression(ModelTranslationContainer.java:106) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ModelTranslationContainer.translateExpressionToString(ModelTranslationContainer.java:89) at de.uni_freiburg.informatik.ultimate.core.lib.results.ProcedureContractResult.getLongDescription(ProcedureContractResult.java:74) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ResultService.reportResult(ResultService.java:86) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.CegarLoopResultReporter.reportResult(CegarLoopResultReporter.java:140) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.createProcedureContractResults(TraceAbstractionStarter.java:474) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.runCegarLoops(TraceAbstractionStarter.java:190) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.(TraceAbstractionStarter.java:152) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver.finish(TraceAbstractionObserver.java:123) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:168) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:151) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:128) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:232) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:226) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:142) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:104) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:320) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) [2022-04-28 04:10:43,076 INFO L158 Benchmark]: Toolchain (without parser) took 9898.48ms. Allocated memory was 203.4MB in the beginning and 316.7MB in the end (delta: 113.2MB). Free memory was 149.6MB in the beginning and 161.9MB in the end (delta: -12.2MB). Peak memory consumption was 100.3MB. Max. memory is 8.0GB. [2022-04-28 04:10:43,077 INFO L158 Benchmark]: CDTParser took 0.10ms. Allocated memory is still 203.4MB. Free memory was 166.3MB in the beginning and 166.1MB in the end (delta: 143.3kB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-28 04:10:43,077 INFO L158 Benchmark]: CACSL2BoogieTranslator took 230.97ms. Allocated memory is still 203.4MB. Free memory was 149.3MB in the beginning and 172.5MB in the end (delta: -23.2MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-28 04:10:43,077 INFO L158 Benchmark]: Boogie Preprocessor took 39.78ms. Allocated memory is still 203.4MB. Free memory was 172.5MB in the beginning and 170.6MB in the end (delta: 1.9MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-28 04:10:43,077 INFO L158 Benchmark]: RCFGBuilder took 335.81ms. Allocated memory is still 203.4MB. Free memory was 170.6MB in the beginning and 156.0MB in the end (delta: 14.7MB). Peak memory consumption was 14.7MB. Max. memory is 8.0GB. [2022-04-28 04:10:43,077 INFO L158 Benchmark]: TraceAbstraction took 9288.65ms. Allocated memory was 203.4MB in the beginning and 316.7MB in the end (delta: 113.2MB). Free memory was 155.3MB in the beginning and 161.9MB in the end (delta: -6.5MB). Peak memory consumption was 107.1MB. Max. memory is 8.0GB. [2022-04-28 04:10:43,078 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.10ms. Allocated memory is still 203.4MB. Free memory was 166.3MB in the beginning and 166.1MB in the end (delta: 143.3kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 230.97ms. Allocated memory is still 203.4MB. Free memory was 149.3MB in the beginning and 172.5MB in the end (delta: -23.2MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * Boogie Preprocessor took 39.78ms. Allocated memory is still 203.4MB. Free memory was 172.5MB in the beginning and 170.6MB in the end (delta: 1.9MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 335.81ms. Allocated memory is still 203.4MB. Free memory was 170.6MB in the beginning and 156.0MB in the end (delta: 14.7MB). Peak memory consumption was 14.7MB. Max. memory is 8.0GB. * TraceAbstraction took 9288.65ms. Allocated memory was 203.4MB in the beginning and 316.7MB in the end (delta: 113.2MB). Free memory was 155.3MB in the beginning and 161.9MB in the end (delta: -6.5MB). Peak memory consumption was 107.1MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - PositiveResult [Line: 13]: call to reach_error is unreachable For all program executions holds that call to reach_error is unreachable at this location - StatisticsResult: Ultimate Automizer benchmark data CFG has 9 procedures, 52 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 9.2s, OverallIterations: 5, TraceHistogramMax: 3, PathProgramHistogramMax: 2, EmptinessCheckTime: 0.0s, AutomataDifference: 3.8s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.7s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 322 SdHoareTripleChecker+Valid, 1.3s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 314 mSDsluCounter, 219 SdHoareTripleChecker+Invalid, 1.3s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 60 mSDsCounter, 179 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 1335 IncrementalHoareTripleChecker+Invalid, 1514 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 179 mSolverCounterUnsat, 159 mSDtfsCounter, 1335 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 249 GetRequests, 170 SyntacticMatches, 1 SemanticMatches, 78 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 115 ImplicationChecksByTransitivity, 0.7s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=49occurred in iteration=0, InterpolantAutomatonStates: 54, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.1s AutomataMinimizationTime, 5 MinimizatonAttempts, 2 StatesRemovedByMinimization, 1 NontrivialMinimizations, HoareAnnotationStatistics: 0.0s HoareAnnotationTime, 49 LocationsWithAnnotation, 155 PreInvPairs, 223 NumberOfFragments, 849 HoareAnnotationTreeSize, 155 FomulaSimplifications, 0 FormulaSimplificationTreeSizeReduction, 0.0s HoareSimplificationTime, 49 FomulaSimplificationsInter, 842 FormulaSimplificationTreeSizeReductionInter, 0.6s HoareSimplificationTimeInter, RefinementEngineStatistics: TRACE_CHECK: No data available, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available - AllSpecificationsHoldResult: All specifications hold 1 specifications checked. All of them hold - InvariantResult [Line: 18]: Loop Invariant Derived loop invariant: ((\old(x) == x && \old(y) == y) && \old(n) == n) && a == a - ExceptionOrErrorResult: IllegalArgumentException: unknown symbol (const Int (Array Int Int)) de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: IllegalArgumentException: unknown symbol (const Int (Array Int Int)): de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.boogie.Term2Expression.translate(Term2Expression.java:262) RESULT: Ultimate could not prove your program: Toolchain returned no result. [2022-04-28 04:10:43,104 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request...