/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/acceleratedInterpolationQvasr_64.epf -i ../../../trunk/examples/svcomp/loops-crafted-1/in-de31.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-e106359-m [2022-04-15 12:48:04,417 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-15 12:48:04,430 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-15 12:48:04,478 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-15 12:48:04,479 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-15 12:48:04,480 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-15 12:48:04,482 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-15 12:48:04,487 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-15 12:48:04,489 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-15 12:48:04,492 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-15 12:48:04,493 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-15 12:48:04,494 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-15 12:48:04,494 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-15 12:48:04,494 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-15 12:48:04,495 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-15 12:48:04,497 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-15 12:48:04,497 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-15 12:48:04,498 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-15 12:48:04,500 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-15 12:48:04,504 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-15 12:48:04,504 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-15 12:48:04,505 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-15 12:48:04,506 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-15 12:48:04,507 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-15 12:48:04,507 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-15 12:48:04,512 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-15 12:48:04,512 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-15 12:48:04,512 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-15 12:48:04,513 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-15 12:48:04,514 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-15 12:48:04,515 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-15 12:48:04,515 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-15 12:48:04,516 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-15 12:48:04,517 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-15 12:48:04,517 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-15 12:48:04,518 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-15 12:48:04,518 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-15 12:48:04,519 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-15 12:48:04,519 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-15 12:48:04,519 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-15 12:48:04,520 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-15 12:48:04,521 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-15 12:48:04,521 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationQvasr_64.epf [2022-04-15 12:48:04,531 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-15 12:48:04,531 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-15 12:48:04,532 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-15 12:48:04,532 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-15 12:48:04,533 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-15 12:48:04,533 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-15 12:48:04,533 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-15 12:48:04,533 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-15 12:48:04,533 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-15 12:48:04,534 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-15 12:48:04,534 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-15 12:48:04,534 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-15 12:48:04,534 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-15 12:48:04,534 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-15 12:48:04,534 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-15 12:48:04,534 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 12:48:04,535 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-15 12:48:04,535 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-15 12:48:04,535 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-15 12:48:04,535 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-15 12:48:04,535 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-15 12:48:04,535 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=QVASR [2022-04-15 12:48:04,535 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-15 12:48:04,739 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-15 12:48:04,757 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-15 12:48:04,759 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-15 12:48:04,759 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-15 12:48:04,761 INFO L275 PluginConnector]: CDTParser initialized [2022-04-15 12:48:04,761 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/loops-crafted-1/in-de31.c [2022-04-15 12:48:04,806 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/809d63c0b/0c67f82dfc8c4bbbab38e02accc4deca/FLAG5e899f884 [2022-04-15 12:48:05,144 INFO L306 CDTParser]: Found 1 translation units. [2022-04-15 12:48:05,145 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/loops-crafted-1/in-de31.c [2022-04-15 12:48:05,148 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/809d63c0b/0c67f82dfc8c4bbbab38e02accc4deca/FLAG5e899f884 [2022-04-15 12:48:05,568 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/809d63c0b/0c67f82dfc8c4bbbab38e02accc4deca [2022-04-15 12:48:05,570 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-15 12:48:05,571 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-15 12:48:05,572 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-15 12:48:05,572 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-15 12:48:05,574 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-15 12:48:05,574 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 12:48:05" (1/1) ... [2022-04-15 12:48:05,575 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1e592cf3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 12:48:05, skipping insertion in model container [2022-04-15 12:48:05,575 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 12:48:05" (1/1) ... [2022-04-15 12:48:05,579 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-15 12:48:05,586 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-15 12:48:05,731 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/loops-crafted-1/in-de31.c[368,381] [2022-04-15 12:48:05,752 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 12:48:05,758 INFO L203 MainTranslator]: Completed pre-run [2022-04-15 12:48:05,766 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/loops-crafted-1/in-de31.c[368,381] [2022-04-15 12:48:05,770 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 12:48:05,781 INFO L208 MainTranslator]: Completed translation [2022-04-15 12:48:05,782 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 12:48:05 WrapperNode [2022-04-15 12:48:05,782 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-15 12:48:05,783 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-15 12:48:05,783 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-15 12:48:05,783 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-15 12:48:05,790 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 12:48:05" (1/1) ... [2022-04-15 12:48:05,790 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 12:48:05" (1/1) ... [2022-04-15 12:48:05,795 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 12:48:05" (1/1) ... [2022-04-15 12:48:05,795 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 12:48:05" (1/1) ... [2022-04-15 12:48:05,805 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 12:48:05" (1/1) ... [2022-04-15 12:48:05,809 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 12:48:05" (1/1) ... [2022-04-15 12:48:05,814 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 12:48:05" (1/1) ... [2022-04-15 12:48:05,816 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-15 12:48:05,817 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-15 12:48:05,818 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-15 12:48:05,818 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-15 12:48:05,818 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 12:48:05" (1/1) ... [2022-04-15 12:48:05,824 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 12:48:05,831 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 12:48:05,849 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-15 12:48:05,866 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-15 12:48:05,882 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-15 12:48:05,882 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-15 12:48:05,882 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-15 12:48:05,882 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-15 12:48:05,882 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-15 12:48:05,882 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-15 12:48:05,882 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-15 12:48:05,882 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-15 12:48:05,882 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-15 12:48:05,883 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_uint [2022-04-15 12:48:05,883 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-15 12:48:05,883 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-15 12:48:05,883 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-15 12:48:05,883 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-15 12:48:05,884 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-15 12:48:05,884 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-15 12:48:05,884 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-15 12:48:05,884 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-15 12:48:05,932 INFO L234 CfgBuilder]: Building ICFG [2022-04-15 12:48:05,933 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-15 12:48:06,106 INFO L275 CfgBuilder]: Performing block encoding [2022-04-15 12:48:06,110 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-15 12:48:06,110 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-04-15 12:48:06,111 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 12:48:06 BoogieIcfgContainer [2022-04-15 12:48:06,111 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-15 12:48:06,112 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-15 12:48:06,112 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-15 12:48:06,142 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-15 12:48:06,142 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 15.04 12:48:05" (1/3) ... [2022-04-15 12:48:06,143 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1d4c99d0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 12:48:06, skipping insertion in model container [2022-04-15 12:48:06,143 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 12:48:05" (2/3) ... [2022-04-15 12:48:06,143 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1d4c99d0 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 12:48:06, skipping insertion in model container [2022-04-15 12:48:06,143 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 12:48:06" (3/3) ... [2022-04-15 12:48:06,144 INFO L111 eAbstractionObserver]: Analyzing ICFG in-de31.c [2022-04-15 12:48:06,147 INFO L202 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-15 12:48:06,147 INFO L161 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-15 12:48:06,173 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-15 12:48:06,177 INFO L340 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 [2022-04-15 12:48:06,177 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-15 12:48:06,190 INFO L276 IsEmpty]: Start isEmpty. Operand has 22 states, 14 states have (on average 1.5714285714285714) internal successors, (22), 15 states have internal predecessors, (22), 3 states have call successors, (3), 3 states have call predecessors, (3), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-15 12:48:06,194 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 15 [2022-04-15 12:48:06,195 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 12:48:06,195 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 12:48:06,195 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 12:48:06,198 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 12:48:06,199 INFO L85 PathProgramCache]: Analyzing trace with hash 1792812365, now seen corresponding path program 1 times [2022-04-15 12:48:06,203 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 12:48:06,204 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1884785010] [2022-04-15 12:48:06,210 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 12:48:06,211 INFO L85 PathProgramCache]: Analyzing trace with hash 1792812365, now seen corresponding path program 2 times [2022-04-15 12:48:06,213 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 12:48:06,213 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [140417617] [2022-04-15 12:48:06,213 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:48:06,214 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 12:48:06,302 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:48:06,572 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 12:48:06,575 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:48:06,586 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#(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(10, 2);call #Ultimate.allocInit(12, 3); {25#true} is VALID [2022-04-15 12:48:06,587 INFO L290 TraceCheckUtils]: 1: Hoare triple {25#true} assume true; {25#true} is VALID [2022-04-15 12:48:06,587 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {25#true} {25#true} #61#return; {25#true} is VALID [2022-04-15 12:48:06,589 INFO L272 TraceCheckUtils]: 0: Hoare triple {25#true} call ULTIMATE.init(); {35#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 12:48:06,589 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#(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(10, 2);call #Ultimate.allocInit(12, 3); {25#true} is VALID [2022-04-15 12:48:06,589 INFO L290 TraceCheckUtils]: 2: Hoare triple {25#true} assume true; {25#true} is VALID [2022-04-15 12:48:06,589 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {25#true} {25#true} #61#return; {25#true} is VALID [2022-04-15 12:48:06,589 INFO L272 TraceCheckUtils]: 4: Hoare triple {25#true} call #t~ret11 := main(); {25#true} is VALID [2022-04-15 12:48:06,590 INFO L290 TraceCheckUtils]: 5: Hoare triple {25#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {30#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} is VALID [2022-04-15 12:48:06,591 INFO L290 TraceCheckUtils]: 6: Hoare triple {30#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} assume !(~x~0 % 4294967296 > 0); {31#(and (<= main_~n~0 (* (div main_~n~0 4294967296) 4294967296)) (= main_~y~0 0))} is VALID [2022-04-15 12:48:06,592 INFO L290 TraceCheckUtils]: 7: Hoare triple {31#(and (<= main_~n~0 (* (div main_~n~0 4294967296) 4294967296)) (= main_~y~0 0))} ~z~0 := ~y~0; {32#(and (= main_~z~0 0) (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)))} is VALID [2022-04-15 12:48:06,592 INFO L290 TraceCheckUtils]: 8: Hoare triple {32#(and (= main_~z~0 0) (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)))} assume !(~z~0 % 4294967296 > 0); {32#(and (= main_~z~0 0) (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)))} is VALID [2022-04-15 12:48:06,593 INFO L290 TraceCheckUtils]: 9: Hoare triple {32#(and (= main_~z~0 0) (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)))} assume !(~y~0 % 4294967296 > 0); {32#(and (= main_~z~0 0) (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)))} is VALID [2022-04-15 12:48:06,594 INFO L272 TraceCheckUtils]: 10: Hoare triple {32#(and (= main_~z~0 0) (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)))} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {33#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 12:48:06,595 INFO L290 TraceCheckUtils]: 11: Hoare triple {33#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {34#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 12:48:06,595 INFO L290 TraceCheckUtils]: 12: Hoare triple {34#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {26#false} is VALID [2022-04-15 12:48:06,595 INFO L290 TraceCheckUtils]: 13: Hoare triple {26#false} assume !false; {26#false} is VALID [2022-04-15 12:48:06,596 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:48:06,596 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 12:48:06,596 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [140417617] [2022-04-15 12:48:06,597 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [140417617] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 12:48:06,597 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 12:48:06,597 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-15 12:48:06,599 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 12:48:06,600 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1884785010] [2022-04-15 12:48:06,600 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1884785010] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 12:48:06,600 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 12:48:06,600 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-15 12:48:06,600 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [128421675] [2022-04-15 12:48:06,601 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 12:48:06,604 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 1.25) internal successors, (10), 6 states have internal predecessors, (10), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 14 [2022-04-15 12:48:06,605 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 12:48:06,608 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 1.25) internal successors, (10), 6 states have internal predecessors, (10), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:06,645 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 14 edges. 14 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:48:06,645 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-15 12:48:06,645 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 12:48:06,661 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-15 12:48:06,662 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=13, Invalid=43, Unknown=0, NotChecked=0, Total=56 [2022-04-15 12:48:06,664 INFO L87 Difference]: Start difference. First operand has 22 states, 14 states have (on average 1.5714285714285714) internal successors, (22), 15 states have internal predecessors, (22), 3 states have call successors, (3), 3 states have call predecessors, (3), 3 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand has 8 states, 8 states have (on average 1.25) internal successors, (10), 6 states have internal predecessors, (10), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:07,154 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:48:07,154 INFO L93 Difference]: Finished difference Result 49 states and 68 transitions. [2022-04-15 12:48:07,155 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-15 12:48:07,155 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 1.25) internal successors, (10), 6 states have internal predecessors, (10), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 14 [2022-04-15 12:48:07,155 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 12:48:07,156 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 1.25) internal successors, (10), 6 states have internal predecessors, (10), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:07,168 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 68 transitions. [2022-04-15 12:48:07,169 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 1.25) internal successors, (10), 6 states have internal predecessors, (10), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:07,177 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 68 transitions. [2022-04-15 12:48:07,177 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 68 transitions. [2022-04-15 12:48:07,234 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-15 12:48:07,239 INFO L225 Difference]: With dead ends: 49 [2022-04-15 12:48:07,239 INFO L226 Difference]: Without dead ends: 16 [2022-04-15 12:48:07,241 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 16 GetRequests, 4 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=46, Invalid=136, Unknown=0, NotChecked=0, Total=182 [2022-04-15 12:48:07,244 INFO L913 BasicCegarLoop]: 16 mSDtfsCounter, 43 mSDsluCounter, 33 mSDsCounter, 0 mSdLazyCounter, 100 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 44 SdHoareTripleChecker+Valid, 49 SdHoareTripleChecker+Invalid, 111 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 100 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-15 12:48:07,244 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [44 Valid, 49 Invalid, 111 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 100 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-15 12:48:07,256 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 16 states. [2022-04-15 12:48:07,264 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 16 to 16. [2022-04-15 12:48:07,264 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 12:48:07,264 INFO L82 GeneralOperation]: Start isEquivalent. First operand 16 states. Second operand has 16 states, 11 states have (on average 1.2727272727272727) internal successors, (14), 11 states have internal predecessors, (14), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:07,265 INFO L74 IsIncluded]: Start isIncluded. First operand 16 states. Second operand has 16 states, 11 states have (on average 1.2727272727272727) internal successors, (14), 11 states have internal predecessors, (14), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:07,265 INFO L87 Difference]: Start difference. First operand 16 states. Second operand has 16 states, 11 states have (on average 1.2727272727272727) internal successors, (14), 11 states have internal predecessors, (14), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:07,266 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:48:07,266 INFO L93 Difference]: Finished difference Result 16 states and 18 transitions. [2022-04-15 12:48:07,266 INFO L276 IsEmpty]: Start isEmpty. Operand 16 states and 18 transitions. [2022-04-15 12:48:07,267 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:48:07,267 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:48:07,267 INFO L74 IsIncluded]: Start isIncluded. First operand has 16 states, 11 states have (on average 1.2727272727272727) internal successors, (14), 11 states have internal predecessors, (14), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 16 states. [2022-04-15 12:48:07,267 INFO L87 Difference]: Start difference. First operand has 16 states, 11 states have (on average 1.2727272727272727) internal successors, (14), 11 states have internal predecessors, (14), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 16 states. [2022-04-15 12:48:07,268 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:48:07,268 INFO L93 Difference]: Finished difference Result 16 states and 18 transitions. [2022-04-15 12:48:07,268 INFO L276 IsEmpty]: Start isEmpty. Operand 16 states and 18 transitions. [2022-04-15 12:48:07,269 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:48:07,269 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:48:07,269 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 12:48:07,269 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 12:48:07,269 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 11 states have (on average 1.2727272727272727) internal successors, (14), 11 states have internal predecessors, (14), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:07,270 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 16 states to 16 states and 18 transitions. [2022-04-15 12:48:07,271 INFO L78 Accepts]: Start accepts. Automaton has 16 states and 18 transitions. Word has length 14 [2022-04-15 12:48:07,271 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 12:48:07,271 INFO L478 AbstractCegarLoop]: Abstraction has 16 states and 18 transitions. [2022-04-15 12:48:07,271 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 1.25) internal successors, (10), 6 states have internal predecessors, (10), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:07,272 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 16 states and 18 transitions. [2022-04-15 12:48:07,286 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:48:07,286 INFO L276 IsEmpty]: Start isEmpty. Operand 16 states and 18 transitions. [2022-04-15 12:48:07,286 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 16 [2022-04-15 12:48:07,286 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 12:48:07,287 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 12:48:07,287 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-15 12:48:07,287 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 12:48:07,287 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 12:48:07,288 INFO L85 PathProgramCache]: Analyzing trace with hash 595464366, now seen corresponding path program 1 times [2022-04-15 12:48:07,288 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 12:48:07,288 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [855079048] [2022-04-15 12:48:10,349 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-15 12:48:10,351 INFO L85 PathProgramCache]: Analyzing trace with hash -1152508211, now seen corresponding path program 1 times [2022-04-15 12:48:10,351 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 12:48:10,352 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [206221975] [2022-04-15 12:48:10,352 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:48:10,352 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 12:48:10,389 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:48:10,696 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 12:48:10,702 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:48:10,718 INFO L290 TraceCheckUtils]: 0: Hoare triple {225#(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(10, 2);call #Ultimate.allocInit(12, 3); {212#true} is VALID [2022-04-15 12:48:10,718 INFO L290 TraceCheckUtils]: 1: Hoare triple {212#true} assume true; {212#true} is VALID [2022-04-15 12:48:10,718 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {212#true} {212#true} #61#return; {212#true} is VALID [2022-04-15 12:48:10,719 INFO L272 TraceCheckUtils]: 0: Hoare triple {212#true} call ULTIMATE.init(); {225#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 12:48:10,720 INFO L290 TraceCheckUtils]: 1: Hoare triple {225#(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(10, 2);call #Ultimate.allocInit(12, 3); {212#true} is VALID [2022-04-15 12:48:10,720 INFO L290 TraceCheckUtils]: 2: Hoare triple {212#true} assume true; {212#true} is VALID [2022-04-15 12:48:10,720 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {212#true} {212#true} #61#return; {212#true} is VALID [2022-04-15 12:48:10,720 INFO L272 TraceCheckUtils]: 4: Hoare triple {212#true} call #t~ret11 := main(); {212#true} is VALID [2022-04-15 12:48:10,720 INFO L290 TraceCheckUtils]: 5: Hoare triple {212#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {217#(and (= main_~n~0 main_~x~0) (= main_~y~0 0))} is VALID [2022-04-15 12:48:10,722 INFO L290 TraceCheckUtils]: 6: Hoare triple {217#(and (= main_~n~0 main_~x~0) (= main_~y~0 0))} [65] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~y~0_In_1 v_main_~y~0_Out_2) (= v_main_~x~0_In_1 v_main_~x~0_Out_2)) (and (= 0 |v_main_#t~post6_Out_2|) (< 0 (mod (+ v_main_~x~0_Out_2 1) 4294967296)) (= |v_main_#t~post5_Out_2| 0) (= (+ v_main_~x~0_In_1 v_main_~y~0_In_1) (+ v_main_~x~0_Out_2 v_main_~y~0_Out_2)) (<= v_main_~x~0_Out_2 v_main_~x~0_In_1))) InVars {main_~x~0=v_main_~x~0_In_1, main_~y~0=v_main_~y~0_In_1} OutVars{main_~y~0=v_main_~y~0_Out_2, main_#t~post5=|v_main_#t~post5_Out_2|, main_~x~0=v_main_~x~0_Out_2, main_#t~post6=|v_main_#t~post6_Out_2|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {218#(or (= main_~n~0 main_~x~0) (and (<= (+ (div main_~y~0 4294967296) (div main_~x~0 4294967296)) (div main_~n~0 4294967296)) (<= main_~n~0 (+ main_~y~0 main_~x~0))))} is VALID [2022-04-15 12:48:10,724 INFO L290 TraceCheckUtils]: 7: Hoare triple {218#(or (= main_~n~0 main_~x~0) (and (<= (+ (div main_~y~0 4294967296) (div main_~x~0 4294967296)) (div main_~n~0 4294967296)) (<= main_~n~0 (+ main_~y~0 main_~x~0))))} [64] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {219#(<= (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)))} is VALID [2022-04-15 12:48:10,724 INFO L290 TraceCheckUtils]: 8: Hoare triple {219#(<= (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)))} ~z~0 := ~y~0; {220#(or (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:48:10,725 INFO L290 TraceCheckUtils]: 9: Hoare triple {220#(or (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296))))} assume !(~z~0 % 4294967296 > 0); {221#(and (<= (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 main_~y~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:48:10,726 INFO L290 TraceCheckUtils]: 10: Hoare triple {221#(and (<= (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 main_~y~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} assume !(~y~0 % 4294967296 > 0); {222#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:48:10,727 INFO L272 TraceCheckUtils]: 11: Hoare triple {222#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {223#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 12:48:10,727 INFO L290 TraceCheckUtils]: 12: Hoare triple {223#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {224#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 12:48:10,728 INFO L290 TraceCheckUtils]: 13: Hoare triple {224#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {213#false} is VALID [2022-04-15 12:48:10,728 INFO L290 TraceCheckUtils]: 14: Hoare triple {213#false} assume !false; {213#false} is VALID [2022-04-15 12:48:10,729 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:48:10,729 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 12:48:10,731 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [206221975] [2022-04-15 12:48:10,731 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [206221975] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 12:48:10,731 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 12:48:10,732 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-15 12:48:10,829 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 12:48:10,829 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [855079048] [2022-04-15 12:48:10,830 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [855079048] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 12:48:10,830 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 12:48:10,830 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-15 12:48:10,830 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [25317893] [2022-04-15 12:48:10,830 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 12:48:10,832 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 1.1) internal successors, (11), 9 states have internal predecessors, (11), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 15 [2022-04-15 12:48:10,832 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 12:48:10,832 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 10 states have (on average 1.1) internal successors, (11), 9 states have internal predecessors, (11), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:10,847 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 15 edges. 15 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:48:10,847 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-15 12:48:10,848 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 12:48:10,848 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-15 12:48:10,849 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=126, Unknown=0, NotChecked=0, Total=156 [2022-04-15 12:48:10,849 INFO L87 Difference]: Start difference. First operand 16 states and 18 transitions. Second operand has 11 states, 10 states have (on average 1.1) internal successors, (11), 9 states have internal predecessors, (11), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:11,488 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:48:11,489 INFO L93 Difference]: Finished difference Result 25 states and 29 transitions. [2022-04-15 12:48:11,489 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-15 12:48:11,489 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 10 states have (on average 1.1) internal successors, (11), 9 states have internal predecessors, (11), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 15 [2022-04-15 12:48:11,489 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 12:48:11,489 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 1.1) internal successors, (11), 9 states have internal predecessors, (11), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:11,490 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 29 transitions. [2022-04-15 12:48:11,490 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 10 states have (on average 1.1) internal successors, (11), 9 states have internal predecessors, (11), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:11,491 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 29 transitions. [2022-04-15 12:48:11,491 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 29 transitions. [2022-04-15 12:48:11,533 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 29 edges. 29 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:48:11,534 INFO L225 Difference]: With dead ends: 25 [2022-04-15 12:48:11,534 INFO L226 Difference]: Without dead ends: 19 [2022-04-15 12:48:11,535 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 25 GetRequests, 4 SyntacticMatches, 0 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 74 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=107, Invalid=399, Unknown=0, NotChecked=0, Total=506 [2022-04-15 12:48:11,535 INFO L913 BasicCegarLoop]: 10 mSDtfsCounter, 31 mSDsluCounter, 32 mSDsCounter, 0 mSdLazyCounter, 79 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 42 SdHoareTripleChecker+Invalid, 90 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 79 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 12:48:11,536 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [31 Valid, 42 Invalid, 90 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 79 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 12:48:11,536 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 19 states. [2022-04-15 12:48:11,547 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 19 to 17. [2022-04-15 12:48:11,547 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 12:48:11,548 INFO L82 GeneralOperation]: Start isEquivalent. First operand 19 states. Second operand has 17 states, 12 states have (on average 1.25) internal successors, (15), 12 states have internal predecessors, (15), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:11,548 INFO L74 IsIncluded]: Start isIncluded. First operand 19 states. Second operand has 17 states, 12 states have (on average 1.25) internal successors, (15), 12 states have internal predecessors, (15), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:11,548 INFO L87 Difference]: Start difference. First operand 19 states. Second operand has 17 states, 12 states have (on average 1.25) internal successors, (15), 12 states have internal predecessors, (15), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:11,549 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:48:11,549 INFO L93 Difference]: Finished difference Result 19 states and 22 transitions. [2022-04-15 12:48:11,549 INFO L276 IsEmpty]: Start isEmpty. Operand 19 states and 22 transitions. [2022-04-15 12:48:11,549 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:48:11,549 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:48:11,549 INFO L74 IsIncluded]: Start isIncluded. First operand has 17 states, 12 states have (on average 1.25) internal successors, (15), 12 states have internal predecessors, (15), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 19 states. [2022-04-15 12:48:11,550 INFO L87 Difference]: Start difference. First operand has 17 states, 12 states have (on average 1.25) internal successors, (15), 12 states have internal predecessors, (15), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 19 states. [2022-04-15 12:48:11,550 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:48:11,550 INFO L93 Difference]: Finished difference Result 19 states and 22 transitions. [2022-04-15 12:48:11,551 INFO L276 IsEmpty]: Start isEmpty. Operand 19 states and 22 transitions. [2022-04-15 12:48:11,551 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:48:11,551 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:48:11,551 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 12:48:11,551 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 12:48:11,551 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 12 states have (on average 1.25) internal successors, (15), 12 states have internal predecessors, (15), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:11,552 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 19 transitions. [2022-04-15 12:48:11,552 INFO L78 Accepts]: Start accepts. Automaton has 17 states and 19 transitions. Word has length 15 [2022-04-15 12:48:11,552 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 12:48:11,552 INFO L478 AbstractCegarLoop]: Abstraction has 17 states and 19 transitions. [2022-04-15 12:48:11,552 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 10 states have (on average 1.1) internal successors, (11), 9 states have internal predecessors, (11), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:11,552 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 17 states and 19 transitions. [2022-04-15 12:48:11,584 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 19 edges. 19 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:48:11,584 INFO L276 IsEmpty]: Start isEmpty. Operand 17 states and 19 transitions. [2022-04-15 12:48:11,584 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2022-04-15 12:48:11,584 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 12:48:11,584 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 12:48:11,585 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-04-15 12:48:11,585 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 12:48:11,585 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 12:48:11,585 INFO L85 PathProgramCache]: Analyzing trace with hash 1314021247, now seen corresponding path program 1 times [2022-04-15 12:48:11,585 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 12:48:11,585 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1669816857] [2022-04-15 12:48:11,753 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-15 12:48:11,754 INFO L85 PathProgramCache]: Analyzing trace with hash -1046489728, now seen corresponding path program 1 times [2022-04-15 12:48:11,754 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 12:48:11,754 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [809595504] [2022-04-15 12:48:11,754 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:48:11,754 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 12:48:11,788 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:48:11,842 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 12:48:11,844 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:48:11,847 INFO L290 TraceCheckUtils]: 0: Hoare triple {379#(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(10, 2);call #Ultimate.allocInit(12, 3); {372#true} is VALID [2022-04-15 12:48:11,847 INFO L290 TraceCheckUtils]: 1: Hoare triple {372#true} assume true; {372#true} is VALID [2022-04-15 12:48:11,847 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {372#true} {372#true} #61#return; {372#true} is VALID [2022-04-15 12:48:11,848 INFO L272 TraceCheckUtils]: 0: Hoare triple {372#true} call ULTIMATE.init(); {379#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 12:48:11,848 INFO L290 TraceCheckUtils]: 1: Hoare triple {379#(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(10, 2);call #Ultimate.allocInit(12, 3); {372#true} is VALID [2022-04-15 12:48:11,856 INFO L290 TraceCheckUtils]: 2: Hoare triple {372#true} assume true; {372#true} is VALID [2022-04-15 12:48:11,856 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {372#true} {372#true} #61#return; {372#true} is VALID [2022-04-15 12:48:11,858 INFO L272 TraceCheckUtils]: 4: Hoare triple {372#true} call #t~ret11 := main(); {372#true} is VALID [2022-04-15 12:48:11,858 INFO L290 TraceCheckUtils]: 5: Hoare triple {372#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {372#true} is VALID [2022-04-15 12:48:11,861 INFO L290 TraceCheckUtils]: 6: Hoare triple {372#true} [67] L16-2-->L16-3_primed: Formula: (or (and (<= v_main_~x~0_Out_4 v_main_~x~0_In_2) (= |v_main_#t~post5_Out_4| 0) (< 0 (mod (+ v_main_~x~0_Out_4 1) 4294967296)) (= 0 |v_main_#t~post6_Out_4|) (= (+ v_main_~x~0_In_2 v_main_~y~0_In_2) (+ v_main_~x~0_Out_4 v_main_~y~0_Out_4))) (and (= v_main_~x~0_In_2 v_main_~x~0_Out_4) (= v_main_~y~0_In_2 v_main_~y~0_Out_4))) InVars {main_~x~0=v_main_~x~0_In_2, main_~y~0=v_main_~y~0_In_2} OutVars{main_~y~0=v_main_~y~0_Out_4, main_#t~post5=|v_main_#t~post5_Out_4|, main_~x~0=v_main_~x~0_Out_4, main_#t~post6=|v_main_#t~post6_Out_4|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {372#true} is VALID [2022-04-15 12:48:11,861 INFO L290 TraceCheckUtils]: 7: Hoare triple {372#true} [66] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {372#true} is VALID [2022-04-15 12:48:11,863 INFO L290 TraceCheckUtils]: 8: Hoare triple {372#true} ~z~0 := ~y~0; {377#(and (<= main_~y~0 main_~z~0) (<= (div main_~z~0 4294967296) (div main_~y~0 4294967296)))} is VALID [2022-04-15 12:48:11,863 INFO L290 TraceCheckUtils]: 9: Hoare triple {377#(and (<= main_~y~0 main_~z~0) (<= (div main_~z~0 4294967296) (div main_~y~0 4294967296)))} assume !(~z~0 % 4294967296 > 0); {378#(and (<= main_~y~0 (* (div main_~z~0 4294967296) 4294967296)) (<= (div main_~z~0 4294967296) (div main_~y~0 4294967296)))} is VALID [2022-04-15 12:48:11,864 INFO L290 TraceCheckUtils]: 10: Hoare triple {378#(and (<= main_~y~0 (* (div main_~z~0 4294967296) 4294967296)) (<= (div main_~z~0 4294967296) (div main_~y~0 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {373#false} is VALID [2022-04-15 12:48:11,864 INFO L290 TraceCheckUtils]: 11: Hoare triple {373#false} assume !(~y~0 % 4294967296 > 0); {373#false} is VALID [2022-04-15 12:48:11,864 INFO L272 TraceCheckUtils]: 12: Hoare triple {373#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {373#false} is VALID [2022-04-15 12:48:11,865 INFO L290 TraceCheckUtils]: 13: Hoare triple {373#false} ~cond := #in~cond; {373#false} is VALID [2022-04-15 12:48:11,865 INFO L290 TraceCheckUtils]: 14: Hoare triple {373#false} assume 0 == ~cond; {373#false} is VALID [2022-04-15 12:48:11,865 INFO L290 TraceCheckUtils]: 15: Hoare triple {373#false} assume !false; {373#false} is VALID [2022-04-15 12:48:11,865 INFO L134 CoverageAnalysis]: Checked inductivity of 1 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:48:11,865 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 12:48:11,865 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [809595504] [2022-04-15 12:48:11,865 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [809595504] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 12:48:11,865 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 12:48:11,866 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 12:48:11,889 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 12:48:11,889 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1669816857] [2022-04-15 12:48:11,889 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1669816857] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 12:48:11,890 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 12:48:11,890 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 12:48:11,890 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1539373998] [2022-04-15 12:48:11,890 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 12:48:11,891 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.0) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 16 [2022-04-15 12:48:11,891 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 12:48:11,891 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 2.0) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:11,900 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:48:11,900 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 12:48:11,900 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 12:48:11,901 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 12:48:11,901 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2022-04-15 12:48:11,901 INFO L87 Difference]: Start difference. First operand 17 states and 19 transitions. Second operand has 6 states, 6 states have (on average 2.0) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:12,049 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:48:12,049 INFO L93 Difference]: Finished difference Result 25 states and 28 transitions. [2022-04-15 12:48:12,049 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-15 12:48:12,049 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.0) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 16 [2022-04-15 12:48:12,049 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 12:48:12,050 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.0) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:12,052 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 27 transitions. [2022-04-15 12:48:12,052 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.0) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:12,053 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 27 transitions. [2022-04-15 12:48:12,053 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 27 transitions. [2022-04-15 12:48:12,081 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:48:12,081 INFO L225 Difference]: With dead ends: 25 [2022-04-15 12:48:12,081 INFO L226 Difference]: Without dead ends: 18 [2022-04-15 12:48:12,082 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 9 SyntacticMatches, 1 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=28, Invalid=44, Unknown=0, NotChecked=0, Total=72 [2022-04-15 12:48:12,083 INFO L913 BasicCegarLoop]: 14 mSDtfsCounter, 16 mSDsluCounter, 17 mSDsCounter, 0 mSdLazyCounter, 39 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 16 SdHoareTripleChecker+Valid, 31 SdHoareTripleChecker+Invalid, 42 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 39 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 12:48:12,083 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [16 Valid, 31 Invalid, 42 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 39 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 12:48:12,084 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 18 states. [2022-04-15 12:48:12,103 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 18 to 18. [2022-04-15 12:48:12,104 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 12:48:12,104 INFO L82 GeneralOperation]: Start isEquivalent. First operand 18 states. Second operand has 18 states, 13 states have (on average 1.2307692307692308) internal successors, (16), 13 states have internal predecessors, (16), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:12,104 INFO L74 IsIncluded]: Start isIncluded. First operand 18 states. Second operand has 18 states, 13 states have (on average 1.2307692307692308) internal successors, (16), 13 states have internal predecessors, (16), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:12,104 INFO L87 Difference]: Start difference. First operand 18 states. Second operand has 18 states, 13 states have (on average 1.2307692307692308) internal successors, (16), 13 states have internal predecessors, (16), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:12,105 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:48:12,105 INFO L93 Difference]: Finished difference Result 18 states and 20 transitions. [2022-04-15 12:48:12,105 INFO L276 IsEmpty]: Start isEmpty. Operand 18 states and 20 transitions. [2022-04-15 12:48:12,106 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:48:12,106 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:48:12,106 INFO L74 IsIncluded]: Start isIncluded. First operand has 18 states, 13 states have (on average 1.2307692307692308) internal successors, (16), 13 states have internal predecessors, (16), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 18 states. [2022-04-15 12:48:12,106 INFO L87 Difference]: Start difference. First operand has 18 states, 13 states have (on average 1.2307692307692308) internal successors, (16), 13 states have internal predecessors, (16), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 18 states. [2022-04-15 12:48:12,107 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:48:12,107 INFO L93 Difference]: Finished difference Result 18 states and 20 transitions. [2022-04-15 12:48:12,107 INFO L276 IsEmpty]: Start isEmpty. Operand 18 states and 20 transitions. [2022-04-15 12:48:12,107 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:48:12,108 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:48:12,108 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 12:48:12,108 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 12:48:12,108 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 13 states have (on average 1.2307692307692308) internal successors, (16), 13 states have internal predecessors, (16), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:12,109 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 20 transitions. [2022-04-15 12:48:12,109 INFO L78 Accepts]: Start accepts. Automaton has 18 states and 20 transitions. Word has length 16 [2022-04-15 12:48:12,109 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 12:48:12,109 INFO L478 AbstractCegarLoop]: Abstraction has 18 states and 20 transitions. [2022-04-15 12:48:12,109 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 2.0) internal successors, (12), 5 states have internal predecessors, (12), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:12,109 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 20 transitions. [2022-04-15 12:48:12,140 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:48:12,140 INFO L276 IsEmpty]: Start isEmpty. Operand 18 states and 20 transitions. [2022-04-15 12:48:12,141 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-15 12:48:12,141 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 12:48:12,141 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 12:48:12,141 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2022-04-15 12:48:12,141 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 12:48:12,142 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 12:48:12,142 INFO L85 PathProgramCache]: Analyzing trace with hash -1642511809, now seen corresponding path program 1 times [2022-04-15 12:48:12,142 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 12:48:12,142 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1562530835] [2022-04-15 12:48:12,293 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-15 12:48:12,294 INFO L85 PathProgramCache]: Analyzing trace with hash -1495870434, now seen corresponding path program 1 times [2022-04-15 12:48:12,295 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 12:48:12,295 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [545983659] [2022-04-15 12:48:12,295 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:48:12,295 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 12:48:12,343 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:48:12,610 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 12:48:12,612 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:48:12,620 INFO L290 TraceCheckUtils]: 0: Hoare triple {526#(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(10, 2);call #Ultimate.allocInit(12, 3); {512#true} is VALID [2022-04-15 12:48:12,620 INFO L290 TraceCheckUtils]: 1: Hoare triple {512#true} assume true; {512#true} is VALID [2022-04-15 12:48:12,620 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {512#true} {512#true} #61#return; {512#true} is VALID [2022-04-15 12:48:12,622 INFO L272 TraceCheckUtils]: 0: Hoare triple {512#true} call ULTIMATE.init(); {526#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 12:48:12,622 INFO L290 TraceCheckUtils]: 1: Hoare triple {526#(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(10, 2);call #Ultimate.allocInit(12, 3); {512#true} is VALID [2022-04-15 12:48:12,622 INFO L290 TraceCheckUtils]: 2: Hoare triple {512#true} assume true; {512#true} is VALID [2022-04-15 12:48:12,622 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {512#true} {512#true} #61#return; {512#true} is VALID [2022-04-15 12:48:12,622 INFO L272 TraceCheckUtils]: 4: Hoare triple {512#true} call #t~ret11 := main(); {512#true} is VALID [2022-04-15 12:48:12,627 INFO L290 TraceCheckUtils]: 5: Hoare triple {512#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {517#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} is VALID [2022-04-15 12:48:12,628 INFO L290 TraceCheckUtils]: 6: Hoare triple {517#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} [69] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~y~0_In_3 v_main_~y~0_Out_6) (= v_main_~x~0_In_3 v_main_~x~0_Out_6)) (and (= |v_main_#t~post5_Out_6| 0) (<= v_main_~x~0_Out_6 v_main_~x~0_In_3) (= (+ v_main_~x~0_In_3 v_main_~y~0_In_3) (+ v_main_~x~0_Out_6 v_main_~y~0_Out_6)) (= 0 |v_main_#t~post6_Out_6|) (< 0 (mod (+ v_main_~x~0_Out_6 1) 4294967296)))) InVars {main_~x~0=v_main_~x~0_In_3, main_~y~0=v_main_~y~0_In_3} OutVars{main_~y~0=v_main_~y~0_Out_6, main_#t~post5=|v_main_#t~post5_Out_6|, main_~x~0=v_main_~x~0_Out_6, main_#t~post6=|v_main_#t~post6_Out_6|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {518#(or (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= (+ main_~y~0 main_~x~0) main_~n~0) (<= main_~n~0 (+ main_~y~0 main_~x~0))) (= main_~y~0 0))} is VALID [2022-04-15 12:48:12,629 INFO L290 TraceCheckUtils]: 7: Hoare triple {518#(or (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= (+ main_~y~0 main_~x~0) main_~n~0) (<= main_~n~0 (+ main_~y~0 main_~x~0))) (= main_~y~0 0))} [68] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {519#(or (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~y~0 (* 4294967296 (div main_~x~0 4294967296))))) (= main_~y~0 0))} is VALID [2022-04-15 12:48:12,630 INFO L290 TraceCheckUtils]: 8: Hoare triple {519#(or (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~y~0 (* 4294967296 (div main_~x~0 4294967296))))) (= main_~y~0 0))} ~z~0 := ~y~0; {520#(and (or (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~y~0 (* 4294967296 (div main_~x~0 4294967296))))) (= main_~y~0 0)) (= (+ main_~y~0 (* (- 1) main_~z~0)) 0))} is VALID [2022-04-15 12:48:12,631 INFO L290 TraceCheckUtils]: 9: Hoare triple {520#(and (or (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~y~0 (* 4294967296 (div main_~x~0 4294967296))))) (= main_~y~0 0)) (= (+ main_~y~0 (* (- 1) main_~z~0)) 0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {521#(and (or (= main_~y~0 0) (<= main_~n~0 (+ main_~z~0 (* (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296) 1))) (or (not (= main_~y~0 0)) (and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))))} is VALID [2022-04-15 12:48:12,633 INFO L290 TraceCheckUtils]: 10: Hoare triple {521#(and (or (= main_~y~0 0) (<= main_~n~0 (+ main_~z~0 (* (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296) 1))) (or (not (= main_~y~0 0)) (and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))))} assume !(~z~0 % 4294967296 > 0); {522#(and (not (= main_~y~0 0)) (<= (+ main_~z~0 (* (div (+ main_~n~0 4294967294 (* (div main_~z~0 4294967296) (- 4294967296))) 4294967296) 4294967296) 1) main_~n~0))} is VALID [2022-04-15 12:48:12,637 INFO L290 TraceCheckUtils]: 11: Hoare triple {522#(and (not (= main_~y~0 0)) (<= (+ main_~z~0 (* (div (+ main_~n~0 4294967294 (* (div main_~z~0 4294967296) (- 4294967296))) 4294967296) 4294967296) 1) main_~n~0))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {523#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:48:12,638 INFO L290 TraceCheckUtils]: 12: Hoare triple {523#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} assume !(~y~0 % 4294967296 > 0); {523#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:48:12,638 INFO L272 TraceCheckUtils]: 13: Hoare triple {523#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {524#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 12:48:12,640 INFO L290 TraceCheckUtils]: 14: Hoare triple {524#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {525#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 12:48:12,640 INFO L290 TraceCheckUtils]: 15: Hoare triple {525#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {513#false} is VALID [2022-04-15 12:48:12,640 INFO L290 TraceCheckUtils]: 16: Hoare triple {513#false} assume !false; {513#false} is VALID [2022-04-15 12:48:12,641 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:48:12,641 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 12:48:12,641 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [545983659] [2022-04-15 12:48:12,641 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [545983659] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 12:48:12,641 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1676862633] [2022-04-15 12:48:12,641 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:48:12,641 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:48:12,641 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 12:48:12,642 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-15 12:48:12,667 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-15 12:48:12,697 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:48:12,719 INFO L263 TraceCheckSpWp]: Trace formula consists of 70 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-15 12:48:12,732 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:48:12,735 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 12:48:30,273 INFO L272 TraceCheckUtils]: 0: Hoare triple {512#true} call ULTIMATE.init(); {512#true} is VALID [2022-04-15 12:48:30,274 INFO L290 TraceCheckUtils]: 1: Hoare triple {512#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(10, 2);call #Ultimate.allocInit(12, 3); {512#true} is VALID [2022-04-15 12:48:30,274 INFO L290 TraceCheckUtils]: 2: Hoare triple {512#true} assume true; {512#true} is VALID [2022-04-15 12:48:30,274 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {512#true} {512#true} #61#return; {512#true} is VALID [2022-04-15 12:48:30,274 INFO L272 TraceCheckUtils]: 4: Hoare triple {512#true} call #t~ret11 := main(); {512#true} is VALID [2022-04-15 12:48:30,276 INFO L290 TraceCheckUtils]: 5: Hoare triple {512#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {517#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} is VALID [2022-04-15 12:48:30,277 INFO L290 TraceCheckUtils]: 6: Hoare triple {517#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} [69] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~y~0_In_3 v_main_~y~0_Out_6) (= v_main_~x~0_In_3 v_main_~x~0_Out_6)) (and (= |v_main_#t~post5_Out_6| 0) (<= v_main_~x~0_Out_6 v_main_~x~0_In_3) (= (+ v_main_~x~0_In_3 v_main_~y~0_In_3) (+ v_main_~x~0_Out_6 v_main_~y~0_Out_6)) (= 0 |v_main_#t~post6_Out_6|) (< 0 (mod (+ v_main_~x~0_Out_6 1) 4294967296)))) InVars {main_~x~0=v_main_~x~0_In_3, main_~y~0=v_main_~y~0_In_3} OutVars{main_~y~0=v_main_~y~0_Out_6, main_#t~post5=|v_main_#t~post5_Out_6|, main_~x~0=v_main_~x~0_Out_6, main_#t~post6=|v_main_#t~post6_Out_6|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {548#(or (and (< 0 (mod (+ main_~x~0 1) 4294967296)) (<= main_~x~0 main_~n~0) (= main_~n~0 (+ main_~y~0 main_~x~0))) (and (= main_~n~0 main_~x~0) (= main_~y~0 0)))} is VALID [2022-04-15 12:48:30,279 INFO L290 TraceCheckUtils]: 7: Hoare triple {548#(or (and (< 0 (mod (+ main_~x~0 1) 4294967296)) (<= main_~x~0 main_~n~0) (= main_~n~0 (+ main_~y~0 main_~x~0))) (and (= main_~n~0 main_~x~0) (= main_~y~0 0)))} [68] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {552#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} is VALID [2022-04-15 12:48:30,280 INFO L290 TraceCheckUtils]: 8: Hoare triple {552#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} ~z~0 := ~y~0; {556#(and (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} is VALID [2022-04-15 12:48:30,282 INFO L290 TraceCheckUtils]: 9: Hoare triple {556#(and (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {560#(and (< 0 (mod (+ main_~z~0 1) 4294967296)) (<= 0 (+ main_~z~0 1)) (<= (div (+ main_~z~0 (* (- 1) main_~n~0) 1) (- 4294967296)) (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} is VALID [2022-04-15 12:48:30,282 INFO L290 TraceCheckUtils]: 10: Hoare triple {560#(and (< 0 (mod (+ main_~z~0 1) 4294967296)) (<= 0 (+ main_~z~0 1)) (<= (div (+ main_~z~0 (* (- 1) main_~n~0) 1) (- 4294967296)) (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} assume !(~z~0 % 4294967296 > 0); {564#(and (<= 0 (+ main_~z~0 1)) (<= (div (+ main_~z~0 (* (- 1) main_~n~0) 1) (- 4294967296)) (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296)) (<= (mod main_~z~0 4294967296) 0))} is VALID [2022-04-15 12:48:30,284 INFO L290 TraceCheckUtils]: 11: Hoare triple {564#(and (<= 0 (+ main_~z~0 1)) (<= (div (+ main_~z~0 (* (- 1) main_~n~0) 1) (- 4294967296)) (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296)) (<= (mod main_~z~0 4294967296) 0))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {568#(and (<= (mod (+ main_~z~0 4294967295) 4294967296) 0) (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} is VALID [2022-04-15 12:48:30,285 INFO L290 TraceCheckUtils]: 12: Hoare triple {568#(and (<= (mod (+ main_~z~0 4294967295) 4294967296) 0) (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} assume !(~y~0 % 4294967296 > 0); {568#(and (<= (mod (+ main_~z~0 4294967295) 4294967296) 0) (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} is VALID [2022-04-15 12:48:30,287 INFO L272 TraceCheckUtils]: 13: Hoare triple {568#(and (<= (mod (+ main_~z~0 4294967295) 4294967296) 0) (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {575#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 12:48:30,288 INFO L290 TraceCheckUtils]: 14: Hoare triple {575#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {579#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 12:48:30,288 INFO L290 TraceCheckUtils]: 15: Hoare triple {579#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {513#false} is VALID [2022-04-15 12:48:30,288 INFO L290 TraceCheckUtils]: 16: Hoare triple {513#false} assume !false; {513#false} is VALID [2022-04-15 12:48:30,289 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:48:30,289 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 12:48:41,593 INFO L290 TraceCheckUtils]: 16: Hoare triple {513#false} assume !false; {513#false} is VALID [2022-04-15 12:48:41,594 INFO L290 TraceCheckUtils]: 15: Hoare triple {579#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {513#false} is VALID [2022-04-15 12:48:41,594 INFO L290 TraceCheckUtils]: 14: Hoare triple {575#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {579#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 12:48:41,596 INFO L272 TraceCheckUtils]: 13: Hoare triple {523#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {575#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 12:48:41,597 INFO L290 TraceCheckUtils]: 12: Hoare triple {523#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} assume !(~y~0 % 4294967296 > 0); {523#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:48:41,599 INFO L290 TraceCheckUtils]: 11: Hoare triple {601#(and (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296)) (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {523#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:48:41,600 INFO L290 TraceCheckUtils]: 10: Hoare triple {605#(or (and (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296)) (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)))) (< 0 (mod main_~z~0 4294967296)))} assume !(~z~0 % 4294967296 > 0); {601#(and (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296)) (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:48:41,602 INFO L290 TraceCheckUtils]: 9: Hoare triple {609#(or (and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)))) (< 0 (mod (+ main_~z~0 4294967295) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {605#(or (and (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296)) (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)))) (< 0 (mod main_~z~0 4294967296)))} is VALID [2022-04-15 12:48:41,603 INFO L290 TraceCheckUtils]: 8: Hoare triple {613#(or (< 0 (mod (+ main_~y~0 4294967295) 4294967296)) (and (< (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0))))} ~z~0 := ~y~0; {609#(or (and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)))) (< 0 (mod (+ main_~z~0 4294967295) 4294967296)))} is VALID [2022-04-15 12:48:41,604 INFO L290 TraceCheckUtils]: 7: Hoare triple {617#(or (< 0 (mod (+ main_~y~0 4294967295) 4294967296)) (< 0 (mod main_~x~0 4294967296)) (and (< (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0))))} [68] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {613#(or (< 0 (mod (+ main_~y~0 4294967295) 4294967296)) (and (< (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0))))} is VALID [2022-04-15 12:48:41,629 INFO L290 TraceCheckUtils]: 6: Hoare triple {621#(and (or (< (div (+ (* (- 1) main_~x~0) (- 4294967296) (* (- 1) main_~y~0)) (- 4294967296)) (+ (div (+ main_~y~0 main_~x~0 4294967294) 4294967296) 2)) (< (div (+ (- 1) (* (- 1) main_~x~0) (* (- 1) main_~y~0)) (- 4294967296)) (+ (div (+ main_~y~0 main_~x~0 4294967294) 4294967296) (div main_~n~0 4294967296) 3 (div (+ (- 4294967295) (* (- 1) main_~n~0)) 4294967296)))) (or (< (div (+ (* (- 1) main_~x~0) (- 4294967296) (* (- 1) main_~y~0)) (- 4294967296)) (+ (div (+ main_~y~0 main_~x~0 4294967294) 4294967296) 2)) (<= (+ (* (div main_~n~0 4294967296) 2) (div (+ main_~n~0 (* (- 1) main_~x~0) (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~n~0 4294967295) (- 4294967296))) (+ (div (+ main_~y~0 main_~x~0 (- 4294967296)) 4294967296) 1))))} [69] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~y~0_In_3 v_main_~y~0_Out_6) (= v_main_~x~0_In_3 v_main_~x~0_Out_6)) (and (= |v_main_#t~post5_Out_6| 0) (<= v_main_~x~0_Out_6 v_main_~x~0_In_3) (= (+ v_main_~x~0_In_3 v_main_~y~0_In_3) (+ v_main_~x~0_Out_6 v_main_~y~0_Out_6)) (= 0 |v_main_#t~post6_Out_6|) (< 0 (mod (+ v_main_~x~0_Out_6 1) 4294967296)))) InVars {main_~x~0=v_main_~x~0_In_3, main_~y~0=v_main_~y~0_In_3} OutVars{main_~y~0=v_main_~y~0_Out_6, main_#t~post5=|v_main_#t~post5_Out_6|, main_~x~0=v_main_~x~0_Out_6, main_#t~post6=|v_main_#t~post6_Out_6|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {617#(or (< 0 (mod (+ main_~y~0 4294967295) 4294967296)) (< 0 (mod main_~x~0 4294967296)) (and (< (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0))))} is VALID [2022-04-15 12:48:41,634 INFO L290 TraceCheckUtils]: 5: Hoare triple {512#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {621#(and (or (< (div (+ (* (- 1) main_~x~0) (- 4294967296) (* (- 1) main_~y~0)) (- 4294967296)) (+ (div (+ main_~y~0 main_~x~0 4294967294) 4294967296) 2)) (< (div (+ (- 1) (* (- 1) main_~x~0) (* (- 1) main_~y~0)) (- 4294967296)) (+ (div (+ main_~y~0 main_~x~0 4294967294) 4294967296) (div main_~n~0 4294967296) 3 (div (+ (- 4294967295) (* (- 1) main_~n~0)) 4294967296)))) (or (< (div (+ (* (- 1) main_~x~0) (- 4294967296) (* (- 1) main_~y~0)) (- 4294967296)) (+ (div (+ main_~y~0 main_~x~0 4294967294) 4294967296) 2)) (<= (+ (* (div main_~n~0 4294967296) 2) (div (+ main_~n~0 (* (- 1) main_~x~0) (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~n~0 4294967295) (- 4294967296))) (+ (div (+ main_~y~0 main_~x~0 (- 4294967296)) 4294967296) 1))))} is VALID [2022-04-15 12:48:41,634 INFO L272 TraceCheckUtils]: 4: Hoare triple {512#true} call #t~ret11 := main(); {512#true} is VALID [2022-04-15 12:48:41,634 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {512#true} {512#true} #61#return; {512#true} is VALID [2022-04-15 12:48:41,634 INFO L290 TraceCheckUtils]: 2: Hoare triple {512#true} assume true; {512#true} is VALID [2022-04-15 12:48:41,634 INFO L290 TraceCheckUtils]: 1: Hoare triple {512#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(10, 2);call #Ultimate.allocInit(12, 3); {512#true} is VALID [2022-04-15 12:48:41,635 INFO L272 TraceCheckUtils]: 0: Hoare triple {512#true} call ULTIMATE.init(); {512#true} is VALID [2022-04-15 12:48:41,635 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 0 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:48:41,635 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1676862633] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 12:48:41,635 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 12:48:41,635 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 11, 11] total 26 [2022-04-15 12:48:41,774 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 12:48:41,774 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1562530835] [2022-04-15 12:48:41,775 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1562530835] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 12:48:41,775 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 12:48:41,775 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-15 12:48:41,775 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1336126973] [2022-04-15 12:48:41,775 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 12:48:41,775 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 1.0833333333333333) internal successors, (13), 10 states have internal predecessors, (13), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 17 [2022-04-15 12:48:41,776 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 12:48:41,776 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 1.0833333333333333) internal successors, (13), 10 states have internal predecessors, (13), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:41,802 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:48:41,802 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-15 12:48:41,803 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 12:48:41,803 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-15 12:48:41,803 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=112, Invalid=644, Unknown=0, NotChecked=0, Total=756 [2022-04-15 12:48:41,804 INFO L87 Difference]: Start difference. First operand 18 states and 20 transitions. Second operand has 12 states, 12 states have (on average 1.0833333333333333) internal successors, (13), 10 states have internal predecessors, (13), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:42,761 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:48:42,761 INFO L93 Difference]: Finished difference Result 26 states and 29 transitions. [2022-04-15 12:48:42,761 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-15 12:48:42,761 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 1.0833333333333333) internal successors, (13), 10 states have internal predecessors, (13), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 17 [2022-04-15 12:48:42,762 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 12:48:42,762 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 1.0833333333333333) internal successors, (13), 10 states have internal predecessors, (13), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:42,763 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 28 transitions. [2022-04-15 12:48:42,763 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 1.0833333333333333) internal successors, (13), 10 states have internal predecessors, (13), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:42,765 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 28 transitions. [2022-04-15 12:48:42,765 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 28 transitions. [2022-04-15 12:48:42,814 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:48:42,815 INFO L225 Difference]: With dead ends: 26 [2022-04-15 12:48:42,815 INFO L226 Difference]: Without dead ends: 21 [2022-04-15 12:48:42,816 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 58 GetRequests, 20 SyntacticMatches, 3 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 309 ImplicationChecksByTransitivity, 1.2s TimeCoverageRelationStatistics Valid=196, Invalid=1136, Unknown=0, NotChecked=0, Total=1332 [2022-04-15 12:48:42,816 INFO L913 BasicCegarLoop]: 10 mSDtfsCounter, 19 mSDsluCounter, 42 mSDsCounter, 0 mSdLazyCounter, 123 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 19 SdHoareTripleChecker+Valid, 52 SdHoareTripleChecker+Invalid, 136 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 123 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-15 12:48:42,817 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [19 Valid, 52 Invalid, 136 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 123 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-15 12:48:42,817 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 21 states. [2022-04-15 12:48:42,856 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 21 to 20. [2022-04-15 12:48:42,856 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 12:48:42,857 INFO L82 GeneralOperation]: Start isEquivalent. First operand 21 states. Second operand has 20 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 15 states have internal predecessors, (19), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:42,857 INFO L74 IsIncluded]: Start isIncluded. First operand 21 states. Second operand has 20 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 15 states have internal predecessors, (19), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:42,857 INFO L87 Difference]: Start difference. First operand 21 states. Second operand has 20 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 15 states have internal predecessors, (19), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:42,859 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:48:42,859 INFO L93 Difference]: Finished difference Result 21 states and 24 transitions. [2022-04-15 12:48:42,859 INFO L276 IsEmpty]: Start isEmpty. Operand 21 states and 24 transitions. [2022-04-15 12:48:42,859 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:48:42,859 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:48:42,860 INFO L74 IsIncluded]: Start isIncluded. First operand has 20 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 15 states have internal predecessors, (19), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 21 states. [2022-04-15 12:48:42,860 INFO L87 Difference]: Start difference. First operand has 20 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 15 states have internal predecessors, (19), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 21 states. [2022-04-15 12:48:42,861 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:48:42,861 INFO L93 Difference]: Finished difference Result 21 states and 24 transitions. [2022-04-15 12:48:42,861 INFO L276 IsEmpty]: Start isEmpty. Operand 21 states and 24 transitions. [2022-04-15 12:48:42,861 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:48:42,861 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:48:42,861 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 12:48:42,861 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 12:48:42,861 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 15 states have (on average 1.2666666666666666) internal successors, (19), 15 states have internal predecessors, (19), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:42,862 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 23 transitions. [2022-04-15 12:48:42,862 INFO L78 Accepts]: Start accepts. Automaton has 20 states and 23 transitions. Word has length 17 [2022-04-15 12:48:42,862 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 12:48:42,862 INFO L478 AbstractCegarLoop]: Abstraction has 20 states and 23 transitions. [2022-04-15 12:48:42,863 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 1.0833333333333333) internal successors, (13), 10 states have internal predecessors, (13), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:42,863 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 23 transitions. [2022-04-15 12:48:42,913 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:48:42,914 INFO L276 IsEmpty]: Start isEmpty. Operand 20 states and 23 transitions. [2022-04-15 12:48:42,914 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-15 12:48:42,914 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 12:48:42,914 INFO L499 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 12:48:42,938 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2022-04-15 12:48:43,117 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:48:43,118 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 12:48:43,118 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 12:48:43,118 INFO L85 PathProgramCache]: Analyzing trace with hash 656236558, now seen corresponding path program 2 times [2022-04-15 12:48:43,118 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 12:48:43,118 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1976631518] [2022-04-15 12:48:43,288 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-15 12:48:43,290 INFO L85 PathProgramCache]: Analyzing trace with hash 1866381903, now seen corresponding path program 1 times [2022-04-15 12:48:43,290 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 12:48:43,290 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1312174276] [2022-04-15 12:48:43,290 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:48:43,291 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 12:48:43,335 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:48:43,404 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 12:48:43,408 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:48:43,412 INFO L290 TraceCheckUtils]: 0: Hoare triple {805#(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(10, 2);call #Ultimate.allocInit(12, 3); {796#true} is VALID [2022-04-15 12:48:43,412 INFO L290 TraceCheckUtils]: 1: Hoare triple {796#true} assume true; {796#true} is VALID [2022-04-15 12:48:43,412 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {796#true} {796#true} #61#return; {796#true} is VALID [2022-04-15 12:48:43,413 INFO L272 TraceCheckUtils]: 0: Hoare triple {796#true} call ULTIMATE.init(); {805#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 12:48:43,413 INFO L290 TraceCheckUtils]: 1: Hoare triple {805#(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(10, 2);call #Ultimate.allocInit(12, 3); {796#true} is VALID [2022-04-15 12:48:43,413 INFO L290 TraceCheckUtils]: 2: Hoare triple {796#true} assume true; {796#true} is VALID [2022-04-15 12:48:43,414 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {796#true} {796#true} #61#return; {796#true} is VALID [2022-04-15 12:48:43,414 INFO L272 TraceCheckUtils]: 4: Hoare triple {796#true} call #t~ret11 := main(); {796#true} is VALID [2022-04-15 12:48:43,415 INFO L290 TraceCheckUtils]: 5: Hoare triple {796#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {796#true} is VALID [2022-04-15 12:48:43,416 INFO L290 TraceCheckUtils]: 6: Hoare triple {796#true} [71] L16-2-->L16-3_primed: Formula: (or (and (= 0 |v_main_#t~post6_Out_8|) (= |v_main_#t~post5_Out_8| 0) (<= v_main_~x~0_Out_8 v_main_~x~0_In_4) (< 0 (mod (+ v_main_~x~0_Out_8 1) 4294967296)) (= (+ v_main_~x~0_In_4 v_main_~y~0_In_4) (+ v_main_~x~0_Out_8 v_main_~y~0_Out_8))) (and (= v_main_~y~0_In_4 v_main_~y~0_Out_8) (= v_main_~x~0_In_4 v_main_~x~0_Out_8))) InVars {main_~x~0=v_main_~x~0_In_4, main_~y~0=v_main_~y~0_In_4} OutVars{main_~y~0=v_main_~y~0_Out_8, main_#t~post5=|v_main_#t~post5_Out_8|, main_~x~0=v_main_~x~0_Out_8, main_#t~post6=|v_main_#t~post6_Out_8|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {796#true} is VALID [2022-04-15 12:48:43,416 INFO L290 TraceCheckUtils]: 7: Hoare triple {796#true} [70] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {796#true} is VALID [2022-04-15 12:48:43,423 INFO L290 TraceCheckUtils]: 8: Hoare triple {796#true} ~z~0 := ~y~0; {801#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} is VALID [2022-04-15 12:48:43,426 INFO L290 TraceCheckUtils]: 9: Hoare triple {801#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {802#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} is VALID [2022-04-15 12:48:43,427 INFO L290 TraceCheckUtils]: 10: Hoare triple {802#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} assume !(~z~0 % 4294967296 > 0); {803#(and (<= main_~y~0 (+ (* (div main_~z~0 4294967296) 4294967296) 1)) (<= (+ (* (div main_~z~0 4294967296) 4294967296) 1) main_~y~0))} is VALID [2022-04-15 12:48:43,429 INFO L290 TraceCheckUtils]: 11: Hoare triple {803#(and (<= main_~y~0 (+ (* (div main_~z~0 4294967296) 4294967296) 1)) (<= (+ (* (div main_~z~0 4294967296) 4294967296) 1) main_~y~0))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {804#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} is VALID [2022-04-15 12:48:43,430 INFO L290 TraceCheckUtils]: 12: Hoare triple {804#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {797#false} is VALID [2022-04-15 12:48:43,430 INFO L290 TraceCheckUtils]: 13: Hoare triple {797#false} assume !(~y~0 % 4294967296 > 0); {797#false} is VALID [2022-04-15 12:48:43,430 INFO L272 TraceCheckUtils]: 14: Hoare triple {797#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {797#false} is VALID [2022-04-15 12:48:43,430 INFO L290 TraceCheckUtils]: 15: Hoare triple {797#false} ~cond := #in~cond; {797#false} is VALID [2022-04-15 12:48:43,430 INFO L290 TraceCheckUtils]: 16: Hoare triple {797#false} assume 0 == ~cond; {797#false} is VALID [2022-04-15 12:48:43,430 INFO L290 TraceCheckUtils]: 17: Hoare triple {797#false} assume !false; {797#false} is VALID [2022-04-15 12:48:43,430 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:48:43,430 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 12:48:43,430 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1312174276] [2022-04-15 12:48:43,431 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1312174276] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 12:48:43,431 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1540109761] [2022-04-15 12:48:43,431 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:48:43,431 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:48:43,431 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 12:48:43,448 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 12:48:43,449 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-04-15 12:48:43,477 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:48:43,478 INFO L263 TraceCheckSpWp]: Trace formula consists of 75 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-15 12:48:43,486 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:48:43,486 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 12:48:43,780 INFO L272 TraceCheckUtils]: 0: Hoare triple {796#true} call ULTIMATE.init(); {796#true} is VALID [2022-04-15 12:48:43,780 INFO L290 TraceCheckUtils]: 1: Hoare triple {796#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(10, 2);call #Ultimate.allocInit(12, 3); {796#true} is VALID [2022-04-15 12:48:43,780 INFO L290 TraceCheckUtils]: 2: Hoare triple {796#true} assume true; {796#true} is VALID [2022-04-15 12:48:43,780 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {796#true} {796#true} #61#return; {796#true} is VALID [2022-04-15 12:48:43,781 INFO L272 TraceCheckUtils]: 4: Hoare triple {796#true} call #t~ret11 := main(); {796#true} is VALID [2022-04-15 12:48:43,781 INFO L290 TraceCheckUtils]: 5: Hoare triple {796#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {796#true} is VALID [2022-04-15 12:48:43,781 INFO L290 TraceCheckUtils]: 6: Hoare triple {796#true} [71] L16-2-->L16-3_primed: Formula: (or (and (= 0 |v_main_#t~post6_Out_8|) (= |v_main_#t~post5_Out_8| 0) (<= v_main_~x~0_Out_8 v_main_~x~0_In_4) (< 0 (mod (+ v_main_~x~0_Out_8 1) 4294967296)) (= (+ v_main_~x~0_In_4 v_main_~y~0_In_4) (+ v_main_~x~0_Out_8 v_main_~y~0_Out_8))) (and (= v_main_~y~0_In_4 v_main_~y~0_Out_8) (= v_main_~x~0_In_4 v_main_~x~0_Out_8))) InVars {main_~x~0=v_main_~x~0_In_4, main_~y~0=v_main_~y~0_In_4} OutVars{main_~y~0=v_main_~y~0_Out_8, main_#t~post5=|v_main_#t~post5_Out_8|, main_~x~0=v_main_~x~0_Out_8, main_#t~post6=|v_main_#t~post6_Out_8|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {796#true} is VALID [2022-04-15 12:48:43,781 INFO L290 TraceCheckUtils]: 7: Hoare triple {796#true} [70] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {796#true} is VALID [2022-04-15 12:48:43,781 INFO L290 TraceCheckUtils]: 8: Hoare triple {796#true} ~z~0 := ~y~0; {801#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} is VALID [2022-04-15 12:48:43,782 INFO L290 TraceCheckUtils]: 9: Hoare triple {801#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {802#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} is VALID [2022-04-15 12:48:43,783 INFO L290 TraceCheckUtils]: 10: Hoare triple {802#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} assume !(~z~0 % 4294967296 > 0); {839#(<= (div (+ (* (- 1) main_~y~0) 1) (- 4294967296)) (div (+ (- 1) main_~y~0) 4294967296))} is VALID [2022-04-15 12:48:43,785 INFO L290 TraceCheckUtils]: 11: Hoare triple {839#(<= (div (+ (* (- 1) main_~y~0) 1) (- 4294967296)) (div (+ (- 1) main_~y~0) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {804#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} is VALID [2022-04-15 12:48:43,785 INFO L290 TraceCheckUtils]: 12: Hoare triple {804#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {797#false} is VALID [2022-04-15 12:48:43,785 INFO L290 TraceCheckUtils]: 13: Hoare triple {797#false} assume !(~y~0 % 4294967296 > 0); {797#false} is VALID [2022-04-15 12:48:43,785 INFO L272 TraceCheckUtils]: 14: Hoare triple {797#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {797#false} is VALID [2022-04-15 12:48:43,786 INFO L290 TraceCheckUtils]: 15: Hoare triple {797#false} ~cond := #in~cond; {797#false} is VALID [2022-04-15 12:48:43,786 INFO L290 TraceCheckUtils]: 16: Hoare triple {797#false} assume 0 == ~cond; {797#false} is VALID [2022-04-15 12:48:43,786 INFO L290 TraceCheckUtils]: 17: Hoare triple {797#false} assume !false; {797#false} is VALID [2022-04-15 12:48:43,786 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:48:43,786 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 12:48:44,214 INFO L290 TraceCheckUtils]: 17: Hoare triple {797#false} assume !false; {797#false} is VALID [2022-04-15 12:48:44,214 INFO L290 TraceCheckUtils]: 16: Hoare triple {797#false} assume 0 == ~cond; {797#false} is VALID [2022-04-15 12:48:44,214 INFO L290 TraceCheckUtils]: 15: Hoare triple {797#false} ~cond := #in~cond; {797#false} is VALID [2022-04-15 12:48:44,215 INFO L272 TraceCheckUtils]: 14: Hoare triple {797#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {797#false} is VALID [2022-04-15 12:48:44,215 INFO L290 TraceCheckUtils]: 13: Hoare triple {797#false} assume !(~y~0 % 4294967296 > 0); {797#false} is VALID [2022-04-15 12:48:44,215 INFO L290 TraceCheckUtils]: 12: Hoare triple {804#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {797#false} is VALID [2022-04-15 12:48:44,216 INFO L290 TraceCheckUtils]: 11: Hoare triple {839#(<= (div (+ (* (- 1) main_~y~0) 1) (- 4294967296)) (div (+ (- 1) main_~y~0) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {804#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} is VALID [2022-04-15 12:48:44,217 INFO L290 TraceCheckUtils]: 10: Hoare triple {882#(or (< 0 (mod main_~z~0 4294967296)) (<= (div (+ (* (- 1) main_~y~0) 1) (- 4294967296)) (div (+ (- 1) main_~y~0) 4294967296)))} assume !(~z~0 % 4294967296 > 0); {839#(<= (div (+ (* (- 1) main_~y~0) 1) (- 4294967296)) (div (+ (- 1) main_~y~0) 4294967296))} is VALID [2022-04-15 12:48:44,218 INFO L290 TraceCheckUtils]: 9: Hoare triple {886#(or (<= (div (+ (* (- 1) main_~y~0) 1) (- 4294967296)) (div (+ (- 1) main_~y~0) 4294967296)) (< 0 (mod (+ main_~z~0 4294967295) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {882#(or (< 0 (mod main_~z~0 4294967296)) (<= (div (+ (* (- 1) main_~y~0) 1) (- 4294967296)) (div (+ (- 1) main_~y~0) 4294967296)))} is VALID [2022-04-15 12:48:44,219 INFO L290 TraceCheckUtils]: 8: Hoare triple {796#true} ~z~0 := ~y~0; {886#(or (<= (div (+ (* (- 1) main_~y~0) 1) (- 4294967296)) (div (+ (- 1) main_~y~0) 4294967296)) (< 0 (mod (+ main_~z~0 4294967295) 4294967296)))} is VALID [2022-04-15 12:48:44,219 INFO L290 TraceCheckUtils]: 7: Hoare triple {796#true} [70] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {796#true} is VALID [2022-04-15 12:48:44,219 INFO L290 TraceCheckUtils]: 6: Hoare triple {796#true} [71] L16-2-->L16-3_primed: Formula: (or (and (= 0 |v_main_#t~post6_Out_8|) (= |v_main_#t~post5_Out_8| 0) (<= v_main_~x~0_Out_8 v_main_~x~0_In_4) (< 0 (mod (+ v_main_~x~0_Out_8 1) 4294967296)) (= (+ v_main_~x~0_In_4 v_main_~y~0_In_4) (+ v_main_~x~0_Out_8 v_main_~y~0_Out_8))) (and (= v_main_~y~0_In_4 v_main_~y~0_Out_8) (= v_main_~x~0_In_4 v_main_~x~0_Out_8))) InVars {main_~x~0=v_main_~x~0_In_4, main_~y~0=v_main_~y~0_In_4} OutVars{main_~y~0=v_main_~y~0_Out_8, main_#t~post5=|v_main_#t~post5_Out_8|, main_~x~0=v_main_~x~0_Out_8, main_#t~post6=|v_main_#t~post6_Out_8|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {796#true} is VALID [2022-04-15 12:48:44,219 INFO L290 TraceCheckUtils]: 5: Hoare triple {796#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {796#true} is VALID [2022-04-15 12:48:44,220 INFO L272 TraceCheckUtils]: 4: Hoare triple {796#true} call #t~ret11 := main(); {796#true} is VALID [2022-04-15 12:48:44,220 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {796#true} {796#true} #61#return; {796#true} is VALID [2022-04-15 12:48:44,220 INFO L290 TraceCheckUtils]: 2: Hoare triple {796#true} assume true; {796#true} is VALID [2022-04-15 12:48:44,220 INFO L290 TraceCheckUtils]: 1: Hoare triple {796#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(10, 2);call #Ultimate.allocInit(12, 3); {796#true} is VALID [2022-04-15 12:48:44,220 INFO L272 TraceCheckUtils]: 0: Hoare triple {796#true} call ULTIMATE.init(); {796#true} is VALID [2022-04-15 12:48:44,220 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:48:44,220 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1540109761] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 12:48:44,220 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 12:48:44,220 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 10 [2022-04-15 12:48:44,257 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 12:48:44,257 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1976631518] [2022-04-15 12:48:44,257 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1976631518] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 12:48:44,257 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 12:48:44,257 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-15 12:48:44,257 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1682769687] [2022-04-15 12:48:44,257 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 12:48:44,258 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 1.75) internal successors, (14), 7 states have internal predecessors, (14), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 18 [2022-04-15 12:48:44,258 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 12:48:44,258 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 1.75) internal successors, (14), 7 states have internal predecessors, (14), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:44,272 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:48:44,272 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-15 12:48:44,272 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 12:48:44,272 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-15 12:48:44,272 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=84, Unknown=0, NotChecked=0, Total=110 [2022-04-15 12:48:44,272 INFO L87 Difference]: Start difference. First operand 20 states and 23 transitions. Second operand has 8 states, 8 states have (on average 1.75) internal successors, (14), 7 states have internal predecessors, (14), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:44,533 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:48:44,533 INFO L93 Difference]: Finished difference Result 27 states and 30 transitions. [2022-04-15 12:48:44,533 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-15 12:48:44,533 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 1.75) internal successors, (14), 7 states have internal predecessors, (14), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 18 [2022-04-15 12:48:44,533 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 12:48:44,534 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 1.75) internal successors, (14), 7 states have internal predecessors, (14), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:44,534 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 29 transitions. [2022-04-15 12:48:44,535 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 1.75) internal successors, (14), 7 states have internal predecessors, (14), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:44,535 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 29 transitions. [2022-04-15 12:48:44,535 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 29 transitions. [2022-04-15 12:48:44,560 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 29 edges. 29 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:48:44,561 INFO L225 Difference]: With dead ends: 27 [2022-04-15 12:48:44,561 INFO L226 Difference]: Without dead ends: 19 [2022-04-15 12:48:44,561 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 57 GetRequests, 38 SyntacticMatches, 5 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=55, Invalid=185, Unknown=0, NotChecked=0, Total=240 [2022-04-15 12:48:44,561 INFO L913 BasicCegarLoop]: 12 mSDtfsCounter, 14 mSDsluCounter, 27 mSDsCounter, 0 mSdLazyCounter, 70 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 39 SdHoareTripleChecker+Invalid, 79 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 70 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 12:48:44,562 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 39 Invalid, 79 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 70 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 12:48:44,562 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 19 states. [2022-04-15 12:48:44,584 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 19 to 19. [2022-04-15 12:48:44,584 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 12:48:44,584 INFO L82 GeneralOperation]: Start isEquivalent. First operand 19 states. Second operand has 19 states, 14 states have (on average 1.2142857142857142) internal successors, (17), 14 states have internal predecessors, (17), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:44,584 INFO L74 IsIncluded]: Start isIncluded. First operand 19 states. Second operand has 19 states, 14 states have (on average 1.2142857142857142) internal successors, (17), 14 states have internal predecessors, (17), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:44,585 INFO L87 Difference]: Start difference. First operand 19 states. Second operand has 19 states, 14 states have (on average 1.2142857142857142) internal successors, (17), 14 states have internal predecessors, (17), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:44,585 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:48:44,585 INFO L93 Difference]: Finished difference Result 19 states and 21 transitions. [2022-04-15 12:48:44,585 INFO L276 IsEmpty]: Start isEmpty. Operand 19 states and 21 transitions. [2022-04-15 12:48:44,586 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:48:44,586 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:48:44,586 INFO L74 IsIncluded]: Start isIncluded. First operand has 19 states, 14 states have (on average 1.2142857142857142) internal successors, (17), 14 states have internal predecessors, (17), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 19 states. [2022-04-15 12:48:44,586 INFO L87 Difference]: Start difference. First operand has 19 states, 14 states have (on average 1.2142857142857142) internal successors, (17), 14 states have internal predecessors, (17), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 19 states. [2022-04-15 12:48:44,586 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:48:44,586 INFO L93 Difference]: Finished difference Result 19 states and 21 transitions. [2022-04-15 12:48:44,587 INFO L276 IsEmpty]: Start isEmpty. Operand 19 states and 21 transitions. [2022-04-15 12:48:44,587 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:48:44,587 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:48:44,587 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 12:48:44,587 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 12:48:44,587 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 14 states have (on average 1.2142857142857142) internal successors, (17), 14 states have internal predecessors, (17), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:44,588 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 19 states to 19 states and 21 transitions. [2022-04-15 12:48:44,588 INFO L78 Accepts]: Start accepts. Automaton has 19 states and 21 transitions. Word has length 18 [2022-04-15 12:48:44,588 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 12:48:44,588 INFO L478 AbstractCegarLoop]: Abstraction has 19 states and 21 transitions. [2022-04-15 12:48:44,588 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 1.75) internal successors, (14), 7 states have internal predecessors, (14), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:44,588 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 19 states and 21 transitions. [2022-04-15 12:48:44,622 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 21 edges. 21 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:48:44,623 INFO L276 IsEmpty]: Start isEmpty. Operand 19 states and 21 transitions. [2022-04-15 12:48:44,623 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-15 12:48:44,623 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 12:48:44,623 INFO L499 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 12:48:44,638 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Ended with exit code 0 [2022-04-15 12:48:44,831 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:48:44,831 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 12:48:44,835 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 12:48:44,835 INFO L85 PathProgramCache]: Analyzing trace with hash 1194243967, now seen corresponding path program 3 times [2022-04-15 12:48:44,835 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 12:48:44,835 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [224455090] [2022-04-15 12:48:44,978 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-15 12:48:44,979 INFO L85 PathProgramCache]: Analyzing trace with hash -931347968, now seen corresponding path program 1 times [2022-04-15 12:48:44,979 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 12:48:44,980 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [344272606] [2022-04-15 12:48:44,980 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:48:44,980 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 12:48:45,008 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:48:45,065 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 12:48:45,066 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:48:45,084 INFO L290 TraceCheckUtils]: 0: Hoare triple {1068#(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(10, 2);call #Ultimate.allocInit(12, 3); {1059#true} is VALID [2022-04-15 12:48:45,084 INFO L290 TraceCheckUtils]: 1: Hoare triple {1059#true} assume true; {1059#true} is VALID [2022-04-15 12:48:45,085 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {1059#true} {1059#true} #61#return; {1059#true} is VALID [2022-04-15 12:48:45,085 INFO L272 TraceCheckUtils]: 0: Hoare triple {1059#true} call ULTIMATE.init(); {1068#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 12:48:45,085 INFO L290 TraceCheckUtils]: 1: Hoare triple {1068#(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(10, 2);call #Ultimate.allocInit(12, 3); {1059#true} is VALID [2022-04-15 12:48:45,085 INFO L290 TraceCheckUtils]: 2: Hoare triple {1059#true} assume true; {1059#true} is VALID [2022-04-15 12:48:45,086 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1059#true} {1059#true} #61#return; {1059#true} is VALID [2022-04-15 12:48:45,086 INFO L272 TraceCheckUtils]: 4: Hoare triple {1059#true} call #t~ret11 := main(); {1059#true} is VALID [2022-04-15 12:48:45,086 INFO L290 TraceCheckUtils]: 5: Hoare triple {1059#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {1059#true} is VALID [2022-04-15 12:48:45,086 INFO L290 TraceCheckUtils]: 6: Hoare triple {1059#true} [73] L16-2-->L16-3_primed: Formula: (or (and (< 0 (mod (+ v_main_~x~0_Out_10 1) 4294967296)) (= (+ v_main_~x~0_In_5 v_main_~y~0_In_5) (+ v_main_~y~0_Out_10 v_main_~x~0_Out_10)) (<= v_main_~x~0_Out_10 v_main_~x~0_In_5) (= |v_main_#t~post6_Out_10| 0) (= |v_main_#t~post5_Out_10| 0)) (and (= v_main_~y~0_In_5 v_main_~y~0_Out_10) (= v_main_~x~0_In_5 v_main_~x~0_Out_10))) InVars {main_~x~0=v_main_~x~0_In_5, main_~y~0=v_main_~y~0_In_5} OutVars{main_~y~0=v_main_~y~0_Out_10, main_#t~post5=|v_main_#t~post5_Out_10|, main_~x~0=v_main_~x~0_Out_10, main_#t~post6=|v_main_#t~post6_Out_10|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {1059#true} is VALID [2022-04-15 12:48:45,086 INFO L290 TraceCheckUtils]: 7: Hoare triple {1059#true} [72] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {1059#true} is VALID [2022-04-15 12:48:45,087 INFO L290 TraceCheckUtils]: 8: Hoare triple {1059#true} ~z~0 := ~y~0; {1064#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} is VALID [2022-04-15 12:48:45,088 INFO L290 TraceCheckUtils]: 9: Hoare triple {1064#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {1065#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} is VALID [2022-04-15 12:48:45,089 INFO L290 TraceCheckUtils]: 10: Hoare triple {1065#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {1066#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} is VALID [2022-04-15 12:48:45,089 INFO L290 TraceCheckUtils]: 11: Hoare triple {1066#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} assume !(~z~0 % 4294967296 > 0); {1066#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} is VALID [2022-04-15 12:48:45,091 INFO L290 TraceCheckUtils]: 12: Hoare triple {1066#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {1067#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} is VALID [2022-04-15 12:48:45,091 INFO L290 TraceCheckUtils]: 13: Hoare triple {1067#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} assume !(~y~0 % 4294967296 > 0); {1060#false} is VALID [2022-04-15 12:48:45,091 INFO L272 TraceCheckUtils]: 14: Hoare triple {1060#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {1060#false} is VALID [2022-04-15 12:48:45,091 INFO L290 TraceCheckUtils]: 15: Hoare triple {1060#false} ~cond := #in~cond; {1060#false} is VALID [2022-04-15 12:48:45,092 INFO L290 TraceCheckUtils]: 16: Hoare triple {1060#false} assume 0 == ~cond; {1060#false} is VALID [2022-04-15 12:48:45,092 INFO L290 TraceCheckUtils]: 17: Hoare triple {1060#false} assume !false; {1060#false} is VALID [2022-04-15 12:48:45,092 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:48:45,092 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 12:48:45,092 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [344272606] [2022-04-15 12:48:45,092 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [344272606] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 12:48:45,092 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1303876867] [2022-04-15 12:48:45,092 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:48:45,092 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:48:45,093 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 12:48:45,108 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 12:48:45,110 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-04-15 12:48:45,137 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:48:45,138 INFO L263 TraceCheckSpWp]: Trace formula consists of 75 conjuncts, 8 conjunts are in the unsatisfiable core [2022-04-15 12:48:45,143 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:48:45,144 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 12:48:45,461 INFO L272 TraceCheckUtils]: 0: Hoare triple {1059#true} call ULTIMATE.init(); {1059#true} is VALID [2022-04-15 12:48:45,461 INFO L290 TraceCheckUtils]: 1: Hoare triple {1059#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(10, 2);call #Ultimate.allocInit(12, 3); {1059#true} is VALID [2022-04-15 12:48:45,461 INFO L290 TraceCheckUtils]: 2: Hoare triple {1059#true} assume true; {1059#true} is VALID [2022-04-15 12:48:45,461 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1059#true} {1059#true} #61#return; {1059#true} is VALID [2022-04-15 12:48:45,461 INFO L272 TraceCheckUtils]: 4: Hoare triple {1059#true} call #t~ret11 := main(); {1059#true} is VALID [2022-04-15 12:48:45,461 INFO L290 TraceCheckUtils]: 5: Hoare triple {1059#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {1059#true} is VALID [2022-04-15 12:48:45,462 INFO L290 TraceCheckUtils]: 6: Hoare triple {1059#true} [73] L16-2-->L16-3_primed: Formula: (or (and (< 0 (mod (+ v_main_~x~0_Out_10 1) 4294967296)) (= (+ v_main_~x~0_In_5 v_main_~y~0_In_5) (+ v_main_~y~0_Out_10 v_main_~x~0_Out_10)) (<= v_main_~x~0_Out_10 v_main_~x~0_In_5) (= |v_main_#t~post6_Out_10| 0) (= |v_main_#t~post5_Out_10| 0)) (and (= v_main_~y~0_In_5 v_main_~y~0_Out_10) (= v_main_~x~0_In_5 v_main_~x~0_Out_10))) InVars {main_~x~0=v_main_~x~0_In_5, main_~y~0=v_main_~y~0_In_5} OutVars{main_~y~0=v_main_~y~0_Out_10, main_#t~post5=|v_main_#t~post5_Out_10|, main_~x~0=v_main_~x~0_Out_10, main_#t~post6=|v_main_#t~post6_Out_10|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {1059#true} is VALID [2022-04-15 12:48:45,462 INFO L290 TraceCheckUtils]: 7: Hoare triple {1059#true} [72] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {1059#true} is VALID [2022-04-15 12:48:45,469 INFO L290 TraceCheckUtils]: 8: Hoare triple {1059#true} ~z~0 := ~y~0; {1064#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} is VALID [2022-04-15 12:48:45,470 INFO L290 TraceCheckUtils]: 9: Hoare triple {1064#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {1065#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} is VALID [2022-04-15 12:48:45,471 INFO L290 TraceCheckUtils]: 10: Hoare triple {1065#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {1066#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} is VALID [2022-04-15 12:48:45,471 INFO L290 TraceCheckUtils]: 11: Hoare triple {1066#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} assume !(~z~0 % 4294967296 > 0); {1066#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} is VALID [2022-04-15 12:48:45,472 INFO L290 TraceCheckUtils]: 12: Hoare triple {1066#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {1067#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} is VALID [2022-04-15 12:48:45,473 INFO L290 TraceCheckUtils]: 13: Hoare triple {1067#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} assume !(~y~0 % 4294967296 > 0); {1060#false} is VALID [2022-04-15 12:48:45,473 INFO L272 TraceCheckUtils]: 14: Hoare triple {1060#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {1060#false} is VALID [2022-04-15 12:48:45,473 INFO L290 TraceCheckUtils]: 15: Hoare triple {1060#false} ~cond := #in~cond; {1060#false} is VALID [2022-04-15 12:48:45,473 INFO L290 TraceCheckUtils]: 16: Hoare triple {1060#false} assume 0 == ~cond; {1060#false} is VALID [2022-04-15 12:48:45,473 INFO L290 TraceCheckUtils]: 17: Hoare triple {1060#false} assume !false; {1060#false} is VALID [2022-04-15 12:48:45,473 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:48:45,474 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 12:48:45,670 INFO L290 TraceCheckUtils]: 17: Hoare triple {1060#false} assume !false; {1060#false} is VALID [2022-04-15 12:48:45,671 INFO L290 TraceCheckUtils]: 16: Hoare triple {1060#false} assume 0 == ~cond; {1060#false} is VALID [2022-04-15 12:48:45,671 INFO L290 TraceCheckUtils]: 15: Hoare triple {1060#false} ~cond := #in~cond; {1060#false} is VALID [2022-04-15 12:48:45,671 INFO L272 TraceCheckUtils]: 14: Hoare triple {1060#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {1060#false} is VALID [2022-04-15 12:48:45,671 INFO L290 TraceCheckUtils]: 13: Hoare triple {1067#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} assume !(~y~0 % 4294967296 > 0); {1060#false} is VALID [2022-04-15 12:48:45,676 INFO L290 TraceCheckUtils]: 12: Hoare triple {1066#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {1067#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} is VALID [2022-04-15 12:48:45,677 INFO L290 TraceCheckUtils]: 11: Hoare triple {1066#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} assume !(~z~0 % 4294967296 > 0); {1066#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} is VALID [2022-04-15 12:48:45,677 INFO L290 TraceCheckUtils]: 10: Hoare triple {1144#(or (<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296)) (not (< 0 (mod main_~z~0 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {1066#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} is VALID [2022-04-15 12:48:45,679 INFO L290 TraceCheckUtils]: 9: Hoare triple {1148#(or (not (< 0 (mod (+ main_~z~0 4294967295) 4294967296))) (<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {1144#(or (<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296)) (not (< 0 (mod main_~z~0 4294967296))))} is VALID [2022-04-15 12:48:45,680 INFO L290 TraceCheckUtils]: 8: Hoare triple {1059#true} ~z~0 := ~y~0; {1148#(or (not (< 0 (mod (+ main_~z~0 4294967295) 4294967296))) (<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296)))} is VALID [2022-04-15 12:48:45,680 INFO L290 TraceCheckUtils]: 7: Hoare triple {1059#true} [72] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {1059#true} is VALID [2022-04-15 12:48:45,680 INFO L290 TraceCheckUtils]: 6: Hoare triple {1059#true} [73] L16-2-->L16-3_primed: Formula: (or (and (< 0 (mod (+ v_main_~x~0_Out_10 1) 4294967296)) (= (+ v_main_~x~0_In_5 v_main_~y~0_In_5) (+ v_main_~y~0_Out_10 v_main_~x~0_Out_10)) (<= v_main_~x~0_Out_10 v_main_~x~0_In_5) (= |v_main_#t~post6_Out_10| 0) (= |v_main_#t~post5_Out_10| 0)) (and (= v_main_~y~0_In_5 v_main_~y~0_Out_10) (= v_main_~x~0_In_5 v_main_~x~0_Out_10))) InVars {main_~x~0=v_main_~x~0_In_5, main_~y~0=v_main_~y~0_In_5} OutVars{main_~y~0=v_main_~y~0_Out_10, main_#t~post5=|v_main_#t~post5_Out_10|, main_~x~0=v_main_~x~0_Out_10, main_#t~post6=|v_main_#t~post6_Out_10|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {1059#true} is VALID [2022-04-15 12:48:45,680 INFO L290 TraceCheckUtils]: 5: Hoare triple {1059#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {1059#true} is VALID [2022-04-15 12:48:45,681 INFO L272 TraceCheckUtils]: 4: Hoare triple {1059#true} call #t~ret11 := main(); {1059#true} is VALID [2022-04-15 12:48:45,681 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1059#true} {1059#true} #61#return; {1059#true} is VALID [2022-04-15 12:48:45,681 INFO L290 TraceCheckUtils]: 2: Hoare triple {1059#true} assume true; {1059#true} is VALID [2022-04-15 12:48:45,681 INFO L290 TraceCheckUtils]: 1: Hoare triple {1059#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(10, 2);call #Ultimate.allocInit(12, 3); {1059#true} is VALID [2022-04-15 12:48:45,681 INFO L272 TraceCheckUtils]: 0: Hoare triple {1059#true} call ULTIMATE.init(); {1059#true} is VALID [2022-04-15 12:48:45,681 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:48:45,681 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1303876867] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 12:48:45,681 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 12:48:45,682 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 6, 6] total 9 [2022-04-15 12:48:45,721 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 12:48:45,722 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [224455090] [2022-04-15 12:48:45,722 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [224455090] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 12:48:45,722 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 12:48:45,722 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-15 12:48:45,722 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1051597883] [2022-04-15 12:48:45,722 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 12:48:45,722 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 1.75) internal successors, (14), 7 states have internal predecessors, (14), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 18 [2022-04-15 12:48:45,722 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 12:48:45,723 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 1.75) internal successors, (14), 7 states have internal predecessors, (14), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:45,736 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:48:45,737 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-15 12:48:45,737 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 12:48:45,737 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-15 12:48:45,737 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2022-04-15 12:48:45,737 INFO L87 Difference]: Start difference. First operand 19 states and 21 transitions. Second operand has 8 states, 8 states have (on average 1.75) internal successors, (14), 7 states have internal predecessors, (14), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:46,004 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:48:46,004 INFO L93 Difference]: Finished difference Result 25 states and 27 transitions. [2022-04-15 12:48:46,004 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-15 12:48:46,005 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 1.75) internal successors, (14), 7 states have internal predecessors, (14), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 18 [2022-04-15 12:48:46,005 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 12:48:46,005 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 1.75) internal successors, (14), 7 states have internal predecessors, (14), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:46,006 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 27 transitions. [2022-04-15 12:48:46,006 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 1.75) internal successors, (14), 7 states have internal predecessors, (14), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:46,006 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 27 transitions. [2022-04-15 12:48:46,006 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 27 transitions. [2022-04-15 12:48:46,032 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:48:46,043 INFO L225 Difference]: With dead ends: 25 [2022-04-15 12:48:46,043 INFO L226 Difference]: Without dead ends: 20 [2022-04-15 12:48:46,043 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 57 GetRequests, 37 SyntacticMatches, 6 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 16 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=58, Invalid=182, Unknown=0, NotChecked=0, Total=240 [2022-04-15 12:48:46,044 INFO L913 BasicCegarLoop]: 14 mSDtfsCounter, 15 mSDsluCounter, 27 mSDsCounter, 0 mSdLazyCounter, 67 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 15 SdHoareTripleChecker+Valid, 41 SdHoareTripleChecker+Invalid, 79 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 67 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 12:48:46,044 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [15 Valid, 41 Invalid, 79 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [12 Valid, 67 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 12:48:46,044 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 20 states. [2022-04-15 12:48:46,080 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 20 to 20. [2022-04-15 12:48:46,080 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 12:48:46,080 INFO L82 GeneralOperation]: Start isEquivalent. First operand 20 states. Second operand has 20 states, 15 states have (on average 1.2) internal successors, (18), 15 states have internal predecessors, (18), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:46,081 INFO L74 IsIncluded]: Start isIncluded. First operand 20 states. Second operand has 20 states, 15 states have (on average 1.2) internal successors, (18), 15 states have internal predecessors, (18), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:46,081 INFO L87 Difference]: Start difference. First operand 20 states. Second operand has 20 states, 15 states have (on average 1.2) internal successors, (18), 15 states have internal predecessors, (18), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:46,081 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:48:46,081 INFO L93 Difference]: Finished difference Result 20 states and 22 transitions. [2022-04-15 12:48:46,081 INFO L276 IsEmpty]: Start isEmpty. Operand 20 states and 22 transitions. [2022-04-15 12:48:46,082 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:48:46,082 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:48:46,083 INFO L74 IsIncluded]: Start isIncluded. First operand has 20 states, 15 states have (on average 1.2) internal successors, (18), 15 states have internal predecessors, (18), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 20 states. [2022-04-15 12:48:46,083 INFO L87 Difference]: Start difference. First operand has 20 states, 15 states have (on average 1.2) internal successors, (18), 15 states have internal predecessors, (18), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 20 states. [2022-04-15 12:48:46,084 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:48:46,084 INFO L93 Difference]: Finished difference Result 20 states and 22 transitions. [2022-04-15 12:48:46,084 INFO L276 IsEmpty]: Start isEmpty. Operand 20 states and 22 transitions. [2022-04-15 12:48:46,084 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:48:46,084 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:48:46,085 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 12:48:46,085 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 12:48:46,085 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 15 states have (on average 1.2) internal successors, (18), 15 states have internal predecessors, (18), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:46,085 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 22 transitions. [2022-04-15 12:48:46,085 INFO L78 Accepts]: Start accepts. Automaton has 20 states and 22 transitions. Word has length 18 [2022-04-15 12:48:46,085 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 12:48:46,085 INFO L478 AbstractCegarLoop]: Abstraction has 20 states and 22 transitions. [2022-04-15 12:48:46,086 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 1.75) internal successors, (14), 7 states have internal predecessors, (14), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:48:46,086 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 22 transitions. [2022-04-15 12:48:46,124 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:48:46,124 INFO L276 IsEmpty]: Start isEmpty. Operand 20 states and 22 transitions. [2022-04-15 12:48:46,125 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-04-15 12:48:46,125 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 12:48:46,125 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 12:48:46,140 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-04-15 12:48:46,325 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:48:46,325 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 12:48:46,326 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 12:48:46,326 INFO L85 PathProgramCache]: Analyzing trace with hash -1598647602, now seen corresponding path program 4 times [2022-04-15 12:48:46,326 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 12:48:46,326 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [172349147] [2022-04-15 12:48:46,454 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-15 12:48:46,455 INFO L85 PathProgramCache]: Analyzing trace with hash 898838573, now seen corresponding path program 1 times [2022-04-15 12:48:46,455 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 12:48:46,455 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [41736582] [2022-04-15 12:48:46,455 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:48:46,455 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 12:48:46,512 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:48:46,810 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 12:48:46,812 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:48:46,821 INFO L290 TraceCheckUtils]: 0: Hoare triple {1339#(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(10, 2);call #Ultimate.allocInit(12, 3); {1323#true} is VALID [2022-04-15 12:48:46,822 INFO L290 TraceCheckUtils]: 1: Hoare triple {1323#true} assume true; {1323#true} is VALID [2022-04-15 12:48:46,822 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {1323#true} {1323#true} #61#return; {1323#true} is VALID [2022-04-15 12:48:46,822 INFO L272 TraceCheckUtils]: 0: Hoare triple {1323#true} call ULTIMATE.init(); {1339#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 12:48:46,822 INFO L290 TraceCheckUtils]: 1: Hoare triple {1339#(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(10, 2);call #Ultimate.allocInit(12, 3); {1323#true} is VALID [2022-04-15 12:48:46,822 INFO L290 TraceCheckUtils]: 2: Hoare triple {1323#true} assume true; {1323#true} is VALID [2022-04-15 12:48:46,823 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1323#true} {1323#true} #61#return; {1323#true} is VALID [2022-04-15 12:48:46,823 INFO L272 TraceCheckUtils]: 4: Hoare triple {1323#true} call #t~ret11 := main(); {1323#true} is VALID [2022-04-15 12:48:46,823 INFO L290 TraceCheckUtils]: 5: Hoare triple {1323#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {1328#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} is VALID [2022-04-15 12:48:46,824 INFO L290 TraceCheckUtils]: 6: Hoare triple {1328#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} [75] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~x~0_In_6 v_main_~x~0_Out_12) (= v_main_~y~0_In_6 v_main_~y~0_Out_12)) (and (= |v_main_#t~post5_Out_12| 0) (< 0 (mod (+ v_main_~x~0_Out_12 1) 4294967296)) (= (+ v_main_~y~0_Out_12 v_main_~x~0_Out_12) (+ v_main_~x~0_In_6 v_main_~y~0_In_6)) (<= v_main_~x~0_Out_12 v_main_~x~0_In_6) (= |v_main_#t~post6_Out_12| 0))) InVars {main_~x~0=v_main_~x~0_In_6, main_~y~0=v_main_~y~0_In_6} OutVars{main_~y~0=v_main_~y~0_Out_12, main_#t~post5=|v_main_#t~post5_Out_12|, main_~x~0=v_main_~x~0_Out_12, main_#t~post6=|v_main_#t~post6_Out_12|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {1329#(or (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~y~0 main_~x~0))) (= main_~y~0 0))} is VALID [2022-04-15 12:48:46,825 INFO L290 TraceCheckUtils]: 7: Hoare triple {1329#(or (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~y~0 main_~x~0))) (= main_~y~0 0))} [74] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {1330#(or (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~y~0 (* 4294967296 (div main_~x~0 4294967296))))) (= main_~y~0 0))} is VALID [2022-04-15 12:48:46,826 INFO L290 TraceCheckUtils]: 8: Hoare triple {1330#(or (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~y~0 (* 4294967296 (div main_~x~0 4294967296))))) (= main_~y~0 0))} ~z~0 := ~y~0; {1331#(and (or (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~y~0 (* 4294967296 (div main_~x~0 4294967296))))) (= main_~y~0 0)) (= (+ main_~y~0 (* (- 1) main_~z~0)) 0))} is VALID [2022-04-15 12:48:46,828 INFO L290 TraceCheckUtils]: 9: Hoare triple {1331#(and (or (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~y~0 (* 4294967296 (div main_~x~0 4294967296))))) (= main_~y~0 0)) (= (+ main_~y~0 (* (- 1) main_~z~0)) 0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {1332#(and (not (= main_~y~0 0)) (<= main_~n~0 (+ main_~z~0 (* (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296) 1)))} is VALID [2022-04-15 12:48:46,829 INFO L290 TraceCheckUtils]: 10: Hoare triple {1332#(and (not (= main_~y~0 0)) (<= main_~n~0 (+ main_~z~0 (* (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296) 1)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {1333#(and (not (= main_~y~0 0)) (<= main_~n~0 (+ main_~z~0 2 (* (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296))))} is VALID [2022-04-15 12:48:46,830 INFO L290 TraceCheckUtils]: 11: Hoare triple {1333#(and (not (= main_~y~0 0)) (<= main_~n~0 (+ main_~z~0 2 (* (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296))))} assume !(~z~0 % 4294967296 > 0); {1334#(and (not (= main_~y~0 0)) (<= main_~n~0 (+ 2 (* (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296) (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:48:46,831 INFO L290 TraceCheckUtils]: 12: Hoare triple {1334#(and (not (= main_~y~0 0)) (<= main_~n~0 (+ 2 (* (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296) (* (div main_~z~0 4294967296) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {1335#(<= (+ (* 4294967296 (div (+ (* (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296) (- 4294967296)) main_~n~0 4294967293) 4294967296)) 1) main_~z~0)} is VALID [2022-04-15 12:48:46,834 INFO L290 TraceCheckUtils]: 13: Hoare triple {1335#(<= (+ (* 4294967296 (div (+ (* (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296) (- 4294967296)) main_~n~0 4294967293) 4294967296)) 1) main_~z~0)} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {1336#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:48:46,834 INFO L290 TraceCheckUtils]: 14: Hoare triple {1336#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} assume !(~y~0 % 4294967296 > 0); {1336#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:48:46,835 INFO L272 TraceCheckUtils]: 15: Hoare triple {1336#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {1337#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 12:48:46,836 INFO L290 TraceCheckUtils]: 16: Hoare triple {1337#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {1338#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 12:48:46,836 INFO L290 TraceCheckUtils]: 17: Hoare triple {1338#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {1324#false} is VALID [2022-04-15 12:48:46,836 INFO L290 TraceCheckUtils]: 18: Hoare triple {1324#false} assume !false; {1324#false} is VALID [2022-04-15 12:48:46,836 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:48:46,836 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 12:48:46,836 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [41736582] [2022-04-15 12:48:46,836 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [41736582] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 12:48:46,836 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [82811811] [2022-04-15 12:48:46,837 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:48:46,837 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:48:46,837 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 12:48:46,838 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 12:48:46,838 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-04-15 12:48:46,885 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:48:46,887 INFO L263 TraceCheckSpWp]: Trace formula consists of 80 conjuncts, 24 conjunts are in the unsatisfiable core [2022-04-15 12:48:46,899 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:48:46,899 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 12:49:16,079 INFO L272 TraceCheckUtils]: 0: Hoare triple {1323#true} call ULTIMATE.init(); {1323#true} is VALID [2022-04-15 12:49:16,080 INFO L290 TraceCheckUtils]: 1: Hoare triple {1323#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(10, 2);call #Ultimate.allocInit(12, 3); {1323#true} is VALID [2022-04-15 12:49:16,080 INFO L290 TraceCheckUtils]: 2: Hoare triple {1323#true} assume true; {1323#true} is VALID [2022-04-15 12:49:16,080 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1323#true} {1323#true} #61#return; {1323#true} is VALID [2022-04-15 12:49:16,080 INFO L272 TraceCheckUtils]: 4: Hoare triple {1323#true} call #t~ret11 := main(); {1323#true} is VALID [2022-04-15 12:49:16,080 INFO L290 TraceCheckUtils]: 5: Hoare triple {1323#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {1328#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} is VALID [2022-04-15 12:49:16,082 INFO L290 TraceCheckUtils]: 6: Hoare triple {1328#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} [75] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~x~0_In_6 v_main_~x~0_Out_12) (= v_main_~y~0_In_6 v_main_~y~0_Out_12)) (and (= |v_main_#t~post5_Out_12| 0) (< 0 (mod (+ v_main_~x~0_Out_12 1) 4294967296)) (= (+ v_main_~y~0_Out_12 v_main_~x~0_Out_12) (+ v_main_~x~0_In_6 v_main_~y~0_In_6)) (<= v_main_~x~0_Out_12 v_main_~x~0_In_6) (= |v_main_#t~post6_Out_12| 0))) InVars {main_~x~0=v_main_~x~0_In_6, main_~y~0=v_main_~y~0_In_6} OutVars{main_~y~0=v_main_~y~0_Out_12, main_#t~post5=|v_main_#t~post5_Out_12|, main_~x~0=v_main_~x~0_Out_12, main_#t~post6=|v_main_#t~post6_Out_12|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {1361#(or (and (< 0 (mod (+ main_~x~0 1) 4294967296)) (<= main_~x~0 main_~n~0) (= main_~n~0 (+ main_~y~0 main_~x~0))) (and (= main_~n~0 main_~x~0) (= main_~y~0 0)))} is VALID [2022-04-15 12:49:16,083 INFO L290 TraceCheckUtils]: 7: Hoare triple {1361#(or (and (< 0 (mod (+ main_~x~0 1) 4294967296)) (<= main_~x~0 main_~n~0) (= main_~n~0 (+ main_~y~0 main_~x~0))) (and (= main_~n~0 main_~x~0) (= main_~y~0 0)))} [74] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {1365#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} is VALID [2022-04-15 12:49:16,084 INFO L290 TraceCheckUtils]: 8: Hoare triple {1365#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} ~z~0 := ~y~0; {1369#(and (<= 0 main_~y~0) (= main_~z~0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} is VALID [2022-04-15 12:49:16,086 INFO L290 TraceCheckUtils]: 9: Hoare triple {1369#(and (<= 0 main_~y~0) (= main_~z~0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {1373#(and (<= 0 main_~y~0) (< 0 (mod (+ main_~z~0 1) 4294967296)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= main_~y~0 (+ main_~z~0 1)))} is VALID [2022-04-15 12:49:16,087 INFO L290 TraceCheckUtils]: 10: Hoare triple {1373#(and (<= 0 main_~y~0) (< 0 (mod (+ main_~z~0 1) 4294967296)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= main_~y~0 (+ main_~z~0 1)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {1377#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= (+ main_~z~0 1) (+ (- 1) main_~y~0)) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:49:16,087 INFO L290 TraceCheckUtils]: 11: Hoare triple {1377#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= (+ main_~z~0 1) (+ (- 1) main_~y~0)) (< 0 (mod main_~y~0 4294967296)))} assume !(~z~0 % 4294967296 > 0); {1381#(and (<= 0 main_~y~0) (= main_~y~0 (+ main_~z~0 2)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (<= (mod main_~z~0 4294967296) 0))} is VALID [2022-04-15 12:49:16,090 INFO L290 TraceCheckUtils]: 12: Hoare triple {1381#(and (<= 0 main_~y~0) (= main_~y~0 (+ main_~z~0 2)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (<= (mod main_~z~0 4294967296) 0))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {1385#(and (<= (mod (+ main_~z~0 4294967295) 4294967296) 0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0) 1) (- 4294967296)) (div (+ (- 1) main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= (+ main_~z~0 1) (+ main_~y~0 1)) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-15 12:49:16,092 INFO L290 TraceCheckUtils]: 13: Hoare triple {1385#(and (<= (mod (+ main_~z~0 4294967295) 4294967296) 0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0) 1) (- 4294967296)) (div (+ (- 1) main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= (+ main_~z~0 1) (+ main_~y~0 1)) (<= 0 (+ main_~y~0 1)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {1389#(and (<= (mod (+ main_~z~0 4294967294) 4294967296) 0) (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} is VALID [2022-04-15 12:49:16,093 INFO L290 TraceCheckUtils]: 14: Hoare triple {1389#(and (<= (mod (+ main_~z~0 4294967294) 4294967296) 0) (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} assume !(~y~0 % 4294967296 > 0); {1389#(and (<= (mod (+ main_~z~0 4294967294) 4294967296) 0) (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} is VALID [2022-04-15 12:49:16,096 INFO L272 TraceCheckUtils]: 15: Hoare triple {1389#(and (<= (mod (+ main_~z~0 4294967294) 4294967296) 0) (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {1396#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 12:49:16,097 INFO L290 TraceCheckUtils]: 16: Hoare triple {1396#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1400#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 12:49:16,097 INFO L290 TraceCheckUtils]: 17: Hoare triple {1400#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1324#false} is VALID [2022-04-15 12:49:16,097 INFO L290 TraceCheckUtils]: 18: Hoare triple {1324#false} assume !false; {1324#false} is VALID [2022-04-15 12:49:16,098 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:49:16,098 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 12:49:38,253 INFO L290 TraceCheckUtils]: 18: Hoare triple {1324#false} assume !false; {1324#false} is VALID [2022-04-15 12:49:38,254 INFO L290 TraceCheckUtils]: 17: Hoare triple {1400#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1324#false} is VALID [2022-04-15 12:49:38,254 INFO L290 TraceCheckUtils]: 16: Hoare triple {1396#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1400#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 12:49:38,255 INFO L272 TraceCheckUtils]: 15: Hoare triple {1336#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {1396#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 12:49:38,256 INFO L290 TraceCheckUtils]: 14: Hoare triple {1336#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} assume !(~y~0 % 4294967296 > 0); {1336#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:49:38,257 INFO L290 TraceCheckUtils]: 13: Hoare triple {1422#(or (and (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296)) (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)))) (not (< 0 (mod main_~y~0 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {1336#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:49:38,259 INFO L290 TraceCheckUtils]: 12: Hoare triple {1426#(or (and (< (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0) (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0))) (not (< 0 (mod (+ main_~y~0 4294967295) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {1422#(or (and (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296)) (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)))) (not (< 0 (mod main_~y~0 4294967296))))} is VALID [2022-04-15 12:49:38,260 INFO L290 TraceCheckUtils]: 11: Hoare triple {1430#(or (< 0 (mod main_~z~0 4294967296)) (and (< (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0) (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0))) (not (< 0 (mod (+ main_~y~0 4294967295) 4294967296))))} assume !(~z~0 % 4294967296 > 0); {1426#(or (and (< (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0) (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0))) (not (< 0 (mod (+ main_~y~0 4294967295) 4294967296))))} is VALID [2022-04-15 12:49:38,265 INFO L290 TraceCheckUtils]: 10: Hoare triple {1434#(or (and (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296)) (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)))) (< 0 (mod (+ main_~z~0 4294967295) 4294967296)) (not (< 0 (mod (+ main_~y~0 4294967295) 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {1430#(or (< 0 (mod main_~z~0 4294967296)) (and (< (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0) (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0))) (not (< 0 (mod (+ main_~y~0 4294967295) 4294967296))))} is VALID [2022-04-15 12:49:38,267 INFO L290 TraceCheckUtils]: 9: Hoare triple {1438#(or (and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)))) (<= (mod (+ main_~y~0 4294967295) 4294967296) 0) (< 0 (mod (+ main_~z~0 4294967294) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {1434#(or (and (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296)) (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)))) (< 0 (mod (+ main_~z~0 4294967295) 4294967296)) (not (< 0 (mod (+ main_~y~0 4294967295) 4294967296))))} is VALID [2022-04-15 12:49:38,268 INFO L290 TraceCheckUtils]: 8: Hoare triple {1442#(or (< 0 (mod (+ main_~y~0 4294967294) 4294967296)) (and (< (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0))))} ~z~0 := ~y~0; {1438#(or (and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)))) (<= (mod (+ main_~y~0 4294967295) 4294967296) 0) (< 0 (mod (+ main_~z~0 4294967294) 4294967296)))} is VALID [2022-04-15 12:49:38,269 INFO L290 TraceCheckUtils]: 7: Hoare triple {1446#(or (< 0 (mod (+ main_~y~0 4294967294) 4294967296)) (< 0 (mod main_~x~0 4294967296)) (and (< (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0))))} [74] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {1442#(or (< 0 (mod (+ main_~y~0 4294967294) 4294967296)) (and (< (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0))))} is VALID [2022-04-15 12:49:40,285 WARN L290 TraceCheckUtils]: 6: Hoare triple {1450#(and (forall ((aux_div_v_main_~y~0_51_46 Int) (aux_div_aux_mod_v_main_~y~0_51_46_102 Int) (aux_mod_aux_mod_v_main_~y~0_51_46_102 Int)) (or (<= 4294967296 aux_mod_aux_mod_v_main_~y~0_51_46_102) (< (* aux_div_v_main_~y~0_51_46 4294967296) (+ 4294967294 (* aux_div_aux_mod_v_main_~y~0_51_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_51_46_102)) (<= (+ (* (div main_~n~0 4294967296) 4294967296) aux_mod_aux_mod_v_main_~y~0_51_46_102) main_~n~0) (and (or (forall ((aux_div_v_main_~x~0_45_31 Int)) (or (< (+ main_~y~0 main_~x~0) (+ (* aux_div_v_main_~x~0_45_31 4294967296) (* aux_div_aux_mod_v_main_~y~0_51_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_51_46_102)) (< (+ (* aux_div_v_main_~x~0_45_31 4294967296) (* aux_div_aux_mod_v_main_~y~0_51_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_51_46_102) (+ main_~y~0 main_~x~0)))) (< (+ (* aux_div_aux_mod_v_main_~y~0_51_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_51_46_102) main_~y~0) (<= (mod (+ (* 4294967295 aux_mod_aux_mod_v_main_~y~0_51_46_102) main_~y~0 main_~x~0 1) 4294967296) 0)) (or (not (= (+ main_~y~0 4294967294) (+ 4294967294 (* aux_div_aux_mod_v_main_~y~0_51_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_51_46_102))) (< (div (+ (- 1) (* (- 1) main_~x~0)) (- 4294967296)) (+ 2 (div (+ (- 1) main_~x~0) 4294967296))))) (< (+ 4294967294 (* aux_div_aux_mod_v_main_~y~0_51_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_51_46_102) (* aux_div_v_main_~y~0_51_46 4294967296)))) (forall ((aux_div_v_main_~y~0_51_46 Int) (aux_div_aux_mod_v_main_~y~0_51_46_102 Int) (aux_mod_aux_mod_v_main_~y~0_51_46_102 Int)) (or (< aux_mod_aux_mod_v_main_~y~0_51_46_102 0) (< (* aux_div_v_main_~y~0_51_46 4294967296) (+ 4294967294 (* aux_div_aux_mod_v_main_~y~0_51_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_51_46_102)) (and (or (forall ((aux_div_v_main_~x~0_45_31 Int)) (or (< (+ main_~y~0 main_~x~0) (+ (* aux_div_v_main_~x~0_45_31 4294967296) (* aux_div_aux_mod_v_main_~y~0_51_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_51_46_102)) (< (+ (* aux_div_v_main_~x~0_45_31 4294967296) (* aux_div_aux_mod_v_main_~y~0_51_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_51_46_102) (+ main_~y~0 main_~x~0)))) (< (+ (* aux_div_aux_mod_v_main_~y~0_51_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_51_46_102) main_~y~0) (<= (mod (+ (* 4294967295 aux_mod_aux_mod_v_main_~y~0_51_46_102) main_~y~0 main_~x~0 1) 4294967296) 0)) (or (not (= (+ main_~y~0 4294967294) (+ 4294967294 (* aux_div_aux_mod_v_main_~y~0_51_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_51_46_102))) (< (div (+ (- 1) (* (- 1) main_~x~0)) (- 4294967296)) (+ 2 (div (+ (- 1) main_~x~0) 4294967296))))) (< main_~n~0 (+ (* (div main_~n~0 4294967296) 4294967296) aux_mod_aux_mod_v_main_~y~0_51_46_102 1)) (< (+ 4294967294 (* aux_div_aux_mod_v_main_~y~0_51_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_51_46_102) (* aux_div_v_main_~y~0_51_46 4294967296)))))} [75] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~x~0_In_6 v_main_~x~0_Out_12) (= v_main_~y~0_In_6 v_main_~y~0_Out_12)) (and (= |v_main_#t~post5_Out_12| 0) (< 0 (mod (+ v_main_~x~0_Out_12 1) 4294967296)) (= (+ v_main_~y~0_Out_12 v_main_~x~0_Out_12) (+ v_main_~x~0_In_6 v_main_~y~0_In_6)) (<= v_main_~x~0_Out_12 v_main_~x~0_In_6) (= |v_main_#t~post6_Out_12| 0))) InVars {main_~x~0=v_main_~x~0_In_6, main_~y~0=v_main_~y~0_In_6} OutVars{main_~y~0=v_main_~y~0_Out_12, main_#t~post5=|v_main_#t~post5_Out_12|, main_~x~0=v_main_~x~0_Out_12, main_#t~post6=|v_main_#t~post6_Out_12|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {1446#(or (< 0 (mod (+ main_~y~0 4294967294) 4294967296)) (< 0 (mod main_~x~0 4294967296)) (and (< (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0))))} is UNKNOWN [2022-04-15 12:49:40,294 INFO L290 TraceCheckUtils]: 5: Hoare triple {1323#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {1450#(and (forall ((aux_div_v_main_~y~0_51_46 Int) (aux_div_aux_mod_v_main_~y~0_51_46_102 Int) (aux_mod_aux_mod_v_main_~y~0_51_46_102 Int)) (or (<= 4294967296 aux_mod_aux_mod_v_main_~y~0_51_46_102) (< (* aux_div_v_main_~y~0_51_46 4294967296) (+ 4294967294 (* aux_div_aux_mod_v_main_~y~0_51_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_51_46_102)) (<= (+ (* (div main_~n~0 4294967296) 4294967296) aux_mod_aux_mod_v_main_~y~0_51_46_102) main_~n~0) (and (or (forall ((aux_div_v_main_~x~0_45_31 Int)) (or (< (+ main_~y~0 main_~x~0) (+ (* aux_div_v_main_~x~0_45_31 4294967296) (* aux_div_aux_mod_v_main_~y~0_51_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_51_46_102)) (< (+ (* aux_div_v_main_~x~0_45_31 4294967296) (* aux_div_aux_mod_v_main_~y~0_51_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_51_46_102) (+ main_~y~0 main_~x~0)))) (< (+ (* aux_div_aux_mod_v_main_~y~0_51_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_51_46_102) main_~y~0) (<= (mod (+ (* 4294967295 aux_mod_aux_mod_v_main_~y~0_51_46_102) main_~y~0 main_~x~0 1) 4294967296) 0)) (or (not (= (+ main_~y~0 4294967294) (+ 4294967294 (* aux_div_aux_mod_v_main_~y~0_51_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_51_46_102))) (< (div (+ (- 1) (* (- 1) main_~x~0)) (- 4294967296)) (+ 2 (div (+ (- 1) main_~x~0) 4294967296))))) (< (+ 4294967294 (* aux_div_aux_mod_v_main_~y~0_51_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_51_46_102) (* aux_div_v_main_~y~0_51_46 4294967296)))) (forall ((aux_div_v_main_~y~0_51_46 Int) (aux_div_aux_mod_v_main_~y~0_51_46_102 Int) (aux_mod_aux_mod_v_main_~y~0_51_46_102 Int)) (or (< aux_mod_aux_mod_v_main_~y~0_51_46_102 0) (< (* aux_div_v_main_~y~0_51_46 4294967296) (+ 4294967294 (* aux_div_aux_mod_v_main_~y~0_51_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_51_46_102)) (and (or (forall ((aux_div_v_main_~x~0_45_31 Int)) (or (< (+ main_~y~0 main_~x~0) (+ (* aux_div_v_main_~x~0_45_31 4294967296) (* aux_div_aux_mod_v_main_~y~0_51_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_51_46_102)) (< (+ (* aux_div_v_main_~x~0_45_31 4294967296) (* aux_div_aux_mod_v_main_~y~0_51_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_51_46_102) (+ main_~y~0 main_~x~0)))) (< (+ (* aux_div_aux_mod_v_main_~y~0_51_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_51_46_102) main_~y~0) (<= (mod (+ (* 4294967295 aux_mod_aux_mod_v_main_~y~0_51_46_102) main_~y~0 main_~x~0 1) 4294967296) 0)) (or (not (= (+ main_~y~0 4294967294) (+ 4294967294 (* aux_div_aux_mod_v_main_~y~0_51_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_51_46_102))) (< (div (+ (- 1) (* (- 1) main_~x~0)) (- 4294967296)) (+ 2 (div (+ (- 1) main_~x~0) 4294967296))))) (< main_~n~0 (+ (* (div main_~n~0 4294967296) 4294967296) aux_mod_aux_mod_v_main_~y~0_51_46_102 1)) (< (+ 4294967294 (* aux_div_aux_mod_v_main_~y~0_51_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_51_46_102) (* aux_div_v_main_~y~0_51_46 4294967296)))))} is VALID [2022-04-15 12:49:40,294 INFO L272 TraceCheckUtils]: 4: Hoare triple {1323#true} call #t~ret11 := main(); {1323#true} is VALID [2022-04-15 12:49:40,294 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1323#true} {1323#true} #61#return; {1323#true} is VALID [2022-04-15 12:49:40,295 INFO L290 TraceCheckUtils]: 2: Hoare triple {1323#true} assume true; {1323#true} is VALID [2022-04-15 12:49:40,295 INFO L290 TraceCheckUtils]: 1: Hoare triple {1323#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(10, 2);call #Ultimate.allocInit(12, 3); {1323#true} is VALID [2022-04-15 12:49:40,295 INFO L272 TraceCheckUtils]: 0: Hoare triple {1323#true} call ULTIMATE.init(); {1323#true} is VALID [2022-04-15 12:49:40,297 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:49:40,297 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [82811811] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 12:49:40,298 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 12:49:40,298 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [14, 13, 13] total 32 [2022-04-15 12:49:40,469 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 12:49:40,469 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [172349147] [2022-04-15 12:49:40,469 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [172349147] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 12:49:40,469 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 12:49:40,469 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-15 12:49:40,469 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [719386211] [2022-04-15 12:49:40,469 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 12:49:40,470 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 1.0714285714285714) internal successors, (15), 12 states have internal predecessors, (15), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 19 [2022-04-15 12:49:40,470 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 12:49:40,470 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 1.0714285714285714) internal successors, (15), 12 states have internal predecessors, (15), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:49:40,496 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 19 edges. 19 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:49:40,496 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-15 12:49:40,496 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 12:49:40,497 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-15 12:49:40,497 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=167, Invalid=949, Unknown=6, NotChecked=0, Total=1122 [2022-04-15 12:49:40,497 INFO L87 Difference]: Start difference. First operand 20 states and 22 transitions. Second operand has 14 states, 14 states have (on average 1.0714285714285714) internal successors, (15), 12 states have internal predecessors, (15), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:49:41,590 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:49:41,590 INFO L93 Difference]: Finished difference Result 29 states and 32 transitions. [2022-04-15 12:49:41,591 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-04-15 12:49:41,591 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 1.0714285714285714) internal successors, (15), 12 states have internal predecessors, (15), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 19 [2022-04-15 12:49:41,591 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 12:49:41,591 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 1.0714285714285714) internal successors, (15), 12 states have internal predecessors, (15), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:49:41,592 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 30 transitions. [2022-04-15 12:49:41,592 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 1.0714285714285714) internal successors, (15), 12 states have internal predecessors, (15), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:49:41,593 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 30 transitions. [2022-04-15 12:49:41,593 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 14 states and 30 transitions. [2022-04-15 12:49:41,641 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:49:41,642 INFO L225 Difference]: With dead ends: 29 [2022-04-15 12:49:41,642 INFO L226 Difference]: Without dead ends: 24 [2022-04-15 12:49:41,642 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 66 GetRequests, 20 SyntacticMatches, 3 SemanticMatches, 43 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 542 ImplicationChecksByTransitivity, 18.8s TimeCoverageRelationStatistics Valid=272, Invalid=1702, Unknown=6, NotChecked=0, Total=1980 [2022-04-15 12:49:41,643 INFO L913 BasicCegarLoop]: 10 mSDtfsCounter, 18 mSDsluCounter, 52 mSDsCounter, 0 mSdLazyCounter, 172 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 18 SdHoareTripleChecker+Valid, 62 SdHoareTripleChecker+Invalid, 186 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 172 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-15 12:49:41,643 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [18 Valid, 62 Invalid, 186 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 172 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-15 12:49:41,643 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 24 states. [2022-04-15 12:49:41,682 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 24 to 22. [2022-04-15 12:49:41,682 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 12:49:41,682 INFO L82 GeneralOperation]: Start isEquivalent. First operand 24 states. Second operand has 22 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 17 states have internal predecessors, (21), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:49:41,682 INFO L74 IsIncluded]: Start isIncluded. First operand 24 states. Second operand has 22 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 17 states have internal predecessors, (21), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:49:41,682 INFO L87 Difference]: Start difference. First operand 24 states. Second operand has 22 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 17 states have internal predecessors, (21), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:49:41,683 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:49:41,683 INFO L93 Difference]: Finished difference Result 24 states and 27 transitions. [2022-04-15 12:49:41,683 INFO L276 IsEmpty]: Start isEmpty. Operand 24 states and 27 transitions. [2022-04-15 12:49:41,683 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:49:41,684 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:49:41,684 INFO L74 IsIncluded]: Start isIncluded. First operand has 22 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 17 states have internal predecessors, (21), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 24 states. [2022-04-15 12:49:41,684 INFO L87 Difference]: Start difference. First operand has 22 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 17 states have internal predecessors, (21), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 24 states. [2022-04-15 12:49:41,684 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:49:41,684 INFO L93 Difference]: Finished difference Result 24 states and 27 transitions. [2022-04-15 12:49:41,685 INFO L276 IsEmpty]: Start isEmpty. Operand 24 states and 27 transitions. [2022-04-15 12:49:41,685 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:49:41,685 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:49:41,685 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 12:49:41,685 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 12:49:41,685 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 17 states have (on average 1.2352941176470589) internal successors, (21), 17 states have internal predecessors, (21), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:49:41,685 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 25 transitions. [2022-04-15 12:49:41,686 INFO L78 Accepts]: Start accepts. Automaton has 22 states and 25 transitions. Word has length 19 [2022-04-15 12:49:41,686 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 12:49:41,686 INFO L478 AbstractCegarLoop]: Abstraction has 22 states and 25 transitions. [2022-04-15 12:49:41,686 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 1.0714285714285714) internal successors, (15), 12 states have internal predecessors, (15), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:49:41,686 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 25 transitions. [2022-04-15 12:49:41,745 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:49:41,745 INFO L276 IsEmpty]: Start isEmpty. Operand 22 states and 25 transitions. [2022-04-15 12:49:41,745 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 21 [2022-04-15 12:49:41,746 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 12:49:41,746 INFO L499 BasicCegarLoop]: trace histogram [3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 12:49:41,761 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Ended with exit code 0 [2022-04-15 12:49:41,957 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:49:41,958 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 12:49:41,958 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 12:49:41,958 INFO L85 PathProgramCache]: Analyzing trace with hash 2016026975, now seen corresponding path program 5 times [2022-04-15 12:49:41,958 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 12:49:41,958 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2129907452] [2022-04-15 12:49:42,117 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-15 12:49:42,118 INFO L85 PathProgramCache]: Analyzing trace with hash 530763808, now seen corresponding path program 1 times [2022-04-15 12:49:42,118 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 12:49:42,119 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [302848730] [2022-04-15 12:49:42,119 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:49:42,119 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 12:49:42,136 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:49:42,228 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 12:49:42,230 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:49:42,240 INFO L290 TraceCheckUtils]: 0: Hoare triple {1656#(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(10, 2);call #Ultimate.allocInit(12, 3); {1645#true} is VALID [2022-04-15 12:49:42,240 INFO L290 TraceCheckUtils]: 1: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-04-15 12:49:42,240 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {1645#true} {1645#true} #61#return; {1645#true} is VALID [2022-04-15 12:49:42,241 INFO L272 TraceCheckUtils]: 0: Hoare triple {1645#true} call ULTIMATE.init(); {1656#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 12:49:42,241 INFO L290 TraceCheckUtils]: 1: Hoare triple {1656#(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(10, 2);call #Ultimate.allocInit(12, 3); {1645#true} is VALID [2022-04-15 12:49:42,241 INFO L290 TraceCheckUtils]: 2: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-04-15 12:49:42,241 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1645#true} {1645#true} #61#return; {1645#true} is VALID [2022-04-15 12:49:42,241 INFO L272 TraceCheckUtils]: 4: Hoare triple {1645#true} call #t~ret11 := main(); {1645#true} is VALID [2022-04-15 12:49:42,241 INFO L290 TraceCheckUtils]: 5: Hoare triple {1645#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {1645#true} is VALID [2022-04-15 12:49:42,241 INFO L290 TraceCheckUtils]: 6: Hoare triple {1645#true} [77] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~x~0_In_7 v_main_~x~0_Out_14) (= v_main_~y~0_In_7 v_main_~y~0_Out_14)) (and (= |v_main_#t~post5_Out_14| 0) (= (+ v_main_~x~0_In_7 v_main_~y~0_In_7) (+ v_main_~y~0_Out_14 v_main_~x~0_Out_14)) (< 0 (mod (+ v_main_~x~0_Out_14 1) 4294967296)) (= |v_main_#t~post6_Out_14| 0) (<= v_main_~x~0_Out_14 v_main_~x~0_In_7))) InVars {main_~x~0=v_main_~x~0_In_7, main_~y~0=v_main_~y~0_In_7} OutVars{main_~y~0=v_main_~y~0_Out_14, main_#t~post5=|v_main_#t~post5_Out_14|, main_~x~0=v_main_~x~0_Out_14, main_#t~post6=|v_main_#t~post6_Out_14|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {1645#true} is VALID [2022-04-15 12:49:42,242 INFO L290 TraceCheckUtils]: 7: Hoare triple {1645#true} [76] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {1645#true} is VALID [2022-04-15 12:49:42,242 INFO L290 TraceCheckUtils]: 8: Hoare triple {1645#true} ~z~0 := ~y~0; {1650#(= (+ main_~y~0 (* (- 1) main_~z~0)) 0)} is VALID [2022-04-15 12:49:42,243 INFO L290 TraceCheckUtils]: 9: Hoare triple {1650#(= (+ main_~y~0 (* (- 1) main_~z~0)) 0)} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {1651#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} is VALID [2022-04-15 12:49:42,244 INFO L290 TraceCheckUtils]: 10: Hoare triple {1651#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {1652#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} is VALID [2022-04-15 12:49:42,245 INFO L290 TraceCheckUtils]: 11: Hoare triple {1652#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} assume !(~z~0 % 4294967296 > 0); {1653#(and (<= (+ 2 (* (div main_~z~0 4294967296) 4294967296)) main_~y~0) (<= main_~y~0 (+ 2 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:49:42,246 INFO L290 TraceCheckUtils]: 12: Hoare triple {1653#(and (<= (+ 2 (* (div main_~z~0 4294967296) 4294967296)) main_~y~0) (<= main_~y~0 (+ 2 (* (div main_~z~0 4294967296) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {1654#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} is VALID [2022-04-15 12:49:42,249 INFO L290 TraceCheckUtils]: 13: Hoare triple {1654#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {1655#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} is VALID [2022-04-15 12:49:42,250 INFO L290 TraceCheckUtils]: 14: Hoare triple {1655#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {1646#false} is VALID [2022-04-15 12:49:42,250 INFO L290 TraceCheckUtils]: 15: Hoare triple {1646#false} assume !(~y~0 % 4294967296 > 0); {1646#false} is VALID [2022-04-15 12:49:42,250 INFO L272 TraceCheckUtils]: 16: Hoare triple {1646#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {1646#false} is VALID [2022-04-15 12:49:42,250 INFO L290 TraceCheckUtils]: 17: Hoare triple {1646#false} ~cond := #in~cond; {1646#false} is VALID [2022-04-15 12:49:42,250 INFO L290 TraceCheckUtils]: 18: Hoare triple {1646#false} assume 0 == ~cond; {1646#false} is VALID [2022-04-15 12:49:42,250 INFO L290 TraceCheckUtils]: 19: Hoare triple {1646#false} assume !false; {1646#false} is VALID [2022-04-15 12:49:42,251 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 3 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:49:42,251 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 12:49:42,251 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [302848730] [2022-04-15 12:49:42,251 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [302848730] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 12:49:42,251 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [891157824] [2022-04-15 12:49:42,251 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:49:42,251 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:49:42,252 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 12:49:42,252 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 12:49:42,254 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-04-15 12:49:42,288 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:49:42,289 INFO L263 TraceCheckSpWp]: Trace formula consists of 85 conjuncts, 12 conjunts are in the unsatisfiable core [2022-04-15 12:49:42,297 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:49:42,297 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 12:49:42,577 INFO L272 TraceCheckUtils]: 0: Hoare triple {1645#true} call ULTIMATE.init(); {1645#true} is VALID [2022-04-15 12:49:42,578 INFO L290 TraceCheckUtils]: 1: Hoare triple {1645#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(10, 2);call #Ultimate.allocInit(12, 3); {1645#true} is VALID [2022-04-15 12:49:42,578 INFO L290 TraceCheckUtils]: 2: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-04-15 12:49:42,578 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1645#true} {1645#true} #61#return; {1645#true} is VALID [2022-04-15 12:49:42,578 INFO L272 TraceCheckUtils]: 4: Hoare triple {1645#true} call #t~ret11 := main(); {1645#true} is VALID [2022-04-15 12:49:42,578 INFO L290 TraceCheckUtils]: 5: Hoare triple {1645#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {1645#true} is VALID [2022-04-15 12:49:42,578 INFO L290 TraceCheckUtils]: 6: Hoare triple {1645#true} [77] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~x~0_In_7 v_main_~x~0_Out_14) (= v_main_~y~0_In_7 v_main_~y~0_Out_14)) (and (= |v_main_#t~post5_Out_14| 0) (= (+ v_main_~x~0_In_7 v_main_~y~0_In_7) (+ v_main_~y~0_Out_14 v_main_~x~0_Out_14)) (< 0 (mod (+ v_main_~x~0_Out_14 1) 4294967296)) (= |v_main_#t~post6_Out_14| 0) (<= v_main_~x~0_Out_14 v_main_~x~0_In_7))) InVars {main_~x~0=v_main_~x~0_In_7, main_~y~0=v_main_~y~0_In_7} OutVars{main_~y~0=v_main_~y~0_Out_14, main_#t~post5=|v_main_#t~post5_Out_14|, main_~x~0=v_main_~x~0_Out_14, main_#t~post6=|v_main_#t~post6_Out_14|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {1645#true} is VALID [2022-04-15 12:49:42,578 INFO L290 TraceCheckUtils]: 7: Hoare triple {1645#true} [76] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {1645#true} is VALID [2022-04-15 12:49:42,579 INFO L290 TraceCheckUtils]: 8: Hoare triple {1645#true} ~z~0 := ~y~0; {1650#(= (+ main_~y~0 (* (- 1) main_~z~0)) 0)} is VALID [2022-04-15 12:49:42,580 INFO L290 TraceCheckUtils]: 9: Hoare triple {1650#(= (+ main_~y~0 (* (- 1) main_~z~0)) 0)} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {1651#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} is VALID [2022-04-15 12:49:42,581 INFO L290 TraceCheckUtils]: 10: Hoare triple {1651#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {1652#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} is VALID [2022-04-15 12:49:42,582 INFO L290 TraceCheckUtils]: 11: Hoare triple {1652#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} assume !(~z~0 % 4294967296 > 0); {1693#(<= (div (+ 2 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ (- 2) main_~y~0) 4294967296))} is VALID [2022-04-15 12:49:42,584 INFO L290 TraceCheckUtils]: 12: Hoare triple {1693#(<= (div (+ 2 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ (- 2) main_~y~0) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {1654#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} is VALID [2022-04-15 12:49:42,584 INFO L290 TraceCheckUtils]: 13: Hoare triple {1654#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {1655#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} is VALID [2022-04-15 12:49:42,585 INFO L290 TraceCheckUtils]: 14: Hoare triple {1655#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {1646#false} is VALID [2022-04-15 12:49:42,585 INFO L290 TraceCheckUtils]: 15: Hoare triple {1646#false} assume !(~y~0 % 4294967296 > 0); {1646#false} is VALID [2022-04-15 12:49:42,585 INFO L272 TraceCheckUtils]: 16: Hoare triple {1646#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {1646#false} is VALID [2022-04-15 12:49:42,585 INFO L290 TraceCheckUtils]: 17: Hoare triple {1646#false} ~cond := #in~cond; {1646#false} is VALID [2022-04-15 12:49:42,586 INFO L290 TraceCheckUtils]: 18: Hoare triple {1646#false} assume 0 == ~cond; {1646#false} is VALID [2022-04-15 12:49:42,586 INFO L290 TraceCheckUtils]: 19: Hoare triple {1646#false} assume !false; {1646#false} is VALID [2022-04-15 12:49:42,586 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 3 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:49:42,586 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 12:49:43,023 INFO L290 TraceCheckUtils]: 19: Hoare triple {1646#false} assume !false; {1646#false} is VALID [2022-04-15 12:49:43,023 INFO L290 TraceCheckUtils]: 18: Hoare triple {1646#false} assume 0 == ~cond; {1646#false} is VALID [2022-04-15 12:49:43,023 INFO L290 TraceCheckUtils]: 17: Hoare triple {1646#false} ~cond := #in~cond; {1646#false} is VALID [2022-04-15 12:49:43,023 INFO L272 TraceCheckUtils]: 16: Hoare triple {1646#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {1646#false} is VALID [2022-04-15 12:49:43,023 INFO L290 TraceCheckUtils]: 15: Hoare triple {1646#false} assume !(~y~0 % 4294967296 > 0); {1646#false} is VALID [2022-04-15 12:49:43,024 INFO L290 TraceCheckUtils]: 14: Hoare triple {1655#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {1646#false} is VALID [2022-04-15 12:49:43,025 INFO L290 TraceCheckUtils]: 13: Hoare triple {1654#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {1655#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} is VALID [2022-04-15 12:49:43,026 INFO L290 TraceCheckUtils]: 12: Hoare triple {1693#(<= (div (+ 2 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ (- 2) main_~y~0) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {1654#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} is VALID [2022-04-15 12:49:43,027 INFO L290 TraceCheckUtils]: 11: Hoare triple {1742#(or (< 0 (mod main_~z~0 4294967296)) (<= (div (+ 2 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ (- 2) main_~y~0) 4294967296)))} assume !(~z~0 % 4294967296 > 0); {1693#(<= (div (+ 2 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ (- 2) main_~y~0) 4294967296))} is VALID [2022-04-15 12:49:43,028 INFO L290 TraceCheckUtils]: 10: Hoare triple {1746#(or (<= (div (+ 2 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ (- 2) main_~y~0) 4294967296)) (< 0 (mod (+ main_~z~0 4294967295) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {1742#(or (< 0 (mod main_~z~0 4294967296)) (<= (div (+ 2 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ (- 2) main_~y~0) 4294967296)))} is VALID [2022-04-15 12:49:43,029 INFO L290 TraceCheckUtils]: 9: Hoare triple {1750#(or (< 0 (mod (+ main_~z~0 4294967294) 4294967296)) (<= (div (+ 2 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ (- 2) main_~y~0) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {1746#(or (<= (div (+ 2 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ (- 2) main_~y~0) 4294967296)) (< 0 (mod (+ main_~z~0 4294967295) 4294967296)))} is VALID [2022-04-15 12:49:43,030 INFO L290 TraceCheckUtils]: 8: Hoare triple {1645#true} ~z~0 := ~y~0; {1750#(or (< 0 (mod (+ main_~z~0 4294967294) 4294967296)) (<= (div (+ 2 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ (- 2) main_~y~0) 4294967296)))} is VALID [2022-04-15 12:49:43,031 INFO L290 TraceCheckUtils]: 7: Hoare triple {1645#true} [76] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {1645#true} is VALID [2022-04-15 12:49:43,031 INFO L290 TraceCheckUtils]: 6: Hoare triple {1645#true} [77] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~x~0_In_7 v_main_~x~0_Out_14) (= v_main_~y~0_In_7 v_main_~y~0_Out_14)) (and (= |v_main_#t~post5_Out_14| 0) (= (+ v_main_~x~0_In_7 v_main_~y~0_In_7) (+ v_main_~y~0_Out_14 v_main_~x~0_Out_14)) (< 0 (mod (+ v_main_~x~0_Out_14 1) 4294967296)) (= |v_main_#t~post6_Out_14| 0) (<= v_main_~x~0_Out_14 v_main_~x~0_In_7))) InVars {main_~x~0=v_main_~x~0_In_7, main_~y~0=v_main_~y~0_In_7} OutVars{main_~y~0=v_main_~y~0_Out_14, main_#t~post5=|v_main_#t~post5_Out_14|, main_~x~0=v_main_~x~0_Out_14, main_#t~post6=|v_main_#t~post6_Out_14|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {1645#true} is VALID [2022-04-15 12:49:43,031 INFO L290 TraceCheckUtils]: 5: Hoare triple {1645#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {1645#true} is VALID [2022-04-15 12:49:43,031 INFO L272 TraceCheckUtils]: 4: Hoare triple {1645#true} call #t~ret11 := main(); {1645#true} is VALID [2022-04-15 12:49:43,031 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1645#true} {1645#true} #61#return; {1645#true} is VALID [2022-04-15 12:49:43,031 INFO L290 TraceCheckUtils]: 2: Hoare triple {1645#true} assume true; {1645#true} is VALID [2022-04-15 12:49:43,031 INFO L290 TraceCheckUtils]: 1: Hoare triple {1645#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(10, 2);call #Ultimate.allocInit(12, 3); {1645#true} is VALID [2022-04-15 12:49:43,031 INFO L272 TraceCheckUtils]: 0: Hoare triple {1645#true} call ULTIMATE.init(); {1645#true} is VALID [2022-04-15 12:49:43,031 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 3 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:49:43,031 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [891157824] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 12:49:43,032 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 12:49:43,032 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 8, 8] total 13 [2022-04-15 12:49:43,082 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 12:49:43,083 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2129907452] [2022-04-15 12:49:43,083 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2129907452] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 12:49:43,083 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 12:49:43,083 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [10] imperfect sequences [] total 10 [2022-04-15 12:49:43,083 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1679771303] [2022-04-15 12:49:43,083 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 12:49:43,083 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 1.6) internal successors, (16), 9 states have internal predecessors, (16), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 20 [2022-04-15 12:49:43,084 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 12:49:43,084 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 10 states, 10 states have (on average 1.6) internal successors, (16), 9 states have internal predecessors, (16), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:49:43,104 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 20 edges. 20 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:49:43,104 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-04-15 12:49:43,104 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 12:49:43,105 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-04-15 12:49:43,105 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=35, Invalid=147, Unknown=0, NotChecked=0, Total=182 [2022-04-15 12:49:43,105 INFO L87 Difference]: Start difference. First operand 22 states and 25 transitions. Second operand has 10 states, 10 states have (on average 1.6) internal successors, (16), 9 states have internal predecessors, (16), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:49:43,667 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:49:43,667 INFO L93 Difference]: Finished difference Result 39 states and 45 transitions. [2022-04-15 12:49:43,667 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-15 12:49:43,667 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 10 states have (on average 1.6) internal successors, (16), 9 states have internal predecessors, (16), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 20 [2022-04-15 12:49:43,668 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 12:49:43,668 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 1.6) internal successors, (16), 9 states have internal predecessors, (16), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:49:43,668 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 38 transitions. [2022-04-15 12:49:43,669 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 10 states have (on average 1.6) internal successors, (16), 9 states have internal predecessors, (16), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:49:43,669 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 38 transitions. [2022-04-15 12:49:43,669 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 38 transitions. [2022-04-15 12:49:43,718 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:49:43,719 INFO L225 Difference]: With dead ends: 39 [2022-04-15 12:49:43,719 INFO L226 Difference]: Without dead ends: 22 [2022-04-15 12:49:43,720 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 69 GetRequests, 41 SyntacticMatches, 6 SemanticMatches, 22 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 51 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=103, Invalid=449, Unknown=0, NotChecked=0, Total=552 [2022-04-15 12:49:43,720 INFO L913 BasicCegarLoop]: 11 mSDtfsCounter, 20 mSDsluCounter, 37 mSDsCounter, 0 mSdLazyCounter, 110 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 20 SdHoareTripleChecker+Valid, 48 SdHoareTripleChecker+Invalid, 127 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 110 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-15 12:49:43,720 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [20 Valid, 48 Invalid, 127 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 110 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-15 12:49:43,720 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 22 states. [2022-04-15 12:49:43,752 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 22 to 22. [2022-04-15 12:49:43,752 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 12:49:43,752 INFO L82 GeneralOperation]: Start isEquivalent. First operand 22 states. Second operand has 22 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 17 states have internal predecessors, (20), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:49:43,753 INFO L74 IsIncluded]: Start isIncluded. First operand 22 states. Second operand has 22 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 17 states have internal predecessors, (20), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:49:43,753 INFO L87 Difference]: Start difference. First operand 22 states. Second operand has 22 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 17 states have internal predecessors, (20), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:49:43,754 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:49:43,754 INFO L93 Difference]: Finished difference Result 22 states and 24 transitions. [2022-04-15 12:49:43,754 INFO L276 IsEmpty]: Start isEmpty. Operand 22 states and 24 transitions. [2022-04-15 12:49:43,754 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:49:43,754 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:49:43,754 INFO L74 IsIncluded]: Start isIncluded. First operand has 22 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 17 states have internal predecessors, (20), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 22 states. [2022-04-15 12:49:43,754 INFO L87 Difference]: Start difference. First operand has 22 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 17 states have internal predecessors, (20), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 22 states. [2022-04-15 12:49:43,755 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:49:43,755 INFO L93 Difference]: Finished difference Result 22 states and 24 transitions. [2022-04-15 12:49:43,755 INFO L276 IsEmpty]: Start isEmpty. Operand 22 states and 24 transitions. [2022-04-15 12:49:43,755 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:49:43,755 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:49:43,756 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 12:49:43,756 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 12:49:43,756 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 17 states have (on average 1.1764705882352942) internal successors, (20), 17 states have internal predecessors, (20), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:49:43,756 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 24 transitions. [2022-04-15 12:49:43,756 INFO L78 Accepts]: Start accepts. Automaton has 22 states and 24 transitions. Word has length 20 [2022-04-15 12:49:43,756 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 12:49:43,756 INFO L478 AbstractCegarLoop]: Abstraction has 22 states and 24 transitions. [2022-04-15 12:49:43,757 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 10 states have (on average 1.6) internal successors, (16), 9 states have internal predecessors, (16), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:49:43,757 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 22 states and 24 transitions. [2022-04-15 12:49:43,815 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:49:43,815 INFO L276 IsEmpty]: Start isEmpty. Operand 22 states and 24 transitions. [2022-04-15 12:49:43,816 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2022-04-15 12:49:43,816 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 12:49:43,816 INFO L499 BasicCegarLoop]: trace histogram [3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 12:49:43,832 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-15 12:49:44,019 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:49:44,019 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 12:49:44,020 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 12:49:44,020 INFO L85 PathProgramCache]: Analyzing trace with hash -1178216785, now seen corresponding path program 6 times [2022-04-15 12:49:44,020 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 12:49:44,020 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [145900049] [2022-04-15 12:49:44,182 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-15 12:49:44,183 INFO L85 PathProgramCache]: Analyzing trace with hash -1568798961, now seen corresponding path program 1 times [2022-04-15 12:49:44,183 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 12:49:44,183 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [893611828] [2022-04-15 12:49:44,183 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:49:44,183 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 12:49:44,213 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:49:44,330 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 12:49:44,331 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:49:44,334 INFO L290 TraceCheckUtils]: 0: Hoare triple {1981#(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(10, 2);call #Ultimate.allocInit(12, 3); {1970#true} is VALID [2022-04-15 12:49:44,334 INFO L290 TraceCheckUtils]: 1: Hoare triple {1970#true} assume true; {1970#true} is VALID [2022-04-15 12:49:44,334 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {1970#true} {1970#true} #61#return; {1970#true} is VALID [2022-04-15 12:49:44,335 INFO L272 TraceCheckUtils]: 0: Hoare triple {1970#true} call ULTIMATE.init(); {1981#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 12:49:44,335 INFO L290 TraceCheckUtils]: 1: Hoare triple {1981#(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(10, 2);call #Ultimate.allocInit(12, 3); {1970#true} is VALID [2022-04-15 12:49:44,335 INFO L290 TraceCheckUtils]: 2: Hoare triple {1970#true} assume true; {1970#true} is VALID [2022-04-15 12:49:44,335 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1970#true} {1970#true} #61#return; {1970#true} is VALID [2022-04-15 12:49:44,335 INFO L272 TraceCheckUtils]: 4: Hoare triple {1970#true} call #t~ret11 := main(); {1970#true} is VALID [2022-04-15 12:49:44,335 INFO L290 TraceCheckUtils]: 5: Hoare triple {1970#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {1970#true} is VALID [2022-04-15 12:49:44,335 INFO L290 TraceCheckUtils]: 6: Hoare triple {1970#true} [79] L16-2-->L16-3_primed: Formula: (or (and (= |v_main_#t~post5_Out_16| 0) (< 0 (mod (+ v_main_~x~0_Out_16 1) 4294967296)) (= |v_main_#t~post6_Out_16| 0) (= (+ v_main_~y~0_Out_16 v_main_~x~0_Out_16) (+ v_main_~x~0_In_8 v_main_~y~0_In_8)) (<= v_main_~x~0_Out_16 v_main_~x~0_In_8)) (and (= v_main_~x~0_In_8 v_main_~x~0_Out_16) (= v_main_~y~0_In_8 v_main_~y~0_Out_16))) InVars {main_~x~0=v_main_~x~0_In_8, main_~y~0=v_main_~y~0_In_8} OutVars{main_~y~0=v_main_~y~0_Out_16, main_#t~post5=|v_main_#t~post5_Out_16|, main_~x~0=v_main_~x~0_Out_16, main_#t~post6=|v_main_#t~post6_Out_16|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {1970#true} is VALID [2022-04-15 12:49:44,335 INFO L290 TraceCheckUtils]: 7: Hoare triple {1970#true} [78] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {1970#true} is VALID [2022-04-15 12:49:44,336 INFO L290 TraceCheckUtils]: 8: Hoare triple {1970#true} ~z~0 := ~y~0; {1975#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} is VALID [2022-04-15 12:49:44,337 INFO L290 TraceCheckUtils]: 9: Hoare triple {1975#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {1976#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} is VALID [2022-04-15 12:49:44,338 INFO L290 TraceCheckUtils]: 10: Hoare triple {1976#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {1977#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} is VALID [2022-04-15 12:49:44,339 INFO L290 TraceCheckUtils]: 11: Hoare triple {1977#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {1978#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} is VALID [2022-04-15 12:49:44,339 INFO L290 TraceCheckUtils]: 12: Hoare triple {1978#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} assume !(~z~0 % 4294967296 > 0); {1978#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} is VALID [2022-04-15 12:49:44,340 INFO L290 TraceCheckUtils]: 13: Hoare triple {1978#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {1979#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} is VALID [2022-04-15 12:49:44,341 INFO L290 TraceCheckUtils]: 14: Hoare triple {1979#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {1980#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} is VALID [2022-04-15 12:49:44,342 INFO L290 TraceCheckUtils]: 15: Hoare triple {1980#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} assume !(~y~0 % 4294967296 > 0); {1971#false} is VALID [2022-04-15 12:49:44,342 INFO L272 TraceCheckUtils]: 16: Hoare triple {1971#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {1971#false} is VALID [2022-04-15 12:49:44,342 INFO L290 TraceCheckUtils]: 17: Hoare triple {1971#false} ~cond := #in~cond; {1971#false} is VALID [2022-04-15 12:49:44,342 INFO L290 TraceCheckUtils]: 18: Hoare triple {1971#false} assume 0 == ~cond; {1971#false} is VALID [2022-04-15 12:49:44,342 INFO L290 TraceCheckUtils]: 19: Hoare triple {1971#false} assume !false; {1971#false} is VALID [2022-04-15 12:49:44,342 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 0 proven. 9 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:49:44,342 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 12:49:44,343 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [893611828] [2022-04-15 12:49:44,343 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [893611828] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 12:49:44,343 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [469835945] [2022-04-15 12:49:44,343 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:49:44,343 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:49:44,343 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 12:49:44,344 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 12:49:44,344 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-04-15 12:49:44,376 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:49:44,377 INFO L263 TraceCheckSpWp]: Trace formula consists of 85 conjuncts, 12 conjunts are in the unsatisfiable core [2022-04-15 12:49:44,382 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:49:44,383 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 12:49:44,694 INFO L272 TraceCheckUtils]: 0: Hoare triple {1970#true} call ULTIMATE.init(); {1970#true} is VALID [2022-04-15 12:49:44,695 INFO L290 TraceCheckUtils]: 1: Hoare triple {1970#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(10, 2);call #Ultimate.allocInit(12, 3); {1970#true} is VALID [2022-04-15 12:49:44,695 INFO L290 TraceCheckUtils]: 2: Hoare triple {1970#true} assume true; {1970#true} is VALID [2022-04-15 12:49:44,695 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1970#true} {1970#true} #61#return; {1970#true} is VALID [2022-04-15 12:49:44,695 INFO L272 TraceCheckUtils]: 4: Hoare triple {1970#true} call #t~ret11 := main(); {1970#true} is VALID [2022-04-15 12:49:44,695 INFO L290 TraceCheckUtils]: 5: Hoare triple {1970#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {1970#true} is VALID [2022-04-15 12:49:44,695 INFO L290 TraceCheckUtils]: 6: Hoare triple {1970#true} [79] L16-2-->L16-3_primed: Formula: (or (and (= |v_main_#t~post5_Out_16| 0) (< 0 (mod (+ v_main_~x~0_Out_16 1) 4294967296)) (= |v_main_#t~post6_Out_16| 0) (= (+ v_main_~y~0_Out_16 v_main_~x~0_Out_16) (+ v_main_~x~0_In_8 v_main_~y~0_In_8)) (<= v_main_~x~0_Out_16 v_main_~x~0_In_8)) (and (= v_main_~x~0_In_8 v_main_~x~0_Out_16) (= v_main_~y~0_In_8 v_main_~y~0_Out_16))) InVars {main_~x~0=v_main_~x~0_In_8, main_~y~0=v_main_~y~0_In_8} OutVars{main_~y~0=v_main_~y~0_Out_16, main_#t~post5=|v_main_#t~post5_Out_16|, main_~x~0=v_main_~x~0_Out_16, main_#t~post6=|v_main_#t~post6_Out_16|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {1970#true} is VALID [2022-04-15 12:49:44,695 INFO L290 TraceCheckUtils]: 7: Hoare triple {1970#true} [78] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {1970#true} is VALID [2022-04-15 12:49:44,700 INFO L290 TraceCheckUtils]: 8: Hoare triple {1970#true} ~z~0 := ~y~0; {1975#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} is VALID [2022-04-15 12:49:44,706 INFO L290 TraceCheckUtils]: 9: Hoare triple {1975#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {1976#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} is VALID [2022-04-15 12:49:44,707 INFO L290 TraceCheckUtils]: 10: Hoare triple {1976#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {1977#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} is VALID [2022-04-15 12:49:44,709 INFO L290 TraceCheckUtils]: 11: Hoare triple {1977#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {1978#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} is VALID [2022-04-15 12:49:44,709 INFO L290 TraceCheckUtils]: 12: Hoare triple {1978#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} assume !(~z~0 % 4294967296 > 0); {1978#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} is VALID [2022-04-15 12:49:44,710 INFO L290 TraceCheckUtils]: 13: Hoare triple {1978#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {1979#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} is VALID [2022-04-15 12:49:44,713 INFO L290 TraceCheckUtils]: 14: Hoare triple {1979#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {1980#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} is VALID [2022-04-15 12:49:44,714 INFO L290 TraceCheckUtils]: 15: Hoare triple {1980#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} assume !(~y~0 % 4294967296 > 0); {1971#false} is VALID [2022-04-15 12:49:44,714 INFO L272 TraceCheckUtils]: 16: Hoare triple {1971#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {1971#false} is VALID [2022-04-15 12:49:44,714 INFO L290 TraceCheckUtils]: 17: Hoare triple {1971#false} ~cond := #in~cond; {1971#false} is VALID [2022-04-15 12:49:44,714 INFO L290 TraceCheckUtils]: 18: Hoare triple {1971#false} assume 0 == ~cond; {1971#false} is VALID [2022-04-15 12:49:44,714 INFO L290 TraceCheckUtils]: 19: Hoare triple {1971#false} assume !false; {1971#false} is VALID [2022-04-15 12:49:44,714 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 0 proven. 9 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:49:44,714 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 12:49:44,996 INFO L290 TraceCheckUtils]: 19: Hoare triple {1971#false} assume !false; {1971#false} is VALID [2022-04-15 12:49:44,997 INFO L290 TraceCheckUtils]: 18: Hoare triple {1971#false} assume 0 == ~cond; {1971#false} is VALID [2022-04-15 12:49:44,997 INFO L290 TraceCheckUtils]: 17: Hoare triple {1971#false} ~cond := #in~cond; {1971#false} is VALID [2022-04-15 12:49:44,997 INFO L272 TraceCheckUtils]: 16: Hoare triple {1971#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {1971#false} is VALID [2022-04-15 12:49:44,998 INFO L290 TraceCheckUtils]: 15: Hoare triple {1980#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} assume !(~y~0 % 4294967296 > 0); {1971#false} is VALID [2022-04-15 12:49:44,999 INFO L290 TraceCheckUtils]: 14: Hoare triple {1979#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {1980#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} is VALID [2022-04-15 12:49:45,001 INFO L290 TraceCheckUtils]: 13: Hoare triple {1978#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {1979#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} is VALID [2022-04-15 12:49:45,001 INFO L290 TraceCheckUtils]: 12: Hoare triple {1978#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} assume !(~z~0 % 4294967296 > 0); {1978#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} is VALID [2022-04-15 12:49:45,001 INFO L290 TraceCheckUtils]: 11: Hoare triple {2066#(or (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297)) (not (< 0 (mod main_~z~0 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {1978#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} is VALID [2022-04-15 12:49:45,003 INFO L290 TraceCheckUtils]: 10: Hoare triple {2070#(or (not (< 0 (mod (+ main_~z~0 4294967295) 4294967296))) (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {2066#(or (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297)) (not (< 0 (mod main_~z~0 4294967296))))} is VALID [2022-04-15 12:49:45,005 INFO L290 TraceCheckUtils]: 9: Hoare triple {2074#(or (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297)) (not (< 0 (mod (+ main_~z~0 4294967294) 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {2070#(or (not (< 0 (mod (+ main_~z~0 4294967295) 4294967296))) (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297)))} is VALID [2022-04-15 12:49:45,006 INFO L290 TraceCheckUtils]: 8: Hoare triple {1970#true} ~z~0 := ~y~0; {2074#(or (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297)) (not (< 0 (mod (+ main_~z~0 4294967294) 4294967296))))} is VALID [2022-04-15 12:49:45,006 INFO L290 TraceCheckUtils]: 7: Hoare triple {1970#true} [78] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {1970#true} is VALID [2022-04-15 12:49:45,006 INFO L290 TraceCheckUtils]: 6: Hoare triple {1970#true} [79] L16-2-->L16-3_primed: Formula: (or (and (= |v_main_#t~post5_Out_16| 0) (< 0 (mod (+ v_main_~x~0_Out_16 1) 4294967296)) (= |v_main_#t~post6_Out_16| 0) (= (+ v_main_~y~0_Out_16 v_main_~x~0_Out_16) (+ v_main_~x~0_In_8 v_main_~y~0_In_8)) (<= v_main_~x~0_Out_16 v_main_~x~0_In_8)) (and (= v_main_~x~0_In_8 v_main_~x~0_Out_16) (= v_main_~y~0_In_8 v_main_~y~0_Out_16))) InVars {main_~x~0=v_main_~x~0_In_8, main_~y~0=v_main_~y~0_In_8} OutVars{main_~y~0=v_main_~y~0_Out_16, main_#t~post5=|v_main_#t~post5_Out_16|, main_~x~0=v_main_~x~0_Out_16, main_#t~post6=|v_main_#t~post6_Out_16|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {1970#true} is VALID [2022-04-15 12:49:45,006 INFO L290 TraceCheckUtils]: 5: Hoare triple {1970#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {1970#true} is VALID [2022-04-15 12:49:45,006 INFO L272 TraceCheckUtils]: 4: Hoare triple {1970#true} call #t~ret11 := main(); {1970#true} is VALID [2022-04-15 12:49:45,006 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1970#true} {1970#true} #61#return; {1970#true} is VALID [2022-04-15 12:49:45,007 INFO L290 TraceCheckUtils]: 2: Hoare triple {1970#true} assume true; {1970#true} is VALID [2022-04-15 12:49:45,007 INFO L290 TraceCheckUtils]: 1: Hoare triple {1970#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(10, 2);call #Ultimate.allocInit(12, 3); {1970#true} is VALID [2022-04-15 12:49:45,007 INFO L272 TraceCheckUtils]: 0: Hoare triple {1970#true} call ULTIMATE.init(); {1970#true} is VALID [2022-04-15 12:49:45,007 INFO L134 CoverageAnalysis]: Checked inductivity of 9 backedges. 3 proven. 6 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:49:45,007 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [469835945] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 12:49:45,007 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 12:49:45,007 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 8, 8] total 12 [2022-04-15 12:49:45,095 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 12:49:45,095 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [145900049] [2022-04-15 12:49:45,095 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [145900049] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 12:49:45,095 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 12:49:45,095 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-15 12:49:45,095 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2117849366] [2022-04-15 12:49:45,095 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 12:49:45,096 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 1.5454545454545454) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 21 [2022-04-15 12:49:45,096 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 12:49:45,096 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 1.5454545454545454) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:49:45,122 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 21 edges. 21 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:49:45,122 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-15 12:49:45,122 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 12:49:45,122 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-15 12:49:45,122 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=32, Invalid=150, Unknown=0, NotChecked=0, Total=182 [2022-04-15 12:49:45,123 INFO L87 Difference]: Start difference. First operand 22 states and 24 transitions. Second operand has 11 states, 11 states have (on average 1.5454545454545454) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:49:45,758 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:49:45,758 INFO L93 Difference]: Finished difference Result 28 states and 30 transitions. [2022-04-15 12:49:45,758 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-15 12:49:45,758 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 1.5454545454545454) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 21 [2022-04-15 12:49:45,758 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 12:49:45,758 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 1.5454545454545454) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:49:45,769 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 30 transitions. [2022-04-15 12:49:45,770 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 1.5454545454545454) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:49:45,780 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 30 transitions. [2022-04-15 12:49:45,780 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 30 transitions. [2022-04-15 12:49:45,823 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:49:45,823 INFO L225 Difference]: With dead ends: 28 [2022-04-15 12:49:45,824 INFO L226 Difference]: Without dead ends: 23 [2022-04-15 12:49:45,824 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 67 GetRequests, 40 SyntacticMatches, 6 SemanticMatches, 21 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 48 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=100, Invalid=406, Unknown=0, NotChecked=0, Total=506 [2022-04-15 12:49:45,824 INFO L913 BasicCegarLoop]: 14 mSDtfsCounter, 17 mSDsluCounter, 42 mSDsCounter, 0 mSdLazyCounter, 115 mSolverCounterSat, 22 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 56 SdHoareTripleChecker+Invalid, 137 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 22 IncrementalHoareTripleChecker+Valid, 115 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-15 12:49:45,824 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [17 Valid, 56 Invalid, 137 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [22 Valid, 115 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-15 12:49:45,825 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 23 states. [2022-04-15 12:49:45,861 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 23 to 23. [2022-04-15 12:49:45,861 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 12:49:45,861 INFO L82 GeneralOperation]: Start isEquivalent. First operand 23 states. Second operand has 23 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 18 states have internal predecessors, (21), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:49:45,861 INFO L74 IsIncluded]: Start isIncluded. First operand 23 states. Second operand has 23 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 18 states have internal predecessors, (21), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:49:45,861 INFO L87 Difference]: Start difference. First operand 23 states. Second operand has 23 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 18 states have internal predecessors, (21), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:49:45,862 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:49:45,862 INFO L93 Difference]: Finished difference Result 23 states and 25 transitions. [2022-04-15 12:49:45,862 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 25 transitions. [2022-04-15 12:49:45,862 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:49:45,862 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:49:45,863 INFO L74 IsIncluded]: Start isIncluded. First operand has 23 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 18 states have internal predecessors, (21), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 23 states. [2022-04-15 12:49:45,863 INFO L87 Difference]: Start difference. First operand has 23 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 18 states have internal predecessors, (21), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 23 states. [2022-04-15 12:49:45,863 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:49:45,863 INFO L93 Difference]: Finished difference Result 23 states and 25 transitions. [2022-04-15 12:49:45,863 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 25 transitions. [2022-04-15 12:49:45,863 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:49:45,863 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:49:45,864 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 12:49:45,864 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 12:49:45,864 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 18 states have (on average 1.1666666666666667) internal successors, (21), 18 states have internal predecessors, (21), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:49:45,864 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 25 transitions. [2022-04-15 12:49:45,864 INFO L78 Accepts]: Start accepts. Automaton has 23 states and 25 transitions. Word has length 21 [2022-04-15 12:49:45,864 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 12:49:45,864 INFO L478 AbstractCegarLoop]: Abstraction has 23 states and 25 transitions. [2022-04-15 12:49:45,865 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 1.5454545454545454) internal successors, (17), 10 states have internal predecessors, (17), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:49:45,865 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 23 states and 25 transitions. [2022-04-15 12:49:45,920 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:49:45,920 INFO L276 IsEmpty]: Start isEmpty. Operand 23 states and 25 transitions. [2022-04-15 12:49:45,920 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 23 [2022-04-15 12:49:45,920 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 12:49:45,920 INFO L499 BasicCegarLoop]: trace histogram [3, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 12:49:45,936 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-15 12:49:46,121 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:49:46,121 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 12:49:46,121 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 12:49:46,122 INFO L85 PathProgramCache]: Analyzing trace with hash -2130486882, now seen corresponding path program 7 times [2022-04-15 12:49:46,122 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 12:49:46,122 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [504451386] [2022-04-15 12:49:46,221 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-15 12:49:46,222 INFO L85 PathProgramCache]: Analyzing trace with hash 650353918, now seen corresponding path program 1 times [2022-04-15 12:49:46,223 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 12:49:46,223 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1878025478] [2022-04-15 12:49:46,223 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:49:46,223 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 12:49:46,252 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:49:46,533 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 12:49:46,534 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:49:46,539 INFO L290 TraceCheckUtils]: 0: Hoare triple {2289#(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(10, 2);call #Ultimate.allocInit(12, 3); {2274#true} is VALID [2022-04-15 12:49:46,540 INFO L290 TraceCheckUtils]: 1: Hoare triple {2274#true} assume true; {2274#true} is VALID [2022-04-15 12:49:46,540 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {2274#true} {2274#true} #61#return; {2274#true} is VALID [2022-04-15 12:49:46,540 INFO L272 TraceCheckUtils]: 0: Hoare triple {2274#true} call ULTIMATE.init(); {2289#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 12:49:46,540 INFO L290 TraceCheckUtils]: 1: Hoare triple {2289#(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(10, 2);call #Ultimate.allocInit(12, 3); {2274#true} is VALID [2022-04-15 12:49:46,540 INFO L290 TraceCheckUtils]: 2: Hoare triple {2274#true} assume true; {2274#true} is VALID [2022-04-15 12:49:46,540 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2274#true} {2274#true} #61#return; {2274#true} is VALID [2022-04-15 12:49:46,541 INFO L272 TraceCheckUtils]: 4: Hoare triple {2274#true} call #t~ret11 := main(); {2274#true} is VALID [2022-04-15 12:49:46,541 INFO L290 TraceCheckUtils]: 5: Hoare triple {2274#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {2279#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} is VALID [2022-04-15 12:49:46,543 INFO L290 TraceCheckUtils]: 6: Hoare triple {2279#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} [81] L16-2-->L16-3_primed: Formula: (or (and (<= v_main_~x~0_Out_18 v_main_~x~0_In_9) (= |v_main_#t~post5_Out_18| 0) (= |v_main_#t~post6_Out_18| 0) (= (+ v_main_~y~0_Out_18 v_main_~x~0_Out_18) (+ v_main_~x~0_In_9 v_main_~y~0_In_9)) (< 0 (mod (+ v_main_~x~0_Out_18 1) 4294967296))) (and (= v_main_~y~0_In_9 v_main_~y~0_Out_18) (= v_main_~x~0_In_9 v_main_~x~0_Out_18))) InVars {main_~x~0=v_main_~x~0_In_9, main_~y~0=v_main_~y~0_In_9} OutVars{main_~y~0=v_main_~y~0_Out_18, main_#t~post5=|v_main_#t~post5_Out_18|, main_~x~0=v_main_~x~0_Out_18, main_#t~post6=|v_main_#t~post6_Out_18|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {2280#(or (and (<= 0 main_~y~0) (<= main_~y~0 0)) (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= (+ main_~y~0 main_~x~0) main_~n~0) (<= main_~n~0 (+ main_~y~0 main_~x~0))))} is VALID [2022-04-15 12:49:46,544 INFO L290 TraceCheckUtils]: 7: Hoare triple {2280#(or (and (<= 0 main_~y~0) (<= main_~y~0 0)) (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= (+ main_~y~0 main_~x~0) main_~n~0) (<= main_~n~0 (+ main_~y~0 main_~x~0))))} [80] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {2281#(or (and (<= 0 main_~y~0) (<= main_~y~0 0)) (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~y~0 (* 4294967296 (div main_~x~0 4294967296))))))} is VALID [2022-04-15 12:49:46,545 INFO L290 TraceCheckUtils]: 8: Hoare triple {2281#(or (and (<= 0 main_~y~0) (<= main_~y~0 0)) (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~y~0 (* 4294967296 (div main_~x~0 4294967296))))))} ~z~0 := ~y~0; {2282#(or (and (<= main_~z~0 0) (<= 0 main_~z~0)) (and (<= (+ main_~z~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~z~0 (* 4294967296 (div main_~x~0 4294967296))))))} is VALID [2022-04-15 12:49:46,547 INFO L290 TraceCheckUtils]: 9: Hoare triple {2282#(or (and (<= main_~z~0 0) (<= 0 main_~z~0)) (and (<= (+ main_~z~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~z~0 (* 4294967296 (div main_~x~0 4294967296))))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {2283#(<= main_~n~0 (+ main_~z~0 (* (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296) 1))} is VALID [2022-04-15 12:49:46,548 INFO L290 TraceCheckUtils]: 10: Hoare triple {2283#(<= main_~n~0 (+ main_~z~0 (* (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296) 1))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {2284#(<= main_~n~0 (+ main_~z~0 2 (* (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:49:46,549 INFO L290 TraceCheckUtils]: 11: Hoare triple {2284#(<= main_~n~0 (+ main_~z~0 2 (* (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {2285#(<= main_~n~0 (+ main_~z~0 3 (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296))))} is VALID [2022-04-15 12:49:46,549 INFO L290 TraceCheckUtils]: 12: Hoare triple {2285#(<= main_~n~0 (+ main_~z~0 3 (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296))))} assume !(~z~0 % 4294967296 > 0); {2285#(<= main_~n~0 (+ main_~z~0 3 (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296))))} is VALID [2022-04-15 12:49:46,551 INFO L290 TraceCheckUtils]: 13: Hoare triple {2285#(<= main_~n~0 (+ main_~z~0 3 (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {2284#(<= main_~n~0 (+ main_~z~0 2 (* (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:49:46,552 INFO L290 TraceCheckUtils]: 14: Hoare triple {2284#(<= main_~n~0 (+ main_~z~0 2 (* (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {2283#(<= main_~n~0 (+ main_~z~0 (* (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296) 1))} is VALID [2022-04-15 12:49:46,554 INFO L290 TraceCheckUtils]: 15: Hoare triple {2283#(<= main_~n~0 (+ main_~z~0 (* (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296) 1))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {2286#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:49:46,554 INFO L290 TraceCheckUtils]: 16: Hoare triple {2286#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} assume !(~y~0 % 4294967296 > 0); {2286#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:49:46,555 INFO L272 TraceCheckUtils]: 17: Hoare triple {2286#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {2287#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 12:49:46,556 INFO L290 TraceCheckUtils]: 18: Hoare triple {2287#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {2288#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 12:49:46,556 INFO L290 TraceCheckUtils]: 19: Hoare triple {2288#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {2275#false} is VALID [2022-04-15 12:49:46,556 INFO L290 TraceCheckUtils]: 20: Hoare triple {2275#false} assume !false; {2275#false} is VALID [2022-04-15 12:49:46,556 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 12 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:49:46,556 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 12:49:46,556 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1878025478] [2022-04-15 12:49:46,557 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1878025478] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 12:49:46,557 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1902546282] [2022-04-15 12:49:46,557 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:49:46,557 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:49:46,557 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 12:49:46,558 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 12:49:46,559 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-04-15 12:49:46,636 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:49:46,638 INFO L263 TraceCheckSpWp]: Trace formula consists of 90 conjuncts, 31 conjunts are in the unsatisfiable core [2022-04-15 12:49:46,650 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:49:46,651 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 12:49:49,185 INFO L272 TraceCheckUtils]: 0: Hoare triple {2274#true} call ULTIMATE.init(); {2274#true} is VALID [2022-04-15 12:49:49,186 INFO L290 TraceCheckUtils]: 1: Hoare triple {2274#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(10, 2);call #Ultimate.allocInit(12, 3); {2274#true} is VALID [2022-04-15 12:49:49,186 INFO L290 TraceCheckUtils]: 2: Hoare triple {2274#true} assume true; {2274#true} is VALID [2022-04-15 12:49:49,186 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2274#true} {2274#true} #61#return; {2274#true} is VALID [2022-04-15 12:49:49,186 INFO L272 TraceCheckUtils]: 4: Hoare triple {2274#true} call #t~ret11 := main(); {2274#true} is VALID [2022-04-15 12:49:49,186 INFO L290 TraceCheckUtils]: 5: Hoare triple {2274#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {2279#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} is VALID [2022-04-15 12:49:49,188 INFO L290 TraceCheckUtils]: 6: Hoare triple {2279#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} [81] L16-2-->L16-3_primed: Formula: (or (and (<= v_main_~x~0_Out_18 v_main_~x~0_In_9) (= |v_main_#t~post5_Out_18| 0) (= |v_main_#t~post6_Out_18| 0) (= (+ v_main_~y~0_Out_18 v_main_~x~0_Out_18) (+ v_main_~x~0_In_9 v_main_~y~0_In_9)) (< 0 (mod (+ v_main_~x~0_Out_18 1) 4294967296))) (and (= v_main_~y~0_In_9 v_main_~y~0_Out_18) (= v_main_~x~0_In_9 v_main_~x~0_Out_18))) InVars {main_~x~0=v_main_~x~0_In_9, main_~y~0=v_main_~y~0_In_9} OutVars{main_~y~0=v_main_~y~0_Out_18, main_#t~post5=|v_main_#t~post5_Out_18|, main_~x~0=v_main_~x~0_Out_18, main_#t~post6=|v_main_#t~post6_Out_18|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {2311#(or (and (< 0 (mod (+ main_~x~0 1) 4294967296)) (<= main_~x~0 main_~n~0) (= main_~n~0 (+ main_~y~0 main_~x~0))) (and (= main_~n~0 main_~x~0) (= main_~y~0 0)))} is VALID [2022-04-15 12:49:49,190 INFO L290 TraceCheckUtils]: 7: Hoare triple {2311#(or (and (< 0 (mod (+ main_~x~0 1) 4294967296)) (<= main_~x~0 main_~n~0) (= main_~n~0 (+ main_~y~0 main_~x~0))) (and (= main_~n~0 main_~x~0) (= main_~y~0 0)))} [80] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {2315#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} is VALID [2022-04-15 12:49:49,190 INFO L290 TraceCheckUtils]: 8: Hoare triple {2315#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} ~z~0 := ~y~0; {2319#(and (<= 0 main_~y~0) (= main_~z~0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} is VALID [2022-04-15 12:49:49,192 INFO L290 TraceCheckUtils]: 9: Hoare triple {2319#(and (<= 0 main_~y~0) (= main_~z~0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {2323#(and (<= 0 main_~y~0) (< 0 (mod (+ main_~z~0 1) 4294967296)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= main_~y~0 (+ main_~z~0 1)))} is VALID [2022-04-15 12:49:49,193 INFO L290 TraceCheckUtils]: 10: Hoare triple {2323#(and (<= 0 main_~y~0) (< 0 (mod (+ main_~z~0 1) 4294967296)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= main_~y~0 (+ main_~z~0 1)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {2327#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= (+ main_~z~0 1) (+ (- 1) main_~y~0)) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:49:49,194 INFO L290 TraceCheckUtils]: 11: Hoare triple {2327#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= (+ main_~z~0 1) (+ (- 1) main_~y~0)) (< 0 (mod main_~y~0 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {2331#(and (<= 0 main_~y~0) (= (+ main_~z~0 2) (+ (- 1) main_~y~0)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:49:49,195 INFO L290 TraceCheckUtils]: 12: Hoare triple {2331#(and (<= 0 main_~y~0) (= (+ main_~z~0 2) (+ (- 1) main_~y~0)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} assume !(~z~0 % 4294967296 > 0); {2331#(and (<= 0 main_~y~0) (= (+ main_~z~0 2) (+ (- 1) main_~y~0)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:49:49,197 INFO L290 TraceCheckUtils]: 13: Hoare triple {2331#(and (<= 0 main_~y~0) (= (+ main_~z~0 2) (+ (- 1) main_~y~0)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {2338#(and (< 0 (mod (+ main_~y~0 1) 4294967296)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0) 1) (- 4294967296)) (div (+ (- 1) main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= main_~z~0 (+ (- 1) main_~y~0)) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-15 12:49:49,199 INFO L290 TraceCheckUtils]: 14: Hoare triple {2338#(and (< 0 (mod (+ main_~y~0 1) 4294967296)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0) 1) (- 4294967296)) (div (+ (- 1) main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= main_~z~0 (+ (- 1) main_~y~0)) (<= 0 (+ main_~y~0 1)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {2342#(and (<= 0 (+ main_~y~0 2)) (= main_~z~0 (+ main_~y~0 1)) (< 0 (mod (+ main_~y~0 2) 4294967296)) (<= (div (+ main_~y~0 2 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ (- 2) main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} is VALID [2022-04-15 12:49:49,201 INFO L290 TraceCheckUtils]: 15: Hoare triple {2342#(and (<= 0 (+ main_~y~0 2)) (= main_~z~0 (+ main_~y~0 1)) (< 0 (mod (+ main_~y~0 2) 4294967296)) (<= (div (+ main_~y~0 2 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ (- 2) main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {2346#(and (= (+ (- 2) main_~z~0) (+ main_~y~0 1)) (< 0 (mod main_~z~0 4294967296)) (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} is VALID [2022-04-15 12:49:49,203 INFO L290 TraceCheckUtils]: 16: Hoare triple {2346#(and (= (+ (- 2) main_~z~0) (+ main_~y~0 1)) (< 0 (mod main_~z~0 4294967296)) (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} assume !(~y~0 % 4294967296 > 0); {2350#(and (<= (mod (+ main_~z~0 4294967293) 4294967296) 0) (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} is VALID [2022-04-15 12:49:49,206 INFO L272 TraceCheckUtils]: 17: Hoare triple {2350#(and (<= (mod (+ main_~z~0 4294967293) 4294967296) 0) (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {2354#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 12:49:49,206 INFO L290 TraceCheckUtils]: 18: Hoare triple {2354#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2358#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 12:49:49,206 INFO L290 TraceCheckUtils]: 19: Hoare triple {2358#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2275#false} is VALID [2022-04-15 12:49:49,206 INFO L290 TraceCheckUtils]: 20: Hoare triple {2275#false} assume !false; {2275#false} is VALID [2022-04-15 12:49:49,207 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 12 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:49:49,207 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 12:50:16,430 INFO L290 TraceCheckUtils]: 20: Hoare triple {2275#false} assume !false; {2275#false} is VALID [2022-04-15 12:50:16,431 INFO L290 TraceCheckUtils]: 19: Hoare triple {2358#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2275#false} is VALID [2022-04-15 12:50:16,431 INFO L290 TraceCheckUtils]: 18: Hoare triple {2354#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2358#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 12:50:16,432 INFO L272 TraceCheckUtils]: 17: Hoare triple {2286#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {2354#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 12:50:16,433 INFO L290 TraceCheckUtils]: 16: Hoare triple {2377#(or (and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)))) (< 0 (mod main_~y~0 4294967296)))} assume !(~y~0 % 4294967296 > 0); {2286#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:50:16,435 INFO L290 TraceCheckUtils]: 15: Hoare triple {2381#(or (and (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296)) (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)))) (< 0 (mod (+ main_~y~0 4294967295) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {2377#(or (and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)))) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:50:16,437 INFO L290 TraceCheckUtils]: 14: Hoare triple {2385#(or (< 0 (mod (+ main_~y~0 4294967294) 4294967296)) (and (< (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0) (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {2381#(or (and (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296)) (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)))) (< 0 (mod (+ main_~y~0 4294967295) 4294967296)))} is VALID [2022-04-15 12:50:16,439 INFO L290 TraceCheckUtils]: 13: Hoare triple {2389#(or (and (< (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4)) (<= (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)))) (< 0 (mod (+ main_~y~0 4294967293) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {2385#(or (< 0 (mod (+ main_~y~0 4294967294) 4294967296)) (and (< (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0) (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0))))} is VALID [2022-04-15 12:50:16,439 INFO L290 TraceCheckUtils]: 12: Hoare triple {2389#(or (and (< (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4)) (<= (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)))) (< 0 (mod (+ main_~y~0 4294967293) 4294967296)))} assume !(~z~0 % 4294967296 > 0); {2389#(or (and (< (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4)) (<= (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)))) (< 0 (mod (+ main_~y~0 4294967293) 4294967296)))} is VALID [2022-04-15 12:50:16,441 INFO L290 TraceCheckUtils]: 11: Hoare triple {2396#(or (< 0 (mod (+ main_~y~0 4294967293) 4294967296)) (and (< (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0) (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {2389#(or (and (< (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4)) (<= (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)))) (< 0 (mod (+ main_~y~0 4294967293) 4294967296)))} is VALID [2022-04-15 12:50:16,443 INFO L290 TraceCheckUtils]: 10: Hoare triple {2400#(or (and (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296)) (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)))) (< 0 (mod (+ main_~y~0 4294967293) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {2396#(or (< 0 (mod (+ main_~y~0 4294967293) 4294967296)) (and (< (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0) (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0))))} is VALID [2022-04-15 12:50:16,444 INFO L290 TraceCheckUtils]: 9: Hoare triple {2404#(or (and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)))) (not (< 0 (mod main_~z~0 4294967296))) (< 0 (mod (+ main_~y~0 4294967293) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {2400#(or (and (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296)) (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)))) (< 0 (mod (+ main_~y~0 4294967293) 4294967296)))} is VALID [2022-04-15 12:50:16,445 INFO L290 TraceCheckUtils]: 8: Hoare triple {2408#(or (< 0 (mod (+ main_~y~0 4294967293) 4294967296)) (and (< (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0))))} ~z~0 := ~y~0; {2404#(or (and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)))) (not (< 0 (mod main_~z~0 4294967296))) (< 0 (mod (+ main_~y~0 4294967293) 4294967296)))} is VALID [2022-04-15 12:50:16,446 INFO L290 TraceCheckUtils]: 7: Hoare triple {2412#(or (< 0 (mod main_~x~0 4294967296)) (< 0 (mod (+ main_~y~0 4294967293) 4294967296)) (and (< (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0))))} [80] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {2408#(or (< 0 (mod (+ main_~y~0 4294967293) 4294967296)) (and (< (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0))))} is VALID [2022-04-15 12:50:17,729 INFO L290 TraceCheckUtils]: 6: Hoare triple {2416#(and (forall ((aux_div_aux_mod_v_main_~y~0_86_46_102 Int) (aux_div_v_main_~y~0_86_46 Int) (aux_mod_aux_mod_v_main_~y~0_86_46_102 Int)) (or (< aux_mod_aux_mod_v_main_~y~0_86_46_102 0) (< (+ (* aux_div_aux_mod_v_main_~y~0_86_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_86_46_102 4294967293) (* aux_div_v_main_~y~0_86_46 4294967296)) (< main_~n~0 (+ aux_mod_aux_mod_v_main_~y~0_86_46_102 (* (div main_~n~0 4294967296) 4294967296) 1)) (and (or (not (= (+ (* aux_div_aux_mod_v_main_~y~0_86_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_86_46_102 4294967293) (+ main_~y~0 4294967293))) (< (div (+ (- 1) (* (- 1) main_~x~0)) (- 4294967296)) (+ 2 (div (+ (- 1) main_~x~0) 4294967296)))) (or (< (+ (* aux_div_aux_mod_v_main_~y~0_86_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_86_46_102) main_~y~0) (forall ((aux_div_v_main_~x~0_72_31 Int)) (or (< (+ (* aux_div_aux_mod_v_main_~y~0_86_46_102 4294967296) (* aux_div_v_main_~x~0_72_31 4294967296) aux_mod_aux_mod_v_main_~y~0_86_46_102) (+ main_~y~0 main_~x~0)) (< (+ main_~y~0 main_~x~0) (+ (* aux_div_aux_mod_v_main_~y~0_86_46_102 4294967296) (* aux_div_v_main_~x~0_72_31 4294967296) aux_mod_aux_mod_v_main_~y~0_86_46_102)))) (<= (mod (+ main_~y~0 main_~x~0 1 (* 4294967295 aux_mod_aux_mod_v_main_~y~0_86_46_102)) 4294967296) 0))) (< (* aux_div_v_main_~y~0_86_46 4294967296) (+ (* aux_div_aux_mod_v_main_~y~0_86_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_86_46_102 4294967293)))) (forall ((aux_div_aux_mod_v_main_~y~0_86_46_102 Int) (aux_div_v_main_~y~0_86_46 Int) (aux_mod_aux_mod_v_main_~y~0_86_46_102 Int)) (or (<= 4294967296 aux_mod_aux_mod_v_main_~y~0_86_46_102) (< (+ (* aux_div_aux_mod_v_main_~y~0_86_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_86_46_102 4294967293) (* aux_div_v_main_~y~0_86_46 4294967296)) (<= (+ aux_mod_aux_mod_v_main_~y~0_86_46_102 (* (div main_~n~0 4294967296) 4294967296)) main_~n~0) (and (or (not (= (+ (* aux_div_aux_mod_v_main_~y~0_86_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_86_46_102 4294967293) (+ main_~y~0 4294967293))) (< (div (+ (- 1) (* (- 1) main_~x~0)) (- 4294967296)) (+ 2 (div (+ (- 1) main_~x~0) 4294967296)))) (or (< (+ (* aux_div_aux_mod_v_main_~y~0_86_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_86_46_102) main_~y~0) (forall ((aux_div_v_main_~x~0_72_31 Int)) (or (< (+ (* aux_div_aux_mod_v_main_~y~0_86_46_102 4294967296) (* aux_div_v_main_~x~0_72_31 4294967296) aux_mod_aux_mod_v_main_~y~0_86_46_102) (+ main_~y~0 main_~x~0)) (< (+ main_~y~0 main_~x~0) (+ (* aux_div_aux_mod_v_main_~y~0_86_46_102 4294967296) (* aux_div_v_main_~x~0_72_31 4294967296) aux_mod_aux_mod_v_main_~y~0_86_46_102)))) (<= (mod (+ main_~y~0 main_~x~0 1 (* 4294967295 aux_mod_aux_mod_v_main_~y~0_86_46_102)) 4294967296) 0))) (< (* aux_div_v_main_~y~0_86_46 4294967296) (+ (* aux_div_aux_mod_v_main_~y~0_86_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_86_46_102 4294967293)))))} [81] L16-2-->L16-3_primed: Formula: (or (and (<= v_main_~x~0_Out_18 v_main_~x~0_In_9) (= |v_main_#t~post5_Out_18| 0) (= |v_main_#t~post6_Out_18| 0) (= (+ v_main_~y~0_Out_18 v_main_~x~0_Out_18) (+ v_main_~x~0_In_9 v_main_~y~0_In_9)) (< 0 (mod (+ v_main_~x~0_Out_18 1) 4294967296))) (and (= v_main_~y~0_In_9 v_main_~y~0_Out_18) (= v_main_~x~0_In_9 v_main_~x~0_Out_18))) InVars {main_~x~0=v_main_~x~0_In_9, main_~y~0=v_main_~y~0_In_9} OutVars{main_~y~0=v_main_~y~0_Out_18, main_#t~post5=|v_main_#t~post5_Out_18|, main_~x~0=v_main_~x~0_Out_18, main_#t~post6=|v_main_#t~post6_Out_18|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {2412#(or (< 0 (mod main_~x~0 4294967296)) (< 0 (mod (+ main_~y~0 4294967293) 4294967296)) (and (< (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0))))} is VALID [2022-04-15 12:50:17,738 INFO L290 TraceCheckUtils]: 5: Hoare triple {2274#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {2416#(and (forall ((aux_div_aux_mod_v_main_~y~0_86_46_102 Int) (aux_div_v_main_~y~0_86_46 Int) (aux_mod_aux_mod_v_main_~y~0_86_46_102 Int)) (or (< aux_mod_aux_mod_v_main_~y~0_86_46_102 0) (< (+ (* aux_div_aux_mod_v_main_~y~0_86_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_86_46_102 4294967293) (* aux_div_v_main_~y~0_86_46 4294967296)) (< main_~n~0 (+ aux_mod_aux_mod_v_main_~y~0_86_46_102 (* (div main_~n~0 4294967296) 4294967296) 1)) (and (or (not (= (+ (* aux_div_aux_mod_v_main_~y~0_86_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_86_46_102 4294967293) (+ main_~y~0 4294967293))) (< (div (+ (- 1) (* (- 1) main_~x~0)) (- 4294967296)) (+ 2 (div (+ (- 1) main_~x~0) 4294967296)))) (or (< (+ (* aux_div_aux_mod_v_main_~y~0_86_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_86_46_102) main_~y~0) (forall ((aux_div_v_main_~x~0_72_31 Int)) (or (< (+ (* aux_div_aux_mod_v_main_~y~0_86_46_102 4294967296) (* aux_div_v_main_~x~0_72_31 4294967296) aux_mod_aux_mod_v_main_~y~0_86_46_102) (+ main_~y~0 main_~x~0)) (< (+ main_~y~0 main_~x~0) (+ (* aux_div_aux_mod_v_main_~y~0_86_46_102 4294967296) (* aux_div_v_main_~x~0_72_31 4294967296) aux_mod_aux_mod_v_main_~y~0_86_46_102)))) (<= (mod (+ main_~y~0 main_~x~0 1 (* 4294967295 aux_mod_aux_mod_v_main_~y~0_86_46_102)) 4294967296) 0))) (< (* aux_div_v_main_~y~0_86_46 4294967296) (+ (* aux_div_aux_mod_v_main_~y~0_86_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_86_46_102 4294967293)))) (forall ((aux_div_aux_mod_v_main_~y~0_86_46_102 Int) (aux_div_v_main_~y~0_86_46 Int) (aux_mod_aux_mod_v_main_~y~0_86_46_102 Int)) (or (<= 4294967296 aux_mod_aux_mod_v_main_~y~0_86_46_102) (< (+ (* aux_div_aux_mod_v_main_~y~0_86_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_86_46_102 4294967293) (* aux_div_v_main_~y~0_86_46 4294967296)) (<= (+ aux_mod_aux_mod_v_main_~y~0_86_46_102 (* (div main_~n~0 4294967296) 4294967296)) main_~n~0) (and (or (not (= (+ (* aux_div_aux_mod_v_main_~y~0_86_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_86_46_102 4294967293) (+ main_~y~0 4294967293))) (< (div (+ (- 1) (* (- 1) main_~x~0)) (- 4294967296)) (+ 2 (div (+ (- 1) main_~x~0) 4294967296)))) (or (< (+ (* aux_div_aux_mod_v_main_~y~0_86_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_86_46_102) main_~y~0) (forall ((aux_div_v_main_~x~0_72_31 Int)) (or (< (+ (* aux_div_aux_mod_v_main_~y~0_86_46_102 4294967296) (* aux_div_v_main_~x~0_72_31 4294967296) aux_mod_aux_mod_v_main_~y~0_86_46_102) (+ main_~y~0 main_~x~0)) (< (+ main_~y~0 main_~x~0) (+ (* aux_div_aux_mod_v_main_~y~0_86_46_102 4294967296) (* aux_div_v_main_~x~0_72_31 4294967296) aux_mod_aux_mod_v_main_~y~0_86_46_102)))) (<= (mod (+ main_~y~0 main_~x~0 1 (* 4294967295 aux_mod_aux_mod_v_main_~y~0_86_46_102)) 4294967296) 0))) (< (* aux_div_v_main_~y~0_86_46 4294967296) (+ (* aux_div_aux_mod_v_main_~y~0_86_46_102 4294967296) aux_mod_aux_mod_v_main_~y~0_86_46_102 4294967293)))))} is VALID [2022-04-15 12:50:17,738 INFO L272 TraceCheckUtils]: 4: Hoare triple {2274#true} call #t~ret11 := main(); {2274#true} is VALID [2022-04-15 12:50:17,738 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2274#true} {2274#true} #61#return; {2274#true} is VALID [2022-04-15 12:50:17,738 INFO L290 TraceCheckUtils]: 2: Hoare triple {2274#true} assume true; {2274#true} is VALID [2022-04-15 12:50:17,739 INFO L290 TraceCheckUtils]: 1: Hoare triple {2274#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(10, 2);call #Ultimate.allocInit(12, 3); {2274#true} is VALID [2022-04-15 12:50:17,739 INFO L272 TraceCheckUtils]: 0: Hoare triple {2274#true} call ULTIMATE.init(); {2274#true} is VALID [2022-04-15 12:50:17,739 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 12 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:50:17,739 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1902546282] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 12:50:17,739 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 12:50:17,739 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 15, 15] total 35 [2022-04-15 12:50:18,097 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 12:50:18,098 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [504451386] [2022-04-15 12:50:18,098 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [504451386] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 12:50:18,098 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 12:50:18,098 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-15 12:50:18,098 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [87800388] [2022-04-15 12:50:18,098 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 12:50:18,098 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 1.2857142857142858) internal successors, (18), 12 states have internal predecessors, (18), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 22 [2022-04-15 12:50:18,098 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 12:50:18,099 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 1.2857142857142858) internal successors, (18), 12 states have internal predecessors, (18), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:50:18,128 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 22 edges. 22 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:50:18,128 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-15 12:50:18,129 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 12:50:18,129 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-15 12:50:18,129 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=161, Invalid=1240, Unknown=5, NotChecked=0, Total=1406 [2022-04-15 12:50:18,129 INFO L87 Difference]: Start difference. First operand 23 states and 25 transitions. Second operand has 14 states, 14 states have (on average 1.2857142857142858) internal successors, (18), 12 states have internal predecessors, (18), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:50:19,907 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:50:19,907 INFO L93 Difference]: Finished difference Result 33 states and 36 transitions. [2022-04-15 12:50:19,908 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-15 12:50:19,908 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 1.2857142857142858) internal successors, (18), 12 states have internal predecessors, (18), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 22 [2022-04-15 12:50:19,908 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 12:50:19,908 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 1.2857142857142858) internal successors, (18), 12 states have internal predecessors, (18), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:50:19,909 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 33 transitions. [2022-04-15 12:50:19,909 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 1.2857142857142858) internal successors, (18), 12 states have internal predecessors, (18), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:50:19,909 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 33 transitions. [2022-04-15 12:50:19,909 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 33 transitions. [2022-04-15 12:50:19,970 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:50:19,971 INFO L225 Difference]: With dead ends: 33 [2022-04-15 12:50:19,971 INFO L226 Difference]: Without dead ends: 28 [2022-04-15 12:50:19,972 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 73 GetRequests, 22 SyntacticMatches, 3 SemanticMatches, 48 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 586 ImplicationChecksByTransitivity, 24.3s TimeCoverageRelationStatistics Valid=266, Invalid=2179, Unknown=5, NotChecked=0, Total=2450 [2022-04-15 12:50:19,972 INFO L913 BasicCegarLoop]: 10 mSDtfsCounter, 17 mSDsluCounter, 57 mSDsCounter, 0 mSdLazyCounter, 214 mSolverCounterSat, 15 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 67 SdHoareTripleChecker+Invalid, 229 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 15 IncrementalHoareTripleChecker+Valid, 214 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.4s IncrementalHoareTripleChecker+Time [2022-04-15 12:50:19,972 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [17 Valid, 67 Invalid, 229 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [15 Valid, 214 Invalid, 0 Unknown, 0 Unchecked, 0.4s Time] [2022-04-15 12:50:19,973 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28 states. [2022-04-15 12:50:20,033 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28 to 25. [2022-04-15 12:50:20,033 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 12:50:20,033 INFO L82 GeneralOperation]: Start isEquivalent. First operand 28 states. Second operand has 25 states, 20 states have (on average 1.2) internal successors, (24), 20 states have internal predecessors, (24), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:50:20,033 INFO L74 IsIncluded]: Start isIncluded. First operand 28 states. Second operand has 25 states, 20 states have (on average 1.2) internal successors, (24), 20 states have internal predecessors, (24), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:50:20,034 INFO L87 Difference]: Start difference. First operand 28 states. Second operand has 25 states, 20 states have (on average 1.2) internal successors, (24), 20 states have internal predecessors, (24), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:50:20,034 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:50:20,034 INFO L93 Difference]: Finished difference Result 28 states and 31 transitions. [2022-04-15 12:50:20,034 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 31 transitions. [2022-04-15 12:50:20,035 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:50:20,035 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:50:20,035 INFO L74 IsIncluded]: Start isIncluded. First operand has 25 states, 20 states have (on average 1.2) internal successors, (24), 20 states have internal predecessors, (24), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 28 states. [2022-04-15 12:50:20,035 INFO L87 Difference]: Start difference. First operand has 25 states, 20 states have (on average 1.2) internal successors, (24), 20 states have internal predecessors, (24), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 28 states. [2022-04-15 12:50:20,035 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:50:20,035 INFO L93 Difference]: Finished difference Result 28 states and 31 transitions. [2022-04-15 12:50:20,035 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 31 transitions. [2022-04-15 12:50:20,036 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:50:20,036 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:50:20,036 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 12:50:20,036 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 12:50:20,036 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 20 states have (on average 1.2) internal successors, (24), 20 states have internal predecessors, (24), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:50:20,036 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 28 transitions. [2022-04-15 12:50:20,036 INFO L78 Accepts]: Start accepts. Automaton has 25 states and 28 transitions. Word has length 22 [2022-04-15 12:50:20,036 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 12:50:20,036 INFO L478 AbstractCegarLoop]: Abstraction has 25 states and 28 transitions. [2022-04-15 12:50:20,037 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 1.2857142857142858) internal successors, (18), 12 states have internal predecessors, (18), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:50:20,037 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 25 states and 28 transitions. [2022-04-15 12:50:20,166 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:50:20,166 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 28 transitions. [2022-04-15 12:50:20,166 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-15 12:50:20,166 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 12:50:20,166 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 12:50:20,172 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-04-15 12:50:20,367 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable9,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:50:20,367 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 12:50:20,367 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 12:50:20,367 INFO L85 PathProgramCache]: Analyzing trace with hash -1586088817, now seen corresponding path program 8 times [2022-04-15 12:50:20,368 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 12:50:20,368 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1686234545] [2022-04-15 12:50:20,517 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-15 12:50:20,518 INFO L85 PathProgramCache]: Analyzing trace with hash 714665327, now seen corresponding path program 1 times [2022-04-15 12:50:20,519 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 12:50:20,519 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [562378363] [2022-04-15 12:50:20,519 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:50:20,519 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 12:50:20,548 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:50:20,714 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 12:50:20,715 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:50:20,718 INFO L290 TraceCheckUtils]: 0: Hoare triple {2649#(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(10, 2);call #Ultimate.allocInit(12, 3); {2636#true} is VALID [2022-04-15 12:50:20,718 INFO L290 TraceCheckUtils]: 1: Hoare triple {2636#true} assume true; {2636#true} is VALID [2022-04-15 12:50:20,718 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {2636#true} {2636#true} #61#return; {2636#true} is VALID [2022-04-15 12:50:20,719 INFO L272 TraceCheckUtils]: 0: Hoare triple {2636#true} call ULTIMATE.init(); {2649#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 12:50:20,719 INFO L290 TraceCheckUtils]: 1: Hoare triple {2649#(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(10, 2);call #Ultimate.allocInit(12, 3); {2636#true} is VALID [2022-04-15 12:50:20,719 INFO L290 TraceCheckUtils]: 2: Hoare triple {2636#true} assume true; {2636#true} is VALID [2022-04-15 12:50:20,719 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2636#true} {2636#true} #61#return; {2636#true} is VALID [2022-04-15 12:50:20,719 INFO L272 TraceCheckUtils]: 4: Hoare triple {2636#true} call #t~ret11 := main(); {2636#true} is VALID [2022-04-15 12:50:20,719 INFO L290 TraceCheckUtils]: 5: Hoare triple {2636#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {2636#true} is VALID [2022-04-15 12:50:20,719 INFO L290 TraceCheckUtils]: 6: Hoare triple {2636#true} [83] L16-2-->L16-3_primed: Formula: (or (and (= |v_main_#t~post5_Out_20| 0) (< 0 (mod (+ v_main_~x~0_Out_20 1) 4294967296)) (= (+ v_main_~y~0_Out_20 v_main_~x~0_Out_20) (+ v_main_~x~0_In_10 v_main_~y~0_In_10)) (= |v_main_#t~post6_Out_20| 0) (<= v_main_~x~0_Out_20 v_main_~x~0_In_10)) (and (= v_main_~y~0_In_10 v_main_~y~0_Out_20) (= v_main_~x~0_In_10 v_main_~x~0_Out_20))) InVars {main_~x~0=v_main_~x~0_In_10, main_~y~0=v_main_~y~0_In_10} OutVars{main_~y~0=v_main_~y~0_Out_20, main_#t~post5=|v_main_#t~post5_Out_20|, main_~x~0=v_main_~x~0_Out_20, main_#t~post6=|v_main_#t~post6_Out_20|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {2636#true} is VALID [2022-04-15 12:50:20,719 INFO L290 TraceCheckUtils]: 7: Hoare triple {2636#true} [82] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {2636#true} is VALID [2022-04-15 12:50:20,720 INFO L290 TraceCheckUtils]: 8: Hoare triple {2636#true} ~z~0 := ~y~0; {2641#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} is VALID [2022-04-15 12:50:20,721 INFO L290 TraceCheckUtils]: 9: Hoare triple {2641#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {2642#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} is VALID [2022-04-15 12:50:20,722 INFO L290 TraceCheckUtils]: 10: Hoare triple {2642#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {2643#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} is VALID [2022-04-15 12:50:20,723 INFO L290 TraceCheckUtils]: 11: Hoare triple {2643#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {2644#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} is VALID [2022-04-15 12:50:20,724 INFO L290 TraceCheckUtils]: 12: Hoare triple {2644#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} assume !(~z~0 % 4294967296 > 0); {2645#(and (<= (+ 3 (* (div main_~z~0 4294967296) 4294967296)) main_~y~0) (<= main_~y~0 (+ 3 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:50:20,726 INFO L290 TraceCheckUtils]: 13: Hoare triple {2645#(and (<= (+ 3 (* (div main_~z~0 4294967296) 4294967296)) main_~y~0) (<= main_~y~0 (+ 3 (* (div main_~z~0 4294967296) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {2646#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} is VALID [2022-04-15 12:50:20,727 INFO L290 TraceCheckUtils]: 14: Hoare triple {2646#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {2647#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} is VALID [2022-04-15 12:50:20,728 INFO L290 TraceCheckUtils]: 15: Hoare triple {2647#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {2648#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} is VALID [2022-04-15 12:50:20,729 INFO L290 TraceCheckUtils]: 16: Hoare triple {2648#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {2637#false} is VALID [2022-04-15 12:50:20,729 INFO L290 TraceCheckUtils]: 17: Hoare triple {2637#false} assume !(~y~0 % 4294967296 > 0); {2637#false} is VALID [2022-04-15 12:50:20,729 INFO L272 TraceCheckUtils]: 18: Hoare triple {2637#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {2637#false} is VALID [2022-04-15 12:50:20,730 INFO L290 TraceCheckUtils]: 19: Hoare triple {2637#false} ~cond := #in~cond; {2637#false} is VALID [2022-04-15 12:50:20,730 INFO L290 TraceCheckUtils]: 20: Hoare triple {2637#false} assume 0 == ~cond; {2637#false} is VALID [2022-04-15 12:50:20,730 INFO L290 TraceCheckUtils]: 21: Hoare triple {2637#false} assume !false; {2637#false} is VALID [2022-04-15 12:50:20,730 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 4 proven. 12 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:50:20,730 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 12:50:20,730 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [562378363] [2022-04-15 12:50:20,730 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [562378363] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 12:50:20,730 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [161909948] [2022-04-15 12:50:20,730 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:50:20,730 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:50:20,731 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 12:50:20,740 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 12:50:20,741 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-04-15 12:50:20,772 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:50:20,773 INFO L263 TraceCheckSpWp]: Trace formula consists of 95 conjuncts, 16 conjunts are in the unsatisfiable core [2022-04-15 12:50:20,782 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:50:20,783 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 12:50:21,148 INFO L272 TraceCheckUtils]: 0: Hoare triple {2636#true} call ULTIMATE.init(); {2636#true} is VALID [2022-04-15 12:50:21,148 INFO L290 TraceCheckUtils]: 1: Hoare triple {2636#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(10, 2);call #Ultimate.allocInit(12, 3); {2636#true} is VALID [2022-04-15 12:50:21,148 INFO L290 TraceCheckUtils]: 2: Hoare triple {2636#true} assume true; {2636#true} is VALID [2022-04-15 12:50:21,148 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2636#true} {2636#true} #61#return; {2636#true} is VALID [2022-04-15 12:50:21,148 INFO L272 TraceCheckUtils]: 4: Hoare triple {2636#true} call #t~ret11 := main(); {2636#true} is VALID [2022-04-15 12:50:21,148 INFO L290 TraceCheckUtils]: 5: Hoare triple {2636#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {2636#true} is VALID [2022-04-15 12:50:21,148 INFO L290 TraceCheckUtils]: 6: Hoare triple {2636#true} [83] L16-2-->L16-3_primed: Formula: (or (and (= |v_main_#t~post5_Out_20| 0) (< 0 (mod (+ v_main_~x~0_Out_20 1) 4294967296)) (= (+ v_main_~y~0_Out_20 v_main_~x~0_Out_20) (+ v_main_~x~0_In_10 v_main_~y~0_In_10)) (= |v_main_#t~post6_Out_20| 0) (<= v_main_~x~0_Out_20 v_main_~x~0_In_10)) (and (= v_main_~y~0_In_10 v_main_~y~0_Out_20) (= v_main_~x~0_In_10 v_main_~x~0_Out_20))) InVars {main_~x~0=v_main_~x~0_In_10, main_~y~0=v_main_~y~0_In_10} OutVars{main_~y~0=v_main_~y~0_Out_20, main_#t~post5=|v_main_#t~post5_Out_20|, main_~x~0=v_main_~x~0_Out_20, main_#t~post6=|v_main_#t~post6_Out_20|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {2636#true} is VALID [2022-04-15 12:50:21,148 INFO L290 TraceCheckUtils]: 7: Hoare triple {2636#true} [82] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {2636#true} is VALID [2022-04-15 12:50:21,153 INFO L290 TraceCheckUtils]: 8: Hoare triple {2636#true} ~z~0 := ~y~0; {2641#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} is VALID [2022-04-15 12:50:21,154 INFO L290 TraceCheckUtils]: 9: Hoare triple {2641#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {2642#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} is VALID [2022-04-15 12:50:21,156 INFO L290 TraceCheckUtils]: 10: Hoare triple {2642#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {2643#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} is VALID [2022-04-15 12:50:21,157 INFO L290 TraceCheckUtils]: 11: Hoare triple {2643#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {2644#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} is VALID [2022-04-15 12:50:21,158 INFO L290 TraceCheckUtils]: 12: Hoare triple {2644#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} assume !(~z~0 % 4294967296 > 0); {2689#(<= (div (+ 3 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 3)) 4294967296))} is VALID [2022-04-15 12:50:21,159 INFO L290 TraceCheckUtils]: 13: Hoare triple {2689#(<= (div (+ 3 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 3)) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {2646#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} is VALID [2022-04-15 12:50:21,161 INFO L290 TraceCheckUtils]: 14: Hoare triple {2646#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {2647#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} is VALID [2022-04-15 12:50:21,162 INFO L290 TraceCheckUtils]: 15: Hoare triple {2647#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {2648#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} is VALID [2022-04-15 12:50:21,162 INFO L290 TraceCheckUtils]: 16: Hoare triple {2648#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {2637#false} is VALID [2022-04-15 12:50:21,162 INFO L290 TraceCheckUtils]: 17: Hoare triple {2637#false} assume !(~y~0 % 4294967296 > 0); {2637#false} is VALID [2022-04-15 12:50:21,163 INFO L272 TraceCheckUtils]: 18: Hoare triple {2637#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {2637#false} is VALID [2022-04-15 12:50:21,163 INFO L290 TraceCheckUtils]: 19: Hoare triple {2637#false} ~cond := #in~cond; {2637#false} is VALID [2022-04-15 12:50:21,163 INFO L290 TraceCheckUtils]: 20: Hoare triple {2637#false} assume 0 == ~cond; {2637#false} is VALID [2022-04-15 12:50:21,163 INFO L290 TraceCheckUtils]: 21: Hoare triple {2637#false} assume !false; {2637#false} is VALID [2022-04-15 12:50:21,163 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 4 proven. 12 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:50:21,163 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 12:50:21,734 INFO L290 TraceCheckUtils]: 21: Hoare triple {2637#false} assume !false; {2637#false} is VALID [2022-04-15 12:50:21,734 INFO L290 TraceCheckUtils]: 20: Hoare triple {2637#false} assume 0 == ~cond; {2637#false} is VALID [2022-04-15 12:50:21,734 INFO L290 TraceCheckUtils]: 19: Hoare triple {2637#false} ~cond := #in~cond; {2637#false} is VALID [2022-04-15 12:50:21,734 INFO L272 TraceCheckUtils]: 18: Hoare triple {2637#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {2637#false} is VALID [2022-04-15 12:50:21,735 INFO L290 TraceCheckUtils]: 17: Hoare triple {2637#false} assume !(~y~0 % 4294967296 > 0); {2637#false} is VALID [2022-04-15 12:50:21,736 INFO L290 TraceCheckUtils]: 16: Hoare triple {2648#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {2637#false} is VALID [2022-04-15 12:50:21,737 INFO L290 TraceCheckUtils]: 15: Hoare triple {2647#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {2648#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} is VALID [2022-04-15 12:50:21,738 INFO L290 TraceCheckUtils]: 14: Hoare triple {2646#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {2647#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} is VALID [2022-04-15 12:50:21,739 INFO L290 TraceCheckUtils]: 13: Hoare triple {2689#(<= (div (+ 3 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 3)) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {2646#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} is VALID [2022-04-15 12:50:21,740 INFO L290 TraceCheckUtils]: 12: Hoare triple {2744#(or (< 0 (mod main_~z~0 4294967296)) (<= (div (+ 3 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 3)) 4294967296)))} assume !(~z~0 % 4294967296 > 0); {2689#(<= (div (+ 3 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 3)) 4294967296))} is VALID [2022-04-15 12:50:21,741 INFO L290 TraceCheckUtils]: 11: Hoare triple {2748#(or (<= (div (+ 3 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 3)) 4294967296)) (< 0 (mod (+ main_~z~0 4294967295) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {2744#(or (< 0 (mod main_~z~0 4294967296)) (<= (div (+ 3 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 3)) 4294967296)))} is VALID [2022-04-15 12:50:21,743 INFO L290 TraceCheckUtils]: 10: Hoare triple {2752#(or (< 0 (mod (+ main_~z~0 4294967294) 4294967296)) (<= (div (+ 3 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 3)) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {2748#(or (<= (div (+ 3 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 3)) 4294967296)) (< 0 (mod (+ main_~z~0 4294967295) 4294967296)))} is VALID [2022-04-15 12:50:21,744 INFO L290 TraceCheckUtils]: 9: Hoare triple {2756#(or (<= (div (+ 3 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 3)) 4294967296)) (< 0 (mod (+ main_~z~0 4294967293) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {2752#(or (< 0 (mod (+ main_~z~0 4294967294) 4294967296)) (<= (div (+ 3 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 3)) 4294967296)))} is VALID [2022-04-15 12:50:21,745 INFO L290 TraceCheckUtils]: 8: Hoare triple {2636#true} ~z~0 := ~y~0; {2756#(or (<= (div (+ 3 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 3)) 4294967296)) (< 0 (mod (+ main_~z~0 4294967293) 4294967296)))} is VALID [2022-04-15 12:50:21,745 INFO L290 TraceCheckUtils]: 7: Hoare triple {2636#true} [82] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {2636#true} is VALID [2022-04-15 12:50:21,745 INFO L290 TraceCheckUtils]: 6: Hoare triple {2636#true} [83] L16-2-->L16-3_primed: Formula: (or (and (= |v_main_#t~post5_Out_20| 0) (< 0 (mod (+ v_main_~x~0_Out_20 1) 4294967296)) (= (+ v_main_~y~0_Out_20 v_main_~x~0_Out_20) (+ v_main_~x~0_In_10 v_main_~y~0_In_10)) (= |v_main_#t~post6_Out_20| 0) (<= v_main_~x~0_Out_20 v_main_~x~0_In_10)) (and (= v_main_~y~0_In_10 v_main_~y~0_Out_20) (= v_main_~x~0_In_10 v_main_~x~0_Out_20))) InVars {main_~x~0=v_main_~x~0_In_10, main_~y~0=v_main_~y~0_In_10} OutVars{main_~y~0=v_main_~y~0_Out_20, main_#t~post5=|v_main_#t~post5_Out_20|, main_~x~0=v_main_~x~0_Out_20, main_#t~post6=|v_main_#t~post6_Out_20|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {2636#true} is VALID [2022-04-15 12:50:21,745 INFO L290 TraceCheckUtils]: 5: Hoare triple {2636#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {2636#true} is VALID [2022-04-15 12:50:21,745 INFO L272 TraceCheckUtils]: 4: Hoare triple {2636#true} call #t~ret11 := main(); {2636#true} is VALID [2022-04-15 12:50:21,745 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2636#true} {2636#true} #61#return; {2636#true} is VALID [2022-04-15 12:50:21,745 INFO L290 TraceCheckUtils]: 2: Hoare triple {2636#true} assume true; {2636#true} is VALID [2022-04-15 12:50:21,745 INFO L290 TraceCheckUtils]: 1: Hoare triple {2636#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(10, 2);call #Ultimate.allocInit(12, 3); {2636#true} is VALID [2022-04-15 12:50:21,746 INFO L272 TraceCheckUtils]: 0: Hoare triple {2636#true} call ULTIMATE.init(); {2636#true} is VALID [2022-04-15 12:50:21,746 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 4 proven. 12 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:50:21,746 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [161909948] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 12:50:21,746 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 12:50:21,746 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 10, 10] total 16 [2022-04-15 12:50:21,819 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 12:50:21,820 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1686234545] [2022-04-15 12:50:21,820 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1686234545] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 12:50:21,820 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 12:50:21,820 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-15 12:50:21,820 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1152601581] [2022-04-15 12:50:21,820 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 12:50:21,820 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 1.4615384615384615) internal successors, (19), 12 states have internal predecessors, (19), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 23 [2022-04-15 12:50:21,820 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 12:50:21,820 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 1.4615384615384615) internal successors, (19), 12 states have internal predecessors, (19), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:50:21,842 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 23 edges. 23 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:50:21,842 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-15 12:50:21,842 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 12:50:21,842 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-15 12:50:21,842 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=47, Invalid=259, Unknown=0, NotChecked=0, Total=306 [2022-04-15 12:50:21,842 INFO L87 Difference]: Start difference. First operand 25 states and 28 transitions. Second operand has 13 states, 13 states have (on average 1.4615384615384615) internal successors, (19), 12 states have internal predecessors, (19), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:50:22,937 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:50:22,937 INFO L93 Difference]: Finished difference Result 45 states and 51 transitions. [2022-04-15 12:50:22,937 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-04-15 12:50:22,937 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 1.4615384615384615) internal successors, (19), 12 states have internal predecessors, (19), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 23 [2022-04-15 12:50:22,937 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 12:50:22,937 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 1.4615384615384615) internal successors, (19), 12 states have internal predecessors, (19), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:50:22,938 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 42 transitions. [2022-04-15 12:50:22,938 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 1.4615384615384615) internal successors, (19), 12 states have internal predecessors, (19), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:50:22,939 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 42 transitions. [2022-04-15 12:50:22,939 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 17 states and 42 transitions. [2022-04-15 12:50:23,000 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:50:23,001 INFO L225 Difference]: With dead ends: 45 [2022-04-15 12:50:23,001 INFO L226 Difference]: Without dead ends: 25 [2022-04-15 12:50:23,001 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 80 GetRequests, 45 SyntacticMatches, 5 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 113 ImplicationChecksByTransitivity, 0.7s TimeCoverageRelationStatistics Valid=149, Invalid=843, Unknown=0, NotChecked=0, Total=992 [2022-04-15 12:50:23,001 INFO L913 BasicCegarLoop]: 11 mSDtfsCounter, 24 mSDsluCounter, 47 mSDsCounter, 0 mSdLazyCounter, 169 mSolverCounterSat, 24 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 24 SdHoareTripleChecker+Valid, 58 SdHoareTripleChecker+Invalid, 193 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 24 IncrementalHoareTripleChecker+Valid, 169 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-15 12:50:23,002 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [24 Valid, 58 Invalid, 193 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [24 Valid, 169 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-15 12:50:23,002 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 25 states. [2022-04-15 12:50:23,054 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 25 to 25. [2022-04-15 12:50:23,055 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 12:50:23,055 INFO L82 GeneralOperation]: Start isEquivalent. First operand 25 states. Second operand has 25 states, 20 states have (on average 1.15) internal successors, (23), 20 states have internal predecessors, (23), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:50:23,055 INFO L74 IsIncluded]: Start isIncluded. First operand 25 states. Second operand has 25 states, 20 states have (on average 1.15) internal successors, (23), 20 states have internal predecessors, (23), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:50:23,055 INFO L87 Difference]: Start difference. First operand 25 states. Second operand has 25 states, 20 states have (on average 1.15) internal successors, (23), 20 states have internal predecessors, (23), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:50:23,056 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:50:23,056 INFO L93 Difference]: Finished difference Result 25 states and 27 transitions. [2022-04-15 12:50:23,056 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 27 transitions. [2022-04-15 12:50:23,056 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:50:23,056 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:50:23,056 INFO L74 IsIncluded]: Start isIncluded. First operand has 25 states, 20 states have (on average 1.15) internal successors, (23), 20 states have internal predecessors, (23), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 25 states. [2022-04-15 12:50:23,056 INFO L87 Difference]: Start difference. First operand has 25 states, 20 states have (on average 1.15) internal successors, (23), 20 states have internal predecessors, (23), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 25 states. [2022-04-15 12:50:23,057 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:50:23,057 INFO L93 Difference]: Finished difference Result 25 states and 27 transitions. [2022-04-15 12:50:23,057 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 27 transitions. [2022-04-15 12:50:23,057 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:50:23,057 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:50:23,057 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 12:50:23,057 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 12:50:23,057 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 20 states have (on average 1.15) internal successors, (23), 20 states have internal predecessors, (23), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:50:23,057 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 27 transitions. [2022-04-15 12:50:23,057 INFO L78 Accepts]: Start accepts. Automaton has 25 states and 27 transitions. Word has length 23 [2022-04-15 12:50:23,058 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 12:50:23,058 INFO L478 AbstractCegarLoop]: Abstraction has 25 states and 27 transitions. [2022-04-15 12:50:23,058 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 1.4615384615384615) internal successors, (19), 12 states have internal predecessors, (19), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:50:23,058 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 25 states and 27 transitions. [2022-04-15 12:50:23,178 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:50:23,178 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 27 transitions. [2022-04-15 12:50:23,178 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-04-15 12:50:23,178 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 12:50:23,179 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 12:50:23,195 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Ended with exit code 0 [2022-04-15 12:50:23,385 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable10 [2022-04-15 12:50:23,387 INFO L403 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 12:50:23,387 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 12:50:23,387 INFO L85 PathProgramCache]: Analyzing trace with hash 1773782399, now seen corresponding path program 9 times [2022-04-15 12:50:23,387 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 12:50:23,388 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [220232580] [2022-04-15 12:50:23,544 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-15 12:50:23,545 INFO L85 PathProgramCache]: Analyzing trace with hash 42777824, now seen corresponding path program 1 times [2022-04-15 12:50:23,545 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 12:50:23,546 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1646524607] [2022-04-15 12:50:23,546 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:50:23,546 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 12:50:23,564 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:50:23,720 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 12:50:23,721 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:50:23,726 INFO L290 TraceCheckUtils]: 0: Hoare triple {3022#(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(10, 2);call #Ultimate.allocInit(12, 3); {3009#true} is VALID [2022-04-15 12:50:23,726 INFO L290 TraceCheckUtils]: 1: Hoare triple {3009#true} assume true; {3009#true} is VALID [2022-04-15 12:50:23,726 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {3009#true} {3009#true} #61#return; {3009#true} is VALID [2022-04-15 12:50:23,727 INFO L272 TraceCheckUtils]: 0: Hoare triple {3009#true} call ULTIMATE.init(); {3022#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 12:50:23,727 INFO L290 TraceCheckUtils]: 1: Hoare triple {3022#(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(10, 2);call #Ultimate.allocInit(12, 3); {3009#true} is VALID [2022-04-15 12:50:23,727 INFO L290 TraceCheckUtils]: 2: Hoare triple {3009#true} assume true; {3009#true} is VALID [2022-04-15 12:50:23,727 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3009#true} {3009#true} #61#return; {3009#true} is VALID [2022-04-15 12:50:23,727 INFO L272 TraceCheckUtils]: 4: Hoare triple {3009#true} call #t~ret11 := main(); {3009#true} is VALID [2022-04-15 12:50:23,727 INFO L290 TraceCheckUtils]: 5: Hoare triple {3009#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {3009#true} is VALID [2022-04-15 12:50:23,728 INFO L290 TraceCheckUtils]: 6: Hoare triple {3009#true} [85] L16-2-->L16-3_primed: Formula: (or (and (= (+ v_main_~x~0_In_11 v_main_~y~0_In_11) (+ v_main_~y~0_Out_22 v_main_~x~0_Out_22)) (< 0 (mod (+ v_main_~x~0_Out_22 1) 4294967296)) (= |v_main_#t~post6_Out_22| 0) (<= v_main_~x~0_Out_22 v_main_~x~0_In_11) (= |v_main_#t~post5_Out_22| 0)) (and (= v_main_~y~0_In_11 v_main_~y~0_Out_22) (= v_main_~x~0_In_11 v_main_~x~0_Out_22))) InVars {main_~x~0=v_main_~x~0_In_11, main_~y~0=v_main_~y~0_In_11} OutVars{main_~y~0=v_main_~y~0_Out_22, main_#t~post5=|v_main_#t~post5_Out_22|, main_~x~0=v_main_~x~0_Out_22, main_#t~post6=|v_main_#t~post6_Out_22|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {3009#true} is VALID [2022-04-15 12:50:23,728 INFO L290 TraceCheckUtils]: 7: Hoare triple {3009#true} [84] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {3009#true} is VALID [2022-04-15 12:50:23,728 INFO L290 TraceCheckUtils]: 8: Hoare triple {3009#true} ~z~0 := ~y~0; {3014#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} is VALID [2022-04-15 12:50:23,730 INFO L290 TraceCheckUtils]: 9: Hoare triple {3014#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3015#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} is VALID [2022-04-15 12:50:23,731 INFO L290 TraceCheckUtils]: 10: Hoare triple {3015#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3016#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} is VALID [2022-04-15 12:50:23,733 INFO L290 TraceCheckUtils]: 11: Hoare triple {3016#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3017#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} is VALID [2022-04-15 12:50:23,735 INFO L290 TraceCheckUtils]: 12: Hoare triple {3017#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3018#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} is VALID [2022-04-15 12:50:23,735 INFO L290 TraceCheckUtils]: 13: Hoare triple {3018#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} assume !(~z~0 % 4294967296 > 0); {3018#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} is VALID [2022-04-15 12:50:23,737 INFO L290 TraceCheckUtils]: 14: Hoare triple {3018#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3019#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} is VALID [2022-04-15 12:50:23,738 INFO L290 TraceCheckUtils]: 15: Hoare triple {3019#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3020#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} is VALID [2022-04-15 12:50:23,740 INFO L290 TraceCheckUtils]: 16: Hoare triple {3020#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3021#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} is VALID [2022-04-15 12:50:23,741 INFO L290 TraceCheckUtils]: 17: Hoare triple {3021#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} assume !(~y~0 % 4294967296 > 0); {3010#false} is VALID [2022-04-15 12:50:23,741 INFO L272 TraceCheckUtils]: 18: Hoare triple {3010#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {3010#false} is VALID [2022-04-15 12:50:23,741 INFO L290 TraceCheckUtils]: 19: Hoare triple {3010#false} ~cond := #in~cond; {3010#false} is VALID [2022-04-15 12:50:23,741 INFO L290 TraceCheckUtils]: 20: Hoare triple {3010#false} assume 0 == ~cond; {3010#false} is VALID [2022-04-15 12:50:23,741 INFO L290 TraceCheckUtils]: 21: Hoare triple {3010#false} assume !false; {3010#false} is VALID [2022-04-15 12:50:23,742 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 0 proven. 16 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:50:23,742 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 12:50:23,742 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1646524607] [2022-04-15 12:50:23,742 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1646524607] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 12:50:23,742 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1101270085] [2022-04-15 12:50:23,742 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:50:23,742 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:50:23,743 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 12:50:23,743 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 12:50:23,744 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-04-15 12:50:23,778 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:50:23,778 INFO L263 TraceCheckSpWp]: Trace formula consists of 95 conjuncts, 16 conjunts are in the unsatisfiable core [2022-04-15 12:50:23,785 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:50:23,785 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 12:50:24,168 INFO L272 TraceCheckUtils]: 0: Hoare triple {3009#true} call ULTIMATE.init(); {3009#true} is VALID [2022-04-15 12:50:24,168 INFO L290 TraceCheckUtils]: 1: Hoare triple {3009#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(10, 2);call #Ultimate.allocInit(12, 3); {3009#true} is VALID [2022-04-15 12:50:24,168 INFO L290 TraceCheckUtils]: 2: Hoare triple {3009#true} assume true; {3009#true} is VALID [2022-04-15 12:50:24,168 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3009#true} {3009#true} #61#return; {3009#true} is VALID [2022-04-15 12:50:24,168 INFO L272 TraceCheckUtils]: 4: Hoare triple {3009#true} call #t~ret11 := main(); {3009#true} is VALID [2022-04-15 12:50:24,168 INFO L290 TraceCheckUtils]: 5: Hoare triple {3009#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {3009#true} is VALID [2022-04-15 12:50:24,169 INFO L290 TraceCheckUtils]: 6: Hoare triple {3009#true} [85] L16-2-->L16-3_primed: Formula: (or (and (= (+ v_main_~x~0_In_11 v_main_~y~0_In_11) (+ v_main_~y~0_Out_22 v_main_~x~0_Out_22)) (< 0 (mod (+ v_main_~x~0_Out_22 1) 4294967296)) (= |v_main_#t~post6_Out_22| 0) (<= v_main_~x~0_Out_22 v_main_~x~0_In_11) (= |v_main_#t~post5_Out_22| 0)) (and (= v_main_~y~0_In_11 v_main_~y~0_Out_22) (= v_main_~x~0_In_11 v_main_~x~0_Out_22))) InVars {main_~x~0=v_main_~x~0_In_11, main_~y~0=v_main_~y~0_In_11} OutVars{main_~y~0=v_main_~y~0_Out_22, main_#t~post5=|v_main_#t~post5_Out_22|, main_~x~0=v_main_~x~0_Out_22, main_#t~post6=|v_main_#t~post6_Out_22|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {3009#true} is VALID [2022-04-15 12:50:24,169 INFO L290 TraceCheckUtils]: 7: Hoare triple {3009#true} [84] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {3009#true} is VALID [2022-04-15 12:50:24,170 INFO L290 TraceCheckUtils]: 8: Hoare triple {3009#true} ~z~0 := ~y~0; {3014#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} is VALID [2022-04-15 12:50:24,172 INFO L290 TraceCheckUtils]: 9: Hoare triple {3014#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3015#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} is VALID [2022-04-15 12:50:24,173 INFO L290 TraceCheckUtils]: 10: Hoare triple {3015#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3016#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} is VALID [2022-04-15 12:50:24,174 INFO L290 TraceCheckUtils]: 11: Hoare triple {3016#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3017#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} is VALID [2022-04-15 12:50:24,176 INFO L290 TraceCheckUtils]: 12: Hoare triple {3017#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3018#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} is VALID [2022-04-15 12:50:24,176 INFO L290 TraceCheckUtils]: 13: Hoare triple {3018#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} assume !(~z~0 % 4294967296 > 0); {3018#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} is VALID [2022-04-15 12:50:24,178 INFO L290 TraceCheckUtils]: 14: Hoare triple {3018#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3019#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} is VALID [2022-04-15 12:50:24,179 INFO L290 TraceCheckUtils]: 15: Hoare triple {3019#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3020#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} is VALID [2022-04-15 12:50:24,181 INFO L290 TraceCheckUtils]: 16: Hoare triple {3020#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3021#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} is VALID [2022-04-15 12:50:24,182 INFO L290 TraceCheckUtils]: 17: Hoare triple {3021#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} assume !(~y~0 % 4294967296 > 0); {3010#false} is VALID [2022-04-15 12:50:24,182 INFO L272 TraceCheckUtils]: 18: Hoare triple {3010#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {3010#false} is VALID [2022-04-15 12:50:24,182 INFO L290 TraceCheckUtils]: 19: Hoare triple {3010#false} ~cond := #in~cond; {3010#false} is VALID [2022-04-15 12:50:24,182 INFO L290 TraceCheckUtils]: 20: Hoare triple {3010#false} assume 0 == ~cond; {3010#false} is VALID [2022-04-15 12:50:24,182 INFO L290 TraceCheckUtils]: 21: Hoare triple {3010#false} assume !false; {3010#false} is VALID [2022-04-15 12:50:24,182 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 0 proven. 16 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:50:24,182 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 12:50:24,607 INFO L290 TraceCheckUtils]: 21: Hoare triple {3010#false} assume !false; {3010#false} is VALID [2022-04-15 12:50:24,607 INFO L290 TraceCheckUtils]: 20: Hoare triple {3010#false} assume 0 == ~cond; {3010#false} is VALID [2022-04-15 12:50:24,607 INFO L290 TraceCheckUtils]: 19: Hoare triple {3010#false} ~cond := #in~cond; {3010#false} is VALID [2022-04-15 12:50:24,607 INFO L272 TraceCheckUtils]: 18: Hoare triple {3010#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {3010#false} is VALID [2022-04-15 12:50:24,608 INFO L290 TraceCheckUtils]: 17: Hoare triple {3021#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} assume !(~y~0 % 4294967296 > 0); {3010#false} is VALID [2022-04-15 12:50:24,610 INFO L290 TraceCheckUtils]: 16: Hoare triple {3020#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3021#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} is VALID [2022-04-15 12:50:24,611 INFO L290 TraceCheckUtils]: 15: Hoare triple {3019#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3020#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} is VALID [2022-04-15 12:50:24,613 INFO L290 TraceCheckUtils]: 14: Hoare triple {3018#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3019#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} is VALID [2022-04-15 12:50:24,613 INFO L290 TraceCheckUtils]: 13: Hoare triple {3018#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} assume !(~z~0 % 4294967296 > 0); {3018#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} is VALID [2022-04-15 12:50:24,614 INFO L290 TraceCheckUtils]: 12: Hoare triple {3116#(or (not (< 0 (mod main_~z~0 4294967296))) (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3018#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} is VALID [2022-04-15 12:50:24,616 INFO L290 TraceCheckUtils]: 11: Hoare triple {3120#(or (not (< 0 (mod (+ main_~z~0 4294967295) 4294967296))) (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3116#(or (not (< 0 (mod main_~z~0 4294967296))) (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298)))} is VALID [2022-04-15 12:50:24,617 INFO L290 TraceCheckUtils]: 10: Hoare triple {3124#(or (not (< 0 (mod (+ main_~z~0 4294967294) 4294967296))) (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3120#(or (not (< 0 (mod (+ main_~z~0 4294967295) 4294967296))) (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298)))} is VALID [2022-04-15 12:50:24,619 INFO L290 TraceCheckUtils]: 9: Hoare triple {3128#(or (not (< 0 (mod (+ main_~z~0 4294967293) 4294967296))) (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3124#(or (not (< 0 (mod (+ main_~z~0 4294967294) 4294967296))) (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298)))} is VALID [2022-04-15 12:50:24,620 INFO L290 TraceCheckUtils]: 8: Hoare triple {3009#true} ~z~0 := ~y~0; {3128#(or (not (< 0 (mod (+ main_~z~0 4294967293) 4294967296))) (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298)))} is VALID [2022-04-15 12:50:24,620 INFO L290 TraceCheckUtils]: 7: Hoare triple {3009#true} [84] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {3009#true} is VALID [2022-04-15 12:50:24,620 INFO L290 TraceCheckUtils]: 6: Hoare triple {3009#true} [85] L16-2-->L16-3_primed: Formula: (or (and (= (+ v_main_~x~0_In_11 v_main_~y~0_In_11) (+ v_main_~y~0_Out_22 v_main_~x~0_Out_22)) (< 0 (mod (+ v_main_~x~0_Out_22 1) 4294967296)) (= |v_main_#t~post6_Out_22| 0) (<= v_main_~x~0_Out_22 v_main_~x~0_In_11) (= |v_main_#t~post5_Out_22| 0)) (and (= v_main_~y~0_In_11 v_main_~y~0_Out_22) (= v_main_~x~0_In_11 v_main_~x~0_Out_22))) InVars {main_~x~0=v_main_~x~0_In_11, main_~y~0=v_main_~y~0_In_11} OutVars{main_~y~0=v_main_~y~0_Out_22, main_#t~post5=|v_main_#t~post5_Out_22|, main_~x~0=v_main_~x~0_Out_22, main_#t~post6=|v_main_#t~post6_Out_22|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {3009#true} is VALID [2022-04-15 12:50:24,620 INFO L290 TraceCheckUtils]: 5: Hoare triple {3009#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {3009#true} is VALID [2022-04-15 12:50:24,620 INFO L272 TraceCheckUtils]: 4: Hoare triple {3009#true} call #t~ret11 := main(); {3009#true} is VALID [2022-04-15 12:50:24,620 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3009#true} {3009#true} #61#return; {3009#true} is VALID [2022-04-15 12:50:24,621 INFO L290 TraceCheckUtils]: 2: Hoare triple {3009#true} assume true; {3009#true} is VALID [2022-04-15 12:50:24,621 INFO L290 TraceCheckUtils]: 1: Hoare triple {3009#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(10, 2);call #Ultimate.allocInit(12, 3); {3009#true} is VALID [2022-04-15 12:50:24,621 INFO L272 TraceCheckUtils]: 0: Hoare triple {3009#true} call ULTIMATE.init(); {3009#true} is VALID [2022-04-15 12:50:24,621 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 4 proven. 12 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:50:24,621 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1101270085] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 12:50:24,621 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 12:50:24,621 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 10, 10] total 15 [2022-04-15 12:50:24,757 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 12:50:24,758 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [220232580] [2022-04-15 12:50:24,758 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [220232580] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 12:50:24,758 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 12:50:24,758 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [14] imperfect sequences [] total 14 [2022-04-15 12:50:24,758 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1135329612] [2022-04-15 12:50:24,758 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 12:50:24,758 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 1.4285714285714286) internal successors, (20), 13 states have internal predecessors, (20), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 24 [2022-04-15 12:50:24,759 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 12:50:24,759 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 14 states, 14 states have (on average 1.4285714285714286) internal successors, (20), 13 states have internal predecessors, (20), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:50:24,788 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 24 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:50:24,788 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 14 states [2022-04-15 12:50:24,789 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 12:50:24,789 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 14 interpolants. [2022-04-15 12:50:24,789 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=44, Invalid=262, Unknown=0, NotChecked=0, Total=306 [2022-04-15 12:50:24,789 INFO L87 Difference]: Start difference. First operand 25 states and 27 transitions. Second operand has 14 states, 14 states have (on average 1.4285714285714286) internal successors, (20), 13 states have internal predecessors, (20), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:50:26,747 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:50:26,747 INFO L93 Difference]: Finished difference Result 31 states and 33 transitions. [2022-04-15 12:50:26,747 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 15 states. [2022-04-15 12:50:26,748 INFO L78 Accepts]: Start accepts. Automaton has has 14 states, 14 states have (on average 1.4285714285714286) internal successors, (20), 13 states have internal predecessors, (20), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 24 [2022-04-15 12:50:26,748 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 12:50:26,748 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 1.4285714285714286) internal successors, (20), 13 states have internal predecessors, (20), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:50:26,748 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 33 transitions. [2022-04-15 12:50:26,749 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 14 states, 14 states have (on average 1.4285714285714286) internal successors, (20), 13 states have internal predecessors, (20), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:50:26,749 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 15 states to 15 states and 33 transitions. [2022-04-15 12:50:26,749 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 15 states and 33 transitions. [2022-04-15 12:50:26,824 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:50:26,825 INFO L225 Difference]: With dead ends: 31 [2022-04-15 12:50:26,825 INFO L226 Difference]: Without dead ends: 26 [2022-04-15 12:50:26,825 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 77 GetRequests, 43 SyntacticMatches, 6 SemanticMatches, 28 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 96 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=152, Invalid=718, Unknown=0, NotChecked=0, Total=870 [2022-04-15 12:50:26,826 INFO L913 BasicCegarLoop]: 14 mSDtfsCounter, 19 mSDsluCounter, 57 mSDsCounter, 0 mSdLazyCounter, 171 mSolverCounterSat, 34 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 19 SdHoareTripleChecker+Valid, 71 SdHoareTripleChecker+Invalid, 205 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 34 IncrementalHoareTripleChecker+Valid, 171 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-15 12:50:26,826 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [19 Valid, 71 Invalid, 205 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [34 Valid, 171 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-15 12:50:26,826 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 26 states. [2022-04-15 12:50:26,880 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 26 to 26. [2022-04-15 12:50:26,880 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 12:50:26,880 INFO L82 GeneralOperation]: Start isEquivalent. First operand 26 states. Second operand has 26 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 21 states have internal predecessors, (24), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:50:26,880 INFO L74 IsIncluded]: Start isIncluded. First operand 26 states. Second operand has 26 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 21 states have internal predecessors, (24), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:50:26,881 INFO L87 Difference]: Start difference. First operand 26 states. Second operand has 26 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 21 states have internal predecessors, (24), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:50:26,881 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:50:26,881 INFO L93 Difference]: Finished difference Result 26 states and 28 transitions. [2022-04-15 12:50:26,881 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 28 transitions. [2022-04-15 12:50:26,881 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:50:26,881 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:50:26,881 INFO L74 IsIncluded]: Start isIncluded. First operand has 26 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 21 states have internal predecessors, (24), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 26 states. [2022-04-15 12:50:26,882 INFO L87 Difference]: Start difference. First operand has 26 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 21 states have internal predecessors, (24), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 26 states. [2022-04-15 12:50:26,882 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:50:26,882 INFO L93 Difference]: Finished difference Result 26 states and 28 transitions. [2022-04-15 12:50:26,882 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 28 transitions. [2022-04-15 12:50:26,882 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:50:26,882 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:50:26,882 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 12:50:26,882 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 12:50:26,882 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 26 states, 21 states have (on average 1.1428571428571428) internal successors, (24), 21 states have internal predecessors, (24), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:50:26,883 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 26 states to 26 states and 28 transitions. [2022-04-15 12:50:26,883 INFO L78 Accepts]: Start accepts. Automaton has 26 states and 28 transitions. Word has length 24 [2022-04-15 12:50:26,883 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 12:50:26,883 INFO L478 AbstractCegarLoop]: Abstraction has 26 states and 28 transitions. [2022-04-15 12:50:26,883 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 14 states, 14 states have (on average 1.4285714285714286) internal successors, (20), 13 states have internal predecessors, (20), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:50:26,883 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 26 states and 28 transitions. [2022-04-15 12:50:27,002 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:50:27,003 INFO L276 IsEmpty]: Start isEmpty. Operand 26 states and 28 transitions. [2022-04-15 12:50:27,003 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-04-15 12:50:27,003 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 12:50:27,003 INFO L499 BasicCegarLoop]: trace histogram [4, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 12:50:27,021 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-04-15 12:50:27,204 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable11,10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:50:27,204 INFO L403 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 12:50:27,205 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 12:50:27,205 INFO L85 PathProgramCache]: Analyzing trace with hash -812825394, now seen corresponding path program 10 times [2022-04-15 12:50:27,205 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 12:50:27,205 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1763263761] [2022-04-15 12:50:27,346 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-15 12:50:27,347 INFO L85 PathProgramCache]: Analyzing trace with hash -1248808627, now seen corresponding path program 1 times [2022-04-15 12:50:27,347 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 12:50:27,347 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [571786431] [2022-04-15 12:50:27,347 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:50:27,347 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 12:50:27,371 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:50:28,135 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 12:50:28,136 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:50:28,139 INFO L290 TraceCheckUtils]: 0: Hoare triple {3373#(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(10, 2);call #Ultimate.allocInit(12, 3); {3353#true} is VALID [2022-04-15 12:50:28,139 INFO L290 TraceCheckUtils]: 1: Hoare triple {3353#true} assume true; {3353#true} is VALID [2022-04-15 12:50:28,139 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {3353#true} {3353#true} #61#return; {3353#true} is VALID [2022-04-15 12:50:28,140 INFO L272 TraceCheckUtils]: 0: Hoare triple {3353#true} call ULTIMATE.init(); {3373#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 12:50:28,140 INFO L290 TraceCheckUtils]: 1: Hoare triple {3373#(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(10, 2);call #Ultimate.allocInit(12, 3); {3353#true} is VALID [2022-04-15 12:50:28,140 INFO L290 TraceCheckUtils]: 2: Hoare triple {3353#true} assume true; {3353#true} is VALID [2022-04-15 12:50:28,140 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3353#true} {3353#true} #61#return; {3353#true} is VALID [2022-04-15 12:50:28,140 INFO L272 TraceCheckUtils]: 4: Hoare triple {3353#true} call #t~ret11 := main(); {3353#true} is VALID [2022-04-15 12:50:28,141 INFO L290 TraceCheckUtils]: 5: Hoare triple {3353#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {3358#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} is VALID [2022-04-15 12:50:28,143 INFO L290 TraceCheckUtils]: 6: Hoare triple {3358#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} [87] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~y~0_In_12 v_main_~y~0_Out_24) (= v_main_~x~0_In_12 v_main_~x~0_Out_24)) (and (= |v_main_#t~post5_Out_24| 0) (= |v_main_#t~post6_Out_24| 0) (< 0 (mod (+ v_main_~x~0_Out_24 1) 4294967296)) (= (+ v_main_~x~0_In_12 v_main_~y~0_In_12) (+ v_main_~y~0_Out_24 v_main_~x~0_Out_24)) (<= v_main_~x~0_Out_24 v_main_~x~0_In_12))) InVars {main_~x~0=v_main_~x~0_In_12, main_~y~0=v_main_~y~0_In_12} OutVars{main_~y~0=v_main_~y~0_Out_24, main_#t~post5=|v_main_#t~post5_Out_24|, main_~x~0=v_main_~x~0_Out_24, main_#t~post6=|v_main_#t~post6_Out_24|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {3359#(or (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= (+ main_~y~0 main_~x~0) main_~n~0) (<= main_~n~0 (+ main_~y~0 main_~x~0))) (= main_~y~0 0))} is VALID [2022-04-15 12:50:28,144 INFO L290 TraceCheckUtils]: 7: Hoare triple {3359#(or (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= (+ main_~y~0 main_~x~0) main_~n~0) (<= main_~n~0 (+ main_~y~0 main_~x~0))) (= main_~y~0 0))} [86] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {3360#(or (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~y~0 (* 4294967296 (div main_~x~0 4294967296))))) (= main_~y~0 0))} is VALID [2022-04-15 12:50:28,145 INFO L290 TraceCheckUtils]: 8: Hoare triple {3360#(or (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~y~0 (* 4294967296 (div main_~x~0 4294967296))))) (= main_~y~0 0))} ~z~0 := ~y~0; {3361#(and (or (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~y~0 (* 4294967296 (div main_~x~0 4294967296))))) (= main_~y~0 0)) (= (+ main_~y~0 (* (- 1) main_~z~0)) 0))} is VALID [2022-04-15 12:50:28,381 INFO L290 TraceCheckUtils]: 9: Hoare triple {3361#(and (or (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~y~0 (* 4294967296 (div main_~x~0 4294967296))))) (= main_~y~0 0)) (= (+ main_~y~0 (* (- 1) main_~z~0)) 0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3362#(and (or (<= main_~z~0 (+ 4294967294 (* (div (+ main_~z~0 (* (div main_~z~0 4294967296) 4294967296) (* (- 1) main_~n~0) (* (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296) 1) 4294967296) 4294967296))) (= main_~y~0 0)) (or (not (= main_~y~0 0)) (and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))))} is VALID [2022-04-15 12:50:28,407 INFO L290 TraceCheckUtils]: 10: Hoare triple {3362#(and (or (<= main_~z~0 (+ 4294967294 (* (div (+ main_~z~0 (* (div main_~z~0 4294967296) 4294967296) (* (- 1) main_~n~0) (* (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296) 1) 4294967296) 4294967296))) (= main_~y~0 0)) (or (not (= main_~y~0 0)) (and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3363#(and (or (= main_~y~0 0) (<= main_~z~0 (+ (* (div (+ main_~z~0 2 (* (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296) (* (div main_~z~0 4294967296) 4294967296) (* (- 1) main_~n~0)) 4294967296) 4294967296) 4294967293))) (or (not (= main_~y~0 0)) (and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))))} is VALID [2022-04-15 12:50:28,474 INFO L290 TraceCheckUtils]: 11: Hoare triple {3363#(and (or (= main_~y~0 0) (<= main_~z~0 (+ (* (div (+ main_~z~0 2 (* (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296) (* (div main_~z~0 4294967296) 4294967296) (* (- 1) main_~n~0)) 4294967296) 4294967296) 4294967293))) (or (not (= main_~y~0 0)) (and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3364#(and (or (= main_~y~0 0) (and (<= (div main_~n~0 4294967296) (+ (div main_~z~0 4294967296) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296))) (<= main_~z~0 (+ 4294967292 (* (div (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296) (* (- 1) main_~n~0)) 4294967296) 4294967296))))) (or (not (= main_~y~0 0)) (and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))))} is VALID [2022-04-15 12:50:28,480 INFO L290 TraceCheckUtils]: 12: Hoare triple {3364#(and (or (= main_~y~0 0) (and (<= (div main_~n~0 4294967296) (+ (div main_~z~0 4294967296) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296))) (<= main_~z~0 (+ 4294967292 (* (div (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296) (* (- 1) main_~n~0)) 4294967296) 4294967296))))) (or (not (= main_~y~0 0)) (and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3365#(and (or (and (<= (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4)) (<= (* (div main_~n~0 4294967296) 4294967296) (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296) 4294967296)))) (= main_~y~0 0)) (or (not (= main_~y~0 0)) (and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ (div main_~z~0 4294967296) 1) 0))))} is VALID [2022-04-15 12:50:28,482 INFO L290 TraceCheckUtils]: 13: Hoare triple {3365#(and (or (and (<= (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4)) (<= (* (div main_~n~0 4294967296) 4294967296) (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296) 4294967296)))) (= main_~y~0 0)) (or (not (= main_~y~0 0)) (and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ (div main_~z~0 4294967296) 1) 0))))} assume !(~z~0 % 4294967296 > 0); {3366#(and (not (= main_~y~0 0)) (<= main_~n~0 (+ main_~z~0 (* (div (+ (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296)) 4294967296) 4294967296) 4)) (<= (* (div main_~n~0 4294967296) 4294967296) (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296) 4294967296))))} is VALID [2022-04-15 12:50:28,486 INFO L290 TraceCheckUtils]: 14: Hoare triple {3366#(and (not (= main_~y~0 0)) (<= main_~n~0 (+ main_~z~0 (* (div (+ (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296)) 4294967296) 4294967296) 4)) (<= (* (div main_~n~0 4294967296) 4294967296) (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3367#(and (<= (+ (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~z~0 (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296)))) (<= main_~n~0 (+ main_~z~0 3 (* (div (+ (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296) 1) 4294967296) 4294967296))))} is VALID [2022-04-15 12:50:28,489 INFO L290 TraceCheckUtils]: 15: Hoare triple {3367#(and (<= (+ (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~z~0 (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296)))) (<= main_~n~0 (+ main_~z~0 3 (* (div (+ (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296) 1) 4294967296) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3368#(and (<= (+ 2 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~z~0 (* (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296))) (<= main_~n~0 (+ (* 4294967296 (div (+ 2 (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296)) 4294967296)) main_~z~0 2)))} is VALID [2022-04-15 12:50:28,491 INFO L290 TraceCheckUtils]: 16: Hoare triple {3368#(and (<= (+ 2 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~z~0 (* (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296))) (<= main_~n~0 (+ (* 4294967296 (div (+ 2 (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296)) 4294967296)) main_~z~0 2)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3369#(and (<= (+ 3 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~z~0 (* (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296))) (<= main_~n~0 (+ main_~z~0 (* (div (+ (* (- 1) main_~z~0) 3 (* (div main_~n~0 4294967296) 4294967296)) 4294967296) 4294967296) 1)))} is VALID [2022-04-15 12:50:28,495 INFO L290 TraceCheckUtils]: 17: Hoare triple {3369#(and (<= (+ 3 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~z~0 (* (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296))) (<= main_~n~0 (+ main_~z~0 (* (div (+ (* (- 1) main_~z~0) 3 (* (div main_~n~0 4294967296) 4294967296)) 4294967296) 4294967296) 1)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3370#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:50:28,496 INFO L290 TraceCheckUtils]: 18: Hoare triple {3370#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} assume !(~y~0 % 4294967296 > 0); {3370#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:50:28,497 INFO L272 TraceCheckUtils]: 19: Hoare triple {3370#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {3371#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 12:50:28,498 INFO L290 TraceCheckUtils]: 20: Hoare triple {3371#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {3372#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 12:50:28,498 INFO L290 TraceCheckUtils]: 21: Hoare triple {3372#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {3354#false} is VALID [2022-04-15 12:50:28,498 INFO L290 TraceCheckUtils]: 22: Hoare triple {3354#false} assume !false; {3354#false} is VALID [2022-04-15 12:50:28,498 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 0 proven. 20 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:50:28,498 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 12:50:28,499 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [571786431] [2022-04-15 12:50:28,499 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [571786431] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 12:50:28,499 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1610871329] [2022-04-15 12:50:28,499 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:50:28,499 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:50:28,499 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 12:50:28,500 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 12:50:28,501 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-04-15 12:50:28,616 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:50:28,617 INFO L263 TraceCheckSpWp]: Trace formula consists of 100 conjuncts, 38 conjunts are in the unsatisfiable core [2022-04-15 12:50:28,637 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:50:28,641 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 12:50:50,046 INFO L272 TraceCheckUtils]: 0: Hoare triple {3353#true} call ULTIMATE.init(); {3353#true} is VALID [2022-04-15 12:50:50,046 INFO L290 TraceCheckUtils]: 1: Hoare triple {3353#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(10, 2);call #Ultimate.allocInit(12, 3); {3353#true} is VALID [2022-04-15 12:50:50,046 INFO L290 TraceCheckUtils]: 2: Hoare triple {3353#true} assume true; {3353#true} is VALID [2022-04-15 12:50:50,046 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3353#true} {3353#true} #61#return; {3353#true} is VALID [2022-04-15 12:50:50,047 INFO L272 TraceCheckUtils]: 4: Hoare triple {3353#true} call #t~ret11 := main(); {3353#true} is VALID [2022-04-15 12:50:50,047 INFO L290 TraceCheckUtils]: 5: Hoare triple {3353#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {3358#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} is VALID [2022-04-15 12:50:50,049 INFO L290 TraceCheckUtils]: 6: Hoare triple {3358#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} [87] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~y~0_In_12 v_main_~y~0_Out_24) (= v_main_~x~0_In_12 v_main_~x~0_Out_24)) (and (= |v_main_#t~post5_Out_24| 0) (= |v_main_#t~post6_Out_24| 0) (< 0 (mod (+ v_main_~x~0_Out_24 1) 4294967296)) (= (+ v_main_~x~0_In_12 v_main_~y~0_In_12) (+ v_main_~y~0_Out_24 v_main_~x~0_Out_24)) (<= v_main_~x~0_Out_24 v_main_~x~0_In_12))) InVars {main_~x~0=v_main_~x~0_In_12, main_~y~0=v_main_~y~0_In_12} OutVars{main_~y~0=v_main_~y~0_Out_24, main_#t~post5=|v_main_#t~post5_Out_24|, main_~x~0=v_main_~x~0_Out_24, main_#t~post6=|v_main_#t~post6_Out_24|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {3395#(or (and (< 0 (mod (+ main_~x~0 1) 4294967296)) (<= main_~x~0 main_~n~0) (= main_~n~0 (+ main_~y~0 main_~x~0))) (and (= main_~n~0 main_~x~0) (= main_~y~0 0)))} is VALID [2022-04-15 12:50:50,052 INFO L290 TraceCheckUtils]: 7: Hoare triple {3395#(or (and (< 0 (mod (+ main_~x~0 1) 4294967296)) (<= main_~x~0 main_~n~0) (= main_~n~0 (+ main_~y~0 main_~x~0))) (and (= main_~n~0 main_~x~0) (= main_~y~0 0)))} [86] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {3399#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} is VALID [2022-04-15 12:50:50,053 INFO L290 TraceCheckUtils]: 8: Hoare triple {3399#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} ~z~0 := ~y~0; {3403#(and (<= 0 main_~y~0) (= main_~z~0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} is VALID [2022-04-15 12:50:50,062 INFO L290 TraceCheckUtils]: 9: Hoare triple {3403#(and (<= 0 main_~y~0) (= main_~z~0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3407#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= main_~y~0 (+ main_~z~0 1)) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:50:50,065 INFO L290 TraceCheckUtils]: 10: Hoare triple {3407#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= main_~y~0 (+ main_~z~0 1)) (< 0 (mod main_~y~0 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3411#(and (<= 0 main_~y~0) (= main_~y~0 (+ main_~z~0 2)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:50:50,068 INFO L290 TraceCheckUtils]: 11: Hoare triple {3411#(and (<= 0 main_~y~0) (= main_~y~0 (+ main_~z~0 2)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3415#(and (<= 0 main_~y~0) (= (+ (- 2) main_~y~0) (+ main_~z~0 1)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:50:50,069 INFO L290 TraceCheckUtils]: 12: Hoare triple {3415#(and (<= 0 main_~y~0) (= (+ (- 2) main_~y~0) (+ main_~z~0 1)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3419#(and (<= 0 main_~y~0) (= (+ main_~y~0 (- 3)) (+ main_~z~0 1)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:50:50,070 INFO L290 TraceCheckUtils]: 13: Hoare triple {3419#(and (<= 0 main_~y~0) (= (+ main_~y~0 (- 3)) (+ main_~z~0 1)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} assume !(~z~0 % 4294967296 > 0); {3423#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= main_~y~0 (+ main_~z~0 4)) (<= (mod main_~z~0 4294967296) 0))} is VALID [2022-04-15 12:50:50,076 INFO L290 TraceCheckUtils]: 14: Hoare triple {3423#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= main_~y~0 (+ main_~z~0 4)) (<= (mod main_~z~0 4294967296) 0))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3427#(and (<= (mod (+ main_~z~0 4294967295) 4294967296) 0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0) 1) (- 4294967296)) (div (+ (- 1) main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (<= 0 (+ main_~y~0 1)) (= (+ main_~z~0 3) (+ main_~y~0 1)))} is VALID [2022-04-15 12:50:50,080 INFO L290 TraceCheckUtils]: 15: Hoare triple {3427#(and (<= (mod (+ main_~z~0 4294967295) 4294967296) 0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0) 1) (- 4294967296)) (div (+ (- 1) main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (<= 0 (+ main_~y~0 1)) (= (+ main_~z~0 3) (+ main_~y~0 1)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3431#(and (<= 0 (+ main_~z~0 2)) (<= (div (+ main_~z~0 2 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296)) (<= (mod (+ main_~z~0 4294967294) 4294967296) 0) (= (+ main_~z~0 1) (+ main_~y~0 1)))} is VALID [2022-04-15 12:50:50,083 INFO L290 TraceCheckUtils]: 16: Hoare triple {3431#(and (<= 0 (+ main_~z~0 2)) (<= (div (+ main_~z~0 2 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296)) (<= (mod (+ main_~z~0 4294967294) 4294967296) 0) (= (+ main_~z~0 1) (+ main_~y~0 1)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3435#(and (<= 0 (+ main_~y~0 3)) (<= (mod (+ main_~y~0 4294967295) 4294967296) 0) (= (+ main_~y~0 2) main_~z~0) (<= (div (+ main_~y~0 3 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (- 3) (* (- 1) main_~y~0)) 4294967296)))} is VALID [2022-04-15 12:50:50,088 INFO L290 TraceCheckUtils]: 17: Hoare triple {3435#(and (<= 0 (+ main_~y~0 3)) (<= (mod (+ main_~y~0 4294967295) 4294967296) 0) (= (+ main_~y~0 2) main_~z~0) (<= (div (+ main_~y~0 3 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (- 3) (* (- 1) main_~y~0)) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3439#(and (= (+ (- 1) main_~z~0) (+ main_~y~0 3)) (<= (div (+ main_~y~0 4 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (- 4) (* (- 1) main_~y~0)) 4294967296)) (<= (mod main_~y~0 4294967296) 0) (<= 0 (+ main_~y~0 4)))} is VALID [2022-04-15 12:50:50,090 INFO L290 TraceCheckUtils]: 18: Hoare triple {3439#(and (= (+ (- 1) main_~z~0) (+ main_~y~0 3)) (<= (div (+ main_~y~0 4 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (- 4) (* (- 1) main_~y~0)) 4294967296)) (<= (mod main_~y~0 4294967296) 0) (<= 0 (+ main_~y~0 4)))} assume !(~y~0 % 4294967296 > 0); {3443#(and (<= (mod (+ 4294967292 main_~z~0) 4294967296) 0) (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} is VALID [2022-04-15 12:50:50,095 INFO L272 TraceCheckUtils]: 19: Hoare triple {3443#(and (<= (mod (+ 4294967292 main_~z~0) 4294967296) 0) (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {3447#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 12:50:50,095 INFO L290 TraceCheckUtils]: 20: Hoare triple {3447#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3451#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 12:50:50,096 INFO L290 TraceCheckUtils]: 21: Hoare triple {3451#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3354#false} is VALID [2022-04-15 12:50:50,096 INFO L290 TraceCheckUtils]: 22: Hoare triple {3354#false} assume !false; {3354#false} is VALID [2022-04-15 12:50:50,096 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 0 proven. 20 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:50:50,096 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 12:51:00,103 INFO L290 TraceCheckUtils]: 22: Hoare triple {3354#false} assume !false; {3354#false} is VALID [2022-04-15 12:51:00,104 INFO L290 TraceCheckUtils]: 21: Hoare triple {3451#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3354#false} is VALID [2022-04-15 12:51:00,104 INFO L290 TraceCheckUtils]: 20: Hoare triple {3447#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3451#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 12:51:00,105 INFO L272 TraceCheckUtils]: 19: Hoare triple {3370#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {3447#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 12:51:00,105 INFO L290 TraceCheckUtils]: 18: Hoare triple {3470#(or (and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)))) (< 0 (mod main_~y~0 4294967296)))} assume !(~y~0 % 4294967296 > 0); {3370#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:51:00,108 INFO L290 TraceCheckUtils]: 17: Hoare triple {3474#(or (and (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296)) (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)))) (< 0 (mod (+ main_~y~0 4294967295) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3470#(or (and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)))) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:51:00,110 INFO L290 TraceCheckUtils]: 16: Hoare triple {3478#(or (< 0 (mod (+ main_~y~0 4294967294) 4294967296)) (and (< (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0) (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3474#(or (and (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296)) (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)))) (< 0 (mod (+ main_~y~0 4294967295) 4294967296)))} is VALID [2022-04-15 12:51:00,112 INFO L290 TraceCheckUtils]: 15: Hoare triple {3482#(or (and (< (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4)) (<= (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)))) (< 0 (mod (+ main_~y~0 4294967293) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3478#(or (< 0 (mod (+ main_~y~0 4294967294) 4294967296)) (and (< (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0) (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0))))} is VALID [2022-04-15 12:51:00,114 INFO L290 TraceCheckUtils]: 14: Hoare triple {3486#(or (and (< (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0) (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4) (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0))) (< 0 (mod (+ 4294967292 main_~y~0) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3482#(or (and (< (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4)) (<= (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)))) (< 0 (mod (+ main_~y~0 4294967293) 4294967296)))} is VALID [2022-04-15 12:51:00,115 INFO L290 TraceCheckUtils]: 13: Hoare triple {3490#(or (and (< (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0) (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4) (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0))) (< 0 (mod main_~z~0 4294967296)) (< 0 (mod (+ 4294967292 main_~y~0) 4294967296)))} assume !(~z~0 % 4294967296 > 0); {3486#(or (and (< (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0) (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4) (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0))) (< 0 (mod (+ 4294967292 main_~y~0) 4294967296)))} is VALID [2022-04-15 12:51:00,118 INFO L290 TraceCheckUtils]: 12: Hoare triple {3494#(or (and (< (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4)) (<= (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)))) (< 0 (mod (+ 4294967292 main_~y~0) 4294967296)) (< 0 (mod (+ main_~z~0 4294967295) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3490#(or (and (< (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0) (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4) (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0))) (< 0 (mod main_~z~0 4294967296)) (< 0 (mod (+ 4294967292 main_~y~0) 4294967296)))} is VALID [2022-04-15 12:51:00,121 INFO L290 TraceCheckUtils]: 11: Hoare triple {3498#(or (< 0 (mod (+ main_~z~0 4294967294) 4294967296)) (< 0 (mod (+ 4294967292 main_~y~0) 4294967296)) (and (< (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0) (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3494#(or (and (< (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4)) (<= (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)))) (< 0 (mod (+ 4294967292 main_~y~0) 4294967296)) (< 0 (mod (+ main_~z~0 4294967295) 4294967296)))} is VALID [2022-04-15 12:51:00,124 INFO L290 TraceCheckUtils]: 10: Hoare triple {3502#(or (and (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296)) (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)))) (< 0 (mod (+ 4294967292 main_~y~0) 4294967296)) (< 0 (mod (+ main_~z~0 4294967293) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3498#(or (< 0 (mod (+ main_~z~0 4294967294) 4294967296)) (< 0 (mod (+ 4294967292 main_~y~0) 4294967296)) (and (< (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0) (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0))))} is VALID [2022-04-15 12:51:00,128 INFO L290 TraceCheckUtils]: 9: Hoare triple {3506#(or (and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)))) (< 0 (mod (+ 4294967292 main_~z~0) 4294967296)) (< 0 (mod (+ 4294967292 main_~y~0) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3502#(or (and (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296)) (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)))) (< 0 (mod (+ 4294967292 main_~y~0) 4294967296)) (< 0 (mod (+ main_~z~0 4294967293) 4294967296)))} is VALID [2022-04-15 12:51:00,129 INFO L290 TraceCheckUtils]: 8: Hoare triple {3510#(or (< 0 (mod (+ 4294967292 main_~y~0) 4294967296)) (and (< (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0))))} ~z~0 := ~y~0; {3506#(or (and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)))) (< 0 (mod (+ 4294967292 main_~z~0) 4294967296)) (< 0 (mod (+ 4294967292 main_~y~0) 4294967296)))} is VALID [2022-04-15 12:51:00,130 INFO L290 TraceCheckUtils]: 7: Hoare triple {3514#(or (< 0 (mod main_~x~0 4294967296)) (< 0 (mod (+ 4294967292 main_~y~0) 4294967296)) (and (< (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0))))} [86] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {3510#(or (< 0 (mod (+ 4294967292 main_~y~0) 4294967296)) (and (< (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0))))} is VALID [2022-04-15 12:51:00,164 INFO L290 TraceCheckUtils]: 6: Hoare triple {3518#(and (or (< (div (+ (- 4294967293) (* (- 1) main_~x~0) (* (- 1) main_~y~0)) (- 4294967296)) (+ 2 (div (+ 4294967291 main_~y~0 main_~x~0) 4294967296))) (< (+ (div (+ (- 1) (* (- 1) main_~x~0) (* (- 1) main_~y~0)) (- 4294967296)) (div (+ (- 4294967292) (* (- 1) main_~n~0)) (- 4294967296))) (+ (div main_~n~0 4294967296) 3 (div (+ 4294967291 main_~y~0 main_~x~0) 4294967296)))) (<= (+ (div (+ (- 4294967293) (* (- 1) main_~x~0) (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~x~0) (* (- 1) main_~y~0)) (- 4294967296)) (div main_~n~0 4294967296)) (+ (div (+ main_~y~0 main_~x~0 (- 4294967296)) 4294967296) 3 (div (+ 4294967291 main_~y~0 main_~x~0) 4294967296))))} [87] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~y~0_In_12 v_main_~y~0_Out_24) (= v_main_~x~0_In_12 v_main_~x~0_Out_24)) (and (= |v_main_#t~post5_Out_24| 0) (= |v_main_#t~post6_Out_24| 0) (< 0 (mod (+ v_main_~x~0_Out_24 1) 4294967296)) (= (+ v_main_~x~0_In_12 v_main_~y~0_In_12) (+ v_main_~y~0_Out_24 v_main_~x~0_Out_24)) (<= v_main_~x~0_Out_24 v_main_~x~0_In_12))) InVars {main_~x~0=v_main_~x~0_In_12, main_~y~0=v_main_~y~0_In_12} OutVars{main_~y~0=v_main_~y~0_Out_24, main_#t~post5=|v_main_#t~post5_Out_24|, main_~x~0=v_main_~x~0_Out_24, main_#t~post6=|v_main_#t~post6_Out_24|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {3514#(or (< 0 (mod main_~x~0 4294967296)) (< 0 (mod (+ 4294967292 main_~y~0) 4294967296)) (and (< (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0))))} is VALID [2022-04-15 12:51:00,167 INFO L290 TraceCheckUtils]: 5: Hoare triple {3353#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {3518#(and (or (< (div (+ (- 4294967293) (* (- 1) main_~x~0) (* (- 1) main_~y~0)) (- 4294967296)) (+ 2 (div (+ 4294967291 main_~y~0 main_~x~0) 4294967296))) (< (+ (div (+ (- 1) (* (- 1) main_~x~0) (* (- 1) main_~y~0)) (- 4294967296)) (div (+ (- 4294967292) (* (- 1) main_~n~0)) (- 4294967296))) (+ (div main_~n~0 4294967296) 3 (div (+ 4294967291 main_~y~0 main_~x~0) 4294967296)))) (<= (+ (div (+ (- 4294967293) (* (- 1) main_~x~0) (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~x~0) (* (- 1) main_~y~0)) (- 4294967296)) (div main_~n~0 4294967296)) (+ (div (+ main_~y~0 main_~x~0 (- 4294967296)) 4294967296) 3 (div (+ 4294967291 main_~y~0 main_~x~0) 4294967296))))} is VALID [2022-04-15 12:51:00,168 INFO L272 TraceCheckUtils]: 4: Hoare triple {3353#true} call #t~ret11 := main(); {3353#true} is VALID [2022-04-15 12:51:00,168 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3353#true} {3353#true} #61#return; {3353#true} is VALID [2022-04-15 12:51:00,168 INFO L290 TraceCheckUtils]: 2: Hoare triple {3353#true} assume true; {3353#true} is VALID [2022-04-15 12:51:00,168 INFO L290 TraceCheckUtils]: 1: Hoare triple {3353#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(10, 2);call #Ultimate.allocInit(12, 3); {3353#true} is VALID [2022-04-15 12:51:00,168 INFO L272 TraceCheckUtils]: 0: Hoare triple {3353#true} call ULTIMATE.init(); {3353#true} is VALID [2022-04-15 12:51:00,168 INFO L134 CoverageAnalysis]: Checked inductivity of 20 backedges. 0 proven. 20 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:51:00,168 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1610871329] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 12:51:00,168 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 12:51:00,169 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [18, 18, 18] total 46 [2022-04-15 12:51:01,775 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 12:51:01,775 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1763263761] [2022-04-15 12:51:01,775 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1763263761] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 12:51:01,775 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 12:51:01,775 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [20] imperfect sequences [] total 20 [2022-04-15 12:51:01,775 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1014454724] [2022-04-15 12:51:01,775 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 12:51:01,776 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 20 states have (on average 1.05) internal successors, (21), 18 states have internal predecessors, (21), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 25 [2022-04-15 12:51:01,776 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 12:51:01,776 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 20 states, 20 states have (on average 1.05) internal successors, (21), 18 states have internal predecessors, (21), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:51:01,923 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 25 edges. 25 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:51:01,924 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 20 states [2022-04-15 12:51:01,924 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 12:51:01,924 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2022-04-15 12:51:01,925 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=353, Invalid=2097, Unknown=0, NotChecked=0, Total=2450 [2022-04-15 12:51:01,925 INFO L87 Difference]: Start difference. First operand 26 states and 28 transitions. Second operand has 20 states, 20 states have (on average 1.05) internal successors, (21), 18 states have internal predecessors, (21), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:51:06,332 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:51:06,332 INFO L93 Difference]: Finished difference Result 37 states and 40 transitions. [2022-04-15 12:51:06,332 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 20 states. [2022-04-15 12:51:06,332 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 20 states have (on average 1.05) internal successors, (21), 18 states have internal predecessors, (21), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 25 [2022-04-15 12:51:06,332 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 12:51:06,332 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 20 states have (on average 1.05) internal successors, (21), 18 states have internal predecessors, (21), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:51:06,333 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 36 transitions. [2022-04-15 12:51:06,333 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 20 states have (on average 1.05) internal successors, (21), 18 states have internal predecessors, (21), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:51:06,334 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 36 transitions. [2022-04-15 12:51:06,334 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 20 states and 36 transitions. [2022-04-15 12:51:06,750 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:51:06,751 INFO L225 Difference]: With dead ends: 37 [2022-04-15 12:51:06,751 INFO L226 Difference]: Without dead ends: 32 [2022-04-15 12:51:06,752 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 86 GetRequests, 18 SyntacticMatches, 3 SemanticMatches, 65 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1183 ImplicationChecksByTransitivity, 7.5s TimeCoverageRelationStatistics Valid=547, Invalid=3875, Unknown=0, NotChecked=0, Total=4422 [2022-04-15 12:51:06,752 INFO L913 BasicCegarLoop]: 10 mSDtfsCounter, 20 mSDsluCounter, 72 mSDsCounter, 0 mSdLazyCounter, 327 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 20 SdHoareTripleChecker+Valid, 82 SdHoareTripleChecker+Invalid, 343 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 327 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-15 12:51:06,752 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [20 Valid, 82 Invalid, 343 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 327 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-15 12:51:06,753 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2022-04-15 12:51:06,832 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 28. [2022-04-15 12:51:06,832 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 12:51:06,832 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand has 28 states, 23 states have (on average 1.173913043478261) internal successors, (27), 23 states have internal predecessors, (27), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:51:06,832 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand has 28 states, 23 states have (on average 1.173913043478261) internal successors, (27), 23 states have internal predecessors, (27), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:51:06,832 INFO L87 Difference]: Start difference. First operand 32 states. Second operand has 28 states, 23 states have (on average 1.173913043478261) internal successors, (27), 23 states have internal predecessors, (27), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:51:06,833 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:51:06,833 INFO L93 Difference]: Finished difference Result 32 states and 35 transitions. [2022-04-15 12:51:06,833 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 35 transitions. [2022-04-15 12:51:06,833 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:51:06,833 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:51:06,833 INFO L74 IsIncluded]: Start isIncluded. First operand has 28 states, 23 states have (on average 1.173913043478261) internal successors, (27), 23 states have internal predecessors, (27), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 32 states. [2022-04-15 12:51:06,834 INFO L87 Difference]: Start difference. First operand has 28 states, 23 states have (on average 1.173913043478261) internal successors, (27), 23 states have internal predecessors, (27), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 32 states. [2022-04-15 12:51:06,834 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:51:06,834 INFO L93 Difference]: Finished difference Result 32 states and 35 transitions. [2022-04-15 12:51:06,834 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 35 transitions. [2022-04-15 12:51:06,834 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:51:06,834 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:51:06,834 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 12:51:06,834 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 12:51:06,834 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 23 states have (on average 1.173913043478261) internal successors, (27), 23 states have internal predecessors, (27), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:51:06,835 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 31 transitions. [2022-04-15 12:51:06,835 INFO L78 Accepts]: Start accepts. Automaton has 28 states and 31 transitions. Word has length 25 [2022-04-15 12:51:06,835 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 12:51:06,835 INFO L478 AbstractCegarLoop]: Abstraction has 28 states and 31 transitions. [2022-04-15 12:51:06,835 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 20 states, 20 states have (on average 1.05) internal successors, (21), 18 states have internal predecessors, (21), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:51:06,835 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 28 states and 31 transitions. [2022-04-15 12:51:07,192 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:51:07,192 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 31 transitions. [2022-04-15 12:51:07,193 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2022-04-15 12:51:07,193 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 12:51:07,193 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 12:51:07,197 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2022-04-15 12:51:07,397 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable12 [2022-04-15 12:51:07,398 INFO L403 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 12:51:07,398 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 12:51:07,398 INFO L85 PathProgramCache]: Analyzing trace with hash 606711647, now seen corresponding path program 11 times [2022-04-15 12:51:07,398 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 12:51:07,398 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1577477322] [2022-04-15 12:51:07,550 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-15 12:51:07,552 INFO L85 PathProgramCache]: Analyzing trace with hash 688608000, now seen corresponding path program 1 times [2022-04-15 12:51:07,552 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 12:51:07,552 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1816862065] [2022-04-15 12:51:07,552 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:51:07,552 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 12:51:07,593 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:51:07,803 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 12:51:07,804 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:51:07,806 INFO L290 TraceCheckUtils]: 0: Hoare triple {3786#(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(10, 2);call #Ultimate.allocInit(12, 3); {3771#true} is VALID [2022-04-15 12:51:07,807 INFO L290 TraceCheckUtils]: 1: Hoare triple {3771#true} assume true; {3771#true} is VALID [2022-04-15 12:51:07,807 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {3771#true} {3771#true} #61#return; {3771#true} is VALID [2022-04-15 12:51:07,807 INFO L272 TraceCheckUtils]: 0: Hoare triple {3771#true} call ULTIMATE.init(); {3786#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 12:51:07,807 INFO L290 TraceCheckUtils]: 1: Hoare triple {3786#(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(10, 2);call #Ultimate.allocInit(12, 3); {3771#true} is VALID [2022-04-15 12:51:07,807 INFO L290 TraceCheckUtils]: 2: Hoare triple {3771#true} assume true; {3771#true} is VALID [2022-04-15 12:51:07,807 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3771#true} {3771#true} #61#return; {3771#true} is VALID [2022-04-15 12:51:07,807 INFO L272 TraceCheckUtils]: 4: Hoare triple {3771#true} call #t~ret11 := main(); {3771#true} is VALID [2022-04-15 12:51:07,808 INFO L290 TraceCheckUtils]: 5: Hoare triple {3771#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {3771#true} is VALID [2022-04-15 12:51:07,808 INFO L290 TraceCheckUtils]: 6: Hoare triple {3771#true} [89] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~x~0_In_13 v_main_~x~0_Out_26) (= v_main_~y~0_In_13 v_main_~y~0_Out_26)) (and (= |v_main_#t~post6_Out_26| 0) (< 0 (mod (+ v_main_~x~0_Out_26 1) 4294967296)) (<= v_main_~x~0_Out_26 v_main_~x~0_In_13) (= (+ v_main_~y~0_Out_26 v_main_~x~0_Out_26) (+ v_main_~x~0_In_13 v_main_~y~0_In_13)) (= |v_main_#t~post5_Out_26| 0))) InVars {main_~x~0=v_main_~x~0_In_13, main_~y~0=v_main_~y~0_In_13} OutVars{main_~y~0=v_main_~y~0_Out_26, main_#t~post5=|v_main_#t~post5_Out_26|, main_~x~0=v_main_~x~0_Out_26, main_#t~post6=|v_main_#t~post6_Out_26|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {3771#true} is VALID [2022-04-15 12:51:07,808 INFO L290 TraceCheckUtils]: 7: Hoare triple {3771#true} [88] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {3771#true} is VALID [2022-04-15 12:51:07,808 INFO L290 TraceCheckUtils]: 8: Hoare triple {3771#true} ~z~0 := ~y~0; {3776#(= (+ main_~y~0 (* (- 1) main_~z~0)) 0)} is VALID [2022-04-15 12:51:07,810 INFO L290 TraceCheckUtils]: 9: Hoare triple {3776#(= (+ main_~y~0 (* (- 1) main_~z~0)) 0)} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3777#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} is VALID [2022-04-15 12:51:07,812 INFO L290 TraceCheckUtils]: 10: Hoare triple {3777#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3778#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} is VALID [2022-04-15 12:51:07,813 INFO L290 TraceCheckUtils]: 11: Hoare triple {3778#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3779#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} is VALID [2022-04-15 12:51:07,814 INFO L290 TraceCheckUtils]: 12: Hoare triple {3779#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3780#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} is VALID [2022-04-15 12:51:07,815 INFO L290 TraceCheckUtils]: 13: Hoare triple {3780#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} assume !(~z~0 % 4294967296 > 0); {3781#(and (<= main_~y~0 (+ (* (div main_~z~0 4294967296) 4294967296) 4)) (<= (+ (* (div main_~z~0 4294967296) 4294967296) 4) main_~y~0))} is VALID [2022-04-15 12:51:07,817 INFO L290 TraceCheckUtils]: 14: Hoare triple {3781#(and (<= main_~y~0 (+ (* (div main_~z~0 4294967296) 4294967296) 4)) (<= (+ (* (div main_~z~0 4294967296) 4294967296) 4) main_~y~0))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3782#(<= main_~y~0 (+ 3 (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:51:07,818 INFO L290 TraceCheckUtils]: 15: Hoare triple {3782#(<= main_~y~0 (+ 3 (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3783#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} is VALID [2022-04-15 12:51:07,820 INFO L290 TraceCheckUtils]: 16: Hoare triple {3783#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3784#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} is VALID [2022-04-15 12:51:07,822 INFO L290 TraceCheckUtils]: 17: Hoare triple {3784#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3785#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} is VALID [2022-04-15 12:51:07,823 INFO L290 TraceCheckUtils]: 18: Hoare triple {3785#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3772#false} is VALID [2022-04-15 12:51:07,823 INFO L290 TraceCheckUtils]: 19: Hoare triple {3772#false} assume !(~y~0 % 4294967296 > 0); {3772#false} is VALID [2022-04-15 12:51:07,823 INFO L272 TraceCheckUtils]: 20: Hoare triple {3772#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {3772#false} is VALID [2022-04-15 12:51:07,823 INFO L290 TraceCheckUtils]: 21: Hoare triple {3772#false} ~cond := #in~cond; {3772#false} is VALID [2022-04-15 12:51:07,824 INFO L290 TraceCheckUtils]: 22: Hoare triple {3772#false} assume 0 == ~cond; {3772#false} is VALID [2022-04-15 12:51:07,824 INFO L290 TraceCheckUtils]: 23: Hoare triple {3772#false} assume !false; {3772#false} is VALID [2022-04-15 12:51:07,824 INFO L134 CoverageAnalysis]: Checked inductivity of 25 backedges. 5 proven. 20 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:51:07,824 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 12:51:07,824 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1816862065] [2022-04-15 12:51:07,824 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1816862065] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 12:51:07,824 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [836270438] [2022-04-15 12:51:07,824 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:51:07,824 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:51:07,825 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 12:51:07,841 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 12:51:07,842 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Waiting until timeout for monitored process [2022-04-15 12:51:07,876 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:51:07,877 INFO L263 TraceCheckSpWp]: Trace formula consists of 105 conjuncts, 20 conjunts are in the unsatisfiable core [2022-04-15 12:51:07,883 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:51:07,884 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 12:51:08,232 INFO L272 TraceCheckUtils]: 0: Hoare triple {3771#true} call ULTIMATE.init(); {3771#true} is VALID [2022-04-15 12:51:08,232 INFO L290 TraceCheckUtils]: 1: Hoare triple {3771#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(10, 2);call #Ultimate.allocInit(12, 3); {3771#true} is VALID [2022-04-15 12:51:08,232 INFO L290 TraceCheckUtils]: 2: Hoare triple {3771#true} assume true; {3771#true} is VALID [2022-04-15 12:51:08,232 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3771#true} {3771#true} #61#return; {3771#true} is VALID [2022-04-15 12:51:08,232 INFO L272 TraceCheckUtils]: 4: Hoare triple {3771#true} call #t~ret11 := main(); {3771#true} is VALID [2022-04-15 12:51:08,232 INFO L290 TraceCheckUtils]: 5: Hoare triple {3771#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {3771#true} is VALID [2022-04-15 12:51:08,232 INFO L290 TraceCheckUtils]: 6: Hoare triple {3771#true} [89] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~x~0_In_13 v_main_~x~0_Out_26) (= v_main_~y~0_In_13 v_main_~y~0_Out_26)) (and (= |v_main_#t~post6_Out_26| 0) (< 0 (mod (+ v_main_~x~0_Out_26 1) 4294967296)) (<= v_main_~x~0_Out_26 v_main_~x~0_In_13) (= (+ v_main_~y~0_Out_26 v_main_~x~0_Out_26) (+ v_main_~x~0_In_13 v_main_~y~0_In_13)) (= |v_main_#t~post5_Out_26| 0))) InVars {main_~x~0=v_main_~x~0_In_13, main_~y~0=v_main_~y~0_In_13} OutVars{main_~y~0=v_main_~y~0_Out_26, main_#t~post5=|v_main_#t~post5_Out_26|, main_~x~0=v_main_~x~0_Out_26, main_#t~post6=|v_main_#t~post6_Out_26|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {3771#true} is VALID [2022-04-15 12:51:08,232 INFO L290 TraceCheckUtils]: 7: Hoare triple {3771#true} [88] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {3771#true} is VALID [2022-04-15 12:51:08,233 INFO L290 TraceCheckUtils]: 8: Hoare triple {3771#true} ~z~0 := ~y~0; {3776#(= (+ main_~y~0 (* (- 1) main_~z~0)) 0)} is VALID [2022-04-15 12:51:08,235 INFO L290 TraceCheckUtils]: 9: Hoare triple {3776#(= (+ main_~y~0 (* (- 1) main_~z~0)) 0)} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3777#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} is VALID [2022-04-15 12:51:08,236 INFO L290 TraceCheckUtils]: 10: Hoare triple {3777#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3778#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} is VALID [2022-04-15 12:51:08,237 INFO L290 TraceCheckUtils]: 11: Hoare triple {3778#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3779#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} is VALID [2022-04-15 12:51:08,238 INFO L290 TraceCheckUtils]: 12: Hoare triple {3779#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3780#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} is VALID [2022-04-15 12:51:08,239 INFO L290 TraceCheckUtils]: 13: Hoare triple {3780#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} assume !(~z~0 % 4294967296 > 0); {3829#(<= (div (+ (* (- 1) main_~y~0) 4) (- 4294967296)) (div (+ main_~y~0 (- 4)) 4294967296))} is VALID [2022-04-15 12:51:08,241 INFO L290 TraceCheckUtils]: 14: Hoare triple {3829#(<= (div (+ (* (- 1) main_~y~0) 4) (- 4294967296)) (div (+ main_~y~0 (- 4)) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3782#(<= main_~y~0 (+ 3 (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:51:08,242 INFO L290 TraceCheckUtils]: 15: Hoare triple {3782#(<= main_~y~0 (+ 3 (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3783#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} is VALID [2022-04-15 12:51:08,243 INFO L290 TraceCheckUtils]: 16: Hoare triple {3783#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3784#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} is VALID [2022-04-15 12:51:08,245 INFO L290 TraceCheckUtils]: 17: Hoare triple {3784#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3785#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} is VALID [2022-04-15 12:51:08,245 INFO L290 TraceCheckUtils]: 18: Hoare triple {3785#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3772#false} is VALID [2022-04-15 12:51:08,246 INFO L290 TraceCheckUtils]: 19: Hoare triple {3772#false} assume !(~y~0 % 4294967296 > 0); {3772#false} is VALID [2022-04-15 12:51:08,246 INFO L272 TraceCheckUtils]: 20: Hoare triple {3772#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {3772#false} is VALID [2022-04-15 12:51:08,246 INFO L290 TraceCheckUtils]: 21: Hoare triple {3772#false} ~cond := #in~cond; {3772#false} is VALID [2022-04-15 12:51:08,246 INFO L290 TraceCheckUtils]: 22: Hoare triple {3772#false} assume 0 == ~cond; {3772#false} is VALID [2022-04-15 12:51:08,246 INFO L290 TraceCheckUtils]: 23: Hoare triple {3772#false} assume !false; {3772#false} is VALID [2022-04-15 12:51:08,246 INFO L134 CoverageAnalysis]: Checked inductivity of 25 backedges. 5 proven. 20 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:51:08,246 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 12:51:08,899 INFO L290 TraceCheckUtils]: 23: Hoare triple {3772#false} assume !false; {3772#false} is VALID [2022-04-15 12:51:08,900 INFO L290 TraceCheckUtils]: 22: Hoare triple {3772#false} assume 0 == ~cond; {3772#false} is VALID [2022-04-15 12:51:08,900 INFO L290 TraceCheckUtils]: 21: Hoare triple {3772#false} ~cond := #in~cond; {3772#false} is VALID [2022-04-15 12:51:08,900 INFO L272 TraceCheckUtils]: 20: Hoare triple {3772#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {3772#false} is VALID [2022-04-15 12:51:08,900 INFO L290 TraceCheckUtils]: 19: Hoare triple {3772#false} assume !(~y~0 % 4294967296 > 0); {3772#false} is VALID [2022-04-15 12:51:08,902 INFO L290 TraceCheckUtils]: 18: Hoare triple {3785#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3772#false} is VALID [2022-04-15 12:51:08,903 INFO L290 TraceCheckUtils]: 17: Hoare triple {3784#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3785#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} is VALID [2022-04-15 12:51:08,905 INFO L290 TraceCheckUtils]: 16: Hoare triple {3783#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3784#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} is VALID [2022-04-15 12:51:08,907 INFO L290 TraceCheckUtils]: 15: Hoare triple {3782#(<= main_~y~0 (+ 3 (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3783#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} is VALID [2022-04-15 12:51:08,909 INFO L290 TraceCheckUtils]: 14: Hoare triple {3829#(<= (div (+ (* (- 1) main_~y~0) 4) (- 4294967296)) (div (+ main_~y~0 (- 4)) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {3782#(<= main_~y~0 (+ 3 (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:51:08,909 INFO L290 TraceCheckUtils]: 13: Hoare triple {3890#(or (<= (div (+ (* (- 1) main_~y~0) 4) (- 4294967296)) (div (+ main_~y~0 (- 4)) 4294967296)) (< 0 (mod main_~z~0 4294967296)))} assume !(~z~0 % 4294967296 > 0); {3829#(<= (div (+ (* (- 1) main_~y~0) 4) (- 4294967296)) (div (+ main_~y~0 (- 4)) 4294967296))} is VALID [2022-04-15 12:51:08,912 INFO L290 TraceCheckUtils]: 12: Hoare triple {3894#(or (<= (div (+ (* (- 1) main_~y~0) 4) (- 4294967296)) (div (+ main_~y~0 (- 4)) 4294967296)) (< 0 (mod (+ main_~z~0 4294967295) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3890#(or (<= (div (+ (* (- 1) main_~y~0) 4) (- 4294967296)) (div (+ main_~y~0 (- 4)) 4294967296)) (< 0 (mod main_~z~0 4294967296)))} is VALID [2022-04-15 12:51:08,914 INFO L290 TraceCheckUtils]: 11: Hoare triple {3898#(or (<= (div (+ (* (- 1) main_~y~0) 4) (- 4294967296)) (div (+ main_~y~0 (- 4)) 4294967296)) (< 0 (mod (+ main_~z~0 4294967294) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3894#(or (<= (div (+ (* (- 1) main_~y~0) 4) (- 4294967296)) (div (+ main_~y~0 (- 4)) 4294967296)) (< 0 (mod (+ main_~z~0 4294967295) 4294967296)))} is VALID [2022-04-15 12:51:08,917 INFO L290 TraceCheckUtils]: 10: Hoare triple {3902#(or (<= (div (+ (* (- 1) main_~y~0) 4) (- 4294967296)) (div (+ main_~y~0 (- 4)) 4294967296)) (< 0 (mod (+ main_~z~0 4294967293) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3898#(or (<= (div (+ (* (- 1) main_~y~0) 4) (- 4294967296)) (div (+ main_~y~0 (- 4)) 4294967296)) (< 0 (mod (+ main_~z~0 4294967294) 4294967296)))} is VALID [2022-04-15 12:51:08,920 INFO L290 TraceCheckUtils]: 9: Hoare triple {3906#(or (<= (div (+ (* (- 1) main_~y~0) 4) (- 4294967296)) (div (+ main_~y~0 (- 4)) 4294967296)) (< 0 (mod (+ 4294967292 main_~z~0) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {3902#(or (<= (div (+ (* (- 1) main_~y~0) 4) (- 4294967296)) (div (+ main_~y~0 (- 4)) 4294967296)) (< 0 (mod (+ main_~z~0 4294967293) 4294967296)))} is VALID [2022-04-15 12:51:08,921 INFO L290 TraceCheckUtils]: 8: Hoare triple {3771#true} ~z~0 := ~y~0; {3906#(or (<= (div (+ (* (- 1) main_~y~0) 4) (- 4294967296)) (div (+ main_~y~0 (- 4)) 4294967296)) (< 0 (mod (+ 4294967292 main_~z~0) 4294967296)))} is VALID [2022-04-15 12:51:08,921 INFO L290 TraceCheckUtils]: 7: Hoare triple {3771#true} [88] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {3771#true} is VALID [2022-04-15 12:51:08,921 INFO L290 TraceCheckUtils]: 6: Hoare triple {3771#true} [89] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~x~0_In_13 v_main_~x~0_Out_26) (= v_main_~y~0_In_13 v_main_~y~0_Out_26)) (and (= |v_main_#t~post6_Out_26| 0) (< 0 (mod (+ v_main_~x~0_Out_26 1) 4294967296)) (<= v_main_~x~0_Out_26 v_main_~x~0_In_13) (= (+ v_main_~y~0_Out_26 v_main_~x~0_Out_26) (+ v_main_~x~0_In_13 v_main_~y~0_In_13)) (= |v_main_#t~post5_Out_26| 0))) InVars {main_~x~0=v_main_~x~0_In_13, main_~y~0=v_main_~y~0_In_13} OutVars{main_~y~0=v_main_~y~0_Out_26, main_#t~post5=|v_main_#t~post5_Out_26|, main_~x~0=v_main_~x~0_Out_26, main_#t~post6=|v_main_#t~post6_Out_26|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {3771#true} is VALID [2022-04-15 12:51:08,922 INFO L290 TraceCheckUtils]: 5: Hoare triple {3771#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {3771#true} is VALID [2022-04-15 12:51:08,922 INFO L272 TraceCheckUtils]: 4: Hoare triple {3771#true} call #t~ret11 := main(); {3771#true} is VALID [2022-04-15 12:51:08,922 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3771#true} {3771#true} #61#return; {3771#true} is VALID [2022-04-15 12:51:08,922 INFO L290 TraceCheckUtils]: 2: Hoare triple {3771#true} assume true; {3771#true} is VALID [2022-04-15 12:51:08,922 INFO L290 TraceCheckUtils]: 1: Hoare triple {3771#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(10, 2);call #Ultimate.allocInit(12, 3); {3771#true} is VALID [2022-04-15 12:51:08,922 INFO L272 TraceCheckUtils]: 0: Hoare triple {3771#true} call ULTIMATE.init(); {3771#true} is VALID [2022-04-15 12:51:08,922 INFO L134 CoverageAnalysis]: Checked inductivity of 25 backedges. 5 proven. 20 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:51:08,922 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [836270438] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 12:51:08,922 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 12:51:08,923 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 12, 12] total 19 [2022-04-15 12:51:09,183 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 12:51:09,184 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1577477322] [2022-04-15 12:51:09,184 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1577477322] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 12:51:09,184 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 12:51:09,184 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [16] imperfect sequences [] total 16 [2022-04-15 12:51:09,184 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [236506513] [2022-04-15 12:51:09,184 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 12:51:09,185 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 1.375) internal successors, (22), 15 states have internal predecessors, (22), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 26 [2022-04-15 12:51:09,185 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 12:51:09,185 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 16 states, 16 states have (on average 1.375) internal successors, (22), 15 states have internal predecessors, (22), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:51:09,228 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:51:09,228 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 16 states [2022-04-15 12:51:09,228 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 12:51:09,228 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 16 interpolants. [2022-04-15 12:51:09,229 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=60, Invalid=402, Unknown=0, NotChecked=0, Total=462 [2022-04-15 12:51:09,229 INFO L87 Difference]: Start difference. First operand 28 states and 31 transitions. Second operand has 16 states, 16 states have (on average 1.375) internal successors, (22), 15 states have internal predecessors, (22), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:51:11,186 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:51:11,186 INFO L93 Difference]: Finished difference Result 51 states and 57 transitions. [2022-04-15 12:51:11,186 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2022-04-15 12:51:11,186 INFO L78 Accepts]: Start accepts. Automaton has has 16 states, 16 states have (on average 1.375) internal successors, (22), 15 states have internal predecessors, (22), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 26 [2022-04-15 12:51:11,187 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 12:51:11,187 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 1.375) internal successors, (22), 15 states have internal predecessors, (22), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:51:11,187 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 46 transitions. [2022-04-15 12:51:11,187 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 16 states, 16 states have (on average 1.375) internal successors, (22), 15 states have internal predecessors, (22), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:51:11,188 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 46 transitions. [2022-04-15 12:51:11,188 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 21 states and 46 transitions. [2022-04-15 12:51:11,279 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-15 12:51:11,279 INFO L225 Difference]: With dead ends: 51 [2022-04-15 12:51:11,279 INFO L226 Difference]: Without dead ends: 28 [2022-04-15 12:51:11,280 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 91 GetRequests, 47 SyntacticMatches, 6 SemanticMatches, 38 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 199 ImplicationChecksByTransitivity, 1.3s TimeCoverageRelationStatistics Valid=205, Invalid=1355, Unknown=0, NotChecked=0, Total=1560 [2022-04-15 12:51:11,280 INFO L913 BasicCegarLoop]: 11 mSDtfsCounter, 24 mSDsluCounter, 57 mSDsCounter, 0 mSdLazyCounter, 241 mSolverCounterSat, 34 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 24 SdHoareTripleChecker+Valid, 68 SdHoareTripleChecker+Invalid, 275 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 34 IncrementalHoareTripleChecker+Valid, 241 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.5s IncrementalHoareTripleChecker+Time [2022-04-15 12:51:11,281 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [24 Valid, 68 Invalid, 275 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [34 Valid, 241 Invalid, 0 Unknown, 0 Unchecked, 0.5s Time] [2022-04-15 12:51:11,281 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28 states. [2022-04-15 12:51:11,353 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28 to 28. [2022-04-15 12:51:11,353 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 12:51:11,353 INFO L82 GeneralOperation]: Start isEquivalent. First operand 28 states. Second operand has 28 states, 23 states have (on average 1.1304347826086956) internal successors, (26), 23 states have internal predecessors, (26), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:51:11,353 INFO L74 IsIncluded]: Start isIncluded. First operand 28 states. Second operand has 28 states, 23 states have (on average 1.1304347826086956) internal successors, (26), 23 states have internal predecessors, (26), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:51:11,353 INFO L87 Difference]: Start difference. First operand 28 states. Second operand has 28 states, 23 states have (on average 1.1304347826086956) internal successors, (26), 23 states have internal predecessors, (26), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:51:11,354 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:51:11,354 INFO L93 Difference]: Finished difference Result 28 states and 30 transitions. [2022-04-15 12:51:11,354 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 30 transitions. [2022-04-15 12:51:11,354 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:51:11,354 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:51:11,354 INFO L74 IsIncluded]: Start isIncluded. First operand has 28 states, 23 states have (on average 1.1304347826086956) internal successors, (26), 23 states have internal predecessors, (26), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 28 states. [2022-04-15 12:51:11,354 INFO L87 Difference]: Start difference. First operand has 28 states, 23 states have (on average 1.1304347826086956) internal successors, (26), 23 states have internal predecessors, (26), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 28 states. [2022-04-15 12:51:11,355 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:51:11,355 INFO L93 Difference]: Finished difference Result 28 states and 30 transitions. [2022-04-15 12:51:11,355 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 30 transitions. [2022-04-15 12:51:11,355 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:51:11,355 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:51:11,355 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 12:51:11,355 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 12:51:11,355 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 23 states have (on average 1.1304347826086956) internal successors, (26), 23 states have internal predecessors, (26), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:51:11,356 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 30 transitions. [2022-04-15 12:51:11,356 INFO L78 Accepts]: Start accepts. Automaton has 28 states and 30 transitions. Word has length 26 [2022-04-15 12:51:11,356 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 12:51:11,356 INFO L478 AbstractCegarLoop]: Abstraction has 28 states and 30 transitions. [2022-04-15 12:51:11,356 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 16 states, 16 states have (on average 1.375) internal successors, (22), 15 states have internal predecessors, (22), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:51:11,356 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 28 states and 30 transitions. [2022-04-15 12:51:11,704 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:51:11,704 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 30 transitions. [2022-04-15 12:51:11,705 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-04-15 12:51:11,705 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 12:51:11,706 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 12:51:11,721 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Ended with exit code 0 [2022-04-15 12:51:11,907 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable13 [2022-04-15 12:51:11,908 INFO L403 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 12:51:11,908 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 12:51:11,908 INFO L85 PathProgramCache]: Analyzing trace with hash 1542928431, now seen corresponding path program 12 times [2022-04-15 12:51:11,908 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 12:51:11,908 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1811197281] [2022-04-15 12:51:12,013 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-15 12:51:12,014 INFO L85 PathProgramCache]: Analyzing trace with hash 361855535, now seen corresponding path program 1 times [2022-04-15 12:51:12,014 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 12:51:12,014 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [530939082] [2022-04-15 12:51:12,014 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:51:12,015 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 12:51:12,040 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:51:12,262 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 12:51:12,264 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:51:12,269 INFO L290 TraceCheckUtils]: 0: Hoare triple {4207#(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(10, 2);call #Ultimate.allocInit(12, 3); {4192#true} is VALID [2022-04-15 12:51:12,270 INFO L290 TraceCheckUtils]: 1: Hoare triple {4192#true} assume true; {4192#true} is VALID [2022-04-15 12:51:12,270 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {4192#true} {4192#true} #61#return; {4192#true} is VALID [2022-04-15 12:51:12,270 INFO L272 TraceCheckUtils]: 0: Hoare triple {4192#true} call ULTIMATE.init(); {4207#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 12:51:12,270 INFO L290 TraceCheckUtils]: 1: Hoare triple {4207#(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(10, 2);call #Ultimate.allocInit(12, 3); {4192#true} is VALID [2022-04-15 12:51:12,270 INFO L290 TraceCheckUtils]: 2: Hoare triple {4192#true} assume true; {4192#true} is VALID [2022-04-15 12:51:12,270 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4192#true} {4192#true} #61#return; {4192#true} is VALID [2022-04-15 12:51:12,270 INFO L272 TraceCheckUtils]: 4: Hoare triple {4192#true} call #t~ret11 := main(); {4192#true} is VALID [2022-04-15 12:51:12,271 INFO L290 TraceCheckUtils]: 5: Hoare triple {4192#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {4192#true} is VALID [2022-04-15 12:51:12,271 INFO L290 TraceCheckUtils]: 6: Hoare triple {4192#true} [91] L16-2-->L16-3_primed: Formula: (or (and (= |v_main_#t~post6_Out_28| 0) (<= v_main_~x~0_Out_28 v_main_~x~0_In_14) (< 0 (mod (+ v_main_~x~0_Out_28 1) 4294967296)) (= |v_main_#t~post5_Out_28| 0) (= (+ v_main_~y~0_Out_28 v_main_~x~0_Out_28) (+ v_main_~x~0_In_14 v_main_~y~0_In_14))) (and (= v_main_~y~0_In_14 v_main_~y~0_Out_28) (= v_main_~x~0_In_14 v_main_~x~0_Out_28))) InVars {main_~x~0=v_main_~x~0_In_14, main_~y~0=v_main_~y~0_In_14} OutVars{main_~y~0=v_main_~y~0_Out_28, main_#t~post5=|v_main_#t~post5_Out_28|, main_~x~0=v_main_~x~0_Out_28, main_#t~post6=|v_main_#t~post6_Out_28|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {4192#true} is VALID [2022-04-15 12:51:12,271 INFO L290 TraceCheckUtils]: 7: Hoare triple {4192#true} [90] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {4192#true} is VALID [2022-04-15 12:51:12,271 INFO L290 TraceCheckUtils]: 8: Hoare triple {4192#true} ~z~0 := ~y~0; {4197#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} is VALID [2022-04-15 12:51:12,273 INFO L290 TraceCheckUtils]: 9: Hoare triple {4197#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {4198#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} is VALID [2022-04-15 12:51:12,276 INFO L290 TraceCheckUtils]: 10: Hoare triple {4198#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {4199#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} is VALID [2022-04-15 12:51:12,277 INFO L290 TraceCheckUtils]: 11: Hoare triple {4199#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {4200#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} is VALID [2022-04-15 12:51:12,278 INFO L290 TraceCheckUtils]: 12: Hoare triple {4200#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {4201#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} is VALID [2022-04-15 12:51:12,279 INFO L290 TraceCheckUtils]: 13: Hoare triple {4201#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {4202#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} is VALID [2022-04-15 12:51:12,280 INFO L290 TraceCheckUtils]: 14: Hoare triple {4202#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} assume !(~z~0 % 4294967296 > 0); {4202#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} is VALID [2022-04-15 12:51:12,282 INFO L290 TraceCheckUtils]: 15: Hoare triple {4202#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {4203#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} is VALID [2022-04-15 12:51:12,284 INFO L290 TraceCheckUtils]: 16: Hoare triple {4203#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {4204#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} is VALID [2022-04-15 12:51:12,285 INFO L290 TraceCheckUtils]: 17: Hoare triple {4204#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {4205#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} is VALID [2022-04-15 12:51:12,287 INFO L290 TraceCheckUtils]: 18: Hoare triple {4205#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {4206#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} is VALID [2022-04-15 12:51:12,288 INFO L290 TraceCheckUtils]: 19: Hoare triple {4206#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} assume !(~y~0 % 4294967296 > 0); {4193#false} is VALID [2022-04-15 12:51:12,288 INFO L272 TraceCheckUtils]: 20: Hoare triple {4193#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {4193#false} is VALID [2022-04-15 12:51:12,288 INFO L290 TraceCheckUtils]: 21: Hoare triple {4193#false} ~cond := #in~cond; {4193#false} is VALID [2022-04-15 12:51:12,288 INFO L290 TraceCheckUtils]: 22: Hoare triple {4193#false} assume 0 == ~cond; {4193#false} is VALID [2022-04-15 12:51:12,288 INFO L290 TraceCheckUtils]: 23: Hoare triple {4193#false} assume !false; {4193#false} is VALID [2022-04-15 12:51:12,289 INFO L134 CoverageAnalysis]: Checked inductivity of 25 backedges. 0 proven. 25 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:51:12,289 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 12:51:12,289 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [530939082] [2022-04-15 12:51:12,289 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [530939082] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 12:51:12,289 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1489564788] [2022-04-15 12:51:12,289 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:51:12,289 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:51:12,289 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 12:51:12,290 INFO L229 MonitoredProcess]: Starting monitored process 13 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 12:51:12,312 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Waiting until timeout for monitored process [2022-04-15 12:51:12,329 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:51:12,330 INFO L263 TraceCheckSpWp]: Trace formula consists of 105 conjuncts, 20 conjunts are in the unsatisfiable core [2022-04-15 12:51:12,338 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:51:12,339 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 12:51:12,708 INFO L272 TraceCheckUtils]: 0: Hoare triple {4192#true} call ULTIMATE.init(); {4192#true} is VALID [2022-04-15 12:51:12,708 INFO L290 TraceCheckUtils]: 1: Hoare triple {4192#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(10, 2);call #Ultimate.allocInit(12, 3); {4192#true} is VALID [2022-04-15 12:51:12,708 INFO L290 TraceCheckUtils]: 2: Hoare triple {4192#true} assume true; {4192#true} is VALID [2022-04-15 12:51:12,708 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4192#true} {4192#true} #61#return; {4192#true} is VALID [2022-04-15 12:51:12,708 INFO L272 TraceCheckUtils]: 4: Hoare triple {4192#true} call #t~ret11 := main(); {4192#true} is VALID [2022-04-15 12:51:12,708 INFO L290 TraceCheckUtils]: 5: Hoare triple {4192#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {4192#true} is VALID [2022-04-15 12:51:12,708 INFO L290 TraceCheckUtils]: 6: Hoare triple {4192#true} [91] L16-2-->L16-3_primed: Formula: (or (and (= |v_main_#t~post6_Out_28| 0) (<= v_main_~x~0_Out_28 v_main_~x~0_In_14) (< 0 (mod (+ v_main_~x~0_Out_28 1) 4294967296)) (= |v_main_#t~post5_Out_28| 0) (= (+ v_main_~y~0_Out_28 v_main_~x~0_Out_28) (+ v_main_~x~0_In_14 v_main_~y~0_In_14))) (and (= v_main_~y~0_In_14 v_main_~y~0_Out_28) (= v_main_~x~0_In_14 v_main_~x~0_Out_28))) InVars {main_~x~0=v_main_~x~0_In_14, main_~y~0=v_main_~y~0_In_14} OutVars{main_~y~0=v_main_~y~0_Out_28, main_#t~post5=|v_main_#t~post5_Out_28|, main_~x~0=v_main_~x~0_Out_28, main_#t~post6=|v_main_#t~post6_Out_28|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {4192#true} is VALID [2022-04-15 12:51:12,708 INFO L290 TraceCheckUtils]: 7: Hoare triple {4192#true} [90] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {4192#true} is VALID [2022-04-15 12:51:12,709 INFO L290 TraceCheckUtils]: 8: Hoare triple {4192#true} ~z~0 := ~y~0; {4197#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} is VALID [2022-04-15 12:51:12,711 INFO L290 TraceCheckUtils]: 9: Hoare triple {4197#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {4198#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} is VALID [2022-04-15 12:51:12,713 INFO L290 TraceCheckUtils]: 10: Hoare triple {4198#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {4199#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} is VALID [2022-04-15 12:51:12,715 INFO L290 TraceCheckUtils]: 11: Hoare triple {4199#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {4200#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} is VALID [2022-04-15 12:51:12,716 INFO L290 TraceCheckUtils]: 12: Hoare triple {4200#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {4201#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} is VALID [2022-04-15 12:51:12,717 INFO L290 TraceCheckUtils]: 13: Hoare triple {4201#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {4202#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} is VALID [2022-04-15 12:51:12,717 INFO L290 TraceCheckUtils]: 14: Hoare triple {4202#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} assume !(~z~0 % 4294967296 > 0); {4202#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} is VALID [2022-04-15 12:51:12,719 INFO L290 TraceCheckUtils]: 15: Hoare triple {4202#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {4203#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} is VALID [2022-04-15 12:51:12,721 INFO L290 TraceCheckUtils]: 16: Hoare triple {4203#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {4204#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} is VALID [2022-04-15 12:51:12,722 INFO L290 TraceCheckUtils]: 17: Hoare triple {4204#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {4205#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} is VALID [2022-04-15 12:51:12,724 INFO L290 TraceCheckUtils]: 18: Hoare triple {4205#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {4206#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} is VALID [2022-04-15 12:51:12,725 INFO L290 TraceCheckUtils]: 19: Hoare triple {4206#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} assume !(~y~0 % 4294967296 > 0); {4193#false} is VALID [2022-04-15 12:51:12,725 INFO L272 TraceCheckUtils]: 20: Hoare triple {4193#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {4193#false} is VALID [2022-04-15 12:51:12,725 INFO L290 TraceCheckUtils]: 21: Hoare triple {4193#false} ~cond := #in~cond; {4193#false} is VALID [2022-04-15 12:51:12,725 INFO L290 TraceCheckUtils]: 22: Hoare triple {4193#false} assume 0 == ~cond; {4193#false} is VALID [2022-04-15 12:51:12,725 INFO L290 TraceCheckUtils]: 23: Hoare triple {4193#false} assume !false; {4193#false} is VALID [2022-04-15 12:51:12,726 INFO L134 CoverageAnalysis]: Checked inductivity of 25 backedges. 0 proven. 25 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:51:12,726 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 12:51:13,207 INFO L290 TraceCheckUtils]: 23: Hoare triple {4193#false} assume !false; {4193#false} is VALID [2022-04-15 12:51:13,207 INFO L290 TraceCheckUtils]: 22: Hoare triple {4193#false} assume 0 == ~cond; {4193#false} is VALID [2022-04-15 12:51:13,207 INFO L290 TraceCheckUtils]: 21: Hoare triple {4193#false} ~cond := #in~cond; {4193#false} is VALID [2022-04-15 12:51:13,207 INFO L272 TraceCheckUtils]: 20: Hoare triple {4193#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {4193#false} is VALID [2022-04-15 12:51:13,209 INFO L290 TraceCheckUtils]: 19: Hoare triple {4206#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} assume !(~y~0 % 4294967296 > 0); {4193#false} is VALID [2022-04-15 12:51:13,211 INFO L290 TraceCheckUtils]: 18: Hoare triple {4205#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {4206#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} is VALID [2022-04-15 12:51:13,212 INFO L290 TraceCheckUtils]: 17: Hoare triple {4204#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {4205#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} is VALID [2022-04-15 12:51:13,214 INFO L290 TraceCheckUtils]: 16: Hoare triple {4203#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {4204#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} is VALID [2022-04-15 12:51:13,215 INFO L290 TraceCheckUtils]: 15: Hoare triple {4202#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {4203#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} is VALID [2022-04-15 12:51:13,215 INFO L290 TraceCheckUtils]: 14: Hoare triple {4202#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} assume !(~z~0 % 4294967296 > 0); {4202#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} is VALID [2022-04-15 12:51:13,216 INFO L290 TraceCheckUtils]: 13: Hoare triple {4310#(or (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299)) (not (< 0 (mod main_~z~0 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {4202#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} is VALID [2022-04-15 12:51:13,218 INFO L290 TraceCheckUtils]: 12: Hoare triple {4314#(or (not (< 0 (mod (+ main_~z~0 4294967295) 4294967296))) (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {4310#(or (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299)) (not (< 0 (mod main_~z~0 4294967296))))} is VALID [2022-04-15 12:51:13,221 INFO L290 TraceCheckUtils]: 11: Hoare triple {4318#(or (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299)) (not (< 0 (mod (+ main_~z~0 4294967294) 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {4314#(or (not (< 0 (mod (+ main_~z~0 4294967295) 4294967296))) (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299)))} is VALID [2022-04-15 12:51:13,223 INFO L290 TraceCheckUtils]: 10: Hoare triple {4322#(or (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299)) (not (< 0 (mod (+ main_~z~0 4294967293) 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {4318#(or (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299)) (not (< 0 (mod (+ main_~z~0 4294967294) 4294967296))))} is VALID [2022-04-15 12:51:13,225 INFO L290 TraceCheckUtils]: 9: Hoare triple {4326#(or (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299)) (not (< 0 (mod (+ 4294967292 main_~z~0) 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {4322#(or (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299)) (not (< 0 (mod (+ main_~z~0 4294967293) 4294967296))))} is VALID [2022-04-15 12:51:13,226 INFO L290 TraceCheckUtils]: 8: Hoare triple {4192#true} ~z~0 := ~y~0; {4326#(or (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299)) (not (< 0 (mod (+ 4294967292 main_~z~0) 4294967296))))} is VALID [2022-04-15 12:51:13,226 INFO L290 TraceCheckUtils]: 7: Hoare triple {4192#true} [90] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {4192#true} is VALID [2022-04-15 12:51:13,227 INFO L290 TraceCheckUtils]: 6: Hoare triple {4192#true} [91] L16-2-->L16-3_primed: Formula: (or (and (= |v_main_#t~post6_Out_28| 0) (<= v_main_~x~0_Out_28 v_main_~x~0_In_14) (< 0 (mod (+ v_main_~x~0_Out_28 1) 4294967296)) (= |v_main_#t~post5_Out_28| 0) (= (+ v_main_~y~0_Out_28 v_main_~x~0_Out_28) (+ v_main_~x~0_In_14 v_main_~y~0_In_14))) (and (= v_main_~y~0_In_14 v_main_~y~0_Out_28) (= v_main_~x~0_In_14 v_main_~x~0_Out_28))) InVars {main_~x~0=v_main_~x~0_In_14, main_~y~0=v_main_~y~0_In_14} OutVars{main_~y~0=v_main_~y~0_Out_28, main_#t~post5=|v_main_#t~post5_Out_28|, main_~x~0=v_main_~x~0_Out_28, main_#t~post6=|v_main_#t~post6_Out_28|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {4192#true} is VALID [2022-04-15 12:51:13,227 INFO L290 TraceCheckUtils]: 5: Hoare triple {4192#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {4192#true} is VALID [2022-04-15 12:51:13,227 INFO L272 TraceCheckUtils]: 4: Hoare triple {4192#true} call #t~ret11 := main(); {4192#true} is VALID [2022-04-15 12:51:13,227 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4192#true} {4192#true} #61#return; {4192#true} is VALID [2022-04-15 12:51:13,227 INFO L290 TraceCheckUtils]: 2: Hoare triple {4192#true} assume true; {4192#true} is VALID [2022-04-15 12:51:13,227 INFO L290 TraceCheckUtils]: 1: Hoare triple {4192#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(10, 2);call #Ultimate.allocInit(12, 3); {4192#true} is VALID [2022-04-15 12:51:13,227 INFO L272 TraceCheckUtils]: 0: Hoare triple {4192#true} call ULTIMATE.init(); {4192#true} is VALID [2022-04-15 12:51:13,227 INFO L134 CoverageAnalysis]: Checked inductivity of 25 backedges. 5 proven. 20 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:51:13,228 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1489564788] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 12:51:13,228 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 12:51:13,228 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 12, 12] total 18 [2022-04-15 12:51:13,576 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 12:51:13,576 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1811197281] [2022-04-15 12:51:13,577 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1811197281] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 12:51:13,577 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 12:51:13,577 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [17] imperfect sequences [] total 17 [2022-04-15 12:51:13,577 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [34283579] [2022-04-15 12:51:13,577 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 12:51:13,577 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 16 states have internal predecessors, (23), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 27 [2022-04-15 12:51:13,577 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 12:51:13,577 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 17 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 16 states have internal predecessors, (23), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:51:13,640 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:51:13,640 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 17 states [2022-04-15 12:51:13,640 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 12:51:13,640 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 17 interpolants. [2022-04-15 12:51:13,641 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=57, Invalid=405, Unknown=0, NotChecked=0, Total=462 [2022-04-15 12:51:13,641 INFO L87 Difference]: Start difference. First operand 28 states and 30 transitions. Second operand has 17 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 16 states have internal predecessors, (23), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:51:16,924 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:51:16,924 INFO L93 Difference]: Finished difference Result 34 states and 36 transitions. [2022-04-15 12:51:16,924 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 18 states. [2022-04-15 12:51:16,924 INFO L78 Accepts]: Start accepts. Automaton has has 17 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 16 states have internal predecessors, (23), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 27 [2022-04-15 12:51:16,924 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 12:51:16,924 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 16 states have internal predecessors, (23), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:51:16,925 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 36 transitions. [2022-04-15 12:51:16,925 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 17 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 16 states have internal predecessors, (23), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:51:16,926 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 36 transitions. [2022-04-15 12:51:16,926 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 18 states and 36 transitions. [2022-04-15 12:51:17,125 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:51:17,126 INFO L225 Difference]: With dead ends: 34 [2022-04-15 12:51:17,126 INFO L226 Difference]: Without dead ends: 29 [2022-04-15 12:51:17,127 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 87 GetRequests, 46 SyntacticMatches, 6 SemanticMatches, 35 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 160 ImplicationChecksByTransitivity, 1.7s TimeCoverageRelationStatistics Valid=214, Invalid=1118, Unknown=0, NotChecked=0, Total=1332 [2022-04-15 12:51:17,127 INFO L913 BasicCegarLoop]: 14 mSDtfsCounter, 23 mSDsluCounter, 62 mSDsCounter, 0 mSdLazyCounter, 209 mSolverCounterSat, 49 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 23 SdHoareTripleChecker+Valid, 76 SdHoareTripleChecker+Invalid, 258 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 49 IncrementalHoareTripleChecker+Valid, 209 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.9s IncrementalHoareTripleChecker+Time [2022-04-15 12:51:17,127 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [23 Valid, 76 Invalid, 258 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [49 Valid, 209 Invalid, 0 Unknown, 0 Unchecked, 0.9s Time] [2022-04-15 12:51:17,128 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2022-04-15 12:51:17,212 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 29. [2022-04-15 12:51:17,212 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 12:51:17,212 INFO L82 GeneralOperation]: Start isEquivalent. First operand 29 states. Second operand has 29 states, 24 states have (on average 1.125) internal successors, (27), 24 states have internal predecessors, (27), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:51:17,212 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand has 29 states, 24 states have (on average 1.125) internal successors, (27), 24 states have internal predecessors, (27), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:51:17,213 INFO L87 Difference]: Start difference. First operand 29 states. Second operand has 29 states, 24 states have (on average 1.125) internal successors, (27), 24 states have internal predecessors, (27), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:51:17,213 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:51:17,213 INFO L93 Difference]: Finished difference Result 29 states and 31 transitions. [2022-04-15 12:51:17,213 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 31 transitions. [2022-04-15 12:51:17,213 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:51:17,214 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:51:17,214 INFO L74 IsIncluded]: Start isIncluded. First operand has 29 states, 24 states have (on average 1.125) internal successors, (27), 24 states have internal predecessors, (27), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 29 states. [2022-04-15 12:51:17,214 INFO L87 Difference]: Start difference. First operand has 29 states, 24 states have (on average 1.125) internal successors, (27), 24 states have internal predecessors, (27), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 29 states. [2022-04-15 12:51:17,214 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:51:17,214 INFO L93 Difference]: Finished difference Result 29 states and 31 transitions. [2022-04-15 12:51:17,214 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 31 transitions. [2022-04-15 12:51:17,214 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:51:17,214 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:51:17,215 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 12:51:17,215 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 12:51:17,215 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 24 states have (on average 1.125) internal successors, (27), 24 states have internal predecessors, (27), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:51:17,215 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 31 transitions. [2022-04-15 12:51:17,215 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 31 transitions. Word has length 27 [2022-04-15 12:51:17,215 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 12:51:17,215 INFO L478 AbstractCegarLoop]: Abstraction has 29 states and 31 transitions. [2022-04-15 12:51:17,215 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 17 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 16 states have internal predecessors, (23), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:51:17,216 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 29 states and 31 transitions. [2022-04-15 12:51:17,487 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:51:17,487 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 31 transitions. [2022-04-15 12:51:17,487 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-15 12:51:17,487 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 12:51:17,487 INFO L499 BasicCegarLoop]: trace histogram [5, 5, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 12:51:17,503 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (13)] Forceful destruction successful, exit code 0 [2022-04-15 12:51:17,688 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 13 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable14 [2022-04-15 12:51:17,688 INFO L403 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 12:51:17,688 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 12:51:17,688 INFO L85 PathProgramCache]: Analyzing trace with hash 620636190, now seen corresponding path program 13 times [2022-04-15 12:51:17,689 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 12:51:17,689 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [932752102] [2022-04-15 12:51:17,835 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-15 12:51:17,836 INFO L85 PathProgramCache]: Analyzing trace with hash -1021006370, now seen corresponding path program 1 times [2022-04-15 12:51:17,836 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 12:51:17,836 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1516362074] [2022-04-15 12:51:17,836 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:51:17,837 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 12:51:17,862 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:51:18,687 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 12:51:18,688 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:51:18,691 INFO L290 TraceCheckUtils]: 0: Hoare triple {4598#(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(10, 2);call #Ultimate.allocInit(12, 3); {4576#true} is VALID [2022-04-15 12:51:18,691 INFO L290 TraceCheckUtils]: 1: Hoare triple {4576#true} assume true; {4576#true} is VALID [2022-04-15 12:51:18,691 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {4576#true} {4576#true} #61#return; {4576#true} is VALID [2022-04-15 12:51:18,691 INFO L272 TraceCheckUtils]: 0: Hoare triple {4576#true} call ULTIMATE.init(); {4598#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 12:51:18,691 INFO L290 TraceCheckUtils]: 1: Hoare triple {4598#(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(10, 2);call #Ultimate.allocInit(12, 3); {4576#true} is VALID [2022-04-15 12:51:18,692 INFO L290 TraceCheckUtils]: 2: Hoare triple {4576#true} assume true; {4576#true} is VALID [2022-04-15 12:51:18,692 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4576#true} {4576#true} #61#return; {4576#true} is VALID [2022-04-15 12:51:18,692 INFO L272 TraceCheckUtils]: 4: Hoare triple {4576#true} call #t~ret11 := main(); {4576#true} is VALID [2022-04-15 12:51:18,698 INFO L290 TraceCheckUtils]: 5: Hoare triple {4576#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {4581#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} is VALID [2022-04-15 12:51:18,701 INFO L290 TraceCheckUtils]: 6: Hoare triple {4581#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} [93] L16-2-->L16-3_primed: Formula: (or (and (= |v_main_#t~post6_Out_30| 0) (= |v_main_#t~post5_Out_30| 0) (< 0 (mod (+ v_main_~x~0_Out_30 1) 4294967296)) (<= v_main_~x~0_Out_30 v_main_~x~0_In_15) (= (+ v_main_~y~0_Out_30 v_main_~x~0_Out_30) (+ v_main_~x~0_In_15 v_main_~y~0_In_15))) (and (= v_main_~y~0_In_15 v_main_~y~0_Out_30) (= v_main_~x~0_In_15 v_main_~x~0_Out_30))) InVars {main_~x~0=v_main_~x~0_In_15, main_~y~0=v_main_~y~0_In_15} OutVars{main_~y~0=v_main_~y~0_Out_30, main_#t~post5=|v_main_#t~post5_Out_30|, main_~x~0=v_main_~x~0_Out_30, main_#t~post6=|v_main_#t~post6_Out_30|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {4582#(or (and (<= 0 main_~y~0) (<= main_~y~0 0)) (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= (+ main_~y~0 main_~x~0) main_~n~0) (<= main_~n~0 (+ main_~y~0 main_~x~0))))} is VALID [2022-04-15 12:51:18,703 INFO L290 TraceCheckUtils]: 7: Hoare triple {4582#(or (and (<= 0 main_~y~0) (<= main_~y~0 0)) (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= (+ main_~y~0 main_~x~0) main_~n~0) (<= main_~n~0 (+ main_~y~0 main_~x~0))))} [92] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {4583#(or (and (<= 0 main_~y~0) (<= main_~y~0 0)) (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~y~0 (* 4294967296 (div main_~x~0 4294967296))))))} is VALID [2022-04-15 12:51:18,704 INFO L290 TraceCheckUtils]: 8: Hoare triple {4583#(or (and (<= 0 main_~y~0) (<= main_~y~0 0)) (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~y~0 (* 4294967296 (div main_~x~0 4294967296))))))} ~z~0 := ~y~0; {4584#(or (and (<= main_~z~0 0) (<= 0 main_~z~0)) (and (<= (+ main_~z~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~z~0 (* 4294967296 (div main_~x~0 4294967296))))))} is VALID [2022-04-15 12:51:18,746 INFO L290 TraceCheckUtils]: 9: Hoare triple {4584#(or (and (<= main_~z~0 0) (<= 0 main_~z~0)) (and (<= (+ main_~z~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~z~0 (* 4294967296 (div main_~x~0 4294967296))))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {4585#(<= (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) 4294967294 (* (div main_~z~0 4294967296) (- 4294967296)) (* (div (+ main_~z~0 1) 4294967296) 4294967296)) 4294967296) 4294967296) 1) main_~n~0)} is VALID [2022-04-15 12:51:18,749 INFO L290 TraceCheckUtils]: 10: Hoare triple {4585#(<= (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) 4294967294 (* (div main_~z~0 4294967296) (- 4294967296)) (* (div (+ main_~z~0 1) 4294967296) 4294967296)) 4294967296) 4294967296) 1) main_~n~0)} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {4586#(<= (+ main_~z~0 2 (* (div (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0 (* (- 1) main_~z~0) (* (div main_~z~0 4294967296) (- 4294967296)) 4294967293) 4294967296) 4294967296)) main_~n~0)} is VALID [2022-04-15 12:51:18,751 INFO L290 TraceCheckUtils]: 11: Hoare triple {4586#(<= (+ main_~z~0 2 (* (div (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0 (* (- 1) main_~z~0) (* (div main_~z~0 4294967296) (- 4294967296)) 4294967293) 4294967296) 4294967296)) main_~n~0)} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {4587#(<= (+ main_~z~0 3 (* (div (+ 4294967292 main_~n~0 (* (- 1) main_~z~0) (* (div main_~z~0 4294967296) (- 4294967296)) (* (div (+ main_~z~0 3) 4294967296) 4294967296)) 4294967296) 4294967296)) main_~n~0)} is VALID [2022-04-15 12:51:18,758 INFO L290 TraceCheckUtils]: 12: Hoare triple {4587#(<= (+ main_~z~0 3 (* (div (+ 4294967292 main_~n~0 (* (- 1) main_~z~0) (* (div main_~z~0 4294967296) (- 4294967296)) (* (div (+ main_~z~0 3) 4294967296) 4294967296)) 4294967296) 4294967296)) main_~n~0)} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {4588#(and (<= main_~z~0 (+ (* (div (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4 (* (- 1) main_~n~0)) 4294967296) 4294967296) 4294967291)) (<= (div main_~n~0 4294967296) (+ (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296) (div main_~z~0 4294967296))))} is VALID [2022-04-15 12:51:18,766 INFO L290 TraceCheckUtils]: 13: Hoare triple {4588#(and (<= main_~z~0 (+ (* (div (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4 (* (- 1) main_~n~0)) 4294967296) 4294967296) 4294967291)) (<= (div main_~n~0 4294967296) (+ (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296) (div main_~z~0 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {4589#(and (<= (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (* (div main_~n~0 4294967296) 4294967296) (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 5)) 4294967296) 4294967296))))} is VALID [2022-04-15 12:51:18,769 INFO L290 TraceCheckUtils]: 14: Hoare triple {4589#(and (<= (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (* (div main_~n~0 4294967296) 4294967296) (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 5)) 4294967296) 4294967296))))} assume !(~z~0 % 4294967296 > 0); {4590#(and (<= main_~n~0 (+ 5 main_~z~0 (* (div (+ (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296)) 4294967296) 4294967296))) (<= (* (div main_~n~0 4294967296) 4294967296) (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 5)) 4294967296) 4294967296))))} is VALID [2022-04-15 12:51:18,772 INFO L290 TraceCheckUtils]: 15: Hoare triple {4590#(and (<= main_~n~0 (+ 5 main_~z~0 (* (div (+ (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296)) 4294967296) 4294967296))) (<= (* (div main_~n~0 4294967296) 4294967296) (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 5)) 4294967296) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {4591#(and (<= (+ (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296) 4294967296))) (<= main_~n~0 (+ main_~z~0 (* (div (+ (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296) 1) 4294967296) 4294967296) 4)))} is VALID [2022-04-15 12:51:18,774 INFO L290 TraceCheckUtils]: 16: Hoare triple {4591#(and (<= (+ (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296) 4294967296))) (<= main_~n~0 (+ main_~z~0 (* (div (+ (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296) 1) 4294967296) 4294967296) 4)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {4592#(and (<= main_~n~0 (+ (* 4294967296 (div (+ 2 (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296)) 4294967296)) main_~z~0 3)) (<= (+ 2 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~z~0 (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296)))))} is VALID [2022-04-15 12:51:18,776 INFO L290 TraceCheckUtils]: 17: Hoare triple {4592#(and (<= main_~n~0 (+ (* 4294967296 (div (+ 2 (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296)) 4294967296)) main_~z~0 3)) (<= (+ 2 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~z~0 (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296)))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {4593#(and (<= (+ 3 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~z~0 (* (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296))) (<= main_~n~0 (+ main_~z~0 2 (* (div (+ (* (- 1) main_~z~0) 3 (* (div main_~n~0 4294967296) 4294967296)) 4294967296) 4294967296))))} is VALID [2022-04-15 12:51:18,778 INFO L290 TraceCheckUtils]: 18: Hoare triple {4593#(and (<= (+ 3 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~z~0 (* (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296))) (<= main_~n~0 (+ main_~z~0 2 (* (div (+ (* (- 1) main_~z~0) 3 (* (div main_~n~0 4294967296) 4294967296)) 4294967296) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {4594#(and (<= main_~n~0 (+ main_~z~0 (* (div (+ (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296) 4) 4294967296) 4294967296) 1)) (<= (+ (* (div main_~n~0 4294967296) 4294967296) 4) (+ main_~z~0 (* (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296))))} is VALID [2022-04-15 12:51:18,780 INFO L290 TraceCheckUtils]: 19: Hoare triple {4594#(and (<= main_~n~0 (+ main_~z~0 (* (div (+ (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296) 4) 4294967296) 4294967296) 1)) (<= (+ (* (div main_~n~0 4294967296) 4294967296) 4) (+ main_~z~0 (* (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {4595#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:51:18,781 INFO L290 TraceCheckUtils]: 20: Hoare triple {4595#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} assume !(~y~0 % 4294967296 > 0); {4595#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:51:18,782 INFO L272 TraceCheckUtils]: 21: Hoare triple {4595#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {4596#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 12:51:18,782 INFO L290 TraceCheckUtils]: 22: Hoare triple {4596#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {4597#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 12:51:18,783 INFO L290 TraceCheckUtils]: 23: Hoare triple {4597#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {4577#false} is VALID [2022-04-15 12:51:18,783 INFO L290 TraceCheckUtils]: 24: Hoare triple {4577#false} assume !false; {4577#false} is VALID [2022-04-15 12:51:18,783 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 0 proven. 30 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:51:18,783 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 12:51:18,783 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1516362074] [2022-04-15 12:51:18,783 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1516362074] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 12:51:18,783 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1229893231] [2022-04-15 12:51:18,784 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:51:18,784 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:51:18,784 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 12:51:18,784 INFO L229 MonitoredProcess]: Starting monitored process 14 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 12:51:18,785 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Waiting until timeout for monitored process [2022-04-15 12:51:18,913 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:51:18,914 INFO L263 TraceCheckSpWp]: Trace formula consists of 110 conjuncts, 38 conjunts are in the unsatisfiable core [2022-04-15 12:51:18,950 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:51:18,951 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 12:51:22,531 INFO L272 TraceCheckUtils]: 0: Hoare triple {4576#true} call ULTIMATE.init(); {4576#true} is VALID [2022-04-15 12:51:22,531 INFO L290 TraceCheckUtils]: 1: Hoare triple {4576#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(10, 2);call #Ultimate.allocInit(12, 3); {4576#true} is VALID [2022-04-15 12:51:22,531 INFO L290 TraceCheckUtils]: 2: Hoare triple {4576#true} assume true; {4576#true} is VALID [2022-04-15 12:51:22,531 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4576#true} {4576#true} #61#return; {4576#true} is VALID [2022-04-15 12:51:22,531 INFO L272 TraceCheckUtils]: 4: Hoare triple {4576#true} call #t~ret11 := main(); {4576#true} is VALID [2022-04-15 12:51:22,532 INFO L290 TraceCheckUtils]: 5: Hoare triple {4576#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {4581#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} is VALID [2022-04-15 12:51:22,534 INFO L290 TraceCheckUtils]: 6: Hoare triple {4581#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} [93] L16-2-->L16-3_primed: Formula: (or (and (= |v_main_#t~post6_Out_30| 0) (= |v_main_#t~post5_Out_30| 0) (< 0 (mod (+ v_main_~x~0_Out_30 1) 4294967296)) (<= v_main_~x~0_Out_30 v_main_~x~0_In_15) (= (+ v_main_~y~0_Out_30 v_main_~x~0_Out_30) (+ v_main_~x~0_In_15 v_main_~y~0_In_15))) (and (= v_main_~y~0_In_15 v_main_~y~0_Out_30) (= v_main_~x~0_In_15 v_main_~x~0_Out_30))) InVars {main_~x~0=v_main_~x~0_In_15, main_~y~0=v_main_~y~0_In_15} OutVars{main_~y~0=v_main_~y~0_Out_30, main_#t~post5=|v_main_#t~post5_Out_30|, main_~x~0=v_main_~x~0_Out_30, main_#t~post6=|v_main_#t~post6_Out_30|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {4620#(or (and (< 0 (mod (+ main_~x~0 1) 4294967296)) (<= main_~x~0 main_~n~0) (= main_~n~0 (+ main_~y~0 main_~x~0))) (and (= main_~n~0 main_~x~0) (= main_~y~0 0)))} is VALID [2022-04-15 12:51:22,536 INFO L290 TraceCheckUtils]: 7: Hoare triple {4620#(or (and (< 0 (mod (+ main_~x~0 1) 4294967296)) (<= main_~x~0 main_~n~0) (= main_~n~0 (+ main_~y~0 main_~x~0))) (and (= main_~n~0 main_~x~0) (= main_~y~0 0)))} [92] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {4624#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} is VALID [2022-04-15 12:51:22,537 INFO L290 TraceCheckUtils]: 8: Hoare triple {4624#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} ~z~0 := ~y~0; {4628#(and (<= 0 main_~y~0) (= main_~z~0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} is VALID [2022-04-15 12:51:22,539 INFO L290 TraceCheckUtils]: 9: Hoare triple {4628#(and (<= 0 main_~y~0) (= main_~z~0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {4632#(and (<= 0 main_~y~0) (< 0 (mod (+ main_~z~0 1) 4294967296)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= main_~y~0 (+ main_~z~0 1)))} is VALID [2022-04-15 12:51:22,541 INFO L290 TraceCheckUtils]: 10: Hoare triple {4632#(and (<= 0 main_~y~0) (< 0 (mod (+ main_~z~0 1) 4294967296)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= main_~y~0 (+ main_~z~0 1)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {4636#(and (<= 0 main_~y~0) (< 0 (mod (+ main_~z~0 2) 4294967296)) (< 0 (mod (+ main_~z~0 1) 4294967296)) (= main_~y~0 (+ main_~z~0 2)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} is VALID [2022-04-15 12:51:22,543 INFO L290 TraceCheckUtils]: 11: Hoare triple {4636#(and (<= 0 main_~y~0) (< 0 (mod (+ main_~z~0 2) 4294967296)) (< 0 (mod (+ main_~z~0 1) 4294967296)) (= main_~y~0 (+ main_~z~0 2)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {4640#(and (<= 0 main_~y~0) (< 0 (mod (+ main_~z~0 2) 4294967296)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod (+ main_~z~0 3) 4294967296)) (= main_~y~0 (+ main_~z~0 3)))} is VALID [2022-04-15 12:51:22,546 INFO L290 TraceCheckUtils]: 12: Hoare triple {4640#(and (<= 0 main_~y~0) (< 0 (mod (+ main_~z~0 2) 4294967296)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod (+ main_~z~0 3) 4294967296)) (= main_~y~0 (+ main_~z~0 3)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {4644#(and (<= 0 main_~y~0) (= (+ main_~y~0 (- 3)) (+ main_~z~0 1)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod (+ main_~y~0 4294967295) 4294967296)) (< 0 (mod (+ main_~y~0 4294967293) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:51:22,548 INFO L290 TraceCheckUtils]: 13: Hoare triple {4644#(and (<= 0 main_~y~0) (= (+ main_~y~0 (- 3)) (+ main_~z~0 1)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod (+ main_~y~0 4294967295) 4294967296)) (< 0 (mod (+ main_~y~0 4294967293) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {4648#(and (<= 0 main_~y~0) (< 0 (mod (+ main_~z~0 1) 4294967296)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod (+ main_~y~0 4294967295) 4294967296)) (= (+ main_~y~0 (- 3)) (+ main_~z~0 2)) (< 0 (mod (+ main_~y~0 4294967293) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:51:22,549 INFO L290 TraceCheckUtils]: 14: Hoare triple {4648#(and (<= 0 main_~y~0) (< 0 (mod (+ main_~z~0 1) 4294967296)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod (+ main_~y~0 4294967295) 4294967296)) (= (+ main_~y~0 (- 3)) (+ main_~z~0 2)) (< 0 (mod (+ main_~y~0 4294967293) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} assume !(~z~0 % 4294967296 > 0); {4652#(and (<= 0 main_~y~0) (= (+ 5 main_~z~0) main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (<= (mod main_~z~0 4294967296) 0))} is VALID [2022-04-15 12:51:22,555 INFO L290 TraceCheckUtils]: 15: Hoare triple {4652#(and (<= 0 main_~y~0) (= (+ 5 main_~z~0) main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (<= (mod main_~z~0 4294967296) 0))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {4656#(and (<= (mod (+ main_~z~0 4294967295) 4294967296) 0) (<= (div (+ main_~z~0 4 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296)) (<= 0 (+ main_~z~0 4)))} is VALID [2022-04-15 12:51:22,557 INFO L290 TraceCheckUtils]: 16: Hoare triple {4656#(and (<= (mod (+ main_~z~0 4294967295) 4294967296) 0) (<= (div (+ main_~z~0 4 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296)) (<= 0 (+ main_~z~0 4)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {4660#(and (<= 0 (+ main_~z~0 3)) (<= (div (+ main_~z~0 3 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296)) (<= (mod (+ main_~z~0 4294967294) 4294967296) 0))} is VALID [2022-04-15 12:51:22,559 INFO L290 TraceCheckUtils]: 17: Hoare triple {4660#(and (<= 0 (+ main_~z~0 3)) (<= (div (+ main_~z~0 3 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296)) (<= (mod (+ main_~z~0 4294967294) 4294967296) 0))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {4664#(and (<= 0 (+ main_~z~0 2)) (<= (div (+ main_~z~0 2 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296)) (<= (mod (+ main_~z~0 4294967293) 4294967296) 0))} is VALID [2022-04-15 12:51:22,561 INFO L290 TraceCheckUtils]: 18: Hoare triple {4664#(and (<= 0 (+ main_~z~0 2)) (<= (div (+ main_~z~0 2 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296)) (<= (mod (+ main_~z~0 4294967293) 4294967296) 0))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {4668#(and (<= 0 (+ main_~z~0 1)) (<= (mod (+ 4294967292 main_~z~0) 4294967296) 0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0) 1) (- 4294967296)) (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} is VALID [2022-04-15 12:51:22,563 INFO L290 TraceCheckUtils]: 19: Hoare triple {4668#(and (<= 0 (+ main_~z~0 1)) (<= (mod (+ 4294967292 main_~z~0) 4294967296) 0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0) 1) (- 4294967296)) (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {4672#(and (<= (mod (+ 4294967291 main_~z~0) 4294967296) 0) (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} is VALID [2022-04-15 12:51:22,563 INFO L290 TraceCheckUtils]: 20: Hoare triple {4672#(and (<= (mod (+ 4294967291 main_~z~0) 4294967296) 0) (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} assume !(~y~0 % 4294967296 > 0); {4672#(and (<= (mod (+ 4294967291 main_~z~0) 4294967296) 0) (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} is VALID [2022-04-15 12:51:22,567 INFO L272 TraceCheckUtils]: 21: Hoare triple {4672#(and (<= (mod (+ 4294967291 main_~z~0) 4294967296) 0) (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {4679#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 12:51:22,567 INFO L290 TraceCheckUtils]: 22: Hoare triple {4679#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4683#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 12:51:22,567 INFO L290 TraceCheckUtils]: 23: Hoare triple {4683#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4577#false} is VALID [2022-04-15 12:51:22,568 INFO L290 TraceCheckUtils]: 24: Hoare triple {4577#false} assume !false; {4577#false} is VALID [2022-04-15 12:51:22,568 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 0 proven. 30 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:51:22,568 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 12:51:50,674 INFO L290 TraceCheckUtils]: 24: Hoare triple {4577#false} assume !false; {4577#false} is VALID [2022-04-15 12:51:50,674 INFO L290 TraceCheckUtils]: 23: Hoare triple {4683#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4577#false} is VALID [2022-04-15 12:51:50,678 INFO L290 TraceCheckUtils]: 22: Hoare triple {4679#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4683#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 12:51:50,679 INFO L272 TraceCheckUtils]: 21: Hoare triple {4595#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {4679#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 12:51:50,680 INFO L290 TraceCheckUtils]: 20: Hoare triple {4595#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} assume !(~y~0 % 4294967296 > 0); {4595#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:51:50,682 INFO L290 TraceCheckUtils]: 19: Hoare triple {4705#(and (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296)) (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {4595#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:51:50,684 INFO L290 TraceCheckUtils]: 18: Hoare triple {4709#(and (< (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0) (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {4705#(and (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296)) (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:51:50,686 INFO L290 TraceCheckUtils]: 17: Hoare triple {4713#(and (< (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4)) (<= (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {4709#(and (< (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0) (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0)))} is VALID [2022-04-15 12:51:50,687 INFO L290 TraceCheckUtils]: 16: Hoare triple {4717#(and (< (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0) (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4) (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {4713#(and (< (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4)) (<= (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296))))} is VALID [2022-04-15 12:51:50,688 INFO L290 TraceCheckUtils]: 15: Hoare triple {4721#(and (<= (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296)) (+ main_~z~0 6 (* (div main_~n~0 4294967296) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {4717#(and (< (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0) (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4) (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0)))} is VALID [2022-04-15 12:51:50,689 INFO L290 TraceCheckUtils]: 14: Hoare triple {4725#(or (< 0 (mod main_~z~0 4294967296)) (and (<= (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296)) (+ main_~z~0 6 (* (div main_~n~0 4294967296) 4294967296)))))} assume !(~z~0 % 4294967296 > 0); {4721#(and (<= (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296)) (+ main_~z~0 6 (* (div main_~n~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:51:50,694 INFO L290 TraceCheckUtils]: 13: Hoare triple {4729#(or (and (< (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0) (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4) (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0))) (< 0 (mod (+ main_~z~0 4294967295) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {4725#(or (< 0 (mod main_~z~0 4294967296)) (and (<= (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296)) (+ main_~z~0 6 (* (div main_~n~0 4294967296) 4294967296)))))} is VALID [2022-04-15 12:51:50,701 INFO L290 TraceCheckUtils]: 12: Hoare triple {4733#(or (< 0 (mod (+ main_~z~0 4294967294) 4294967296)) (and (< (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4)) (<= (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {4729#(or (and (< (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0) (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4) (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0))) (< 0 (mod (+ main_~z~0 4294967295) 4294967296)))} is VALID [2022-04-15 12:51:50,704 INFO L290 TraceCheckUtils]: 11: Hoare triple {4737#(or (< 0 (mod (+ main_~z~0 4294967293) 4294967296)) (and (< (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0) (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {4733#(or (< 0 (mod (+ main_~z~0 4294967294) 4294967296)) (and (< (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4)) (<= (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)))))} is VALID [2022-04-15 12:51:50,710 INFO L290 TraceCheckUtils]: 10: Hoare triple {4741#(or (and (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296)) (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)))) (< 0 (mod (+ 4294967292 main_~z~0) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {4737#(or (< 0 (mod (+ main_~z~0 4294967293) 4294967296)) (and (< (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0) (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0))))} is VALID [2022-04-15 12:51:50,713 INFO L290 TraceCheckUtils]: 9: Hoare triple {4745#(or (and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)))) (< 0 (mod (+ 4294967291 main_~z~0) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {4741#(or (and (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296)) (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)))) (< 0 (mod (+ 4294967292 main_~z~0) 4294967296)))} is VALID [2022-04-15 12:51:50,714 INFO L290 TraceCheckUtils]: 8: Hoare triple {4749#(or (< 0 (mod (+ 4294967291 main_~y~0) 4294967296)) (and (< (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0))))} ~z~0 := ~y~0; {4745#(or (and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)))) (< 0 (mod (+ 4294967291 main_~z~0) 4294967296)))} is VALID [2022-04-15 12:51:50,716 INFO L290 TraceCheckUtils]: 7: Hoare triple {4753#(or (< 0 (mod (+ 4294967291 main_~y~0) 4294967296)) (< 0 (mod main_~x~0 4294967296)) (and (< (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0))))} [92] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {4749#(or (< 0 (mod (+ 4294967291 main_~y~0) 4294967296)) (and (< (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0))))} is VALID [2022-04-15 12:51:52,732 WARN L290 TraceCheckUtils]: 6: Hoare triple {4757#(and (forall ((aux_mod_aux_mod_v_main_~y~0_179_47_104 Int) (aux_div_v_main_~y~0_179_47 Int) (aux_div_aux_mod_v_main_~y~0_179_47_104 Int)) (or (< (+ 4294967291 (* aux_div_aux_mod_v_main_~y~0_179_47_104 4294967296) aux_mod_aux_mod_v_main_~y~0_179_47_104) (* 4294967296 aux_div_v_main_~y~0_179_47)) (and (or (< (+ (* aux_div_aux_mod_v_main_~y~0_179_47_104 4294967296) aux_mod_aux_mod_v_main_~y~0_179_47_104) main_~y~0) (<= (mod (+ (* 4294967295 aux_mod_aux_mod_v_main_~y~0_179_47_104) main_~y~0 main_~x~0 1) 4294967296) 0) (forall ((aux_div_v_main_~x~0_144_32 Int)) (or (< (+ main_~y~0 main_~x~0) (+ (* 4294967296 aux_div_v_main_~x~0_144_32) (* aux_div_aux_mod_v_main_~y~0_179_47_104 4294967296) aux_mod_aux_mod_v_main_~y~0_179_47_104)) (< (+ (* 4294967296 aux_div_v_main_~x~0_144_32) (* aux_div_aux_mod_v_main_~y~0_179_47_104 4294967296) aux_mod_aux_mod_v_main_~y~0_179_47_104) (+ main_~y~0 main_~x~0))))) (or (not (= (+ 4294967291 (* aux_div_aux_mod_v_main_~y~0_179_47_104 4294967296) aux_mod_aux_mod_v_main_~y~0_179_47_104) (+ 4294967291 main_~y~0))) (< (div (+ (- 1) (* (- 1) main_~x~0)) (- 4294967296)) (+ 2 (div (+ (- 1) main_~x~0) 4294967296))))) (< (* 4294967296 aux_div_v_main_~y~0_179_47) (+ 4294967291 (* aux_div_aux_mod_v_main_~y~0_179_47_104 4294967296) aux_mod_aux_mod_v_main_~y~0_179_47_104)) (< main_~n~0 (+ (* (div main_~n~0 4294967296) 4294967296) aux_mod_aux_mod_v_main_~y~0_179_47_104 1)) (< aux_mod_aux_mod_v_main_~y~0_179_47_104 0))) (forall ((aux_mod_aux_mod_v_main_~y~0_179_47_104 Int) (aux_div_v_main_~y~0_179_47 Int) (aux_div_aux_mod_v_main_~y~0_179_47_104 Int)) (or (<= 4294967296 aux_mod_aux_mod_v_main_~y~0_179_47_104) (< (+ 4294967291 (* aux_div_aux_mod_v_main_~y~0_179_47_104 4294967296) aux_mod_aux_mod_v_main_~y~0_179_47_104) (* 4294967296 aux_div_v_main_~y~0_179_47)) (and (or (< (+ (* aux_div_aux_mod_v_main_~y~0_179_47_104 4294967296) aux_mod_aux_mod_v_main_~y~0_179_47_104) main_~y~0) (<= (mod (+ (* 4294967295 aux_mod_aux_mod_v_main_~y~0_179_47_104) main_~y~0 main_~x~0 1) 4294967296) 0) (forall ((aux_div_v_main_~x~0_144_32 Int)) (or (< (+ main_~y~0 main_~x~0) (+ (* 4294967296 aux_div_v_main_~x~0_144_32) (* aux_div_aux_mod_v_main_~y~0_179_47_104 4294967296) aux_mod_aux_mod_v_main_~y~0_179_47_104)) (< (+ (* 4294967296 aux_div_v_main_~x~0_144_32) (* aux_div_aux_mod_v_main_~y~0_179_47_104 4294967296) aux_mod_aux_mod_v_main_~y~0_179_47_104) (+ main_~y~0 main_~x~0))))) (or (not (= (+ 4294967291 (* aux_div_aux_mod_v_main_~y~0_179_47_104 4294967296) aux_mod_aux_mod_v_main_~y~0_179_47_104) (+ 4294967291 main_~y~0))) (< (div (+ (- 1) (* (- 1) main_~x~0)) (- 4294967296)) (+ 2 (div (+ (- 1) main_~x~0) 4294967296))))) (< (* 4294967296 aux_div_v_main_~y~0_179_47) (+ 4294967291 (* aux_div_aux_mod_v_main_~y~0_179_47_104 4294967296) aux_mod_aux_mod_v_main_~y~0_179_47_104)) (<= (+ (* (div main_~n~0 4294967296) 4294967296) aux_mod_aux_mod_v_main_~y~0_179_47_104) main_~n~0))))} [93] L16-2-->L16-3_primed: Formula: (or (and (= |v_main_#t~post6_Out_30| 0) (= |v_main_#t~post5_Out_30| 0) (< 0 (mod (+ v_main_~x~0_Out_30 1) 4294967296)) (<= v_main_~x~0_Out_30 v_main_~x~0_In_15) (= (+ v_main_~y~0_Out_30 v_main_~x~0_Out_30) (+ v_main_~x~0_In_15 v_main_~y~0_In_15))) (and (= v_main_~y~0_In_15 v_main_~y~0_Out_30) (= v_main_~x~0_In_15 v_main_~x~0_Out_30))) InVars {main_~x~0=v_main_~x~0_In_15, main_~y~0=v_main_~y~0_In_15} OutVars{main_~y~0=v_main_~y~0_Out_30, main_#t~post5=|v_main_#t~post5_Out_30|, main_~x~0=v_main_~x~0_Out_30, main_#t~post6=|v_main_#t~post6_Out_30|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {4753#(or (< 0 (mod (+ 4294967291 main_~y~0) 4294967296)) (< 0 (mod main_~x~0 4294967296)) (and (< (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0))))} is UNKNOWN [2022-04-15 12:51:52,746 INFO L290 TraceCheckUtils]: 5: Hoare triple {4576#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {4757#(and (forall ((aux_mod_aux_mod_v_main_~y~0_179_47_104 Int) (aux_div_v_main_~y~0_179_47 Int) (aux_div_aux_mod_v_main_~y~0_179_47_104 Int)) (or (< (+ 4294967291 (* aux_div_aux_mod_v_main_~y~0_179_47_104 4294967296) aux_mod_aux_mod_v_main_~y~0_179_47_104) (* 4294967296 aux_div_v_main_~y~0_179_47)) (and (or (< (+ (* aux_div_aux_mod_v_main_~y~0_179_47_104 4294967296) aux_mod_aux_mod_v_main_~y~0_179_47_104) main_~y~0) (<= (mod (+ (* 4294967295 aux_mod_aux_mod_v_main_~y~0_179_47_104) main_~y~0 main_~x~0 1) 4294967296) 0) (forall ((aux_div_v_main_~x~0_144_32 Int)) (or (< (+ main_~y~0 main_~x~0) (+ (* 4294967296 aux_div_v_main_~x~0_144_32) (* aux_div_aux_mod_v_main_~y~0_179_47_104 4294967296) aux_mod_aux_mod_v_main_~y~0_179_47_104)) (< (+ (* 4294967296 aux_div_v_main_~x~0_144_32) (* aux_div_aux_mod_v_main_~y~0_179_47_104 4294967296) aux_mod_aux_mod_v_main_~y~0_179_47_104) (+ main_~y~0 main_~x~0))))) (or (not (= (+ 4294967291 (* aux_div_aux_mod_v_main_~y~0_179_47_104 4294967296) aux_mod_aux_mod_v_main_~y~0_179_47_104) (+ 4294967291 main_~y~0))) (< (div (+ (- 1) (* (- 1) main_~x~0)) (- 4294967296)) (+ 2 (div (+ (- 1) main_~x~0) 4294967296))))) (< (* 4294967296 aux_div_v_main_~y~0_179_47) (+ 4294967291 (* aux_div_aux_mod_v_main_~y~0_179_47_104 4294967296) aux_mod_aux_mod_v_main_~y~0_179_47_104)) (< main_~n~0 (+ (* (div main_~n~0 4294967296) 4294967296) aux_mod_aux_mod_v_main_~y~0_179_47_104 1)) (< aux_mod_aux_mod_v_main_~y~0_179_47_104 0))) (forall ((aux_mod_aux_mod_v_main_~y~0_179_47_104 Int) (aux_div_v_main_~y~0_179_47 Int) (aux_div_aux_mod_v_main_~y~0_179_47_104 Int)) (or (<= 4294967296 aux_mod_aux_mod_v_main_~y~0_179_47_104) (< (+ 4294967291 (* aux_div_aux_mod_v_main_~y~0_179_47_104 4294967296) aux_mod_aux_mod_v_main_~y~0_179_47_104) (* 4294967296 aux_div_v_main_~y~0_179_47)) (and (or (< (+ (* aux_div_aux_mod_v_main_~y~0_179_47_104 4294967296) aux_mod_aux_mod_v_main_~y~0_179_47_104) main_~y~0) (<= (mod (+ (* 4294967295 aux_mod_aux_mod_v_main_~y~0_179_47_104) main_~y~0 main_~x~0 1) 4294967296) 0) (forall ((aux_div_v_main_~x~0_144_32 Int)) (or (< (+ main_~y~0 main_~x~0) (+ (* 4294967296 aux_div_v_main_~x~0_144_32) (* aux_div_aux_mod_v_main_~y~0_179_47_104 4294967296) aux_mod_aux_mod_v_main_~y~0_179_47_104)) (< (+ (* 4294967296 aux_div_v_main_~x~0_144_32) (* aux_div_aux_mod_v_main_~y~0_179_47_104 4294967296) aux_mod_aux_mod_v_main_~y~0_179_47_104) (+ main_~y~0 main_~x~0))))) (or (not (= (+ 4294967291 (* aux_div_aux_mod_v_main_~y~0_179_47_104 4294967296) aux_mod_aux_mod_v_main_~y~0_179_47_104) (+ 4294967291 main_~y~0))) (< (div (+ (- 1) (* (- 1) main_~x~0)) (- 4294967296)) (+ 2 (div (+ (- 1) main_~x~0) 4294967296))))) (< (* 4294967296 aux_div_v_main_~y~0_179_47) (+ 4294967291 (* aux_div_aux_mod_v_main_~y~0_179_47_104 4294967296) aux_mod_aux_mod_v_main_~y~0_179_47_104)) (<= (+ (* (div main_~n~0 4294967296) 4294967296) aux_mod_aux_mod_v_main_~y~0_179_47_104) main_~n~0))))} is VALID [2022-04-15 12:51:52,746 INFO L272 TraceCheckUtils]: 4: Hoare triple {4576#true} call #t~ret11 := main(); {4576#true} is VALID [2022-04-15 12:51:52,746 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4576#true} {4576#true} #61#return; {4576#true} is VALID [2022-04-15 12:51:52,746 INFO L290 TraceCheckUtils]: 2: Hoare triple {4576#true} assume true; {4576#true} is VALID [2022-04-15 12:51:52,746 INFO L290 TraceCheckUtils]: 1: Hoare triple {4576#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(10, 2);call #Ultimate.allocInit(12, 3); {4576#true} is VALID [2022-04-15 12:51:52,746 INFO L272 TraceCheckUtils]: 0: Hoare triple {4576#true} call ULTIMATE.init(); {4576#true} is VALID [2022-04-15 12:51:52,746 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 0 proven. 30 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:51:52,747 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1229893231] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 12:51:52,747 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 12:51:52,747 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [20, 19, 19] total 50 [2022-04-15 12:51:55,275 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 12:51:55,275 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [932752102] [2022-04-15 12:51:55,275 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [932752102] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 12:51:55,275 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 12:51:55,275 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [23] imperfect sequences [] total 23 [2022-04-15 12:51:55,275 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [674971736] [2022-04-15 12:51:55,275 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 12:51:55,276 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 23 states have (on average 1.0434782608695652) internal successors, (24), 21 states have internal predecessors, (24), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 28 [2022-04-15 12:51:55,276 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 12:51:55,276 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 23 states, 23 states have (on average 1.0434782608695652) internal successors, (24), 21 states have internal predecessors, (24), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:51:55,462 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:51:55,463 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 23 states [2022-04-15 12:51:55,463 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 12:51:55,463 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2022-04-15 12:51:55,464 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=327, Invalid=2638, Unknown=5, NotChecked=0, Total=2970 [2022-04-15 12:51:55,464 INFO L87 Difference]: Start difference. First operand 29 states and 31 transitions. Second operand has 23 states, 23 states have (on average 1.0434782608695652) internal successors, (24), 21 states have internal predecessors, (24), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:02,301 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:52:02,301 INFO L93 Difference]: Finished difference Result 41 states and 44 transitions. [2022-04-15 12:52:02,301 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 23 states. [2022-04-15 12:52:02,301 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 23 states have (on average 1.0434782608695652) internal successors, (24), 21 states have internal predecessors, (24), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 28 [2022-04-15 12:52:02,302 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 12:52:02,302 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 23 states have (on average 1.0434782608695652) internal successors, (24), 21 states have internal predecessors, (24), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:02,302 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 39 transitions. [2022-04-15 12:52:02,302 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 23 states have (on average 1.0434782608695652) internal successors, (24), 21 states have internal predecessors, (24), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:02,303 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 23 states to 23 states and 39 transitions. [2022-04-15 12:52:02,303 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 23 states and 39 transitions. [2022-04-15 12:52:04,526 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 38 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 12:52:04,527 INFO L225 Difference]: With dead ends: 41 [2022-04-15 12:52:04,527 INFO L226 Difference]: Without dead ends: 36 [2022-04-15 12:52:04,528 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 96 GetRequests, 20 SyntacticMatches, 3 SemanticMatches, 73 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1596 ImplicationChecksByTransitivity, 30.6s TimeCoverageRelationStatistics Valid=549, Invalid=4996, Unknown=5, NotChecked=0, Total=5550 [2022-04-15 12:52:04,529 INFO L913 BasicCegarLoop]: 10 mSDtfsCounter, 20 mSDsluCounter, 87 mSDsCounter, 0 mSdLazyCounter, 435 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 20 SdHoareTripleChecker+Valid, 97 SdHoareTripleChecker+Invalid, 456 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 435 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.6s IncrementalHoareTripleChecker+Time [2022-04-15 12:52:04,529 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [20 Valid, 97 Invalid, 456 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 435 Invalid, 0 Unknown, 0 Unchecked, 1.6s Time] [2022-04-15 12:52:04,529 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 36 states. [2022-04-15 12:52:04,635 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 36 to 31. [2022-04-15 12:52:04,635 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 12:52:04,635 INFO L82 GeneralOperation]: Start isEquivalent. First operand 36 states. Second operand has 31 states, 26 states have (on average 1.1538461538461537) internal successors, (30), 26 states have internal predecessors, (30), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:04,635 INFO L74 IsIncluded]: Start isIncluded. First operand 36 states. Second operand has 31 states, 26 states have (on average 1.1538461538461537) internal successors, (30), 26 states have internal predecessors, (30), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:04,636 INFO L87 Difference]: Start difference. First operand 36 states. Second operand has 31 states, 26 states have (on average 1.1538461538461537) internal successors, (30), 26 states have internal predecessors, (30), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:04,636 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:52:04,636 INFO L93 Difference]: Finished difference Result 36 states and 39 transitions. [2022-04-15 12:52:04,636 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 39 transitions. [2022-04-15 12:52:04,636 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:52:04,637 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:52:04,637 INFO L74 IsIncluded]: Start isIncluded. First operand has 31 states, 26 states have (on average 1.1538461538461537) internal successors, (30), 26 states have internal predecessors, (30), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 36 states. [2022-04-15 12:52:04,637 INFO L87 Difference]: Start difference. First operand has 31 states, 26 states have (on average 1.1538461538461537) internal successors, (30), 26 states have internal predecessors, (30), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 36 states. [2022-04-15 12:52:04,637 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:52:04,637 INFO L93 Difference]: Finished difference Result 36 states and 39 transitions. [2022-04-15 12:52:04,637 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 39 transitions. [2022-04-15 12:52:04,637 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:52:04,638 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:52:04,638 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 12:52:04,638 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 12:52:04,638 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 26 states have (on average 1.1538461538461537) internal successors, (30), 26 states have internal predecessors, (30), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:04,638 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 34 transitions. [2022-04-15 12:52:04,638 INFO L78 Accepts]: Start accepts. Automaton has 31 states and 34 transitions. Word has length 28 [2022-04-15 12:52:04,638 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 12:52:04,638 INFO L478 AbstractCegarLoop]: Abstraction has 31 states and 34 transitions. [2022-04-15 12:52:04,638 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 23 states, 23 states have (on average 1.0434782608695652) internal successors, (24), 21 states have internal predecessors, (24), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:04,639 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 31 states and 34 transitions. [2022-04-15 12:52:05,441 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:52:05,441 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 34 transitions. [2022-04-15 12:52:05,442 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-15 12:52:05,442 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 12:52:05,442 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 12:52:05,447 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Forceful destruction successful, exit code 0 [2022-04-15 12:52:05,642 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 14 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable15 [2022-04-15 12:52:05,642 INFO L403 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 12:52:05,643 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 12:52:05,643 INFO L85 PathProgramCache]: Analyzing trace with hash 2094347791, now seen corresponding path program 14 times [2022-04-15 12:52:05,643 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 12:52:05,643 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1916422582] [2022-04-15 12:52:05,792 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-15 12:52:05,794 INFO L85 PathProgramCache]: Analyzing trace with hash 236443791, now seen corresponding path program 1 times [2022-04-15 12:52:05,794 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 12:52:05,794 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [493653609] [2022-04-15 12:52:05,794 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:52:05,794 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 12:52:05,818 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:52:06,147 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 12:52:06,148 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:52:06,150 INFO L290 TraceCheckUtils]: 0: Hoare triple {5056#(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(10, 2);call #Ultimate.allocInit(12, 3); {5039#true} is VALID [2022-04-15 12:52:06,150 INFO L290 TraceCheckUtils]: 1: Hoare triple {5039#true} assume true; {5039#true} is VALID [2022-04-15 12:52:06,151 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {5039#true} {5039#true} #61#return; {5039#true} is VALID [2022-04-15 12:52:06,151 INFO L272 TraceCheckUtils]: 0: Hoare triple {5039#true} call ULTIMATE.init(); {5056#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 12:52:06,151 INFO L290 TraceCheckUtils]: 1: Hoare triple {5056#(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(10, 2);call #Ultimate.allocInit(12, 3); {5039#true} is VALID [2022-04-15 12:52:06,151 INFO L290 TraceCheckUtils]: 2: Hoare triple {5039#true} assume true; {5039#true} is VALID [2022-04-15 12:52:06,151 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5039#true} {5039#true} #61#return; {5039#true} is VALID [2022-04-15 12:52:06,151 INFO L272 TraceCheckUtils]: 4: Hoare triple {5039#true} call #t~ret11 := main(); {5039#true} is VALID [2022-04-15 12:52:06,151 INFO L290 TraceCheckUtils]: 5: Hoare triple {5039#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {5039#true} is VALID [2022-04-15 12:52:06,152 INFO L290 TraceCheckUtils]: 6: Hoare triple {5039#true} [95] L16-2-->L16-3_primed: Formula: (or (and (= |v_main_#t~post5_Out_32| 0) (<= v_main_~x~0_Out_32 v_main_~x~0_In_16) (< 0 (mod (+ v_main_~x~0_Out_32 1) 4294967296)) (= |v_main_#t~post6_Out_32| 0) (= (+ v_main_~y~0_Out_32 v_main_~x~0_Out_32) (+ v_main_~x~0_In_16 v_main_~y~0_In_16))) (and (= v_main_~x~0_In_16 v_main_~x~0_Out_32) (= v_main_~y~0_In_16 v_main_~y~0_Out_32))) InVars {main_~x~0=v_main_~x~0_In_16, main_~y~0=v_main_~y~0_In_16} OutVars{main_~y~0=v_main_~y~0_Out_32, main_#t~post5=|v_main_#t~post5_Out_32|, main_~x~0=v_main_~x~0_Out_32, main_#t~post6=|v_main_#t~post6_Out_32|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {5039#true} is VALID [2022-04-15 12:52:06,152 INFO L290 TraceCheckUtils]: 7: Hoare triple {5039#true} [94] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {5039#true} is VALID [2022-04-15 12:52:06,152 INFO L290 TraceCheckUtils]: 8: Hoare triple {5039#true} ~z~0 := ~y~0; {5044#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} is VALID [2022-04-15 12:52:06,155 INFO L290 TraceCheckUtils]: 9: Hoare triple {5044#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5045#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} is VALID [2022-04-15 12:52:06,157 INFO L290 TraceCheckUtils]: 10: Hoare triple {5045#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5046#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} is VALID [2022-04-15 12:52:06,158 INFO L290 TraceCheckUtils]: 11: Hoare triple {5046#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5047#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} is VALID [2022-04-15 12:52:06,159 INFO L290 TraceCheckUtils]: 12: Hoare triple {5047#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5048#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} is VALID [2022-04-15 12:52:06,161 INFO L290 TraceCheckUtils]: 13: Hoare triple {5048#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5049#(and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))} is VALID [2022-04-15 12:52:06,162 INFO L290 TraceCheckUtils]: 14: Hoare triple {5049#(and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))} assume !(~z~0 % 4294967296 > 0); {5050#(and (<= (+ 5 (* (div main_~z~0 4294967296) 4294967296)) main_~y~0) (<= main_~y~0 (+ 5 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:52:06,171 INFO L290 TraceCheckUtils]: 15: Hoare triple {5050#(and (<= (+ 5 (* (div main_~z~0 4294967296) 4294967296)) main_~y~0) (<= main_~y~0 (+ 5 (* (div main_~z~0 4294967296) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5051#(<= main_~y~0 (+ 4 (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:52:06,173 INFO L290 TraceCheckUtils]: 16: Hoare triple {5051#(<= main_~y~0 (+ 4 (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5052#(<= main_~y~0 (+ 3 (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:52:06,175 INFO L290 TraceCheckUtils]: 17: Hoare triple {5052#(<= main_~y~0 (+ 3 (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5053#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} is VALID [2022-04-15 12:52:06,177 INFO L290 TraceCheckUtils]: 18: Hoare triple {5053#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5054#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} is VALID [2022-04-15 12:52:06,179 INFO L290 TraceCheckUtils]: 19: Hoare triple {5054#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5055#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} is VALID [2022-04-15 12:52:06,180 INFO L290 TraceCheckUtils]: 20: Hoare triple {5055#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5040#false} is VALID [2022-04-15 12:52:06,180 INFO L290 TraceCheckUtils]: 21: Hoare triple {5040#false} assume !(~y~0 % 4294967296 > 0); {5040#false} is VALID [2022-04-15 12:52:06,180 INFO L272 TraceCheckUtils]: 22: Hoare triple {5040#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {5040#false} is VALID [2022-04-15 12:52:06,180 INFO L290 TraceCheckUtils]: 23: Hoare triple {5040#false} ~cond := #in~cond; {5040#false} is VALID [2022-04-15 12:52:06,180 INFO L290 TraceCheckUtils]: 24: Hoare triple {5040#false} assume 0 == ~cond; {5040#false} is VALID [2022-04-15 12:52:06,180 INFO L290 TraceCheckUtils]: 25: Hoare triple {5040#false} assume !false; {5040#false} is VALID [2022-04-15 12:52:06,180 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 6 proven. 30 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:52:06,181 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 12:52:06,181 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [493653609] [2022-04-15 12:52:06,181 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [493653609] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 12:52:06,181 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1848844145] [2022-04-15 12:52:06,181 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:52:06,181 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:52:06,181 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 12:52:06,182 INFO L229 MonitoredProcess]: Starting monitored process 15 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 12:52:06,183 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Waiting until timeout for monitored process [2022-04-15 12:52:06,220 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:52:06,221 INFO L263 TraceCheckSpWp]: Trace formula consists of 115 conjuncts, 24 conjunts are in the unsatisfiable core [2022-04-15 12:52:06,231 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:52:06,232 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 12:52:06,625 INFO L272 TraceCheckUtils]: 0: Hoare triple {5039#true} call ULTIMATE.init(); {5039#true} is VALID [2022-04-15 12:52:06,625 INFO L290 TraceCheckUtils]: 1: Hoare triple {5039#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(10, 2);call #Ultimate.allocInit(12, 3); {5039#true} is VALID [2022-04-15 12:52:06,625 INFO L290 TraceCheckUtils]: 2: Hoare triple {5039#true} assume true; {5039#true} is VALID [2022-04-15 12:52:06,625 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5039#true} {5039#true} #61#return; {5039#true} is VALID [2022-04-15 12:52:06,625 INFO L272 TraceCheckUtils]: 4: Hoare triple {5039#true} call #t~ret11 := main(); {5039#true} is VALID [2022-04-15 12:52:06,625 INFO L290 TraceCheckUtils]: 5: Hoare triple {5039#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {5039#true} is VALID [2022-04-15 12:52:06,625 INFO L290 TraceCheckUtils]: 6: Hoare triple {5039#true} [95] L16-2-->L16-3_primed: Formula: (or (and (= |v_main_#t~post5_Out_32| 0) (<= v_main_~x~0_Out_32 v_main_~x~0_In_16) (< 0 (mod (+ v_main_~x~0_Out_32 1) 4294967296)) (= |v_main_#t~post6_Out_32| 0) (= (+ v_main_~y~0_Out_32 v_main_~x~0_Out_32) (+ v_main_~x~0_In_16 v_main_~y~0_In_16))) (and (= v_main_~x~0_In_16 v_main_~x~0_Out_32) (= v_main_~y~0_In_16 v_main_~y~0_Out_32))) InVars {main_~x~0=v_main_~x~0_In_16, main_~y~0=v_main_~y~0_In_16} OutVars{main_~y~0=v_main_~y~0_Out_32, main_#t~post5=|v_main_#t~post5_Out_32|, main_~x~0=v_main_~x~0_Out_32, main_#t~post6=|v_main_#t~post6_Out_32|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {5039#true} is VALID [2022-04-15 12:52:06,626 INFO L290 TraceCheckUtils]: 7: Hoare triple {5039#true} [94] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {5039#true} is VALID [2022-04-15 12:52:06,626 INFO L290 TraceCheckUtils]: 8: Hoare triple {5039#true} ~z~0 := ~y~0; {5044#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} is VALID [2022-04-15 12:52:06,629 INFO L290 TraceCheckUtils]: 9: Hoare triple {5044#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5045#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} is VALID [2022-04-15 12:52:06,631 INFO L290 TraceCheckUtils]: 10: Hoare triple {5045#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5046#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} is VALID [2022-04-15 12:52:06,632 INFO L290 TraceCheckUtils]: 11: Hoare triple {5046#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5047#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} is VALID [2022-04-15 12:52:06,634 INFO L290 TraceCheckUtils]: 12: Hoare triple {5047#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5048#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} is VALID [2022-04-15 12:52:06,635 INFO L290 TraceCheckUtils]: 13: Hoare triple {5048#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5049#(and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))} is VALID [2022-04-15 12:52:06,637 INFO L290 TraceCheckUtils]: 14: Hoare triple {5049#(and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))} assume !(~z~0 % 4294967296 > 0); {5102#(<= (div (+ 5 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 5)) 4294967296))} is VALID [2022-04-15 12:52:06,639 INFO L290 TraceCheckUtils]: 15: Hoare triple {5102#(<= (div (+ 5 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 5)) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5051#(<= main_~y~0 (+ 4 (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:52:06,641 INFO L290 TraceCheckUtils]: 16: Hoare triple {5051#(<= main_~y~0 (+ 4 (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5052#(<= main_~y~0 (+ 3 (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:52:06,643 INFO L290 TraceCheckUtils]: 17: Hoare triple {5052#(<= main_~y~0 (+ 3 (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5053#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} is VALID [2022-04-15 12:52:06,644 INFO L290 TraceCheckUtils]: 18: Hoare triple {5053#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5054#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} is VALID [2022-04-15 12:52:06,645 INFO L290 TraceCheckUtils]: 19: Hoare triple {5054#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5055#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} is VALID [2022-04-15 12:52:06,646 INFO L290 TraceCheckUtils]: 20: Hoare triple {5055#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5040#false} is VALID [2022-04-15 12:52:06,646 INFO L290 TraceCheckUtils]: 21: Hoare triple {5040#false} assume !(~y~0 % 4294967296 > 0); {5040#false} is VALID [2022-04-15 12:52:06,647 INFO L272 TraceCheckUtils]: 22: Hoare triple {5040#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {5040#false} is VALID [2022-04-15 12:52:06,647 INFO L290 TraceCheckUtils]: 23: Hoare triple {5040#false} ~cond := #in~cond; {5040#false} is VALID [2022-04-15 12:52:06,647 INFO L290 TraceCheckUtils]: 24: Hoare triple {5040#false} assume 0 == ~cond; {5040#false} is VALID [2022-04-15 12:52:06,647 INFO L290 TraceCheckUtils]: 25: Hoare triple {5040#false} assume !false; {5040#false} is VALID [2022-04-15 12:52:06,647 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 6 proven. 30 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:52:06,647 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 12:52:07,405 INFO L290 TraceCheckUtils]: 25: Hoare triple {5040#false} assume !false; {5040#false} is VALID [2022-04-15 12:52:07,406 INFO L290 TraceCheckUtils]: 24: Hoare triple {5040#false} assume 0 == ~cond; {5040#false} is VALID [2022-04-15 12:52:07,406 INFO L290 TraceCheckUtils]: 23: Hoare triple {5040#false} ~cond := #in~cond; {5040#false} is VALID [2022-04-15 12:52:07,406 INFO L272 TraceCheckUtils]: 22: Hoare triple {5040#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {5040#false} is VALID [2022-04-15 12:52:07,406 INFO L290 TraceCheckUtils]: 21: Hoare triple {5040#false} assume !(~y~0 % 4294967296 > 0); {5040#false} is VALID [2022-04-15 12:52:07,408 INFO L290 TraceCheckUtils]: 20: Hoare triple {5055#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5040#false} is VALID [2022-04-15 12:52:07,410 INFO L290 TraceCheckUtils]: 19: Hoare triple {5054#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5055#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} is VALID [2022-04-15 12:52:07,411 INFO L290 TraceCheckUtils]: 18: Hoare triple {5053#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5054#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} is VALID [2022-04-15 12:52:07,413 INFO L290 TraceCheckUtils]: 17: Hoare triple {5052#(<= main_~y~0 (+ 3 (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5053#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} is VALID [2022-04-15 12:52:07,416 INFO L290 TraceCheckUtils]: 16: Hoare triple {5051#(<= main_~y~0 (+ 4 (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5052#(<= main_~y~0 (+ 3 (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:52:07,418 INFO L290 TraceCheckUtils]: 15: Hoare triple {5102#(<= (div (+ 5 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 5)) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5051#(<= main_~y~0 (+ 4 (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:52:07,418 INFO L290 TraceCheckUtils]: 14: Hoare triple {5169#(or (< 0 (mod main_~z~0 4294967296)) (<= (div (+ 5 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 5)) 4294967296)))} assume !(~z~0 % 4294967296 > 0); {5102#(<= (div (+ 5 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 5)) 4294967296))} is VALID [2022-04-15 12:52:07,422 INFO L290 TraceCheckUtils]: 13: Hoare triple {5173#(or (< 0 (mod (+ main_~z~0 4294967295) 4294967296)) (<= (div (+ 5 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 5)) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5169#(or (< 0 (mod main_~z~0 4294967296)) (<= (div (+ 5 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 5)) 4294967296)))} is VALID [2022-04-15 12:52:07,425 INFO L290 TraceCheckUtils]: 12: Hoare triple {5177#(or (< 0 (mod (+ main_~z~0 4294967294) 4294967296)) (<= (div (+ 5 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 5)) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5173#(or (< 0 (mod (+ main_~z~0 4294967295) 4294967296)) (<= (div (+ 5 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 5)) 4294967296)))} is VALID [2022-04-15 12:52:07,426 INFO L290 TraceCheckUtils]: 11: Hoare triple {5181#(or (< 0 (mod (+ main_~z~0 4294967293) 4294967296)) (<= (div (+ 5 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 5)) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5177#(or (< 0 (mod (+ main_~z~0 4294967294) 4294967296)) (<= (div (+ 5 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 5)) 4294967296)))} is VALID [2022-04-15 12:52:07,428 INFO L290 TraceCheckUtils]: 10: Hoare triple {5185#(or (< 0 (mod (+ 4294967292 main_~z~0) 4294967296)) (<= (div (+ 5 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 5)) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5181#(or (< 0 (mod (+ main_~z~0 4294967293) 4294967296)) (<= (div (+ 5 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 5)) 4294967296)))} is VALID [2022-04-15 12:52:07,430 INFO L290 TraceCheckUtils]: 9: Hoare triple {5189#(or (< 0 (mod (+ 4294967291 main_~z~0) 4294967296)) (<= (div (+ 5 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 5)) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5185#(or (< 0 (mod (+ 4294967292 main_~z~0) 4294967296)) (<= (div (+ 5 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 5)) 4294967296)))} is VALID [2022-04-15 12:52:07,432 INFO L290 TraceCheckUtils]: 8: Hoare triple {5039#true} ~z~0 := ~y~0; {5189#(or (< 0 (mod (+ 4294967291 main_~z~0) 4294967296)) (<= (div (+ 5 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 5)) 4294967296)))} is VALID [2022-04-15 12:52:07,432 INFO L290 TraceCheckUtils]: 7: Hoare triple {5039#true} [94] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {5039#true} is VALID [2022-04-15 12:52:07,432 INFO L290 TraceCheckUtils]: 6: Hoare triple {5039#true} [95] L16-2-->L16-3_primed: Formula: (or (and (= |v_main_#t~post5_Out_32| 0) (<= v_main_~x~0_Out_32 v_main_~x~0_In_16) (< 0 (mod (+ v_main_~x~0_Out_32 1) 4294967296)) (= |v_main_#t~post6_Out_32| 0) (= (+ v_main_~y~0_Out_32 v_main_~x~0_Out_32) (+ v_main_~x~0_In_16 v_main_~y~0_In_16))) (and (= v_main_~x~0_In_16 v_main_~x~0_Out_32) (= v_main_~y~0_In_16 v_main_~y~0_Out_32))) InVars {main_~x~0=v_main_~x~0_In_16, main_~y~0=v_main_~y~0_In_16} OutVars{main_~y~0=v_main_~y~0_Out_32, main_#t~post5=|v_main_#t~post5_Out_32|, main_~x~0=v_main_~x~0_Out_32, main_#t~post6=|v_main_#t~post6_Out_32|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {5039#true} is VALID [2022-04-15 12:52:07,432 INFO L290 TraceCheckUtils]: 5: Hoare triple {5039#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {5039#true} is VALID [2022-04-15 12:52:07,432 INFO L272 TraceCheckUtils]: 4: Hoare triple {5039#true} call #t~ret11 := main(); {5039#true} is VALID [2022-04-15 12:52:07,432 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5039#true} {5039#true} #61#return; {5039#true} is VALID [2022-04-15 12:52:07,432 INFO L290 TraceCheckUtils]: 2: Hoare triple {5039#true} assume true; {5039#true} is VALID [2022-04-15 12:52:07,433 INFO L290 TraceCheckUtils]: 1: Hoare triple {5039#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(10, 2);call #Ultimate.allocInit(12, 3); {5039#true} is VALID [2022-04-15 12:52:07,433 INFO L272 TraceCheckUtils]: 0: Hoare triple {5039#true} call ULTIMATE.init(); {5039#true} is VALID [2022-04-15 12:52:07,433 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 6 proven. 30 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:52:07,433 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1848844145] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 12:52:07,433 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 12:52:07,433 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 14, 14] total 22 [2022-04-15 12:52:07,860 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 12:52:07,860 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1916422582] [2022-04-15 12:52:07,860 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1916422582] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 12:52:07,860 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 12:52:07,860 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [19] imperfect sequences [] total 19 [2022-04-15 12:52:07,860 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [454614655] [2022-04-15 12:52:07,860 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 12:52:07,860 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 18 states have internal predecessors, (25), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 29 [2022-04-15 12:52:07,861 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 12:52:07,861 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 19 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 18 states have internal predecessors, (25), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:07,912 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 29 edges. 29 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:52:07,913 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2022-04-15 12:52:07,913 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 12:52:07,913 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-04-15 12:52:07,913 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=74, Invalid=576, Unknown=0, NotChecked=0, Total=650 [2022-04-15 12:52:07,913 INFO L87 Difference]: Start difference. First operand 31 states and 34 transitions. Second operand has 19 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 18 states have internal predecessors, (25), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:11,874 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:52:11,874 INFO L93 Difference]: Finished difference Result 57 states and 63 transitions. [2022-04-15 12:52:11,874 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 25 states. [2022-04-15 12:52:11,875 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 18 states have internal predecessors, (25), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 29 [2022-04-15 12:52:11,875 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 12:52:11,875 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 18 states have internal predecessors, (25), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:11,876 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 50 transitions. [2022-04-15 12:52:11,876 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 18 states have internal predecessors, (25), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:11,876 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 25 states to 25 states and 50 transitions. [2022-04-15 12:52:11,876 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 25 states and 50 transitions. [2022-04-15 12:52:12,040 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-15 12:52:12,040 INFO L225 Difference]: With dead ends: 57 [2022-04-15 12:52:12,040 INFO L226 Difference]: Without dead ends: 31 [2022-04-15 12:52:12,041 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 102 GetRequests, 51 SyntacticMatches, 5 SemanticMatches, 46 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 309 ImplicationChecksByTransitivity, 2.4s TimeCoverageRelationStatistics Valid=264, Invalid=1992, Unknown=0, NotChecked=0, Total=2256 [2022-04-15 12:52:12,041 INFO L913 BasicCegarLoop]: 11 mSDtfsCounter, 28 mSDsluCounter, 72 mSDsCounter, 0 mSdLazyCounter, 337 mSolverCounterSat, 41 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 28 SdHoareTripleChecker+Valid, 83 SdHoareTripleChecker+Invalid, 378 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 41 IncrementalHoareTripleChecker+Valid, 337 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.0s IncrementalHoareTripleChecker+Time [2022-04-15 12:52:12,041 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [28 Valid, 83 Invalid, 378 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [41 Valid, 337 Invalid, 0 Unknown, 0 Unchecked, 1.0s Time] [2022-04-15 12:52:12,042 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 31 states. [2022-04-15 12:52:12,155 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 31 to 31. [2022-04-15 12:52:12,155 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 12:52:12,156 INFO L82 GeneralOperation]: Start isEquivalent. First operand 31 states. Second operand has 31 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 26 states have internal predecessors, (29), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:12,156 INFO L74 IsIncluded]: Start isIncluded. First operand 31 states. Second operand has 31 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 26 states have internal predecessors, (29), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:12,156 INFO L87 Difference]: Start difference. First operand 31 states. Second operand has 31 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 26 states have internal predecessors, (29), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:12,157 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:52:12,157 INFO L93 Difference]: Finished difference Result 31 states and 33 transitions. [2022-04-15 12:52:12,157 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 33 transitions. [2022-04-15 12:52:12,157 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:52:12,157 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:52:12,157 INFO L74 IsIncluded]: Start isIncluded. First operand has 31 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 26 states have internal predecessors, (29), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 31 states. [2022-04-15 12:52:12,157 INFO L87 Difference]: Start difference. First operand has 31 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 26 states have internal predecessors, (29), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 31 states. [2022-04-15 12:52:12,158 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:52:12,158 INFO L93 Difference]: Finished difference Result 31 states and 33 transitions. [2022-04-15 12:52:12,158 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 33 transitions. [2022-04-15 12:52:12,158 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:52:12,158 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:52:12,158 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 12:52:12,158 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 12:52:12,159 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 31 states, 26 states have (on average 1.1153846153846154) internal successors, (29), 26 states have internal predecessors, (29), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:12,159 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 31 states to 31 states and 33 transitions. [2022-04-15 12:52:12,159 INFO L78 Accepts]: Start accepts. Automaton has 31 states and 33 transitions. Word has length 29 [2022-04-15 12:52:12,159 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 12:52:12,159 INFO L478 AbstractCegarLoop]: Abstraction has 31 states and 33 transitions. [2022-04-15 12:52:12,159 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 18 states have internal predecessors, (25), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:12,160 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 31 states and 33 transitions. [2022-04-15 12:52:12,813 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:52:12,813 INFO L276 IsEmpty]: Start isEmpty. Operand 31 states and 33 transitions. [2022-04-15 12:52:12,813 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-04-15 12:52:12,813 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 12:52:12,813 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 12:52:12,829 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Forceful destruction successful, exit code 0 [2022-04-15 12:52:13,015 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable16,15 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:52:13,016 INFO L403 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 12:52:13,016 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 12:52:13,016 INFO L85 PathProgramCache]: Analyzing trace with hash 751514495, now seen corresponding path program 15 times [2022-04-15 12:52:13,016 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 12:52:13,016 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2091233120] [2022-04-15 12:52:13,161 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-15 12:52:13,162 INFO L85 PathProgramCache]: Analyzing trace with hash -126451776, now seen corresponding path program 1 times [2022-04-15 12:52:13,162 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 12:52:13,162 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1410570758] [2022-04-15 12:52:13,162 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:52:13,163 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 12:52:13,190 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:52:13,514 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 12:52:13,515 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:52:13,517 INFO L290 TraceCheckUtils]: 0: Hoare triple {5525#(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(10, 2);call #Ultimate.allocInit(12, 3); {5508#true} is VALID [2022-04-15 12:52:13,517 INFO L290 TraceCheckUtils]: 1: Hoare triple {5508#true} assume true; {5508#true} is VALID [2022-04-15 12:52:13,517 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {5508#true} {5508#true} #61#return; {5508#true} is VALID [2022-04-15 12:52:13,518 INFO L272 TraceCheckUtils]: 0: Hoare triple {5508#true} call ULTIMATE.init(); {5525#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 12:52:13,518 INFO L290 TraceCheckUtils]: 1: Hoare triple {5525#(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(10, 2);call #Ultimate.allocInit(12, 3); {5508#true} is VALID [2022-04-15 12:52:13,518 INFO L290 TraceCheckUtils]: 2: Hoare triple {5508#true} assume true; {5508#true} is VALID [2022-04-15 12:52:13,518 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5508#true} {5508#true} #61#return; {5508#true} is VALID [2022-04-15 12:52:13,518 INFO L272 TraceCheckUtils]: 4: Hoare triple {5508#true} call #t~ret11 := main(); {5508#true} is VALID [2022-04-15 12:52:13,518 INFO L290 TraceCheckUtils]: 5: Hoare triple {5508#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {5508#true} is VALID [2022-04-15 12:52:13,518 INFO L290 TraceCheckUtils]: 6: Hoare triple {5508#true} [97] L16-2-->L16-3_primed: Formula: (or (and (= |v_main_#t~post6_Out_34| 0) (< 0 (mod (+ v_main_~x~0_Out_34 1) 4294967296)) (<= v_main_~x~0_Out_34 v_main_~x~0_In_17) (= (+ v_main_~y~0_Out_34 v_main_~x~0_Out_34) (+ v_main_~x~0_In_17 v_main_~y~0_In_17)) (= |v_main_#t~post5_Out_34| 0)) (and (= v_main_~x~0_In_17 v_main_~x~0_Out_34) (= v_main_~y~0_In_17 v_main_~y~0_Out_34))) InVars {main_~x~0=v_main_~x~0_In_17, main_~y~0=v_main_~y~0_In_17} OutVars{main_~y~0=v_main_~y~0_Out_34, main_#t~post5=|v_main_#t~post5_Out_34|, main_~x~0=v_main_~x~0_Out_34, main_#t~post6=|v_main_#t~post6_Out_34|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {5508#true} is VALID [2022-04-15 12:52:13,518 INFO L290 TraceCheckUtils]: 7: Hoare triple {5508#true} [96] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {5508#true} is VALID [2022-04-15 12:52:13,518 INFO L290 TraceCheckUtils]: 8: Hoare triple {5508#true} ~z~0 := ~y~0; {5513#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} is VALID [2022-04-15 12:52:13,521 INFO L290 TraceCheckUtils]: 9: Hoare triple {5513#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5514#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} is VALID [2022-04-15 12:52:13,524 INFO L290 TraceCheckUtils]: 10: Hoare triple {5514#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5515#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} is VALID [2022-04-15 12:52:13,526 INFO L290 TraceCheckUtils]: 11: Hoare triple {5515#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5516#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} is VALID [2022-04-15 12:52:13,527 INFO L290 TraceCheckUtils]: 12: Hoare triple {5516#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5517#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} is VALID [2022-04-15 12:52:13,528 INFO L290 TraceCheckUtils]: 13: Hoare triple {5517#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5518#(and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))} is VALID [2022-04-15 12:52:13,530 INFO L290 TraceCheckUtils]: 14: Hoare triple {5518#(and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5519#(<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} is VALID [2022-04-15 12:52:13,531 INFO L290 TraceCheckUtils]: 15: Hoare triple {5519#(<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} assume !(~z~0 % 4294967296 > 0); {5519#(<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} is VALID [2022-04-15 12:52:13,534 INFO L290 TraceCheckUtils]: 16: Hoare triple {5519#(<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5520#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} is VALID [2022-04-15 12:52:13,537 INFO L290 TraceCheckUtils]: 17: Hoare triple {5520#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5521#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} is VALID [2022-04-15 12:52:13,540 INFO L290 TraceCheckUtils]: 18: Hoare triple {5521#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5522#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} is VALID [2022-04-15 12:52:13,542 INFO L290 TraceCheckUtils]: 19: Hoare triple {5522#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5523#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} is VALID [2022-04-15 12:52:13,544 INFO L290 TraceCheckUtils]: 20: Hoare triple {5523#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5524#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} is VALID [2022-04-15 12:52:13,565 INFO L290 TraceCheckUtils]: 21: Hoare triple {5524#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} assume !(~y~0 % 4294967296 > 0); {5509#false} is VALID [2022-04-15 12:52:13,565 INFO L272 TraceCheckUtils]: 22: Hoare triple {5509#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {5509#false} is VALID [2022-04-15 12:52:13,565 INFO L290 TraceCheckUtils]: 23: Hoare triple {5509#false} ~cond := #in~cond; {5509#false} is VALID [2022-04-15 12:52:13,565 INFO L290 TraceCheckUtils]: 24: Hoare triple {5509#false} assume 0 == ~cond; {5509#false} is VALID [2022-04-15 12:52:13,565 INFO L290 TraceCheckUtils]: 25: Hoare triple {5509#false} assume !false; {5509#false} is VALID [2022-04-15 12:52:13,565 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 0 proven. 36 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:52:13,566 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 12:52:13,566 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1410570758] [2022-04-15 12:52:13,566 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1410570758] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 12:52:13,566 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1146353523] [2022-04-15 12:52:13,566 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:52:13,566 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:52:13,566 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 12:52:13,568 INFO L229 MonitoredProcess]: Starting monitored process 16 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 12:52:13,569 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Waiting until timeout for monitored process [2022-04-15 12:52:13,602 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:52:13,604 INFO L263 TraceCheckSpWp]: Trace formula consists of 115 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-15 12:52:13,613 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:52:13,614 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 12:52:14,150 INFO L272 TraceCheckUtils]: 0: Hoare triple {5508#true} call ULTIMATE.init(); {5508#true} is VALID [2022-04-15 12:52:14,150 INFO L290 TraceCheckUtils]: 1: Hoare triple {5508#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(10, 2);call #Ultimate.allocInit(12, 3); {5508#true} is VALID [2022-04-15 12:52:14,150 INFO L290 TraceCheckUtils]: 2: Hoare triple {5508#true} assume true; {5508#true} is VALID [2022-04-15 12:52:14,150 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5508#true} {5508#true} #61#return; {5508#true} is VALID [2022-04-15 12:52:14,150 INFO L272 TraceCheckUtils]: 4: Hoare triple {5508#true} call #t~ret11 := main(); {5508#true} is VALID [2022-04-15 12:52:14,150 INFO L290 TraceCheckUtils]: 5: Hoare triple {5508#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {5508#true} is VALID [2022-04-15 12:52:14,150 INFO L290 TraceCheckUtils]: 6: Hoare triple {5508#true} [97] L16-2-->L16-3_primed: Formula: (or (and (= |v_main_#t~post6_Out_34| 0) (< 0 (mod (+ v_main_~x~0_Out_34 1) 4294967296)) (<= v_main_~x~0_Out_34 v_main_~x~0_In_17) (= (+ v_main_~y~0_Out_34 v_main_~x~0_Out_34) (+ v_main_~x~0_In_17 v_main_~y~0_In_17)) (= |v_main_#t~post5_Out_34| 0)) (and (= v_main_~x~0_In_17 v_main_~x~0_Out_34) (= v_main_~y~0_In_17 v_main_~y~0_Out_34))) InVars {main_~x~0=v_main_~x~0_In_17, main_~y~0=v_main_~y~0_In_17} OutVars{main_~y~0=v_main_~y~0_Out_34, main_#t~post5=|v_main_#t~post5_Out_34|, main_~x~0=v_main_~x~0_Out_34, main_#t~post6=|v_main_#t~post6_Out_34|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {5508#true} is VALID [2022-04-15 12:52:14,150 INFO L290 TraceCheckUtils]: 7: Hoare triple {5508#true} [96] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {5508#true} is VALID [2022-04-15 12:52:14,151 INFO L290 TraceCheckUtils]: 8: Hoare triple {5508#true} ~z~0 := ~y~0; {5513#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} is VALID [2022-04-15 12:52:14,153 INFO L290 TraceCheckUtils]: 9: Hoare triple {5513#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5514#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} is VALID [2022-04-15 12:52:14,156 INFO L290 TraceCheckUtils]: 10: Hoare triple {5514#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5515#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} is VALID [2022-04-15 12:52:14,157 INFO L290 TraceCheckUtils]: 11: Hoare triple {5515#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5516#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} is VALID [2022-04-15 12:52:14,158 INFO L290 TraceCheckUtils]: 12: Hoare triple {5516#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5517#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} is VALID [2022-04-15 12:52:14,159 INFO L290 TraceCheckUtils]: 13: Hoare triple {5517#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5518#(and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))} is VALID [2022-04-15 12:52:14,161 INFO L290 TraceCheckUtils]: 14: Hoare triple {5518#(and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5571#(and (<= (+ main_~z~0 6) main_~y~0) (< 0 (mod (+ main_~z~0 1) 4294967296)) (<= main_~y~0 (+ main_~z~0 6)))} is VALID [2022-04-15 12:52:14,162 INFO L290 TraceCheckUtils]: 15: Hoare triple {5571#(and (<= (+ main_~z~0 6) main_~y~0) (< 0 (mod (+ main_~z~0 1) 4294967296)) (<= main_~y~0 (+ main_~z~0 6)))} assume !(~z~0 % 4294967296 > 0); {5571#(and (<= (+ main_~z~0 6) main_~y~0) (< 0 (mod (+ main_~z~0 1) 4294967296)) (<= main_~y~0 (+ main_~z~0 6)))} is VALID [2022-04-15 12:52:14,165 INFO L290 TraceCheckUtils]: 16: Hoare triple {5571#(and (<= (+ main_~z~0 6) main_~y~0) (< 0 (mod (+ main_~z~0 1) 4294967296)) (<= main_~y~0 (+ main_~z~0 6)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5520#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} is VALID [2022-04-15 12:52:14,168 INFO L290 TraceCheckUtils]: 17: Hoare triple {5520#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5521#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} is VALID [2022-04-15 12:52:14,169 INFO L290 TraceCheckUtils]: 18: Hoare triple {5521#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5522#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} is VALID [2022-04-15 12:52:14,170 INFO L290 TraceCheckUtils]: 19: Hoare triple {5522#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5523#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} is VALID [2022-04-15 12:52:14,173 INFO L290 TraceCheckUtils]: 20: Hoare triple {5523#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5524#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} is VALID [2022-04-15 12:52:14,174 INFO L290 TraceCheckUtils]: 21: Hoare triple {5524#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} assume !(~y~0 % 4294967296 > 0); {5509#false} is VALID [2022-04-15 12:52:14,174 INFO L272 TraceCheckUtils]: 22: Hoare triple {5509#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {5509#false} is VALID [2022-04-15 12:52:14,174 INFO L290 TraceCheckUtils]: 23: Hoare triple {5509#false} ~cond := #in~cond; {5509#false} is VALID [2022-04-15 12:52:14,174 INFO L290 TraceCheckUtils]: 24: Hoare triple {5509#false} assume 0 == ~cond; {5509#false} is VALID [2022-04-15 12:52:14,174 INFO L290 TraceCheckUtils]: 25: Hoare triple {5509#false} assume !false; {5509#false} is VALID [2022-04-15 12:52:14,174 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 0 proven. 36 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:52:14,174 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 12:52:14,744 INFO L290 TraceCheckUtils]: 25: Hoare triple {5509#false} assume !false; {5509#false} is VALID [2022-04-15 12:52:14,744 INFO L290 TraceCheckUtils]: 24: Hoare triple {5509#false} assume 0 == ~cond; {5509#false} is VALID [2022-04-15 12:52:14,744 INFO L290 TraceCheckUtils]: 23: Hoare triple {5509#false} ~cond := #in~cond; {5509#false} is VALID [2022-04-15 12:52:14,744 INFO L272 TraceCheckUtils]: 22: Hoare triple {5509#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {5509#false} is VALID [2022-04-15 12:52:14,745 INFO L290 TraceCheckUtils]: 21: Hoare triple {5524#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} assume !(~y~0 % 4294967296 > 0); {5509#false} is VALID [2022-04-15 12:52:14,748 INFO L290 TraceCheckUtils]: 20: Hoare triple {5523#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5524#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} is VALID [2022-04-15 12:52:14,750 INFO L290 TraceCheckUtils]: 19: Hoare triple {5522#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5523#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} is VALID [2022-04-15 12:52:14,751 INFO L290 TraceCheckUtils]: 18: Hoare triple {5521#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5522#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} is VALID [2022-04-15 12:52:14,753 INFO L290 TraceCheckUtils]: 17: Hoare triple {5520#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5521#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} is VALID [2022-04-15 12:52:14,756 INFO L290 TraceCheckUtils]: 16: Hoare triple {5519#(<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5520#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} is VALID [2022-04-15 12:52:14,756 INFO L290 TraceCheckUtils]: 15: Hoare triple {5519#(<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} assume !(~z~0 % 4294967296 > 0); {5519#(<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} is VALID [2022-04-15 12:52:14,757 INFO L290 TraceCheckUtils]: 14: Hoare triple {5638#(or (<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296)))) (<= (mod main_~z~0 4294967296) 0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5519#(<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} is VALID [2022-04-15 12:52:14,760 INFO L290 TraceCheckUtils]: 13: Hoare triple {5642#(or (<= (mod (+ main_~z~0 4294967295) 4294967296) 0) (<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296)))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5638#(or (<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296)))) (<= (mod main_~z~0 4294967296) 0))} is VALID [2022-04-15 12:52:14,762 INFO L290 TraceCheckUtils]: 12: Hoare triple {5646#(or (<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296)))) (<= (mod (+ main_~z~0 4294967294) 4294967296) 0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5642#(or (<= (mod (+ main_~z~0 4294967295) 4294967296) 0) (<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296)))))} is VALID [2022-04-15 12:52:14,764 INFO L290 TraceCheckUtils]: 11: Hoare triple {5650#(or (<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296)))) (<= (mod (+ main_~z~0 4294967293) 4294967296) 0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5646#(or (<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296)))) (<= (mod (+ main_~z~0 4294967294) 4294967296) 0))} is VALID [2022-04-15 12:52:14,766 INFO L290 TraceCheckUtils]: 10: Hoare triple {5654#(or (<= (mod (+ 4294967292 main_~z~0) 4294967296) 0) (<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296)))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5650#(or (<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296)))) (<= (mod (+ main_~z~0 4294967293) 4294967296) 0))} is VALID [2022-04-15 12:52:14,769 INFO L290 TraceCheckUtils]: 9: Hoare triple {5658#(or (<= (mod (+ 4294967291 main_~z~0) 4294967296) 0) (<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296)))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5654#(or (<= (mod (+ 4294967292 main_~z~0) 4294967296) 0) (<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296)))))} is VALID [2022-04-15 12:52:14,770 INFO L290 TraceCheckUtils]: 8: Hoare triple {5508#true} ~z~0 := ~y~0; {5658#(or (<= (mod (+ 4294967291 main_~z~0) 4294967296) 0) (<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296)))))} is VALID [2022-04-15 12:52:14,771 INFO L290 TraceCheckUtils]: 7: Hoare triple {5508#true} [96] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {5508#true} is VALID [2022-04-15 12:52:14,771 INFO L290 TraceCheckUtils]: 6: Hoare triple {5508#true} [97] L16-2-->L16-3_primed: Formula: (or (and (= |v_main_#t~post6_Out_34| 0) (< 0 (mod (+ v_main_~x~0_Out_34 1) 4294967296)) (<= v_main_~x~0_Out_34 v_main_~x~0_In_17) (= (+ v_main_~y~0_Out_34 v_main_~x~0_Out_34) (+ v_main_~x~0_In_17 v_main_~y~0_In_17)) (= |v_main_#t~post5_Out_34| 0)) (and (= v_main_~x~0_In_17 v_main_~x~0_Out_34) (= v_main_~y~0_In_17 v_main_~y~0_Out_34))) InVars {main_~x~0=v_main_~x~0_In_17, main_~y~0=v_main_~y~0_In_17} OutVars{main_~y~0=v_main_~y~0_Out_34, main_#t~post5=|v_main_#t~post5_Out_34|, main_~x~0=v_main_~x~0_Out_34, main_#t~post6=|v_main_#t~post6_Out_34|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {5508#true} is VALID [2022-04-15 12:52:14,771 INFO L290 TraceCheckUtils]: 5: Hoare triple {5508#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {5508#true} is VALID [2022-04-15 12:52:14,771 INFO L272 TraceCheckUtils]: 4: Hoare triple {5508#true} call #t~ret11 := main(); {5508#true} is VALID [2022-04-15 12:52:14,771 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5508#true} {5508#true} #61#return; {5508#true} is VALID [2022-04-15 12:52:14,771 INFO L290 TraceCheckUtils]: 2: Hoare triple {5508#true} assume true; {5508#true} is VALID [2022-04-15 12:52:14,771 INFO L290 TraceCheckUtils]: 1: Hoare triple {5508#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(10, 2);call #Ultimate.allocInit(12, 3); {5508#true} is VALID [2022-04-15 12:52:14,771 INFO L272 TraceCheckUtils]: 0: Hoare triple {5508#true} call ULTIMATE.init(); {5508#true} is VALID [2022-04-15 12:52:14,771 INFO L134 CoverageAnalysis]: Checked inductivity of 36 backedges. 6 proven. 30 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:52:14,772 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1146353523] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 12:52:14,772 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 12:52:14,772 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [15, 14, 14] total 22 [2022-04-15 12:52:15,405 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 12:52:15,405 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2091233120] [2022-04-15 12:52:15,405 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2091233120] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 12:52:15,405 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 12:52:15,405 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [20] imperfect sequences [] total 20 [2022-04-15 12:52:15,405 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1203561986] [2022-04-15 12:52:15,405 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 12:52:15,406 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 20 states have (on average 1.3) internal successors, (26), 19 states have internal predecessors, (26), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 30 [2022-04-15 12:52:15,406 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 12:52:15,406 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 20 states, 20 states have (on average 1.3) internal successors, (26), 19 states have internal predecessors, (26), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:15,453 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:52:15,454 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 20 states [2022-04-15 12:52:15,454 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 12:52:15,454 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2022-04-15 12:52:15,454 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=80, Invalid=622, Unknown=0, NotChecked=0, Total=702 [2022-04-15 12:52:15,455 INFO L87 Difference]: Start difference. First operand 31 states and 33 transitions. Second operand has 20 states, 20 states have (on average 1.3) internal successors, (26), 19 states have internal predecessors, (26), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:20,834 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:52:20,834 INFO L93 Difference]: Finished difference Result 37 states and 39 transitions. [2022-04-15 12:52:20,834 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2022-04-15 12:52:20,834 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 20 states have (on average 1.3) internal successors, (26), 19 states have internal predecessors, (26), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 30 [2022-04-15 12:52:20,834 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 12:52:20,834 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 20 states have (on average 1.3) internal successors, (26), 19 states have internal predecessors, (26), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:20,835 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 39 transitions. [2022-04-15 12:52:20,835 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 20 states have (on average 1.3) internal successors, (26), 19 states have internal predecessors, (26), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:20,836 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 39 transitions. [2022-04-15 12:52:20,836 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 21 states and 39 transitions. [2022-04-15 12:52:21,222 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:52:21,223 INFO L225 Difference]: With dead ends: 37 [2022-04-15 12:52:21,223 INFO L226 Difference]: Without dead ends: 32 [2022-04-15 12:52:21,224 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 97 GetRequests, 48 SyntacticMatches, 6 SemanticMatches, 43 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 273 ImplicationChecksByTransitivity, 3.1s TimeCoverageRelationStatistics Valid=295, Invalid=1685, Unknown=0, NotChecked=0, Total=1980 [2022-04-15 12:52:21,224 INFO L913 BasicCegarLoop]: 14 mSDtfsCounter, 31 mSDsluCounter, 67 mSDsCounter, 0 mSdLazyCounter, 251 mSolverCounterSat, 70 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 31 SdHoareTripleChecker+Valid, 81 SdHoareTripleChecker+Invalid, 321 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 70 IncrementalHoareTripleChecker+Valid, 251 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.4s IncrementalHoareTripleChecker+Time [2022-04-15 12:52:21,224 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [31 Valid, 81 Invalid, 321 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [70 Valid, 251 Invalid, 0 Unknown, 0 Unchecked, 1.4s Time] [2022-04-15 12:52:21,225 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 32 states. [2022-04-15 12:52:21,337 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 32 to 32. [2022-04-15 12:52:21,337 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 12:52:21,337 INFO L82 GeneralOperation]: Start isEquivalent. First operand 32 states. Second operand has 32 states, 27 states have (on average 1.1111111111111112) internal successors, (30), 27 states have internal predecessors, (30), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:21,337 INFO L74 IsIncluded]: Start isIncluded. First operand 32 states. Second operand has 32 states, 27 states have (on average 1.1111111111111112) internal successors, (30), 27 states have internal predecessors, (30), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:21,337 INFO L87 Difference]: Start difference. First operand 32 states. Second operand has 32 states, 27 states have (on average 1.1111111111111112) internal successors, (30), 27 states have internal predecessors, (30), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:21,338 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:52:21,338 INFO L93 Difference]: Finished difference Result 32 states and 34 transitions. [2022-04-15 12:52:21,338 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 34 transitions. [2022-04-15 12:52:21,338 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:52:21,338 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:52:21,338 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 27 states have (on average 1.1111111111111112) internal successors, (30), 27 states have internal predecessors, (30), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 32 states. [2022-04-15 12:52:21,338 INFO L87 Difference]: Start difference. First operand has 32 states, 27 states have (on average 1.1111111111111112) internal successors, (30), 27 states have internal predecessors, (30), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 32 states. [2022-04-15 12:52:21,339 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:52:21,339 INFO L93 Difference]: Finished difference Result 32 states and 34 transitions. [2022-04-15 12:52:21,339 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 34 transitions. [2022-04-15 12:52:21,339 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:52:21,339 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:52:21,339 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 12:52:21,339 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 12:52:21,339 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 27 states have (on average 1.1111111111111112) internal successors, (30), 27 states have internal predecessors, (30), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:21,340 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 34 transitions. [2022-04-15 12:52:21,340 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 34 transitions. Word has length 30 [2022-04-15 12:52:21,340 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 12:52:21,340 INFO L478 AbstractCegarLoop]: Abstraction has 32 states and 34 transitions. [2022-04-15 12:52:21,340 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 20 states, 20 states have (on average 1.3) internal successors, (26), 19 states have internal predecessors, (26), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:21,340 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 32 states and 34 transitions. [2022-04-15 12:52:22,161 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:52:22,161 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 34 transitions. [2022-04-15 12:52:22,162 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-04-15 12:52:22,162 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 12:52:22,162 INFO L499 BasicCegarLoop]: trace histogram [6, 6, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 12:52:22,180 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Forceful destruction successful, exit code 0 [2022-04-15 12:52:22,362 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 16 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable17 [2022-04-15 12:52:22,363 INFO L403 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 12:52:22,363 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 12:52:22,363 INFO L85 PathProgramCache]: Analyzing trace with hash 1856607950, now seen corresponding path program 16 times [2022-04-15 12:52:22,363 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 12:52:22,363 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [920740464] [2022-04-15 12:52:22,512 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-15 12:52:22,513 INFO L85 PathProgramCache]: Analyzing trace with hash 14510701, now seen corresponding path program 1 times [2022-04-15 12:52:22,513 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 12:52:22,513 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [335137898] [2022-04-15 12:52:22,513 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:52:22,513 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 12:52:22,541 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:52:23,000 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 12:52:23,001 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:52:23,003 INFO L290 TraceCheckUtils]: 0: Hoare triple {5951#(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(10, 2);call #Ultimate.allocInit(12, 3); {5933#true} is VALID [2022-04-15 12:52:23,003 INFO L290 TraceCheckUtils]: 1: Hoare triple {5933#true} assume true; {5933#true} is VALID [2022-04-15 12:52:23,003 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {5933#true} {5933#true} #61#return; {5933#true} is VALID [2022-04-15 12:52:23,004 INFO L272 TraceCheckUtils]: 0: Hoare triple {5933#true} call ULTIMATE.init(); {5951#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 12:52:23,004 INFO L290 TraceCheckUtils]: 1: Hoare triple {5951#(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(10, 2);call #Ultimate.allocInit(12, 3); {5933#true} is VALID [2022-04-15 12:52:23,004 INFO L290 TraceCheckUtils]: 2: Hoare triple {5933#true} assume true; {5933#true} is VALID [2022-04-15 12:52:23,004 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5933#true} {5933#true} #61#return; {5933#true} is VALID [2022-04-15 12:52:23,004 INFO L272 TraceCheckUtils]: 4: Hoare triple {5933#true} call #t~ret11 := main(); {5933#true} is VALID [2022-04-15 12:52:23,005 INFO L290 TraceCheckUtils]: 5: Hoare triple {5933#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {5938#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} is VALID [2022-04-15 12:52:23,008 INFO L290 TraceCheckUtils]: 6: Hoare triple {5938#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} [99] L16-2-->L16-3_primed: Formula: (or (and (= |v_main_#t~post5_Out_36| 0) (= (+ v_main_~y~0_Out_36 v_main_~x~0_Out_36) (+ v_main_~x~0_In_18 v_main_~y~0_In_18)) (<= v_main_~x~0_Out_36 v_main_~x~0_In_18) (< 0 (mod (+ v_main_~x~0_Out_36 1) 4294967296)) (= |v_main_#t~post6_Out_36| 0)) (and (= v_main_~x~0_In_18 v_main_~x~0_Out_36) (= v_main_~y~0_In_18 v_main_~y~0_Out_36))) InVars {main_~x~0=v_main_~x~0_In_18, main_~y~0=v_main_~y~0_In_18} OutVars{main_~y~0=v_main_~y~0_Out_36, main_#t~post5=|v_main_#t~post5_Out_36|, main_~x~0=v_main_~x~0_Out_36, main_#t~post6=|v_main_#t~post6_Out_36|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {5939#(or (and (<= 0 main_~y~0) (<= main_~y~0 0)) (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= (+ main_~y~0 main_~x~0) main_~n~0) (<= main_~n~0 (+ main_~y~0 main_~x~0))))} is VALID [2022-04-15 12:52:23,010 INFO L290 TraceCheckUtils]: 7: Hoare triple {5939#(or (and (<= 0 main_~y~0) (<= main_~y~0 0)) (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= (+ main_~y~0 main_~x~0) main_~n~0) (<= main_~n~0 (+ main_~y~0 main_~x~0))))} [98] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {5940#(or (and (<= 0 main_~y~0) (<= main_~y~0 0)) (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~y~0 (* 4294967296 (div main_~x~0 4294967296))))))} is VALID [2022-04-15 12:52:23,012 INFO L290 TraceCheckUtils]: 8: Hoare triple {5940#(or (and (<= 0 main_~y~0) (<= main_~y~0 0)) (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~y~0 (* 4294967296 (div main_~x~0 4294967296))))))} ~z~0 := ~y~0; {5941#(or (and (<= main_~z~0 0) (<= 0 main_~z~0)) (and (<= (+ main_~z~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~z~0 (* 4294967296 (div main_~x~0 4294967296))))))} is VALID [2022-04-15 12:52:23,014 INFO L290 TraceCheckUtils]: 9: Hoare triple {5941#(or (and (<= main_~z~0 0) (<= 0 main_~z~0)) (and (<= (+ main_~z~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~z~0 (* 4294967296 (div main_~x~0 4294967296))))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5942#(<= main_~n~0 (+ main_~z~0 (* (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296) 1))} is VALID [2022-04-15 12:52:23,017 INFO L290 TraceCheckUtils]: 10: Hoare triple {5942#(<= main_~n~0 (+ main_~z~0 (* (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296) 1))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5943#(<= main_~n~0 (+ main_~z~0 2 (* (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:52:23,019 INFO L290 TraceCheckUtils]: 11: Hoare triple {5943#(<= main_~n~0 (+ main_~z~0 2 (* (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5944#(<= main_~n~0 (+ main_~z~0 3 (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296))))} is VALID [2022-04-15 12:52:23,021 INFO L290 TraceCheckUtils]: 12: Hoare triple {5944#(<= main_~n~0 (+ main_~z~0 3 (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5945#(<= main_~n~0 (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296) 4294967296) 4))} is VALID [2022-04-15 12:52:23,022 INFO L290 TraceCheckUtils]: 13: Hoare triple {5945#(<= main_~n~0 (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296) 4294967296) 4))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5946#(<= main_~n~0 (+ 5 main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 5)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:52:23,025 INFO L290 TraceCheckUtils]: 14: Hoare triple {5946#(<= main_~n~0 (+ 5 main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 5)) 4294967296) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5947#(<= main_~n~0 (+ main_~z~0 6 (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 6)) 4294967296))))} is VALID [2022-04-15 12:52:23,025 INFO L290 TraceCheckUtils]: 15: Hoare triple {5947#(<= main_~n~0 (+ main_~z~0 6 (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 6)) 4294967296))))} assume !(~z~0 % 4294967296 > 0); {5947#(<= main_~n~0 (+ main_~z~0 6 (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 6)) 4294967296))))} is VALID [2022-04-15 12:52:23,027 INFO L290 TraceCheckUtils]: 16: Hoare triple {5947#(<= main_~n~0 (+ main_~z~0 6 (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 6)) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5946#(<= main_~n~0 (+ 5 main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 5)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:52:23,029 INFO L290 TraceCheckUtils]: 17: Hoare triple {5946#(<= main_~n~0 (+ 5 main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 5)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5945#(<= main_~n~0 (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296) 4294967296) 4))} is VALID [2022-04-15 12:52:23,031 INFO L290 TraceCheckUtils]: 18: Hoare triple {5945#(<= main_~n~0 (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296) 4294967296) 4))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5944#(<= main_~n~0 (+ main_~z~0 3 (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296))))} is VALID [2022-04-15 12:52:23,032 INFO L290 TraceCheckUtils]: 19: Hoare triple {5944#(<= main_~n~0 (+ main_~z~0 3 (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5943#(<= main_~n~0 (+ main_~z~0 2 (* (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:52:23,034 INFO L290 TraceCheckUtils]: 20: Hoare triple {5943#(<= main_~n~0 (+ main_~z~0 2 (* (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5942#(<= main_~n~0 (+ main_~z~0 (* (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296) 1))} is VALID [2022-04-15 12:52:23,036 INFO L290 TraceCheckUtils]: 21: Hoare triple {5942#(<= main_~n~0 (+ main_~z~0 (* (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296) 1))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5948#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:52:23,037 INFO L290 TraceCheckUtils]: 22: Hoare triple {5948#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} assume !(~y~0 % 4294967296 > 0); {5948#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:52:23,038 INFO L272 TraceCheckUtils]: 23: Hoare triple {5948#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {5949#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 12:52:23,039 INFO L290 TraceCheckUtils]: 24: Hoare triple {5949#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {5950#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 12:52:23,039 INFO L290 TraceCheckUtils]: 25: Hoare triple {5950#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {5934#false} is VALID [2022-04-15 12:52:23,039 INFO L290 TraceCheckUtils]: 26: Hoare triple {5934#false} assume !false; {5934#false} is VALID [2022-04-15 12:52:23,039 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 0 proven. 42 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:52:23,039 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 12:52:23,039 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [335137898] [2022-04-15 12:52:23,039 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [335137898] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 12:52:23,040 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [722407823] [2022-04-15 12:52:23,040 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:52:23,040 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:52:23,040 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 12:52:23,041 INFO L229 MonitoredProcess]: Starting monitored process 17 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 12:52:23,044 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Waiting until timeout for monitored process [2022-04-15 12:52:23,150 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:52:23,151 INFO L263 TraceCheckSpWp]: Trace formula consists of 120 conjuncts, 41 conjunts are in the unsatisfiable core [2022-04-15 12:52:23,167 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:52:23,168 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 12:52:45,491 INFO L272 TraceCheckUtils]: 0: Hoare triple {5933#true} call ULTIMATE.init(); {5933#true} is VALID [2022-04-15 12:52:45,491 INFO L290 TraceCheckUtils]: 1: Hoare triple {5933#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(10, 2);call #Ultimate.allocInit(12, 3); {5933#true} is VALID [2022-04-15 12:52:45,491 INFO L290 TraceCheckUtils]: 2: Hoare triple {5933#true} assume true; {5933#true} is VALID [2022-04-15 12:52:45,491 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5933#true} {5933#true} #61#return; {5933#true} is VALID [2022-04-15 12:52:45,491 INFO L272 TraceCheckUtils]: 4: Hoare triple {5933#true} call #t~ret11 := main(); {5933#true} is VALID [2022-04-15 12:52:45,492 INFO L290 TraceCheckUtils]: 5: Hoare triple {5933#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {5938#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} is VALID [2022-04-15 12:52:45,495 INFO L290 TraceCheckUtils]: 6: Hoare triple {5938#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} [99] L16-2-->L16-3_primed: Formula: (or (and (= |v_main_#t~post5_Out_36| 0) (= (+ v_main_~y~0_Out_36 v_main_~x~0_Out_36) (+ v_main_~x~0_In_18 v_main_~y~0_In_18)) (<= v_main_~x~0_Out_36 v_main_~x~0_In_18) (< 0 (mod (+ v_main_~x~0_Out_36 1) 4294967296)) (= |v_main_#t~post6_Out_36| 0)) (and (= v_main_~x~0_In_18 v_main_~x~0_Out_36) (= v_main_~y~0_In_18 v_main_~y~0_Out_36))) InVars {main_~x~0=v_main_~x~0_In_18, main_~y~0=v_main_~y~0_In_18} OutVars{main_~y~0=v_main_~y~0_Out_36, main_#t~post5=|v_main_#t~post5_Out_36|, main_~x~0=v_main_~x~0_Out_36, main_#t~post6=|v_main_#t~post6_Out_36|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {5973#(or (and (< 0 (mod (+ main_~x~0 1) 4294967296)) (<= main_~x~0 main_~n~0) (= main_~n~0 (+ main_~y~0 main_~x~0))) (and (= main_~n~0 main_~x~0) (= main_~y~0 0)))} is VALID [2022-04-15 12:52:45,498 INFO L290 TraceCheckUtils]: 7: Hoare triple {5973#(or (and (< 0 (mod (+ main_~x~0 1) 4294967296)) (<= main_~x~0 main_~n~0) (= main_~n~0 (+ main_~y~0 main_~x~0))) (and (= main_~n~0 main_~x~0) (= main_~y~0 0)))} [98] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {5977#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} is VALID [2022-04-15 12:52:45,499 INFO L290 TraceCheckUtils]: 8: Hoare triple {5977#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} ~z~0 := ~y~0; {5981#(and (<= 0 main_~y~0) (= main_~z~0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} is VALID [2022-04-15 12:52:45,499 INFO L290 TraceCheckUtils]: 9: Hoare triple {5981#(and (<= 0 main_~y~0) (= main_~z~0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5985#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= main_~y~0 (+ main_~z~0 1)) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:52:45,503 INFO L290 TraceCheckUtils]: 10: Hoare triple {5985#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= main_~y~0 (+ main_~z~0 1)) (< 0 (mod main_~y~0 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5989#(and (<= 0 main_~y~0) (= main_~y~0 (+ main_~z~0 2)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:52:45,505 INFO L290 TraceCheckUtils]: 11: Hoare triple {5989#(and (<= 0 main_~y~0) (= main_~y~0 (+ main_~z~0 2)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5993#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= main_~y~0 (+ main_~z~0 3)) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:52:45,506 INFO L290 TraceCheckUtils]: 12: Hoare triple {5993#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= main_~y~0 (+ main_~z~0 3)) (< 0 (mod main_~y~0 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {5997#(and (<= 0 main_~y~0) (= (+ main_~y~0 (- 3)) (+ main_~z~0 1)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:52:45,508 INFO L290 TraceCheckUtils]: 13: Hoare triple {5997#(and (<= 0 main_~y~0) (= (+ main_~y~0 (- 3)) (+ main_~z~0 1)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6001#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= (+ main_~y~0 (- 4)) (+ main_~z~0 1)) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:52:45,511 INFO L290 TraceCheckUtils]: 14: Hoare triple {6001#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= (+ main_~y~0 (- 4)) (+ main_~z~0 1)) (< 0 (mod main_~y~0 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6005#(and (<= 0 main_~y~0) (= (+ main_~y~0 (- 5)) (+ main_~z~0 1)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:52:45,512 INFO L290 TraceCheckUtils]: 15: Hoare triple {6005#(and (<= 0 main_~y~0) (= (+ main_~y~0 (- 5)) (+ main_~z~0 1)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} assume !(~z~0 % 4294967296 > 0); {6009#(and (<= 0 main_~y~0) (= main_~y~0 (+ main_~z~0 6)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (<= (mod main_~z~0 4294967296) 0))} is VALID [2022-04-15 12:52:45,516 INFO L290 TraceCheckUtils]: 16: Hoare triple {6009#(and (<= 0 main_~y~0) (= main_~y~0 (+ main_~z~0 6)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (<= (mod main_~z~0 4294967296) 0))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6013#(and (<= (div (+ 5 main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 5)) 4294967296)) (= (+ 5 main_~z~0) (+ main_~y~0 1)) (<= (mod (+ main_~z~0 4294967295) 4294967296) 0) (<= 0 (+ 5 main_~z~0)))} is VALID [2022-04-15 12:52:45,519 INFO L290 TraceCheckUtils]: 17: Hoare triple {6013#(and (<= (div (+ 5 main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 5)) 4294967296)) (= (+ 5 main_~z~0) (+ main_~y~0 1)) (<= (mod (+ main_~z~0 4294967295) 4294967296) 0) (<= 0 (+ 5 main_~z~0)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6017#(and (<= (mod (+ main_~z~0 4294967294) 4294967296) 0) (<= (div (+ main_~z~0 4 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296)) (<= 0 (+ main_~z~0 4)))} is VALID [2022-04-15 12:52:45,522 INFO L290 TraceCheckUtils]: 18: Hoare triple {6017#(and (<= (mod (+ main_~z~0 4294967294) 4294967296) 0) (<= (div (+ main_~z~0 4 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296)) (<= 0 (+ main_~z~0 4)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6021#(and (<= 0 (+ main_~z~0 3)) (<= (div (+ main_~z~0 3 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296)) (<= (mod (+ main_~z~0 4294967293) 4294967296) 0))} is VALID [2022-04-15 12:52:45,525 INFO L290 TraceCheckUtils]: 19: Hoare triple {6021#(and (<= 0 (+ main_~z~0 3)) (<= (div (+ main_~z~0 3 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296)) (<= (mod (+ main_~z~0 4294967293) 4294967296) 0))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6025#(and (<= 0 (+ main_~z~0 2)) (<= (div (+ main_~z~0 2 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296)) (<= (mod (+ 4294967292 main_~z~0) 4294967296) 0))} is VALID [2022-04-15 12:52:45,528 INFO L290 TraceCheckUtils]: 20: Hoare triple {6025#(and (<= 0 (+ main_~z~0 2)) (<= (div (+ main_~z~0 2 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296)) (<= (mod (+ 4294967292 main_~z~0) 4294967296) 0))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6029#(and (<= 0 (+ main_~z~0 1)) (<= (mod (+ 4294967291 main_~z~0) 4294967296) 0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0) 1) (- 4294967296)) (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} is VALID [2022-04-15 12:52:45,530 INFO L290 TraceCheckUtils]: 21: Hoare triple {6029#(and (<= 0 (+ main_~z~0 1)) (<= (mod (+ 4294967291 main_~z~0) 4294967296) 0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0) 1) (- 4294967296)) (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6033#(and (<= (mod (+ 4294967290 main_~z~0) 4294967296) 0) (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} is VALID [2022-04-15 12:52:45,530 INFO L290 TraceCheckUtils]: 22: Hoare triple {6033#(and (<= (mod (+ 4294967290 main_~z~0) 4294967296) 0) (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} assume !(~y~0 % 4294967296 > 0); {6033#(and (<= (mod (+ 4294967290 main_~z~0) 4294967296) 0) (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} is VALID [2022-04-15 12:52:45,534 INFO L272 TraceCheckUtils]: 23: Hoare triple {6033#(and (<= (mod (+ 4294967290 main_~z~0) 4294967296) 0) (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {6040#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 12:52:45,535 INFO L290 TraceCheckUtils]: 24: Hoare triple {6040#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6044#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 12:52:45,535 INFO L290 TraceCheckUtils]: 25: Hoare triple {6044#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5934#false} is VALID [2022-04-15 12:52:45,535 INFO L290 TraceCheckUtils]: 26: Hoare triple {5934#false} assume !false; {5934#false} is VALID [2022-04-15 12:52:45,535 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 0 proven. 42 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:52:45,536 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 12:52:48,630 INFO L290 TraceCheckUtils]: 26: Hoare triple {5934#false} assume !false; {5934#false} is VALID [2022-04-15 12:52:48,631 INFO L290 TraceCheckUtils]: 25: Hoare triple {6044#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {5934#false} is VALID [2022-04-15 12:52:48,631 INFO L290 TraceCheckUtils]: 24: Hoare triple {6040#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {6044#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 12:52:48,632 INFO L272 TraceCheckUtils]: 23: Hoare triple {5948#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {6040#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 12:52:48,632 INFO L290 TraceCheckUtils]: 22: Hoare triple {5948#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} assume !(~y~0 % 4294967296 > 0); {5948#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:52:48,636 INFO L290 TraceCheckUtils]: 21: Hoare triple {5942#(<= main_~n~0 (+ main_~z~0 (* (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296) 1))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5948#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:52:48,638 INFO L290 TraceCheckUtils]: 20: Hoare triple {5943#(<= main_~n~0 (+ main_~z~0 2 (* (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5942#(<= main_~n~0 (+ main_~z~0 (* (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296) 1))} is VALID [2022-04-15 12:52:48,641 INFO L290 TraceCheckUtils]: 19: Hoare triple {5944#(<= main_~n~0 (+ main_~z~0 3 (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5943#(<= main_~n~0 (+ main_~z~0 2 (* (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:52:48,642 INFO L290 TraceCheckUtils]: 18: Hoare triple {5945#(<= main_~n~0 (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296) 4294967296) 4))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5944#(<= main_~n~0 (+ main_~z~0 3 (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296))))} is VALID [2022-04-15 12:52:48,644 INFO L290 TraceCheckUtils]: 17: Hoare triple {5946#(<= main_~n~0 (+ 5 main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 5)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5945#(<= main_~n~0 (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296) 4294967296) 4))} is VALID [2022-04-15 12:52:48,646 INFO L290 TraceCheckUtils]: 16: Hoare triple {5947#(<= main_~n~0 (+ main_~z~0 6 (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 6)) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {5946#(<= main_~n~0 (+ 5 main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 5)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:52:48,646 INFO L290 TraceCheckUtils]: 15: Hoare triple {6084#(or (< 0 (mod main_~z~0 4294967296)) (<= main_~n~0 (+ main_~z~0 6 (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 6)) 4294967296)))))} assume !(~z~0 % 4294967296 > 0); {5947#(<= main_~n~0 (+ main_~z~0 6 (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 6)) 4294967296))))} is VALID [2022-04-15 12:52:48,650 INFO L290 TraceCheckUtils]: 14: Hoare triple {6088#(or (< 0 (mod (+ main_~z~0 4294967295) 4294967296)) (<= main_~n~0 (+ 5 main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 5)) 4294967296) 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6084#(or (< 0 (mod main_~z~0 4294967296)) (<= main_~n~0 (+ main_~z~0 6 (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 6)) 4294967296)))))} is VALID [2022-04-15 12:52:48,653 INFO L290 TraceCheckUtils]: 13: Hoare triple {6092#(or (< 0 (mod (+ main_~z~0 4294967294) 4294967296)) (<= main_~n~0 (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296) 4294967296) 4)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6088#(or (< 0 (mod (+ main_~z~0 4294967295) 4294967296)) (<= main_~n~0 (+ 5 main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 5)) 4294967296) 4294967296))))} is VALID [2022-04-15 12:52:48,657 INFO L290 TraceCheckUtils]: 12: Hoare triple {6096#(or (<= main_~n~0 (+ main_~z~0 3 (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296)))) (< 0 (mod (+ main_~z~0 4294967293) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6092#(or (< 0 (mod (+ main_~z~0 4294967294) 4294967296)) (<= main_~n~0 (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296) 4294967296) 4)))} is VALID [2022-04-15 12:52:48,660 INFO L290 TraceCheckUtils]: 11: Hoare triple {6100#(or (< 0 (mod (+ 4294967292 main_~z~0) 4294967296)) (<= main_~n~0 (+ main_~z~0 2 (* (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6096#(or (<= main_~n~0 (+ main_~z~0 3 (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296)))) (< 0 (mod (+ main_~z~0 4294967293) 4294967296)))} is VALID [2022-04-15 12:52:48,662 INFO L290 TraceCheckUtils]: 10: Hoare triple {6104#(or (< 0 (mod (+ 4294967291 main_~z~0) 4294967296)) (<= main_~n~0 (+ main_~z~0 (* (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296) 1)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6100#(or (< 0 (mod (+ 4294967292 main_~z~0) 4294967296)) (<= main_~n~0 (+ main_~z~0 2 (* (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296))))} is VALID [2022-04-15 12:52:48,667 INFO L290 TraceCheckUtils]: 9: Hoare triple {6108#(or (<= main_~n~0 (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296))) (< 0 (mod (+ 4294967290 main_~z~0) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6104#(or (< 0 (mod (+ 4294967291 main_~z~0) 4294967296)) (<= main_~n~0 (+ main_~z~0 (* (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296) 1)))} is VALID [2022-04-15 12:52:48,668 INFO L290 TraceCheckUtils]: 8: Hoare triple {6112#(or (<= main_~n~0 (+ (* (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296) 4294967296) main_~y~0)) (< 0 (mod (+ 4294967290 main_~y~0) 4294967296)))} ~z~0 := ~y~0; {6108#(or (<= main_~n~0 (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296))) (< 0 (mod (+ 4294967290 main_~z~0) 4294967296)))} is VALID [2022-04-15 12:52:48,668 INFO L290 TraceCheckUtils]: 7: Hoare triple {6116#(or (<= main_~n~0 (+ (* (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296) 4294967296) main_~y~0)) (< 0 (mod main_~x~0 4294967296)) (< 0 (mod (+ 4294967290 main_~y~0) 4294967296)))} [98] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {6112#(or (<= main_~n~0 (+ (* (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296) 4294967296) main_~y~0)) (< 0 (mod (+ 4294967290 main_~y~0) 4294967296)))} is VALID [2022-04-15 12:52:48,678 INFO L290 TraceCheckUtils]: 6: Hoare triple {6120#(or (< (div (+ (- 4294967291) (* (- 1) main_~x~0) (* (- 1) main_~y~0)) (- 4294967296)) (+ (div (+ main_~y~0 main_~x~0 4294967289) 4294967296) 2)) (<= (div (+ (- 4294967290) (* (- 1) main_~n~0)) (- 4294967296)) (+ (div (+ main_~n~0 (- 6)) 4294967296) 1)))} [99] L16-2-->L16-3_primed: Formula: (or (and (= |v_main_#t~post5_Out_36| 0) (= (+ v_main_~y~0_Out_36 v_main_~x~0_Out_36) (+ v_main_~x~0_In_18 v_main_~y~0_In_18)) (<= v_main_~x~0_Out_36 v_main_~x~0_In_18) (< 0 (mod (+ v_main_~x~0_Out_36 1) 4294967296)) (= |v_main_#t~post6_Out_36| 0)) (and (= v_main_~x~0_In_18 v_main_~x~0_Out_36) (= v_main_~y~0_In_18 v_main_~y~0_Out_36))) InVars {main_~x~0=v_main_~x~0_In_18, main_~y~0=v_main_~y~0_In_18} OutVars{main_~y~0=v_main_~y~0_Out_36, main_#t~post5=|v_main_#t~post5_Out_36|, main_~x~0=v_main_~x~0_Out_36, main_#t~post6=|v_main_#t~post6_Out_36|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {6116#(or (<= main_~n~0 (+ (* (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296) 4294967296) main_~y~0)) (< 0 (mod main_~x~0 4294967296)) (< 0 (mod (+ 4294967290 main_~y~0) 4294967296)))} is VALID [2022-04-15 12:52:48,681 INFO L290 TraceCheckUtils]: 5: Hoare triple {5933#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {6120#(or (< (div (+ (- 4294967291) (* (- 1) main_~x~0) (* (- 1) main_~y~0)) (- 4294967296)) (+ (div (+ main_~y~0 main_~x~0 4294967289) 4294967296) 2)) (<= (div (+ (- 4294967290) (* (- 1) main_~n~0)) (- 4294967296)) (+ (div (+ main_~n~0 (- 6)) 4294967296) 1)))} is VALID [2022-04-15 12:52:48,681 INFO L272 TraceCheckUtils]: 4: Hoare triple {5933#true} call #t~ret11 := main(); {5933#true} is VALID [2022-04-15 12:52:48,681 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5933#true} {5933#true} #61#return; {5933#true} is VALID [2022-04-15 12:52:48,682 INFO L290 TraceCheckUtils]: 2: Hoare triple {5933#true} assume true; {5933#true} is VALID [2022-04-15 12:52:48,682 INFO L290 TraceCheckUtils]: 1: Hoare triple {5933#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(10, 2);call #Ultimate.allocInit(12, 3); {5933#true} is VALID [2022-04-15 12:52:48,682 INFO L272 TraceCheckUtils]: 0: Hoare triple {5933#true} call ULTIMATE.init(); {5933#true} is VALID [2022-04-15 12:52:48,682 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 0 proven. 42 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:52:48,682 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [722407823] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 12:52:48,682 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 12:52:48,685 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [16, 21, 21] total 44 [2022-04-15 12:52:51,473 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 12:52:51,473 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [920740464] [2022-04-15 12:52:51,473 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [920740464] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 12:52:51,473 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 12:52:51,473 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [20] imperfect sequences [] total 20 [2022-04-15 12:52:51,473 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1613393016] [2022-04-15 12:52:51,473 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 12:52:51,474 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 20 states have (on average 1.35) internal successors, (27), 18 states have internal predecessors, (27), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 31 [2022-04-15 12:52:51,474 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 12:52:51,474 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 20 states, 20 states have (on average 1.35) internal successors, (27), 18 states have internal predecessors, (27), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:51,622 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:52:51,623 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 20 states [2022-04-15 12:52:51,623 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 12:52:51,623 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 20 interpolants. [2022-04-15 12:52:51,624 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=272, Invalid=2178, Unknown=0, NotChecked=0, Total=2450 [2022-04-15 12:52:51,624 INFO L87 Difference]: Start difference. First operand 32 states and 34 transitions. Second operand has 20 states, 20 states have (on average 1.35) internal successors, (27), 18 states have internal predecessors, (27), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:59,344 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:52:59,344 INFO L93 Difference]: Finished difference Result 45 states and 48 transitions. [2022-04-15 12:52:59,344 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 21 states. [2022-04-15 12:52:59,344 INFO L78 Accepts]: Start accepts. Automaton has has 20 states, 20 states have (on average 1.35) internal successors, (27), 18 states have internal predecessors, (27), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 31 [2022-04-15 12:52:59,344 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 12:52:59,344 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 20 states have (on average 1.35) internal successors, (27), 18 states have internal predecessors, (27), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:59,345 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 42 transitions. [2022-04-15 12:52:59,345 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 20 states have (on average 1.35) internal successors, (27), 18 states have internal predecessors, (27), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:59,346 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 21 states to 21 states and 42 transitions. [2022-04-15 12:52:59,346 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 21 states and 42 transitions. [2022-04-15 12:52:59,500 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:52:59,501 INFO L225 Difference]: With dead ends: 45 [2022-04-15 12:52:59,501 INFO L226 Difference]: Without dead ends: 40 [2022-04-15 12:52:59,502 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 100 GetRequests, 30 SyntacticMatches, 4 SemanticMatches, 66 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1204 ImplicationChecksByTransitivity, 8.4s TimeCoverageRelationStatistics Valid=441, Invalid=4115, Unknown=0, NotChecked=0, Total=4556 [2022-04-15 12:52:59,502 INFO L913 BasicCegarLoop]: 10 mSDtfsCounter, 21 mSDsluCounter, 77 mSDsCounter, 0 mSdLazyCounter, 422 mSolverCounterSat, 18 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 21 SdHoareTripleChecker+Valid, 87 SdHoareTripleChecker+Invalid, 440 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 18 IncrementalHoareTripleChecker+Valid, 422 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.8s IncrementalHoareTripleChecker+Time [2022-04-15 12:52:59,502 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [21 Valid, 87 Invalid, 440 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [18 Valid, 422 Invalid, 0 Unknown, 0 Unchecked, 1.8s Time] [2022-04-15 12:52:59,503 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2022-04-15 12:52:59,635 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 34. [2022-04-15 12:52:59,636 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 12:52:59,636 INFO L82 GeneralOperation]: Start isEquivalent. First operand 40 states. Second operand has 34 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 29 states have internal predecessors, (33), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:59,636 INFO L74 IsIncluded]: Start isIncluded. First operand 40 states. Second operand has 34 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 29 states have internal predecessors, (33), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:59,636 INFO L87 Difference]: Start difference. First operand 40 states. Second operand has 34 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 29 states have internal predecessors, (33), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:59,636 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:52:59,637 INFO L93 Difference]: Finished difference Result 40 states and 43 transitions. [2022-04-15 12:52:59,637 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 43 transitions. [2022-04-15 12:52:59,637 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:52:59,637 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:52:59,637 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 29 states have internal predecessors, (33), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 40 states. [2022-04-15 12:52:59,637 INFO L87 Difference]: Start difference. First operand has 34 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 29 states have internal predecessors, (33), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 40 states. [2022-04-15 12:52:59,637 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:52:59,638 INFO L93 Difference]: Finished difference Result 40 states and 43 transitions. [2022-04-15 12:52:59,638 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 43 transitions. [2022-04-15 12:52:59,638 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:52:59,638 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:52:59,638 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 12:52:59,638 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 12:52:59,638 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 29 states have (on average 1.1379310344827587) internal successors, (33), 29 states have internal predecessors, (33), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:59,638 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 37 transitions. [2022-04-15 12:52:59,638 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 37 transitions. Word has length 31 [2022-04-15 12:52:59,639 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 12:52:59,639 INFO L478 AbstractCegarLoop]: Abstraction has 34 states and 37 transitions. [2022-04-15 12:52:59,639 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 20 states, 20 states have (on average 1.35) internal successors, (27), 18 states have internal predecessors, (27), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:52:59,639 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 34 states and 37 transitions. [2022-04-15 12:53:00,889 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-15 12:53:00,890 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 37 transitions. [2022-04-15 12:53:00,890 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 33 [2022-04-15 12:53:00,890 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 12:53:00,890 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 12:53:00,905 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Forceful destruction successful, exit code 0 [2022-04-15 12:53:01,090 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable18,17 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:53:01,091 INFO L403 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 12:53:01,091 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 12:53:01,091 INFO L85 PathProgramCache]: Analyzing trace with hash 1754766687, now seen corresponding path program 17 times [2022-04-15 12:53:01,091 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 12:53:01,091 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [107410854] [2022-04-15 12:53:01,236 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-15 12:53:01,237 INFO L85 PathProgramCache]: Analyzing trace with hash 1125883360, now seen corresponding path program 1 times [2022-04-15 12:53:01,238 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 12:53:01,238 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1683559065] [2022-04-15 12:53:01,238 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:53:01,238 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 12:53:01,256 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:53:01,674 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 12:53:01,675 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:53:01,681 INFO L290 TraceCheckUtils]: 0: Hoare triple {6440#(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(10, 2);call #Ultimate.allocInit(12, 3); {6421#true} is VALID [2022-04-15 12:53:01,681 INFO L290 TraceCheckUtils]: 1: Hoare triple {6421#true} assume true; {6421#true} is VALID [2022-04-15 12:53:01,681 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {6421#true} {6421#true} #61#return; {6421#true} is VALID [2022-04-15 12:53:01,682 INFO L272 TraceCheckUtils]: 0: Hoare triple {6421#true} call ULTIMATE.init(); {6440#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 12:53:01,682 INFO L290 TraceCheckUtils]: 1: Hoare triple {6440#(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(10, 2);call #Ultimate.allocInit(12, 3); {6421#true} is VALID [2022-04-15 12:53:01,682 INFO L290 TraceCheckUtils]: 2: Hoare triple {6421#true} assume true; {6421#true} is VALID [2022-04-15 12:53:01,682 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6421#true} {6421#true} #61#return; {6421#true} is VALID [2022-04-15 12:53:01,682 INFO L272 TraceCheckUtils]: 4: Hoare triple {6421#true} call #t~ret11 := main(); {6421#true} is VALID [2022-04-15 12:53:01,682 INFO L290 TraceCheckUtils]: 5: Hoare triple {6421#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {6421#true} is VALID [2022-04-15 12:53:01,682 INFO L290 TraceCheckUtils]: 6: Hoare triple {6421#true} [101] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~x~0_In_19 v_main_~x~0_Out_38) (= v_main_~y~0_In_19 v_main_~y~0_Out_38)) (and (= |v_main_#t~post5_Out_38| 0) (< 0 (mod (+ v_main_~x~0_Out_38 1) 4294967296)) (= |v_main_#t~post6_Out_38| 0) (= (+ v_main_~x~0_In_19 v_main_~y~0_In_19) (+ v_main_~y~0_Out_38 v_main_~x~0_Out_38)) (<= v_main_~x~0_Out_38 v_main_~x~0_In_19))) InVars {main_~x~0=v_main_~x~0_In_19, main_~y~0=v_main_~y~0_In_19} OutVars{main_~y~0=v_main_~y~0_Out_38, main_#t~post5=|v_main_#t~post5_Out_38|, main_~x~0=v_main_~x~0_Out_38, main_#t~post6=|v_main_#t~post6_Out_38|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {6421#true} is VALID [2022-04-15 12:53:01,682 INFO L290 TraceCheckUtils]: 7: Hoare triple {6421#true} [100] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {6421#true} is VALID [2022-04-15 12:53:01,683 INFO L290 TraceCheckUtils]: 8: Hoare triple {6421#true} ~z~0 := ~y~0; {6426#(= (+ main_~y~0 (* (- 1) main_~z~0)) 0)} is VALID [2022-04-15 12:53:01,686 INFO L290 TraceCheckUtils]: 9: Hoare triple {6426#(= (+ main_~y~0 (* (- 1) main_~z~0)) 0)} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6427#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} is VALID [2022-04-15 12:53:01,689 INFO L290 TraceCheckUtils]: 10: Hoare triple {6427#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6428#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} is VALID [2022-04-15 12:53:01,690 INFO L290 TraceCheckUtils]: 11: Hoare triple {6428#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6429#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} is VALID [2022-04-15 12:53:01,692 INFO L290 TraceCheckUtils]: 12: Hoare triple {6429#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6430#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} is VALID [2022-04-15 12:53:01,693 INFO L290 TraceCheckUtils]: 13: Hoare triple {6430#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6431#(and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))} is VALID [2022-04-15 12:53:01,694 INFO L290 TraceCheckUtils]: 14: Hoare triple {6431#(and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6432#(and (<= (+ main_~z~0 6) main_~y~0) (<= main_~y~0 (+ main_~z~0 6)))} is VALID [2022-04-15 12:53:01,696 INFO L290 TraceCheckUtils]: 15: Hoare triple {6432#(and (<= (+ main_~z~0 6) main_~y~0) (<= main_~y~0 (+ main_~z~0 6)))} assume !(~z~0 % 4294967296 > 0); {6433#(and (<= (+ 6 (* (div main_~z~0 4294967296) 4294967296)) main_~y~0) (<= main_~y~0 (+ 6 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:53:01,698 INFO L290 TraceCheckUtils]: 16: Hoare triple {6433#(and (<= (+ 6 (* (div main_~z~0 4294967296) 4294967296)) main_~y~0) (<= main_~y~0 (+ 6 (* (div main_~z~0 4294967296) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6434#(<= main_~y~0 (+ 5 (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:53:01,701 INFO L290 TraceCheckUtils]: 17: Hoare triple {6434#(<= main_~y~0 (+ 5 (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6435#(<= main_~y~0 (+ 4 (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:53:01,703 INFO L290 TraceCheckUtils]: 18: Hoare triple {6435#(<= main_~y~0 (+ 4 (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6436#(<= main_~y~0 (+ 3 (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:53:01,705 INFO L290 TraceCheckUtils]: 19: Hoare triple {6436#(<= main_~y~0 (+ 3 (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6437#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} is VALID [2022-04-15 12:53:01,706 INFO L290 TraceCheckUtils]: 20: Hoare triple {6437#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6438#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} is VALID [2022-04-15 12:53:01,708 INFO L290 TraceCheckUtils]: 21: Hoare triple {6438#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6439#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} is VALID [2022-04-15 12:53:01,713 INFO L290 TraceCheckUtils]: 22: Hoare triple {6439#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6422#false} is VALID [2022-04-15 12:53:01,713 INFO L290 TraceCheckUtils]: 23: Hoare triple {6422#false} assume !(~y~0 % 4294967296 > 0); {6422#false} is VALID [2022-04-15 12:53:01,713 INFO L272 TraceCheckUtils]: 24: Hoare triple {6422#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {6422#false} is VALID [2022-04-15 12:53:01,713 INFO L290 TraceCheckUtils]: 25: Hoare triple {6422#false} ~cond := #in~cond; {6422#false} is VALID [2022-04-15 12:53:01,713 INFO L290 TraceCheckUtils]: 26: Hoare triple {6422#false} assume 0 == ~cond; {6422#false} is VALID [2022-04-15 12:53:01,713 INFO L290 TraceCheckUtils]: 27: Hoare triple {6422#false} assume !false; {6422#false} is VALID [2022-04-15 12:53:01,714 INFO L134 CoverageAnalysis]: Checked inductivity of 49 backedges. 7 proven. 42 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:53:01,714 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 12:53:01,714 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1683559065] [2022-04-15 12:53:01,714 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1683559065] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 12:53:01,714 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [200837880] [2022-04-15 12:53:01,714 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:53:01,714 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:53:01,714 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 12:53:01,715 INFO L229 MonitoredProcess]: Starting monitored process 18 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 12:53:01,715 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Waiting until timeout for monitored process [2022-04-15 12:53:01,751 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:53:01,752 INFO L263 TraceCheckSpWp]: Trace formula consists of 125 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-15 12:53:01,761 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:53:01,762 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 12:53:02,166 INFO L272 TraceCheckUtils]: 0: Hoare triple {6421#true} call ULTIMATE.init(); {6421#true} is VALID [2022-04-15 12:53:02,166 INFO L290 TraceCheckUtils]: 1: Hoare triple {6421#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(10, 2);call #Ultimate.allocInit(12, 3); {6421#true} is VALID [2022-04-15 12:53:02,166 INFO L290 TraceCheckUtils]: 2: Hoare triple {6421#true} assume true; {6421#true} is VALID [2022-04-15 12:53:02,166 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6421#true} {6421#true} #61#return; {6421#true} is VALID [2022-04-15 12:53:02,167 INFO L272 TraceCheckUtils]: 4: Hoare triple {6421#true} call #t~ret11 := main(); {6421#true} is VALID [2022-04-15 12:53:02,167 INFO L290 TraceCheckUtils]: 5: Hoare triple {6421#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {6421#true} is VALID [2022-04-15 12:53:02,167 INFO L290 TraceCheckUtils]: 6: Hoare triple {6421#true} [101] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~x~0_In_19 v_main_~x~0_Out_38) (= v_main_~y~0_In_19 v_main_~y~0_Out_38)) (and (= |v_main_#t~post5_Out_38| 0) (< 0 (mod (+ v_main_~x~0_Out_38 1) 4294967296)) (= |v_main_#t~post6_Out_38| 0) (= (+ v_main_~x~0_In_19 v_main_~y~0_In_19) (+ v_main_~y~0_Out_38 v_main_~x~0_Out_38)) (<= v_main_~x~0_Out_38 v_main_~x~0_In_19))) InVars {main_~x~0=v_main_~x~0_In_19, main_~y~0=v_main_~y~0_In_19} OutVars{main_~y~0=v_main_~y~0_Out_38, main_#t~post5=|v_main_#t~post5_Out_38|, main_~x~0=v_main_~x~0_Out_38, main_#t~post6=|v_main_#t~post6_Out_38|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {6421#true} is VALID [2022-04-15 12:53:02,167 INFO L290 TraceCheckUtils]: 7: Hoare triple {6421#true} [100] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {6421#true} is VALID [2022-04-15 12:53:02,167 INFO L290 TraceCheckUtils]: 8: Hoare triple {6421#true} ~z~0 := ~y~0; {6426#(= (+ main_~y~0 (* (- 1) main_~z~0)) 0)} is VALID [2022-04-15 12:53:02,170 INFO L290 TraceCheckUtils]: 9: Hoare triple {6426#(= (+ main_~y~0 (* (- 1) main_~z~0)) 0)} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6427#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} is VALID [2022-04-15 12:53:02,174 INFO L290 TraceCheckUtils]: 10: Hoare triple {6427#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6428#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} is VALID [2022-04-15 12:53:02,176 INFO L290 TraceCheckUtils]: 11: Hoare triple {6428#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6429#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} is VALID [2022-04-15 12:53:02,177 INFO L290 TraceCheckUtils]: 12: Hoare triple {6429#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6430#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} is VALID [2022-04-15 12:53:02,179 INFO L290 TraceCheckUtils]: 13: Hoare triple {6430#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6431#(and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))} is VALID [2022-04-15 12:53:02,180 INFO L290 TraceCheckUtils]: 14: Hoare triple {6431#(and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6432#(and (<= (+ main_~z~0 6) main_~y~0) (<= main_~y~0 (+ main_~z~0 6)))} is VALID [2022-04-15 12:53:02,183 INFO L290 TraceCheckUtils]: 15: Hoare triple {6432#(and (<= (+ main_~z~0 6) main_~y~0) (<= main_~y~0 (+ main_~z~0 6)))} assume !(~z~0 % 4294967296 > 0); {6489#(<= (div (+ 6 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 6)) 4294967296))} is VALID [2022-04-15 12:53:02,185 INFO L290 TraceCheckUtils]: 16: Hoare triple {6489#(<= (div (+ 6 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 6)) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6434#(<= main_~y~0 (+ 5 (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:53:02,187 INFO L290 TraceCheckUtils]: 17: Hoare triple {6434#(<= main_~y~0 (+ 5 (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6435#(<= main_~y~0 (+ 4 (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:53:02,190 INFO L290 TraceCheckUtils]: 18: Hoare triple {6435#(<= main_~y~0 (+ 4 (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6436#(<= main_~y~0 (+ 3 (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:53:02,193 INFO L290 TraceCheckUtils]: 19: Hoare triple {6436#(<= main_~y~0 (+ 3 (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6437#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} is VALID [2022-04-15 12:53:02,194 INFO L290 TraceCheckUtils]: 20: Hoare triple {6437#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6438#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} is VALID [2022-04-15 12:53:02,196 INFO L290 TraceCheckUtils]: 21: Hoare triple {6438#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6439#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} is VALID [2022-04-15 12:53:02,197 INFO L290 TraceCheckUtils]: 22: Hoare triple {6439#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6422#false} is VALID [2022-04-15 12:53:02,198 INFO L290 TraceCheckUtils]: 23: Hoare triple {6422#false} assume !(~y~0 % 4294967296 > 0); {6422#false} is VALID [2022-04-15 12:53:02,198 INFO L272 TraceCheckUtils]: 24: Hoare triple {6422#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {6422#false} is VALID [2022-04-15 12:53:02,198 INFO L290 TraceCheckUtils]: 25: Hoare triple {6422#false} ~cond := #in~cond; {6422#false} is VALID [2022-04-15 12:53:02,198 INFO L290 TraceCheckUtils]: 26: Hoare triple {6422#false} assume 0 == ~cond; {6422#false} is VALID [2022-04-15 12:53:02,198 INFO L290 TraceCheckUtils]: 27: Hoare triple {6422#false} assume !false; {6422#false} is VALID [2022-04-15 12:53:02,198 INFO L134 CoverageAnalysis]: Checked inductivity of 49 backedges. 7 proven. 42 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:53:02,198 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 12:53:05,289 INFO L290 TraceCheckUtils]: 27: Hoare triple {6422#false} assume !false; {6422#false} is VALID [2022-04-15 12:53:05,289 INFO L290 TraceCheckUtils]: 26: Hoare triple {6422#false} assume 0 == ~cond; {6422#false} is VALID [2022-04-15 12:53:05,289 INFO L290 TraceCheckUtils]: 25: Hoare triple {6422#false} ~cond := #in~cond; {6422#false} is VALID [2022-04-15 12:53:05,289 INFO L272 TraceCheckUtils]: 24: Hoare triple {6422#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {6422#false} is VALID [2022-04-15 12:53:05,290 INFO L290 TraceCheckUtils]: 23: Hoare triple {6422#false} assume !(~y~0 % 4294967296 > 0); {6422#false} is VALID [2022-04-15 12:53:05,292 INFO L290 TraceCheckUtils]: 22: Hoare triple {6439#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6422#false} is VALID [2022-04-15 12:53:05,294 INFO L290 TraceCheckUtils]: 21: Hoare triple {6438#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6439#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} is VALID [2022-04-15 12:53:05,296 INFO L290 TraceCheckUtils]: 20: Hoare triple {6437#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6438#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} is VALID [2022-04-15 12:53:05,298 INFO L290 TraceCheckUtils]: 19: Hoare triple {6436#(<= main_~y~0 (+ 3 (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6437#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} is VALID [2022-04-15 12:53:05,302 INFO L290 TraceCheckUtils]: 18: Hoare triple {6435#(<= main_~y~0 (+ 4 (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6436#(<= main_~y~0 (+ 3 (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:53:05,305 INFO L290 TraceCheckUtils]: 17: Hoare triple {6434#(<= main_~y~0 (+ 5 (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6435#(<= main_~y~0 (+ 4 (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:53:05,307 INFO L290 TraceCheckUtils]: 16: Hoare triple {6489#(<= (div (+ 6 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 6)) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6434#(<= main_~y~0 (+ 5 (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:53:05,307 INFO L290 TraceCheckUtils]: 15: Hoare triple {6562#(or (<= (div (+ 6 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 6)) 4294967296)) (< 0 (mod main_~z~0 4294967296)))} assume !(~z~0 % 4294967296 > 0); {6489#(<= (div (+ 6 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 6)) 4294967296))} is VALID [2022-04-15 12:53:05,311 INFO L290 TraceCheckUtils]: 14: Hoare triple {6566#(or (<= (div (+ 6 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 6)) 4294967296)) (< 0 (mod (+ main_~z~0 4294967295) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6562#(or (<= (div (+ 6 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 6)) 4294967296)) (< 0 (mod main_~z~0 4294967296)))} is VALID [2022-04-15 12:53:05,317 INFO L290 TraceCheckUtils]: 13: Hoare triple {6570#(or (<= (div (+ 6 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 6)) 4294967296)) (< 0 (mod (+ main_~z~0 4294967294) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6566#(or (<= (div (+ 6 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 6)) 4294967296)) (< 0 (mod (+ main_~z~0 4294967295) 4294967296)))} is VALID [2022-04-15 12:53:05,320 INFO L290 TraceCheckUtils]: 12: Hoare triple {6574#(or (<= (div (+ 6 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 6)) 4294967296)) (< 0 (mod (+ main_~z~0 4294967293) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6570#(or (<= (div (+ 6 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 6)) 4294967296)) (< 0 (mod (+ main_~z~0 4294967294) 4294967296)))} is VALID [2022-04-15 12:53:05,325 INFO L290 TraceCheckUtils]: 11: Hoare triple {6578#(or (<= (div (+ 6 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 6)) 4294967296)) (< 0 (mod (+ 4294967292 main_~z~0) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6574#(or (<= (div (+ 6 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 6)) 4294967296)) (< 0 (mod (+ main_~z~0 4294967293) 4294967296)))} is VALID [2022-04-15 12:53:05,328 INFO L290 TraceCheckUtils]: 10: Hoare triple {6582#(or (<= (div (+ 6 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 6)) 4294967296)) (< 0 (mod (+ 4294967291 main_~z~0) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6578#(or (<= (div (+ 6 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 6)) 4294967296)) (< 0 (mod (+ 4294967292 main_~z~0) 4294967296)))} is VALID [2022-04-15 12:53:05,332 INFO L290 TraceCheckUtils]: 9: Hoare triple {6586#(or (<= (div (+ 6 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 6)) 4294967296)) (< 0 (mod (+ 4294967290 main_~z~0) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6582#(or (<= (div (+ 6 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 6)) 4294967296)) (< 0 (mod (+ 4294967291 main_~z~0) 4294967296)))} is VALID [2022-04-15 12:53:05,334 INFO L290 TraceCheckUtils]: 8: Hoare triple {6421#true} ~z~0 := ~y~0; {6586#(or (<= (div (+ 6 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 6)) 4294967296)) (< 0 (mod (+ 4294967290 main_~z~0) 4294967296)))} is VALID [2022-04-15 12:53:05,334 INFO L290 TraceCheckUtils]: 7: Hoare triple {6421#true} [100] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {6421#true} is VALID [2022-04-15 12:53:05,334 INFO L290 TraceCheckUtils]: 6: Hoare triple {6421#true} [101] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~x~0_In_19 v_main_~x~0_Out_38) (= v_main_~y~0_In_19 v_main_~y~0_Out_38)) (and (= |v_main_#t~post5_Out_38| 0) (< 0 (mod (+ v_main_~x~0_Out_38 1) 4294967296)) (= |v_main_#t~post6_Out_38| 0) (= (+ v_main_~x~0_In_19 v_main_~y~0_In_19) (+ v_main_~y~0_Out_38 v_main_~x~0_Out_38)) (<= v_main_~x~0_Out_38 v_main_~x~0_In_19))) InVars {main_~x~0=v_main_~x~0_In_19, main_~y~0=v_main_~y~0_In_19} OutVars{main_~y~0=v_main_~y~0_Out_38, main_#t~post5=|v_main_#t~post5_Out_38|, main_~x~0=v_main_~x~0_Out_38, main_#t~post6=|v_main_#t~post6_Out_38|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {6421#true} is VALID [2022-04-15 12:53:05,335 INFO L290 TraceCheckUtils]: 5: Hoare triple {6421#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {6421#true} is VALID [2022-04-15 12:53:05,335 INFO L272 TraceCheckUtils]: 4: Hoare triple {6421#true} call #t~ret11 := main(); {6421#true} is VALID [2022-04-15 12:53:05,335 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6421#true} {6421#true} #61#return; {6421#true} is VALID [2022-04-15 12:53:05,335 INFO L290 TraceCheckUtils]: 2: Hoare triple {6421#true} assume true; {6421#true} is VALID [2022-04-15 12:53:05,335 INFO L290 TraceCheckUtils]: 1: Hoare triple {6421#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(10, 2);call #Ultimate.allocInit(12, 3); {6421#true} is VALID [2022-04-15 12:53:05,335 INFO L272 TraceCheckUtils]: 0: Hoare triple {6421#true} call ULTIMATE.init(); {6421#true} is VALID [2022-04-15 12:53:05,335 INFO L134 CoverageAnalysis]: Checked inductivity of 49 backedges. 7 proven. 42 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:53:05,335 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [200837880] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 12:53:05,335 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 12:53:05,335 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 16, 16] total 25 [2022-04-15 12:53:06,767 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 12:53:06,767 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [107410854] [2022-04-15 12:53:06,767 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [107410854] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 12:53:06,767 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 12:53:06,768 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [22] imperfect sequences [] total 22 [2022-04-15 12:53:06,768 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [449858310] [2022-04-15 12:53:06,768 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 12:53:06,768 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 21 states have internal predecessors, (28), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 32 [2022-04-15 12:53:06,768 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 12:53:06,768 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 22 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 21 states have internal predecessors, (28), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:53:06,857 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 32 edges. 32 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:53:06,857 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 22 states [2022-04-15 12:53:06,857 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 12:53:06,857 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 22 interpolants. [2022-04-15 12:53:06,857 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=89, Invalid=781, Unknown=0, NotChecked=0, Total=870 [2022-04-15 12:53:06,858 INFO L87 Difference]: Start difference. First operand 34 states and 37 transitions. Second operand has 22 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 21 states have internal predecessors, (28), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:53:15,586 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:53:15,586 INFO L93 Difference]: Finished difference Result 63 states and 69 transitions. [2022-04-15 12:53:15,586 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 29 states. [2022-04-15 12:53:15,586 INFO L78 Accepts]: Start accepts. Automaton has has 22 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 21 states have internal predecessors, (28), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 32 [2022-04-15 12:53:15,586 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 12:53:15,586 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 21 states have internal predecessors, (28), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:53:15,587 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 54 transitions. [2022-04-15 12:53:15,587 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 21 states have internal predecessors, (28), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:53:15,588 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 54 transitions. [2022-04-15 12:53:15,588 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 29 states and 54 transitions. [2022-04-15 12:53:15,879 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:53:15,879 INFO L225 Difference]: With dead ends: 63 [2022-04-15 12:53:15,879 INFO L226 Difference]: Without dead ends: 34 [2022-04-15 12:53:15,880 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 113 GetRequests, 53 SyntacticMatches, 6 SemanticMatches, 54 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 443 ImplicationChecksByTransitivity, 5.8s TimeCoverageRelationStatistics Valid=335, Invalid=2745, Unknown=0, NotChecked=0, Total=3080 [2022-04-15 12:53:15,881 INFO L913 BasicCegarLoop]: 11 mSDtfsCounter, 20 mSDsluCounter, 87 mSDsCounter, 0 mSdLazyCounter, 454 mSolverCounterSat, 53 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 2.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 20 SdHoareTripleChecker+Valid, 98 SdHoareTripleChecker+Invalid, 507 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 53 IncrementalHoareTripleChecker+Valid, 454 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 2.1s IncrementalHoareTripleChecker+Time [2022-04-15 12:53:15,881 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [20 Valid, 98 Invalid, 507 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [53 Valid, 454 Invalid, 0 Unknown, 0 Unchecked, 2.1s Time] [2022-04-15 12:53:15,881 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 34 states. [2022-04-15 12:53:16,013 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 34 to 34. [2022-04-15 12:53:16,013 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 12:53:16,013 INFO L82 GeneralOperation]: Start isEquivalent. First operand 34 states. Second operand has 34 states, 29 states have (on average 1.103448275862069) internal successors, (32), 29 states have internal predecessors, (32), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:53:16,014 INFO L74 IsIncluded]: Start isIncluded. First operand 34 states. Second operand has 34 states, 29 states have (on average 1.103448275862069) internal successors, (32), 29 states have internal predecessors, (32), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:53:16,014 INFO L87 Difference]: Start difference. First operand 34 states. Second operand has 34 states, 29 states have (on average 1.103448275862069) internal successors, (32), 29 states have internal predecessors, (32), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:53:16,014 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:53:16,014 INFO L93 Difference]: Finished difference Result 34 states and 36 transitions. [2022-04-15 12:53:16,014 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 36 transitions. [2022-04-15 12:53:16,014 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:53:16,014 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:53:16,015 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 29 states have (on average 1.103448275862069) internal successors, (32), 29 states have internal predecessors, (32), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 34 states. [2022-04-15 12:53:16,015 INFO L87 Difference]: Start difference. First operand has 34 states, 29 states have (on average 1.103448275862069) internal successors, (32), 29 states have internal predecessors, (32), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 34 states. [2022-04-15 12:53:16,015 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:53:16,015 INFO L93 Difference]: Finished difference Result 34 states and 36 transitions. [2022-04-15 12:53:16,015 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 36 transitions. [2022-04-15 12:53:16,015 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:53:16,015 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:53:16,016 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 12:53:16,016 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 12:53:16,016 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 29 states have (on average 1.103448275862069) internal successors, (32), 29 states have internal predecessors, (32), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:53:16,016 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 36 transitions. [2022-04-15 12:53:16,016 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 36 transitions. Word has length 32 [2022-04-15 12:53:16,016 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 12:53:16,016 INFO L478 AbstractCegarLoop]: Abstraction has 34 states and 36 transitions. [2022-04-15 12:53:16,016 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 22 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 21 states have internal predecessors, (28), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:53:16,016 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 34 states and 36 transitions. [2022-04-15 12:53:16,953 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:53:16,953 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 36 transitions. [2022-04-15 12:53:16,953 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-15 12:53:16,953 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 12:53:16,953 INFO L499 BasicCegarLoop]: trace histogram [7, 6, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 12:53:16,969 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Ended with exit code 0 [2022-04-15 12:53:17,153 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable19,18 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:53:17,154 INFO L403 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 12:53:17,154 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 12:53:17,154 INFO L85 PathProgramCache]: Analyzing trace with hash 1766095279, now seen corresponding path program 18 times [2022-04-15 12:53:17,154 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 12:53:17,154 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1089888329] [2022-04-15 12:53:17,314 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-15 12:53:17,315 INFO L85 PathProgramCache]: Analyzing trace with hash -497441457, now seen corresponding path program 1 times [2022-04-15 12:53:17,315 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 12:53:17,315 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1584793330] [2022-04-15 12:53:17,315 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:53:17,316 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 12:53:17,334 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:53:17,770 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 12:53:17,775 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:53:17,782 INFO L290 TraceCheckUtils]: 0: Hoare triple {6957#(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(10, 2);call #Ultimate.allocInit(12, 3); {6938#true} is VALID [2022-04-15 12:53:17,782 INFO L290 TraceCheckUtils]: 1: Hoare triple {6938#true} assume true; {6938#true} is VALID [2022-04-15 12:53:17,782 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {6938#true} {6938#true} #61#return; {6938#true} is VALID [2022-04-15 12:53:17,783 INFO L272 TraceCheckUtils]: 0: Hoare triple {6938#true} call ULTIMATE.init(); {6957#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 12:53:17,783 INFO L290 TraceCheckUtils]: 1: Hoare triple {6957#(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(10, 2);call #Ultimate.allocInit(12, 3); {6938#true} is VALID [2022-04-15 12:53:17,783 INFO L290 TraceCheckUtils]: 2: Hoare triple {6938#true} assume true; {6938#true} is VALID [2022-04-15 12:53:17,783 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6938#true} {6938#true} #61#return; {6938#true} is VALID [2022-04-15 12:53:17,783 INFO L272 TraceCheckUtils]: 4: Hoare triple {6938#true} call #t~ret11 := main(); {6938#true} is VALID [2022-04-15 12:53:17,783 INFO L290 TraceCheckUtils]: 5: Hoare triple {6938#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {6938#true} is VALID [2022-04-15 12:53:17,784 INFO L290 TraceCheckUtils]: 6: Hoare triple {6938#true} [103] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~x~0_In_20 v_main_~x~0_Out_40) (= v_main_~y~0_In_20 v_main_~y~0_Out_40)) (and (= |v_main_#t~post5_Out_40| 0) (= (+ v_main_~y~0_Out_40 v_main_~x~0_Out_40) (+ v_main_~x~0_In_20 v_main_~y~0_In_20)) (< 0 (mod (+ v_main_~x~0_Out_40 1) 4294967296)) (<= v_main_~x~0_Out_40 v_main_~x~0_In_20) (= |v_main_#t~post6_Out_40| 0))) InVars {main_~x~0=v_main_~x~0_In_20, main_~y~0=v_main_~y~0_In_20} OutVars{main_~y~0=v_main_~y~0_Out_40, main_#t~post5=|v_main_#t~post5_Out_40|, main_~x~0=v_main_~x~0_Out_40, main_#t~post6=|v_main_#t~post6_Out_40|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {6938#true} is VALID [2022-04-15 12:53:17,784 INFO L290 TraceCheckUtils]: 7: Hoare triple {6938#true} [102] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {6938#true} is VALID [2022-04-15 12:53:17,784 INFO L290 TraceCheckUtils]: 8: Hoare triple {6938#true} ~z~0 := ~y~0; {6943#(= (+ main_~y~0 (* (- 1) main_~z~0)) 0)} is VALID [2022-04-15 12:53:17,787 INFO L290 TraceCheckUtils]: 9: Hoare triple {6943#(= (+ main_~y~0 (* (- 1) main_~z~0)) 0)} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6944#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} is VALID [2022-04-15 12:53:17,791 INFO L290 TraceCheckUtils]: 10: Hoare triple {6944#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6945#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} is VALID [2022-04-15 12:53:17,793 INFO L290 TraceCheckUtils]: 11: Hoare triple {6945#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6946#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} is VALID [2022-04-15 12:53:17,795 INFO L290 TraceCheckUtils]: 12: Hoare triple {6946#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6947#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} is VALID [2022-04-15 12:53:17,796 INFO L290 TraceCheckUtils]: 13: Hoare triple {6947#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6948#(and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))} is VALID [2022-04-15 12:53:17,798 INFO L290 TraceCheckUtils]: 14: Hoare triple {6948#(and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6949#(and (<= (+ main_~z~0 6) main_~y~0) (<= main_~y~0 (+ main_~z~0 6)))} is VALID [2022-04-15 12:53:17,800 INFO L290 TraceCheckUtils]: 15: Hoare triple {6949#(and (<= (+ main_~z~0 6) main_~y~0) (<= main_~y~0 (+ main_~z~0 6)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6950#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301))} is VALID [2022-04-15 12:53:17,800 INFO L290 TraceCheckUtils]: 16: Hoare triple {6950#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301))} assume !(~z~0 % 4294967296 > 0); {6950#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301))} is VALID [2022-04-15 12:53:17,803 INFO L290 TraceCheckUtils]: 17: Hoare triple {6950#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6951#(<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} is VALID [2022-04-15 12:53:17,807 INFO L290 TraceCheckUtils]: 18: Hoare triple {6951#(<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6952#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} is VALID [2022-04-15 12:53:17,809 INFO L290 TraceCheckUtils]: 19: Hoare triple {6952#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6953#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} is VALID [2022-04-15 12:53:17,811 INFO L290 TraceCheckUtils]: 20: Hoare triple {6953#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6954#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} is VALID [2022-04-15 12:53:17,812 INFO L290 TraceCheckUtils]: 21: Hoare triple {6954#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6955#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} is VALID [2022-04-15 12:53:17,816 INFO L290 TraceCheckUtils]: 22: Hoare triple {6955#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6956#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} is VALID [2022-04-15 12:53:17,818 INFO L290 TraceCheckUtils]: 23: Hoare triple {6956#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} assume !(~y~0 % 4294967296 > 0); {6939#false} is VALID [2022-04-15 12:53:17,818 INFO L272 TraceCheckUtils]: 24: Hoare triple {6939#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {6939#false} is VALID [2022-04-15 12:53:17,818 INFO L290 TraceCheckUtils]: 25: Hoare triple {6939#false} ~cond := #in~cond; {6939#false} is VALID [2022-04-15 12:53:17,818 INFO L290 TraceCheckUtils]: 26: Hoare triple {6939#false} assume 0 == ~cond; {6939#false} is VALID [2022-04-15 12:53:17,818 INFO L290 TraceCheckUtils]: 27: Hoare triple {6939#false} assume !false; {6939#false} is VALID [2022-04-15 12:53:17,818 INFO L134 CoverageAnalysis]: Checked inductivity of 49 backedges. 0 proven. 49 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:53:17,819 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 12:53:17,819 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1584793330] [2022-04-15 12:53:17,819 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1584793330] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 12:53:17,819 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [695269334] [2022-04-15 12:53:17,819 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:53:17,819 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:53:17,819 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 12:53:17,820 INFO L229 MonitoredProcess]: Starting monitored process 19 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 12:53:17,820 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Waiting until timeout for monitored process [2022-04-15 12:53:17,853 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:53:17,854 INFO L263 TraceCheckSpWp]: Trace formula consists of 125 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-15 12:53:17,865 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:53:17,866 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 12:53:18,338 INFO L272 TraceCheckUtils]: 0: Hoare triple {6938#true} call ULTIMATE.init(); {6938#true} is VALID [2022-04-15 12:53:18,339 INFO L290 TraceCheckUtils]: 1: Hoare triple {6938#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(10, 2);call #Ultimate.allocInit(12, 3); {6938#true} is VALID [2022-04-15 12:53:18,339 INFO L290 TraceCheckUtils]: 2: Hoare triple {6938#true} assume true; {6938#true} is VALID [2022-04-15 12:53:18,339 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6938#true} {6938#true} #61#return; {6938#true} is VALID [2022-04-15 12:53:18,339 INFO L272 TraceCheckUtils]: 4: Hoare triple {6938#true} call #t~ret11 := main(); {6938#true} is VALID [2022-04-15 12:53:18,339 INFO L290 TraceCheckUtils]: 5: Hoare triple {6938#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {6938#true} is VALID [2022-04-15 12:53:18,339 INFO L290 TraceCheckUtils]: 6: Hoare triple {6938#true} [103] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~x~0_In_20 v_main_~x~0_Out_40) (= v_main_~y~0_In_20 v_main_~y~0_Out_40)) (and (= |v_main_#t~post5_Out_40| 0) (= (+ v_main_~y~0_Out_40 v_main_~x~0_Out_40) (+ v_main_~x~0_In_20 v_main_~y~0_In_20)) (< 0 (mod (+ v_main_~x~0_Out_40 1) 4294967296)) (<= v_main_~x~0_Out_40 v_main_~x~0_In_20) (= |v_main_#t~post6_Out_40| 0))) InVars {main_~x~0=v_main_~x~0_In_20, main_~y~0=v_main_~y~0_In_20} OutVars{main_~y~0=v_main_~y~0_Out_40, main_#t~post5=|v_main_#t~post5_Out_40|, main_~x~0=v_main_~x~0_Out_40, main_#t~post6=|v_main_#t~post6_Out_40|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {6938#true} is VALID [2022-04-15 12:53:18,339 INFO L290 TraceCheckUtils]: 7: Hoare triple {6938#true} [102] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {6938#true} is VALID [2022-04-15 12:53:18,339 INFO L290 TraceCheckUtils]: 8: Hoare triple {6938#true} ~z~0 := ~y~0; {6943#(= (+ main_~y~0 (* (- 1) main_~z~0)) 0)} is VALID [2022-04-15 12:53:18,343 INFO L290 TraceCheckUtils]: 9: Hoare triple {6943#(= (+ main_~y~0 (* (- 1) main_~z~0)) 0)} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6944#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} is VALID [2022-04-15 12:53:18,346 INFO L290 TraceCheckUtils]: 10: Hoare triple {6944#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6945#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} is VALID [2022-04-15 12:53:18,348 INFO L290 TraceCheckUtils]: 11: Hoare triple {6945#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6946#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} is VALID [2022-04-15 12:53:18,350 INFO L290 TraceCheckUtils]: 12: Hoare triple {6946#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6947#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} is VALID [2022-04-15 12:53:18,351 INFO L290 TraceCheckUtils]: 13: Hoare triple {6947#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6948#(and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))} is VALID [2022-04-15 12:53:18,353 INFO L290 TraceCheckUtils]: 14: Hoare triple {6948#(and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6949#(and (<= (+ main_~z~0 6) main_~y~0) (<= main_~y~0 (+ main_~z~0 6)))} is VALID [2022-04-15 12:53:18,354 INFO L290 TraceCheckUtils]: 15: Hoare triple {6949#(and (<= (+ main_~z~0 6) main_~y~0) (<= main_~y~0 (+ main_~z~0 6)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6950#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301))} is VALID [2022-04-15 12:53:18,355 INFO L290 TraceCheckUtils]: 16: Hoare triple {6950#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301))} assume !(~z~0 % 4294967296 > 0); {6950#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301))} is VALID [2022-04-15 12:53:18,357 INFO L290 TraceCheckUtils]: 17: Hoare triple {6950#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6951#(<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} is VALID [2022-04-15 12:53:18,361 INFO L290 TraceCheckUtils]: 18: Hoare triple {6951#(<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6952#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} is VALID [2022-04-15 12:53:18,364 INFO L290 TraceCheckUtils]: 19: Hoare triple {6952#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6953#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} is VALID [2022-04-15 12:53:18,366 INFO L290 TraceCheckUtils]: 20: Hoare triple {6953#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6954#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} is VALID [2022-04-15 12:53:18,367 INFO L290 TraceCheckUtils]: 21: Hoare triple {6954#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6955#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} is VALID [2022-04-15 12:53:18,370 INFO L290 TraceCheckUtils]: 22: Hoare triple {6955#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6956#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} is VALID [2022-04-15 12:53:18,371 INFO L290 TraceCheckUtils]: 23: Hoare triple {6956#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} assume !(~y~0 % 4294967296 > 0); {6939#false} is VALID [2022-04-15 12:53:18,371 INFO L272 TraceCheckUtils]: 24: Hoare triple {6939#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {6939#false} is VALID [2022-04-15 12:53:18,372 INFO L290 TraceCheckUtils]: 25: Hoare triple {6939#false} ~cond := #in~cond; {6939#false} is VALID [2022-04-15 12:53:18,372 INFO L290 TraceCheckUtils]: 26: Hoare triple {6939#false} assume 0 == ~cond; {6939#false} is VALID [2022-04-15 12:53:18,372 INFO L290 TraceCheckUtils]: 27: Hoare triple {6939#false} assume !false; {6939#false} is VALID [2022-04-15 12:53:18,372 INFO L134 CoverageAnalysis]: Checked inductivity of 49 backedges. 0 proven. 49 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:53:18,372 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 12:53:19,137 INFO L290 TraceCheckUtils]: 27: Hoare triple {6939#false} assume !false; {6939#false} is VALID [2022-04-15 12:53:19,138 INFO L290 TraceCheckUtils]: 26: Hoare triple {6939#false} assume 0 == ~cond; {6939#false} is VALID [2022-04-15 12:53:19,138 INFO L290 TraceCheckUtils]: 25: Hoare triple {6939#false} ~cond := #in~cond; {6939#false} is VALID [2022-04-15 12:53:19,138 INFO L272 TraceCheckUtils]: 24: Hoare triple {6939#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {6939#false} is VALID [2022-04-15 12:53:19,140 INFO L290 TraceCheckUtils]: 23: Hoare triple {6956#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} assume !(~y~0 % 4294967296 > 0); {6939#false} is VALID [2022-04-15 12:53:19,144 INFO L290 TraceCheckUtils]: 22: Hoare triple {6955#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6956#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} is VALID [2022-04-15 12:53:19,146 INFO L290 TraceCheckUtils]: 21: Hoare triple {6954#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6955#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} is VALID [2022-04-15 12:53:19,148 INFO L290 TraceCheckUtils]: 20: Hoare triple {6953#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6954#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} is VALID [2022-04-15 12:53:19,149 INFO L290 TraceCheckUtils]: 19: Hoare triple {6952#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6953#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} is VALID [2022-04-15 12:53:19,152 INFO L290 TraceCheckUtils]: 18: Hoare triple {6951#(<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6952#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} is VALID [2022-04-15 12:53:19,154 INFO L290 TraceCheckUtils]: 17: Hoare triple {6950#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {6951#(<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} is VALID [2022-04-15 12:53:19,154 INFO L290 TraceCheckUtils]: 16: Hoare triple {6950#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301))} assume !(~z~0 % 4294967296 > 0); {6950#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301))} is VALID [2022-04-15 12:53:19,155 INFO L290 TraceCheckUtils]: 15: Hoare triple {7078#(or (not (< 0 (mod main_~z~0 4294967296))) (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {6950#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301))} is VALID [2022-04-15 12:53:19,158 INFO L290 TraceCheckUtils]: 14: Hoare triple {7082#(or (not (< 0 (mod (+ main_~z~0 4294967295) 4294967296))) (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7078#(or (not (< 0 (mod main_~z~0 4294967296))) (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301)))} is VALID [2022-04-15 12:53:19,162 INFO L290 TraceCheckUtils]: 13: Hoare triple {7086#(or (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301)) (not (< 0 (mod (+ main_~z~0 4294967294) 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7082#(or (not (< 0 (mod (+ main_~z~0 4294967295) 4294967296))) (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301)))} is VALID [2022-04-15 12:53:19,168 INFO L290 TraceCheckUtils]: 12: Hoare triple {7090#(or (not (< 0 (mod (+ main_~z~0 4294967293) 4294967296))) (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7086#(or (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301)) (not (< 0 (mod (+ main_~z~0 4294967294) 4294967296))))} is VALID [2022-04-15 12:53:19,171 INFO L290 TraceCheckUtils]: 11: Hoare triple {7094#(or (not (< 0 (mod (+ 4294967292 main_~z~0) 4294967296))) (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7090#(or (not (< 0 (mod (+ main_~z~0 4294967293) 4294967296))) (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301)))} is VALID [2022-04-15 12:53:19,174 INFO L290 TraceCheckUtils]: 10: Hoare triple {7098#(or (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301)) (not (< 0 (mod (+ 4294967291 main_~z~0) 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7094#(or (not (< 0 (mod (+ 4294967292 main_~z~0) 4294967296))) (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301)))} is VALID [2022-04-15 12:53:19,176 INFO L290 TraceCheckUtils]: 9: Hoare triple {7102#(or (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301)) (not (< 0 (mod (+ 4294967290 main_~z~0) 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7098#(or (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301)) (not (< 0 (mod (+ 4294967291 main_~z~0) 4294967296))))} is VALID [2022-04-15 12:53:19,177 INFO L290 TraceCheckUtils]: 8: Hoare triple {6938#true} ~z~0 := ~y~0; {7102#(or (<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301)) (not (< 0 (mod (+ 4294967290 main_~z~0) 4294967296))))} is VALID [2022-04-15 12:53:19,178 INFO L290 TraceCheckUtils]: 7: Hoare triple {6938#true} [102] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {6938#true} is VALID [2022-04-15 12:53:19,178 INFO L290 TraceCheckUtils]: 6: Hoare triple {6938#true} [103] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~x~0_In_20 v_main_~x~0_Out_40) (= v_main_~y~0_In_20 v_main_~y~0_Out_40)) (and (= |v_main_#t~post5_Out_40| 0) (= (+ v_main_~y~0_Out_40 v_main_~x~0_Out_40) (+ v_main_~x~0_In_20 v_main_~y~0_In_20)) (< 0 (mod (+ v_main_~x~0_Out_40 1) 4294967296)) (<= v_main_~x~0_Out_40 v_main_~x~0_In_20) (= |v_main_#t~post6_Out_40| 0))) InVars {main_~x~0=v_main_~x~0_In_20, main_~y~0=v_main_~y~0_In_20} OutVars{main_~y~0=v_main_~y~0_Out_40, main_#t~post5=|v_main_#t~post5_Out_40|, main_~x~0=v_main_~x~0_Out_40, main_#t~post6=|v_main_#t~post6_Out_40|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {6938#true} is VALID [2022-04-15 12:53:19,178 INFO L290 TraceCheckUtils]: 5: Hoare triple {6938#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {6938#true} is VALID [2022-04-15 12:53:19,178 INFO L272 TraceCheckUtils]: 4: Hoare triple {6938#true} call #t~ret11 := main(); {6938#true} is VALID [2022-04-15 12:53:19,178 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6938#true} {6938#true} #61#return; {6938#true} is VALID [2022-04-15 12:53:19,178 INFO L290 TraceCheckUtils]: 2: Hoare triple {6938#true} assume true; {6938#true} is VALID [2022-04-15 12:53:19,178 INFO L290 TraceCheckUtils]: 1: Hoare triple {6938#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(10, 2);call #Ultimate.allocInit(12, 3); {6938#true} is VALID [2022-04-15 12:53:19,178 INFO L272 TraceCheckUtils]: 0: Hoare triple {6938#true} call ULTIMATE.init(); {6938#true} is VALID [2022-04-15 12:53:19,178 INFO L134 CoverageAnalysis]: Checked inductivity of 49 backedges. 7 proven. 42 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:53:19,179 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [695269334] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 12:53:19,179 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 12:53:19,179 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [17, 16, 16] total 24 [2022-04-15 12:53:21,428 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 12:53:21,428 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1089888329] [2022-04-15 12:53:21,428 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1089888329] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 12:53:21,428 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 12:53:21,428 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [23] imperfect sequences [] total 23 [2022-04-15 12:53:21,428 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [621378318] [2022-04-15 12:53:21,428 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 12:53:21,428 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 23 states have (on average 1.2608695652173914) internal successors, (29), 22 states have internal predecessors, (29), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 33 [2022-04-15 12:53:21,429 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 12:53:21,429 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 23 states, 23 states have (on average 1.2608695652173914) internal successors, (29), 22 states have internal predecessors, (29), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:53:21,546 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:53:21,546 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 23 states [2022-04-15 12:53:21,546 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 12:53:21,546 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 23 interpolants. [2022-04-15 12:53:21,547 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=86, Invalid=784, Unknown=0, NotChecked=0, Total=870 [2022-04-15 12:53:21,547 INFO L87 Difference]: Start difference. First operand 34 states and 36 transitions. Second operand has 23 states, 23 states have (on average 1.2608695652173914) internal successors, (29), 22 states have internal predecessors, (29), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:53:35,963 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:53:35,963 INFO L93 Difference]: Finished difference Result 40 states and 42 transitions. [2022-04-15 12:53:35,963 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2022-04-15 12:53:35,963 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 23 states have (on average 1.2608695652173914) internal successors, (29), 22 states have internal predecessors, (29), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 33 [2022-04-15 12:53:35,964 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 12:53:35,964 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 23 states have (on average 1.2608695652173914) internal successors, (29), 22 states have internal predecessors, (29), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:53:35,965 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 42 transitions. [2022-04-15 12:53:35,965 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 23 states, 23 states have (on average 1.2608695652173914) internal successors, (29), 22 states have internal predecessors, (29), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:53:35,965 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 42 transitions. [2022-04-15 12:53:35,965 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 24 states and 42 transitions. [2022-04-15 12:53:36,850 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:53:36,850 INFO L225 Difference]: With dead ends: 40 [2022-04-15 12:53:36,850 INFO L226 Difference]: Without dead ends: 35 [2022-04-15 12:53:36,851 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 107 GetRequests, 51 SyntacticMatches, 7 SemanticMatches, 49 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 336 ImplicationChecksByTransitivity, 8.7s TimeCoverageRelationStatistics Valid=368, Invalid=2182, Unknown=0, NotChecked=0, Total=2550 [2022-04-15 12:53:36,851 INFO L913 BasicCegarLoop]: 14 mSDtfsCounter, 29 mSDsluCounter, 82 mSDsCounter, 0 mSdLazyCounter, 327 mSolverCounterSat, 85 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 3.4s Time, 0 mProtectedPredicate, 0 mProtectedAction, 29 SdHoareTripleChecker+Valid, 96 SdHoareTripleChecker+Invalid, 412 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 85 IncrementalHoareTripleChecker+Valid, 327 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 3.4s IncrementalHoareTripleChecker+Time [2022-04-15 12:53:36,852 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [29 Valid, 96 Invalid, 412 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [85 Valid, 327 Invalid, 0 Unknown, 0 Unchecked, 3.4s Time] [2022-04-15 12:53:36,852 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 35 states. [2022-04-15 12:53:36,995 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 35 to 35. [2022-04-15 12:53:36,995 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 12:53:36,996 INFO L82 GeneralOperation]: Start isEquivalent. First operand 35 states. Second operand has 35 states, 30 states have (on average 1.1) internal successors, (33), 30 states have internal predecessors, (33), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:53:36,996 INFO L74 IsIncluded]: Start isIncluded. First operand 35 states. Second operand has 35 states, 30 states have (on average 1.1) internal successors, (33), 30 states have internal predecessors, (33), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:53:36,996 INFO L87 Difference]: Start difference. First operand 35 states. Second operand has 35 states, 30 states have (on average 1.1) internal successors, (33), 30 states have internal predecessors, (33), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:53:36,996 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:53:36,996 INFO L93 Difference]: Finished difference Result 35 states and 37 transitions. [2022-04-15 12:53:36,997 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 37 transitions. [2022-04-15 12:53:36,997 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:53:36,997 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:53:36,997 INFO L74 IsIncluded]: Start isIncluded. First operand has 35 states, 30 states have (on average 1.1) internal successors, (33), 30 states have internal predecessors, (33), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 35 states. [2022-04-15 12:53:36,997 INFO L87 Difference]: Start difference. First operand has 35 states, 30 states have (on average 1.1) internal successors, (33), 30 states have internal predecessors, (33), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 35 states. [2022-04-15 12:53:36,997 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:53:36,997 INFO L93 Difference]: Finished difference Result 35 states and 37 transitions. [2022-04-15 12:53:36,998 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 37 transitions. [2022-04-15 12:53:36,998 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:53:36,998 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:53:36,998 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 12:53:36,998 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 12:53:36,998 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 35 states, 30 states have (on average 1.1) internal successors, (33), 30 states have internal predecessors, (33), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:53:36,998 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 35 states to 35 states and 37 transitions. [2022-04-15 12:53:36,998 INFO L78 Accepts]: Start accepts. Automaton has 35 states and 37 transitions. Word has length 33 [2022-04-15 12:53:36,998 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 12:53:36,999 INFO L478 AbstractCegarLoop]: Abstraction has 35 states and 37 transitions. [2022-04-15 12:53:36,999 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 23 states, 23 states have (on average 1.2608695652173914) internal successors, (29), 22 states have internal predecessors, (29), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:53:36,999 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 35 states and 37 transitions. [2022-04-15 12:53:38,160 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-15 12:53:38,160 INFO L276 IsEmpty]: Start isEmpty. Operand 35 states and 37 transitions. [2022-04-15 12:53:38,161 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 35 [2022-04-15 12:53:38,161 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 12:53:38,161 INFO L499 BasicCegarLoop]: trace histogram [7, 7, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 12:53:38,189 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Forceful destruction successful, exit code 0 [2022-04-15 12:53:38,372 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable20,19 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:53:38,373 INFO L403 AbstractCegarLoop]: === Iteration 22 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 12:53:38,373 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 12:53:38,373 INFO L85 PathProgramCache]: Analyzing trace with hash -1051126114, now seen corresponding path program 19 times [2022-04-15 12:53:38,373 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 12:53:38,373 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [197015803] [2022-04-15 12:53:38,529 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-15 12:53:38,530 INFO L85 PathProgramCache]: Analyzing trace with hash 207095486, now seen corresponding path program 1 times [2022-04-15 12:53:38,531 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 12:53:38,531 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [366969958] [2022-04-15 12:53:38,531 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:53:38,531 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 12:53:38,562 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:53:40,455 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 12:53:40,456 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:53:40,458 INFO L290 TraceCheckUtils]: 0: Hoare triple {7428#(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(10, 2);call #Ultimate.allocInit(12, 3); {7402#true} is VALID [2022-04-15 12:53:40,458 INFO L290 TraceCheckUtils]: 1: Hoare triple {7402#true} assume true; {7402#true} is VALID [2022-04-15 12:53:40,458 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {7402#true} {7402#true} #61#return; {7402#true} is VALID [2022-04-15 12:53:40,458 INFO L272 TraceCheckUtils]: 0: Hoare triple {7402#true} call ULTIMATE.init(); {7428#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 12:53:40,458 INFO L290 TraceCheckUtils]: 1: Hoare triple {7428#(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(10, 2);call #Ultimate.allocInit(12, 3); {7402#true} is VALID [2022-04-15 12:53:40,459 INFO L290 TraceCheckUtils]: 2: Hoare triple {7402#true} assume true; {7402#true} is VALID [2022-04-15 12:53:40,459 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7402#true} {7402#true} #61#return; {7402#true} is VALID [2022-04-15 12:53:40,459 INFO L272 TraceCheckUtils]: 4: Hoare triple {7402#true} call #t~ret11 := main(); {7402#true} is VALID [2022-04-15 12:53:40,459 INFO L290 TraceCheckUtils]: 5: Hoare triple {7402#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {7407#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} is VALID [2022-04-15 12:53:40,462 INFO L290 TraceCheckUtils]: 6: Hoare triple {7407#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} [105] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~y~0_In_21 v_main_~y~0_Out_42) (= v_main_~x~0_In_21 v_main_~x~0_Out_42)) (and (<= v_main_~x~0_Out_42 v_main_~x~0_In_21) (= |v_main_#t~post6_Out_42| 0) (< 0 (mod (+ v_main_~x~0_Out_42 1) 4294967296)) (= |v_main_#t~post5_Out_42| 0) (= (+ v_main_~y~0_Out_42 v_main_~x~0_Out_42) (+ v_main_~x~0_In_21 v_main_~y~0_In_21)))) InVars {main_~x~0=v_main_~x~0_In_21, main_~y~0=v_main_~y~0_In_21} OutVars{main_~y~0=v_main_~y~0_Out_42, main_#t~post5=|v_main_#t~post5_Out_42|, main_~x~0=v_main_~x~0_Out_42, main_#t~post6=|v_main_#t~post6_Out_42|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {7408#(or (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= (+ main_~y~0 main_~x~0) main_~n~0) (<= main_~n~0 (+ main_~y~0 main_~x~0))) (= main_~y~0 0))} is VALID [2022-04-15 12:53:40,464 INFO L290 TraceCheckUtils]: 7: Hoare triple {7408#(or (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= (+ main_~y~0 main_~x~0) main_~n~0) (<= main_~n~0 (+ main_~y~0 main_~x~0))) (= main_~y~0 0))} [104] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {7409#(or (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~y~0 (* 4294967296 (div main_~x~0 4294967296))))) (= main_~y~0 0))} is VALID [2022-04-15 12:53:40,465 INFO L290 TraceCheckUtils]: 8: Hoare triple {7409#(or (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~y~0 (* 4294967296 (div main_~x~0 4294967296))))) (= main_~y~0 0))} ~z~0 := ~y~0; {7410#(and (or (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~y~0 (* 4294967296 (div main_~x~0 4294967296))))) (= main_~y~0 0)) (= (+ main_~y~0 (* (- 1) main_~z~0)) 0))} is VALID [2022-04-15 12:53:40,485 INFO L290 TraceCheckUtils]: 9: Hoare triple {7410#(and (or (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~y~0 (* 4294967296 (div main_~x~0 4294967296))))) (= main_~y~0 0)) (= (+ main_~y~0 (* (- 1) main_~z~0)) 0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7411#(and (or (<= main_~z~0 (+ 4294967294 (* (div (+ main_~z~0 (* (div main_~z~0 4294967296) 4294967296) (* (- 1) main_~n~0) (* (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296) 1) 4294967296) 4294967296))) (= main_~y~0 0)) (or (not (= main_~y~0 0)) (and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))))} is VALID [2022-04-15 12:53:40,503 INFO L290 TraceCheckUtils]: 10: Hoare triple {7411#(and (or (<= main_~z~0 (+ 4294967294 (* (div (+ main_~z~0 (* (div main_~z~0 4294967296) 4294967296) (* (- 1) main_~n~0) (* (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296) 1) 4294967296) 4294967296))) (= main_~y~0 0)) (or (not (= main_~y~0 0)) (and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7412#(and (or (= main_~y~0 0) (<= main_~z~0 (+ (* (div (+ main_~z~0 2 (* (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296) (* (div main_~z~0 4294967296) 4294967296) (* (- 1) main_~n~0)) 4294967296) 4294967296) 4294967293))) (or (not (= main_~y~0 0)) (and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))))} is VALID [2022-04-15 12:53:40,526 INFO L290 TraceCheckUtils]: 11: Hoare triple {7412#(and (or (= main_~y~0 0) (<= main_~z~0 (+ (* (div (+ main_~z~0 2 (* (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296) (* (div main_~z~0 4294967296) 4294967296) (* (- 1) main_~n~0)) 4294967296) 4294967296) 4294967293))) (or (not (= main_~y~0 0)) (and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7413#(and (or (<= main_~z~0 (+ 4294967292 (* 4294967296 (div (+ main_~z~0 3 (* (div main_~z~0 4294967296) 4294967296) (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296)) (* (- 1) main_~n~0)) 4294967296)))) (= main_~y~0 0)) (or (not (= main_~y~0 0)) (and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))))} is VALID [2022-04-15 12:53:40,657 INFO L290 TraceCheckUtils]: 12: Hoare triple {7413#(and (or (<= main_~z~0 (+ 4294967292 (* 4294967296 (div (+ main_~z~0 3 (* (div main_~z~0 4294967296) 4294967296) (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296)) (* (- 1) main_~n~0)) 4294967296)))) (= main_~y~0 0)) (or (not (= main_~y~0 0)) (and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7414#(and (or (= main_~y~0 0) (<= main_~z~0 (+ (* (div (+ main_~z~0 (* (div main_~z~0 4294967296) 4294967296) (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296) 4294967296) 4 (* (- 1) main_~n~0)) 4294967296) 4294967296) 4294967291))) (or (not (= main_~y~0 0)) (and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))))} is VALID [2022-04-15 12:53:40,800 INFO L290 TraceCheckUtils]: 13: Hoare triple {7414#(and (or (= main_~y~0 0) (<= main_~z~0 (+ (* (div (+ main_~z~0 (* (div main_~z~0 4294967296) 4294967296) (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296) 4294967296) 4 (* (- 1) main_~n~0)) 4294967296) 4294967296) 4294967291))) (or (not (= main_~y~0 0)) (and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7415#(and (or (not (= main_~y~0 0)) (and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))) (or (<= main_~z~0 (+ 4294967290 (* (div (+ 5 main_~z~0 (* (div main_~z~0 4294967296) 4294967296) (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 5)) 4294967296) 4294967296) (* (- 1) main_~n~0)) 4294967296) 4294967296))) (= main_~y~0 0)))} is VALID [2022-04-15 12:53:40,816 INFO L290 TraceCheckUtils]: 14: Hoare triple {7415#(and (or (not (= main_~y~0 0)) (and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))) (or (<= main_~z~0 (+ 4294967290 (* (div (+ 5 main_~z~0 (* (div main_~z~0 4294967296) 4294967296) (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 5)) 4294967296) 4294967296) (* (- 1) main_~n~0)) 4294967296) 4294967296))) (= main_~y~0 0)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7416#(and (or (not (= main_~y~0 0)) (and (<= (+ main_~z~0 6) main_~y~0) (<= main_~y~0 (+ main_~z~0 6)))) (or (and (<= (div main_~n~0 4294967296) (+ (div main_~z~0 4294967296) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 6)) 4294967296))) (<= main_~z~0 (+ (* (div (+ main_~z~0 6 (* (div main_~n~0 4294967296) 4294967296) (* (- 1) main_~n~0)) 4294967296) 4294967296) 4294967289))) (= main_~y~0 0)))} is VALID [2022-04-15 12:53:40,824 INFO L290 TraceCheckUtils]: 15: Hoare triple {7416#(and (or (not (= main_~y~0 0)) (and (<= (+ main_~z~0 6) main_~y~0) (<= main_~y~0 (+ main_~z~0 6)))) (or (and (<= (div main_~n~0 4294967296) (+ (div main_~z~0 4294967296) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 6)) 4294967296))) (<= main_~z~0 (+ (* (div (+ main_~z~0 6 (* (div main_~n~0 4294967296) 4294967296) (* (- 1) main_~n~0)) 4294967296) 4294967296) 4294967289))) (= main_~y~0 0)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7417#(and (or (and (<= (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ 7 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (* (div main_~n~0 4294967296) 4294967296) (+ (* (div (+ main_~n~0 (- 7) (* (- 1) main_~z~0)) 4294967296) 4294967296) main_~z~0))) (= main_~y~0 0)) (or (not (= main_~y~0 0)) (and (<= main_~y~0 (+ 7 main_~z~0)) (<= (+ (div main_~z~0 4294967296) 1) 0))))} is VALID [2022-04-15 12:53:40,826 INFO L290 TraceCheckUtils]: 16: Hoare triple {7417#(and (or (and (<= (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ 7 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (* (div main_~n~0 4294967296) 4294967296) (+ (* (div (+ main_~n~0 (- 7) (* (- 1) main_~z~0)) 4294967296) 4294967296) main_~z~0))) (= main_~y~0 0)) (or (not (= main_~y~0 0)) (and (<= main_~y~0 (+ 7 main_~z~0)) (<= (+ (div main_~z~0 4294967296) 1) 0))))} assume !(~z~0 % 4294967296 > 0); {7418#(and (not (= main_~y~0 0)) (<= (* (div main_~n~0 4294967296) 4294967296) (+ (* (div (+ main_~n~0 (- 7) (* (- 1) main_~z~0)) 4294967296) 4294967296) main_~z~0)) (<= main_~n~0 (+ 7 main_~z~0 (* (div (+ (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296)) 4294967296) 4294967296))))} is VALID [2022-04-15 12:53:40,829 INFO L290 TraceCheckUtils]: 17: Hoare triple {7418#(and (not (= main_~y~0 0)) (<= (* (div main_~n~0 4294967296) 4294967296) (+ (* (div (+ main_~n~0 (- 7) (* (- 1) main_~z~0)) 4294967296) 4294967296) main_~z~0)) (<= main_~n~0 (+ 7 main_~z~0 (* (div (+ (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296)) 4294967296) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7419#(and (<= main_~n~0 (+ main_~z~0 (* (div (+ (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296) 1) 4294967296) 4294967296) 6)) (<= (+ (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~z~0 (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 6)) 4294967296)))))} is VALID [2022-04-15 12:53:40,833 INFO L290 TraceCheckUtils]: 18: Hoare triple {7419#(and (<= main_~n~0 (+ main_~z~0 (* (div (+ (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296) 1) 4294967296) 4294967296) 6)) (<= (+ (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~z~0 (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 6)) 4294967296)))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7420#(and (<= (+ 2 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 5)) 4294967296) 4294967296))) (<= main_~n~0 (+ (* 4294967296 (div (+ 2 (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296)) 4294967296)) 5 main_~z~0)))} is VALID [2022-04-15 12:53:40,836 INFO L290 TraceCheckUtils]: 19: Hoare triple {7420#(and (<= (+ 2 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 5)) 4294967296) 4294967296))) (<= main_~n~0 (+ (* 4294967296 (div (+ 2 (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296)) 4294967296)) 5 main_~z~0)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7421#(and (<= (+ 3 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296) 4294967296))) (<= main_~n~0 (+ main_~z~0 (* (div (+ (* (- 1) main_~z~0) 3 (* (div main_~n~0 4294967296) 4294967296)) 4294967296) 4294967296) 4)))} is VALID [2022-04-15 12:53:40,839 INFO L290 TraceCheckUtils]: 20: Hoare triple {7421#(and (<= (+ 3 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296) 4294967296))) (<= main_~n~0 (+ main_~z~0 (* (div (+ (* (- 1) main_~z~0) 3 (* (div main_~n~0 4294967296) 4294967296)) 4294967296) 4294967296) 4)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7422#(and (<= (+ (* (div main_~n~0 4294967296) 4294967296) 4) (+ main_~z~0 (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296)))) (<= main_~n~0 (+ main_~z~0 3 (* (div (+ (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296) 4) 4294967296) 4294967296))))} is VALID [2022-04-15 12:53:40,843 INFO L290 TraceCheckUtils]: 21: Hoare triple {7422#(and (<= (+ (* (div main_~n~0 4294967296) 4294967296) 4) (+ main_~z~0 (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296)))) (<= main_~n~0 (+ main_~z~0 3 (* (div (+ (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296) 4) 4294967296) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7423#(and (<= main_~n~0 (+ main_~z~0 2 (* (div (+ 5 (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296)) 4294967296) 4294967296))) (<= (+ 5 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~z~0 (* (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296))))} is VALID [2022-04-15 12:53:40,846 INFO L290 TraceCheckUtils]: 22: Hoare triple {7423#(and (<= main_~n~0 (+ main_~z~0 2 (* (div (+ 5 (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296)) 4294967296) 4294967296))) (<= (+ 5 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~z~0 (* (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7424#(and (<= main_~n~0 (+ (* (div (+ (* (- 1) main_~z~0) 6 (* (div main_~n~0 4294967296) 4294967296)) 4294967296) 4294967296) main_~z~0 1)) (<= (+ 6 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~z~0 (* (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296))))} is VALID [2022-04-15 12:53:40,849 INFO L290 TraceCheckUtils]: 23: Hoare triple {7424#(and (<= main_~n~0 (+ (* (div (+ (* (- 1) main_~z~0) 6 (* (div main_~n~0 4294967296) 4294967296)) 4294967296) 4294967296) main_~z~0 1)) (<= (+ 6 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~z~0 (* (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7425#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:53:40,849 INFO L290 TraceCheckUtils]: 24: Hoare triple {7425#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} assume !(~y~0 % 4294967296 > 0); {7425#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:53:40,851 INFO L272 TraceCheckUtils]: 25: Hoare triple {7425#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {7426#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 12:53:40,851 INFO L290 TraceCheckUtils]: 26: Hoare triple {7426#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {7427#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 12:53:40,851 INFO L290 TraceCheckUtils]: 27: Hoare triple {7427#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {7403#false} is VALID [2022-04-15 12:53:40,851 INFO L290 TraceCheckUtils]: 28: Hoare triple {7403#false} assume !false; {7403#false} is VALID [2022-04-15 12:53:40,852 INFO L134 CoverageAnalysis]: Checked inductivity of 56 backedges. 0 proven. 56 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:53:40,852 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 12:53:40,852 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [366969958] [2022-04-15 12:53:40,852 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [366969958] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 12:53:40,852 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1351193588] [2022-04-15 12:53:40,852 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:53:40,852 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:53:40,853 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 12:53:40,853 INFO L229 MonitoredProcess]: Starting monitored process 20 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 12:53:40,856 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Waiting until timeout for monitored process [2022-04-15 12:53:41,072 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:53:41,074 INFO L263 TraceCheckSpWp]: Trace formula consists of 130 conjuncts, 56 conjunts are in the unsatisfiable core [2022-04-15 12:53:41,099 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:53:41,104 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 12:53:46,853 INFO L272 TraceCheckUtils]: 0: Hoare triple {7402#true} call ULTIMATE.init(); {7402#true} is VALID [2022-04-15 12:53:46,853 INFO L290 TraceCheckUtils]: 1: Hoare triple {7402#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(10, 2);call #Ultimate.allocInit(12, 3); {7402#true} is VALID [2022-04-15 12:53:46,853 INFO L290 TraceCheckUtils]: 2: Hoare triple {7402#true} assume true; {7402#true} is VALID [2022-04-15 12:53:46,853 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7402#true} {7402#true} #61#return; {7402#true} is VALID [2022-04-15 12:53:46,853 INFO L272 TraceCheckUtils]: 4: Hoare triple {7402#true} call #t~ret11 := main(); {7402#true} is VALID [2022-04-15 12:53:46,854 INFO L290 TraceCheckUtils]: 5: Hoare triple {7402#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {7407#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} is VALID [2022-04-15 12:53:46,857 INFO L290 TraceCheckUtils]: 6: Hoare triple {7407#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} [105] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~y~0_In_21 v_main_~y~0_Out_42) (= v_main_~x~0_In_21 v_main_~x~0_Out_42)) (and (<= v_main_~x~0_Out_42 v_main_~x~0_In_21) (= |v_main_#t~post6_Out_42| 0) (< 0 (mod (+ v_main_~x~0_Out_42 1) 4294967296)) (= |v_main_#t~post5_Out_42| 0) (= (+ v_main_~y~0_Out_42 v_main_~x~0_Out_42) (+ v_main_~x~0_In_21 v_main_~y~0_In_21)))) InVars {main_~x~0=v_main_~x~0_In_21, main_~y~0=v_main_~y~0_In_21} OutVars{main_~y~0=v_main_~y~0_Out_42, main_#t~post5=|v_main_#t~post5_Out_42|, main_~x~0=v_main_~x~0_Out_42, main_#t~post6=|v_main_#t~post6_Out_42|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {7450#(or (and (< 0 (mod (+ main_~x~0 1) 4294967296)) (<= main_~x~0 main_~n~0) (= main_~n~0 (+ main_~y~0 main_~x~0))) (and (= main_~n~0 main_~x~0) (= main_~y~0 0)))} is VALID [2022-04-15 12:53:46,862 INFO L290 TraceCheckUtils]: 7: Hoare triple {7450#(or (and (< 0 (mod (+ main_~x~0 1) 4294967296)) (<= main_~x~0 main_~n~0) (= main_~n~0 (+ main_~y~0 main_~x~0))) (and (= main_~n~0 main_~x~0) (= main_~y~0 0)))} [104] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {7454#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} is VALID [2022-04-15 12:53:46,862 INFO L290 TraceCheckUtils]: 8: Hoare triple {7454#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} ~z~0 := ~y~0; {7458#(and (<= 0 main_~y~0) (= main_~z~0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} is VALID [2022-04-15 12:53:46,863 INFO L290 TraceCheckUtils]: 9: Hoare triple {7458#(and (<= 0 main_~y~0) (= main_~z~0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7462#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= main_~y~0 (+ main_~z~0 1)) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:53:46,867 INFO L290 TraceCheckUtils]: 10: Hoare triple {7462#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= main_~y~0 (+ main_~z~0 1)) (< 0 (mod main_~y~0 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7466#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= (+ main_~z~0 1) (+ (- 1) main_~y~0)) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:53:46,870 INFO L290 TraceCheckUtils]: 11: Hoare triple {7466#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= (+ main_~z~0 1) (+ (- 1) main_~y~0)) (< 0 (mod main_~y~0 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7470#(and (<= 0 main_~y~0) (= (+ main_~z~0 2) (+ (- 1) main_~y~0)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:53:46,874 INFO L290 TraceCheckUtils]: 12: Hoare triple {7470#(and (<= 0 main_~y~0) (= (+ main_~z~0 2) (+ (- 1) main_~y~0)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7474#(and (= (+ main_~z~0 3) (+ (- 1) main_~y~0)) (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:53:46,877 INFO L290 TraceCheckUtils]: 13: Hoare triple {7474#(and (= (+ main_~z~0 3) (+ (- 1) main_~y~0)) (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7478#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= (+ (- 1) main_~y~0) (+ main_~z~0 4)) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:53:46,880 INFO L290 TraceCheckUtils]: 14: Hoare triple {7478#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= (+ (- 1) main_~y~0) (+ main_~z~0 4)) (< 0 (mod main_~y~0 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7482#(and (<= 0 main_~y~0) (= (+ main_~y~0 (- 5)) (+ main_~z~0 1)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:53:46,883 INFO L290 TraceCheckUtils]: 15: Hoare triple {7482#(and (<= 0 main_~y~0) (= (+ main_~y~0 (- 5)) (+ main_~z~0 1)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7486#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= (+ main_~z~0 2) (+ main_~y~0 (- 5))) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:53:46,884 INFO L290 TraceCheckUtils]: 16: Hoare triple {7486#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= (+ main_~z~0 2) (+ main_~y~0 (- 5))) (< 0 (mod main_~y~0 4294967296)))} assume !(~z~0 % 4294967296 > 0); {7490#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= (+ 7 main_~z~0) main_~y~0) (<= (mod main_~z~0 4294967296) 0))} is VALID [2022-04-15 12:53:46,918 INFO L290 TraceCheckUtils]: 17: Hoare triple {7490#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= (+ 7 main_~z~0) main_~y~0) (<= (mod main_~z~0 4294967296) 0))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7494#(and (<= (mod (+ main_~z~0 4294967295) 4294967296) 0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0) 1) (- 4294967296)) (div (+ (- 1) main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= (+ main_~z~0 6) (+ main_~y~0 1)) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-15 12:53:46,923 INFO L290 TraceCheckUtils]: 18: Hoare triple {7494#(and (<= (mod (+ main_~z~0 4294967295) 4294967296) 0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0) 1) (- 4294967296)) (div (+ (- 1) main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= (+ main_~z~0 6) (+ main_~y~0 1)) (<= 0 (+ main_~y~0 1)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7498#(and (= (+ main_~y~0 (- 3)) main_~z~0) (<= 0 (+ main_~y~0 2)) (<= (div (+ main_~y~0 2 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ (- 2) main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (<= (mod (+ 4294967291 main_~y~0) 4294967296) 0))} is VALID [2022-04-15 12:53:46,928 INFO L290 TraceCheckUtils]: 19: Hoare triple {7498#(and (= (+ main_~y~0 (- 3)) main_~z~0) (<= 0 (+ main_~y~0 2)) (<= (div (+ main_~y~0 2 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ (- 2) main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (<= (mod (+ 4294967291 main_~y~0) 4294967296) 0))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7502#(and (<= (mod (+ main_~z~0 4294967293) 4294967296) 0) (<= (div (+ main_~z~0 4 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296)) (= (+ main_~z~0 2) (+ main_~y~0 1)) (<= 0 (+ main_~z~0 4)))} is VALID [2022-04-15 12:53:46,932 INFO L290 TraceCheckUtils]: 20: Hoare triple {7502#(and (<= (mod (+ main_~z~0 4294967293) 4294967296) 0) (<= (div (+ main_~z~0 4 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296)) (= (+ main_~z~0 2) (+ main_~y~0 1)) (<= 0 (+ main_~z~0 4)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7506#(and (= (+ main_~y~0 2) (+ main_~z~0 1)) (<= 0 (+ main_~z~0 3)) (<= (div (+ main_~z~0 3 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296)) (<= (mod (+ 4294967292 main_~z~0) 4294967296) 0))} is VALID [2022-04-15 12:53:46,935 INFO L290 TraceCheckUtils]: 21: Hoare triple {7506#(and (= (+ main_~y~0 2) (+ main_~z~0 1)) (<= 0 (+ main_~z~0 3)) (<= (div (+ main_~z~0 3 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296)) (<= (mod (+ 4294967292 main_~z~0) 4294967296) 0))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7510#(and (<= 0 (+ main_~z~0 2)) (<= (div (+ main_~z~0 2 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296)) (<= (mod (+ 4294967291 main_~z~0) 4294967296) 0) (= main_~z~0 (+ main_~y~0 3)))} is VALID [2022-04-15 12:53:46,940 INFO L290 TraceCheckUtils]: 22: Hoare triple {7510#(and (<= 0 (+ main_~z~0 2)) (<= (div (+ main_~z~0 2 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296)) (<= (mod (+ 4294967291 main_~z~0) 4294967296) 0) (= main_~z~0 (+ main_~y~0 3)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7514#(and (= (+ main_~y~0 1) (+ main_~z~0 (- 4))) (<= 0 (+ main_~z~0 1)) (<= (mod (+ 4294967290 main_~z~0) 4294967296) 0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0) 1) (- 4294967296)) (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} is VALID [2022-04-15 12:53:46,945 INFO L290 TraceCheckUtils]: 23: Hoare triple {7514#(and (= (+ main_~y~0 1) (+ main_~z~0 (- 4))) (<= 0 (+ main_~z~0 1)) (<= (mod (+ 4294967290 main_~z~0) 4294967296) 0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0) 1) (- 4294967296)) (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7518#(and (<= (div (+ 7 main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (- 7) (* (- 1) main_~y~0)) 4294967296)) (<= (mod main_~y~0 4294967296) 0) (= (+ 7 main_~y~0) main_~z~0) (<= 0 (+ 7 main_~y~0)))} is VALID [2022-04-15 12:53:46,948 INFO L290 TraceCheckUtils]: 24: Hoare triple {7518#(and (<= (div (+ 7 main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (- 7) (* (- 1) main_~y~0)) 4294967296)) (<= (mod main_~y~0 4294967296) 0) (= (+ 7 main_~y~0) main_~z~0) (<= 0 (+ 7 main_~y~0)))} assume !(~y~0 % 4294967296 > 0); {7522#(and (<= (mod (+ main_~z~0 4294967289) 4294967296) 0) (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} is VALID [2022-04-15 12:53:46,954 INFO L272 TraceCheckUtils]: 25: Hoare triple {7522#(and (<= (mod (+ main_~z~0 4294967289) 4294967296) 0) (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {7526#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 12:53:46,954 INFO L290 TraceCheckUtils]: 26: Hoare triple {7526#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7530#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 12:53:46,955 INFO L290 TraceCheckUtils]: 27: Hoare triple {7530#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7403#false} is VALID [2022-04-15 12:53:46,955 INFO L290 TraceCheckUtils]: 28: Hoare triple {7403#false} assume !false; {7403#false} is VALID [2022-04-15 12:53:46,955 INFO L134 CoverageAnalysis]: Checked inductivity of 56 backedges. 0 proven. 56 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:53:46,955 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 12:54:20,676 INFO L290 TraceCheckUtils]: 28: Hoare triple {7403#false} assume !false; {7403#false} is VALID [2022-04-15 12:54:20,677 INFO L290 TraceCheckUtils]: 27: Hoare triple {7530#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7403#false} is VALID [2022-04-15 12:54:20,677 INFO L290 TraceCheckUtils]: 26: Hoare triple {7526#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7530#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 12:54:20,678 INFO L272 TraceCheckUtils]: 25: Hoare triple {7425#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {7526#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 12:54:20,679 INFO L290 TraceCheckUtils]: 24: Hoare triple {7549#(or (and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)))) (< 0 (mod main_~y~0 4294967296)))} assume !(~y~0 % 4294967296 > 0); {7425#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:54:20,682 INFO L290 TraceCheckUtils]: 23: Hoare triple {7553#(or (and (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296)) (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)))) (< 0 (mod (+ main_~y~0 4294967295) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7549#(or (and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)))) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:54:20,686 INFO L290 TraceCheckUtils]: 22: Hoare triple {7557#(or (< 0 (mod (+ main_~y~0 4294967294) 4294967296)) (and (< (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0) (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7553#(or (and (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296)) (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)))) (< 0 (mod (+ main_~y~0 4294967295) 4294967296)))} is VALID [2022-04-15 12:54:20,688 INFO L290 TraceCheckUtils]: 21: Hoare triple {7561#(or (and (< (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4)) (<= (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)))) (< 0 (mod (+ main_~y~0 4294967293) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7557#(or (< 0 (mod (+ main_~y~0 4294967294) 4294967296)) (and (< (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0) (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0))))} is VALID [2022-04-15 12:54:20,690 INFO L290 TraceCheckUtils]: 20: Hoare triple {7565#(or (and (< (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0) (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4) (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0))) (< 0 (mod (+ 4294967292 main_~y~0) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7561#(or (and (< (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4)) (<= (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)))) (< 0 (mod (+ main_~y~0 4294967293) 4294967296)))} is VALID [2022-04-15 12:54:20,693 INFO L290 TraceCheckUtils]: 19: Hoare triple {7569#(or (< 0 (mod (+ 4294967291 main_~y~0) 4294967296)) (and (<= (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296)) (+ main_~z~0 6 (* (div main_~n~0 4294967296) 4294967296)))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7565#(or (and (< (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0) (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4) (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0))) (< 0 (mod (+ 4294967292 main_~y~0) 4294967296)))} is VALID [2022-04-15 12:54:20,695 INFO L290 TraceCheckUtils]: 18: Hoare triple {7573#(or (< 0 (mod (+ 4294967290 main_~y~0) 4294967296)) (and (< (+ (* (div (+ main_~z~0 6) 4294967296) 4294967296) main_~n~0) (+ 7 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 6 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 6) 4294967296) 4294967296) main_~n~0))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7569#(or (< 0 (mod (+ 4294967291 main_~y~0) 4294967296)) (and (<= (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296)) (+ main_~z~0 6 (* (div main_~n~0 4294967296) 4294967296)))))} is VALID [2022-04-15 12:54:20,697 INFO L290 TraceCheckUtils]: 17: Hoare triple {7577#(or (< 0 (mod (+ main_~y~0 4294967289) 4294967296)) (and (< (+ main_~n~0 (* (div (+ 7 main_~z~0) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 8)) (<= (+ 7 main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ 7 main_~z~0) 4294967296) 4294967296)))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7573#(or (< 0 (mod (+ 4294967290 main_~y~0) 4294967296)) (and (< (+ (* (div (+ main_~z~0 6) 4294967296) 4294967296) main_~n~0) (+ 7 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 6 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 6) 4294967296) 4294967296) main_~n~0))))} is VALID [2022-04-15 12:54:20,697 INFO L290 TraceCheckUtils]: 16: Hoare triple {7581#(or (< 0 (mod (+ main_~y~0 4294967289) 4294967296)) (< 0 (mod main_~z~0 4294967296)) (and (< (+ main_~n~0 (* (div (+ 7 main_~z~0) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 8)) (<= (+ 7 main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ 7 main_~z~0) 4294967296) 4294967296)))))} assume !(~z~0 % 4294967296 > 0); {7577#(or (< 0 (mod (+ main_~y~0 4294967289) 4294967296)) (and (< (+ main_~n~0 (* (div (+ 7 main_~z~0) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 8)) (<= (+ 7 main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ 7 main_~z~0) 4294967296) 4294967296)))))} is VALID [2022-04-15 12:54:20,703 INFO L290 TraceCheckUtils]: 15: Hoare triple {7585#(or (< 0 (mod (+ main_~y~0 4294967289) 4294967296)) (< 0 (mod (+ main_~z~0 4294967295) 4294967296)) (and (< (+ (* (div (+ main_~z~0 6) 4294967296) 4294967296) main_~n~0) (+ 7 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 6 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 6) 4294967296) 4294967296) main_~n~0))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7581#(or (< 0 (mod (+ main_~y~0 4294967289) 4294967296)) (< 0 (mod main_~z~0 4294967296)) (and (< (+ main_~n~0 (* (div (+ 7 main_~z~0) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 8)) (<= (+ 7 main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ 7 main_~z~0) 4294967296) 4294967296)))))} is VALID [2022-04-15 12:54:20,710 INFO L290 TraceCheckUtils]: 14: Hoare triple {7589#(or (< 0 (mod (+ main_~z~0 4294967294) 4294967296)) (< 0 (mod (+ main_~y~0 4294967289) 4294967296)) (and (<= (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296)) (+ main_~z~0 6 (* (div main_~n~0 4294967296) 4294967296)))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7585#(or (< 0 (mod (+ main_~y~0 4294967289) 4294967296)) (< 0 (mod (+ main_~z~0 4294967295) 4294967296)) (and (< (+ (* (div (+ main_~z~0 6) 4294967296) 4294967296) main_~n~0) (+ 7 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 6 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 6) 4294967296) 4294967296) main_~n~0))))} is VALID [2022-04-15 12:54:20,715 INFO L290 TraceCheckUtils]: 13: Hoare triple {7593#(or (and (< (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0) (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4) (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0))) (< 0 (mod (+ main_~y~0 4294967289) 4294967296)) (< 0 (mod (+ main_~z~0 4294967293) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7589#(or (< 0 (mod (+ main_~z~0 4294967294) 4294967296)) (< 0 (mod (+ main_~y~0 4294967289) 4294967296)) (and (<= (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296)) (+ main_~z~0 6 (* (div main_~n~0 4294967296) 4294967296)))))} is VALID [2022-04-15 12:54:20,719 INFO L290 TraceCheckUtils]: 12: Hoare triple {7597#(or (< 0 (mod (+ 4294967292 main_~z~0) 4294967296)) (< 0 (mod (+ main_~y~0 4294967289) 4294967296)) (and (< (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4)) (<= (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7593#(or (and (< (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0) (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4) (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0))) (< 0 (mod (+ main_~y~0 4294967289) 4294967296)) (< 0 (mod (+ main_~z~0 4294967293) 4294967296)))} is VALID [2022-04-15 12:54:20,731 INFO L290 TraceCheckUtils]: 11: Hoare triple {7601#(or (< 0 (mod (+ 4294967291 main_~z~0) 4294967296)) (< 0 (mod (+ main_~y~0 4294967289) 4294967296)) (and (< (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0) (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7597#(or (< 0 (mod (+ 4294967292 main_~z~0) 4294967296)) (< 0 (mod (+ main_~y~0 4294967289) 4294967296)) (and (< (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4)) (<= (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)))))} is VALID [2022-04-15 12:54:20,747 INFO L290 TraceCheckUtils]: 10: Hoare triple {7605#(or (and (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296)) (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)))) (< 0 (mod (+ main_~y~0 4294967289) 4294967296)) (< 0 (mod (+ 4294967290 main_~z~0) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7601#(or (< 0 (mod (+ 4294967291 main_~z~0) 4294967296)) (< 0 (mod (+ main_~y~0 4294967289) 4294967296)) (and (< (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0) (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0))))} is VALID [2022-04-15 12:54:20,749 INFO L290 TraceCheckUtils]: 9: Hoare triple {7609#(or (and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)))) (< 0 (mod (+ main_~y~0 4294967289) 4294967296)) (< 0 (mod (+ main_~z~0 4294967289) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7605#(or (and (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296)) (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)))) (< 0 (mod (+ main_~y~0 4294967289) 4294967296)) (< 0 (mod (+ 4294967290 main_~z~0) 4294967296)))} is VALID [2022-04-15 12:54:20,751 INFO L290 TraceCheckUtils]: 8: Hoare triple {7613#(or (< 0 (mod (+ main_~y~0 4294967289) 4294967296)) (and (< (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0))))} ~z~0 := ~y~0; {7609#(or (and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)))) (< 0 (mod (+ main_~y~0 4294967289) 4294967296)) (< 0 (mod (+ main_~z~0 4294967289) 4294967296)))} is VALID [2022-04-15 12:54:20,752 INFO L290 TraceCheckUtils]: 7: Hoare triple {7617#(or (< 0 (mod (+ main_~y~0 4294967289) 4294967296)) (< 0 (mod main_~x~0 4294967296)) (and (< (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0))))} [104] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {7613#(or (< 0 (mod (+ main_~y~0 4294967289) 4294967296)) (and (< (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0))))} is VALID [2022-04-15 12:54:22,770 WARN L290 TraceCheckUtils]: 6: Hoare triple {7621#(and (forall ((aux_div_aux_mod_v_main_~y~0_308_47_104 Int) (aux_mod_aux_mod_v_main_~y~0_308_47_104 Int) (aux_div_v_main_~y~0_308_47 Int)) (or (< (* 4294967296 aux_div_v_main_~y~0_308_47) (+ (* 4294967296 aux_div_aux_mod_v_main_~y~0_308_47_104) aux_mod_aux_mod_v_main_~y~0_308_47_104 4294967289)) (and (or (not (= (+ main_~y~0 4294967289) (+ (* 4294967296 aux_div_aux_mod_v_main_~y~0_308_47_104) aux_mod_aux_mod_v_main_~y~0_308_47_104 4294967289))) (< (div (+ (- 1) (* (- 1) main_~x~0)) (- 4294967296)) (+ 2 (div (+ (- 1) main_~x~0) 4294967296)))) (or (< (+ (* 4294967296 aux_div_aux_mod_v_main_~y~0_308_47_104) aux_mod_aux_mod_v_main_~y~0_308_47_104) main_~y~0) (<= (mod (+ main_~y~0 main_~x~0 1 (* aux_mod_aux_mod_v_main_~y~0_308_47_104 4294967295)) 4294967296) 0) (forall ((aux_div_v_main_~x~0_240_32 Int)) (or (< (+ main_~y~0 main_~x~0) (+ (* 4294967296 aux_div_aux_mod_v_main_~y~0_308_47_104) aux_mod_aux_mod_v_main_~y~0_308_47_104 (* 4294967296 aux_div_v_main_~x~0_240_32))) (< (+ (* 4294967296 aux_div_aux_mod_v_main_~y~0_308_47_104) aux_mod_aux_mod_v_main_~y~0_308_47_104 (* 4294967296 aux_div_v_main_~x~0_240_32)) (+ main_~y~0 main_~x~0)))))) (<= (+ aux_mod_aux_mod_v_main_~y~0_308_47_104 (* (div main_~n~0 4294967296) 4294967296)) main_~n~0) (<= 4294967296 aux_mod_aux_mod_v_main_~y~0_308_47_104) (< (+ (* 4294967296 aux_div_aux_mod_v_main_~y~0_308_47_104) aux_mod_aux_mod_v_main_~y~0_308_47_104 4294967289) (* 4294967296 aux_div_v_main_~y~0_308_47)))) (forall ((aux_div_aux_mod_v_main_~y~0_308_47_104 Int) (aux_mod_aux_mod_v_main_~y~0_308_47_104 Int) (aux_div_v_main_~y~0_308_47 Int)) (or (< (* 4294967296 aux_div_v_main_~y~0_308_47) (+ (* 4294967296 aux_div_aux_mod_v_main_~y~0_308_47_104) aux_mod_aux_mod_v_main_~y~0_308_47_104 4294967289)) (and (or (not (= (+ main_~y~0 4294967289) (+ (* 4294967296 aux_div_aux_mod_v_main_~y~0_308_47_104) aux_mod_aux_mod_v_main_~y~0_308_47_104 4294967289))) (< (div (+ (- 1) (* (- 1) main_~x~0)) (- 4294967296)) (+ 2 (div (+ (- 1) main_~x~0) 4294967296)))) (or (< (+ (* 4294967296 aux_div_aux_mod_v_main_~y~0_308_47_104) aux_mod_aux_mod_v_main_~y~0_308_47_104) main_~y~0) (<= (mod (+ main_~y~0 main_~x~0 1 (* aux_mod_aux_mod_v_main_~y~0_308_47_104 4294967295)) 4294967296) 0) (forall ((aux_div_v_main_~x~0_240_32 Int)) (or (< (+ main_~y~0 main_~x~0) (+ (* 4294967296 aux_div_aux_mod_v_main_~y~0_308_47_104) aux_mod_aux_mod_v_main_~y~0_308_47_104 (* 4294967296 aux_div_v_main_~x~0_240_32))) (< (+ (* 4294967296 aux_div_aux_mod_v_main_~y~0_308_47_104) aux_mod_aux_mod_v_main_~y~0_308_47_104 (* 4294967296 aux_div_v_main_~x~0_240_32)) (+ main_~y~0 main_~x~0)))))) (< main_~n~0 (+ aux_mod_aux_mod_v_main_~y~0_308_47_104 (* (div main_~n~0 4294967296) 4294967296) 1)) (< (+ (* 4294967296 aux_div_aux_mod_v_main_~y~0_308_47_104) aux_mod_aux_mod_v_main_~y~0_308_47_104 4294967289) (* 4294967296 aux_div_v_main_~y~0_308_47)) (< aux_mod_aux_mod_v_main_~y~0_308_47_104 0))))} [105] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~y~0_In_21 v_main_~y~0_Out_42) (= v_main_~x~0_In_21 v_main_~x~0_Out_42)) (and (<= v_main_~x~0_Out_42 v_main_~x~0_In_21) (= |v_main_#t~post6_Out_42| 0) (< 0 (mod (+ v_main_~x~0_Out_42 1) 4294967296)) (= |v_main_#t~post5_Out_42| 0) (= (+ v_main_~y~0_Out_42 v_main_~x~0_Out_42) (+ v_main_~x~0_In_21 v_main_~y~0_In_21)))) InVars {main_~x~0=v_main_~x~0_In_21, main_~y~0=v_main_~y~0_In_21} OutVars{main_~y~0=v_main_~y~0_Out_42, main_#t~post5=|v_main_#t~post5_Out_42|, main_~x~0=v_main_~x~0_Out_42, main_#t~post6=|v_main_#t~post6_Out_42|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {7617#(or (< 0 (mod (+ main_~y~0 4294967289) 4294967296)) (< 0 (mod main_~x~0 4294967296)) (and (< (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0))))} is UNKNOWN [2022-04-15 12:54:22,781 INFO L290 TraceCheckUtils]: 5: Hoare triple {7402#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {7621#(and (forall ((aux_div_aux_mod_v_main_~y~0_308_47_104 Int) (aux_mod_aux_mod_v_main_~y~0_308_47_104 Int) (aux_div_v_main_~y~0_308_47 Int)) (or (< (* 4294967296 aux_div_v_main_~y~0_308_47) (+ (* 4294967296 aux_div_aux_mod_v_main_~y~0_308_47_104) aux_mod_aux_mod_v_main_~y~0_308_47_104 4294967289)) (and (or (not (= (+ main_~y~0 4294967289) (+ (* 4294967296 aux_div_aux_mod_v_main_~y~0_308_47_104) aux_mod_aux_mod_v_main_~y~0_308_47_104 4294967289))) (< (div (+ (- 1) (* (- 1) main_~x~0)) (- 4294967296)) (+ 2 (div (+ (- 1) main_~x~0) 4294967296)))) (or (< (+ (* 4294967296 aux_div_aux_mod_v_main_~y~0_308_47_104) aux_mod_aux_mod_v_main_~y~0_308_47_104) main_~y~0) (<= (mod (+ main_~y~0 main_~x~0 1 (* aux_mod_aux_mod_v_main_~y~0_308_47_104 4294967295)) 4294967296) 0) (forall ((aux_div_v_main_~x~0_240_32 Int)) (or (< (+ main_~y~0 main_~x~0) (+ (* 4294967296 aux_div_aux_mod_v_main_~y~0_308_47_104) aux_mod_aux_mod_v_main_~y~0_308_47_104 (* 4294967296 aux_div_v_main_~x~0_240_32))) (< (+ (* 4294967296 aux_div_aux_mod_v_main_~y~0_308_47_104) aux_mod_aux_mod_v_main_~y~0_308_47_104 (* 4294967296 aux_div_v_main_~x~0_240_32)) (+ main_~y~0 main_~x~0)))))) (<= (+ aux_mod_aux_mod_v_main_~y~0_308_47_104 (* (div main_~n~0 4294967296) 4294967296)) main_~n~0) (<= 4294967296 aux_mod_aux_mod_v_main_~y~0_308_47_104) (< (+ (* 4294967296 aux_div_aux_mod_v_main_~y~0_308_47_104) aux_mod_aux_mod_v_main_~y~0_308_47_104 4294967289) (* 4294967296 aux_div_v_main_~y~0_308_47)))) (forall ((aux_div_aux_mod_v_main_~y~0_308_47_104 Int) (aux_mod_aux_mod_v_main_~y~0_308_47_104 Int) (aux_div_v_main_~y~0_308_47 Int)) (or (< (* 4294967296 aux_div_v_main_~y~0_308_47) (+ (* 4294967296 aux_div_aux_mod_v_main_~y~0_308_47_104) aux_mod_aux_mod_v_main_~y~0_308_47_104 4294967289)) (and (or (not (= (+ main_~y~0 4294967289) (+ (* 4294967296 aux_div_aux_mod_v_main_~y~0_308_47_104) aux_mod_aux_mod_v_main_~y~0_308_47_104 4294967289))) (< (div (+ (- 1) (* (- 1) main_~x~0)) (- 4294967296)) (+ 2 (div (+ (- 1) main_~x~0) 4294967296)))) (or (< (+ (* 4294967296 aux_div_aux_mod_v_main_~y~0_308_47_104) aux_mod_aux_mod_v_main_~y~0_308_47_104) main_~y~0) (<= (mod (+ main_~y~0 main_~x~0 1 (* aux_mod_aux_mod_v_main_~y~0_308_47_104 4294967295)) 4294967296) 0) (forall ((aux_div_v_main_~x~0_240_32 Int)) (or (< (+ main_~y~0 main_~x~0) (+ (* 4294967296 aux_div_aux_mod_v_main_~y~0_308_47_104) aux_mod_aux_mod_v_main_~y~0_308_47_104 (* 4294967296 aux_div_v_main_~x~0_240_32))) (< (+ (* 4294967296 aux_div_aux_mod_v_main_~y~0_308_47_104) aux_mod_aux_mod_v_main_~y~0_308_47_104 (* 4294967296 aux_div_v_main_~x~0_240_32)) (+ main_~y~0 main_~x~0)))))) (< main_~n~0 (+ aux_mod_aux_mod_v_main_~y~0_308_47_104 (* (div main_~n~0 4294967296) 4294967296) 1)) (< (+ (* 4294967296 aux_div_aux_mod_v_main_~y~0_308_47_104) aux_mod_aux_mod_v_main_~y~0_308_47_104 4294967289) (* 4294967296 aux_div_v_main_~y~0_308_47)) (< aux_mod_aux_mod_v_main_~y~0_308_47_104 0))))} is VALID [2022-04-15 12:54:22,781 INFO L272 TraceCheckUtils]: 4: Hoare triple {7402#true} call #t~ret11 := main(); {7402#true} is VALID [2022-04-15 12:54:22,781 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7402#true} {7402#true} #61#return; {7402#true} is VALID [2022-04-15 12:54:22,781 INFO L290 TraceCheckUtils]: 2: Hoare triple {7402#true} assume true; {7402#true} is VALID [2022-04-15 12:54:22,782 INFO L290 TraceCheckUtils]: 1: Hoare triple {7402#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(10, 2);call #Ultimate.allocInit(12, 3); {7402#true} is VALID [2022-04-15 12:54:22,782 INFO L272 TraceCheckUtils]: 0: Hoare triple {7402#true} call ULTIMATE.init(); {7402#true} is VALID [2022-04-15 12:54:22,782 INFO L134 CoverageAnalysis]: Checked inductivity of 56 backedges. 0 proven. 56 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:54:22,782 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1351193588] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 12:54:22,783 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 12:54:22,783 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [24, 24, 24] total 64 [2022-04-15 12:54:35,106 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 12:54:35,107 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [197015803] [2022-04-15 12:54:35,107 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [197015803] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 12:54:35,107 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 12:54:35,107 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [29] imperfect sequences [] total 29 [2022-04-15 12:54:35,107 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [464886399] [2022-04-15 12:54:35,107 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 12:54:35,107 INFO L78 Accepts]: Start accepts. Automaton has has 29 states, 29 states have (on average 1.0344827586206897) internal successors, (30), 27 states have internal predecessors, (30), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 34 [2022-04-15 12:54:35,107 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 12:54:35,108 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 29 states, 29 states have (on average 1.0344827586206897) internal successors, (30), 27 states have internal predecessors, (30), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:54:35,457 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:54:35,457 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 29 states [2022-04-15 12:54:35,457 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 12:54:35,457 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 29 interpolants. [2022-04-15 12:54:35,458 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=640, Invalid=4324, Unknown=6, NotChecked=0, Total=4970 [2022-04-15 12:54:35,458 INFO L87 Difference]: Start difference. First operand 35 states and 37 transitions. Second operand has 29 states, 29 states have (on average 1.0344827586206897) internal successors, (30), 27 states have internal predecessors, (30), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:55:07,916 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:55:07,916 INFO L93 Difference]: Finished difference Result 49 states and 52 transitions. [2022-04-15 12:55:07,916 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 29 states. [2022-04-15 12:55:07,916 INFO L78 Accepts]: Start accepts. Automaton has has 29 states, 29 states have (on average 1.0344827586206897) internal successors, (30), 27 states have internal predecessors, (30), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 34 [2022-04-15 12:55:07,917 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 12:55:07,917 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 29 states have (on average 1.0344827586206897) internal successors, (30), 27 states have internal predecessors, (30), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:55:07,917 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 45 transitions. [2022-04-15 12:55:07,917 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 29 states have (on average 1.0344827586206897) internal successors, (30), 27 states have internal predecessors, (30), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:55:07,918 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 45 transitions. [2022-04-15 12:55:07,918 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 29 states and 45 transitions. [2022-04-15 12:55:08,318 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-15 12:55:08,318 INFO L225 Difference]: With dead ends: 49 [2022-04-15 12:55:08,318 INFO L226 Difference]: Without dead ends: 44 [2022-04-15 12:55:08,320 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 116 GetRequests, 18 SyntacticMatches, 3 SemanticMatches, 95 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2467 ImplicationChecksByTransitivity, 66.3s TimeCoverageRelationStatistics Valid=984, Invalid=8319, Unknown=9, NotChecked=0, Total=9312 [2022-04-15 12:55:08,321 INFO L913 BasicCegarLoop]: 10 mSDtfsCounter, 22 mSDsluCounter, 107 mSDsCounter, 0 mSdLazyCounter, 679 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 4.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 117 SdHoareTripleChecker+Invalid, 698 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 679 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 4.8s IncrementalHoareTripleChecker+Time [2022-04-15 12:55:08,321 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [22 Valid, 117 Invalid, 698 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 679 Invalid, 0 Unknown, 0 Unchecked, 4.8s Time] [2022-04-15 12:55:08,321 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 44 states. [2022-04-15 12:55:08,498 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 44 to 37. [2022-04-15 12:55:08,498 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 12:55:08,499 INFO L82 GeneralOperation]: Start isEquivalent. First operand 44 states. Second operand has 37 states, 32 states have (on average 1.125) internal successors, (36), 32 states have internal predecessors, (36), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:55:08,499 INFO L74 IsIncluded]: Start isIncluded. First operand 44 states. Second operand has 37 states, 32 states have (on average 1.125) internal successors, (36), 32 states have internal predecessors, (36), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:55:08,499 INFO L87 Difference]: Start difference. First operand 44 states. Second operand has 37 states, 32 states have (on average 1.125) internal successors, (36), 32 states have internal predecessors, (36), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:55:08,499 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:55:08,500 INFO L93 Difference]: Finished difference Result 44 states and 47 transitions. [2022-04-15 12:55:08,500 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 47 transitions. [2022-04-15 12:55:08,500 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:55:08,500 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:55:08,500 INFO L74 IsIncluded]: Start isIncluded. First operand has 37 states, 32 states have (on average 1.125) internal successors, (36), 32 states have internal predecessors, (36), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 44 states. [2022-04-15 12:55:08,500 INFO L87 Difference]: Start difference. First operand has 37 states, 32 states have (on average 1.125) internal successors, (36), 32 states have internal predecessors, (36), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 44 states. [2022-04-15 12:55:08,500 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:55:08,501 INFO L93 Difference]: Finished difference Result 44 states and 47 transitions. [2022-04-15 12:55:08,501 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 47 transitions. [2022-04-15 12:55:08,501 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:55:08,501 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:55:08,501 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 12:55:08,501 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 12:55:08,501 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 32 states have (on average 1.125) internal successors, (36), 32 states have internal predecessors, (36), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:55:08,501 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 40 transitions. [2022-04-15 12:55:08,501 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 40 transitions. Word has length 34 [2022-04-15 12:55:08,502 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 12:55:08,502 INFO L478 AbstractCegarLoop]: Abstraction has 37 states and 40 transitions. [2022-04-15 12:55:08,502 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 29 states, 29 states have (on average 1.0344827586206897) internal successors, (30), 27 states have internal predecessors, (30), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:55:08,502 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 37 states and 40 transitions. [2022-04-15 12:55:12,152 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 39 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 12:55:12,152 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 40 transitions. [2022-04-15 12:55:12,152 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-04-15 12:55:12,152 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 12:55:12,152 INFO L499 BasicCegarLoop]: trace histogram [8, 7, 6, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 12:55:12,156 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (20)] Forceful destruction successful, exit code 0 [2022-04-15 12:55:12,353 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable21,20 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:55:12,353 INFO L403 AbstractCegarLoop]: === Iteration 23 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 12:55:12,353 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 12:55:12,354 INFO L85 PathProgramCache]: Analyzing trace with hash 1809323919, now seen corresponding path program 20 times [2022-04-15 12:55:12,354 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 12:55:12,354 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1823549268] [2022-04-15 12:55:12,509 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-15 12:55:12,510 INFO L85 PathProgramCache]: Analyzing trace with hash 220036015, now seen corresponding path program 1 times [2022-04-15 12:55:12,510 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 12:55:12,510 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [724952683] [2022-04-15 12:55:12,510 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:55:12,510 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 12:55:12,532 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:55:13,159 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 12:55:13,160 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:55:13,162 INFO L290 TraceCheckUtils]: 0: Hoare triple {7982#(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(10, 2);call #Ultimate.allocInit(12, 3); {7961#true} is VALID [2022-04-15 12:55:13,162 INFO L290 TraceCheckUtils]: 1: Hoare triple {7961#true} assume true; {7961#true} is VALID [2022-04-15 12:55:13,162 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {7961#true} {7961#true} #61#return; {7961#true} is VALID [2022-04-15 12:55:13,163 INFO L272 TraceCheckUtils]: 0: Hoare triple {7961#true} call ULTIMATE.init(); {7982#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 12:55:13,163 INFO L290 TraceCheckUtils]: 1: Hoare triple {7982#(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(10, 2);call #Ultimate.allocInit(12, 3); {7961#true} is VALID [2022-04-15 12:55:13,163 INFO L290 TraceCheckUtils]: 2: Hoare triple {7961#true} assume true; {7961#true} is VALID [2022-04-15 12:55:13,163 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7961#true} {7961#true} #61#return; {7961#true} is VALID [2022-04-15 12:55:13,163 INFO L272 TraceCheckUtils]: 4: Hoare triple {7961#true} call #t~ret11 := main(); {7961#true} is VALID [2022-04-15 12:55:13,163 INFO L290 TraceCheckUtils]: 5: Hoare triple {7961#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {7961#true} is VALID [2022-04-15 12:55:13,163 INFO L290 TraceCheckUtils]: 6: Hoare triple {7961#true} [107] L16-2-->L16-3_primed: Formula: (or (and (<= v_main_~x~0_Out_44 v_main_~x~0_In_22) (= |v_main_#t~post6_Out_44| 0) (= |v_main_#t~post5_Out_44| 0) (= (+ v_main_~x~0_In_22 v_main_~y~0_In_22) (+ v_main_~y~0_Out_44 v_main_~x~0_Out_44)) (< 0 (mod (+ v_main_~x~0_Out_44 1) 4294967296))) (and (= v_main_~y~0_In_22 v_main_~y~0_Out_44) (= v_main_~x~0_In_22 v_main_~x~0_Out_44))) InVars {main_~x~0=v_main_~x~0_In_22, main_~y~0=v_main_~y~0_In_22} OutVars{main_~y~0=v_main_~y~0_Out_44, main_#t~post5=|v_main_#t~post5_Out_44|, main_~x~0=v_main_~x~0_Out_44, main_#t~post6=|v_main_#t~post6_Out_44|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {7961#true} is VALID [2022-04-15 12:55:13,164 INFO L290 TraceCheckUtils]: 7: Hoare triple {7961#true} [106] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {7961#true} is VALID [2022-04-15 12:55:13,164 INFO L290 TraceCheckUtils]: 8: Hoare triple {7961#true} ~z~0 := ~y~0; {7966#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} is VALID [2022-04-15 12:55:13,169 INFO L290 TraceCheckUtils]: 9: Hoare triple {7966#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7967#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} is VALID [2022-04-15 12:55:13,178 INFO L290 TraceCheckUtils]: 10: Hoare triple {7967#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7968#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} is VALID [2022-04-15 12:55:13,182 INFO L290 TraceCheckUtils]: 11: Hoare triple {7968#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7969#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} is VALID [2022-04-15 12:55:13,184 INFO L290 TraceCheckUtils]: 12: Hoare triple {7969#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7970#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} is VALID [2022-04-15 12:55:13,187 INFO L290 TraceCheckUtils]: 13: Hoare triple {7970#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7971#(and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))} is VALID [2022-04-15 12:55:13,189 INFO L290 TraceCheckUtils]: 14: Hoare triple {7971#(and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7972#(and (<= (+ main_~z~0 6) main_~y~0) (<= main_~y~0 (+ main_~z~0 6)))} is VALID [2022-04-15 12:55:13,191 INFO L290 TraceCheckUtils]: 15: Hoare triple {7972#(and (<= (+ main_~z~0 6) main_~y~0) (<= main_~y~0 (+ main_~z~0 6)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7973#(and (<= main_~y~0 (+ 7 main_~z~0)) (<= (+ 7 main_~z~0) main_~y~0))} is VALID [2022-04-15 12:55:13,193 INFO L290 TraceCheckUtils]: 16: Hoare triple {7973#(and (<= main_~y~0 (+ 7 main_~z~0)) (<= (+ 7 main_~z~0) main_~y~0))} assume !(~z~0 % 4294967296 > 0); {7974#(and (<= main_~y~0 (+ 7 (* (div main_~z~0 4294967296) 4294967296))) (<= (+ 7 (* (div main_~z~0 4294967296) 4294967296)) main_~y~0))} is VALID [2022-04-15 12:55:13,195 INFO L290 TraceCheckUtils]: 17: Hoare triple {7974#(and (<= main_~y~0 (+ 7 (* (div main_~z~0 4294967296) 4294967296))) (<= (+ 7 (* (div main_~z~0 4294967296) 4294967296)) main_~y~0))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7975#(<= main_~y~0 (+ 6 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} is VALID [2022-04-15 12:55:13,200 INFO L290 TraceCheckUtils]: 18: Hoare triple {7975#(<= main_~y~0 (+ 6 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7976#(<= main_~y~0 (+ 5 (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:55:13,203 INFO L290 TraceCheckUtils]: 19: Hoare triple {7976#(<= main_~y~0 (+ 5 (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7977#(<= main_~y~0 (+ 4 (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:55:13,207 INFO L290 TraceCheckUtils]: 20: Hoare triple {7977#(<= main_~y~0 (+ 4 (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7978#(<= main_~y~0 (+ 3 (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:55:13,210 INFO L290 TraceCheckUtils]: 21: Hoare triple {7978#(<= main_~y~0 (+ 3 (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7979#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} is VALID [2022-04-15 12:55:13,212 INFO L290 TraceCheckUtils]: 22: Hoare triple {7979#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7980#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} is VALID [2022-04-15 12:55:13,214 INFO L290 TraceCheckUtils]: 23: Hoare triple {7980#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7981#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} is VALID [2022-04-15 12:55:13,216 INFO L290 TraceCheckUtils]: 24: Hoare triple {7981#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7962#false} is VALID [2022-04-15 12:55:13,216 INFO L290 TraceCheckUtils]: 25: Hoare triple {7962#false} assume !(~y~0 % 4294967296 > 0); {7962#false} is VALID [2022-04-15 12:55:13,216 INFO L272 TraceCheckUtils]: 26: Hoare triple {7962#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {7962#false} is VALID [2022-04-15 12:55:13,216 INFO L290 TraceCheckUtils]: 27: Hoare triple {7962#false} ~cond := #in~cond; {7962#false} is VALID [2022-04-15 12:55:13,216 INFO L290 TraceCheckUtils]: 28: Hoare triple {7962#false} assume 0 == ~cond; {7962#false} is VALID [2022-04-15 12:55:13,216 INFO L290 TraceCheckUtils]: 29: Hoare triple {7962#false} assume !false; {7962#false} is VALID [2022-04-15 12:55:13,217 INFO L134 CoverageAnalysis]: Checked inductivity of 64 backedges. 8 proven. 56 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:55:13,217 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 12:55:13,217 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [724952683] [2022-04-15 12:55:13,217 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [724952683] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 12:55:13,217 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [137450997] [2022-04-15 12:55:13,217 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:55:13,217 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:55:13,217 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 12:55:13,218 INFO L229 MonitoredProcess]: Starting monitored process 21 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 12:55:13,218 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Waiting until timeout for monitored process [2022-04-15 12:55:13,259 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:55:13,260 INFO L263 TraceCheckSpWp]: Trace formula consists of 135 conjuncts, 32 conjunts are in the unsatisfiable core [2022-04-15 12:55:13,272 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:55:13,274 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 12:55:13,735 INFO L272 TraceCheckUtils]: 0: Hoare triple {7961#true} call ULTIMATE.init(); {7961#true} is VALID [2022-04-15 12:55:13,735 INFO L290 TraceCheckUtils]: 1: Hoare triple {7961#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(10, 2);call #Ultimate.allocInit(12, 3); {7961#true} is VALID [2022-04-15 12:55:13,735 INFO L290 TraceCheckUtils]: 2: Hoare triple {7961#true} assume true; {7961#true} is VALID [2022-04-15 12:55:13,735 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7961#true} {7961#true} #61#return; {7961#true} is VALID [2022-04-15 12:55:13,735 INFO L272 TraceCheckUtils]: 4: Hoare triple {7961#true} call #t~ret11 := main(); {7961#true} is VALID [2022-04-15 12:55:13,735 INFO L290 TraceCheckUtils]: 5: Hoare triple {7961#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {7961#true} is VALID [2022-04-15 12:55:13,736 INFO L290 TraceCheckUtils]: 6: Hoare triple {7961#true} [107] L16-2-->L16-3_primed: Formula: (or (and (<= v_main_~x~0_Out_44 v_main_~x~0_In_22) (= |v_main_#t~post6_Out_44| 0) (= |v_main_#t~post5_Out_44| 0) (= (+ v_main_~x~0_In_22 v_main_~y~0_In_22) (+ v_main_~y~0_Out_44 v_main_~x~0_Out_44)) (< 0 (mod (+ v_main_~x~0_Out_44 1) 4294967296))) (and (= v_main_~y~0_In_22 v_main_~y~0_Out_44) (= v_main_~x~0_In_22 v_main_~x~0_Out_44))) InVars {main_~x~0=v_main_~x~0_In_22, main_~y~0=v_main_~y~0_In_22} OutVars{main_~y~0=v_main_~y~0_Out_44, main_#t~post5=|v_main_#t~post5_Out_44|, main_~x~0=v_main_~x~0_Out_44, main_#t~post6=|v_main_#t~post6_Out_44|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {7961#true} is VALID [2022-04-15 12:55:13,736 INFO L290 TraceCheckUtils]: 7: Hoare triple {7961#true} [106] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {7961#true} is VALID [2022-04-15 12:55:13,737 INFO L290 TraceCheckUtils]: 8: Hoare triple {7961#true} ~z~0 := ~y~0; {7966#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} is VALID [2022-04-15 12:55:13,741 INFO L290 TraceCheckUtils]: 9: Hoare triple {7966#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7967#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} is VALID [2022-04-15 12:55:13,745 INFO L290 TraceCheckUtils]: 10: Hoare triple {7967#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7968#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} is VALID [2022-04-15 12:55:13,747 INFO L290 TraceCheckUtils]: 11: Hoare triple {7968#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7969#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} is VALID [2022-04-15 12:55:13,749 INFO L290 TraceCheckUtils]: 12: Hoare triple {7969#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7970#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} is VALID [2022-04-15 12:55:13,751 INFO L290 TraceCheckUtils]: 13: Hoare triple {7970#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7971#(and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))} is VALID [2022-04-15 12:55:13,753 INFO L290 TraceCheckUtils]: 14: Hoare triple {7971#(and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7972#(and (<= (+ main_~z~0 6) main_~y~0) (<= main_~y~0 (+ main_~z~0 6)))} is VALID [2022-04-15 12:55:13,754 INFO L290 TraceCheckUtils]: 15: Hoare triple {7972#(and (<= (+ main_~z~0 6) main_~y~0) (<= main_~y~0 (+ main_~z~0 6)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {7973#(and (<= main_~y~0 (+ 7 main_~z~0)) (<= (+ 7 main_~z~0) main_~y~0))} is VALID [2022-04-15 12:55:13,758 INFO L290 TraceCheckUtils]: 16: Hoare triple {7973#(and (<= main_~y~0 (+ 7 main_~z~0)) (<= (+ 7 main_~z~0) main_~y~0))} assume !(~z~0 % 4294967296 > 0); {8034#(<= (div (+ 7 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 7)) 4294967296))} is VALID [2022-04-15 12:55:13,760 INFO L290 TraceCheckUtils]: 17: Hoare triple {8034#(<= (div (+ 7 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 7)) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7975#(<= main_~y~0 (+ 6 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} is VALID [2022-04-15 12:55:13,764 INFO L290 TraceCheckUtils]: 18: Hoare triple {7975#(<= main_~y~0 (+ 6 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7976#(<= main_~y~0 (+ 5 (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:55:13,767 INFO L290 TraceCheckUtils]: 19: Hoare triple {7976#(<= main_~y~0 (+ 5 (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7977#(<= main_~y~0 (+ 4 (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:55:13,770 INFO L290 TraceCheckUtils]: 20: Hoare triple {7977#(<= main_~y~0 (+ 4 (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7978#(<= main_~y~0 (+ 3 (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:55:13,772 INFO L290 TraceCheckUtils]: 21: Hoare triple {7978#(<= main_~y~0 (+ 3 (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7979#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} is VALID [2022-04-15 12:55:13,774 INFO L290 TraceCheckUtils]: 22: Hoare triple {7979#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7980#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} is VALID [2022-04-15 12:55:13,776 INFO L290 TraceCheckUtils]: 23: Hoare triple {7980#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7981#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} is VALID [2022-04-15 12:55:13,778 INFO L290 TraceCheckUtils]: 24: Hoare triple {7981#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7962#false} is VALID [2022-04-15 12:55:13,778 INFO L290 TraceCheckUtils]: 25: Hoare triple {7962#false} assume !(~y~0 % 4294967296 > 0); {7962#false} is VALID [2022-04-15 12:55:13,778 INFO L272 TraceCheckUtils]: 26: Hoare triple {7962#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {7962#false} is VALID [2022-04-15 12:55:13,778 INFO L290 TraceCheckUtils]: 27: Hoare triple {7962#false} ~cond := #in~cond; {7962#false} is VALID [2022-04-15 12:55:13,778 INFO L290 TraceCheckUtils]: 28: Hoare triple {7962#false} assume 0 == ~cond; {7962#false} is VALID [2022-04-15 12:55:13,778 INFO L290 TraceCheckUtils]: 29: Hoare triple {7962#false} assume !false; {7962#false} is VALID [2022-04-15 12:55:13,778 INFO L134 CoverageAnalysis]: Checked inductivity of 64 backedges. 8 proven. 56 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:55:13,778 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 12:55:14,998 INFO L290 TraceCheckUtils]: 29: Hoare triple {7962#false} assume !false; {7962#false} is VALID [2022-04-15 12:55:14,998 INFO L290 TraceCheckUtils]: 28: Hoare triple {7962#false} assume 0 == ~cond; {7962#false} is VALID [2022-04-15 12:55:14,998 INFO L290 TraceCheckUtils]: 27: Hoare triple {7962#false} ~cond := #in~cond; {7962#false} is VALID [2022-04-15 12:55:14,998 INFO L272 TraceCheckUtils]: 26: Hoare triple {7962#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {7962#false} is VALID [2022-04-15 12:55:14,998 INFO L290 TraceCheckUtils]: 25: Hoare triple {7962#false} assume !(~y~0 % 4294967296 > 0); {7962#false} is VALID [2022-04-15 12:55:15,001 INFO L290 TraceCheckUtils]: 24: Hoare triple {7981#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7962#false} is VALID [2022-04-15 12:55:15,003 INFO L290 TraceCheckUtils]: 23: Hoare triple {7980#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7981#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} is VALID [2022-04-15 12:55:15,006 INFO L290 TraceCheckUtils]: 22: Hoare triple {7979#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7980#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} is VALID [2022-04-15 12:55:15,008 INFO L290 TraceCheckUtils]: 21: Hoare triple {7978#(<= main_~y~0 (+ 3 (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7979#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} is VALID [2022-04-15 12:55:15,013 INFO L290 TraceCheckUtils]: 20: Hoare triple {7977#(<= main_~y~0 (+ 4 (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7978#(<= main_~y~0 (+ 3 (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:55:15,017 INFO L290 TraceCheckUtils]: 19: Hoare triple {7976#(<= main_~y~0 (+ 5 (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7977#(<= main_~y~0 (+ 4 (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:55:15,020 INFO L290 TraceCheckUtils]: 18: Hoare triple {7975#(<= main_~y~0 (+ 6 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7976#(<= main_~y~0 (+ 5 (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:55:15,023 INFO L290 TraceCheckUtils]: 17: Hoare triple {8034#(<= (div (+ 7 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 7)) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {7975#(<= main_~y~0 (+ 6 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} is VALID [2022-04-15 12:55:15,023 INFO L290 TraceCheckUtils]: 16: Hoare triple {8113#(or (< 0 (mod main_~z~0 4294967296)) (<= (div (+ 7 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 7)) 4294967296)))} assume !(~z~0 % 4294967296 > 0); {8034#(<= (div (+ 7 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 7)) 4294967296))} is VALID [2022-04-15 12:55:15,028 INFO L290 TraceCheckUtils]: 15: Hoare triple {8117#(or (<= (div (+ 7 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 7)) 4294967296)) (< 0 (mod (+ main_~z~0 4294967295) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {8113#(or (< 0 (mod main_~z~0 4294967296)) (<= (div (+ 7 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 7)) 4294967296)))} is VALID [2022-04-15 12:55:15,031 INFO L290 TraceCheckUtils]: 14: Hoare triple {8121#(or (< 0 (mod (+ main_~z~0 4294967294) 4294967296)) (<= (div (+ 7 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 7)) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {8117#(or (<= (div (+ 7 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 7)) 4294967296)) (< 0 (mod (+ main_~z~0 4294967295) 4294967296)))} is VALID [2022-04-15 12:55:15,036 INFO L290 TraceCheckUtils]: 13: Hoare triple {8125#(or (<= (div (+ 7 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 7)) 4294967296)) (< 0 (mod (+ main_~z~0 4294967293) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {8121#(or (< 0 (mod (+ main_~z~0 4294967294) 4294967296)) (<= (div (+ 7 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 7)) 4294967296)))} is VALID [2022-04-15 12:55:15,039 INFO L290 TraceCheckUtils]: 12: Hoare triple {8129#(or (< 0 (mod (+ 4294967292 main_~z~0) 4294967296)) (<= (div (+ 7 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 7)) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {8125#(or (<= (div (+ 7 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 7)) 4294967296)) (< 0 (mod (+ main_~z~0 4294967293) 4294967296)))} is VALID [2022-04-15 12:55:15,043 INFO L290 TraceCheckUtils]: 11: Hoare triple {8133#(or (< 0 (mod (+ 4294967291 main_~z~0) 4294967296)) (<= (div (+ 7 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 7)) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {8129#(or (< 0 (mod (+ 4294967292 main_~z~0) 4294967296)) (<= (div (+ 7 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 7)) 4294967296)))} is VALID [2022-04-15 12:55:15,045 INFO L290 TraceCheckUtils]: 10: Hoare triple {8137#(or (<= (div (+ 7 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 7)) 4294967296)) (< 0 (mod (+ 4294967290 main_~z~0) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {8133#(or (< 0 (mod (+ 4294967291 main_~z~0) 4294967296)) (<= (div (+ 7 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 7)) 4294967296)))} is VALID [2022-04-15 12:55:15,048 INFO L290 TraceCheckUtils]: 9: Hoare triple {8141#(or (<= (div (+ 7 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 7)) 4294967296)) (< 0 (mod (+ main_~z~0 4294967289) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {8137#(or (<= (div (+ 7 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 7)) 4294967296)) (< 0 (mod (+ 4294967290 main_~z~0) 4294967296)))} is VALID [2022-04-15 12:55:15,050 INFO L290 TraceCheckUtils]: 8: Hoare triple {7961#true} ~z~0 := ~y~0; {8141#(or (<= (div (+ 7 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 7)) 4294967296)) (< 0 (mod (+ main_~z~0 4294967289) 4294967296)))} is VALID [2022-04-15 12:55:15,050 INFO L290 TraceCheckUtils]: 7: Hoare triple {7961#true} [106] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {7961#true} is VALID [2022-04-15 12:55:15,051 INFO L290 TraceCheckUtils]: 6: Hoare triple {7961#true} [107] L16-2-->L16-3_primed: Formula: (or (and (<= v_main_~x~0_Out_44 v_main_~x~0_In_22) (= |v_main_#t~post6_Out_44| 0) (= |v_main_#t~post5_Out_44| 0) (= (+ v_main_~x~0_In_22 v_main_~y~0_In_22) (+ v_main_~y~0_Out_44 v_main_~x~0_Out_44)) (< 0 (mod (+ v_main_~x~0_Out_44 1) 4294967296))) (and (= v_main_~y~0_In_22 v_main_~y~0_Out_44) (= v_main_~x~0_In_22 v_main_~x~0_Out_44))) InVars {main_~x~0=v_main_~x~0_In_22, main_~y~0=v_main_~y~0_In_22} OutVars{main_~y~0=v_main_~y~0_Out_44, main_#t~post5=|v_main_#t~post5_Out_44|, main_~x~0=v_main_~x~0_Out_44, main_#t~post6=|v_main_#t~post6_Out_44|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {7961#true} is VALID [2022-04-15 12:55:15,051 INFO L290 TraceCheckUtils]: 5: Hoare triple {7961#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {7961#true} is VALID [2022-04-15 12:55:15,051 INFO L272 TraceCheckUtils]: 4: Hoare triple {7961#true} call #t~ret11 := main(); {7961#true} is VALID [2022-04-15 12:55:15,051 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7961#true} {7961#true} #61#return; {7961#true} is VALID [2022-04-15 12:55:15,051 INFO L290 TraceCheckUtils]: 2: Hoare triple {7961#true} assume true; {7961#true} is VALID [2022-04-15 12:55:15,051 INFO L290 TraceCheckUtils]: 1: Hoare triple {7961#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(10, 2);call #Ultimate.allocInit(12, 3); {7961#true} is VALID [2022-04-15 12:55:15,051 INFO L272 TraceCheckUtils]: 0: Hoare triple {7961#true} call ULTIMATE.init(); {7961#true} is VALID [2022-04-15 12:55:15,051 INFO L134 CoverageAnalysis]: Checked inductivity of 64 backedges. 8 proven. 56 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:55:15,051 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [137450997] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 12:55:15,051 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 12:55:15,052 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 18, 18] total 28 [2022-04-15 12:55:17,385 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 12:55:17,385 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1823549268] [2022-04-15 12:55:17,385 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1823549268] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 12:55:17,385 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 12:55:17,386 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [25] imperfect sequences [] total 25 [2022-04-15 12:55:17,386 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1420584806] [2022-04-15 12:55:17,386 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 12:55:17,386 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 25 states have (on average 1.24) internal successors, (31), 24 states have internal predecessors, (31), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 35 [2022-04-15 12:55:17,386 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 12:55:17,386 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 25 states, 25 states have (on average 1.24) internal successors, (31), 24 states have internal predecessors, (31), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:55:17,484 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-15 12:55:17,484 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 25 states [2022-04-15 12:55:17,485 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 12:55:17,485 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 25 interpolants. [2022-04-15 12:55:17,485 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=105, Invalid=1017, Unknown=0, NotChecked=0, Total=1122 [2022-04-15 12:55:17,485 INFO L87 Difference]: Start difference. First operand 37 states and 40 transitions. Second operand has 25 states, 25 states have (on average 1.24) internal successors, (31), 24 states have internal predecessors, (31), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:55:35,556 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:55:35,556 INFO L93 Difference]: Finished difference Result 69 states and 75 transitions. [2022-04-15 12:55:35,556 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 33 states. [2022-04-15 12:55:35,556 INFO L78 Accepts]: Start accepts. Automaton has has 25 states, 25 states have (on average 1.24) internal successors, (31), 24 states have internal predecessors, (31), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 35 [2022-04-15 12:55:35,557 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 12:55:35,557 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 25 states have (on average 1.24) internal successors, (31), 24 states have internal predecessors, (31), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:55:35,557 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 58 transitions. [2022-04-15 12:55:35,558 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 25 states, 25 states have (on average 1.24) internal successors, (31), 24 states have internal predecessors, (31), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:55:35,558 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 33 states to 33 states and 58 transitions. [2022-04-15 12:55:35,558 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 33 states and 58 transitions. [2022-04-15 12:55:36,105 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 58 edges. 58 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:55:36,106 INFO L225 Difference]: With dead ends: 69 [2022-04-15 12:55:36,106 INFO L226 Difference]: Without dead ends: 37 [2022-04-15 12:55:36,107 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 124 GetRequests, 57 SyntacticMatches, 5 SemanticMatches, 62 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 601 ImplicationChecksByTransitivity, 11.7s TimeCoverageRelationStatistics Valid=407, Invalid=3625, Unknown=0, NotChecked=0, Total=4032 [2022-04-15 12:55:36,107 INFO L913 BasicCegarLoop]: 11 mSDtfsCounter, 24 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 563 mSolverCounterSat, 60 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 3.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 24 SdHoareTripleChecker+Valid, 108 SdHoareTripleChecker+Invalid, 623 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 60 IncrementalHoareTripleChecker+Valid, 563 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 3.9s IncrementalHoareTripleChecker+Time [2022-04-15 12:55:36,107 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [24 Valid, 108 Invalid, 623 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [60 Valid, 563 Invalid, 0 Unknown, 0 Unchecked, 3.9s Time] [2022-04-15 12:55:36,107 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 37 states. [2022-04-15 12:55:36,287 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 37 to 37. [2022-04-15 12:55:36,287 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 12:55:36,288 INFO L82 GeneralOperation]: Start isEquivalent. First operand 37 states. Second operand has 37 states, 32 states have (on average 1.09375) internal successors, (35), 32 states have internal predecessors, (35), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:55:36,288 INFO L74 IsIncluded]: Start isIncluded. First operand 37 states. Second operand has 37 states, 32 states have (on average 1.09375) internal successors, (35), 32 states have internal predecessors, (35), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:55:36,288 INFO L87 Difference]: Start difference. First operand 37 states. Second operand has 37 states, 32 states have (on average 1.09375) internal successors, (35), 32 states have internal predecessors, (35), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:55:36,288 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:55:36,288 INFO L93 Difference]: Finished difference Result 37 states and 39 transitions. [2022-04-15 12:55:36,289 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 39 transitions. [2022-04-15 12:55:36,289 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:55:36,289 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:55:36,289 INFO L74 IsIncluded]: Start isIncluded. First operand has 37 states, 32 states have (on average 1.09375) internal successors, (35), 32 states have internal predecessors, (35), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 37 states. [2022-04-15 12:55:36,289 INFO L87 Difference]: Start difference. First operand has 37 states, 32 states have (on average 1.09375) internal successors, (35), 32 states have internal predecessors, (35), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 37 states. [2022-04-15 12:55:36,289 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:55:36,289 INFO L93 Difference]: Finished difference Result 37 states and 39 transitions. [2022-04-15 12:55:36,289 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 39 transitions. [2022-04-15 12:55:36,290 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:55:36,290 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:55:36,290 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 12:55:36,290 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 12:55:36,290 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 37 states, 32 states have (on average 1.09375) internal successors, (35), 32 states have internal predecessors, (35), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:55:36,290 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 39 transitions. [2022-04-15 12:55:36,290 INFO L78 Accepts]: Start accepts. Automaton has 37 states and 39 transitions. Word has length 35 [2022-04-15 12:55:36,290 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 12:55:36,290 INFO L478 AbstractCegarLoop]: Abstraction has 37 states and 39 transitions. [2022-04-15 12:55:36,291 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 25 states, 25 states have (on average 1.24) internal successors, (31), 24 states have internal predecessors, (31), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:55:36,291 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 37 states and 39 transitions. [2022-04-15 12:55:38,731 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:55:38,732 INFO L276 IsEmpty]: Start isEmpty. Operand 37 states and 39 transitions. [2022-04-15 12:55:38,732 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-15 12:55:38,732 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 12:55:38,732 INFO L499 BasicCegarLoop]: trace histogram [8, 7, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 12:55:38,757 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (21)] Forceful destruction successful, exit code 0 [2022-04-15 12:55:38,932 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 21 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable22 [2022-04-15 12:55:38,933 INFO L403 AbstractCegarLoop]: === Iteration 24 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 12:55:38,933 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 12:55:38,933 INFO L85 PathProgramCache]: Analyzing trace with hash 1944519039, now seen corresponding path program 21 times [2022-04-15 12:55:38,933 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 12:55:38,933 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [41997726] [2022-04-15 12:55:39,108 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-15 12:55:39,109 INFO L85 PathProgramCache]: Analyzing trace with hash 1083706016, now seen corresponding path program 1 times [2022-04-15 12:55:39,109 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 12:55:39,109 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [674218083] [2022-04-15 12:55:39,109 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:55:39,109 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 12:55:39,135 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:55:39,806 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 12:55:39,807 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:55:39,809 INFO L290 TraceCheckUtils]: 0: Hoare triple {8547#(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(10, 2);call #Ultimate.allocInit(12, 3); {8526#true} is VALID [2022-04-15 12:55:39,809 INFO L290 TraceCheckUtils]: 1: Hoare triple {8526#true} assume true; {8526#true} is VALID [2022-04-15 12:55:39,809 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {8526#true} {8526#true} #61#return; {8526#true} is VALID [2022-04-15 12:55:39,809 INFO L272 TraceCheckUtils]: 0: Hoare triple {8526#true} call ULTIMATE.init(); {8547#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 12:55:39,810 INFO L290 TraceCheckUtils]: 1: Hoare triple {8547#(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(10, 2);call #Ultimate.allocInit(12, 3); {8526#true} is VALID [2022-04-15 12:55:39,810 INFO L290 TraceCheckUtils]: 2: Hoare triple {8526#true} assume true; {8526#true} is VALID [2022-04-15 12:55:39,810 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8526#true} {8526#true} #61#return; {8526#true} is VALID [2022-04-15 12:55:39,810 INFO L272 TraceCheckUtils]: 4: Hoare triple {8526#true} call #t~ret11 := main(); {8526#true} is VALID [2022-04-15 12:55:39,810 INFO L290 TraceCheckUtils]: 5: Hoare triple {8526#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {8526#true} is VALID [2022-04-15 12:55:39,810 INFO L290 TraceCheckUtils]: 6: Hoare triple {8526#true} [109] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~x~0_In_23 v_main_~x~0_Out_46) (= v_main_~y~0_In_23 v_main_~y~0_Out_46)) (and (= |v_main_#t~post5_Out_46| 0) (= (+ v_main_~y~0_Out_46 v_main_~x~0_Out_46) (+ v_main_~x~0_In_23 v_main_~y~0_In_23)) (< 0 (mod (+ v_main_~x~0_Out_46 1) 4294967296)) (= |v_main_#t~post6_Out_46| 0) (<= v_main_~x~0_Out_46 v_main_~x~0_In_23))) InVars {main_~x~0=v_main_~x~0_In_23, main_~y~0=v_main_~y~0_In_23} OutVars{main_~y~0=v_main_~y~0_Out_46, main_#t~post5=|v_main_#t~post5_Out_46|, main_~x~0=v_main_~x~0_Out_46, main_#t~post6=|v_main_#t~post6_Out_46|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {8526#true} is VALID [2022-04-15 12:55:39,810 INFO L290 TraceCheckUtils]: 7: Hoare triple {8526#true} [108] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {8526#true} is VALID [2022-04-15 12:55:39,811 INFO L290 TraceCheckUtils]: 8: Hoare triple {8526#true} ~z~0 := ~y~0; {8531#(= (+ main_~y~0 (* (- 1) main_~z~0)) 0)} is VALID [2022-04-15 12:55:39,816 INFO L290 TraceCheckUtils]: 9: Hoare triple {8531#(= (+ main_~y~0 (* (- 1) main_~z~0)) 0)} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {8532#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} is VALID [2022-04-15 12:55:39,824 INFO L290 TraceCheckUtils]: 10: Hoare triple {8532#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {8533#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} is VALID [2022-04-15 12:55:39,828 INFO L290 TraceCheckUtils]: 11: Hoare triple {8533#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {8534#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} is VALID [2022-04-15 12:55:39,830 INFO L290 TraceCheckUtils]: 12: Hoare triple {8534#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {8535#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} is VALID [2022-04-15 12:55:39,833 INFO L290 TraceCheckUtils]: 13: Hoare triple {8535#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {8536#(and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))} is VALID [2022-04-15 12:55:39,835 INFO L290 TraceCheckUtils]: 14: Hoare triple {8536#(and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {8537#(and (<= (+ main_~z~0 6) main_~y~0) (<= main_~y~0 (+ main_~z~0 6)))} is VALID [2022-04-15 12:55:39,837 INFO L290 TraceCheckUtils]: 15: Hoare triple {8537#(and (<= (+ main_~z~0 6) main_~y~0) (<= main_~y~0 (+ main_~z~0 6)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {8538#(and (<= main_~y~0 (+ 7 main_~z~0)) (<= (+ 7 main_~z~0) main_~y~0))} is VALID [2022-04-15 12:55:39,841 INFO L290 TraceCheckUtils]: 16: Hoare triple {8538#(and (<= main_~y~0 (+ 7 main_~z~0)) (<= (+ 7 main_~z~0) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {8539#(<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:55:39,841 INFO L290 TraceCheckUtils]: 17: Hoare triple {8539#(<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296)))} assume !(~z~0 % 4294967296 > 0); {8539#(<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:55:39,845 INFO L290 TraceCheckUtils]: 18: Hoare triple {8539#(<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {8540#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301))} is VALID [2022-04-15 12:55:39,847 INFO L290 TraceCheckUtils]: 19: Hoare triple {8540#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {8541#(<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} is VALID [2022-04-15 12:55:39,853 INFO L290 TraceCheckUtils]: 20: Hoare triple {8541#(<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {8542#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} is VALID [2022-04-15 12:55:39,857 INFO L290 TraceCheckUtils]: 21: Hoare triple {8542#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {8543#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} is VALID [2022-04-15 12:55:39,860 INFO L290 TraceCheckUtils]: 22: Hoare triple {8543#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {8544#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} is VALID [2022-04-15 12:55:39,862 INFO L290 TraceCheckUtils]: 23: Hoare triple {8544#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {8545#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} is VALID [2022-04-15 12:55:39,867 INFO L290 TraceCheckUtils]: 24: Hoare triple {8545#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {8546#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} is VALID [2022-04-15 12:55:39,869 INFO L290 TraceCheckUtils]: 25: Hoare triple {8546#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} assume !(~y~0 % 4294967296 > 0); {8527#false} is VALID [2022-04-15 12:55:39,869 INFO L272 TraceCheckUtils]: 26: Hoare triple {8527#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {8527#false} is VALID [2022-04-15 12:55:39,870 INFO L290 TraceCheckUtils]: 27: Hoare triple {8527#false} ~cond := #in~cond; {8527#false} is VALID [2022-04-15 12:55:39,870 INFO L290 TraceCheckUtils]: 28: Hoare triple {8527#false} assume 0 == ~cond; {8527#false} is VALID [2022-04-15 12:55:39,870 INFO L290 TraceCheckUtils]: 29: Hoare triple {8527#false} assume !false; {8527#false} is VALID [2022-04-15 12:55:39,870 INFO L134 CoverageAnalysis]: Checked inductivity of 64 backedges. 0 proven. 64 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:55:39,870 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 12:55:39,870 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [674218083] [2022-04-15 12:55:39,870 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [674218083] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 12:55:39,870 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [736571267] [2022-04-15 12:55:39,870 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:55:39,871 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:55:39,871 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 12:55:39,871 INFO L229 MonitoredProcess]: Starting monitored process 22 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 12:55:39,873 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Waiting until timeout for monitored process [2022-04-15 12:55:39,909 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:55:39,910 INFO L263 TraceCheckSpWp]: Trace formula consists of 135 conjuncts, 32 conjunts are in the unsatisfiable core [2022-04-15 12:55:39,929 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:55:39,931 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 12:55:40,458 INFO L272 TraceCheckUtils]: 0: Hoare triple {8526#true} call ULTIMATE.init(); {8526#true} is VALID [2022-04-15 12:55:40,458 INFO L290 TraceCheckUtils]: 1: Hoare triple {8526#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(10, 2);call #Ultimate.allocInit(12, 3); {8526#true} is VALID [2022-04-15 12:55:40,459 INFO L290 TraceCheckUtils]: 2: Hoare triple {8526#true} assume true; {8526#true} is VALID [2022-04-15 12:55:40,459 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8526#true} {8526#true} #61#return; {8526#true} is VALID [2022-04-15 12:55:40,459 INFO L272 TraceCheckUtils]: 4: Hoare triple {8526#true} call #t~ret11 := main(); {8526#true} is VALID [2022-04-15 12:55:40,459 INFO L290 TraceCheckUtils]: 5: Hoare triple {8526#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {8526#true} is VALID [2022-04-15 12:55:40,459 INFO L290 TraceCheckUtils]: 6: Hoare triple {8526#true} [109] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~x~0_In_23 v_main_~x~0_Out_46) (= v_main_~y~0_In_23 v_main_~y~0_Out_46)) (and (= |v_main_#t~post5_Out_46| 0) (= (+ v_main_~y~0_Out_46 v_main_~x~0_Out_46) (+ v_main_~x~0_In_23 v_main_~y~0_In_23)) (< 0 (mod (+ v_main_~x~0_Out_46 1) 4294967296)) (= |v_main_#t~post6_Out_46| 0) (<= v_main_~x~0_Out_46 v_main_~x~0_In_23))) InVars {main_~x~0=v_main_~x~0_In_23, main_~y~0=v_main_~y~0_In_23} OutVars{main_~y~0=v_main_~y~0_Out_46, main_#t~post5=|v_main_#t~post5_Out_46|, main_~x~0=v_main_~x~0_Out_46, main_#t~post6=|v_main_#t~post6_Out_46|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {8526#true} is VALID [2022-04-15 12:55:40,459 INFO L290 TraceCheckUtils]: 7: Hoare triple {8526#true} [108] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {8526#true} is VALID [2022-04-15 12:55:40,459 INFO L290 TraceCheckUtils]: 8: Hoare triple {8526#true} ~z~0 := ~y~0; {8531#(= (+ main_~y~0 (* (- 1) main_~z~0)) 0)} is VALID [2022-04-15 12:55:40,464 INFO L290 TraceCheckUtils]: 9: Hoare triple {8531#(= (+ main_~y~0 (* (- 1) main_~z~0)) 0)} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {8532#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} is VALID [2022-04-15 12:55:40,471 INFO L290 TraceCheckUtils]: 10: Hoare triple {8532#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {8533#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} is VALID [2022-04-15 12:55:40,474 INFO L290 TraceCheckUtils]: 11: Hoare triple {8533#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {8534#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} is VALID [2022-04-15 12:55:40,476 INFO L290 TraceCheckUtils]: 12: Hoare triple {8534#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {8535#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} is VALID [2022-04-15 12:55:40,478 INFO L290 TraceCheckUtils]: 13: Hoare triple {8535#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {8536#(and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))} is VALID [2022-04-15 12:55:40,480 INFO L290 TraceCheckUtils]: 14: Hoare triple {8536#(and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {8537#(and (<= (+ main_~z~0 6) main_~y~0) (<= main_~y~0 (+ main_~z~0 6)))} is VALID [2022-04-15 12:55:40,482 INFO L290 TraceCheckUtils]: 15: Hoare triple {8537#(and (<= (+ main_~z~0 6) main_~y~0) (<= main_~y~0 (+ main_~z~0 6)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {8538#(and (<= main_~y~0 (+ 7 main_~z~0)) (<= (+ 7 main_~z~0) main_~y~0))} is VALID [2022-04-15 12:55:40,485 INFO L290 TraceCheckUtils]: 16: Hoare triple {8538#(and (<= main_~y~0 (+ 7 main_~z~0)) (<= (+ 7 main_~z~0) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {8539#(<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:55:40,486 INFO L290 TraceCheckUtils]: 17: Hoare triple {8539#(<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296)))} assume !(~z~0 % 4294967296 > 0); {8539#(<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:55:40,489 INFO L290 TraceCheckUtils]: 18: Hoare triple {8539#(<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {8540#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301))} is VALID [2022-04-15 12:55:40,491 INFO L290 TraceCheckUtils]: 19: Hoare triple {8540#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {8541#(<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} is VALID [2022-04-15 12:55:40,497 INFO L290 TraceCheckUtils]: 20: Hoare triple {8541#(<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {8542#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} is VALID [2022-04-15 12:55:40,501 INFO L290 TraceCheckUtils]: 21: Hoare triple {8542#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {8543#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} is VALID [2022-04-15 12:55:40,503 INFO L290 TraceCheckUtils]: 22: Hoare triple {8543#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {8544#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} is VALID [2022-04-15 12:55:40,505 INFO L290 TraceCheckUtils]: 23: Hoare triple {8544#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {8545#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} is VALID [2022-04-15 12:55:40,511 INFO L290 TraceCheckUtils]: 24: Hoare triple {8545#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {8546#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} is VALID [2022-04-15 12:55:40,513 INFO L290 TraceCheckUtils]: 25: Hoare triple {8546#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} assume !(~y~0 % 4294967296 > 0); {8527#false} is VALID [2022-04-15 12:55:40,513 INFO L272 TraceCheckUtils]: 26: Hoare triple {8527#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {8527#false} is VALID [2022-04-15 12:55:40,513 INFO L290 TraceCheckUtils]: 27: Hoare triple {8527#false} ~cond := #in~cond; {8527#false} is VALID [2022-04-15 12:55:40,513 INFO L290 TraceCheckUtils]: 28: Hoare triple {8527#false} assume 0 == ~cond; {8527#false} is VALID [2022-04-15 12:55:40,513 INFO L290 TraceCheckUtils]: 29: Hoare triple {8527#false} assume !false; {8527#false} is VALID [2022-04-15 12:55:40,514 INFO L134 CoverageAnalysis]: Checked inductivity of 64 backedges. 0 proven. 64 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:55:40,514 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 12:55:41,782 INFO L290 TraceCheckUtils]: 29: Hoare triple {8527#false} assume !false; {8527#false} is VALID [2022-04-15 12:55:41,783 INFO L290 TraceCheckUtils]: 28: Hoare triple {8527#false} assume 0 == ~cond; {8527#false} is VALID [2022-04-15 12:55:41,783 INFO L290 TraceCheckUtils]: 27: Hoare triple {8527#false} ~cond := #in~cond; {8527#false} is VALID [2022-04-15 12:55:41,783 INFO L272 TraceCheckUtils]: 26: Hoare triple {8527#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {8527#false} is VALID [2022-04-15 12:55:41,785 INFO L290 TraceCheckUtils]: 25: Hoare triple {8546#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} assume !(~y~0 % 4294967296 > 0); {8527#false} is VALID [2022-04-15 12:55:41,790 INFO L290 TraceCheckUtils]: 24: Hoare triple {8545#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {8546#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} is VALID [2022-04-15 12:55:41,794 INFO L290 TraceCheckUtils]: 23: Hoare triple {8544#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {8545#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} is VALID [2022-04-15 12:55:41,797 INFO L290 TraceCheckUtils]: 22: Hoare triple {8543#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {8544#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} is VALID [2022-04-15 12:55:41,799 INFO L290 TraceCheckUtils]: 21: Hoare triple {8542#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {8543#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} is VALID [2022-04-15 12:55:41,804 INFO L290 TraceCheckUtils]: 20: Hoare triple {8541#(<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {8542#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} is VALID [2022-04-15 12:55:41,808 INFO L290 TraceCheckUtils]: 19: Hoare triple {8540#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {8541#(<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} is VALID [2022-04-15 12:55:41,810 INFO L290 TraceCheckUtils]: 18: Hoare triple {8539#(<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {8540#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301))} is VALID [2022-04-15 12:55:41,810 INFO L290 TraceCheckUtils]: 17: Hoare triple {8539#(<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296)))} assume !(~z~0 % 4294967296 > 0); {8539#(<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:55:41,810 INFO L290 TraceCheckUtils]: 16: Hoare triple {8677#(or (<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296))) (not (< 0 (mod main_~z~0 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {8539#(<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:55:41,822 INFO L290 TraceCheckUtils]: 15: Hoare triple {8681#(or (not (< 0 (mod (+ main_~z~0 4294967295) 4294967296))) (<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {8677#(or (<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296))) (not (< 0 (mod main_~z~0 4294967296))))} is VALID [2022-04-15 12:55:41,829 INFO L290 TraceCheckUtils]: 14: Hoare triple {8685#(or (<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296))) (not (< 0 (mod (+ main_~z~0 4294967294) 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {8681#(or (not (< 0 (mod (+ main_~z~0 4294967295) 4294967296))) (<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296))))} is VALID [2022-04-15 12:55:41,834 INFO L290 TraceCheckUtils]: 13: Hoare triple {8689#(or (<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296))) (not (< 0 (mod (+ main_~z~0 4294967293) 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {8685#(or (<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296))) (not (< 0 (mod (+ main_~z~0 4294967294) 4294967296))))} is VALID [2022-04-15 12:55:41,838 INFO L290 TraceCheckUtils]: 12: Hoare triple {8693#(or (<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296))) (not (< 0 (mod (+ 4294967292 main_~z~0) 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {8689#(or (<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296))) (not (< 0 (mod (+ main_~z~0 4294967293) 4294967296))))} is VALID [2022-04-15 12:55:41,846 INFO L290 TraceCheckUtils]: 11: Hoare triple {8697#(or (<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296))) (not (< 0 (mod (+ 4294967291 main_~z~0) 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {8693#(or (<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296))) (not (< 0 (mod (+ 4294967292 main_~z~0) 4294967296))))} is VALID [2022-04-15 12:55:41,851 INFO L290 TraceCheckUtils]: 10: Hoare triple {8701#(or (<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296))) (not (< 0 (mod (+ 4294967290 main_~z~0) 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {8697#(or (<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296))) (not (< 0 (mod (+ 4294967291 main_~z~0) 4294967296))))} is VALID [2022-04-15 12:55:41,854 INFO L290 TraceCheckUtils]: 9: Hoare triple {8705#(or (<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296))) (not (< 0 (mod (+ main_~z~0 4294967289) 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {8701#(or (<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296))) (not (< 0 (mod (+ 4294967290 main_~z~0) 4294967296))))} is VALID [2022-04-15 12:55:41,856 INFO L290 TraceCheckUtils]: 8: Hoare triple {8526#true} ~z~0 := ~y~0; {8705#(or (<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296))) (not (< 0 (mod (+ main_~z~0 4294967289) 4294967296))))} is VALID [2022-04-15 12:55:41,856 INFO L290 TraceCheckUtils]: 7: Hoare triple {8526#true} [108] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {8526#true} is VALID [2022-04-15 12:55:41,857 INFO L290 TraceCheckUtils]: 6: Hoare triple {8526#true} [109] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~x~0_In_23 v_main_~x~0_Out_46) (= v_main_~y~0_In_23 v_main_~y~0_Out_46)) (and (= |v_main_#t~post5_Out_46| 0) (= (+ v_main_~y~0_Out_46 v_main_~x~0_Out_46) (+ v_main_~x~0_In_23 v_main_~y~0_In_23)) (< 0 (mod (+ v_main_~x~0_Out_46 1) 4294967296)) (= |v_main_#t~post6_Out_46| 0) (<= v_main_~x~0_Out_46 v_main_~x~0_In_23))) InVars {main_~x~0=v_main_~x~0_In_23, main_~y~0=v_main_~y~0_In_23} OutVars{main_~y~0=v_main_~y~0_Out_46, main_#t~post5=|v_main_#t~post5_Out_46|, main_~x~0=v_main_~x~0_Out_46, main_#t~post6=|v_main_#t~post6_Out_46|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {8526#true} is VALID [2022-04-15 12:55:41,857 INFO L290 TraceCheckUtils]: 5: Hoare triple {8526#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {8526#true} is VALID [2022-04-15 12:55:41,857 INFO L272 TraceCheckUtils]: 4: Hoare triple {8526#true} call #t~ret11 := main(); {8526#true} is VALID [2022-04-15 12:55:41,857 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8526#true} {8526#true} #61#return; {8526#true} is VALID [2022-04-15 12:55:41,857 INFO L290 TraceCheckUtils]: 2: Hoare triple {8526#true} assume true; {8526#true} is VALID [2022-04-15 12:55:41,857 INFO L290 TraceCheckUtils]: 1: Hoare triple {8526#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(10, 2);call #Ultimate.allocInit(12, 3); {8526#true} is VALID [2022-04-15 12:55:41,857 INFO L272 TraceCheckUtils]: 0: Hoare triple {8526#true} call ULTIMATE.init(); {8526#true} is VALID [2022-04-15 12:55:41,857 INFO L134 CoverageAnalysis]: Checked inductivity of 64 backedges. 8 proven. 56 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:55:41,857 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [736571267] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 12:55:41,857 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 12:55:41,858 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [19, 18, 18] total 27 [2022-04-15 12:55:46,509 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 12:55:46,509 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [41997726] [2022-04-15 12:55:46,509 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [41997726] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 12:55:46,509 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 12:55:46,509 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [26] imperfect sequences [] total 26 [2022-04-15 12:55:46,509 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [923798489] [2022-04-15 12:55:46,509 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 12:55:46,510 INFO L78 Accepts]: Start accepts. Automaton has has 26 states, 26 states have (on average 1.2307692307692308) internal successors, (32), 25 states have internal predecessors, (32), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 36 [2022-04-15 12:55:46,510 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 12:55:46,510 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 26 states, 26 states have (on average 1.2307692307692308) internal successors, (32), 25 states have internal predecessors, (32), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:55:46,716 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 36 edges. 36 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:55:46,717 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 26 states [2022-04-15 12:55:46,717 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 12:55:46,717 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 26 interpolants. [2022-04-15 12:55:46,717 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=102, Invalid=1020, Unknown=0, NotChecked=0, Total=1122 [2022-04-15 12:55:46,718 INFO L87 Difference]: Start difference. First operand 37 states and 39 transitions. Second operand has 26 states, 26 states have (on average 1.2307692307692308) internal successors, (32), 25 states have internal predecessors, (32), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:56:16,638 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:56:16,638 INFO L93 Difference]: Finished difference Result 43 states and 45 transitions. [2022-04-15 12:56:16,638 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 27 states. [2022-04-15 12:56:16,638 INFO L78 Accepts]: Start accepts. Automaton has has 26 states, 26 states have (on average 1.2307692307692308) internal successors, (32), 25 states have internal predecessors, (32), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 36 [2022-04-15 12:56:16,638 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 12:56:16,638 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 26 states, 26 states have (on average 1.2307692307692308) internal successors, (32), 25 states have internal predecessors, (32), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:56:16,639 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 45 transitions. [2022-04-15 12:56:16,639 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 26 states, 26 states have (on average 1.2307692307692308) internal successors, (32), 25 states have internal predecessors, (32), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:56:16,639 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 45 transitions. [2022-04-15 12:56:16,640 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 27 states and 45 transitions. [2022-04-15 12:56:17,529 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-15 12:56:17,529 INFO L225 Difference]: With dead ends: 43 [2022-04-15 12:56:17,529 INFO L226 Difference]: Without dead ends: 38 [2022-04-15 12:56:17,530 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 117 GetRequests, 54 SyntacticMatches, 7 SemanticMatches, 56 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 448 ImplicationChecksByTransitivity, 17.2s TimeCoverageRelationStatistics Valid=460, Invalid=2846, Unknown=0, NotChecked=0, Total=3306 [2022-04-15 12:56:17,530 INFO L913 BasicCegarLoop]: 14 mSDtfsCounter, 27 mSDsluCounter, 97 mSDsCounter, 0 mSdLazyCounter, 415 mSolverCounterSat, 110 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 7.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 27 SdHoareTripleChecker+Valid, 111 SdHoareTripleChecker+Invalid, 525 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 110 IncrementalHoareTripleChecker+Valid, 415 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 7.2s IncrementalHoareTripleChecker+Time [2022-04-15 12:56:17,530 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [27 Valid, 111 Invalid, 525 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [110 Valid, 415 Invalid, 0 Unknown, 0 Unchecked, 7.2s Time] [2022-04-15 12:56:17,530 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 38 states. [2022-04-15 12:56:17,706 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 38 to 38. [2022-04-15 12:56:17,706 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 12:56:17,706 INFO L82 GeneralOperation]: Start isEquivalent. First operand 38 states. Second operand has 38 states, 33 states have (on average 1.0909090909090908) internal successors, (36), 33 states have internal predecessors, (36), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:56:17,706 INFO L74 IsIncluded]: Start isIncluded. First operand 38 states. Second operand has 38 states, 33 states have (on average 1.0909090909090908) internal successors, (36), 33 states have internal predecessors, (36), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:56:17,706 INFO L87 Difference]: Start difference. First operand 38 states. Second operand has 38 states, 33 states have (on average 1.0909090909090908) internal successors, (36), 33 states have internal predecessors, (36), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:56:17,707 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:56:17,707 INFO L93 Difference]: Finished difference Result 38 states and 40 transitions. [2022-04-15 12:56:17,707 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 40 transitions. [2022-04-15 12:56:17,707 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:56:17,707 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:56:17,707 INFO L74 IsIncluded]: Start isIncluded. First operand has 38 states, 33 states have (on average 1.0909090909090908) internal successors, (36), 33 states have internal predecessors, (36), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 38 states. [2022-04-15 12:56:17,707 INFO L87 Difference]: Start difference. First operand has 38 states, 33 states have (on average 1.0909090909090908) internal successors, (36), 33 states have internal predecessors, (36), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 38 states. [2022-04-15 12:56:17,708 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:56:17,708 INFO L93 Difference]: Finished difference Result 38 states and 40 transitions. [2022-04-15 12:56:17,708 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 40 transitions. [2022-04-15 12:56:17,708 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:56:17,708 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:56:17,708 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 12:56:17,708 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 12:56:17,708 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 38 states, 33 states have (on average 1.0909090909090908) internal successors, (36), 33 states have internal predecessors, (36), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:56:17,709 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 40 transitions. [2022-04-15 12:56:17,709 INFO L78 Accepts]: Start accepts. Automaton has 38 states and 40 transitions. Word has length 36 [2022-04-15 12:56:17,709 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 12:56:17,709 INFO L478 AbstractCegarLoop]: Abstraction has 38 states and 40 transitions. [2022-04-15 12:56:17,709 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 26 states, 26 states have (on average 1.2307692307692308) internal successors, (32), 25 states have internal predecessors, (32), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:56:17,709 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 38 states and 40 transitions. [2022-04-15 12:56:20,583 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:56:20,583 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 40 transitions. [2022-04-15 12:56:20,583 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-04-15 12:56:20,583 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 12:56:20,584 INFO L499 BasicCegarLoop]: trace histogram [8, 8, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 12:56:20,599 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Ended with exit code 0 [2022-04-15 12:56:20,784 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 22 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable23 [2022-04-15 12:56:20,784 INFO L403 AbstractCegarLoop]: === Iteration 25 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 12:56:20,784 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 12:56:20,785 INFO L85 PathProgramCache]: Analyzing trace with hash 185043150, now seen corresponding path program 22 times [2022-04-15 12:56:20,785 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 12:56:20,785 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1902961649] [2022-04-15 12:56:20,950 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-15 12:56:20,952 INFO L85 PathProgramCache]: Analyzing trace with hash -723821683, now seen corresponding path program 1 times [2022-04-15 12:56:20,952 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 12:56:20,952 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1464861859] [2022-04-15 12:56:20,952 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:56:20,952 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 12:56:20,989 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:56:22,823 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 12:56:22,824 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:56:22,826 INFO L290 TraceCheckUtils]: 0: Hoare triple {9058#(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(10, 2);call #Ultimate.allocInit(12, 3); {9030#true} is VALID [2022-04-15 12:56:22,826 INFO L290 TraceCheckUtils]: 1: Hoare triple {9030#true} assume true; {9030#true} is VALID [2022-04-15 12:56:22,826 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {9030#true} {9030#true} #61#return; {9030#true} is VALID [2022-04-15 12:56:22,826 INFO L272 TraceCheckUtils]: 0: Hoare triple {9030#true} call ULTIMATE.init(); {9058#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 12:56:22,827 INFO L290 TraceCheckUtils]: 1: Hoare triple {9058#(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(10, 2);call #Ultimate.allocInit(12, 3); {9030#true} is VALID [2022-04-15 12:56:22,827 INFO L290 TraceCheckUtils]: 2: Hoare triple {9030#true} assume true; {9030#true} is VALID [2022-04-15 12:56:22,827 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9030#true} {9030#true} #61#return; {9030#true} is VALID [2022-04-15 12:56:22,827 INFO L272 TraceCheckUtils]: 4: Hoare triple {9030#true} call #t~ret11 := main(); {9030#true} is VALID [2022-04-15 12:56:22,827 INFO L290 TraceCheckUtils]: 5: Hoare triple {9030#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {9035#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} is VALID [2022-04-15 12:56:22,831 INFO L290 TraceCheckUtils]: 6: Hoare triple {9035#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} [111] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~x~0_In_24 v_main_~x~0_Out_48) (= v_main_~y~0_In_24 v_main_~y~0_Out_48)) (and (= (+ v_main_~x~0_In_24 v_main_~y~0_In_24) (+ v_main_~y~0_Out_48 v_main_~x~0_Out_48)) (<= v_main_~x~0_Out_48 v_main_~x~0_In_24) (< 0 (mod (+ v_main_~x~0_Out_48 1) 4294967296)) (= |v_main_#t~post6_Out_48| 0) (= |v_main_#t~post5_Out_48| 0))) InVars {main_~x~0=v_main_~x~0_In_24, main_~y~0=v_main_~y~0_In_24} OutVars{main_~y~0=v_main_~y~0_Out_48, main_#t~post5=|v_main_#t~post5_Out_48|, main_~x~0=v_main_~x~0_Out_48, main_#t~post6=|v_main_#t~post6_Out_48|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {9036#(or (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~y~0 main_~x~0))) (= main_~y~0 0))} is VALID [2022-04-15 12:56:22,834 INFO L290 TraceCheckUtils]: 7: Hoare triple {9036#(or (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~y~0 main_~x~0))) (= main_~y~0 0))} [110] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {9037#(or (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~y~0 (* 4294967296 (div main_~x~0 4294967296))))) (= main_~y~0 0))} is VALID [2022-04-15 12:56:22,836 INFO L290 TraceCheckUtils]: 8: Hoare triple {9037#(or (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~y~0 (* 4294967296 (div main_~x~0 4294967296))))) (= main_~y~0 0))} ~z~0 := ~y~0; {9038#(and (or (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~y~0 (* 4294967296 (div main_~x~0 4294967296))))) (= main_~y~0 0)) (= (+ main_~y~0 (* (- 1) main_~z~0)) 0))} is VALID [2022-04-15 12:56:22,841 INFO L290 TraceCheckUtils]: 9: Hoare triple {9038#(and (or (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~y~0 (* 4294967296 (div main_~x~0 4294967296))))) (= main_~y~0 0)) (= (+ main_~y~0 (* (- 1) main_~z~0)) 0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9039#(and (or (<= (+ (* (div (+ main_~n~0 (* (- 1) main_~z~0) 4294967294) 4294967296) 4294967296) main_~z~0 1) main_~n~0) (= main_~y~0 0)) (or (not (= main_~y~0 0)) (and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))))} is VALID [2022-04-15 12:56:22,847 INFO L290 TraceCheckUtils]: 10: Hoare triple {9039#(and (or (<= (+ (* (div (+ main_~n~0 (* (- 1) main_~z~0) 4294967294) 4294967296) 4294967296) main_~z~0 1) main_~n~0) (= main_~y~0 0)) (or (not (= main_~y~0 0)) (and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9040#(and (or (<= (+ (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) 4294967293) 4294967296)) main_~z~0 2) main_~n~0) (= main_~y~0 0)) (or (not (= main_~y~0 0)) (and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))))} is VALID [2022-04-15 12:56:22,851 INFO L290 TraceCheckUtils]: 11: Hoare triple {9040#(and (or (<= (+ (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) 4294967293) 4294967296)) main_~z~0 2) main_~n~0) (= main_~y~0 0)) (or (not (= main_~y~0 0)) (and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9041#(and (or (<= (+ main_~z~0 3 (* (div (+ 4294967292 main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296)) main_~n~0) (= main_~y~0 0)) (or (not (= main_~y~0 0)) (and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))))} is VALID [2022-04-15 12:56:22,855 INFO L290 TraceCheckUtils]: 12: Hoare triple {9041#(and (or (<= (+ main_~z~0 3 (* (div (+ 4294967292 main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296)) main_~n~0) (= main_~y~0 0)) (or (not (= main_~y~0 0)) (and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9042#(and (or (<= (+ main_~z~0 (* (div (+ 4294967291 main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296) 4) main_~n~0) (= main_~y~0 0)) (or (not (= main_~y~0 0)) (and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))))} is VALID [2022-04-15 12:56:22,859 INFO L290 TraceCheckUtils]: 13: Hoare triple {9042#(and (or (<= (+ main_~z~0 (* (div (+ 4294967291 main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296) 4) main_~n~0) (= main_~y~0 0)) (or (not (= main_~y~0 0)) (and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9043#(and (or (not (= main_~y~0 0)) (and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))) (or (<= (+ 5 main_~z~0 (* (div (+ 4294967290 main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296)) main_~n~0) (= main_~y~0 0)))} is VALID [2022-04-15 12:56:22,861 INFO L290 TraceCheckUtils]: 14: Hoare triple {9043#(and (or (not (= main_~y~0 0)) (and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))) (or (<= (+ 5 main_~z~0 (* (div (+ 4294967290 main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296)) main_~n~0) (= main_~y~0 0)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9044#(and (or (<= (+ (* (div (+ main_~n~0 (* (- 1) main_~z~0) 4294967289) 4294967296) 4294967296) main_~z~0 6) main_~n~0) (= main_~y~0 0)) (or (not (= main_~y~0 0)) (and (<= (+ main_~z~0 6) main_~y~0) (<= main_~y~0 (+ main_~z~0 6)))))} is VALID [2022-04-15 12:56:22,863 INFO L290 TraceCheckUtils]: 15: Hoare triple {9044#(and (or (<= (+ (* (div (+ main_~n~0 (* (- 1) main_~z~0) 4294967289) 4294967296) 4294967296) main_~z~0 6) main_~n~0) (= main_~y~0 0)) (or (not (= main_~y~0 0)) (and (<= (+ main_~z~0 6) main_~y~0) (<= main_~y~0 (+ main_~z~0 6)))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9045#(and (or (not (= main_~y~0 0)) (and (<= main_~y~0 (+ 7 main_~z~0)) (<= (+ 7 main_~z~0) main_~y~0))) (or (<= (+ 7 main_~z~0 (* (div (+ 4294967288 main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296)) main_~n~0) (= main_~y~0 0)))} is VALID [2022-04-15 12:56:22,866 INFO L290 TraceCheckUtils]: 16: Hoare triple {9045#(and (or (not (= main_~y~0 0)) (and (<= main_~y~0 (+ 7 main_~z~0)) (<= (+ 7 main_~z~0) main_~y~0))) (or (<= (+ 7 main_~z~0 (* (div (+ 4294967288 main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296)) main_~n~0) (= main_~y~0 0)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9046#(and (or (not (= main_~y~0 0)) (and (<= main_~y~0 (+ main_~z~0 8)) (<= (+ (div main_~z~0 4294967296) 1) 0))) (or (<= (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) 4294967287) 4294967296) 4294967296) 8) main_~n~0) (= main_~y~0 0)))} is VALID [2022-04-15 12:56:22,867 INFO L290 TraceCheckUtils]: 17: Hoare triple {9046#(and (or (not (= main_~y~0 0)) (and (<= main_~y~0 (+ main_~z~0 8)) (<= (+ (div main_~z~0 4294967296) 1) 0))) (or (<= (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) 4294967287) 4294967296) 4294967296) 8) main_~n~0) (= main_~y~0 0)))} assume !(~z~0 % 4294967296 > 0); {9047#(and (not (= main_~y~0 0)) (<= (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) 4294967287) 4294967296) 4294967296) 8) main_~n~0) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 8) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:56:22,873 INFO L290 TraceCheckUtils]: 18: Hoare triple {9047#(and (not (= main_~y~0 0)) (<= (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) 4294967287) 4294967296) 4294967296) 8) main_~n~0) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 8) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9048#(and (<= (+ 7 main_~z~0 (* (div (+ 4294967288 main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296)) main_~n~0) (<= (+ (* 4294967296 (div (+ 4294967302 main_~z~0 (* (div main_~n~0 4294967296) 4294967296) (* (- 1) main_~n~0)) 4294967296)) 1) main_~z~0))} is VALID [2022-04-15 12:56:22,879 INFO L290 TraceCheckUtils]: 19: Hoare triple {9048#(and (<= (+ 7 main_~z~0 (* (div (+ 4294967288 main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296)) main_~n~0) (<= (+ (* 4294967296 (div (+ 4294967302 main_~z~0 (* (div main_~n~0 4294967296) 4294967296) (* (- 1) main_~n~0)) 4294967296)) 1) main_~z~0))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9049#(and (<= (+ (* 4294967296 (div (+ main_~z~0 4294967301 (* (div main_~n~0 4294967296) 4294967296) (* (- 1) main_~n~0)) 4294967296)) 2) main_~z~0) (<= (+ (* (div (+ main_~n~0 (* (- 1) main_~z~0) 4294967289) 4294967296) 4294967296) main_~z~0 6) main_~n~0))} is VALID [2022-04-15 12:56:22,883 INFO L290 TraceCheckUtils]: 20: Hoare triple {9049#(and (<= (+ (* 4294967296 (div (+ main_~z~0 4294967301 (* (div main_~n~0 4294967296) 4294967296) (* (- 1) main_~n~0)) 4294967296)) 2) main_~z~0) (<= (+ (* (div (+ main_~n~0 (* (- 1) main_~z~0) 4294967289) 4294967296) 4294967296) main_~z~0 6) main_~n~0))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9050#(and (<= (+ 3 (* (div (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4294967300 (* (- 1) main_~n~0)) 4294967296) 4294967296)) main_~z~0) (<= (+ 5 main_~z~0 (* (div (+ 4294967290 main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296)) main_~n~0))} is VALID [2022-04-15 12:56:22,886 INFO L290 TraceCheckUtils]: 21: Hoare triple {9050#(and (<= (+ 3 (* (div (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4294967300 (* (- 1) main_~n~0)) 4294967296) 4294967296)) main_~z~0) (<= (+ 5 main_~z~0 (* (div (+ 4294967290 main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296)) main_~n~0))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9051#(and (<= (+ (* (div (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4294967299 (* (- 1) main_~n~0)) 4294967296) 4294967296) 4) main_~z~0) (<= (+ main_~z~0 (* (div (+ 4294967291 main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296) 4) main_~n~0))} is VALID [2022-04-15 12:56:22,892 INFO L290 TraceCheckUtils]: 22: Hoare triple {9051#(and (<= (+ (* (div (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4294967299 (* (- 1) main_~n~0)) 4294967296) 4294967296) 4) main_~z~0) (<= (+ main_~z~0 (* (div (+ 4294967291 main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296) 4) main_~n~0))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9052#(and (<= (+ main_~z~0 3 (* (div (+ 4294967292 main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296)) main_~n~0) (<= (+ 5 (* (div (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) (* (- 1) main_~n~0) 4294967298) 4294967296) 4294967296)) main_~z~0))} is VALID [2022-04-15 12:56:22,898 INFO L290 TraceCheckUtils]: 23: Hoare triple {9052#(and (<= (+ main_~z~0 3 (* (div (+ 4294967292 main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296)) main_~n~0) (<= (+ 5 (* (div (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) (* (- 1) main_~n~0) 4294967298) 4294967296) 4294967296)) main_~z~0))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9053#(and (<= (+ (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) 4294967293) 4294967296)) main_~z~0 2) main_~n~0) (<= (+ (* (div (+ main_~z~0 4294967297 (* (div main_~n~0 4294967296) 4294967296) (* (- 1) main_~n~0)) 4294967296) 4294967296) 6) main_~z~0))} is VALID [2022-04-15 12:56:22,907 INFO L290 TraceCheckUtils]: 24: Hoare triple {9053#(and (<= (+ (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) 4294967293) 4294967296)) main_~z~0 2) main_~n~0) (<= (+ (* (div (+ main_~z~0 4294967297 (* (div main_~n~0 4294967296) 4294967296) (* (- 1) main_~n~0)) 4294967296) 4294967296) 6) main_~z~0))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9054#(and (<= (+ (* (div (+ main_~n~0 (* (- 1) main_~z~0) 4294967294) 4294967296) 4294967296) main_~z~0 1) main_~n~0) (<= (+ (* 4294967296 (div (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4294967296 (* (- 1) main_~n~0)) 4294967296)) 7) main_~z~0))} is VALID [2022-04-15 12:56:22,910 INFO L290 TraceCheckUtils]: 25: Hoare triple {9054#(and (<= (+ (* (div (+ main_~n~0 (* (- 1) main_~z~0) 4294967294) 4294967296) 4294967296) main_~z~0 1) main_~n~0) (<= (+ (* 4294967296 (div (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4294967296 (* (- 1) main_~n~0)) 4294967296)) 7) main_~z~0))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9055#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:56:22,911 INFO L290 TraceCheckUtils]: 26: Hoare triple {9055#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} assume !(~y~0 % 4294967296 > 0); {9055#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:56:22,913 INFO L272 TraceCheckUtils]: 27: Hoare triple {9055#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {9056#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 12:56:22,913 INFO L290 TraceCheckUtils]: 28: Hoare triple {9056#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {9057#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 12:56:22,913 INFO L290 TraceCheckUtils]: 29: Hoare triple {9057#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {9031#false} is VALID [2022-04-15 12:56:22,914 INFO L290 TraceCheckUtils]: 30: Hoare triple {9031#false} assume !false; {9031#false} is VALID [2022-04-15 12:56:22,914 INFO L134 CoverageAnalysis]: Checked inductivity of 72 backedges. 0 proven. 72 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:56:22,914 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 12:56:22,914 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1464861859] [2022-04-15 12:56:22,914 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1464861859] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 12:56:22,914 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1231293938] [2022-04-15 12:56:22,914 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:56:22,915 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:56:22,915 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 12:56:22,916 INFO L229 MonitoredProcess]: Starting monitored process 23 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 12:56:22,916 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Waiting until timeout for monitored process [2022-04-15 12:56:23,159 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:56:23,160 INFO L263 TraceCheckSpWp]: Trace formula consists of 140 conjuncts, 53 conjunts are in the unsatisfiable core [2022-04-15 12:56:23,189 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:56:23,195 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 12:56:57,007 INFO L272 TraceCheckUtils]: 0: Hoare triple {9030#true} call ULTIMATE.init(); {9030#true} is VALID [2022-04-15 12:56:57,007 INFO L290 TraceCheckUtils]: 1: Hoare triple {9030#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(10, 2);call #Ultimate.allocInit(12, 3); {9030#true} is VALID [2022-04-15 12:56:57,007 INFO L290 TraceCheckUtils]: 2: Hoare triple {9030#true} assume true; {9030#true} is VALID [2022-04-15 12:56:57,007 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9030#true} {9030#true} #61#return; {9030#true} is VALID [2022-04-15 12:56:57,008 INFO L272 TraceCheckUtils]: 4: Hoare triple {9030#true} call #t~ret11 := main(); {9030#true} is VALID [2022-04-15 12:56:57,008 INFO L290 TraceCheckUtils]: 5: Hoare triple {9030#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {9035#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} is VALID [2022-04-15 12:56:57,014 INFO L290 TraceCheckUtils]: 6: Hoare triple {9035#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} [111] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~x~0_In_24 v_main_~x~0_Out_48) (= v_main_~y~0_In_24 v_main_~y~0_Out_48)) (and (= (+ v_main_~x~0_In_24 v_main_~y~0_In_24) (+ v_main_~y~0_Out_48 v_main_~x~0_Out_48)) (<= v_main_~x~0_Out_48 v_main_~x~0_In_24) (< 0 (mod (+ v_main_~x~0_Out_48 1) 4294967296)) (= |v_main_#t~post6_Out_48| 0) (= |v_main_#t~post5_Out_48| 0))) InVars {main_~x~0=v_main_~x~0_In_24, main_~y~0=v_main_~y~0_In_24} OutVars{main_~y~0=v_main_~y~0_Out_48, main_#t~post5=|v_main_#t~post5_Out_48|, main_~x~0=v_main_~x~0_Out_48, main_#t~post6=|v_main_#t~post6_Out_48|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {9080#(or (and (< 0 (mod (+ main_~x~0 1) 4294967296)) (<= main_~x~0 main_~n~0) (= main_~n~0 (+ main_~y~0 main_~x~0))) (and (= main_~n~0 main_~x~0) (= main_~y~0 0)))} is VALID [2022-04-15 12:56:57,019 INFO L290 TraceCheckUtils]: 7: Hoare triple {9080#(or (and (< 0 (mod (+ main_~x~0 1) 4294967296)) (<= main_~x~0 main_~n~0) (= main_~n~0 (+ main_~y~0 main_~x~0))) (and (= main_~n~0 main_~x~0) (= main_~y~0 0)))} [110] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {9084#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} is VALID [2022-04-15 12:56:57,020 INFO L290 TraceCheckUtils]: 8: Hoare triple {9084#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} ~z~0 := ~y~0; {9088#(and (<= 0 main_~y~0) (= main_~z~0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} is VALID [2022-04-15 12:56:57,024 INFO L290 TraceCheckUtils]: 9: Hoare triple {9088#(and (<= 0 main_~y~0) (= main_~z~0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9092#(and (<= 0 main_~y~0) (< 0 (mod (+ main_~z~0 1) 4294967296)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= main_~y~0 (+ main_~z~0 1)))} is VALID [2022-04-15 12:56:57,027 INFO L290 TraceCheckUtils]: 10: Hoare triple {9092#(and (<= 0 main_~y~0) (< 0 (mod (+ main_~z~0 1) 4294967296)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= main_~y~0 (+ main_~z~0 1)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9096#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= (+ main_~z~0 1) (+ (- 1) main_~y~0)) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:56:57,032 INFO L290 TraceCheckUtils]: 11: Hoare triple {9096#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= (+ main_~z~0 1) (+ (- 1) main_~y~0)) (< 0 (mod main_~y~0 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9100#(and (<= 0 main_~y~0) (= (+ (- 2) main_~y~0) (+ main_~z~0 1)) (< 0 (mod (+ main_~y~0 4294967294) 4294967296)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:56:57,035 INFO L290 TraceCheckUtils]: 12: Hoare triple {9100#(and (<= 0 main_~y~0) (= (+ (- 2) main_~y~0) (+ main_~z~0 1)) (< 0 (mod (+ main_~y~0 4294967294) 4294967296)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9104#(and (<= 0 main_~y~0) (< 0 (mod (+ main_~y~0 4294967294) 4294967296)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= (+ (- 2) main_~y~0) (+ main_~z~0 2)) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:56:57,038 INFO L290 TraceCheckUtils]: 13: Hoare triple {9104#(and (<= 0 main_~y~0) (< 0 (mod (+ main_~y~0 4294967294) 4294967296)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= (+ (- 2) main_~y~0) (+ main_~z~0 2)) (< 0 (mod main_~y~0 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9108#(and (<= 0 main_~y~0) (< 0 (mod (+ main_~y~0 4294967294) 4294967296)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= (+ (- 2) main_~y~0) (+ main_~z~0 3)) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:56:57,043 INFO L290 TraceCheckUtils]: 14: Hoare triple {9108#(and (<= 0 main_~y~0) (< 0 (mod (+ main_~y~0 4294967294) 4294967296)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (= (+ (- 2) main_~y~0) (+ main_~z~0 3)) (< 0 (mod main_~y~0 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9112#(and (<= 0 main_~y~0) (= (+ main_~y~0 (- 5)) (+ main_~z~0 1)) (< 0 (mod (+ main_~y~0 4294967294) 4294967296)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod (+ 4294967291 main_~y~0) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:56:57,049 INFO L290 TraceCheckUtils]: 15: Hoare triple {9112#(and (<= 0 main_~y~0) (= (+ main_~y~0 (- 5)) (+ main_~z~0 1)) (< 0 (mod (+ main_~y~0 4294967294) 4294967296)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod (+ 4294967291 main_~y~0) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9116#(and (<= 0 main_~y~0) (< 0 (mod (+ main_~y~0 4294967294) 4294967296)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod (+ 4294967291 main_~y~0) 4294967296)) (= (+ main_~y~0 (- 6)) (+ main_~z~0 1)) (< 0 (mod (+ 4294967290 main_~y~0) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:56:57,053 INFO L290 TraceCheckUtils]: 16: Hoare triple {9116#(and (<= 0 main_~y~0) (< 0 (mod (+ main_~y~0 4294967294) 4294967296)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod (+ 4294967291 main_~y~0) 4294967296)) (= (+ main_~y~0 (- 6)) (+ main_~z~0 1)) (< 0 (mod (+ 4294967290 main_~y~0) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9120#(and (<= 0 main_~y~0) (< 0 (mod (+ main_~z~0 1) 4294967296)) (< 0 (mod (+ main_~y~0 4294967294) 4294967296)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod (+ 4294967291 main_~y~0) 4294967296)) (= (+ main_~y~0 (- 6)) (+ main_~z~0 2)) (< 0 (mod (+ 4294967290 main_~y~0) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} is VALID [2022-04-15 12:56:57,054 INFO L290 TraceCheckUtils]: 17: Hoare triple {9120#(and (<= 0 main_~y~0) (< 0 (mod (+ main_~z~0 1) 4294967296)) (< 0 (mod (+ main_~y~0 4294967294) 4294967296)) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (< 0 (mod (+ 4294967291 main_~y~0) 4294967296)) (= (+ main_~y~0 (- 6)) (+ main_~z~0 2)) (< 0 (mod (+ 4294967290 main_~y~0) 4294967296)) (< 0 (mod main_~y~0 4294967296)))} assume !(~z~0 % 4294967296 > 0); {9124#(and (<= 0 main_~y~0) (= (+ main_~z~0 8) main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (<= (mod main_~z~0 4294967296) 0))} is VALID [2022-04-15 12:56:57,060 INFO L290 TraceCheckUtils]: 18: Hoare triple {9124#(and (<= 0 main_~y~0) (= (+ main_~z~0 8) main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (<= (mod main_~z~0 4294967296) 0))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9128#(and (<= (div (+ main_~y~0 (* (- 1) main_~n~0) 1) (- 4294967296)) (div (+ (- 1) main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (<= (mod (+ main_~y~0 4294967289) 4294967296) 0) (= (+ main_~y~0 (- 6)) main_~z~0) (<= 0 (+ main_~y~0 1)))} is VALID [2022-04-15 12:56:57,064 INFO L290 TraceCheckUtils]: 19: Hoare triple {9128#(and (<= (div (+ main_~y~0 (* (- 1) main_~n~0) 1) (- 4294967296)) (div (+ (- 1) main_~n~0 (* (- 1) main_~y~0)) 4294967296)) (<= (mod (+ main_~y~0 4294967289) 4294967296) 0) (= (+ main_~y~0 (- 6)) main_~z~0) (<= 0 (+ main_~y~0 1)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9132#(and (<= (mod (+ main_~z~0 4294967294) 4294967296) 0) (<= (div (+ main_~z~0 6 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 6)) 4294967296)) (<= 0 (+ main_~z~0 6)))} is VALID [2022-04-15 12:56:57,069 INFO L290 TraceCheckUtils]: 20: Hoare triple {9132#(and (<= (mod (+ main_~z~0 4294967294) 4294967296) 0) (<= (div (+ main_~z~0 6 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 6)) 4294967296)) (<= 0 (+ main_~z~0 6)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9136#(and (<= (div (+ 5 main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 5)) 4294967296)) (<= 0 (+ 5 main_~z~0)) (<= (mod (+ main_~z~0 4294967293) 4294967296) 0))} is VALID [2022-04-15 12:56:57,073 INFO L290 TraceCheckUtils]: 21: Hoare triple {9136#(and (<= (div (+ 5 main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 5)) 4294967296)) (<= 0 (+ 5 main_~z~0)) (<= (mod (+ main_~z~0 4294967293) 4294967296) 0))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9140#(and (<= (mod (+ 4294967292 main_~z~0) 4294967296) 0) (<= (div (+ main_~z~0 4 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296)) (<= 0 (+ main_~z~0 4)))} is VALID [2022-04-15 12:56:57,076 INFO L290 TraceCheckUtils]: 22: Hoare triple {9140#(and (<= (mod (+ 4294967292 main_~z~0) 4294967296) 0) (<= (div (+ main_~z~0 4 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296)) (<= 0 (+ main_~z~0 4)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9144#(and (<= 0 (+ main_~z~0 3)) (<= (div (+ main_~z~0 3 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296)) (<= (mod (+ 4294967291 main_~z~0) 4294967296) 0))} is VALID [2022-04-15 12:56:57,079 INFO L290 TraceCheckUtils]: 23: Hoare triple {9144#(and (<= 0 (+ main_~z~0 3)) (<= (div (+ main_~z~0 3 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296)) (<= (mod (+ 4294967291 main_~z~0) 4294967296) 0))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9148#(and (<= 0 (+ main_~z~0 2)) (<= (div (+ main_~z~0 2 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296)) (<= (mod (+ 4294967290 main_~z~0) 4294967296) 0))} is VALID [2022-04-15 12:56:57,083 INFO L290 TraceCheckUtils]: 24: Hoare triple {9148#(and (<= 0 (+ main_~z~0 2)) (<= (div (+ main_~z~0 2 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296)) (<= (mod (+ 4294967290 main_~z~0) 4294967296) 0))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9152#(and (<= 0 (+ main_~z~0 1)) (<= (mod (+ main_~z~0 4294967289) 4294967296) 0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0) 1) (- 4294967296)) (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} is VALID [2022-04-15 12:56:57,086 INFO L290 TraceCheckUtils]: 25: Hoare triple {9152#(and (<= 0 (+ main_~z~0 1)) (<= (mod (+ main_~z~0 4294967289) 4294967296) 0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0) 1) (- 4294967296)) (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9156#(and (<= (mod (+ 4294967288 main_~z~0) 4294967296) 0) (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} is VALID [2022-04-15 12:56:57,087 INFO L290 TraceCheckUtils]: 26: Hoare triple {9156#(and (<= (mod (+ 4294967288 main_~z~0) 4294967296) 0) (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} assume !(~y~0 % 4294967296 > 0); {9156#(and (<= (mod (+ 4294967288 main_~z~0) 4294967296) 0) (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} is VALID [2022-04-15 12:56:57,090 INFO L272 TraceCheckUtils]: 27: Hoare triple {9156#(and (<= (mod (+ 4294967288 main_~z~0) 4294967296) 0) (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {9163#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 12:56:57,090 INFO L290 TraceCheckUtils]: 28: Hoare triple {9163#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {9167#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 12:56:57,091 INFO L290 TraceCheckUtils]: 29: Hoare triple {9167#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {9031#false} is VALID [2022-04-15 12:56:57,091 INFO L290 TraceCheckUtils]: 30: Hoare triple {9031#false} assume !false; {9031#false} is VALID [2022-04-15 12:56:57,091 INFO L134 CoverageAnalysis]: Checked inductivity of 72 backedges. 0 proven. 72 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:56:57,091 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 12:57:20,618 INFO L290 TraceCheckUtils]: 30: Hoare triple {9031#false} assume !false; {9031#false} is VALID [2022-04-15 12:57:20,619 INFO L290 TraceCheckUtils]: 29: Hoare triple {9167#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {9031#false} is VALID [2022-04-15 12:57:20,619 INFO L290 TraceCheckUtils]: 28: Hoare triple {9163#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {9167#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 12:57:20,620 INFO L272 TraceCheckUtils]: 27: Hoare triple {9055#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {9163#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 12:57:20,621 INFO L290 TraceCheckUtils]: 26: Hoare triple {9055#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} assume !(~y~0 % 4294967296 > 0); {9055#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:57:20,623 INFO L290 TraceCheckUtils]: 25: Hoare triple {9189#(and (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296)) (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9055#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:57:20,627 INFO L290 TraceCheckUtils]: 24: Hoare triple {9193#(and (< (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0) (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9189#(and (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296)) (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:57:20,631 INFO L290 TraceCheckUtils]: 23: Hoare triple {9197#(and (< (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4)) (<= (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9193#(and (< (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0) (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0)))} is VALID [2022-04-15 12:57:20,635 INFO L290 TraceCheckUtils]: 22: Hoare triple {9201#(and (< (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0) (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4) (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9197#(and (< (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4)) (<= (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296))))} is VALID [2022-04-15 12:57:20,637 INFO L290 TraceCheckUtils]: 21: Hoare triple {9205#(and (<= (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296)) (+ main_~z~0 6 (* (div main_~n~0 4294967296) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9201#(and (< (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0) (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4) (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0)))} is VALID [2022-04-15 12:57:20,639 INFO L290 TraceCheckUtils]: 20: Hoare triple {9209#(and (< (+ (* (div (+ main_~z~0 6) 4294967296) 4294967296) main_~n~0) (+ 7 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 6 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 6) 4294967296) 4294967296) main_~n~0)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9205#(and (<= (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296)) (+ main_~z~0 6 (* (div main_~n~0 4294967296) 4294967296))))} is VALID [2022-04-15 12:57:20,642 INFO L290 TraceCheckUtils]: 19: Hoare triple {9213#(and (< (+ main_~n~0 (* (div (+ 7 main_~z~0) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 8)) (<= (+ 7 main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ 7 main_~z~0) 4294967296) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9209#(and (< (+ (* (div (+ main_~z~0 6) 4294967296) 4294967296) main_~n~0) (+ 7 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 6 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 6) 4294967296) 4294967296) main_~n~0)))} is VALID [2022-04-15 12:57:20,643 INFO L290 TraceCheckUtils]: 18: Hoare triple {9217#(and (< (+ main_~n~0 (* (div (+ main_~z~0 8) 4294967296) 4294967296)) (+ main_~z~0 9 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 8) (+ main_~n~0 (* (div (+ main_~z~0 8) 4294967296) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9213#(and (< (+ main_~n~0 (* (div (+ 7 main_~z~0) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 8)) (<= (+ 7 main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ 7 main_~z~0) 4294967296) 4294967296))))} is VALID [2022-04-15 12:57:20,644 INFO L290 TraceCheckUtils]: 17: Hoare triple {9221#(or (< 0 (mod main_~z~0 4294967296)) (and (< (+ main_~n~0 (* (div (+ main_~z~0 8) 4294967296) 4294967296)) (+ main_~z~0 9 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 8) (+ main_~n~0 (* (div (+ main_~z~0 8) 4294967296) 4294967296)))))} assume !(~z~0 % 4294967296 > 0); {9217#(and (< (+ main_~n~0 (* (div (+ main_~z~0 8) 4294967296) 4294967296)) (+ main_~z~0 9 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 8) (+ main_~n~0 (* (div (+ main_~z~0 8) 4294967296) 4294967296))))} is VALID [2022-04-15 12:57:20,650 INFO L290 TraceCheckUtils]: 16: Hoare triple {9225#(or (< 0 (mod (+ main_~z~0 4294967295) 4294967296)) (and (< (+ main_~n~0 (* (div (+ 7 main_~z~0) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 8)) (<= (+ 7 main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ 7 main_~z~0) 4294967296) 4294967296)))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9221#(or (< 0 (mod main_~z~0 4294967296)) (and (< (+ main_~n~0 (* (div (+ main_~z~0 8) 4294967296) 4294967296)) (+ main_~z~0 9 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 8) (+ main_~n~0 (* (div (+ main_~z~0 8) 4294967296) 4294967296)))))} is VALID [2022-04-15 12:57:20,656 INFO L290 TraceCheckUtils]: 15: Hoare triple {9229#(or (< 0 (mod (+ main_~z~0 4294967294) 4294967296)) (and (< (+ (* (div (+ main_~z~0 6) 4294967296) 4294967296) main_~n~0) (+ 7 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 6 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 6) 4294967296) 4294967296) main_~n~0))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9225#(or (< 0 (mod (+ main_~z~0 4294967295) 4294967296)) (and (< (+ main_~n~0 (* (div (+ 7 main_~z~0) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 8)) (<= (+ 7 main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ 7 main_~z~0) 4294967296) 4294967296)))))} is VALID [2022-04-15 12:57:20,669 INFO L290 TraceCheckUtils]: 14: Hoare triple {9233#(or (and (<= (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296)) (+ main_~z~0 6 (* (div main_~n~0 4294967296) 4294967296)))) (< 0 (mod (+ main_~z~0 4294967293) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9229#(or (< 0 (mod (+ main_~z~0 4294967294) 4294967296)) (and (< (+ (* (div (+ main_~z~0 6) 4294967296) 4294967296) main_~n~0) (+ 7 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 6 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 6) 4294967296) 4294967296) main_~n~0))))} is VALID [2022-04-15 12:57:20,677 INFO L290 TraceCheckUtils]: 13: Hoare triple {9237#(or (and (< (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0) (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4) (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0))) (< 0 (mod (+ 4294967292 main_~z~0) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9233#(or (and (<= (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296)) (+ main_~z~0 6 (* (div main_~n~0 4294967296) 4294967296)))) (< 0 (mod (+ main_~z~0 4294967293) 4294967296)))} is VALID [2022-04-15 12:57:20,680 INFO L290 TraceCheckUtils]: 12: Hoare triple {9241#(or (< 0 (mod (+ 4294967291 main_~z~0) 4294967296)) (and (< (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4)) (<= (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9237#(or (and (< (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0) (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4) (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0))) (< 0 (mod (+ 4294967292 main_~z~0) 4294967296)))} is VALID [2022-04-15 12:57:20,694 INFO L290 TraceCheckUtils]: 11: Hoare triple {9245#(or (and (< (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0) (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0))) (< 0 (mod (+ 4294967290 main_~z~0) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9241#(or (< 0 (mod (+ 4294967291 main_~z~0) 4294967296)) (and (< (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4)) (<= (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)))))} is VALID [2022-04-15 12:57:20,707 INFO L290 TraceCheckUtils]: 10: Hoare triple {9249#(or (and (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296)) (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)))) (< 0 (mod (+ main_~z~0 4294967289) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9245#(or (and (< (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0) (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0))) (< 0 (mod (+ 4294967290 main_~z~0) 4294967296)))} is VALID [2022-04-15 12:57:20,715 INFO L290 TraceCheckUtils]: 9: Hoare triple {9253#(or (and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)))) (< 0 (mod (+ 4294967288 main_~z~0) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9249#(or (and (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296)) (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)))) (< 0 (mod (+ main_~z~0 4294967289) 4294967296)))} is VALID [2022-04-15 12:57:20,717 INFO L290 TraceCheckUtils]: 8: Hoare triple {9257#(or (and (< (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0))) (< 0 (mod (+ 4294967288 main_~y~0) 4294967296)))} ~z~0 := ~y~0; {9253#(or (and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)))) (< 0 (mod (+ 4294967288 main_~z~0) 4294967296)))} is VALID [2022-04-15 12:57:20,720 INFO L290 TraceCheckUtils]: 7: Hoare triple {9261#(or (< 0 (mod main_~x~0 4294967296)) (and (< (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0))) (< 0 (mod (+ 4294967288 main_~y~0) 4294967296)))} [110] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {9257#(or (and (< (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0))) (< 0 (mod (+ 4294967288 main_~y~0) 4294967296)))} is VALID [2022-04-15 12:57:20,735 INFO L290 TraceCheckUtils]: 6: Hoare triple {9265#(and (or (<= (div (+ (- 1) (* (- 1) main_~x~0) (* (- 1) main_~y~0)) (- 4294967296)) (+ (div (+ (- 4294967288) (* (- 1) main_~n~0)) 4294967296) (div main_~n~0 4294967296) (div (+ main_~y~0 main_~x~0 (- 4294967296)) 4294967296) 3)) (< (div (+ (- 4294967289) (* (- 1) main_~x~0) (* (- 1) main_~y~0)) (- 4294967296)) (+ 2 (div (+ main_~y~0 main_~x~0 4294967287) 4294967296)))) (or (< (div (+ (- 4294967289) (* (- 1) main_~x~0) (* (- 1) main_~y~0)) (- 4294967296)) (+ 2 (div (+ main_~y~0 main_~x~0 4294967287) 4294967296))) (<= (+ (div main_~n~0 4294967296) (div (+ 4294967288 main_~n~0) (- 4294967296)) 1) 0)))} [111] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~x~0_In_24 v_main_~x~0_Out_48) (= v_main_~y~0_In_24 v_main_~y~0_Out_48)) (and (= (+ v_main_~x~0_In_24 v_main_~y~0_In_24) (+ v_main_~y~0_Out_48 v_main_~x~0_Out_48)) (<= v_main_~x~0_Out_48 v_main_~x~0_In_24) (< 0 (mod (+ v_main_~x~0_Out_48 1) 4294967296)) (= |v_main_#t~post6_Out_48| 0) (= |v_main_#t~post5_Out_48| 0))) InVars {main_~x~0=v_main_~x~0_In_24, main_~y~0=v_main_~y~0_In_24} OutVars{main_~y~0=v_main_~y~0_Out_48, main_#t~post5=|v_main_#t~post5_Out_48|, main_~x~0=v_main_~x~0_Out_48, main_#t~post6=|v_main_#t~post6_Out_48|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {9261#(or (< 0 (mod main_~x~0 4294967296)) (and (< (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0))) (< 0 (mod (+ 4294967288 main_~y~0) 4294967296)))} is VALID [2022-04-15 12:57:20,746 INFO L290 TraceCheckUtils]: 5: Hoare triple {9030#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {9265#(and (or (<= (div (+ (- 1) (* (- 1) main_~x~0) (* (- 1) main_~y~0)) (- 4294967296)) (+ (div (+ (- 4294967288) (* (- 1) main_~n~0)) 4294967296) (div main_~n~0 4294967296) (div (+ main_~y~0 main_~x~0 (- 4294967296)) 4294967296) 3)) (< (div (+ (- 4294967289) (* (- 1) main_~x~0) (* (- 1) main_~y~0)) (- 4294967296)) (+ 2 (div (+ main_~y~0 main_~x~0 4294967287) 4294967296)))) (or (< (div (+ (- 4294967289) (* (- 1) main_~x~0) (* (- 1) main_~y~0)) (- 4294967296)) (+ 2 (div (+ main_~y~0 main_~x~0 4294967287) 4294967296))) (<= (+ (div main_~n~0 4294967296) (div (+ 4294967288 main_~n~0) (- 4294967296)) 1) 0)))} is VALID [2022-04-15 12:57:20,746 INFO L272 TraceCheckUtils]: 4: Hoare triple {9030#true} call #t~ret11 := main(); {9030#true} is VALID [2022-04-15 12:57:20,746 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9030#true} {9030#true} #61#return; {9030#true} is VALID [2022-04-15 12:57:20,746 INFO L290 TraceCheckUtils]: 2: Hoare triple {9030#true} assume true; {9030#true} is VALID [2022-04-15 12:57:20,746 INFO L290 TraceCheckUtils]: 1: Hoare triple {9030#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(10, 2);call #Ultimate.allocInit(12, 3); {9030#true} is VALID [2022-04-15 12:57:20,746 INFO L272 TraceCheckUtils]: 0: Hoare triple {9030#true} call ULTIMATE.init(); {9030#true} is VALID [2022-04-15 12:57:20,747 INFO L134 CoverageAnalysis]: Checked inductivity of 72 backedges. 0 proven. 72 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:57:20,747 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1231293938] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 12:57:20,747 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 12:57:20,747 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [26, 25, 25] total 68 [2022-04-15 12:57:34,273 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 12:57:34,273 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1902961649] [2022-04-15 12:57:34,273 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1902961649] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 12:57:34,273 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 12:57:34,273 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [32] imperfect sequences [] total 32 [2022-04-15 12:57:34,273 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1873535293] [2022-04-15 12:57:34,274 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 12:57:34,274 INFO L78 Accepts]: Start accepts. Automaton has has 32 states, 32 states have (on average 1.03125) internal successors, (33), 30 states have internal predecessors, (33), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 37 [2022-04-15 12:57:34,274 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 12:57:34,274 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 32 states, 32 states have (on average 1.03125) internal successors, (33), 30 states have internal predecessors, (33), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:57:34,746 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-15 12:57:34,746 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 32 states [2022-04-15 12:57:34,746 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 12:57:34,747 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 32 interpolants. [2022-04-15 12:57:34,747 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=471, Invalid=5228, Unknown=1, NotChecked=0, Total=5700 [2022-04-15 12:57:34,747 INFO L87 Difference]: Start difference. First operand 38 states and 40 transitions. Second operand has 32 states, 32 states have (on average 1.03125) internal successors, (33), 30 states have internal predecessors, (33), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:58:08,198 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:58:08,198 INFO L93 Difference]: Finished difference Result 53 states and 56 transitions. [2022-04-15 12:58:08,198 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 32 states. [2022-04-15 12:58:08,198 INFO L78 Accepts]: Start accepts. Automaton has has 32 states, 32 states have (on average 1.03125) internal successors, (33), 30 states have internal predecessors, (33), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 37 [2022-04-15 12:58:08,198 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 12:58:08,198 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 32 states have (on average 1.03125) internal successors, (33), 30 states have internal predecessors, (33), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:58:08,199 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 48 transitions. [2022-04-15 12:58:08,199 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 32 states have (on average 1.03125) internal successors, (33), 30 states have internal predecessors, (33), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:58:08,199 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 48 transitions. [2022-04-15 12:58:08,199 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 32 states and 48 transitions. [2022-04-15 12:58:08,617 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:58:08,618 INFO L225 Difference]: With dead ends: 53 [2022-04-15 12:58:08,618 INFO L226 Difference]: Without dead ends: 48 [2022-04-15 12:58:08,619 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 126 GetRequests, 20 SyntacticMatches, 3 SemanticMatches, 103 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 2868 ImplicationChecksByTransitivity, 43.5s TimeCoverageRelationStatistics Valid=770, Invalid=10149, Unknown=1, NotChecked=0, Total=10920 [2022-04-15 12:58:08,619 INFO L913 BasicCegarLoop]: 10 mSDtfsCounter, 22 mSDsluCounter, 117 mSDsCounter, 0 mSdLazyCounter, 803 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 6.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 127 SdHoareTripleChecker+Invalid, 823 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 20 IncrementalHoareTripleChecker+Valid, 803 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 6.7s IncrementalHoareTripleChecker+Time [2022-04-15 12:58:08,620 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [22 Valid, 127 Invalid, 823 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [20 Valid, 803 Invalid, 0 Unknown, 0 Unchecked, 6.7s Time] [2022-04-15 12:58:08,620 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-04-15 12:58:08,864 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 40. [2022-04-15 12:58:08,865 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 12:58:08,865 INFO L82 GeneralOperation]: Start isEquivalent. First operand 48 states. Second operand has 40 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 35 states have internal predecessors, (39), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:58:08,865 INFO L74 IsIncluded]: Start isIncluded. First operand 48 states. Second operand has 40 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 35 states have internal predecessors, (39), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:58:08,865 INFO L87 Difference]: Start difference. First operand 48 states. Second operand has 40 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 35 states have internal predecessors, (39), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:58:08,866 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:58:08,866 INFO L93 Difference]: Finished difference Result 48 states and 51 transitions. [2022-04-15 12:58:08,866 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 51 transitions. [2022-04-15 12:58:08,866 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:58:08,866 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:58:08,866 INFO L74 IsIncluded]: Start isIncluded. First operand has 40 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 35 states have internal predecessors, (39), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 48 states. [2022-04-15 12:58:08,866 INFO L87 Difference]: Start difference. First operand has 40 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 35 states have internal predecessors, (39), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 48 states. [2022-04-15 12:58:08,867 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:58:08,867 INFO L93 Difference]: Finished difference Result 48 states and 51 transitions. [2022-04-15 12:58:08,867 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 51 transitions. [2022-04-15 12:58:08,867 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:58:08,867 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:58:08,867 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 12:58:08,867 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 12:58:08,867 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 40 states, 35 states have (on average 1.1142857142857143) internal successors, (39), 35 states have internal predecessors, (39), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:58:08,868 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 43 transitions. [2022-04-15 12:58:08,868 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 43 transitions. Word has length 37 [2022-04-15 12:58:08,868 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 12:58:08,868 INFO L478 AbstractCegarLoop]: Abstraction has 40 states and 43 transitions. [2022-04-15 12:58:08,868 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 32 states, 32 states have (on average 1.03125) internal successors, (33), 30 states have internal predecessors, (33), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:58:08,868 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 40 states and 43 transitions. [2022-04-15 12:58:13,873 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:58:13,874 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 43 transitions. [2022-04-15 12:58:13,874 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 39 [2022-04-15 12:58:13,874 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 12:58:13,874 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 7, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 12:58:13,878 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (23)] Forceful destruction successful, exit code 0 [2022-04-15 12:58:14,074 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable24,23 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:58:14,075 INFO L403 AbstractCegarLoop]: === Iteration 26 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 12:58:14,075 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 12:58:14,075 INFO L85 PathProgramCache]: Analyzing trace with hash 1475865439, now seen corresponding path program 23 times [2022-04-15 12:58:14,075 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 12:58:14,075 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1983653382] [2022-04-15 12:58:14,188 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-15 12:58:14,190 INFO L85 PathProgramCache]: Analyzing trace with hash -726552384, now seen corresponding path program 1 times [2022-04-15 12:58:14,190 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 12:58:14,190 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [247463667] [2022-04-15 12:58:14,190 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:58:14,190 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 12:58:14,217 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:58:15,558 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 12:58:15,559 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:58:15,561 INFO L290 TraceCheckUtils]: 0: Hoare triple {9657#(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(10, 2);call #Ultimate.allocInit(12, 3); {9634#true} is VALID [2022-04-15 12:58:15,561 INFO L290 TraceCheckUtils]: 1: Hoare triple {9634#true} assume true; {9634#true} is VALID [2022-04-15 12:58:15,561 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {9634#true} {9634#true} #61#return; {9634#true} is VALID [2022-04-15 12:58:15,561 INFO L272 TraceCheckUtils]: 0: Hoare triple {9634#true} call ULTIMATE.init(); {9657#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 12:58:15,561 INFO L290 TraceCheckUtils]: 1: Hoare triple {9657#(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(10, 2);call #Ultimate.allocInit(12, 3); {9634#true} is VALID [2022-04-15 12:58:15,561 INFO L290 TraceCheckUtils]: 2: Hoare triple {9634#true} assume true; {9634#true} is VALID [2022-04-15 12:58:15,561 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9634#true} {9634#true} #61#return; {9634#true} is VALID [2022-04-15 12:58:15,562 INFO L272 TraceCheckUtils]: 4: Hoare triple {9634#true} call #t~ret11 := main(); {9634#true} is VALID [2022-04-15 12:58:15,562 INFO L290 TraceCheckUtils]: 5: Hoare triple {9634#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {9634#true} is VALID [2022-04-15 12:58:15,562 INFO L290 TraceCheckUtils]: 6: Hoare triple {9634#true} [113] L16-2-->L16-3_primed: Formula: (or (and (= |v_main_#t~post5_Out_50| 0) (= (+ v_main_~x~0_In_25 v_main_~y~0_In_25) (+ v_main_~y~0_Out_50 v_main_~x~0_Out_50)) (<= v_main_~x~0_Out_50 v_main_~x~0_In_25) (< 0 (mod (+ v_main_~x~0_Out_50 1) 4294967296)) (= |v_main_#t~post6_Out_50| 0)) (and (= v_main_~y~0_In_25 v_main_~y~0_Out_50) (= v_main_~x~0_In_25 v_main_~x~0_Out_50))) InVars {main_~x~0=v_main_~x~0_In_25, main_~y~0=v_main_~y~0_In_25} OutVars{main_~y~0=v_main_~y~0_Out_50, main_#t~post5=|v_main_#t~post5_Out_50|, main_~x~0=v_main_~x~0_Out_50, main_#t~post6=|v_main_#t~post6_Out_50|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {9634#true} is VALID [2022-04-15 12:58:15,562 INFO L290 TraceCheckUtils]: 7: Hoare triple {9634#true} [112] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {9634#true} is VALID [2022-04-15 12:58:15,562 INFO L290 TraceCheckUtils]: 8: Hoare triple {9634#true} ~z~0 := ~y~0; {9639#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} is VALID [2022-04-15 12:58:15,568 INFO L290 TraceCheckUtils]: 9: Hoare triple {9639#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9640#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} is VALID [2022-04-15 12:58:15,576 INFO L290 TraceCheckUtils]: 10: Hoare triple {9640#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9641#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} is VALID [2022-04-15 12:58:15,581 INFO L290 TraceCheckUtils]: 11: Hoare triple {9641#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9642#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} is VALID [2022-04-15 12:58:15,583 INFO L290 TraceCheckUtils]: 12: Hoare triple {9642#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9643#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} is VALID [2022-04-15 12:58:15,586 INFO L290 TraceCheckUtils]: 13: Hoare triple {9643#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9644#(and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))} is VALID [2022-04-15 12:58:15,588 INFO L290 TraceCheckUtils]: 14: Hoare triple {9644#(and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9645#(and (<= (+ main_~z~0 6) main_~y~0) (<= main_~y~0 (+ main_~z~0 6)))} is VALID [2022-04-15 12:58:15,591 INFO L290 TraceCheckUtils]: 15: Hoare triple {9645#(and (<= (+ main_~z~0 6) main_~y~0) (<= main_~y~0 (+ main_~z~0 6)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9646#(and (<= main_~y~0 (+ 7 main_~z~0)) (<= (+ 7 main_~z~0) main_~y~0))} is VALID [2022-04-15 12:58:15,593 INFO L290 TraceCheckUtils]: 16: Hoare triple {9646#(and (<= main_~y~0 (+ 7 main_~z~0)) (<= (+ 7 main_~z~0) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9647#(and (<= main_~y~0 (+ main_~z~0 8)) (<= (+ main_~z~0 8) main_~y~0))} is VALID [2022-04-15 12:58:15,596 INFO L290 TraceCheckUtils]: 17: Hoare triple {9647#(and (<= main_~y~0 (+ main_~z~0 8)) (<= (+ main_~z~0 8) main_~y~0))} assume !(~z~0 % 4294967296 > 0); {9648#(and (<= main_~y~0 (+ 8 (* (div main_~z~0 4294967296) 4294967296))) (<= (+ 8 (* (div main_~z~0 4294967296) 4294967296)) main_~y~0))} is VALID [2022-04-15 12:58:15,600 INFO L290 TraceCheckUtils]: 18: Hoare triple {9648#(and (<= main_~y~0 (+ 8 (* (div main_~z~0 4294967296) 4294967296))) (<= (+ 8 (* (div main_~z~0 4294967296) 4294967296)) main_~y~0))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9649#(<= main_~y~0 (+ 7 (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:58:15,604 INFO L290 TraceCheckUtils]: 19: Hoare triple {9649#(<= main_~y~0 (+ 7 (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9650#(<= main_~y~0 (+ 6 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} is VALID [2022-04-15 12:58:15,610 INFO L290 TraceCheckUtils]: 20: Hoare triple {9650#(<= main_~y~0 (+ 6 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9651#(<= main_~y~0 (+ 5 (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:58:15,616 INFO L290 TraceCheckUtils]: 21: Hoare triple {9651#(<= main_~y~0 (+ 5 (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9652#(<= main_~y~0 (+ 4 (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:58:15,624 INFO L290 TraceCheckUtils]: 22: Hoare triple {9652#(<= main_~y~0 (+ 4 (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9653#(<= main_~y~0 (+ 3 (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:58:15,629 INFO L290 TraceCheckUtils]: 23: Hoare triple {9653#(<= main_~y~0 (+ 3 (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9654#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} is VALID [2022-04-15 12:58:15,631 INFO L290 TraceCheckUtils]: 24: Hoare triple {9654#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9655#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} is VALID [2022-04-15 12:58:15,634 INFO L290 TraceCheckUtils]: 25: Hoare triple {9655#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9656#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} is VALID [2022-04-15 12:58:15,637 INFO L290 TraceCheckUtils]: 26: Hoare triple {9656#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9635#false} is VALID [2022-04-15 12:58:15,637 INFO L290 TraceCheckUtils]: 27: Hoare triple {9635#false} assume !(~y~0 % 4294967296 > 0); {9635#false} is VALID [2022-04-15 12:58:15,637 INFO L272 TraceCheckUtils]: 28: Hoare triple {9635#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {9635#false} is VALID [2022-04-15 12:58:15,637 INFO L290 TraceCheckUtils]: 29: Hoare triple {9635#false} ~cond := #in~cond; {9635#false} is VALID [2022-04-15 12:58:15,637 INFO L290 TraceCheckUtils]: 30: Hoare triple {9635#false} assume 0 == ~cond; {9635#false} is VALID [2022-04-15 12:58:15,637 INFO L290 TraceCheckUtils]: 31: Hoare triple {9635#false} assume !false; {9635#false} is VALID [2022-04-15 12:58:15,637 INFO L134 CoverageAnalysis]: Checked inductivity of 81 backedges. 9 proven. 72 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:58:15,637 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 12:58:15,637 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [247463667] [2022-04-15 12:58:15,637 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [247463667] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 12:58:15,638 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2072477171] [2022-04-15 12:58:15,638 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:58:15,638 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:58:15,638 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 12:58:15,639 INFO L229 MonitoredProcess]: Starting monitored process 24 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 12:58:15,639 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Waiting until timeout for monitored process [2022-04-15 12:58:15,677 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:58:15,678 INFO L263 TraceCheckSpWp]: Trace formula consists of 145 conjuncts, 36 conjunts are in the unsatisfiable core [2022-04-15 12:58:15,692 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:58:15,694 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 12:58:16,353 INFO L272 TraceCheckUtils]: 0: Hoare triple {9634#true} call ULTIMATE.init(); {9634#true} is VALID [2022-04-15 12:58:16,353 INFO L290 TraceCheckUtils]: 1: Hoare triple {9634#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(10, 2);call #Ultimate.allocInit(12, 3); {9634#true} is VALID [2022-04-15 12:58:16,354 INFO L290 TraceCheckUtils]: 2: Hoare triple {9634#true} assume true; {9634#true} is VALID [2022-04-15 12:58:16,354 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9634#true} {9634#true} #61#return; {9634#true} is VALID [2022-04-15 12:58:16,354 INFO L272 TraceCheckUtils]: 4: Hoare triple {9634#true} call #t~ret11 := main(); {9634#true} is VALID [2022-04-15 12:58:16,354 INFO L290 TraceCheckUtils]: 5: Hoare triple {9634#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {9634#true} is VALID [2022-04-15 12:58:16,354 INFO L290 TraceCheckUtils]: 6: Hoare triple {9634#true} [113] L16-2-->L16-3_primed: Formula: (or (and (= |v_main_#t~post5_Out_50| 0) (= (+ v_main_~x~0_In_25 v_main_~y~0_In_25) (+ v_main_~y~0_Out_50 v_main_~x~0_Out_50)) (<= v_main_~x~0_Out_50 v_main_~x~0_In_25) (< 0 (mod (+ v_main_~x~0_Out_50 1) 4294967296)) (= |v_main_#t~post6_Out_50| 0)) (and (= v_main_~y~0_In_25 v_main_~y~0_Out_50) (= v_main_~x~0_In_25 v_main_~x~0_Out_50))) InVars {main_~x~0=v_main_~x~0_In_25, main_~y~0=v_main_~y~0_In_25} OutVars{main_~y~0=v_main_~y~0_Out_50, main_#t~post5=|v_main_#t~post5_Out_50|, main_~x~0=v_main_~x~0_Out_50, main_#t~post6=|v_main_#t~post6_Out_50|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {9634#true} is VALID [2022-04-15 12:58:16,354 INFO L290 TraceCheckUtils]: 7: Hoare triple {9634#true} [112] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {9634#true} is VALID [2022-04-15 12:58:16,354 INFO L290 TraceCheckUtils]: 8: Hoare triple {9634#true} ~z~0 := ~y~0; {9639#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} is VALID [2022-04-15 12:58:16,360 INFO L290 TraceCheckUtils]: 9: Hoare triple {9639#(and (<= main_~y~0 main_~z~0) (<= main_~z~0 main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9640#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} is VALID [2022-04-15 12:58:16,369 INFO L290 TraceCheckUtils]: 10: Hoare triple {9640#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9641#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} is VALID [2022-04-15 12:58:16,374 INFO L290 TraceCheckUtils]: 11: Hoare triple {9641#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9642#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} is VALID [2022-04-15 12:58:16,376 INFO L290 TraceCheckUtils]: 12: Hoare triple {9642#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9643#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} is VALID [2022-04-15 12:58:16,379 INFO L290 TraceCheckUtils]: 13: Hoare triple {9643#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9644#(and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))} is VALID [2022-04-15 12:58:16,381 INFO L290 TraceCheckUtils]: 14: Hoare triple {9644#(and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9645#(and (<= (+ main_~z~0 6) main_~y~0) (<= main_~y~0 (+ main_~z~0 6)))} is VALID [2022-04-15 12:58:16,384 INFO L290 TraceCheckUtils]: 15: Hoare triple {9645#(and (<= (+ main_~z~0 6) main_~y~0) (<= main_~y~0 (+ main_~z~0 6)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9646#(and (<= main_~y~0 (+ 7 main_~z~0)) (<= (+ 7 main_~z~0) main_~y~0))} is VALID [2022-04-15 12:58:16,386 INFO L290 TraceCheckUtils]: 16: Hoare triple {9646#(and (<= main_~y~0 (+ 7 main_~z~0)) (<= (+ 7 main_~z~0) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9647#(and (<= main_~y~0 (+ main_~z~0 8)) (<= (+ main_~z~0 8) main_~y~0))} is VALID [2022-04-15 12:58:16,390 INFO L290 TraceCheckUtils]: 17: Hoare triple {9647#(and (<= main_~y~0 (+ main_~z~0 8)) (<= (+ main_~z~0 8) main_~y~0))} assume !(~z~0 % 4294967296 > 0); {9712#(<= (div (+ 8 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 8)) 4294967296))} is VALID [2022-04-15 12:58:16,393 INFO L290 TraceCheckUtils]: 18: Hoare triple {9712#(<= (div (+ 8 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 8)) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9649#(<= main_~y~0 (+ 7 (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:58:16,398 INFO L290 TraceCheckUtils]: 19: Hoare triple {9649#(<= main_~y~0 (+ 7 (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9650#(<= main_~y~0 (+ 6 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} is VALID [2022-04-15 12:58:16,405 INFO L290 TraceCheckUtils]: 20: Hoare triple {9650#(<= main_~y~0 (+ 6 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9651#(<= main_~y~0 (+ 5 (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:58:16,410 INFO L290 TraceCheckUtils]: 21: Hoare triple {9651#(<= main_~y~0 (+ 5 (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9652#(<= main_~y~0 (+ 4 (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:58:16,421 INFO L290 TraceCheckUtils]: 22: Hoare triple {9652#(<= main_~y~0 (+ 4 (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9653#(<= main_~y~0 (+ 3 (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:58:16,426 INFO L290 TraceCheckUtils]: 23: Hoare triple {9653#(<= main_~y~0 (+ 3 (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9654#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} is VALID [2022-04-15 12:58:16,428 INFO L290 TraceCheckUtils]: 24: Hoare triple {9654#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9655#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} is VALID [2022-04-15 12:58:16,431 INFO L290 TraceCheckUtils]: 25: Hoare triple {9655#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9656#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} is VALID [2022-04-15 12:58:16,433 INFO L290 TraceCheckUtils]: 26: Hoare triple {9656#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9635#false} is VALID [2022-04-15 12:58:16,433 INFO L290 TraceCheckUtils]: 27: Hoare triple {9635#false} assume !(~y~0 % 4294967296 > 0); {9635#false} is VALID [2022-04-15 12:58:16,433 INFO L272 TraceCheckUtils]: 28: Hoare triple {9635#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {9635#false} is VALID [2022-04-15 12:58:16,433 INFO L290 TraceCheckUtils]: 29: Hoare triple {9635#false} ~cond := #in~cond; {9635#false} is VALID [2022-04-15 12:58:16,434 INFO L290 TraceCheckUtils]: 30: Hoare triple {9635#false} assume 0 == ~cond; {9635#false} is VALID [2022-04-15 12:58:16,434 INFO L290 TraceCheckUtils]: 31: Hoare triple {9635#false} assume !false; {9635#false} is VALID [2022-04-15 12:58:16,434 INFO L134 CoverageAnalysis]: Checked inductivity of 81 backedges. 9 proven. 72 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:58:16,434 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 12:58:18,650 INFO L290 TraceCheckUtils]: 31: Hoare triple {9635#false} assume !false; {9635#false} is VALID [2022-04-15 12:58:18,650 INFO L290 TraceCheckUtils]: 30: Hoare triple {9635#false} assume 0 == ~cond; {9635#false} is VALID [2022-04-15 12:58:18,650 INFO L290 TraceCheckUtils]: 29: Hoare triple {9635#false} ~cond := #in~cond; {9635#false} is VALID [2022-04-15 12:58:18,650 INFO L272 TraceCheckUtils]: 28: Hoare triple {9635#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {9635#false} is VALID [2022-04-15 12:58:18,650 INFO L290 TraceCheckUtils]: 27: Hoare triple {9635#false} assume !(~y~0 % 4294967296 > 0); {9635#false} is VALID [2022-04-15 12:58:18,654 INFO L290 TraceCheckUtils]: 26: Hoare triple {9656#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9635#false} is VALID [2022-04-15 12:58:18,656 INFO L290 TraceCheckUtils]: 25: Hoare triple {9655#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9656#(<= main_~y~0 (* (div main_~y~0 4294967296) 4294967296))} is VALID [2022-04-15 12:58:18,659 INFO L290 TraceCheckUtils]: 24: Hoare triple {9654#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9655#(<= main_~y~0 (+ (* 4294967296 (div (+ (- 1) main_~y~0) 4294967296)) 1))} is VALID [2022-04-15 12:58:18,662 INFO L290 TraceCheckUtils]: 23: Hoare triple {9653#(<= main_~y~0 (+ 3 (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9654#(<= main_~y~0 (+ 2 (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296)))} is VALID [2022-04-15 12:58:18,671 INFO L290 TraceCheckUtils]: 22: Hoare triple {9652#(<= main_~y~0 (+ 4 (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9653#(<= main_~y~0 (+ 3 (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:58:18,677 INFO L290 TraceCheckUtils]: 21: Hoare triple {9651#(<= main_~y~0 (+ 5 (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9652#(<= main_~y~0 (+ 4 (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:58:18,685 INFO L290 TraceCheckUtils]: 20: Hoare triple {9650#(<= main_~y~0 (+ 6 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9651#(<= main_~y~0 (+ 5 (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:58:18,691 INFO L290 TraceCheckUtils]: 19: Hoare triple {9649#(<= main_~y~0 (+ 7 (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9650#(<= main_~y~0 (+ 6 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} is VALID [2022-04-15 12:58:18,695 INFO L290 TraceCheckUtils]: 18: Hoare triple {9712#(<= (div (+ 8 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 8)) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {9649#(<= main_~y~0 (+ 7 (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:58:18,695 INFO L290 TraceCheckUtils]: 17: Hoare triple {9797#(or (<= (div (+ 8 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 8)) 4294967296)) (< 0 (mod main_~z~0 4294967296)))} assume !(~z~0 % 4294967296 > 0); {9712#(<= (div (+ 8 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 8)) 4294967296))} is VALID [2022-04-15 12:58:18,710 INFO L290 TraceCheckUtils]: 16: Hoare triple {9801#(or (<= (div (+ 8 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 8)) 4294967296)) (< 0 (mod (+ main_~z~0 4294967295) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9797#(or (<= (div (+ 8 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 8)) 4294967296)) (< 0 (mod main_~z~0 4294967296)))} is VALID [2022-04-15 12:58:18,723 INFO L290 TraceCheckUtils]: 15: Hoare triple {9805#(or (< 0 (mod (+ main_~z~0 4294967294) 4294967296)) (<= (div (+ 8 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 8)) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9801#(or (<= (div (+ 8 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 8)) 4294967296)) (< 0 (mod (+ main_~z~0 4294967295) 4294967296)))} is VALID [2022-04-15 12:58:18,739 INFO L290 TraceCheckUtils]: 14: Hoare triple {9809#(or (<= (div (+ 8 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 8)) 4294967296)) (< 0 (mod (+ main_~z~0 4294967293) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9805#(or (< 0 (mod (+ main_~z~0 4294967294) 4294967296)) (<= (div (+ 8 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 8)) 4294967296)))} is VALID [2022-04-15 12:58:18,749 INFO L290 TraceCheckUtils]: 13: Hoare triple {9813#(or (<= (div (+ 8 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 8)) 4294967296)) (< 0 (mod (+ 4294967292 main_~z~0) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9809#(or (<= (div (+ 8 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 8)) 4294967296)) (< 0 (mod (+ main_~z~0 4294967293) 4294967296)))} is VALID [2022-04-15 12:58:18,757 INFO L290 TraceCheckUtils]: 12: Hoare triple {9817#(or (<= (div (+ 8 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 8)) 4294967296)) (< 0 (mod (+ 4294967291 main_~z~0) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9813#(or (<= (div (+ 8 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 8)) 4294967296)) (< 0 (mod (+ 4294967292 main_~z~0) 4294967296)))} is VALID [2022-04-15 12:58:18,761 INFO L290 TraceCheckUtils]: 11: Hoare triple {9821#(or (<= (div (+ 8 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 8)) 4294967296)) (< 0 (mod (+ 4294967290 main_~z~0) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9817#(or (<= (div (+ 8 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 8)) 4294967296)) (< 0 (mod (+ 4294967291 main_~z~0) 4294967296)))} is VALID [2022-04-15 12:58:18,766 INFO L290 TraceCheckUtils]: 10: Hoare triple {9825#(or (<= (div (+ 8 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 8)) 4294967296)) (< 0 (mod (+ main_~z~0 4294967289) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9821#(or (<= (div (+ 8 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 8)) 4294967296)) (< 0 (mod (+ 4294967290 main_~z~0) 4294967296)))} is VALID [2022-04-15 12:58:18,770 INFO L290 TraceCheckUtils]: 9: Hoare triple {9829#(or (<= (div (+ 8 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 8)) 4294967296)) (< 0 (mod (+ 4294967288 main_~z~0) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {9825#(or (<= (div (+ 8 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 8)) 4294967296)) (< 0 (mod (+ main_~z~0 4294967289) 4294967296)))} is VALID [2022-04-15 12:58:18,772 INFO L290 TraceCheckUtils]: 8: Hoare triple {9634#true} ~z~0 := ~y~0; {9829#(or (<= (div (+ 8 (* (- 1) main_~y~0)) (- 4294967296)) (div (+ main_~y~0 (- 8)) 4294967296)) (< 0 (mod (+ 4294967288 main_~z~0) 4294967296)))} is VALID [2022-04-15 12:58:18,772 INFO L290 TraceCheckUtils]: 7: Hoare triple {9634#true} [112] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {9634#true} is VALID [2022-04-15 12:58:18,772 INFO L290 TraceCheckUtils]: 6: Hoare triple {9634#true} [113] L16-2-->L16-3_primed: Formula: (or (and (= |v_main_#t~post5_Out_50| 0) (= (+ v_main_~x~0_In_25 v_main_~y~0_In_25) (+ v_main_~y~0_Out_50 v_main_~x~0_Out_50)) (<= v_main_~x~0_Out_50 v_main_~x~0_In_25) (< 0 (mod (+ v_main_~x~0_Out_50 1) 4294967296)) (= |v_main_#t~post6_Out_50| 0)) (and (= v_main_~y~0_In_25 v_main_~y~0_Out_50) (= v_main_~x~0_In_25 v_main_~x~0_Out_50))) InVars {main_~x~0=v_main_~x~0_In_25, main_~y~0=v_main_~y~0_In_25} OutVars{main_~y~0=v_main_~y~0_Out_50, main_#t~post5=|v_main_#t~post5_Out_50|, main_~x~0=v_main_~x~0_Out_50, main_#t~post6=|v_main_#t~post6_Out_50|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {9634#true} is VALID [2022-04-15 12:58:18,773 INFO L290 TraceCheckUtils]: 5: Hoare triple {9634#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {9634#true} is VALID [2022-04-15 12:58:18,773 INFO L272 TraceCheckUtils]: 4: Hoare triple {9634#true} call #t~ret11 := main(); {9634#true} is VALID [2022-04-15 12:58:18,773 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {9634#true} {9634#true} #61#return; {9634#true} is VALID [2022-04-15 12:58:18,773 INFO L290 TraceCheckUtils]: 2: Hoare triple {9634#true} assume true; {9634#true} is VALID [2022-04-15 12:58:18,773 INFO L290 TraceCheckUtils]: 1: Hoare triple {9634#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(10, 2);call #Ultimate.allocInit(12, 3); {9634#true} is VALID [2022-04-15 12:58:18,773 INFO L272 TraceCheckUtils]: 0: Hoare triple {9634#true} call ULTIMATE.init(); {9634#true} is VALID [2022-04-15 12:58:18,773 INFO L134 CoverageAnalysis]: Checked inductivity of 81 backedges. 9 proven. 72 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:58:18,773 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2072477171] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 12:58:18,773 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 12:58:18,773 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [21, 20, 20] total 31 [2022-04-15 12:58:27,033 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 12:58:27,033 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1983653382] [2022-04-15 12:58:27,033 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1983653382] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 12:58:27,033 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 12:58:27,034 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [28] imperfect sequences [] total 28 [2022-04-15 12:58:27,034 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [292785406] [2022-04-15 12:58:27,034 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 12:58:27,034 INFO L78 Accepts]: Start accepts. Automaton has has 28 states, 28 states have (on average 1.2142857142857142) internal successors, (34), 27 states have internal predecessors, (34), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 38 [2022-04-15 12:58:27,034 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 12:58:27,034 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 28 states, 28 states have (on average 1.2142857142857142) internal successors, (34), 27 states have internal predecessors, (34), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:58:27,392 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 38 edges. 38 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:58:27,392 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 28 states [2022-04-15 12:58:27,392 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 12:58:27,392 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 28 interpolants. [2022-04-15 12:58:27,393 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=122, Invalid=1284, Unknown=0, NotChecked=0, Total=1406 [2022-04-15 12:58:27,393 INFO L87 Difference]: Start difference. First operand 40 states and 43 transitions. Second operand has 28 states, 28 states have (on average 1.2142857142857142) internal successors, (34), 27 states have internal predecessors, (34), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:59:11,645 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:59:11,645 INFO L93 Difference]: Finished difference Result 75 states and 81 transitions. [2022-04-15 12:59:11,645 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 37 states. [2022-04-15 12:59:11,645 INFO L78 Accepts]: Start accepts. Automaton has has 28 states, 28 states have (on average 1.2142857142857142) internal successors, (34), 27 states have internal predecessors, (34), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 38 [2022-04-15 12:59:11,646 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 12:59:11,646 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 28 states have (on average 1.2142857142857142) internal successors, (34), 27 states have internal predecessors, (34), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:59:11,647 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 62 transitions. [2022-04-15 12:59:11,647 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 28 states have (on average 1.2142857142857142) internal successors, (34), 27 states have internal predecessors, (34), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:59:11,647 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 37 states to 37 states and 62 transitions. [2022-04-15 12:59:11,647 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 37 states and 62 transitions. [2022-04-15 12:59:12,728 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 62 edges. 62 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:59:12,728 INFO L225 Difference]: With dead ends: 75 [2022-04-15 12:59:12,729 INFO L226 Difference]: Without dead ends: 40 [2022-04-15 12:59:12,729 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 135 GetRequests, 60 SyntacticMatches, 5 SemanticMatches, 70 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 783 ImplicationChecksByTransitivity, 31.7s TimeCoverageRelationStatistics Valid=493, Invalid=4619, Unknown=0, NotChecked=0, Total=5112 [2022-04-15 12:59:12,730 INFO L913 BasicCegarLoop]: 11 mSDtfsCounter, 36 mSDsluCounter, 107 mSDsCounter, 0 mSdLazyCounter, 679 mSolverCounterSat, 74 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 8.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 36 SdHoareTripleChecker+Valid, 118 SdHoareTripleChecker+Invalid, 753 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 74 IncrementalHoareTripleChecker+Valid, 679 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 8.3s IncrementalHoareTripleChecker+Time [2022-04-15 12:59:12,730 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [36 Valid, 118 Invalid, 753 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [74 Valid, 679 Invalid, 0 Unknown, 0 Unchecked, 8.3s Time] [2022-04-15 12:59:12,730 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2022-04-15 12:59:12,944 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 40. [2022-04-15 12:59:12,944 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 12:59:12,944 INFO L82 GeneralOperation]: Start isEquivalent. First operand 40 states. Second operand has 40 states, 35 states have (on average 1.0857142857142856) internal successors, (38), 35 states have internal predecessors, (38), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:59:12,944 INFO L74 IsIncluded]: Start isIncluded. First operand 40 states. Second operand has 40 states, 35 states have (on average 1.0857142857142856) internal successors, (38), 35 states have internal predecessors, (38), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:59:12,945 INFO L87 Difference]: Start difference. First operand 40 states. Second operand has 40 states, 35 states have (on average 1.0857142857142856) internal successors, (38), 35 states have internal predecessors, (38), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:59:12,945 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:59:12,945 INFO L93 Difference]: Finished difference Result 40 states and 42 transitions. [2022-04-15 12:59:12,945 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 42 transitions. [2022-04-15 12:59:12,945 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:59:12,945 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:59:12,946 INFO L74 IsIncluded]: Start isIncluded. First operand has 40 states, 35 states have (on average 1.0857142857142856) internal successors, (38), 35 states have internal predecessors, (38), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 40 states. [2022-04-15 12:59:12,946 INFO L87 Difference]: Start difference. First operand has 40 states, 35 states have (on average 1.0857142857142856) internal successors, (38), 35 states have internal predecessors, (38), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 40 states. [2022-04-15 12:59:12,946 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 12:59:12,946 INFO L93 Difference]: Finished difference Result 40 states and 42 transitions. [2022-04-15 12:59:12,946 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 42 transitions. [2022-04-15 12:59:12,946 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 12:59:12,946 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 12:59:12,946 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 12:59:12,946 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 12:59:12,947 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 40 states, 35 states have (on average 1.0857142857142856) internal successors, (38), 35 states have internal predecessors, (38), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:59:12,947 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 42 transitions. [2022-04-15 12:59:12,947 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 42 transitions. Word has length 38 [2022-04-15 12:59:12,947 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 12:59:12,947 INFO L478 AbstractCegarLoop]: Abstraction has 40 states and 42 transitions. [2022-04-15 12:59:12,947 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 28 states, 28 states have (on average 1.2142857142857142) internal successors, (34), 27 states have internal predecessors, (34), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:59:12,947 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 40 states and 42 transitions. [2022-04-15 12:59:15,668 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 42 edges. 42 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:59:15,668 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 42 transitions. [2022-04-15 12:59:15,669 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-04-15 12:59:15,669 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 12:59:15,669 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 12:59:15,685 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (24)] Ended with exit code 0 [2022-04-15 12:59:15,869 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable25,24 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:59:15,870 INFO L403 AbstractCegarLoop]: === Iteration 27 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 12:59:15,870 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 12:59:15,870 INFO L85 PathProgramCache]: Analyzing trace with hash 638163759, now seen corresponding path program 24 times [2022-04-15 12:59:15,870 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 12:59:15,870 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [447699180] [2022-04-15 12:59:16,038 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-15 12:59:16,039 INFO L85 PathProgramCache]: Analyzing trace with hash 473466991, now seen corresponding path program 1 times [2022-04-15 12:59:16,040 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 12:59:16,040 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1720527783] [2022-04-15 12:59:16,040 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:59:16,040 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 12:59:16,066 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:59:17,647 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 12:59:17,650 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:59:17,652 INFO L290 TraceCheckUtils]: 0: Hoare triple {10270#(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(10, 2);call #Ultimate.allocInit(12, 3); {10247#true} is VALID [2022-04-15 12:59:17,652 INFO L290 TraceCheckUtils]: 1: Hoare triple {10247#true} assume true; {10247#true} is VALID [2022-04-15 12:59:17,652 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {10247#true} {10247#true} #61#return; {10247#true} is VALID [2022-04-15 12:59:17,652 INFO L272 TraceCheckUtils]: 0: Hoare triple {10247#true} call ULTIMATE.init(); {10270#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 12:59:17,652 INFO L290 TraceCheckUtils]: 1: Hoare triple {10270#(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(10, 2);call #Ultimate.allocInit(12, 3); {10247#true} is VALID [2022-04-15 12:59:17,652 INFO L290 TraceCheckUtils]: 2: Hoare triple {10247#true} assume true; {10247#true} is VALID [2022-04-15 12:59:17,652 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10247#true} {10247#true} #61#return; {10247#true} is VALID [2022-04-15 12:59:17,653 INFO L272 TraceCheckUtils]: 4: Hoare triple {10247#true} call #t~ret11 := main(); {10247#true} is VALID [2022-04-15 12:59:17,653 INFO L290 TraceCheckUtils]: 5: Hoare triple {10247#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {10247#true} is VALID [2022-04-15 12:59:17,653 INFO L290 TraceCheckUtils]: 6: Hoare triple {10247#true} [115] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~x~0_In_26 v_main_~x~0_Out_52) (= v_main_~y~0_In_26 v_main_~y~0_Out_52)) (and (< 0 (mod (+ v_main_~x~0_Out_52 1) 4294967296)) (= |v_main_#t~post6_Out_52| 0) (<= v_main_~x~0_Out_52 v_main_~x~0_In_26) (= (+ v_main_~x~0_In_26 v_main_~y~0_In_26) (+ v_main_~y~0_Out_52 v_main_~x~0_Out_52)) (= |v_main_#t~post5_Out_52| 0))) InVars {main_~x~0=v_main_~x~0_In_26, main_~y~0=v_main_~y~0_In_26} OutVars{main_~y~0=v_main_~y~0_Out_52, main_#t~post5=|v_main_#t~post5_Out_52|, main_~x~0=v_main_~x~0_Out_52, main_#t~post6=|v_main_#t~post6_Out_52|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {10247#true} is VALID [2022-04-15 12:59:17,653 INFO L290 TraceCheckUtils]: 7: Hoare triple {10247#true} [114] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {10247#true} is VALID [2022-04-15 12:59:17,653 INFO L290 TraceCheckUtils]: 8: Hoare triple {10247#true} ~z~0 := ~y~0; {10252#(= (+ main_~y~0 (* (- 1) main_~z~0)) 0)} is VALID [2022-04-15 12:59:17,659 INFO L290 TraceCheckUtils]: 9: Hoare triple {10252#(= (+ main_~y~0 (* (- 1) main_~z~0)) 0)} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10253#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} is VALID [2022-04-15 12:59:17,671 INFO L290 TraceCheckUtils]: 10: Hoare triple {10253#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10254#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} is VALID [2022-04-15 12:59:17,677 INFO L290 TraceCheckUtils]: 11: Hoare triple {10254#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10255#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} is VALID [2022-04-15 12:59:17,679 INFO L290 TraceCheckUtils]: 12: Hoare triple {10255#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10256#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} is VALID [2022-04-15 12:59:17,682 INFO L290 TraceCheckUtils]: 13: Hoare triple {10256#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10257#(and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))} is VALID [2022-04-15 12:59:17,685 INFO L290 TraceCheckUtils]: 14: Hoare triple {10257#(and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10258#(and (<= (+ main_~z~0 6) main_~y~0) (<= main_~y~0 (+ main_~z~0 6)))} is VALID [2022-04-15 12:59:17,688 INFO L290 TraceCheckUtils]: 15: Hoare triple {10258#(and (<= (+ main_~z~0 6) main_~y~0) (<= main_~y~0 (+ main_~z~0 6)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10259#(and (<= main_~y~0 (+ 7 main_~z~0)) (<= (+ 7 main_~z~0) main_~y~0))} is VALID [2022-04-15 12:59:17,691 INFO L290 TraceCheckUtils]: 16: Hoare triple {10259#(and (<= main_~y~0 (+ 7 main_~z~0)) (<= (+ 7 main_~z~0) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10260#(and (<= main_~y~0 (+ main_~z~0 8)) (<= (+ main_~z~0 8) main_~y~0))} is VALID [2022-04-15 12:59:17,696 INFO L290 TraceCheckUtils]: 17: Hoare triple {10260#(and (<= main_~y~0 (+ main_~z~0 8)) (<= (+ main_~z~0 8) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10261#(<= main_~y~0 (+ 4294967303 (* (div (+ (- 9) main_~y~0) 4294967296) 4294967296)))} is VALID [2022-04-15 12:59:17,696 INFO L290 TraceCheckUtils]: 18: Hoare triple {10261#(<= main_~y~0 (+ 4294967303 (* (div (+ (- 9) main_~y~0) 4294967296) 4294967296)))} assume !(~z~0 % 4294967296 > 0); {10261#(<= main_~y~0 (+ 4294967303 (* (div (+ (- 9) main_~y~0) 4294967296) 4294967296)))} is VALID [2022-04-15 12:59:17,700 INFO L290 TraceCheckUtils]: 19: Hoare triple {10261#(<= main_~y~0 (+ 4294967303 (* (div (+ (- 9) main_~y~0) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10262#(<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:59:17,704 INFO L290 TraceCheckUtils]: 20: Hoare triple {10262#(<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10263#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301))} is VALID [2022-04-15 12:59:17,706 INFO L290 TraceCheckUtils]: 21: Hoare triple {10263#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10264#(<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} is VALID [2022-04-15 12:59:17,716 INFO L290 TraceCheckUtils]: 22: Hoare triple {10264#(<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10265#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} is VALID [2022-04-15 12:59:17,721 INFO L290 TraceCheckUtils]: 23: Hoare triple {10265#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10266#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} is VALID [2022-04-15 12:59:17,724 INFO L290 TraceCheckUtils]: 24: Hoare triple {10266#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10267#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} is VALID [2022-04-15 12:59:17,730 INFO L290 TraceCheckUtils]: 25: Hoare triple {10267#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10268#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} is VALID [2022-04-15 12:59:17,739 INFO L290 TraceCheckUtils]: 26: Hoare triple {10268#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10269#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} is VALID [2022-04-15 12:59:17,742 INFO L290 TraceCheckUtils]: 27: Hoare triple {10269#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} assume !(~y~0 % 4294967296 > 0); {10248#false} is VALID [2022-04-15 12:59:17,742 INFO L272 TraceCheckUtils]: 28: Hoare triple {10248#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {10248#false} is VALID [2022-04-15 12:59:17,742 INFO L290 TraceCheckUtils]: 29: Hoare triple {10248#false} ~cond := #in~cond; {10248#false} is VALID [2022-04-15 12:59:17,742 INFO L290 TraceCheckUtils]: 30: Hoare triple {10248#false} assume 0 == ~cond; {10248#false} is VALID [2022-04-15 12:59:17,742 INFO L290 TraceCheckUtils]: 31: Hoare triple {10248#false} assume !false; {10248#false} is VALID [2022-04-15 12:59:17,742 INFO L134 CoverageAnalysis]: Checked inductivity of 81 backedges. 0 proven. 81 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:59:17,743 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 12:59:17,743 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1720527783] [2022-04-15 12:59:17,743 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1720527783] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 12:59:17,743 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [424795519] [2022-04-15 12:59:17,743 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 12:59:17,743 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 12:59:17,743 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 12:59:17,744 INFO L229 MonitoredProcess]: Starting monitored process 25 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 12:59:17,744 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (25)] Waiting until timeout for monitored process [2022-04-15 12:59:17,782 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:59:17,783 INFO L263 TraceCheckSpWp]: Trace formula consists of 145 conjuncts, 36 conjunts are in the unsatisfiable core [2022-04-15 12:59:17,797 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 12:59:17,799 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 12:59:18,498 INFO L272 TraceCheckUtils]: 0: Hoare triple {10247#true} call ULTIMATE.init(); {10247#true} is VALID [2022-04-15 12:59:18,498 INFO L290 TraceCheckUtils]: 1: Hoare triple {10247#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(10, 2);call #Ultimate.allocInit(12, 3); {10247#true} is VALID [2022-04-15 12:59:18,498 INFO L290 TraceCheckUtils]: 2: Hoare triple {10247#true} assume true; {10247#true} is VALID [2022-04-15 12:59:18,498 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10247#true} {10247#true} #61#return; {10247#true} is VALID [2022-04-15 12:59:18,498 INFO L272 TraceCheckUtils]: 4: Hoare triple {10247#true} call #t~ret11 := main(); {10247#true} is VALID [2022-04-15 12:59:18,498 INFO L290 TraceCheckUtils]: 5: Hoare triple {10247#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {10247#true} is VALID [2022-04-15 12:59:18,499 INFO L290 TraceCheckUtils]: 6: Hoare triple {10247#true} [115] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~x~0_In_26 v_main_~x~0_Out_52) (= v_main_~y~0_In_26 v_main_~y~0_Out_52)) (and (< 0 (mod (+ v_main_~x~0_Out_52 1) 4294967296)) (= |v_main_#t~post6_Out_52| 0) (<= v_main_~x~0_Out_52 v_main_~x~0_In_26) (= (+ v_main_~x~0_In_26 v_main_~y~0_In_26) (+ v_main_~y~0_Out_52 v_main_~x~0_Out_52)) (= |v_main_#t~post5_Out_52| 0))) InVars {main_~x~0=v_main_~x~0_In_26, main_~y~0=v_main_~y~0_In_26} OutVars{main_~y~0=v_main_~y~0_Out_52, main_#t~post5=|v_main_#t~post5_Out_52|, main_~x~0=v_main_~x~0_Out_52, main_#t~post6=|v_main_#t~post6_Out_52|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {10247#true} is VALID [2022-04-15 12:59:18,499 INFO L290 TraceCheckUtils]: 7: Hoare triple {10247#true} [114] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {10247#true} is VALID [2022-04-15 12:59:18,499 INFO L290 TraceCheckUtils]: 8: Hoare triple {10247#true} ~z~0 := ~y~0; {10252#(= (+ main_~y~0 (* (- 1) main_~z~0)) 0)} is VALID [2022-04-15 12:59:18,505 INFO L290 TraceCheckUtils]: 9: Hoare triple {10252#(= (+ main_~y~0 (* (- 1) main_~z~0)) 0)} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10253#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} is VALID [2022-04-15 12:59:18,516 INFO L290 TraceCheckUtils]: 10: Hoare triple {10253#(and (<= main_~y~0 (+ main_~z~0 1)) (<= (+ main_~z~0 1) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10254#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} is VALID [2022-04-15 12:59:18,522 INFO L290 TraceCheckUtils]: 11: Hoare triple {10254#(and (<= main_~y~0 (+ main_~z~0 2)) (<= (+ main_~z~0 2) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10255#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} is VALID [2022-04-15 12:59:18,525 INFO L290 TraceCheckUtils]: 12: Hoare triple {10255#(and (<= (+ main_~z~0 3) main_~y~0) (<= main_~y~0 (+ main_~z~0 3)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10256#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} is VALID [2022-04-15 12:59:18,528 INFO L290 TraceCheckUtils]: 13: Hoare triple {10256#(and (<= main_~y~0 (+ main_~z~0 4)) (<= (+ main_~z~0 4) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10257#(and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))} is VALID [2022-04-15 12:59:18,531 INFO L290 TraceCheckUtils]: 14: Hoare triple {10257#(and (<= main_~y~0 (+ 5 main_~z~0)) (<= (+ 5 main_~z~0) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10258#(and (<= (+ main_~z~0 6) main_~y~0) (<= main_~y~0 (+ main_~z~0 6)))} is VALID [2022-04-15 12:59:18,533 INFO L290 TraceCheckUtils]: 15: Hoare triple {10258#(and (<= (+ main_~z~0 6) main_~y~0) (<= main_~y~0 (+ main_~z~0 6)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10259#(and (<= main_~y~0 (+ 7 main_~z~0)) (<= (+ 7 main_~z~0) main_~y~0))} is VALID [2022-04-15 12:59:18,536 INFO L290 TraceCheckUtils]: 16: Hoare triple {10259#(and (<= main_~y~0 (+ 7 main_~z~0)) (<= (+ 7 main_~z~0) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10260#(and (<= main_~y~0 (+ main_~z~0 8)) (<= (+ main_~z~0 8) main_~y~0))} is VALID [2022-04-15 12:59:18,541 INFO L290 TraceCheckUtils]: 17: Hoare triple {10260#(and (<= main_~y~0 (+ main_~z~0 8)) (<= (+ main_~z~0 8) main_~y~0))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10261#(<= main_~y~0 (+ 4294967303 (* (div (+ (- 9) main_~y~0) 4294967296) 4294967296)))} is VALID [2022-04-15 12:59:18,542 INFO L290 TraceCheckUtils]: 18: Hoare triple {10261#(<= main_~y~0 (+ 4294967303 (* (div (+ (- 9) main_~y~0) 4294967296) 4294967296)))} assume !(~z~0 % 4294967296 > 0); {10261#(<= main_~y~0 (+ 4294967303 (* (div (+ (- 9) main_~y~0) 4294967296) 4294967296)))} is VALID [2022-04-15 12:59:18,545 INFO L290 TraceCheckUtils]: 19: Hoare triple {10261#(<= main_~y~0 (+ 4294967303 (* (div (+ (- 9) main_~y~0) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10262#(<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:59:18,550 INFO L290 TraceCheckUtils]: 20: Hoare triple {10262#(<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10263#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301))} is VALID [2022-04-15 12:59:18,552 INFO L290 TraceCheckUtils]: 21: Hoare triple {10263#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10264#(<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} is VALID [2022-04-15 12:59:18,562 INFO L290 TraceCheckUtils]: 22: Hoare triple {10264#(<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10265#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} is VALID [2022-04-15 12:59:18,567 INFO L290 TraceCheckUtils]: 23: Hoare triple {10265#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10266#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} is VALID [2022-04-15 12:59:18,570 INFO L290 TraceCheckUtils]: 24: Hoare triple {10266#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10267#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} is VALID [2022-04-15 12:59:18,573 INFO L290 TraceCheckUtils]: 25: Hoare triple {10267#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10268#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} is VALID [2022-04-15 12:59:18,581 INFO L290 TraceCheckUtils]: 26: Hoare triple {10268#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10269#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} is VALID [2022-04-15 12:59:18,584 INFO L290 TraceCheckUtils]: 27: Hoare triple {10269#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} assume !(~y~0 % 4294967296 > 0); {10248#false} is VALID [2022-04-15 12:59:18,584 INFO L272 TraceCheckUtils]: 28: Hoare triple {10248#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {10248#false} is VALID [2022-04-15 12:59:18,584 INFO L290 TraceCheckUtils]: 29: Hoare triple {10248#false} ~cond := #in~cond; {10248#false} is VALID [2022-04-15 12:59:18,585 INFO L290 TraceCheckUtils]: 30: Hoare triple {10248#false} assume 0 == ~cond; {10248#false} is VALID [2022-04-15 12:59:18,585 INFO L290 TraceCheckUtils]: 31: Hoare triple {10248#false} assume !false; {10248#false} is VALID [2022-04-15 12:59:18,585 INFO L134 CoverageAnalysis]: Checked inductivity of 81 backedges. 0 proven. 81 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:59:18,585 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 12:59:21,100 INFO L290 TraceCheckUtils]: 31: Hoare triple {10248#false} assume !false; {10248#false} is VALID [2022-04-15 12:59:21,101 INFO L290 TraceCheckUtils]: 30: Hoare triple {10248#false} assume 0 == ~cond; {10248#false} is VALID [2022-04-15 12:59:21,101 INFO L290 TraceCheckUtils]: 29: Hoare triple {10248#false} ~cond := #in~cond; {10248#false} is VALID [2022-04-15 12:59:21,101 INFO L272 TraceCheckUtils]: 28: Hoare triple {10248#false} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {10248#false} is VALID [2022-04-15 12:59:21,104 INFO L290 TraceCheckUtils]: 27: Hoare triple {10269#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} assume !(~y~0 % 4294967296 > 0); {10248#false} is VALID [2022-04-15 12:59:21,114 INFO L290 TraceCheckUtils]: 26: Hoare triple {10268#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10269#(<= (+ (* (div main_~y~0 4294967296) 4294967296) 1) main_~y~0)} is VALID [2022-04-15 12:59:21,118 INFO L290 TraceCheckUtils]: 25: Hoare triple {10267#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10268#(<= main_~y~0 (+ (* (div (+ (- 2) main_~y~0) 4294967296) 4294967296) 4294967296))} is VALID [2022-04-15 12:59:21,122 INFO L290 TraceCheckUtils]: 24: Hoare triple {10266#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10267#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 3)) 4294967296) 4294967296) 4294967297))} is VALID [2022-04-15 12:59:21,125 INFO L290 TraceCheckUtils]: 23: Hoare triple {10265#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10266#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 4)) 4294967296) 4294967296) 4294967298))} is VALID [2022-04-15 12:59:21,136 INFO L290 TraceCheckUtils]: 22: Hoare triple {10264#(<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10265#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 5)) 4294967296) 4294967296) 4294967299))} is VALID [2022-04-15 12:59:21,141 INFO L290 TraceCheckUtils]: 21: Hoare triple {10263#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10264#(<= main_~y~0 (+ 4294967300 (* 4294967296 (div (+ main_~y~0 (- 6)) 4294967296))))} is VALID [2022-04-15 12:59:21,143 INFO L290 TraceCheckUtils]: 20: Hoare triple {10262#(<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10263#(<= main_~y~0 (+ (* (div (+ main_~y~0 (- 7)) 4294967296) 4294967296) 4294967301))} is VALID [2022-04-15 12:59:21,149 INFO L290 TraceCheckUtils]: 19: Hoare triple {10261#(<= main_~y~0 (+ 4294967303 (* (div (+ (- 9) main_~y~0) 4294967296) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10262#(<= main_~y~0 (+ 4294967302 (* (div (+ main_~y~0 (- 8)) 4294967296) 4294967296)))} is VALID [2022-04-15 12:59:21,150 INFO L290 TraceCheckUtils]: 18: Hoare triple {10261#(<= main_~y~0 (+ 4294967303 (* (div (+ (- 9) main_~y~0) 4294967296) 4294967296)))} assume !(~z~0 % 4294967296 > 0); {10261#(<= main_~y~0 (+ 4294967303 (* (div (+ (- 9) main_~y~0) 4294967296) 4294967296)))} is VALID [2022-04-15 12:59:21,150 INFO L290 TraceCheckUtils]: 17: Hoare triple {10409#(or (<= main_~y~0 (+ 4294967303 (* (div (+ (- 9) main_~y~0) 4294967296) 4294967296))) (not (< 0 (mod main_~z~0 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10261#(<= main_~y~0 (+ 4294967303 (* (div (+ (- 9) main_~y~0) 4294967296) 4294967296)))} is VALID [2022-04-15 12:59:21,166 INFO L290 TraceCheckUtils]: 16: Hoare triple {10413#(or (not (< 0 (mod (+ main_~z~0 4294967295) 4294967296))) (<= main_~y~0 (+ 4294967303 (* (div (+ (- 9) main_~y~0) 4294967296) 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10409#(or (<= main_~y~0 (+ 4294967303 (* (div (+ (- 9) main_~y~0) 4294967296) 4294967296))) (not (< 0 (mod main_~z~0 4294967296))))} is VALID [2022-04-15 12:59:21,175 INFO L290 TraceCheckUtils]: 15: Hoare triple {10417#(or (<= main_~y~0 (+ 4294967303 (* (div (+ (- 9) main_~y~0) 4294967296) 4294967296))) (not (< 0 (mod (+ main_~z~0 4294967294) 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10413#(or (not (< 0 (mod (+ main_~z~0 4294967295) 4294967296))) (<= main_~y~0 (+ 4294967303 (* (div (+ (- 9) main_~y~0) 4294967296) 4294967296))))} is VALID [2022-04-15 12:59:21,183 INFO L290 TraceCheckUtils]: 14: Hoare triple {10421#(or (not (< 0 (mod (+ main_~z~0 4294967293) 4294967296))) (<= main_~y~0 (+ 4294967303 (* (div (+ (- 9) main_~y~0) 4294967296) 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10417#(or (<= main_~y~0 (+ 4294967303 (* (div (+ (- 9) main_~y~0) 4294967296) 4294967296))) (not (< 0 (mod (+ main_~z~0 4294967294) 4294967296))))} is VALID [2022-04-15 12:59:21,192 INFO L290 TraceCheckUtils]: 13: Hoare triple {10425#(or (<= main_~y~0 (+ 4294967303 (* (div (+ (- 9) main_~y~0) 4294967296) 4294967296))) (not (< 0 (mod (+ 4294967292 main_~z~0) 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10421#(or (not (< 0 (mod (+ main_~z~0 4294967293) 4294967296))) (<= main_~y~0 (+ 4294967303 (* (div (+ (- 9) main_~y~0) 4294967296) 4294967296))))} is VALID [2022-04-15 12:59:21,202 INFO L290 TraceCheckUtils]: 12: Hoare triple {10429#(or (<= main_~y~0 (+ 4294967303 (* (div (+ (- 9) main_~y~0) 4294967296) 4294967296))) (not (< 0 (mod (+ 4294967291 main_~z~0) 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10425#(or (<= main_~y~0 (+ 4294967303 (* (div (+ (- 9) main_~y~0) 4294967296) 4294967296))) (not (< 0 (mod (+ 4294967292 main_~z~0) 4294967296))))} is VALID [2022-04-15 12:59:21,212 INFO L290 TraceCheckUtils]: 11: Hoare triple {10433#(or (<= main_~y~0 (+ 4294967303 (* (div (+ (- 9) main_~y~0) 4294967296) 4294967296))) (not (< 0 (mod (+ 4294967290 main_~z~0) 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10429#(or (<= main_~y~0 (+ 4294967303 (* (div (+ (- 9) main_~y~0) 4294967296) 4294967296))) (not (< 0 (mod (+ 4294967291 main_~z~0) 4294967296))))} is VALID [2022-04-15 12:59:21,219 INFO L290 TraceCheckUtils]: 10: Hoare triple {10437#(or (<= main_~y~0 (+ 4294967303 (* (div (+ (- 9) main_~y~0) 4294967296) 4294967296))) (not (< 0 (mod (+ main_~z~0 4294967289) 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10433#(or (<= main_~y~0 (+ 4294967303 (* (div (+ (- 9) main_~y~0) 4294967296) 4294967296))) (not (< 0 (mod (+ 4294967290 main_~z~0) 4294967296))))} is VALID [2022-04-15 12:59:21,227 INFO L290 TraceCheckUtils]: 9: Hoare triple {10441#(or (<= main_~y~0 (+ 4294967303 (* (div (+ (- 9) main_~y~0) 4294967296) 4294967296))) (not (< 0 (mod (+ 4294967288 main_~z~0) 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10437#(or (<= main_~y~0 (+ 4294967303 (* (div (+ (- 9) main_~y~0) 4294967296) 4294967296))) (not (< 0 (mod (+ main_~z~0 4294967289) 4294967296))))} is VALID [2022-04-15 12:59:21,231 INFO L290 TraceCheckUtils]: 8: Hoare triple {10247#true} ~z~0 := ~y~0; {10441#(or (<= main_~y~0 (+ 4294967303 (* (div (+ (- 9) main_~y~0) 4294967296) 4294967296))) (not (< 0 (mod (+ 4294967288 main_~z~0) 4294967296))))} is VALID [2022-04-15 12:59:21,231 INFO L290 TraceCheckUtils]: 7: Hoare triple {10247#true} [114] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {10247#true} is VALID [2022-04-15 12:59:21,232 INFO L290 TraceCheckUtils]: 6: Hoare triple {10247#true} [115] L16-2-->L16-3_primed: Formula: (or (and (= v_main_~x~0_In_26 v_main_~x~0_Out_52) (= v_main_~y~0_In_26 v_main_~y~0_Out_52)) (and (< 0 (mod (+ v_main_~x~0_Out_52 1) 4294967296)) (= |v_main_#t~post6_Out_52| 0) (<= v_main_~x~0_Out_52 v_main_~x~0_In_26) (= (+ v_main_~x~0_In_26 v_main_~y~0_In_26) (+ v_main_~y~0_Out_52 v_main_~x~0_Out_52)) (= |v_main_#t~post5_Out_52| 0))) InVars {main_~x~0=v_main_~x~0_In_26, main_~y~0=v_main_~y~0_In_26} OutVars{main_~y~0=v_main_~y~0_Out_52, main_#t~post5=|v_main_#t~post5_Out_52|, main_~x~0=v_main_~x~0_Out_52, main_#t~post6=|v_main_#t~post6_Out_52|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {10247#true} is VALID [2022-04-15 12:59:21,232 INFO L290 TraceCheckUtils]: 5: Hoare triple {10247#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {10247#true} is VALID [2022-04-15 12:59:21,232 INFO L272 TraceCheckUtils]: 4: Hoare triple {10247#true} call #t~ret11 := main(); {10247#true} is VALID [2022-04-15 12:59:21,232 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10247#true} {10247#true} #61#return; {10247#true} is VALID [2022-04-15 12:59:21,232 INFO L290 TraceCheckUtils]: 2: Hoare triple {10247#true} assume true; {10247#true} is VALID [2022-04-15 12:59:21,232 INFO L290 TraceCheckUtils]: 1: Hoare triple {10247#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(10, 2);call #Ultimate.allocInit(12, 3); {10247#true} is VALID [2022-04-15 12:59:21,232 INFO L272 TraceCheckUtils]: 0: Hoare triple {10247#true} call ULTIMATE.init(); {10247#true} is VALID [2022-04-15 12:59:21,232 INFO L134 CoverageAnalysis]: Checked inductivity of 81 backedges. 9 proven. 72 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 12:59:21,232 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [424795519] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 12:59:21,233 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 12:59:21,233 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [21, 20, 20] total 30 [2022-04-15 12:59:31,745 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 12:59:31,745 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [447699180] [2022-04-15 12:59:31,745 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [447699180] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 12:59:31,745 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 12:59:31,745 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [29] imperfect sequences [] total 29 [2022-04-15 12:59:31,745 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1445983502] [2022-04-15 12:59:31,746 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 12:59:31,746 INFO L78 Accepts]: Start accepts. Automaton has has 29 states, 29 states have (on average 1.206896551724138) internal successors, (35), 28 states have internal predecessors, (35), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 39 [2022-04-15 12:59:31,746 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 12:59:31,746 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 29 states, 29 states have (on average 1.206896551724138) internal successors, (35), 28 states have internal predecessors, (35), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 12:59:32,038 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 39 edges. 39 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 12:59:32,038 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 29 states [2022-04-15 12:59:32,039 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 12:59:32,039 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 29 interpolants. [2022-04-15 12:59:32,039 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=119, Invalid=1287, Unknown=0, NotChecked=0, Total=1406 [2022-04-15 12:59:32,039 INFO L87 Difference]: Start difference. First operand 40 states and 42 transitions. Second operand has 29 states, 29 states have (on average 1.206896551724138) internal successors, (35), 28 states have internal predecessors, (35), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 13:00:24,642 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 13:00:24,643 INFO L93 Difference]: Finished difference Result 46 states and 48 transitions. [2022-04-15 13:00:24,643 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 30 states. [2022-04-15 13:00:24,643 INFO L78 Accepts]: Start accepts. Automaton has has 29 states, 29 states have (on average 1.206896551724138) internal successors, (35), 28 states have internal predecessors, (35), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 39 [2022-04-15 13:00:24,643 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 13:00:24,643 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 29 states have (on average 1.206896551724138) internal successors, (35), 28 states have internal predecessors, (35), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 13:00:24,644 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 48 transitions. [2022-04-15 13:00:24,644 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 29 states have (on average 1.206896551724138) internal successors, (35), 28 states have internal predecessors, (35), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 13:00:24,644 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 48 transitions. [2022-04-15 13:00:24,644 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 30 states and 48 transitions. [2022-04-15 13:00:27,424 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 13:00:27,425 INFO L225 Difference]: With dead ends: 46 [2022-04-15 13:00:27,425 INFO L226 Difference]: Without dead ends: 41 [2022-04-15 13:00:27,426 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 127 GetRequests, 57 SyntacticMatches, 7 SemanticMatches, 63 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 576 ImplicationChecksByTransitivity, 34.3s TimeCoverageRelationStatistics Valid=562, Invalid=3598, Unknown=0, NotChecked=0, Total=4160 [2022-04-15 13:00:27,426 INFO L913 BasicCegarLoop]: 14 mSDtfsCounter, 29 mSDsluCounter, 112 mSDsCounter, 0 mSdLazyCounter, 507 mSolverCounterSat, 130 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 12.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 29 SdHoareTripleChecker+Valid, 126 SdHoareTripleChecker+Invalid, 637 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 130 IncrementalHoareTripleChecker+Valid, 507 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 12.9s IncrementalHoareTripleChecker+Time [2022-04-15 13:00:27,426 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [29 Valid, 126 Invalid, 637 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [130 Valid, 507 Invalid, 0 Unknown, 0 Unchecked, 12.9s Time] [2022-04-15 13:00:27,426 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 41 states. [2022-04-15 13:00:27,661 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 41 to 41. [2022-04-15 13:00:27,661 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 13:00:27,662 INFO L82 GeneralOperation]: Start isEquivalent. First operand 41 states. Second operand has 41 states, 36 states have (on average 1.0833333333333333) internal successors, (39), 36 states have internal predecessors, (39), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 13:00:27,662 INFO L74 IsIncluded]: Start isIncluded. First operand 41 states. Second operand has 41 states, 36 states have (on average 1.0833333333333333) internal successors, (39), 36 states have internal predecessors, (39), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 13:00:27,662 INFO L87 Difference]: Start difference. First operand 41 states. Second operand has 41 states, 36 states have (on average 1.0833333333333333) internal successors, (39), 36 states have internal predecessors, (39), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 13:00:27,662 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 13:00:27,662 INFO L93 Difference]: Finished difference Result 41 states and 43 transitions. [2022-04-15 13:00:27,662 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 43 transitions. [2022-04-15 13:00:27,663 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 13:00:27,663 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 13:00:27,663 INFO L74 IsIncluded]: Start isIncluded. First operand has 41 states, 36 states have (on average 1.0833333333333333) internal successors, (39), 36 states have internal predecessors, (39), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 41 states. [2022-04-15 13:00:27,663 INFO L87 Difference]: Start difference. First operand has 41 states, 36 states have (on average 1.0833333333333333) internal successors, (39), 36 states have internal predecessors, (39), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Second operand 41 states. [2022-04-15 13:00:27,663 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 13:00:27,663 INFO L93 Difference]: Finished difference Result 41 states and 43 transitions. [2022-04-15 13:00:27,663 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 43 transitions. [2022-04-15 13:00:27,663 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 13:00:27,664 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 13:00:27,664 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 13:00:27,664 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 13:00:27,664 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 41 states, 36 states have (on average 1.0833333333333333) internal successors, (39), 36 states have internal predecessors, (39), 3 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 13:00:27,664 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 41 states to 41 states and 43 transitions. [2022-04-15 13:00:27,664 INFO L78 Accepts]: Start accepts. Automaton has 41 states and 43 transitions. Word has length 39 [2022-04-15 13:00:27,664 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 13:00:27,664 INFO L478 AbstractCegarLoop]: Abstraction has 41 states and 43 transitions. [2022-04-15 13:00:27,665 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 29 states, 29 states have (on average 1.206896551724138) internal successors, (35), 28 states have internal predecessors, (35), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 13:00:27,665 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 41 states and 43 transitions. [2022-04-15 13:00:30,863 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 13:00:30,864 INFO L276 IsEmpty]: Start isEmpty. Operand 41 states and 43 transitions. [2022-04-15 13:00:30,864 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 41 [2022-04-15 13:00:30,864 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 13:00:30,864 INFO L499 BasicCegarLoop]: trace histogram [9, 9, 8, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 13:00:30,880 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (25)] Forceful destruction successful, exit code 0 [2022-04-15 13:00:31,075 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 25 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable26 [2022-04-15 13:00:31,076 INFO L403 AbstractCegarLoop]: === Iteration 28 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 13:00:31,076 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 13:00:31,076 INFO L85 PathProgramCache]: Analyzing trace with hash -1657264866, now seen corresponding path program 25 times [2022-04-15 13:00:31,076 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 13:00:31,076 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1359308180] [2022-04-15 13:00:31,253 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-15 13:00:31,254 INFO L85 PathProgramCache]: Analyzing trace with hash -482629730, now seen corresponding path program 1 times [2022-04-15 13:00:31,255 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 13:00:31,255 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [108605358] [2022-04-15 13:00:31,255 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 13:00:31,255 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 13:00:31,292 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 13:00:36,515 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 13:00:36,517 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 13:00:36,521 INFO L290 TraceCheckUtils]: 0: Hoare triple {10821#(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(10, 2);call #Ultimate.allocInit(12, 3); {10791#true} is VALID [2022-04-15 13:00:36,521 INFO L290 TraceCheckUtils]: 1: Hoare triple {10791#true} assume true; {10791#true} is VALID [2022-04-15 13:00:36,521 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {10791#true} {10791#true} #61#return; {10791#true} is VALID [2022-04-15 13:00:36,522 INFO L272 TraceCheckUtils]: 0: Hoare triple {10791#true} call ULTIMATE.init(); {10821#(and (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 13:00:36,522 INFO L290 TraceCheckUtils]: 1: Hoare triple {10821#(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(10, 2);call #Ultimate.allocInit(12, 3); {10791#true} is VALID [2022-04-15 13:00:36,522 INFO L290 TraceCheckUtils]: 2: Hoare triple {10791#true} assume true; {10791#true} is VALID [2022-04-15 13:00:36,522 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10791#true} {10791#true} #61#return; {10791#true} is VALID [2022-04-15 13:00:36,522 INFO L272 TraceCheckUtils]: 4: Hoare triple {10791#true} call #t~ret11 := main(); {10791#true} is VALID [2022-04-15 13:00:36,522 INFO L290 TraceCheckUtils]: 5: Hoare triple {10791#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {10796#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} is VALID [2022-04-15 13:00:36,529 INFO L290 TraceCheckUtils]: 6: Hoare triple {10796#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} [117] L16-2-->L16-3_primed: Formula: (or (and (< 0 (mod (+ v_main_~x~0_Out_54 1) 4294967296)) (<= v_main_~x~0_Out_54 v_main_~x~0_In_27) (= |v_main_#t~post5_Out_54| 0) (= (+ v_main_~y~0_Out_54 v_main_~x~0_Out_54) (+ v_main_~x~0_In_27 v_main_~y~0_In_27)) (= |v_main_#t~post6_Out_54| 0)) (and (= v_main_~y~0_In_27 v_main_~y~0_Out_54) (= v_main_~x~0_In_27 v_main_~x~0_Out_54))) InVars {main_~x~0=v_main_~x~0_In_27, main_~y~0=v_main_~y~0_In_27} OutVars{main_~y~0=v_main_~y~0_Out_54, main_#t~post5=|v_main_#t~post5_Out_54|, main_~x~0=v_main_~x~0_Out_54, main_#t~post6=|v_main_#t~post6_Out_54|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {10797#(or (and (<= 0 main_~y~0) (<= main_~y~0 0)) (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= (+ main_~y~0 main_~x~0) main_~n~0) (<= main_~n~0 (+ main_~y~0 main_~x~0))))} is VALID [2022-04-15 13:00:36,536 INFO L290 TraceCheckUtils]: 7: Hoare triple {10797#(or (and (<= 0 main_~y~0) (<= main_~y~0 0)) (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= (+ main_~y~0 main_~x~0) main_~n~0) (<= main_~n~0 (+ main_~y~0 main_~x~0))))} [116] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {10798#(or (and (<= 0 main_~y~0) (<= main_~y~0 0)) (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~y~0 (* 4294967296 (div main_~x~0 4294967296))))))} is VALID [2022-04-15 13:00:36,538 INFO L290 TraceCheckUtils]: 8: Hoare triple {10798#(or (and (<= 0 main_~y~0) (<= main_~y~0 0)) (and (<= (+ main_~y~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~y~0 (* 4294967296 (div main_~x~0 4294967296))))))} ~z~0 := ~y~0; {10799#(or (and (<= main_~z~0 0) (<= 0 main_~z~0)) (and (<= (+ main_~z~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~z~0 (* 4294967296 (div main_~x~0 4294967296))))))} is VALID [2022-04-15 13:00:36,548 INFO L290 TraceCheckUtils]: 9: Hoare triple {10799#(or (and (<= main_~z~0 0) (<= 0 main_~z~0)) (and (<= (+ main_~z~0 (* (div (+ main_~x~0 1) 4294967296) 4294967296)) main_~n~0) (<= main_~n~0 (+ main_~z~0 (* 4294967296 (div main_~x~0 4294967296))))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10800#(<= (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) 4294967294 (* (div main_~z~0 4294967296) (- 4294967296)) (* (div (+ main_~z~0 1) 4294967296) 4294967296)) 4294967296) 4294967296) 1) main_~n~0)} is VALID [2022-04-15 13:00:36,555 INFO L290 TraceCheckUtils]: 10: Hoare triple {10800#(<= (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) 4294967294 (* (div main_~z~0 4294967296) (- 4294967296)) (* (div (+ main_~z~0 1) 4294967296) 4294967296)) 4294967296) 4294967296) 1) main_~n~0)} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10801#(<= (+ main_~z~0 2 (* (div (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0 (* (- 1) main_~z~0) (* (div main_~z~0 4294967296) (- 4294967296)) 4294967293) 4294967296) 4294967296)) main_~n~0)} is VALID [2022-04-15 13:00:36,561 INFO L290 TraceCheckUtils]: 11: Hoare triple {10801#(<= (+ main_~z~0 2 (* (div (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0 (* (- 1) main_~z~0) (* (div main_~z~0 4294967296) (- 4294967296)) 4294967293) 4294967296) 4294967296)) main_~n~0)} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10802#(<= (+ main_~z~0 3 (* (div (+ 4294967292 main_~n~0 (* (- 1) main_~z~0) (* (div main_~z~0 4294967296) (- 4294967296)) (* (div (+ main_~z~0 3) 4294967296) 4294967296)) 4294967296) 4294967296)) main_~n~0)} is VALID [2022-04-15 13:00:36,574 INFO L290 TraceCheckUtils]: 12: Hoare triple {10802#(<= (+ main_~z~0 3 (* (div (+ 4294967292 main_~n~0 (* (- 1) main_~z~0) (* (div main_~z~0 4294967296) (- 4294967296)) (* (div (+ main_~z~0 3) 4294967296) 4294967296)) 4294967296) 4294967296)) main_~n~0)} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10803#(<= (+ (* (div (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) 4294967291 main_~n~0 (* (- 1) main_~z~0) (* (div main_~z~0 4294967296) (- 4294967296))) 4294967296) 4294967296) main_~z~0 4) main_~n~0)} is VALID [2022-04-15 13:00:36,598 INFO L290 TraceCheckUtils]: 13: Hoare triple {10803#(<= (+ (* (div (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) 4294967291 main_~n~0 (* (- 1) main_~z~0) (* (div main_~z~0 4294967296) (- 4294967296))) 4294967296) 4294967296) main_~z~0 4) main_~n~0)} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10804#(<= (+ 5 main_~z~0 (* (div (+ 4294967290 main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296) (* (- 1) main_~z~0) (* (div main_~z~0 4294967296) (- 4294967296))) 4294967296) 4294967296)) main_~n~0)} is VALID [2022-04-15 13:00:36,614 INFO L290 TraceCheckUtils]: 14: Hoare triple {10804#(<= (+ 5 main_~z~0 (* (div (+ 4294967290 main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296) (* (- 1) main_~z~0) (* (div main_~z~0 4294967296) (- 4294967296))) 4294967296) 4294967296)) main_~n~0)} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10805#(<= (+ (* (div (+ (* (div (+ main_~z~0 6) 4294967296) 4294967296) main_~n~0 (* (- 1) main_~z~0) (* (div main_~z~0 4294967296) (- 4294967296)) 4294967289) 4294967296) 4294967296) main_~z~0 6) main_~n~0)} is VALID [2022-04-15 13:00:36,634 INFO L290 TraceCheckUtils]: 15: Hoare triple {10805#(<= (+ (* (div (+ (* (div (+ main_~z~0 6) 4294967296) 4294967296) main_~n~0 (* (- 1) main_~z~0) (* (div main_~z~0 4294967296) (- 4294967296)) 4294967289) 4294967296) 4294967296) main_~z~0 6) main_~n~0)} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10806#(<= (+ 7 main_~z~0 (* 4294967296 (div (+ 4294967288 main_~n~0 (* (- 1) main_~z~0) (* (div (+ 7 main_~z~0) 4294967296) 4294967296) (* (div main_~z~0 4294967296) (- 4294967296))) 4294967296))) main_~n~0)} is VALID [2022-04-15 13:00:37,034 INFO L290 TraceCheckUtils]: 16: Hoare triple {10806#(<= (+ 7 main_~z~0 (* 4294967296 (div (+ 4294967288 main_~n~0 (* (- 1) main_~z~0) (* (div (+ 7 main_~z~0) 4294967296) 4294967296) (* (div main_~z~0 4294967296) (- 4294967296))) 4294967296))) main_~n~0)} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10807#(and (<= main_~z~0 (+ (* (div (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 8 (* (- 1) main_~n~0)) 4294967296) 4294967296) 4294967287)) (<= (div main_~n~0 4294967296) (+ (div main_~z~0 4294967296) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 8)) 4294967296))))} is VALID [2022-04-15 13:00:37,045 INFO L290 TraceCheckUtils]: 17: Hoare triple {10807#(and (<= main_~z~0 (+ (* (div (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 8 (* (- 1) main_~n~0)) 4294967296) 4294967296) 4294967287)) (<= (div main_~n~0 4294967296) (+ (div main_~z~0 4294967296) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 8)) 4294967296))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10808#(and (<= (* (div main_~n~0 4294967296) 4294967296) (+ (* 4294967296 (div (+ (- 9) main_~n~0 (* (- 1) main_~z~0)) 4294967296)) main_~z~0)) (<= (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 9 (* (div main_~n~0 4294967296) 4294967296))))} is VALID [2022-04-15 13:00:37,051 INFO L290 TraceCheckUtils]: 18: Hoare triple {10808#(and (<= (* (div main_~n~0 4294967296) 4294967296) (+ (* 4294967296 (div (+ (- 9) main_~n~0 (* (- 1) main_~z~0)) 4294967296)) main_~z~0)) (<= (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 9 (* (div main_~n~0 4294967296) 4294967296))))} assume !(~z~0 % 4294967296 > 0); {10809#(and (<= (* (div main_~n~0 4294967296) 4294967296) (+ (* 4294967296 (div (+ (- 9) main_~n~0 (* (- 1) main_~z~0)) 4294967296)) main_~z~0)) (<= main_~n~0 (+ main_~z~0 9 (* (div (+ (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296)) 4294967296) 4294967296))))} is VALID [2022-04-15 13:00:37,054 INFO L290 TraceCheckUtils]: 19: Hoare triple {10809#(and (<= (* (div main_~n~0 4294967296) 4294967296) (+ (* 4294967296 (div (+ (- 9) main_~n~0 (* (- 1) main_~z~0)) 4294967296)) main_~z~0)) (<= main_~n~0 (+ main_~z~0 9 (* (div (+ (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296)) 4294967296) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10810#(and (<= (+ (* (div main_~n~0 4294967296) 4294967296) 1) (+ (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 8)) 4294967296) 4294967296) main_~z~0)) (<= main_~n~0 (+ main_~z~0 (* (div (+ (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296) 1) 4294967296) 4294967296) 8)))} is VALID [2022-04-15 13:00:37,060 INFO L290 TraceCheckUtils]: 20: Hoare triple {10810#(and (<= (+ (* (div main_~n~0 4294967296) 4294967296) 1) (+ (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 8)) 4294967296) 4294967296) main_~z~0)) (<= main_~n~0 (+ main_~z~0 (* (div (+ (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296) 1) 4294967296) 4294967296) 8)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10811#(and (<= main_~n~0 (+ (* 4294967296 (div (+ 2 (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296)) 4294967296)) 7 main_~z~0)) (<= (+ 2 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~n~0 (- 7) (* (- 1) main_~z~0)) 4294967296) 4294967296) main_~z~0)))} is VALID [2022-04-15 13:00:37,064 INFO L290 TraceCheckUtils]: 21: Hoare triple {10811#(and (<= main_~n~0 (+ (* 4294967296 (div (+ 2 (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296)) 4294967296)) 7 main_~z~0)) (<= (+ 2 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~n~0 (- 7) (* (- 1) main_~z~0)) 4294967296) 4294967296) main_~z~0)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10812#(and (<= main_~n~0 (+ main_~z~0 6 (* (div (+ (* (- 1) main_~z~0) 3 (* (div main_~n~0 4294967296) 4294967296)) 4294967296) 4294967296))) (<= (+ 3 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~z~0 (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 6)) 4294967296)))))} is VALID [2022-04-15 13:00:37,069 INFO L290 TraceCheckUtils]: 22: Hoare triple {10812#(and (<= main_~n~0 (+ main_~z~0 6 (* (div (+ (* (- 1) main_~z~0) 3 (* (div main_~n~0 4294967296) 4294967296)) 4294967296) 4294967296))) (<= (+ 3 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~z~0 (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 6)) 4294967296)))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10813#(and (<= main_~n~0 (+ 5 main_~z~0 (* (div (+ (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296) 4) 4294967296) 4294967296))) (<= (+ (* (div main_~n~0 4294967296) 4294967296) 4) (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 5)) 4294967296) 4294967296))))} is VALID [2022-04-15 13:00:37,074 INFO L290 TraceCheckUtils]: 23: Hoare triple {10813#(and (<= main_~n~0 (+ 5 main_~z~0 (* (div (+ (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296) 4) 4294967296) 4294967296))) (<= (+ (* (div main_~n~0 4294967296) 4294967296) 4) (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 5)) 4294967296) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10814#(and (<= (+ 5 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296) 4294967296))) (<= main_~n~0 (+ main_~z~0 (* (div (+ 5 (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296)) 4294967296) 4294967296) 4)))} is VALID [2022-04-15 13:00:37,078 INFO L290 TraceCheckUtils]: 24: Hoare triple {10814#(and (<= (+ 5 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~z~0 (* (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296) 4294967296))) (<= main_~n~0 (+ main_~z~0 (* (div (+ 5 (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296)) 4294967296) 4294967296) 4)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10815#(and (<= main_~n~0 (+ (* (div (+ (* (- 1) main_~z~0) 6 (* (div main_~n~0 4294967296) 4294967296)) 4294967296) 4294967296) main_~z~0 3)) (<= (+ 6 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~z~0 (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296)))))} is VALID [2022-04-15 13:00:37,082 INFO L290 TraceCheckUtils]: 25: Hoare triple {10815#(and (<= main_~n~0 (+ (* (div (+ (* (- 1) main_~z~0) 6 (* (div main_~n~0 4294967296) 4294967296)) 4294967296) 4294967296) main_~z~0 3)) (<= (+ 6 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~z~0 (* 4294967296 (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296)))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10816#(and (<= main_~n~0 (+ main_~z~0 2 (* 4294967296 (div (+ 7 (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296)) 4294967296)))) (<= (+ 7 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~z~0 (* (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296))))} is VALID [2022-04-15 13:00:37,085 INFO L290 TraceCheckUtils]: 26: Hoare triple {10816#(and (<= main_~n~0 (+ main_~z~0 2 (* 4294967296 (div (+ 7 (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296)) 4294967296)))) (<= (+ 7 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~z~0 (* (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10817#(and (<= (+ (* (div main_~n~0 4294967296) 4294967296) 8) (+ main_~z~0 (* (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296))) (<= main_~n~0 (+ (* (div (+ (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296) 8) 4294967296) 4294967296) main_~z~0 1)))} is VALID [2022-04-15 13:00:37,090 INFO L290 TraceCheckUtils]: 27: Hoare triple {10817#(and (<= (+ (* (div main_~n~0 4294967296) 4294967296) 8) (+ main_~z~0 (* (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296) 4294967296))) (<= main_~n~0 (+ (* (div (+ (* (- 1) main_~z~0) (* (div main_~n~0 4294967296) 4294967296) 8) 4294967296) 4294967296) main_~z~0 1)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10818#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 13:00:37,090 INFO L290 TraceCheckUtils]: 28: Hoare triple {10818#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} assume !(~y~0 % 4294967296 > 0); {10818#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 13:00:37,092 INFO L272 TraceCheckUtils]: 29: Hoare triple {10818#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {10819#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 13:00:37,093 INFO L290 TraceCheckUtils]: 30: Hoare triple {10819#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {10820#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 13:00:37,093 INFO L290 TraceCheckUtils]: 31: Hoare triple {10820#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {10792#false} is VALID [2022-04-15 13:00:37,093 INFO L290 TraceCheckUtils]: 32: Hoare triple {10792#false} assume !false; {10792#false} is VALID [2022-04-15 13:00:37,093 INFO L134 CoverageAnalysis]: Checked inductivity of 90 backedges. 0 proven. 90 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 13:00:37,093 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 13:00:37,094 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [108605358] [2022-04-15 13:00:37,094 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [108605358] provided 0 perfect and 1 imperfect interpolant sequences [2022-04-15 13:00:37,094 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [774492409] [2022-04-15 13:00:37,094 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 13:00:37,094 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 13:00:37,094 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 13:00:37,095 INFO L229 MonitoredProcess]: Starting monitored process 26 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-04-15 13:00:37,095 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (26)] Waiting until timeout for monitored process [2022-04-15 13:00:37,514 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 13:00:37,515 INFO L263 TraceCheckSpWp]: Trace formula consists of 150 conjuncts, 49 conjunts are in the unsatisfiable core [2022-04-15 13:00:37,542 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 13:00:37,547 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 13:01:12,825 INFO L272 TraceCheckUtils]: 0: Hoare triple {10791#true} call ULTIMATE.init(); {10791#true} is VALID [2022-04-15 13:01:12,825 INFO L290 TraceCheckUtils]: 1: Hoare triple {10791#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(10, 2);call #Ultimate.allocInit(12, 3); {10791#true} is VALID [2022-04-15 13:01:12,825 INFO L290 TraceCheckUtils]: 2: Hoare triple {10791#true} assume true; {10791#true} is VALID [2022-04-15 13:01:12,826 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10791#true} {10791#true} #61#return; {10791#true} is VALID [2022-04-15 13:01:12,826 INFO L272 TraceCheckUtils]: 4: Hoare triple {10791#true} call #t~ret11 := main(); {10791#true} is VALID [2022-04-15 13:01:12,826 INFO L290 TraceCheckUtils]: 5: Hoare triple {10791#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {10796#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} is VALID [2022-04-15 13:01:12,834 INFO L290 TraceCheckUtils]: 6: Hoare triple {10796#(and (= 0 (+ main_~x~0 (* (- 1) main_~n~0))) (= main_~y~0 0))} [117] L16-2-->L16-3_primed: Formula: (or (and (< 0 (mod (+ v_main_~x~0_Out_54 1) 4294967296)) (<= v_main_~x~0_Out_54 v_main_~x~0_In_27) (= |v_main_#t~post5_Out_54| 0) (= (+ v_main_~y~0_Out_54 v_main_~x~0_Out_54) (+ v_main_~x~0_In_27 v_main_~y~0_In_27)) (= |v_main_#t~post6_Out_54| 0)) (and (= v_main_~y~0_In_27 v_main_~y~0_Out_54) (= v_main_~x~0_In_27 v_main_~x~0_Out_54))) InVars {main_~x~0=v_main_~x~0_In_27, main_~y~0=v_main_~y~0_In_27} OutVars{main_~y~0=v_main_~y~0_Out_54, main_#t~post5=|v_main_#t~post5_Out_54|, main_~x~0=v_main_~x~0_Out_54, main_#t~post6=|v_main_#t~post6_Out_54|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {10843#(or (and (< 0 (mod (+ main_~x~0 1) 4294967296)) (<= main_~x~0 main_~n~0) (= main_~n~0 (+ main_~y~0 main_~x~0))) (and (= main_~n~0 main_~x~0) (= main_~y~0 0)))} is VALID [2022-04-15 13:01:12,847 INFO L290 TraceCheckUtils]: 7: Hoare triple {10843#(or (and (< 0 (mod (+ main_~x~0 1) 4294967296)) (<= main_~x~0 main_~n~0) (= main_~n~0 (+ main_~y~0 main_~x~0))) (and (= main_~n~0 main_~x~0) (= main_~y~0 0)))} [116] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {10847#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} is VALID [2022-04-15 13:01:12,847 INFO L290 TraceCheckUtils]: 8: Hoare triple {10847#(and (<= 0 main_~y~0) (<= (div (+ main_~y~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~y~0)) 4294967296)))} ~z~0 := ~y~0; {10851#(and (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} is VALID [2022-04-15 13:01:12,861 INFO L290 TraceCheckUtils]: 9: Hoare triple {10851#(and (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10855#(and (< 0 (mod (+ main_~z~0 1) 4294967296)) (<= 0 (+ main_~z~0 1)) (<= (div (+ main_~z~0 (* (- 1) main_~n~0) 1) (- 4294967296)) (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} is VALID [2022-04-15 13:01:12,877 INFO L290 TraceCheckUtils]: 10: Hoare triple {10855#(and (< 0 (mod (+ main_~z~0 1) 4294967296)) (<= 0 (+ main_~z~0 1)) (<= (div (+ main_~z~0 (* (- 1) main_~n~0) 1) (- 4294967296)) (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10859#(and (<= 0 (+ main_~z~0 2)) (< 0 (mod (+ main_~z~0 2) 4294967296)) (<= (div (+ main_~z~0 2 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} is VALID [2022-04-15 13:01:12,892 INFO L290 TraceCheckUtils]: 11: Hoare triple {10859#(and (<= 0 (+ main_~z~0 2)) (< 0 (mod (+ main_~z~0 2) 4294967296)) (<= (div (+ main_~z~0 2 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10863#(and (<= 0 (+ main_~z~0 3)) (<= (div (+ main_~z~0 3 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296)) (< 0 (mod (+ main_~z~0 3) 4294967296)))} is VALID [2022-04-15 13:01:12,902 INFO L290 TraceCheckUtils]: 12: Hoare triple {10863#(and (<= 0 (+ main_~z~0 3)) (<= (div (+ main_~z~0 3 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296)) (< 0 (mod (+ main_~z~0 3) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10867#(and (<= (div (+ main_~z~0 4 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296)) (<= 0 (+ main_~z~0 4)) (< 0 (mod (+ main_~z~0 4) 4294967296)))} is VALID [2022-04-15 13:01:12,916 INFO L290 TraceCheckUtils]: 13: Hoare triple {10867#(and (<= (div (+ main_~z~0 4 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296)) (<= 0 (+ main_~z~0 4)) (< 0 (mod (+ main_~z~0 4) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10871#(and (<= (div (+ 5 main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 5)) 4294967296)) (< 0 (mod (+ 5 main_~z~0) 4294967296)) (<= 0 (+ 5 main_~z~0)))} is VALID [2022-04-15 13:01:12,927 INFO L290 TraceCheckUtils]: 14: Hoare triple {10871#(and (<= (div (+ 5 main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 5)) 4294967296)) (< 0 (mod (+ 5 main_~z~0) 4294967296)) (<= 0 (+ 5 main_~z~0)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10875#(and (< 0 (mod (+ main_~z~0 6) 4294967296)) (<= (div (+ main_~z~0 6 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 6)) 4294967296)) (<= 0 (+ main_~z~0 6)))} is VALID [2022-04-15 13:01:12,947 INFO L290 TraceCheckUtils]: 15: Hoare triple {10875#(and (< 0 (mod (+ main_~z~0 6) 4294967296)) (<= (div (+ main_~z~0 6 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 6)) 4294967296)) (<= 0 (+ main_~z~0 6)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10879#(and (< 0 (mod (+ 7 main_~z~0) 4294967296)) (<= 0 (+ 7 main_~z~0)) (<= (div (+ 7 main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (- 7) (* (- 1) main_~z~0)) 4294967296)))} is VALID [2022-04-15 13:01:12,957 INFO L290 TraceCheckUtils]: 16: Hoare triple {10879#(and (< 0 (mod (+ 7 main_~z~0) 4294967296)) (<= 0 (+ 7 main_~z~0)) (<= (div (+ 7 main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (- 7) (* (- 1) main_~z~0)) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10883#(and (<= 0 (+ main_~z~0 8)) (< 0 (mod (+ main_~z~0 8) 4294967296)) (<= (div (+ main_~z~0 8 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 8)) 4294967296)))} is VALID [2022-04-15 13:01:12,966 INFO L290 TraceCheckUtils]: 17: Hoare triple {10883#(and (<= 0 (+ main_~z~0 8)) (< 0 (mod (+ main_~z~0 8) 4294967296)) (<= (div (+ main_~z~0 8 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 8)) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10887#(and (< 0 (mod (+ main_~z~0 9) 4294967296)) (<= (div (+ main_~z~0 9 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ (- 9) main_~n~0 (* (- 1) main_~z~0)) 4294967296)) (<= 0 (+ main_~z~0 9)))} is VALID [2022-04-15 13:01:12,967 INFO L290 TraceCheckUtils]: 18: Hoare triple {10887#(and (< 0 (mod (+ main_~z~0 9) 4294967296)) (<= (div (+ main_~z~0 9 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ (- 9) main_~n~0 (* (- 1) main_~z~0)) 4294967296)) (<= 0 (+ main_~z~0 9)))} assume !(~z~0 % 4294967296 > 0); {10891#(and (<= (mod main_~z~0 4294967296) 0) (<= (div (+ main_~z~0 9 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ (- 9) main_~n~0 (* (- 1) main_~z~0)) 4294967296)) (<= 0 (+ main_~z~0 9)))} is VALID [2022-04-15 13:01:12,977 INFO L290 TraceCheckUtils]: 19: Hoare triple {10891#(and (<= (mod main_~z~0 4294967296) 0) (<= (div (+ main_~z~0 9 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ (- 9) main_~n~0 (* (- 1) main_~z~0)) 4294967296)) (<= 0 (+ main_~z~0 9)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10895#(and (<= 0 (+ main_~z~0 8)) (<= (mod (+ main_~z~0 4294967295) 4294967296) 0) (<= (div (+ main_~z~0 8 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 8)) 4294967296)))} is VALID [2022-04-15 13:01:12,984 INFO L290 TraceCheckUtils]: 20: Hoare triple {10895#(and (<= 0 (+ main_~z~0 8)) (<= (mod (+ main_~z~0 4294967295) 4294967296) 0) (<= (div (+ main_~z~0 8 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 8)) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10899#(and (<= 0 (+ 7 main_~z~0)) (<= (div (+ 7 main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (- 7) (* (- 1) main_~z~0)) 4294967296)) (<= (mod (+ main_~z~0 4294967294) 4294967296) 0))} is VALID [2022-04-15 13:01:12,993 INFO L290 TraceCheckUtils]: 21: Hoare triple {10899#(and (<= 0 (+ 7 main_~z~0)) (<= (div (+ 7 main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (- 7) (* (- 1) main_~z~0)) 4294967296)) (<= (mod (+ main_~z~0 4294967294) 4294967296) 0))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10903#(and (<= (div (+ main_~z~0 6 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 6)) 4294967296)) (<= (mod (+ main_~z~0 4294967293) 4294967296) 0) (<= 0 (+ main_~z~0 6)))} is VALID [2022-04-15 13:01:13,001 INFO L290 TraceCheckUtils]: 22: Hoare triple {10903#(and (<= (div (+ main_~z~0 6 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 6)) 4294967296)) (<= (mod (+ main_~z~0 4294967293) 4294967296) 0) (<= 0 (+ main_~z~0 6)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10907#(and (<= (div (+ 5 main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 5)) 4294967296)) (<= (mod (+ 4294967292 main_~z~0) 4294967296) 0) (<= 0 (+ 5 main_~z~0)))} is VALID [2022-04-15 13:01:13,011 INFO L290 TraceCheckUtils]: 23: Hoare triple {10907#(and (<= (div (+ 5 main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 5)) 4294967296)) (<= (mod (+ 4294967292 main_~z~0) 4294967296) 0) (<= 0 (+ 5 main_~z~0)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10911#(and (<= (mod (+ 4294967291 main_~z~0) 4294967296) 0) (<= (div (+ main_~z~0 4 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296)) (<= 0 (+ main_~z~0 4)))} is VALID [2022-04-15 13:01:13,020 INFO L290 TraceCheckUtils]: 24: Hoare triple {10911#(and (<= (mod (+ 4294967291 main_~z~0) 4294967296) 0) (<= (div (+ main_~z~0 4 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 4)) 4294967296)) (<= 0 (+ main_~z~0 4)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10915#(and (<= 0 (+ main_~z~0 3)) (<= (div (+ main_~z~0 3 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296)) (<= (mod (+ 4294967290 main_~z~0) 4294967296) 0))} is VALID [2022-04-15 13:01:13,029 INFO L290 TraceCheckUtils]: 25: Hoare triple {10915#(and (<= 0 (+ main_~z~0 3)) (<= (div (+ main_~z~0 3 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0) (- 3)) 4294967296)) (<= (mod (+ 4294967290 main_~z~0) 4294967296) 0))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10919#(and (<= 0 (+ main_~z~0 2)) (<= (mod (+ main_~z~0 4294967289) 4294967296) 0) (<= (div (+ main_~z~0 2 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} is VALID [2022-04-15 13:01:13,038 INFO L290 TraceCheckUtils]: 26: Hoare triple {10919#(and (<= 0 (+ main_~z~0 2)) (<= (mod (+ main_~z~0 4294967289) 4294967296) 0) (<= (div (+ main_~z~0 2 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ (- 2) main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10923#(and (<= 0 (+ main_~z~0 1)) (<= (mod (+ 4294967288 main_~z~0) 4294967296) 0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0) 1) (- 4294967296)) (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} is VALID [2022-04-15 13:01:13,048 INFO L290 TraceCheckUtils]: 27: Hoare triple {10923#(and (<= 0 (+ main_~z~0 1)) (<= (mod (+ 4294967288 main_~z~0) 4294967296) 0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0) 1) (- 4294967296)) (div (+ (- 1) main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10927#(and (<= (mod (+ main_~z~0 4294967287) 4294967296) 0) (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} is VALID [2022-04-15 13:01:13,049 INFO L290 TraceCheckUtils]: 28: Hoare triple {10927#(and (<= (mod (+ main_~z~0 4294967287) 4294967296) 0) (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} assume !(~y~0 % 4294967296 > 0); {10927#(and (<= (mod (+ main_~z~0 4294967287) 4294967296) 0) (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} is VALID [2022-04-15 13:01:13,054 INFO L272 TraceCheckUtils]: 29: Hoare triple {10927#(and (<= (mod (+ main_~z~0 4294967287) 4294967296) 0) (<= 0 main_~z~0) (<= (div (+ main_~z~0 (* (- 1) main_~n~0)) (- 4294967296)) (div (+ main_~n~0 (* (- 1) main_~z~0)) 4294967296)))} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {10934#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 13:01:13,055 INFO L290 TraceCheckUtils]: 30: Hoare triple {10934#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10938#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 13:01:13,055 INFO L290 TraceCheckUtils]: 31: Hoare triple {10938#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10792#false} is VALID [2022-04-15 13:01:13,055 INFO L290 TraceCheckUtils]: 32: Hoare triple {10792#false} assume !false; {10792#false} is VALID [2022-04-15 13:01:13,056 INFO L134 CoverageAnalysis]: Checked inductivity of 90 backedges. 0 proven. 90 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 13:01:13,056 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 13:01:34,331 INFO L290 TraceCheckUtils]: 32: Hoare triple {10792#false} assume !false; {10792#false} is VALID [2022-04-15 13:01:34,332 INFO L290 TraceCheckUtils]: 31: Hoare triple {10938#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10792#false} is VALID [2022-04-15 13:01:34,332 INFO L290 TraceCheckUtils]: 30: Hoare triple {10934#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10938#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 13:01:34,333 INFO L272 TraceCheckUtils]: 29: Hoare triple {10818#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} call __VERIFIER_assert((if ~z~0 % 4294967296 == ~n~0 % 4294967296 then 1 else 0)); {10934#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 13:01:34,334 INFO L290 TraceCheckUtils]: 28: Hoare triple {10818#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} assume !(~y~0 % 4294967296 > 0); {10818#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 13:01:34,337 INFO L290 TraceCheckUtils]: 27: Hoare triple {10960#(and (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296)) (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10818#(and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296))))} is VALID [2022-04-15 13:01:34,342 INFO L290 TraceCheckUtils]: 26: Hoare triple {10964#(and (< (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0) (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10960#(and (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296)) (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296))))} is VALID [2022-04-15 13:01:34,346 INFO L290 TraceCheckUtils]: 25: Hoare triple {10968#(and (< (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4)) (<= (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10964#(and (< (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0) (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0)))} is VALID [2022-04-15 13:01:34,351 INFO L290 TraceCheckUtils]: 24: Hoare triple {10972#(and (< (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0) (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4) (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10968#(and (< (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4)) (<= (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296))))} is VALID [2022-04-15 13:01:34,354 INFO L290 TraceCheckUtils]: 23: Hoare triple {10976#(and (<= (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296)) (+ main_~z~0 6 (* (div main_~n~0 4294967296) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10972#(and (< (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0) (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4) (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0)))} is VALID [2022-04-15 13:01:34,356 INFO L290 TraceCheckUtils]: 22: Hoare triple {10980#(and (< (+ (* (div (+ main_~z~0 6) 4294967296) 4294967296) main_~n~0) (+ 7 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 6 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 6) 4294967296) 4294967296) main_~n~0)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10976#(and (<= (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296)) (+ main_~z~0 6 (* (div main_~n~0 4294967296) 4294967296))))} is VALID [2022-04-15 13:01:34,359 INFO L290 TraceCheckUtils]: 21: Hoare triple {10984#(and (< (+ main_~n~0 (* (div (+ 7 main_~z~0) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 8)) (<= (+ 7 main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ 7 main_~z~0) 4294967296) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10980#(and (< (+ (* (div (+ main_~z~0 6) 4294967296) 4294967296) main_~n~0) (+ 7 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 6 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 6) 4294967296) 4294967296) main_~n~0)))} is VALID [2022-04-15 13:01:34,361 INFO L290 TraceCheckUtils]: 20: Hoare triple {10988#(and (< (+ main_~n~0 (* (div (+ main_~z~0 8) 4294967296) 4294967296)) (+ main_~z~0 9 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 8) (+ main_~n~0 (* (div (+ main_~z~0 8) 4294967296) 4294967296))))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10984#(and (< (+ main_~n~0 (* (div (+ 7 main_~z~0) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 8)) (<= (+ 7 main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ 7 main_~z~0) 4294967296) 4294967296))))} is VALID [2022-04-15 13:01:34,363 INFO L290 TraceCheckUtils]: 19: Hoare triple {10992#(and (<= (+ main_~z~0 9 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ main_~z~0 9) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 9) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 10)))} assume !!(~y~0 % 4294967296 > 0);#t~post9 := ~y~0;~y~0 := #t~post9 - 1;havoc #t~post9;#t~post10 := ~z~0;~z~0 := 1 + #t~post10;havoc #t~post10; {10988#(and (< (+ main_~n~0 (* (div (+ main_~z~0 8) 4294967296) 4294967296)) (+ main_~z~0 9 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 8) (+ main_~n~0 (* (div (+ main_~z~0 8) 4294967296) 4294967296))))} is VALID [2022-04-15 13:01:34,363 INFO L290 TraceCheckUtils]: 18: Hoare triple {10996#(or (< 0 (mod main_~z~0 4294967296)) (and (<= (+ main_~z~0 9 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ main_~z~0 9) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 9) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 10))))} assume !(~z~0 % 4294967296 > 0); {10992#(and (<= (+ main_~z~0 9 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ main_~z~0 9) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 9) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 10)))} is VALID [2022-04-15 13:01:34,367 INFO L290 TraceCheckUtils]: 17: Hoare triple {11000#(or (and (< (+ main_~n~0 (* (div (+ main_~z~0 8) 4294967296) 4294967296)) (+ main_~z~0 9 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 8) (+ main_~n~0 (* (div (+ main_~z~0 8) 4294967296) 4294967296)))) (< 0 (mod (+ main_~z~0 4294967295) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {10996#(or (< 0 (mod main_~z~0 4294967296)) (and (<= (+ main_~z~0 9 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ main_~z~0 9) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 9) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 10))))} is VALID [2022-04-15 13:01:34,376 INFO L290 TraceCheckUtils]: 16: Hoare triple {11004#(or (< 0 (mod (+ main_~z~0 4294967294) 4294967296)) (and (< (+ main_~n~0 (* (div (+ 7 main_~z~0) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 8)) (<= (+ 7 main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ 7 main_~z~0) 4294967296) 4294967296)))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {11000#(or (and (< (+ main_~n~0 (* (div (+ main_~z~0 8) 4294967296) 4294967296)) (+ main_~z~0 9 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 8) (+ main_~n~0 (* (div (+ main_~z~0 8) 4294967296) 4294967296)))) (< 0 (mod (+ main_~z~0 4294967295) 4294967296)))} is VALID [2022-04-15 13:01:34,388 INFO L290 TraceCheckUtils]: 15: Hoare triple {11008#(or (< 0 (mod (+ main_~z~0 4294967293) 4294967296)) (and (< (+ (* (div (+ main_~z~0 6) 4294967296) 4294967296) main_~n~0) (+ 7 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 6 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 6) 4294967296) 4294967296) main_~n~0))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {11004#(or (< 0 (mod (+ main_~z~0 4294967294) 4294967296)) (and (< (+ main_~n~0 (* (div (+ 7 main_~z~0) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 8)) (<= (+ 7 main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ 7 main_~z~0) 4294967296) 4294967296)))))} is VALID [2022-04-15 13:01:34,396 INFO L290 TraceCheckUtils]: 14: Hoare triple {11012#(or (< 0 (mod (+ 4294967292 main_~z~0) 4294967296)) (and (<= (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296)) (+ main_~z~0 6 (* (div main_~n~0 4294967296) 4294967296)))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {11008#(or (< 0 (mod (+ main_~z~0 4294967293) 4294967296)) (and (< (+ (* (div (+ main_~z~0 6) 4294967296) 4294967296) main_~n~0) (+ 7 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 6 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 6) 4294967296) 4294967296) main_~n~0))))} is VALID [2022-04-15 13:01:34,417 INFO L290 TraceCheckUtils]: 13: Hoare triple {11016#(or (and (< (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0) (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4) (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0))) (< 0 (mod (+ 4294967291 main_~z~0) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {11012#(or (< 0 (mod (+ 4294967292 main_~z~0) 4294967296)) (and (<= (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ 5 main_~z~0) 4294967296) 4294967296)) (+ main_~z~0 6 (* (div main_~n~0 4294967296) 4294967296)))))} is VALID [2022-04-15 13:01:34,423 INFO L290 TraceCheckUtils]: 12: Hoare triple {11020#(or (and (< (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4)) (<= (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)))) (< 0 (mod (+ 4294967290 main_~z~0) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {11016#(or (and (< (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0) (+ 5 main_~z~0 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4) (+ (* (div (+ main_~z~0 4) 4294967296) 4294967296) main_~n~0))) (< 0 (mod (+ 4294967291 main_~z~0) 4294967296)))} is VALID [2022-04-15 13:01:34,435 INFO L290 TraceCheckUtils]: 11: Hoare triple {11024#(or (< 0 (mod (+ main_~z~0 4294967289) 4294967296)) (and (< (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0) (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0))))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {11020#(or (and (< (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 4)) (<= (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div (+ main_~z~0 3) 4294967296) 4294967296)))) (< 0 (mod (+ 4294967290 main_~z~0) 4294967296)))} is VALID [2022-04-15 13:01:34,455 INFO L290 TraceCheckUtils]: 10: Hoare triple {11028#(or (and (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296)) (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)))) (< 0 (mod (+ 4294967288 main_~z~0) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {11024#(or (< 0 (mod (+ main_~z~0 4294967289) 4294967296)) (and (< (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0) (+ main_~z~0 3 (* (div main_~n~0 4294967296) 4294967296))) (<= (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div (+ main_~z~0 2) 4294967296) 4294967296) main_~n~0))))} is VALID [2022-04-15 13:01:34,463 INFO L290 TraceCheckUtils]: 9: Hoare triple {11032#(or (and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)))) (< 0 (mod (+ main_~z~0 4294967287) 4294967296)))} assume !!(~z~0 % 4294967296 > 0);#t~post7 := ~x~0;~x~0 := 1 + #t~post7;havoc #t~post7;#t~post8 := ~z~0;~z~0 := #t~post8 - 1;havoc #t~post8; {11028#(or (and (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1) (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296))) (< (+ main_~n~0 (* (div (+ main_~z~0 1) 4294967296) 4294967296)) (+ main_~z~0 2 (* (div main_~n~0 4294967296) 4294967296)))) (< 0 (mod (+ 4294967288 main_~z~0) 4294967296)))} is VALID [2022-04-15 13:01:34,466 INFO L290 TraceCheckUtils]: 8: Hoare triple {11036#(or (< 0 (mod (+ main_~y~0 4294967287) 4294967296)) (and (< (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0))))} ~z~0 := ~y~0; {11032#(or (and (< (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)) (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~z~0 (* (div main_~n~0 4294967296) 4294967296)) (+ main_~n~0 (* (div main_~z~0 4294967296) 4294967296)))) (< 0 (mod (+ main_~z~0 4294967287) 4294967296)))} is VALID [2022-04-15 13:01:34,468 INFO L290 TraceCheckUtils]: 7: Hoare triple {11040#(or (< 0 (mod (+ main_~y~0 4294967287) 4294967296)) (< 0 (mod main_~x~0 4294967296)) (and (< (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0))))} [116] L16-3_primed-->L16-3: Formula: (not (< 0 (mod v_main_~x~0_2 4294967296))) InVars {main_~x~0=v_main_~x~0_2} OutVars{main_~x~0=v_main_~x~0_2} AuxVars[] AssignedVars[] {11036#(or (< 0 (mod (+ main_~y~0 4294967287) 4294967296)) (and (< (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0))))} is VALID [2022-04-15 13:01:34,532 INFO L290 TraceCheckUtils]: 6: Hoare triple {11044#(and (or (< (div (+ (* (- 1) main_~x~0) (- 4294967288) (* (- 1) main_~y~0)) (- 4294967296)) (+ (div (+ main_~y~0 main_~x~0 4294967286) 4294967296) 2)) (<= (+ (div (+ (* (- 1) main_~x~0) (- 4294967288) (* (- 1) main_~y~0)) (- 4294967296)) (div main_~n~0 4294967296) (div (+ main_~n~0 4294967287) (- 4294967296))) (+ (div (+ main_~y~0 main_~x~0 (- 4294967296)) 4294967296) 2))) (or (< (div (+ (* (- 1) main_~x~0) (- 4294967288) (* (- 1) main_~y~0)) (- 4294967296)) (+ (div (+ main_~y~0 main_~x~0 4294967286) 4294967296) 2)) (<= (div (+ (- 1) (* (- 1) main_~x~0) (* (- 1) main_~y~0)) (- 4294967296)) (+ (div main_~n~0 4294967296) (div (+ main_~y~0 main_~x~0 (- 4294967296)) 4294967296) 3 (div (+ (- 4294967287) (* (- 1) main_~n~0)) 4294967296)))))} [117] L16-2-->L16-3_primed: Formula: (or (and (< 0 (mod (+ v_main_~x~0_Out_54 1) 4294967296)) (<= v_main_~x~0_Out_54 v_main_~x~0_In_27) (= |v_main_#t~post5_Out_54| 0) (= (+ v_main_~y~0_Out_54 v_main_~x~0_Out_54) (+ v_main_~x~0_In_27 v_main_~y~0_In_27)) (= |v_main_#t~post6_Out_54| 0)) (and (= v_main_~y~0_In_27 v_main_~y~0_Out_54) (= v_main_~x~0_In_27 v_main_~x~0_Out_54))) InVars {main_~x~0=v_main_~x~0_In_27, main_~y~0=v_main_~y~0_In_27} OutVars{main_~y~0=v_main_~y~0_Out_54, main_#t~post5=|v_main_#t~post5_Out_54|, main_~x~0=v_main_~x~0_Out_54, main_#t~post6=|v_main_#t~post6_Out_54|} AuxVars[] AssignedVars[main_~x~0, main_~y~0, main_#t~post5, main_#t~post6] {11040#(or (< 0 (mod (+ main_~y~0 4294967287) 4294967296)) (< 0 (mod main_~x~0 4294967296)) (and (< (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0) (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296) 1)) (<= (+ main_~y~0 (* (div main_~n~0 4294967296) 4294967296)) (+ (* (div main_~y~0 4294967296) 4294967296) main_~n~0))))} is VALID [2022-04-15 13:01:34,549 INFO L290 TraceCheckUtils]: 5: Hoare triple {10791#true} ~n~0 := #t~nondet4;havoc #t~nondet4;~x~0 := ~n~0;~y~0 := 0;havoc ~z~0; {11044#(and (or (< (div (+ (* (- 1) main_~x~0) (- 4294967288) (* (- 1) main_~y~0)) (- 4294967296)) (+ (div (+ main_~y~0 main_~x~0 4294967286) 4294967296) 2)) (<= (+ (div (+ (* (- 1) main_~x~0) (- 4294967288) (* (- 1) main_~y~0)) (- 4294967296)) (div main_~n~0 4294967296) (div (+ main_~n~0 4294967287) (- 4294967296))) (+ (div (+ main_~y~0 main_~x~0 (- 4294967296)) 4294967296) 2))) (or (< (div (+ (* (- 1) main_~x~0) (- 4294967288) (* (- 1) main_~y~0)) (- 4294967296)) (+ (div (+ main_~y~0 main_~x~0 4294967286) 4294967296) 2)) (<= (div (+ (- 1) (* (- 1) main_~x~0) (* (- 1) main_~y~0)) (- 4294967296)) (+ (div main_~n~0 4294967296) (div (+ main_~y~0 main_~x~0 (- 4294967296)) 4294967296) 3 (div (+ (- 4294967287) (* (- 1) main_~n~0)) 4294967296)))))} is VALID [2022-04-15 13:01:34,550 INFO L272 TraceCheckUtils]: 4: Hoare triple {10791#true} call #t~ret11 := main(); {10791#true} is VALID [2022-04-15 13:01:34,550 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10791#true} {10791#true} #61#return; {10791#true} is VALID [2022-04-15 13:01:34,550 INFO L290 TraceCheckUtils]: 2: Hoare triple {10791#true} assume true; {10791#true} is VALID [2022-04-15 13:01:34,550 INFO L290 TraceCheckUtils]: 1: Hoare triple {10791#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(10, 2);call #Ultimate.allocInit(12, 3); {10791#true} is VALID [2022-04-15 13:01:34,550 INFO L272 TraceCheckUtils]: 0: Hoare triple {10791#true} call ULTIMATE.init(); {10791#true} is VALID [2022-04-15 13:01:34,550 INFO L134 CoverageAnalysis]: Checked inductivity of 90 backedges. 0 proven. 90 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 13:01:34,551 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [774492409] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 13:01:34,551 INFO L184 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2022-04-15 13:01:34,551 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [28, 27, 27] total 74 [2022-04-15 13:01:57,726 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 13:01:57,726 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1359308180] [2022-04-15 13:01:57,726 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1359308180] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 13:01:57,726 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 13:01:57,726 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [35] imperfect sequences [] total 35 [2022-04-15 13:01:57,726 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1624901497] [2022-04-15 13:01:57,726 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 13:01:57,727 INFO L78 Accepts]: Start accepts. Automaton has has 35 states, 35 states have (on average 1.0285714285714285) internal successors, (36), 33 states have internal predecessors, (36), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) Word has length 40 [2022-04-15 13:01:57,727 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 13:01:57,727 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 35 states, 35 states have (on average 1.0285714285714285) internal successors, (36), 33 states have internal predecessors, (36), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1) [2022-04-15 13:01:58,205 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 13:01:58,205 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 35 states [2022-04-15 13:01:58,205 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 13:01:58,205 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 35 interpolants. [2022-04-15 13:01:58,206 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=599, Invalid=6206, Unknown=1, NotChecked=0, Total=6806 [2022-04-15 13:01:58,206 INFO L87 Difference]: Start difference. First operand 41 states and 43 transitions. Second operand has 35 states, 35 states have (on average 1.0285714285714285) internal successors, (36), 33 states have internal predecessors, (36), 2 states have call successors, (3), 3 states have call predecessors, (3), 1 states have return successors, (1), 1 states have call predecessors, (1), 1 states have call successors, (1)