/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerC.xml -s ../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/hard-ll_unwindbound5.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-e106359-m [2022-04-15 09:18:07,752 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-15 09:18:07,754 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-15 09:18:07,787 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-15 09:18:07,787 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-15 09:18:07,788 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-15 09:18:07,790 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-15 09:18:07,792 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-15 09:18:07,793 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-15 09:18:07,796 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-15 09:18:07,796 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-15 09:18:07,797 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-15 09:18:07,798 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-15 09:18:07,799 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-15 09:18:07,800 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-15 09:18:07,802 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-15 09:18:07,802 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-15 09:18:07,802 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-15 09:18:07,804 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-15 09:18:07,808 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-15 09:18:07,809 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-15 09:18:07,810 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-15 09:18:07,810 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-15 09:18:07,811 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-15 09:18:07,811 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-15 09:18:07,814 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-15 09:18:07,815 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-15 09:18:07,815 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-15 09:18:07,815 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-15 09:18:07,815 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-15 09:18:07,817 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-15 09:18:07,817 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-15 09:18:07,818 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-15 09:18:07,818 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-15 09:18:07,819 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-15 09:18:07,819 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-15 09:18:07,819 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-15 09:18:07,820 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-15 09:18:07,820 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-15 09:18:07,820 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-15 09:18:07,820 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-15 09:18:07,821 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-15 09:18:07,822 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf [2022-04-15 09:18:07,829 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-15 09:18:07,829 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-15 09:18:07,830 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-15 09:18:07,830 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-15 09:18:07,830 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-15 09:18:07,830 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-15 09:18:07,830 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-15 09:18:07,830 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-15 09:18:07,831 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-15 09:18:07,831 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-15 09:18:07,831 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-15 09:18:07,831 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-15 09:18:07,831 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-15 09:18:07,831 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-15 09:18:07,832 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-15 09:18:07,832 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-15 09:18:07,832 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-15 09:18:07,832 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-15 09:18:07,832 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 09:18:07,832 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-15 09:18:07,832 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-15 09:18:07,832 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-15 09:18:07,832 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-15 09:18:07,832 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-15 09:18:07,832 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-15 09:18:07,832 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 09:18:07,993 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-15 09:18:08,009 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-15 09:18:08,010 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-15 09:18:08,011 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-15 09:18:08,012 INFO L275 PluginConnector]: CDTParser initialized [2022-04-15 09:18:08,012 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/hard-ll_unwindbound5.c [2022-04-15 09:18:08,067 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/223f55312/adb5d430df804597ac825ead2bd584e8/FLAGbc04e2682 [2022-04-15 09:18:08,473 INFO L306 CDTParser]: Found 1 translation units. [2022-04-15 09:18:08,473 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/hard-ll_unwindbound5.c [2022-04-15 09:18:08,476 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/223f55312/adb5d430df804597ac825ead2bd584e8/FLAGbc04e2682 [2022-04-15 09:18:08,486 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/223f55312/adb5d430df804597ac825ead2bd584e8 [2022-04-15 09:18:08,488 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-15 09:18:08,488 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-15 09:18:08,489 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-15 09:18:08,489 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-15 09:18:08,491 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-15 09:18:08,492 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 09:18:08" (1/1) ... [2022-04-15 09:18:08,493 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@361e5795 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 09:18:08, skipping insertion in model container [2022-04-15 09:18:08,493 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 09:18:08" (1/1) ... [2022-04-15 09:18:08,496 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-15 09:18:08,505 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-15 09:18:08,611 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/hard-ll_unwindbound5.c[538,551] [2022-04-15 09:18:08,625 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 09:18:08,630 INFO L203 MainTranslator]: Completed pre-run [2022-04-15 09:18:08,637 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/hard-ll_unwindbound5.c[538,551] [2022-04-15 09:18:08,647 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 09:18:08,660 INFO L208 MainTranslator]: Completed translation [2022-04-15 09:18:08,660 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 09:18:08 WrapperNode [2022-04-15 09:18:08,660 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-15 09:18:08,662 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-15 09:18:08,662 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-15 09:18:08,662 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-15 09:18:08,669 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 09:18:08" (1/1) ... [2022-04-15 09:18:08,669 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 09:18:08" (1/1) ... [2022-04-15 09:18:08,676 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 09:18:08" (1/1) ... [2022-04-15 09:18:08,677 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 09:18:08" (1/1) ... [2022-04-15 09:18:08,691 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 09:18:08" (1/1) ... [2022-04-15 09:18:08,696 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 09:18:08" (1/1) ... [2022-04-15 09:18:08,700 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 09:18:08" (1/1) ... [2022-04-15 09:18:08,701 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-15 09:18:08,702 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-15 09:18:08,702 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-15 09:18:08,702 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-15 09:18:08,704 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 09:18:08" (1/1) ... [2022-04-15 09:18:08,708 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 09:18:08,715 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:18:08,724 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 09:18:08,731 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 09:18:08,753 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-15 09:18:08,753 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-15 09:18:08,753 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-15 09:18:08,754 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-15 09:18:08,754 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-15 09:18:08,754 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-15 09:18:08,754 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-15 09:18:08,754 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-15 09:18:08,754 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-15 09:18:08,754 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-15 09:18:08,754 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_uint [2022-04-15 09:18:08,754 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-15 09:18:08,754 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-15 09:18:08,754 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-15 09:18:08,754 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-15 09:18:08,754 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-15 09:18:08,755 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-15 09:18:08,755 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-15 09:18:08,755 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-15 09:18:08,755 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-15 09:18:08,793 INFO L234 CfgBuilder]: Building ICFG [2022-04-15 09:18:08,794 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-15 09:18:08,953 INFO L275 CfgBuilder]: Performing block encoding [2022-04-15 09:18:08,957 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-15 09:18:08,957 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-15 09:18:08,958 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 09:18:08 BoogieIcfgContainer [2022-04-15 09:18:08,959 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-15 09:18:08,960 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-15 09:18:08,960 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-15 09:18:08,976 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-15 09:18:08,977 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 15.04 09:18:08" (1/3) ... [2022-04-15 09:18:08,977 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@20a2c4a3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 09:18:08, skipping insertion in model container [2022-04-15 09:18:08,977 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 09:18:08" (2/3) ... [2022-04-15 09:18:08,977 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@20a2c4a3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 09:18:08, skipping insertion in model container [2022-04-15 09:18:08,977 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 09:18:08" (3/3) ... [2022-04-15 09:18:08,978 INFO L111 eAbstractionObserver]: Analyzing ICFG hard-ll_unwindbound5.c [2022-04-15 09:18:08,981 INFO L202 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-15 09:18:08,981 INFO L161 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-15 09:18:09,008 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-15 09:18:09,012 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 09:18:09,012 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-15 09:18:09,026 INFO L276 IsEmpty]: Start isEmpty. Operand has 37 states, 21 states have (on average 1.4761904761904763) internal successors, (31), 22 states have internal predecessors, (31), 10 states have call successors, (10), 4 states have call predecessors, (10), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2022-04-15 09:18:09,030 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-15 09:18:09,031 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:18:09,031 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:18:09,031 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:18:09,034 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:18:09,035 INFO L85 PathProgramCache]: Analyzing trace with hash 1191571617, now seen corresponding path program 1 times [2022-04-15 09:18:09,039 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:18:09,040 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1043578482] [2022-04-15 09:18:09,046 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 09:18:09,047 INFO L85 PathProgramCache]: Analyzing trace with hash 1191571617, now seen corresponding path program 2 times [2022-04-15 09:18:09,049 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:18:09,049 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1138736054] [2022-04-15 09:18:09,049 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:18:09,049 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:18:09,107 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:18:09,151 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 09:18:09,154 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:18:09,164 INFO L290 TraceCheckUtils]: 0: Hoare triple {49#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {40#true} is VALID [2022-04-15 09:18:09,164 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume true; {40#true} is VALID [2022-04-15 09:18:09,165 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {40#true} {40#true} #96#return; {40#true} is VALID [2022-04-15 09:18:09,165 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-15 09:18:09,167 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:18:09,171 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-15 09:18:09,171 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-15 09:18:09,171 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-15 09:18:09,172 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {40#true} #80#return; {41#false} is VALID [2022-04-15 09:18:09,172 INFO L272 TraceCheckUtils]: 0: Hoare triple {40#true} call ULTIMATE.init(); {49#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 09:18:09,173 INFO L290 TraceCheckUtils]: 1: Hoare triple {49#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {40#true} is VALID [2022-04-15 09:18:09,173 INFO L290 TraceCheckUtils]: 2: Hoare triple {40#true} assume true; {40#true} is VALID [2022-04-15 09:18:09,173 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40#true} {40#true} #96#return; {40#true} is VALID [2022-04-15 09:18:09,173 INFO L272 TraceCheckUtils]: 4: Hoare triple {40#true} call #t~ret8 := main(); {40#true} is VALID [2022-04-15 09:18:09,173 INFO L290 TraceCheckUtils]: 5: Hoare triple {40#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {40#true} is VALID [2022-04-15 09:18:09,173 INFO L272 TraceCheckUtils]: 6: Hoare triple {40#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {40#true} is VALID [2022-04-15 09:18:09,173 INFO L290 TraceCheckUtils]: 7: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-15 09:18:09,174 INFO L290 TraceCheckUtils]: 8: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-15 09:18:09,174 INFO L290 TraceCheckUtils]: 9: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-15 09:18:09,174 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {41#false} {40#true} #80#return; {41#false} is VALID [2022-04-15 09:18:09,174 INFO L290 TraceCheckUtils]: 11: Hoare triple {41#false} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {41#false} is VALID [2022-04-15 09:18:09,174 INFO L290 TraceCheckUtils]: 12: Hoare triple {41#false} assume !true; {41#false} is VALID [2022-04-15 09:18:09,175 INFO L290 TraceCheckUtils]: 13: Hoare triple {41#false} assume !true; {41#false} is VALID [2022-04-15 09:18:09,175 INFO L272 TraceCheckUtils]: 14: Hoare triple {41#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {41#false} is VALID [2022-04-15 09:18:09,175 INFO L290 TraceCheckUtils]: 15: Hoare triple {41#false} ~cond := #in~cond; {41#false} is VALID [2022-04-15 09:18:09,175 INFO L290 TraceCheckUtils]: 16: Hoare triple {41#false} assume 0 == ~cond; {41#false} is VALID [2022-04-15 09:18:09,175 INFO L290 TraceCheckUtils]: 17: Hoare triple {41#false} assume !false; {41#false} is VALID [2022-04-15 09:18:09,175 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 09:18:09,176 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:18:09,176 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1138736054] [2022-04-15 09:18:09,176 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1138736054] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:18:09,177 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:18:09,177 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-15 09:18:09,178 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:18:09,178 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1043578482] [2022-04-15 09:18:09,179 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1043578482] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:18:09,179 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:18:09,179 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-15 09:18:09,179 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [882761893] [2022-04-15 09:18:09,179 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:18:09,182 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-15 09:18:09,183 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:18:09,185 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 09:18:09,205 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 09:18:09,205 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-15 09:18:09,205 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:18:09,218 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-15 09:18:09,218 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-15 09:18:09,220 INFO L87 Difference]: Start difference. First operand has 37 states, 21 states have (on average 1.4761904761904763) internal successors, (31), 22 states have internal predecessors, (31), 10 states have call successors, (10), 4 states have call predecessors, (10), 4 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) Second operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 09:18:09,364 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:09,365 INFO L93 Difference]: Finished difference Result 66 states and 101 transitions. [2022-04-15 09:18:09,365 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-15 09:18:09,365 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-15 09:18:09,365 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:18:09,366 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 09:18:09,377 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 101 transitions. [2022-04-15 09:18:09,377 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 09:18:09,384 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 101 transitions. [2022-04-15 09:18:09,384 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 101 transitions. [2022-04-15 09:18:09,490 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 101 edges. 101 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:18:09,501 INFO L225 Difference]: With dead ends: 66 [2022-04-15 09:18:09,501 INFO L226 Difference]: Without dead ends: 33 [2022-04-15 09:18:09,504 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-15 09:18:09,508 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 24 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 49 SdHoareTripleChecker+Invalid, 33 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 24 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 09:18:09,509 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [11 Valid, 49 Invalid, 33 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 24 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 09:18:09,538 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 33 states. [2022-04-15 09:18:09,564 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 33 to 32. [2022-04-15 09:18:09,565 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:18:09,566 INFO L82 GeneralOperation]: Start isEquivalent. First operand 33 states. Second operand has 32 states, 18 states have (on average 1.3333333333333333) internal successors, (24), 19 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 09:18:09,567 INFO L74 IsIncluded]: Start isIncluded. First operand 33 states. Second operand has 32 states, 18 states have (on average 1.3333333333333333) internal successors, (24), 19 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 09:18:09,568 INFO L87 Difference]: Start difference. First operand 33 states. Second operand has 32 states, 18 states have (on average 1.3333333333333333) internal successors, (24), 19 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 09:18:09,575 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:09,576 INFO L93 Difference]: Finished difference Result 33 states and 43 transitions. [2022-04-15 09:18:09,576 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 43 transitions. [2022-04-15 09:18:09,576 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:18:09,576 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:18:09,577 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 18 states have (on average 1.3333333333333333) internal successors, (24), 19 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 33 states. [2022-04-15 09:18:09,577 INFO L87 Difference]: Start difference. First operand has 32 states, 18 states have (on average 1.3333333333333333) internal successors, (24), 19 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 33 states. [2022-04-15 09:18:09,580 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:09,580 INFO L93 Difference]: Finished difference Result 33 states and 43 transitions. [2022-04-15 09:18:09,580 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 43 transitions. [2022-04-15 09:18:09,580 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:18:09,580 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:18:09,581 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:18:09,581 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:18:09,581 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 18 states have (on average 1.3333333333333333) internal successors, (24), 19 states have internal predecessors, (24), 10 states have call successors, (10), 4 states have call predecessors, (10), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 09:18:09,583 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 42 transitions. [2022-04-15 09:18:09,584 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 42 transitions. Word has length 18 [2022-04-15 09:18:09,584 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:18:09,584 INFO L478 AbstractCegarLoop]: Abstraction has 32 states and 42 transitions. [2022-04-15 09:18:09,584 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 4.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 09:18:09,585 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 32 states and 42 transitions. [2022-04-15 09:18:09,634 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 09:18:09,635 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 42 transitions. [2022-04-15 09:18:09,635 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-15 09:18:09,635 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:18:09,635 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:18:09,636 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-15 09:18:09,636 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:18:09,637 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:18:09,637 INFO L85 PathProgramCache]: Analyzing trace with hash 336486197, now seen corresponding path program 1 times [2022-04-15 09:18:09,637 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:18:09,638 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1692656915] [2022-04-15 09:18:09,641 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 09:18:09,642 INFO L85 PathProgramCache]: Analyzing trace with hash 336486197, now seen corresponding path program 2 times [2022-04-15 09:18:09,642 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:18:09,642 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1738340970] [2022-04-15 09:18:09,642 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:18:09,643 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:18:09,679 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:18:09,744 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 09:18:09,746 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:18:09,756 INFO L290 TraceCheckUtils]: 0: Hoare triple {326#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {314#true} is VALID [2022-04-15 09:18:09,756 INFO L290 TraceCheckUtils]: 1: Hoare triple {314#true} assume true; {314#true} is VALID [2022-04-15 09:18:09,757 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {314#true} {314#true} #96#return; {314#true} is VALID [2022-04-15 09:18:09,757 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-15 09:18:09,758 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:18:09,764 INFO L290 TraceCheckUtils]: 0: Hoare triple {314#true} ~cond := #in~cond; {314#true} is VALID [2022-04-15 09:18:09,764 INFO L290 TraceCheckUtils]: 1: Hoare triple {314#true} assume !(0 == ~cond); {314#true} is VALID [2022-04-15 09:18:09,764 INFO L290 TraceCheckUtils]: 2: Hoare triple {314#true} assume true; {314#true} is VALID [2022-04-15 09:18:09,764 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {314#true} {314#true} #80#return; {314#true} is VALID [2022-04-15 09:18:09,765 INFO L272 TraceCheckUtils]: 0: Hoare triple {314#true} call ULTIMATE.init(); {326#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 09:18:09,765 INFO L290 TraceCheckUtils]: 1: Hoare triple {326#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {314#true} is VALID [2022-04-15 09:18:09,765 INFO L290 TraceCheckUtils]: 2: Hoare triple {314#true} assume true; {314#true} is VALID [2022-04-15 09:18:09,765 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {314#true} {314#true} #96#return; {314#true} is VALID [2022-04-15 09:18:09,766 INFO L272 TraceCheckUtils]: 4: Hoare triple {314#true} call #t~ret8 := main(); {314#true} is VALID [2022-04-15 09:18:09,766 INFO L290 TraceCheckUtils]: 5: Hoare triple {314#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {314#true} is VALID [2022-04-15 09:18:09,766 INFO L272 TraceCheckUtils]: 6: Hoare triple {314#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {314#true} is VALID [2022-04-15 09:18:09,766 INFO L290 TraceCheckUtils]: 7: Hoare triple {314#true} ~cond := #in~cond; {314#true} is VALID [2022-04-15 09:18:09,766 INFO L290 TraceCheckUtils]: 8: Hoare triple {314#true} assume !(0 == ~cond); {314#true} is VALID [2022-04-15 09:18:09,766 INFO L290 TraceCheckUtils]: 9: Hoare triple {314#true} assume true; {314#true} is VALID [2022-04-15 09:18:09,766 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {314#true} {314#true} #80#return; {314#true} is VALID [2022-04-15 09:18:09,768 INFO L290 TraceCheckUtils]: 11: Hoare triple {314#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {323#(= main_~q~0 0)} is VALID [2022-04-15 09:18:09,768 INFO L290 TraceCheckUtils]: 12: Hoare triple {323#(= main_~q~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {323#(= main_~q~0 0)} is VALID [2022-04-15 09:18:09,768 INFO L290 TraceCheckUtils]: 13: Hoare triple {323#(= main_~q~0 0)} assume !!(#t~post6 < 5);havoc #t~post6; {323#(= main_~q~0 0)} is VALID [2022-04-15 09:18:09,769 INFO L272 TraceCheckUtils]: 14: Hoare triple {323#(= main_~q~0 0)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {324#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:18:09,770 INFO L290 TraceCheckUtils]: 15: Hoare triple {324#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {325#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 09:18:09,775 INFO L290 TraceCheckUtils]: 16: Hoare triple {325#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {315#false} is VALID [2022-04-15 09:18:09,775 INFO L290 TraceCheckUtils]: 17: Hoare triple {315#false} assume !false; {315#false} is VALID [2022-04-15 09:18:09,775 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 09:18:09,776 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:18:09,776 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1738340970] [2022-04-15 09:18:09,776 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1738340970] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:18:09,776 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:18:09,776 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 09:18:09,776 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:18:09,777 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1692656915] [2022-04-15 09:18:09,777 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1692656915] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:18:09,777 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:18:09,777 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 09:18:09,777 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1815069087] [2022-04-15 09:18:09,777 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:18:09,778 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.0) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-15 09:18:09,779 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:18:09,779 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), 4 states have internal predecessors, (12), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 09:18:09,792 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 09:18:09,792 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 09:18:09,792 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:18:09,793 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 09:18:09,793 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-15 09:18:09,793 INFO L87 Difference]: Start difference. First operand 32 states and 42 transitions. Second operand has 6 states, 6 states have (on average 2.0) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 09:18:10,093 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:10,093 INFO L93 Difference]: Finished difference Result 47 states and 62 transitions. [2022-04-15 09:18:10,093 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-15 09:18:10,093 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.0) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-15 09:18:10,093 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:18:10,094 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.0) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 09:18:10,104 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 62 transitions. [2022-04-15 09:18:10,105 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.0) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 09:18:10,108 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 62 transitions. [2022-04-15 09:18:10,108 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 62 transitions. [2022-04-15 09:18:10,164 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 09:18:10,167 INFO L225 Difference]: With dead ends: 47 [2022-04-15 09:18:10,167 INFO L226 Difference]: Without dead ends: 45 [2022-04-15 09:18:10,167 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 13 GetRequests, 5 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 5 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=28, Invalid=62, Unknown=0, NotChecked=0, Total=90 [2022-04-15 09:18:10,168 INFO L913 BasicCegarLoop]: 39 mSDtfsCounter, 28 mSDsluCounter, 51 mSDsCounter, 0 mSdLazyCounter, 99 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 35 SdHoareTripleChecker+Valid, 90 SdHoareTripleChecker+Invalid, 113 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 99 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 09:18:10,169 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [35 Valid, 90 Invalid, 113 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 99 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 09:18:10,170 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 45 states. [2022-04-15 09:18:10,179 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 45 to 36. [2022-04-15 09:18:10,179 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:18:10,181 INFO L82 GeneralOperation]: Start isEquivalent. First operand 45 states. Second operand has 36 states, 21 states have (on average 1.2857142857142858) internal successors, (27), 22 states have internal predecessors, (27), 10 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 09:18:10,181 INFO L74 IsIncluded]: Start isIncluded. First operand 45 states. Second operand has 36 states, 21 states have (on average 1.2857142857142858) internal successors, (27), 22 states have internal predecessors, (27), 10 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 09:18:10,183 INFO L87 Difference]: Start difference. First operand 45 states. Second operand has 36 states, 21 states have (on average 1.2857142857142858) internal successors, (27), 22 states have internal predecessors, (27), 10 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 09:18:10,185 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:10,185 INFO L93 Difference]: Finished difference Result 45 states and 60 transitions. [2022-04-15 09:18:10,186 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 60 transitions. [2022-04-15 09:18:10,186 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:18:10,186 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:18:10,187 INFO L74 IsIncluded]: Start isIncluded. First operand has 36 states, 21 states have (on average 1.2857142857142858) internal successors, (27), 22 states have internal predecessors, (27), 10 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 45 states. [2022-04-15 09:18:10,187 INFO L87 Difference]: Start difference. First operand has 36 states, 21 states have (on average 1.2857142857142858) internal successors, (27), 22 states have internal predecessors, (27), 10 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 45 states. [2022-04-15 09:18:10,189 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:10,189 INFO L93 Difference]: Finished difference Result 45 states and 60 transitions. [2022-04-15 09:18:10,189 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 60 transitions. [2022-04-15 09:18:10,190 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:18:10,190 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:18:10,190 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:18:10,190 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:18:10,190 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 36 states, 21 states have (on average 1.2857142857142858) internal successors, (27), 22 states have internal predecessors, (27), 10 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 09:18:10,192 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 45 transitions. [2022-04-15 09:18:10,192 INFO L78 Accepts]: Start accepts. Automaton has 36 states and 45 transitions. Word has length 18 [2022-04-15 09:18:10,192 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:18:10,192 INFO L478 AbstractCegarLoop]: Abstraction has 36 states and 45 transitions. [2022-04-15 09:18:10,192 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 2.0) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 09:18:10,192 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 36 states and 45 transitions. [2022-04-15 09:18:10,226 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 09:18:10,226 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 45 transitions. [2022-04-15 09:18:10,229 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 21 [2022-04-15 09:18:10,229 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:18:10,229 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:18:10,229 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-04-15 09:18:10,229 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:18:10,229 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:18:10,229 INFO L85 PathProgramCache]: Analyzing trace with hash -1819267188, now seen corresponding path program 1 times [2022-04-15 09:18:10,230 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:18:10,230 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [680246691] [2022-04-15 09:18:10,230 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 09:18:10,230 INFO L85 PathProgramCache]: Analyzing trace with hash -1819267188, now seen corresponding path program 2 times [2022-04-15 09:18:10,230 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:18:10,230 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1897946250] [2022-04-15 09:18:10,230 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:18:10,231 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:18:10,242 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:18:10,242 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1087556927] [2022-04-15 09:18:10,242 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 09:18:10,242 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:18:10,243 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:18:10,244 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 09:18:10,251 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 09:18:10,292 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-15 09:18:10,292 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:18:10,293 INFO L263 TraceCheckSpWp]: Trace formula consists of 87 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-15 09:18:10,309 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:18:10,312 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:18:10,463 INFO L272 TraceCheckUtils]: 0: Hoare triple {593#true} call ULTIMATE.init(); {593#true} is VALID [2022-04-15 09:18:10,464 INFO L290 TraceCheckUtils]: 1: Hoare triple {593#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);~counter~0 := 0; {601#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:10,464 INFO L290 TraceCheckUtils]: 2: Hoare triple {601#(<= ~counter~0 0)} assume true; {601#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:10,464 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {601#(<= ~counter~0 0)} {593#true} #96#return; {601#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:10,465 INFO L272 TraceCheckUtils]: 4: Hoare triple {601#(<= ~counter~0 0)} call #t~ret8 := main(); {601#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:10,465 INFO L290 TraceCheckUtils]: 5: Hoare triple {601#(<= ~counter~0 0)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {601#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:10,466 INFO L272 TraceCheckUtils]: 6: Hoare triple {601#(<= ~counter~0 0)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {601#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:10,466 INFO L290 TraceCheckUtils]: 7: Hoare triple {601#(<= ~counter~0 0)} ~cond := #in~cond; {601#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:10,466 INFO L290 TraceCheckUtils]: 8: Hoare triple {601#(<= ~counter~0 0)} assume !(0 == ~cond); {601#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:10,467 INFO L290 TraceCheckUtils]: 9: Hoare triple {601#(<= ~counter~0 0)} assume true; {601#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:10,467 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {601#(<= ~counter~0 0)} {601#(<= ~counter~0 0)} #80#return; {601#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:10,467 INFO L290 TraceCheckUtils]: 11: Hoare triple {601#(<= ~counter~0 0)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {601#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:10,468 INFO L290 TraceCheckUtils]: 12: Hoare triple {601#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {635#(<= |main_#t~post6| 0)} is VALID [2022-04-15 09:18:10,468 INFO L290 TraceCheckUtils]: 13: Hoare triple {635#(<= |main_#t~post6| 0)} assume !(#t~post6 < 5);havoc #t~post6; {594#false} is VALID [2022-04-15 09:18:10,468 INFO L290 TraceCheckUtils]: 14: Hoare triple {594#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {594#false} is VALID [2022-04-15 09:18:10,468 INFO L290 TraceCheckUtils]: 15: Hoare triple {594#false} assume !(#t~post7 < 5);havoc #t~post7; {594#false} is VALID [2022-04-15 09:18:10,469 INFO L272 TraceCheckUtils]: 16: Hoare triple {594#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {594#false} is VALID [2022-04-15 09:18:10,469 INFO L290 TraceCheckUtils]: 17: Hoare triple {594#false} ~cond := #in~cond; {594#false} is VALID [2022-04-15 09:18:10,469 INFO L290 TraceCheckUtils]: 18: Hoare triple {594#false} assume 0 == ~cond; {594#false} is VALID [2022-04-15 09:18:10,469 INFO L290 TraceCheckUtils]: 19: Hoare triple {594#false} assume !false; {594#false} is VALID [2022-04-15 09:18:10,469 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 09:18:10,469 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 09:18:10,469 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:18:10,469 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1897946250] [2022-04-15 09:18:10,470 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:18:10,470 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1087556927] [2022-04-15 09:18:10,470 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1087556927] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:18:10,470 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:18:10,470 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-15 09:18:10,470 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:18:10,470 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [680246691] [2022-04-15 09:18:10,471 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [680246691] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:18:10,471 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:18:10,471 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-15 09:18:10,471 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1779755546] [2022-04-15 09:18:10,471 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:18:10,471 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.5) internal successors, (14), 3 states have internal predecessors, (14), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 20 [2022-04-15 09:18:10,471 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:18:10,472 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 3.5) internal successors, (14), 3 states have internal predecessors, (14), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-15 09:18:10,482 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 09:18:10,482 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-15 09:18:10,482 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:18:10,483 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-15 09:18:10,483 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-15 09:18:10,483 INFO L87 Difference]: Start difference. First operand 36 states and 45 transitions. Second operand has 4 states, 4 states have (on average 3.5) internal successors, (14), 3 states have internal predecessors, (14), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-15 09:18:10,559 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:10,559 INFO L93 Difference]: Finished difference Result 52 states and 67 transitions. [2022-04-15 09:18:10,559 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-15 09:18:10,560 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.5) internal successors, (14), 3 states have internal predecessors, (14), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 20 [2022-04-15 09:18:10,561 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:18:10,561 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.5) internal successors, (14), 3 states have internal predecessors, (14), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-15 09:18:10,563 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 64 transitions. [2022-04-15 09:18:10,563 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.5) internal successors, (14), 3 states have internal predecessors, (14), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-15 09:18:10,571 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 64 transitions. [2022-04-15 09:18:10,571 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 64 transitions. [2022-04-15 09:18:10,610 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:18:10,614 INFO L225 Difference]: With dead ends: 52 [2022-04-15 09:18:10,614 INFO L226 Difference]: Without dead ends: 38 [2022-04-15 09:18:10,615 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 19 GetRequests, 17 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-15 09:18:10,619 INFO L913 BasicCegarLoop]: 40 mSDtfsCounter, 0 mSDsluCounter, 67 mSDsCounter, 0 mSdLazyCounter, 8 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 107 SdHoareTripleChecker+Invalid, 8 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 8 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 09:18:10,623 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 107 Invalid, 8 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 8 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 09:18:10,624 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 38 states. [2022-04-15 09:18:10,640 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 38 to 38. [2022-04-15 09:18:10,640 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:18:10,641 INFO L82 GeneralOperation]: Start isEquivalent. First operand 38 states. Second operand has 38 states, 23 states have (on average 1.2608695652173914) internal successors, (29), 24 states have internal predecessors, (29), 10 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 09:18:10,642 INFO L74 IsIncluded]: Start isIncluded. First operand 38 states. Second operand has 38 states, 23 states have (on average 1.2608695652173914) internal successors, (29), 24 states have internal predecessors, (29), 10 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 09:18:10,642 INFO L87 Difference]: Start difference. First operand 38 states. Second operand has 38 states, 23 states have (on average 1.2608695652173914) internal successors, (29), 24 states have internal predecessors, (29), 10 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 09:18:10,644 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:10,644 INFO L93 Difference]: Finished difference Result 38 states and 47 transitions. [2022-04-15 09:18:10,644 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 47 transitions. [2022-04-15 09:18:10,645 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:18:10,645 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:18:10,646 INFO L74 IsIncluded]: Start isIncluded. First operand has 38 states, 23 states have (on average 1.2608695652173914) internal successors, (29), 24 states have internal predecessors, (29), 10 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 38 states. [2022-04-15 09:18:10,647 INFO L87 Difference]: Start difference. First operand has 38 states, 23 states have (on average 1.2608695652173914) internal successors, (29), 24 states have internal predecessors, (29), 10 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 38 states. [2022-04-15 09:18:10,649 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:10,650 INFO L93 Difference]: Finished difference Result 38 states and 47 transitions. [2022-04-15 09:18:10,650 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 47 transitions. [2022-04-15 09:18:10,653 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:18:10,653 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:18:10,653 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:18:10,653 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:18:10,654 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 38 states, 23 states have (on average 1.2608695652173914) internal successors, (29), 24 states have internal predecessors, (29), 10 states have call successors, (10), 5 states have call predecessors, (10), 4 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 09:18:10,656 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 47 transitions. [2022-04-15 09:18:10,656 INFO L78 Accepts]: Start accepts. Automaton has 38 states and 47 transitions. Word has length 20 [2022-04-15 09:18:10,656 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:18:10,656 INFO L478 AbstractCegarLoop]: Abstraction has 38 states and 47 transitions. [2022-04-15 09:18:10,657 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.5) internal successors, (14), 3 states have internal predecessors, (14), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-15 09:18:10,657 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 38 states and 47 transitions. [2022-04-15 09:18:10,692 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:18:10,692 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 47 transitions. [2022-04-15 09:18:10,693 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-15 09:18:10,693 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:18:10,694 INFO L499 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:18:10,712 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-04-15 09:18:10,899 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:18:10,899 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:18:10,900 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:18:10,900 INFO L85 PathProgramCache]: Analyzing trace with hash -784889968, now seen corresponding path program 1 times [2022-04-15 09:18:10,900 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:18:10,900 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [349213805] [2022-04-15 09:18:10,900 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 09:18:10,900 INFO L85 PathProgramCache]: Analyzing trace with hash -784889968, now seen corresponding path program 2 times [2022-04-15 09:18:10,901 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:18:10,901 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1503497739] [2022-04-15 09:18:10,901 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:18:10,901 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:18:10,913 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:18:10,951 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 09:18:10,953 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:18:10,961 INFO L290 TraceCheckUtils]: 0: Hoare triple {928#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {912#true} is VALID [2022-04-15 09:18:10,961 INFO L290 TraceCheckUtils]: 1: Hoare triple {912#true} assume true; {912#true} is VALID [2022-04-15 09:18:10,961 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {912#true} {912#true} #96#return; {912#true} is VALID [2022-04-15 09:18:10,962 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-15 09:18:10,964 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:18:10,973 INFO L290 TraceCheckUtils]: 0: Hoare triple {912#true} ~cond := #in~cond; {912#true} is VALID [2022-04-15 09:18:10,973 INFO L290 TraceCheckUtils]: 1: Hoare triple {912#true} assume !(0 == ~cond); {912#true} is VALID [2022-04-15 09:18:10,973 INFO L290 TraceCheckUtils]: 2: Hoare triple {912#true} assume true; {912#true} is VALID [2022-04-15 09:18:10,973 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {912#true} {912#true} #80#return; {912#true} is VALID [2022-04-15 09:18:10,973 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 14 [2022-04-15 09:18:10,975 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:18:10,984 INFO L290 TraceCheckUtils]: 0: Hoare triple {912#true} ~cond := #in~cond; {912#true} is VALID [2022-04-15 09:18:10,984 INFO L290 TraceCheckUtils]: 1: Hoare triple {912#true} assume !(0 == ~cond); {912#true} is VALID [2022-04-15 09:18:10,984 INFO L290 TraceCheckUtils]: 2: Hoare triple {912#true} assume true; {912#true} is VALID [2022-04-15 09:18:10,985 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {912#true} {921#(= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296)))} #82#return; {921#(= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296)))} is VALID [2022-04-15 09:18:10,985 INFO L272 TraceCheckUtils]: 0: Hoare triple {912#true} call ULTIMATE.init(); {928#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 09:18:10,985 INFO L290 TraceCheckUtils]: 1: Hoare triple {928#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(10, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {912#true} is VALID [2022-04-15 09:18:10,986 INFO L290 TraceCheckUtils]: 2: Hoare triple {912#true} assume true; {912#true} is VALID [2022-04-15 09:18:10,986 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {912#true} {912#true} #96#return; {912#true} is VALID [2022-04-15 09:18:10,986 INFO L272 TraceCheckUtils]: 4: Hoare triple {912#true} call #t~ret8 := main(); {912#true} is VALID [2022-04-15 09:18:10,986 INFO L290 TraceCheckUtils]: 5: Hoare triple {912#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {912#true} is VALID [2022-04-15 09:18:10,986 INFO L272 TraceCheckUtils]: 6: Hoare triple {912#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {912#true} is VALID [2022-04-15 09:18:10,986 INFO L290 TraceCheckUtils]: 7: Hoare triple {912#true} ~cond := #in~cond; {912#true} is VALID [2022-04-15 09:18:10,986 INFO L290 TraceCheckUtils]: 8: Hoare triple {912#true} assume !(0 == ~cond); {912#true} is VALID [2022-04-15 09:18:10,986 INFO L290 TraceCheckUtils]: 9: Hoare triple {912#true} assume true; {912#true} is VALID [2022-04-15 09:18:10,986 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {912#true} {912#true} #80#return; {912#true} is VALID [2022-04-15 09:18:10,989 INFO L290 TraceCheckUtils]: 11: Hoare triple {912#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {921#(= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296)))} is VALID [2022-04-15 09:18:10,989 INFO L290 TraceCheckUtils]: 12: Hoare triple {921#(= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {921#(= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296)))} is VALID [2022-04-15 09:18:10,989 INFO L290 TraceCheckUtils]: 13: Hoare triple {921#(= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296)))} assume !!(#t~post6 < 5);havoc #t~post6; {921#(= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296)))} is VALID [2022-04-15 09:18:10,990 INFO L272 TraceCheckUtils]: 14: Hoare triple {921#(= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296)))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {912#true} is VALID [2022-04-15 09:18:10,990 INFO L290 TraceCheckUtils]: 15: Hoare triple {912#true} ~cond := #in~cond; {912#true} is VALID [2022-04-15 09:18:10,990 INFO L290 TraceCheckUtils]: 16: Hoare triple {912#true} assume !(0 == ~cond); {912#true} is VALID [2022-04-15 09:18:10,990 INFO L290 TraceCheckUtils]: 17: Hoare triple {912#true} assume true; {912#true} is VALID [2022-04-15 09:18:10,990 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {912#true} {921#(= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296)))} #82#return; {921#(= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296)))} is VALID [2022-04-15 09:18:10,991 INFO L272 TraceCheckUtils]: 19: Hoare triple {921#(= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296)))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {926#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:18:10,993 INFO L290 TraceCheckUtils]: 20: Hoare triple {926#(not (= |__VERIFIER_assert_#in~cond| 0))} ~cond := #in~cond; {927#(not (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 09:18:10,993 INFO L290 TraceCheckUtils]: 21: Hoare triple {927#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {913#false} is VALID [2022-04-15 09:18:10,993 INFO L290 TraceCheckUtils]: 22: Hoare triple {913#false} assume !false; {913#false} is VALID [2022-04-15 09:18:10,993 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 09:18:10,994 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:18:10,994 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1503497739] [2022-04-15 09:18:10,994 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1503497739] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:18:10,994 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:18:10,994 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 09:18:10,994 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:18:10,994 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [349213805] [2022-04-15 09:18:10,994 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [349213805] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:18:10,994 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:18:10,994 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 09:18:10,994 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2122308770] [2022-04-15 09:18:10,994 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:18:10,995 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.5) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-15 09:18:10,995 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:18:10,995 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 2.5) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 09:18:11,009 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 09:18:11,009 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 09:18:11,010 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:18:11,010 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 09:18:11,010 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-15 09:18:11,010 INFO L87 Difference]: Start difference. First operand 38 states and 47 transitions. Second operand has 6 states, 6 states have (on average 2.5) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 09:18:11,327 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:11,327 INFO L93 Difference]: Finished difference Result 52 states and 66 transitions. [2022-04-15 09:18:11,327 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-15 09:18:11,328 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 2.5) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 23 [2022-04-15 09:18:11,328 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:18:11,328 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.5) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 09:18:11,329 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 62 transitions. [2022-04-15 09:18:11,330 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 2.5) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 09:18:11,332 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 62 transitions. [2022-04-15 09:18:11,332 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 62 transitions. [2022-04-15 09:18:11,389 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 09:18:11,391 INFO L225 Difference]: With dead ends: 52 [2022-04-15 09:18:11,392 INFO L226 Difference]: Without dead ends: 50 [2022-04-15 09:18:11,392 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 15 GetRequests, 7 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=28, Invalid=62, Unknown=0, NotChecked=0, Total=90 [2022-04-15 09:18:11,395 INFO L913 BasicCegarLoop]: 39 mSDtfsCounter, 23 mSDsluCounter, 44 mSDsCounter, 0 mSdLazyCounter, 112 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 29 SdHoareTripleChecker+Valid, 83 SdHoareTripleChecker+Invalid, 126 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 14 IncrementalHoareTripleChecker+Valid, 112 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 09:18:11,396 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [29 Valid, 83 Invalid, 126 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [14 Valid, 112 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 09:18:11,396 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2022-04-15 09:18:11,412 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 42. [2022-04-15 09:18:11,412 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:18:11,413 INFO L82 GeneralOperation]: Start isEquivalent. First operand 50 states. Second operand has 42 states, 26 states have (on average 1.2307692307692308) internal successors, (32), 27 states have internal predecessors, (32), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 09:18:11,413 INFO L74 IsIncluded]: Start isIncluded. First operand 50 states. Second operand has 42 states, 26 states have (on average 1.2307692307692308) internal successors, (32), 27 states have internal predecessors, (32), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 09:18:11,413 INFO L87 Difference]: Start difference. First operand 50 states. Second operand has 42 states, 26 states have (on average 1.2307692307692308) internal successors, (32), 27 states have internal predecessors, (32), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 09:18:11,416 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:11,416 INFO L93 Difference]: Finished difference Result 50 states and 64 transitions. [2022-04-15 09:18:11,416 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 64 transitions. [2022-04-15 09:18:11,417 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:18:11,417 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:18:11,418 INFO L74 IsIncluded]: Start isIncluded. First operand has 42 states, 26 states have (on average 1.2307692307692308) internal successors, (32), 27 states have internal predecessors, (32), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 50 states. [2022-04-15 09:18:11,418 INFO L87 Difference]: Start difference. First operand has 42 states, 26 states have (on average 1.2307692307692308) internal successors, (32), 27 states have internal predecessors, (32), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 50 states. [2022-04-15 09:18:11,422 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:11,422 INFO L93 Difference]: Finished difference Result 50 states and 64 transitions. [2022-04-15 09:18:11,422 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 64 transitions. [2022-04-15 09:18:11,422 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:18:11,422 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:18:11,422 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:18:11,422 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:18:11,423 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 42 states, 26 states have (on average 1.2307692307692308) internal successors, (32), 27 states have internal predecessors, (32), 10 states have call successors, (10), 6 states have call predecessors, (10), 5 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 09:18:11,424 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 42 states to 42 states and 50 transitions. [2022-04-15 09:18:11,424 INFO L78 Accepts]: Start accepts. Automaton has 42 states and 50 transitions. Word has length 23 [2022-04-15 09:18:11,424 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:18:11,424 INFO L478 AbstractCegarLoop]: Abstraction has 42 states and 50 transitions. [2022-04-15 09:18:11,424 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 2.5) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (5), 3 states have call predecessors, (5), 1 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 09:18:11,424 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 42 states and 50 transitions. [2022-04-15 09:18:11,472 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 09:18:11,472 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 50 transitions. [2022-04-15 09:18:11,472 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-15 09:18:11,473 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:18:11,473 INFO L499 BasicCegarLoop]: trace histogram [3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:18:11,473 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-04-15 09:18:11,473 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:18:11,473 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:18:11,474 INFO L85 PathProgramCache]: Analyzing trace with hash -1024624683, now seen corresponding path program 1 times [2022-04-15 09:18:11,474 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:18:11,474 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2039101761] [2022-04-15 09:18:11,475 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 09:18:11,475 INFO L85 PathProgramCache]: Analyzing trace with hash -1024624683, now seen corresponding path program 2 times [2022-04-15 09:18:11,475 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:18:11,475 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [748361189] [2022-04-15 09:18:11,475 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:18:11,475 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:18:11,499 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:18:11,499 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [588517755] [2022-04-15 09:18:11,499 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 09:18:11,505 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:18:11,505 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:18:11,508 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 09:18:11,509 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 09:18:11,546 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 09:18:11,546 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:18:11,547 INFO L263 TraceCheckSpWp]: Trace formula consists of 100 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-15 09:18:11,553 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:18:11,555 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:18:11,682 INFO L272 TraceCheckUtils]: 0: Hoare triple {1227#true} call ULTIMATE.init(); {1227#true} is VALID [2022-04-15 09:18:11,683 INFO L290 TraceCheckUtils]: 1: Hoare triple {1227#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);~counter~0 := 0; {1227#true} is VALID [2022-04-15 09:18:11,683 INFO L290 TraceCheckUtils]: 2: Hoare triple {1227#true} assume true; {1227#true} is VALID [2022-04-15 09:18:11,683 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1227#true} {1227#true} #96#return; {1227#true} is VALID [2022-04-15 09:18:11,683 INFO L272 TraceCheckUtils]: 4: Hoare triple {1227#true} call #t~ret8 := main(); {1227#true} is VALID [2022-04-15 09:18:11,683 INFO L290 TraceCheckUtils]: 5: Hoare triple {1227#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {1227#true} is VALID [2022-04-15 09:18:11,683 INFO L272 TraceCheckUtils]: 6: Hoare triple {1227#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {1227#true} is VALID [2022-04-15 09:18:11,684 INFO L290 TraceCheckUtils]: 7: Hoare triple {1227#true} ~cond := #in~cond; {1227#true} is VALID [2022-04-15 09:18:11,684 INFO L290 TraceCheckUtils]: 8: Hoare triple {1227#true} assume !(0 == ~cond); {1227#true} is VALID [2022-04-15 09:18:11,684 INFO L290 TraceCheckUtils]: 9: Hoare triple {1227#true} assume true; {1227#true} is VALID [2022-04-15 09:18:11,685 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1227#true} {1227#true} #80#return; {1227#true} is VALID [2022-04-15 09:18:11,685 INFO L290 TraceCheckUtils]: 11: Hoare triple {1227#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {1265#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:18:11,686 INFO L290 TraceCheckUtils]: 12: Hoare triple {1265#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1265#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:18:11,687 INFO L290 TraceCheckUtils]: 13: Hoare triple {1265#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} assume !!(#t~post6 < 5);havoc #t~post6; {1265#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:18:11,688 INFO L272 TraceCheckUtils]: 14: Hoare triple {1265#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {1227#true} is VALID [2022-04-15 09:18:11,695 INFO L290 TraceCheckUtils]: 15: Hoare triple {1227#true} ~cond := #in~cond; {1227#true} is VALID [2022-04-15 09:18:11,696 INFO L290 TraceCheckUtils]: 16: Hoare triple {1227#true} assume !(0 == ~cond); {1227#true} is VALID [2022-04-15 09:18:11,696 INFO L290 TraceCheckUtils]: 17: Hoare triple {1227#true} assume true; {1227#true} is VALID [2022-04-15 09:18:11,697 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1227#true} {1265#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #82#return; {1265#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:18:11,697 INFO L272 TraceCheckUtils]: 19: Hoare triple {1265#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {1227#true} is VALID [2022-04-15 09:18:11,697 INFO L290 TraceCheckUtils]: 20: Hoare triple {1227#true} ~cond := #in~cond; {1227#true} is VALID [2022-04-15 09:18:11,697 INFO L290 TraceCheckUtils]: 21: Hoare triple {1227#true} assume !(0 == ~cond); {1227#true} is VALID [2022-04-15 09:18:11,698 INFO L290 TraceCheckUtils]: 22: Hoare triple {1227#true} assume true; {1227#true} is VALID [2022-04-15 09:18:11,698 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1227#true} {1265#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #84#return; {1265#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:18:11,699 INFO L272 TraceCheckUtils]: 24: Hoare triple {1265#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {1305#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:18:11,699 INFO L290 TraceCheckUtils]: 25: Hoare triple {1305#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1309#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:18:11,700 INFO L290 TraceCheckUtils]: 26: Hoare triple {1309#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1228#false} is VALID [2022-04-15 09:18:11,700 INFO L290 TraceCheckUtils]: 27: Hoare triple {1228#false} assume !false; {1228#false} is VALID [2022-04-15 09:18:11,700 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 09:18:11,700 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 09:18:11,700 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:18:11,701 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [748361189] [2022-04-15 09:18:11,701 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:18:11,701 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [588517755] [2022-04-15 09:18:11,701 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [588517755] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:18:11,701 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:18:11,701 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 09:18:11,701 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:18:11,701 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2039101761] [2022-04-15 09:18:11,701 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2039101761] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:18:11,701 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:18:11,701 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 09:18:11,701 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1238896820] [2022-04-15 09:18:11,701 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:18:11,703 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-15 09:18:11,703 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:18:11,703 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-15 09:18:11,719 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 09:18:11,719 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 09:18:11,720 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:18:11,720 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 09:18:11,720 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-15 09:18:11,720 INFO L87 Difference]: Start difference. First operand 42 states and 50 transitions. Second operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-15 09:18:11,900 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:11,900 INFO L93 Difference]: Finished difference Result 71 states and 93 transitions. [2022-04-15 09:18:11,900 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 09:18:11,900 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) Word has length 28 [2022-04-15 09:18:11,902 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:18:11,902 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-15 09:18:11,903 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 87 transitions. [2022-04-15 09:18:11,903 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-15 09:18:11,905 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 87 transitions. [2022-04-15 09:18:11,905 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 87 transitions. [2022-04-15 09:18:11,972 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 87 edges. 87 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:18:11,973 INFO L225 Difference]: With dead ends: 71 [2022-04-15 09:18:11,974 INFO L226 Difference]: Without dead ends: 56 [2022-04-15 09:18:11,974 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 28 GetRequests, 24 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-15 09:18:11,975 INFO L913 BasicCegarLoop]: 44 mSDtfsCounter, 10 mSDsluCounter, 99 mSDsCounter, 0 mSdLazyCounter, 48 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 143 SdHoareTripleChecker+Invalid, 51 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 48 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 09:18:11,975 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 143 Invalid, 51 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 48 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 09:18:11,976 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 56 states. [2022-04-15 09:18:11,995 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 56 to 56. [2022-04-15 09:18:11,996 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:18:11,996 INFO L82 GeneralOperation]: Start isEquivalent. First operand 56 states. Second operand has 56 states, 33 states have (on average 1.2424242424242424) internal successors, (41), 35 states have internal predecessors, (41), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-15 09:18:11,996 INFO L74 IsIncluded]: Start isIncluded. First operand 56 states. Second operand has 56 states, 33 states have (on average 1.2424242424242424) internal successors, (41), 35 states have internal predecessors, (41), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-15 09:18:11,996 INFO L87 Difference]: Start difference. First operand 56 states. Second operand has 56 states, 33 states have (on average 1.2424242424242424) internal successors, (41), 35 states have internal predecessors, (41), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-15 09:18:11,998 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:11,998 INFO L93 Difference]: Finished difference Result 56 states and 70 transitions. [2022-04-15 09:18:11,999 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 70 transitions. [2022-04-15 09:18:11,999 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:18:11,999 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:18:11,999 INFO L74 IsIncluded]: Start isIncluded. First operand has 56 states, 33 states have (on average 1.2424242424242424) internal successors, (41), 35 states have internal predecessors, (41), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 56 states. [2022-04-15 09:18:12,000 INFO L87 Difference]: Start difference. First operand has 56 states, 33 states have (on average 1.2424242424242424) internal successors, (41), 35 states have internal predecessors, (41), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 56 states. [2022-04-15 09:18:12,001 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:12,001 INFO L93 Difference]: Finished difference Result 56 states and 70 transitions. [2022-04-15 09:18:12,001 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 70 transitions. [2022-04-15 09:18:12,002 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:18:12,002 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:18:12,002 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:18:12,002 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:18:12,002 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 56 states, 33 states have (on average 1.2424242424242424) internal successors, (41), 35 states have internal predecessors, (41), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-15 09:18:12,004 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 70 transitions. [2022-04-15 09:18:12,004 INFO L78 Accepts]: Start accepts. Automaton has 56 states and 70 transitions. Word has length 28 [2022-04-15 09:18:12,004 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:18:12,005 INFO L478 AbstractCegarLoop]: Abstraction has 56 states and 70 transitions. [2022-04-15 09:18:12,005 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.0) internal successors, (15), 4 states have internal predecessors, (15), 2 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (4), 2 states have call predecessors, (4), 2 states have call successors, (4) [2022-04-15 09:18:12,005 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 56 states and 70 transitions. [2022-04-15 09:18:12,060 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 70 edges. 70 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:18:12,061 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 70 transitions. [2022-04-15 09:18:12,061 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-15 09:18:12,061 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:18:12,061 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:18:12,080 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-04-15 09:18:12,263 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 09:18:12,263 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:18:12,264 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:18:12,264 INFO L85 PathProgramCache]: Analyzing trace with hash 1301357193, now seen corresponding path program 1 times [2022-04-15 09:18:12,264 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:18:12,264 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [845337886] [2022-04-15 09:18:12,264 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 09:18:12,264 INFO L85 PathProgramCache]: Analyzing trace with hash 1301357193, now seen corresponding path program 2 times [2022-04-15 09:18:12,264 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:18:12,264 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [18134736] [2022-04-15 09:18:12,265 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:18:12,265 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:18:12,274 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:18:12,274 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2131528128] [2022-04-15 09:18:12,274 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 09:18:12,274 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:18:12,274 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:18:12,275 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 09:18:12,276 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 09:18:12,332 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 09:18:12,332 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:18:12,333 INFO L263 TraceCheckSpWp]: Trace formula consists of 115 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-15 09:18:12,341 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:18:12,342 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:18:12,474 INFO L272 TraceCheckUtils]: 0: Hoare triple {1683#true} call ULTIMATE.init(); {1683#true} is VALID [2022-04-15 09:18:12,475 INFO L290 TraceCheckUtils]: 1: Hoare triple {1683#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);~counter~0 := 0; {1691#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:12,475 INFO L290 TraceCheckUtils]: 2: Hoare triple {1691#(<= ~counter~0 0)} assume true; {1691#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:12,475 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1691#(<= ~counter~0 0)} {1683#true} #96#return; {1691#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:12,476 INFO L272 TraceCheckUtils]: 4: Hoare triple {1691#(<= ~counter~0 0)} call #t~ret8 := main(); {1691#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:12,476 INFO L290 TraceCheckUtils]: 5: Hoare triple {1691#(<= ~counter~0 0)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {1691#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:12,476 INFO L272 TraceCheckUtils]: 6: Hoare triple {1691#(<= ~counter~0 0)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {1691#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:12,477 INFO L290 TraceCheckUtils]: 7: Hoare triple {1691#(<= ~counter~0 0)} ~cond := #in~cond; {1691#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:12,477 INFO L290 TraceCheckUtils]: 8: Hoare triple {1691#(<= ~counter~0 0)} assume !(0 == ~cond); {1691#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:12,477 INFO L290 TraceCheckUtils]: 9: Hoare triple {1691#(<= ~counter~0 0)} assume true; {1691#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:12,477 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1691#(<= ~counter~0 0)} {1691#(<= ~counter~0 0)} #80#return; {1691#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:12,478 INFO L290 TraceCheckUtils]: 11: Hoare triple {1691#(<= ~counter~0 0)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {1691#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:12,478 INFO L290 TraceCheckUtils]: 12: Hoare triple {1691#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:12,478 INFO L290 TraceCheckUtils]: 13: Hoare triple {1725#(<= ~counter~0 1)} assume !!(#t~post6 < 5);havoc #t~post6; {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:12,479 INFO L272 TraceCheckUtils]: 14: Hoare triple {1725#(<= ~counter~0 1)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:12,479 INFO L290 TraceCheckUtils]: 15: Hoare triple {1725#(<= ~counter~0 1)} ~cond := #in~cond; {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:12,479 INFO L290 TraceCheckUtils]: 16: Hoare triple {1725#(<= ~counter~0 1)} assume !(0 == ~cond); {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:12,480 INFO L290 TraceCheckUtils]: 17: Hoare triple {1725#(<= ~counter~0 1)} assume true; {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:12,480 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1725#(<= ~counter~0 1)} {1725#(<= ~counter~0 1)} #82#return; {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:12,480 INFO L272 TraceCheckUtils]: 19: Hoare triple {1725#(<= ~counter~0 1)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:12,481 INFO L290 TraceCheckUtils]: 20: Hoare triple {1725#(<= ~counter~0 1)} ~cond := #in~cond; {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:12,481 INFO L290 TraceCheckUtils]: 21: Hoare triple {1725#(<= ~counter~0 1)} assume !(0 == ~cond); {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:12,481 INFO L290 TraceCheckUtils]: 22: Hoare triple {1725#(<= ~counter~0 1)} assume true; {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:12,481 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1725#(<= ~counter~0 1)} {1725#(<= ~counter~0 1)} #84#return; {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:12,482 INFO L272 TraceCheckUtils]: 24: Hoare triple {1725#(<= ~counter~0 1)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:12,482 INFO L290 TraceCheckUtils]: 25: Hoare triple {1725#(<= ~counter~0 1)} ~cond := #in~cond; {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:12,482 INFO L290 TraceCheckUtils]: 26: Hoare triple {1725#(<= ~counter~0 1)} assume !(0 == ~cond); {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:12,483 INFO L290 TraceCheckUtils]: 27: Hoare triple {1725#(<= ~counter~0 1)} assume true; {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:12,483 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1725#(<= ~counter~0 1)} {1725#(<= ~counter~0 1)} #86#return; {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:12,483 INFO L290 TraceCheckUtils]: 29: Hoare triple {1725#(<= ~counter~0 1)} assume !(~r~0 >= ~d~0); {1725#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:12,484 INFO L290 TraceCheckUtils]: 30: Hoare triple {1725#(<= ~counter~0 1)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {1780#(<= |main_#t~post7| 1)} is VALID [2022-04-15 09:18:12,484 INFO L290 TraceCheckUtils]: 31: Hoare triple {1780#(<= |main_#t~post7| 1)} assume !(#t~post7 < 5);havoc #t~post7; {1684#false} is VALID [2022-04-15 09:18:12,484 INFO L272 TraceCheckUtils]: 32: Hoare triple {1684#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {1684#false} is VALID [2022-04-15 09:18:12,484 INFO L290 TraceCheckUtils]: 33: Hoare triple {1684#false} ~cond := #in~cond; {1684#false} is VALID [2022-04-15 09:18:12,484 INFO L290 TraceCheckUtils]: 34: Hoare triple {1684#false} assume 0 == ~cond; {1684#false} is VALID [2022-04-15 09:18:12,484 INFO L290 TraceCheckUtils]: 35: Hoare triple {1684#false} assume !false; {1684#false} is VALID [2022-04-15 09:18:12,485 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-15 09:18:12,485 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 09:18:12,485 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:18:12,485 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [18134736] [2022-04-15 09:18:12,485 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:18:12,485 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2131528128] [2022-04-15 09:18:12,485 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2131528128] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:18:12,485 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:18:12,485 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 09:18:12,485 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:18:12,485 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [845337886] [2022-04-15 09:18:12,485 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [845337886] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:18:12,485 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:18:12,485 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 09:18:12,486 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1313951185] [2022-04-15 09:18:12,486 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:18:12,487 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 4 states have call successors, (7), 4 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) Word has length 36 [2022-04-15 09:18:12,488 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:18:12,488 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 4 states have call successors, (7), 4 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-15 09:18:12,508 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 09:18:12,508 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 09:18:12,508 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:18:12,508 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 09:18:12,508 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-15 09:18:12,508 INFO L87 Difference]: Start difference. First operand 56 states and 70 transitions. Second operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 4 states have call successors, (7), 4 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-15 09:18:12,604 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:12,604 INFO L93 Difference]: Finished difference Result 76 states and 86 transitions. [2022-04-15 09:18:12,604 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 09:18:12,604 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 4 states have call successors, (7), 4 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) Word has length 36 [2022-04-15 09:18:12,605 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:18:12,605 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 4 states have call successors, (7), 4 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-15 09:18:12,606 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-15 09:18:12,606 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 4 states have call successors, (7), 4 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-15 09:18:12,607 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-15 09:18:12,607 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-15 09:18:12,642 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:18:12,644 INFO L225 Difference]: With dead ends: 76 [2022-04-15 09:18:12,644 INFO L226 Difference]: Without dead ends: 69 [2022-04-15 09:18:12,644 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 35 GetRequests, 32 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-15 09:18:12,645 INFO L913 BasicCegarLoop]: 42 mSDtfsCounter, 7 mSDsluCounter, 75 mSDsCounter, 0 mSdLazyCounter, 17 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 7 SdHoareTripleChecker+Valid, 117 SdHoareTripleChecker+Invalid, 22 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 17 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 09:18:12,645 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [7 Valid, 117 Invalid, 22 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 17 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 09:18:12,646 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 69 states. [2022-04-15 09:18:12,676 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 69 to 68. [2022-04-15 09:18:12,676 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:18:12,676 INFO L82 GeneralOperation]: Start isEquivalent. First operand 69 states. Second operand has 68 states, 42 states have (on average 1.1666666666666667) internal successors, (49), 44 states have internal predecessors, (49), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-15 09:18:12,677 INFO L74 IsIncluded]: Start isIncluded. First operand 69 states. Second operand has 68 states, 42 states have (on average 1.1666666666666667) internal successors, (49), 44 states have internal predecessors, (49), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-15 09:18:12,677 INFO L87 Difference]: Start difference. First operand 69 states. Second operand has 68 states, 42 states have (on average 1.1666666666666667) internal successors, (49), 44 states have internal predecessors, (49), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-15 09:18:12,679 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:12,679 INFO L93 Difference]: Finished difference Result 69 states and 79 transitions. [2022-04-15 09:18:12,679 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 79 transitions. [2022-04-15 09:18:12,680 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:18:12,680 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:18:12,680 INFO L74 IsIncluded]: Start isIncluded. First operand has 68 states, 42 states have (on average 1.1666666666666667) internal successors, (49), 44 states have internal predecessors, (49), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 69 states. [2022-04-15 09:18:12,680 INFO L87 Difference]: Start difference. First operand has 68 states, 42 states have (on average 1.1666666666666667) internal successors, (49), 44 states have internal predecessors, (49), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) Second operand 69 states. [2022-04-15 09:18:12,682 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:12,682 INFO L93 Difference]: Finished difference Result 69 states and 79 transitions. [2022-04-15 09:18:12,682 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 79 transitions. [2022-04-15 09:18:12,682 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:18:12,682 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:18:12,683 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:18:12,683 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:18:12,683 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 68 states, 42 states have (on average 1.1666666666666667) internal successors, (49), 44 states have internal predecessors, (49), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (13), 13 states have call predecessors, (13), 13 states have call successors, (13) [2022-04-15 09:18:12,684 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 78 transitions. [2022-04-15 09:18:12,684 INFO L78 Accepts]: Start accepts. Automaton has 68 states and 78 transitions. Word has length 36 [2022-04-15 09:18:12,684 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:18:12,684 INFO L478 AbstractCegarLoop]: Abstraction has 68 states and 78 transitions. [2022-04-15 09:18:12,685 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 4 states have call successors, (7), 4 states have call predecessors, (7), 2 states have return successors, (5), 2 states have call predecessors, (5), 3 states have call successors, (5) [2022-04-15 09:18:12,685 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 68 states and 78 transitions. [2022-04-15 09:18:12,754 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 78 edges. 78 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:18:12,754 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 78 transitions. [2022-04-15 09:18:12,754 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-15 09:18:12,754 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:18:12,754 INFO L499 BasicCegarLoop]: trace histogram [4, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:18:12,775 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 09:18:12,956 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 09:18:12,956 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:18:12,956 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:18:12,957 INFO L85 PathProgramCache]: Analyzing trace with hash 1303085071, now seen corresponding path program 1 times [2022-04-15 09:18:12,957 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:18:12,957 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1359613174] [2022-04-15 09:18:12,957 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 09:18:12,957 INFO L85 PathProgramCache]: Analyzing trace with hash 1303085071, now seen corresponding path program 2 times [2022-04-15 09:18:12,957 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:18:12,957 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1108023520] [2022-04-15 09:18:12,957 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:18:12,957 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:18:12,977 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:18:12,977 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [977987926] [2022-04-15 09:18:12,977 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 09:18:12,977 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:18:12,977 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:18:12,983 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 09:18:12,985 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 09:18:13,020 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 09:18:13,020 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:18:13,021 INFO L263 TraceCheckSpWp]: Trace formula consists of 115 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-15 09:18:13,035 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:18:13,036 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:18:13,194 INFO L272 TraceCheckUtils]: 0: Hoare triple {2221#true} call ULTIMATE.init(); {2221#true} is VALID [2022-04-15 09:18:13,194 INFO L290 TraceCheckUtils]: 1: Hoare triple {2221#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);~counter~0 := 0; {2221#true} is VALID [2022-04-15 09:18:13,194 INFO L290 TraceCheckUtils]: 2: Hoare triple {2221#true} assume true; {2221#true} is VALID [2022-04-15 09:18:13,195 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2221#true} {2221#true} #96#return; {2221#true} is VALID [2022-04-15 09:18:13,195 INFO L272 TraceCheckUtils]: 4: Hoare triple {2221#true} call #t~ret8 := main(); {2221#true} is VALID [2022-04-15 09:18:13,195 INFO L290 TraceCheckUtils]: 5: Hoare triple {2221#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {2221#true} is VALID [2022-04-15 09:18:13,195 INFO L272 TraceCheckUtils]: 6: Hoare triple {2221#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {2221#true} is VALID [2022-04-15 09:18:13,195 INFO L290 TraceCheckUtils]: 7: Hoare triple {2221#true} ~cond := #in~cond; {2221#true} is VALID [2022-04-15 09:18:13,195 INFO L290 TraceCheckUtils]: 8: Hoare triple {2221#true} assume !(0 == ~cond); {2221#true} is VALID [2022-04-15 09:18:13,195 INFO L290 TraceCheckUtils]: 9: Hoare triple {2221#true} assume true; {2221#true} is VALID [2022-04-15 09:18:13,195 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2221#true} {2221#true} #80#return; {2221#true} is VALID [2022-04-15 09:18:13,196 INFO L290 TraceCheckUtils]: 11: Hoare triple {2221#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:18:13,196 INFO L290 TraceCheckUtils]: 12: Hoare triple {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:18:13,197 INFO L290 TraceCheckUtils]: 13: Hoare triple {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 5);havoc #t~post6; {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:18:13,197 INFO L272 TraceCheckUtils]: 14: Hoare triple {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {2221#true} is VALID [2022-04-15 09:18:13,197 INFO L290 TraceCheckUtils]: 15: Hoare triple {2221#true} ~cond := #in~cond; {2221#true} is VALID [2022-04-15 09:18:13,197 INFO L290 TraceCheckUtils]: 16: Hoare triple {2221#true} assume !(0 == ~cond); {2221#true} is VALID [2022-04-15 09:18:13,197 INFO L290 TraceCheckUtils]: 17: Hoare triple {2221#true} assume true; {2221#true} is VALID [2022-04-15 09:18:13,197 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2221#true} {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #82#return; {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:18:13,197 INFO L272 TraceCheckUtils]: 19: Hoare triple {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {2221#true} is VALID [2022-04-15 09:18:13,198 INFO L290 TraceCheckUtils]: 20: Hoare triple {2221#true} ~cond := #in~cond; {2221#true} is VALID [2022-04-15 09:18:13,198 INFO L290 TraceCheckUtils]: 21: Hoare triple {2221#true} assume !(0 == ~cond); {2221#true} is VALID [2022-04-15 09:18:13,198 INFO L290 TraceCheckUtils]: 22: Hoare triple {2221#true} assume true; {2221#true} is VALID [2022-04-15 09:18:13,198 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2221#true} {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #84#return; {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:18:13,198 INFO L272 TraceCheckUtils]: 24: Hoare triple {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {2221#true} is VALID [2022-04-15 09:18:13,198 INFO L290 TraceCheckUtils]: 25: Hoare triple {2221#true} ~cond := #in~cond; {2221#true} is VALID [2022-04-15 09:18:13,198 INFO L290 TraceCheckUtils]: 26: Hoare triple {2221#true} assume !(0 == ~cond); {2221#true} is VALID [2022-04-15 09:18:13,199 INFO L290 TraceCheckUtils]: 27: Hoare triple {2221#true} assume true; {2221#true} is VALID [2022-04-15 09:18:13,199 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2221#true} {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #86#return; {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:18:13,200 INFO L290 TraceCheckUtils]: 29: Hoare triple {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} assume !(~r~0 >= ~d~0); {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:18:13,202 INFO L290 TraceCheckUtils]: 30: Hoare triple {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:18:13,203 INFO L290 TraceCheckUtils]: 31: Hoare triple {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} assume !!(#t~post7 < 5);havoc #t~post7; {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:18:13,203 INFO L272 TraceCheckUtils]: 32: Hoare triple {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {2323#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:18:13,204 INFO L290 TraceCheckUtils]: 33: Hoare triple {2323#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2327#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:18:13,204 INFO L290 TraceCheckUtils]: 34: Hoare triple {2327#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2222#false} is VALID [2022-04-15 09:18:13,204 INFO L290 TraceCheckUtils]: 35: Hoare triple {2222#false} assume !false; {2222#false} is VALID [2022-04-15 09:18:13,204 INFO L134 CoverageAnalysis]: Checked inductivity of 18 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 12 trivial. 0 not checked. [2022-04-15 09:18:13,205 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 09:18:13,205 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:18:13,205 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1108023520] [2022-04-15 09:18:13,205 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:18:13,205 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [977987926] [2022-04-15 09:18:13,205 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [977987926] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:18:13,205 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:18:13,205 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 09:18:13,205 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:18:13,205 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1359613174] [2022-04-15 09:18:13,205 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1359613174] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:18:13,205 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:18:13,205 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 09:18:13,205 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [370095683] [2022-04-15 09:18:13,205 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:18:13,206 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 36 [2022-04-15 09:18:13,206 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:18:13,206 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 09:18:13,228 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 09:18:13,228 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 09:18:13,228 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:18:13,228 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 09:18:13,229 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-15 09:18:13,229 INFO L87 Difference]: Start difference. First operand 68 states and 78 transitions. Second operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 09:18:13,439 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:13,439 INFO L93 Difference]: Finished difference Result 82 states and 97 transitions. [2022-04-15 09:18:13,439 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 09:18:13,439 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 36 [2022-04-15 09:18:13,439 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:18:13,439 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 09:18:13,440 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 61 transitions. [2022-04-15 09:18:13,440 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 09:18:13,441 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 61 transitions. [2022-04-15 09:18:13,441 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 61 transitions. [2022-04-15 09:18:13,487 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:18:13,488 INFO L225 Difference]: With dead ends: 82 [2022-04-15 09:18:13,488 INFO L226 Difference]: Without dead ends: 70 [2022-04-15 09:18:13,488 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 36 GetRequests, 32 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-04-15 09:18:13,489 INFO L913 BasicCegarLoop]: 35 mSDtfsCounter, 11 mSDsluCounter, 83 mSDsCounter, 0 mSdLazyCounter, 48 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 118 SdHoareTripleChecker+Invalid, 51 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 48 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 09:18:13,489 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 118 Invalid, 51 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 48 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 09:18:13,489 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 70 states. [2022-04-15 09:18:13,529 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 70 to 69. [2022-04-15 09:18:13,529 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:18:13,529 INFO L82 GeneralOperation]: Start isEquivalent. First operand 70 states. Second operand has 69 states, 43 states have (on average 1.2093023255813953) internal successors, (52), 45 states have internal predecessors, (52), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-15 09:18:13,530 INFO L74 IsIncluded]: Start isIncluded. First operand 70 states. Second operand has 69 states, 43 states have (on average 1.2093023255813953) internal successors, (52), 45 states have internal predecessors, (52), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-15 09:18:13,530 INFO L87 Difference]: Start difference. First operand 70 states. Second operand has 69 states, 43 states have (on average 1.2093023255813953) internal successors, (52), 45 states have internal predecessors, (52), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-15 09:18:13,532 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:13,532 INFO L93 Difference]: Finished difference Result 70 states and 83 transitions. [2022-04-15 09:18:13,532 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 83 transitions. [2022-04-15 09:18:13,532 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:18:13,532 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:18:13,532 INFO L74 IsIncluded]: Start isIncluded. First operand has 69 states, 43 states have (on average 1.2093023255813953) internal successors, (52), 45 states have internal predecessors, (52), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) Second operand 70 states. [2022-04-15 09:18:13,533 INFO L87 Difference]: Start difference. First operand has 69 states, 43 states have (on average 1.2093023255813953) internal successors, (52), 45 states have internal predecessors, (52), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) Second operand 70 states. [2022-04-15 09:18:13,535 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:13,535 INFO L93 Difference]: Finished difference Result 70 states and 83 transitions. [2022-04-15 09:18:13,535 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 83 transitions. [2022-04-15 09:18:13,536 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:18:13,536 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:18:13,536 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:18:13,536 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:18:13,536 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 69 states, 43 states have (on average 1.2093023255813953) internal successors, (52), 45 states have internal predecessors, (52), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-15 09:18:13,538 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 69 states to 69 states and 82 transitions. [2022-04-15 09:18:13,538 INFO L78 Accepts]: Start accepts. Automaton has 69 states and 82 transitions. Word has length 36 [2022-04-15 09:18:13,539 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:18:13,539 INFO L478 AbstractCegarLoop]: Abstraction has 69 states and 82 transitions. [2022-04-15 09:18:13,539 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.6) internal successors, (18), 4 states have internal predecessors, (18), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 09:18:13,539 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 69 states and 82 transitions. [2022-04-15 09:18:13,615 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 82 edges. 82 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:18:13,615 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 82 transitions. [2022-04-15 09:18:13,615 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-15 09:18:13,616 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:18:13,616 INFO L499 BasicCegarLoop]: trace histogram [5, 4, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:18:13,631 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 09:18:13,823 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 09:18:13,823 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:18:13,824 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:18:13,824 INFO L85 PathProgramCache]: Analyzing trace with hash 817878903, now seen corresponding path program 1 times [2022-04-15 09:18:13,824 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:18:13,824 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1713595716] [2022-04-15 09:18:20,219 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:18:20,219 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:18:20,219 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:18:20,219 INFO L85 PathProgramCache]: Analyzing trace with hash 817878903, now seen corresponding path program 2 times [2022-04-15 09:18:20,219 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:18:20,219 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1198695791] [2022-04-15 09:18:20,219 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:18:20,219 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:18:20,229 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:18:20,230 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1893635932] [2022-04-15 09:18:20,230 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 09:18:20,230 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:18:20,230 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:18:20,230 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 09:18:20,231 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 09:18:20,267 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 09:18:20,268 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:18:20,268 INFO L263 TraceCheckSpWp]: Trace formula consists of 133 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-15 09:18:20,279 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:18:20,280 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:18:20,458 INFO L272 TraceCheckUtils]: 0: Hoare triple {2777#true} call ULTIMATE.init(); {2777#true} is VALID [2022-04-15 09:18:20,459 INFO L290 TraceCheckUtils]: 1: Hoare triple {2777#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);~counter~0 := 0; {2785#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:20,460 INFO L290 TraceCheckUtils]: 2: Hoare triple {2785#(<= ~counter~0 0)} assume true; {2785#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:20,460 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2785#(<= ~counter~0 0)} {2777#true} #96#return; {2785#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:20,460 INFO L272 TraceCheckUtils]: 4: Hoare triple {2785#(<= ~counter~0 0)} call #t~ret8 := main(); {2785#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:20,461 INFO L290 TraceCheckUtils]: 5: Hoare triple {2785#(<= ~counter~0 0)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {2785#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:20,461 INFO L272 TraceCheckUtils]: 6: Hoare triple {2785#(<= ~counter~0 0)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {2785#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:20,461 INFO L290 TraceCheckUtils]: 7: Hoare triple {2785#(<= ~counter~0 0)} ~cond := #in~cond; {2785#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:20,462 INFO L290 TraceCheckUtils]: 8: Hoare triple {2785#(<= ~counter~0 0)} assume !(0 == ~cond); {2785#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:20,462 INFO L290 TraceCheckUtils]: 9: Hoare triple {2785#(<= ~counter~0 0)} assume true; {2785#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:20,463 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2785#(<= ~counter~0 0)} {2785#(<= ~counter~0 0)} #80#return; {2785#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:20,463 INFO L290 TraceCheckUtils]: 11: Hoare triple {2785#(<= ~counter~0 0)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {2785#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:20,463 INFO L290 TraceCheckUtils]: 12: Hoare triple {2785#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:20,464 INFO L290 TraceCheckUtils]: 13: Hoare triple {2819#(<= ~counter~0 1)} assume !!(#t~post6 < 5);havoc #t~post6; {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:20,464 INFO L272 TraceCheckUtils]: 14: Hoare triple {2819#(<= ~counter~0 1)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:20,465 INFO L290 TraceCheckUtils]: 15: Hoare triple {2819#(<= ~counter~0 1)} ~cond := #in~cond; {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:20,465 INFO L290 TraceCheckUtils]: 16: Hoare triple {2819#(<= ~counter~0 1)} assume !(0 == ~cond); {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:20,465 INFO L290 TraceCheckUtils]: 17: Hoare triple {2819#(<= ~counter~0 1)} assume true; {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:20,466 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2819#(<= ~counter~0 1)} {2819#(<= ~counter~0 1)} #82#return; {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:20,466 INFO L272 TraceCheckUtils]: 19: Hoare triple {2819#(<= ~counter~0 1)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:20,467 INFO L290 TraceCheckUtils]: 20: Hoare triple {2819#(<= ~counter~0 1)} ~cond := #in~cond; {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:20,467 INFO L290 TraceCheckUtils]: 21: Hoare triple {2819#(<= ~counter~0 1)} assume !(0 == ~cond); {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:20,467 INFO L290 TraceCheckUtils]: 22: Hoare triple {2819#(<= ~counter~0 1)} assume true; {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:20,468 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2819#(<= ~counter~0 1)} {2819#(<= ~counter~0 1)} #84#return; {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:20,468 INFO L272 TraceCheckUtils]: 24: Hoare triple {2819#(<= ~counter~0 1)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:20,469 INFO L290 TraceCheckUtils]: 25: Hoare triple {2819#(<= ~counter~0 1)} ~cond := #in~cond; {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:20,469 INFO L290 TraceCheckUtils]: 26: Hoare triple {2819#(<= ~counter~0 1)} assume !(0 == ~cond); {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:20,470 INFO L290 TraceCheckUtils]: 27: Hoare triple {2819#(<= ~counter~0 1)} assume true; {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:20,470 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2819#(<= ~counter~0 1)} {2819#(<= ~counter~0 1)} #86#return; {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:20,471 INFO L290 TraceCheckUtils]: 29: Hoare triple {2819#(<= ~counter~0 1)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {2819#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:20,471 INFO L290 TraceCheckUtils]: 30: Hoare triple {2819#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2874#(<= |main_#t~post6| 1)} is VALID [2022-04-15 09:18:20,471 INFO L290 TraceCheckUtils]: 31: Hoare triple {2874#(<= |main_#t~post6| 1)} assume !(#t~post6 < 5);havoc #t~post6; {2778#false} is VALID [2022-04-15 09:18:20,471 INFO L290 TraceCheckUtils]: 32: Hoare triple {2778#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2778#false} is VALID [2022-04-15 09:18:20,472 INFO L290 TraceCheckUtils]: 33: Hoare triple {2778#false} assume !(#t~post7 < 5);havoc #t~post7; {2778#false} is VALID [2022-04-15 09:18:20,472 INFO L272 TraceCheckUtils]: 34: Hoare triple {2778#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {2778#false} is VALID [2022-04-15 09:18:20,472 INFO L290 TraceCheckUtils]: 35: Hoare triple {2778#false} ~cond := #in~cond; {2778#false} is VALID [2022-04-15 09:18:20,472 INFO L290 TraceCheckUtils]: 36: Hoare triple {2778#false} assume !(0 == ~cond); {2778#false} is VALID [2022-04-15 09:18:20,472 INFO L290 TraceCheckUtils]: 37: Hoare triple {2778#false} assume true; {2778#false} is VALID [2022-04-15 09:18:20,476 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {2778#false} {2778#false} #92#return; {2778#false} is VALID [2022-04-15 09:18:20,476 INFO L272 TraceCheckUtils]: 39: Hoare triple {2778#false} call __VERIFIER_assert((if ~B~0 % 4294967296 == ~d~0 then 1 else 0)); {2778#false} is VALID [2022-04-15 09:18:20,477 INFO L290 TraceCheckUtils]: 40: Hoare triple {2778#false} ~cond := #in~cond; {2778#false} is VALID [2022-04-15 09:18:20,477 INFO L290 TraceCheckUtils]: 41: Hoare triple {2778#false} assume 0 == ~cond; {2778#false} is VALID [2022-04-15 09:18:20,481 INFO L290 TraceCheckUtils]: 42: Hoare triple {2778#false} assume !false; {2778#false} is VALID [2022-04-15 09:18:20,482 INFO L134 CoverageAnalysis]: Checked inductivity of 34 backedges. 18 proven. 2 refuted. 0 times theorem prover too weak. 14 trivial. 0 not checked. [2022-04-15 09:18:20,482 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:18:20,672 INFO L290 TraceCheckUtils]: 42: Hoare triple {2778#false} assume !false; {2778#false} is VALID [2022-04-15 09:18:20,672 INFO L290 TraceCheckUtils]: 41: Hoare triple {2778#false} assume 0 == ~cond; {2778#false} is VALID [2022-04-15 09:18:20,673 INFO L290 TraceCheckUtils]: 40: Hoare triple {2778#false} ~cond := #in~cond; {2778#false} is VALID [2022-04-15 09:18:20,673 INFO L272 TraceCheckUtils]: 39: Hoare triple {2778#false} call __VERIFIER_assert((if ~B~0 % 4294967296 == ~d~0 then 1 else 0)); {2778#false} is VALID [2022-04-15 09:18:20,673 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {2777#true} {2778#false} #92#return; {2778#false} is VALID [2022-04-15 09:18:20,673 INFO L290 TraceCheckUtils]: 37: Hoare triple {2777#true} assume true; {2777#true} is VALID [2022-04-15 09:18:20,673 INFO L290 TraceCheckUtils]: 36: Hoare triple {2777#true} assume !(0 == ~cond); {2777#true} is VALID [2022-04-15 09:18:20,673 INFO L290 TraceCheckUtils]: 35: Hoare triple {2777#true} ~cond := #in~cond; {2777#true} is VALID [2022-04-15 09:18:20,673 INFO L272 TraceCheckUtils]: 34: Hoare triple {2778#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {2777#true} is VALID [2022-04-15 09:18:20,673 INFO L290 TraceCheckUtils]: 33: Hoare triple {2778#false} assume !(#t~post7 < 5);havoc #t~post7; {2778#false} is VALID [2022-04-15 09:18:20,673 INFO L290 TraceCheckUtils]: 32: Hoare triple {2778#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2778#false} is VALID [2022-04-15 09:18:20,674 INFO L290 TraceCheckUtils]: 31: Hoare triple {2944#(< |main_#t~post6| 5)} assume !(#t~post6 < 5);havoc #t~post6; {2778#false} is VALID [2022-04-15 09:18:20,675 INFO L290 TraceCheckUtils]: 30: Hoare triple {2948#(< ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2944#(< |main_#t~post6| 5)} is VALID [2022-04-15 09:18:20,675 INFO L290 TraceCheckUtils]: 29: Hoare triple {2948#(< ~counter~0 5)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {2948#(< ~counter~0 5)} is VALID [2022-04-15 09:18:20,676 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2777#true} {2948#(< ~counter~0 5)} #86#return; {2948#(< ~counter~0 5)} is VALID [2022-04-15 09:18:20,676 INFO L290 TraceCheckUtils]: 27: Hoare triple {2777#true} assume true; {2777#true} is VALID [2022-04-15 09:18:20,676 INFO L290 TraceCheckUtils]: 26: Hoare triple {2777#true} assume !(0 == ~cond); {2777#true} is VALID [2022-04-15 09:18:20,676 INFO L290 TraceCheckUtils]: 25: Hoare triple {2777#true} ~cond := #in~cond; {2777#true} is VALID [2022-04-15 09:18:20,676 INFO L272 TraceCheckUtils]: 24: Hoare triple {2948#(< ~counter~0 5)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {2777#true} is VALID [2022-04-15 09:18:20,677 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2777#true} {2948#(< ~counter~0 5)} #84#return; {2948#(< ~counter~0 5)} is VALID [2022-04-15 09:18:20,677 INFO L290 TraceCheckUtils]: 22: Hoare triple {2777#true} assume true; {2777#true} is VALID [2022-04-15 09:18:20,677 INFO L290 TraceCheckUtils]: 21: Hoare triple {2777#true} assume !(0 == ~cond); {2777#true} is VALID [2022-04-15 09:18:20,677 INFO L290 TraceCheckUtils]: 20: Hoare triple {2777#true} ~cond := #in~cond; {2777#true} is VALID [2022-04-15 09:18:20,677 INFO L272 TraceCheckUtils]: 19: Hoare triple {2948#(< ~counter~0 5)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {2777#true} is VALID [2022-04-15 09:18:20,678 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2777#true} {2948#(< ~counter~0 5)} #82#return; {2948#(< ~counter~0 5)} is VALID [2022-04-15 09:18:20,678 INFO L290 TraceCheckUtils]: 17: Hoare triple {2777#true} assume true; {2777#true} is VALID [2022-04-15 09:18:20,678 INFO L290 TraceCheckUtils]: 16: Hoare triple {2777#true} assume !(0 == ~cond); {2777#true} is VALID [2022-04-15 09:18:20,678 INFO L290 TraceCheckUtils]: 15: Hoare triple {2777#true} ~cond := #in~cond; {2777#true} is VALID [2022-04-15 09:18:20,678 INFO L272 TraceCheckUtils]: 14: Hoare triple {2948#(< ~counter~0 5)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {2777#true} is VALID [2022-04-15 09:18:20,678 INFO L290 TraceCheckUtils]: 13: Hoare triple {2948#(< ~counter~0 5)} assume !!(#t~post6 < 5);havoc #t~post6; {2948#(< ~counter~0 5)} is VALID [2022-04-15 09:18:20,679 INFO L290 TraceCheckUtils]: 12: Hoare triple {3003#(< ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2948#(< ~counter~0 5)} is VALID [2022-04-15 09:18:20,679 INFO L290 TraceCheckUtils]: 11: Hoare triple {3003#(< ~counter~0 4)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {3003#(< ~counter~0 4)} is VALID [2022-04-15 09:18:20,680 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2777#true} {3003#(< ~counter~0 4)} #80#return; {3003#(< ~counter~0 4)} is VALID [2022-04-15 09:18:20,680 INFO L290 TraceCheckUtils]: 9: Hoare triple {2777#true} assume true; {2777#true} is VALID [2022-04-15 09:18:20,680 INFO L290 TraceCheckUtils]: 8: Hoare triple {2777#true} assume !(0 == ~cond); {2777#true} is VALID [2022-04-15 09:18:20,680 INFO L290 TraceCheckUtils]: 7: Hoare triple {2777#true} ~cond := #in~cond; {2777#true} is VALID [2022-04-15 09:18:20,680 INFO L272 TraceCheckUtils]: 6: Hoare triple {3003#(< ~counter~0 4)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {2777#true} is VALID [2022-04-15 09:18:20,681 INFO L290 TraceCheckUtils]: 5: Hoare triple {3003#(< ~counter~0 4)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {3003#(< ~counter~0 4)} is VALID [2022-04-15 09:18:20,681 INFO L272 TraceCheckUtils]: 4: Hoare triple {3003#(< ~counter~0 4)} call #t~ret8 := main(); {3003#(< ~counter~0 4)} is VALID [2022-04-15 09:18:20,682 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3003#(< ~counter~0 4)} {2777#true} #96#return; {3003#(< ~counter~0 4)} is VALID [2022-04-15 09:18:20,682 INFO L290 TraceCheckUtils]: 2: Hoare triple {3003#(< ~counter~0 4)} assume true; {3003#(< ~counter~0 4)} is VALID [2022-04-15 09:18:20,682 INFO L290 TraceCheckUtils]: 1: Hoare triple {2777#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);~counter~0 := 0; {3003#(< ~counter~0 4)} is VALID [2022-04-15 09:18:20,683 INFO L272 TraceCheckUtils]: 0: Hoare triple {2777#true} call ULTIMATE.init(); {2777#true} is VALID [2022-04-15 09:18:20,683 INFO L134 CoverageAnalysis]: Checked inductivity of 34 backedges. 8 proven. 2 refuted. 0 times theorem prover too weak. 24 trivial. 0 not checked. [2022-04-15 09:18:20,683 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:18:20,683 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1198695791] [2022-04-15 09:18:20,683 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:18:20,683 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1893635932] [2022-04-15 09:18:20,683 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1893635932] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:18:20,683 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:18:20,683 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-15 09:18:20,684 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:18:20,684 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1713595716] [2022-04-15 09:18:20,684 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1713595716] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:18:20,684 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:18:20,684 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 09:18:20,684 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1040249953] [2022-04-15 09:18:20,684 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:18:20,684 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 3 states have call predecessors, (6), 4 states have call successors, (6) Word has length 43 [2022-04-15 09:18:20,685 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:18:20,685 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 3 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-15 09:18:20,710 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 09:18:20,710 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 09:18:20,710 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:18:20,710 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 09:18:20,710 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-15 09:18:20,711 INFO L87 Difference]: Start difference. First operand 69 states and 82 transitions. Second operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 3 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-15 09:18:20,894 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:20,894 INFO L93 Difference]: Finished difference Result 96 states and 120 transitions. [2022-04-15 09:18:20,894 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-15 09:18:20,894 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 3 states have call predecessors, (6), 4 states have call successors, (6) Word has length 43 [2022-04-15 09:18:20,895 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:18:20,895 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 3 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-15 09:18:20,896 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 76 transitions. [2022-04-15 09:18:20,896 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 3 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-15 09:18:20,897 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 76 transitions. [2022-04-15 09:18:20,897 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 76 transitions. [2022-04-15 09:18:20,947 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 76 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:18:20,949 INFO L225 Difference]: With dead ends: 96 [2022-04-15 09:18:20,949 INFO L226 Difference]: Without dead ends: 71 [2022-04-15 09:18:20,949 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 86 GetRequests, 79 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=27, Invalid=45, Unknown=0, NotChecked=0, Total=72 [2022-04-15 09:18:20,950 INFO L913 BasicCegarLoop]: 43 mSDtfsCounter, 6 mSDsluCounter, 74 mSDsCounter, 0 mSdLazyCounter, 16 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 6 SdHoareTripleChecker+Valid, 117 SdHoareTripleChecker+Invalid, 21 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 16 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 09:18:20,950 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [6 Valid, 117 Invalid, 21 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 16 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 09:18:20,950 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 71 states. [2022-04-15 09:18:21,006 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 71 to 71. [2022-04-15 09:18:21,006 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:18:21,006 INFO L82 GeneralOperation]: Start isEquivalent. First operand 71 states. Second operand has 71 states, 45 states have (on average 1.2) internal successors, (54), 47 states have internal predecessors, (54), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-15 09:18:21,006 INFO L74 IsIncluded]: Start isIncluded. First operand 71 states. Second operand has 71 states, 45 states have (on average 1.2) internal successors, (54), 47 states have internal predecessors, (54), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-15 09:18:21,007 INFO L87 Difference]: Start difference. First operand 71 states. Second operand has 71 states, 45 states have (on average 1.2) internal successors, (54), 47 states have internal predecessors, (54), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-15 09:18:21,009 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:21,009 INFO L93 Difference]: Finished difference Result 71 states and 84 transitions. [2022-04-15 09:18:21,009 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 84 transitions. [2022-04-15 09:18:21,009 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:18:21,009 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:18:21,010 INFO L74 IsIncluded]: Start isIncluded. First operand has 71 states, 45 states have (on average 1.2) internal successors, (54), 47 states have internal predecessors, (54), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) Second operand 71 states. [2022-04-15 09:18:21,010 INFO L87 Difference]: Start difference. First operand has 71 states, 45 states have (on average 1.2) internal successors, (54), 47 states have internal predecessors, (54), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) Second operand 71 states. [2022-04-15 09:18:21,012 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:21,012 INFO L93 Difference]: Finished difference Result 71 states and 84 transitions. [2022-04-15 09:18:21,012 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 84 transitions. [2022-04-15 09:18:21,012 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:18:21,012 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:18:21,012 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:18:21,013 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:18:21,013 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 71 states, 45 states have (on average 1.2) internal successors, (54), 47 states have internal predecessors, (54), 16 states have call successors, (16), 10 states have call predecessors, (16), 9 states have return successors, (14), 13 states have call predecessors, (14), 14 states have call successors, (14) [2022-04-15 09:18:21,015 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 71 states to 71 states and 84 transitions. [2022-04-15 09:18:21,016 INFO L78 Accepts]: Start accepts. Automaton has 71 states and 84 transitions. Word has length 43 [2022-04-15 09:18:21,016 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:18:21,016 INFO L478 AbstractCegarLoop]: Abstraction has 71 states and 84 transitions. [2022-04-15 09:18:21,016 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.4) internal successors, (22), 4 states have internal predecessors, (22), 4 states have call successors, (8), 4 states have call predecessors, (8), 3 states have return successors, (6), 3 states have call predecessors, (6), 4 states have call successors, (6) [2022-04-15 09:18:21,016 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 71 states and 84 transitions. [2022-04-15 09:18:21,093 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 84 edges. 84 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:18:21,093 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 84 transitions. [2022-04-15 09:18:21,094 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-04-15 09:18:21,094 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:18:21,094 INFO L499 BasicCegarLoop]: trace histogram [6, 5, 5, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:18:21,110 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 09:18:21,307 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 09:18:21,308 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:18:21,308 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:18:21,308 INFO L85 PathProgramCache]: Analyzing trace with hash 1861890039, now seen corresponding path program 1 times [2022-04-15 09:18:21,308 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:18:21,308 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1132955706] [2022-04-15 09:18:28,182 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:18:28,182 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:18:28,182 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:18:28,182 INFO L85 PathProgramCache]: Analyzing trace with hash 1861890039, now seen corresponding path program 2 times [2022-04-15 09:18:28,182 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:18:28,182 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2134043211] [2022-04-15 09:18:28,182 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:18:28,182 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:18:28,189 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:18:28,189 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1352040271] [2022-04-15 09:18:28,189 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 09:18:28,189 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:18:28,189 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:18:28,195 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 09:18:28,196 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 09:18:28,232 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 09:18:28,232 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:18:28,233 INFO L263 TraceCheckSpWp]: Trace formula consists of 137 conjuncts, 16 conjunts are in the unsatisfiable core [2022-04-15 09:18:28,245 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:18:28,246 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:18:28,881 INFO L272 TraceCheckUtils]: 0: Hoare triple {3520#true} call ULTIMATE.init(); {3520#true} is VALID [2022-04-15 09:18:28,881 INFO L290 TraceCheckUtils]: 1: Hoare triple {3520#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);~counter~0 := 0; {3520#true} is VALID [2022-04-15 09:18:28,881 INFO L290 TraceCheckUtils]: 2: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-15 09:18:28,881 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3520#true} {3520#true} #96#return; {3520#true} is VALID [2022-04-15 09:18:28,881 INFO L272 TraceCheckUtils]: 4: Hoare triple {3520#true} call #t~ret8 := main(); {3520#true} is VALID [2022-04-15 09:18:28,881 INFO L290 TraceCheckUtils]: 5: Hoare triple {3520#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {3520#true} is VALID [2022-04-15 09:18:28,882 INFO L272 TraceCheckUtils]: 6: Hoare triple {3520#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {3520#true} is VALID [2022-04-15 09:18:28,882 INFO L290 TraceCheckUtils]: 7: Hoare triple {3520#true} ~cond := #in~cond; {3546#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 09:18:28,882 INFO L290 TraceCheckUtils]: 8: Hoare triple {3546#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3550#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 09:18:28,882 INFO L290 TraceCheckUtils]: 9: Hoare triple {3550#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3550#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 09:18:28,883 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3550#(not (= |assume_abort_if_not_#in~cond| 0))} {3520#true} #80#return; {3557#(<= 1 (mod main_~B~0 4294967296))} is VALID [2022-04-15 09:18:28,883 INFO L290 TraceCheckUtils]: 11: Hoare triple {3557#(<= 1 (mod main_~B~0 4294967296))} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {3561#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:18:28,884 INFO L290 TraceCheckUtils]: 12: Hoare triple {3561#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3561#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:18:28,884 INFO L290 TraceCheckUtils]: 13: Hoare triple {3561#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} assume !!(#t~post6 < 5);havoc #t~post6; {3561#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:18:28,884 INFO L272 TraceCheckUtils]: 14: Hoare triple {3561#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {3520#true} is VALID [2022-04-15 09:18:28,884 INFO L290 TraceCheckUtils]: 15: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-15 09:18:28,884 INFO L290 TraceCheckUtils]: 16: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-15 09:18:28,884 INFO L290 TraceCheckUtils]: 17: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-15 09:18:28,885 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3520#true} {3561#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #82#return; {3561#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:18:28,885 INFO L272 TraceCheckUtils]: 19: Hoare triple {3561#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {3520#true} is VALID [2022-04-15 09:18:28,885 INFO L290 TraceCheckUtils]: 20: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-15 09:18:28,885 INFO L290 TraceCheckUtils]: 21: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-15 09:18:28,885 INFO L290 TraceCheckUtils]: 22: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-15 09:18:28,886 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3520#true} {3561#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #84#return; {3561#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:18:28,886 INFO L272 TraceCheckUtils]: 24: Hoare triple {3561#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {3520#true} is VALID [2022-04-15 09:18:28,886 INFO L290 TraceCheckUtils]: 25: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-15 09:18:28,886 INFO L290 TraceCheckUtils]: 26: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-15 09:18:28,886 INFO L290 TraceCheckUtils]: 27: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-15 09:18:28,886 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {3520#true} {3561#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #86#return; {3561#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:18:28,887 INFO L290 TraceCheckUtils]: 29: Hoare triple {3561#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {3616#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:18:28,887 INFO L290 TraceCheckUtils]: 30: Hoare triple {3616#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3616#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:18:28,888 INFO L290 TraceCheckUtils]: 31: Hoare triple {3616#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} assume !!(#t~post6 < 5);havoc #t~post6; {3616#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:18:28,888 INFO L272 TraceCheckUtils]: 32: Hoare triple {3616#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {3520#true} is VALID [2022-04-15 09:18:28,888 INFO L290 TraceCheckUtils]: 33: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-15 09:18:28,888 INFO L290 TraceCheckUtils]: 34: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-15 09:18:28,888 INFO L290 TraceCheckUtils]: 35: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-15 09:18:28,888 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {3520#true} {3616#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} #82#return; {3616#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:18:28,888 INFO L272 TraceCheckUtils]: 37: Hoare triple {3616#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {3520#true} is VALID [2022-04-15 09:18:28,889 INFO L290 TraceCheckUtils]: 38: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-15 09:18:28,889 INFO L290 TraceCheckUtils]: 39: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-15 09:18:28,889 INFO L290 TraceCheckUtils]: 40: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-15 09:18:28,891 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3520#true} {3616#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} #84#return; {3616#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:18:28,897 INFO L272 TraceCheckUtils]: 42: Hoare triple {3616#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {3656#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:18:28,897 INFO L290 TraceCheckUtils]: 43: Hoare triple {3656#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3660#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:18:28,898 INFO L290 TraceCheckUtils]: 44: Hoare triple {3660#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3521#false} is VALID [2022-04-15 09:18:28,898 INFO L290 TraceCheckUtils]: 45: Hoare triple {3521#false} assume !false; {3521#false} is VALID [2022-04-15 09:18:28,898 INFO L134 CoverageAnalysis]: Checked inductivity of 55 backedges. 10 proven. 5 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-15 09:18:28,898 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:18:29,194 INFO L290 TraceCheckUtils]: 45: Hoare triple {3521#false} assume !false; {3521#false} is VALID [2022-04-15 09:18:29,194 INFO L290 TraceCheckUtils]: 44: Hoare triple {3660#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3521#false} is VALID [2022-04-15 09:18:29,195 INFO L290 TraceCheckUtils]: 43: Hoare triple {3656#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3660#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:18:29,195 INFO L272 TraceCheckUtils]: 42: Hoare triple {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {3656#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:18:29,196 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {3520#true} {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} #84#return; {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:18:29,196 INFO L290 TraceCheckUtils]: 40: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-15 09:18:29,196 INFO L290 TraceCheckUtils]: 39: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-15 09:18:29,196 INFO L290 TraceCheckUtils]: 38: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-15 09:18:29,196 INFO L272 TraceCheckUtils]: 37: Hoare triple {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {3520#true} is VALID [2022-04-15 09:18:29,197 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {3520#true} {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} #82#return; {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:18:29,197 INFO L290 TraceCheckUtils]: 35: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-15 09:18:29,197 INFO L290 TraceCheckUtils]: 34: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-15 09:18:29,197 INFO L290 TraceCheckUtils]: 33: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-15 09:18:29,197 INFO L272 TraceCheckUtils]: 32: Hoare triple {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {3520#true} is VALID [2022-04-15 09:18:29,197 INFO L290 TraceCheckUtils]: 31: Hoare triple {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} assume !!(#t~post6 < 5);havoc #t~post6; {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:18:29,197 INFO L290 TraceCheckUtils]: 30: Hoare triple {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:18:29,198 INFO L290 TraceCheckUtils]: 29: Hoare triple {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:18:29,199 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {3520#true} {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} #86#return; {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:18:29,199 INFO L290 TraceCheckUtils]: 27: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-15 09:18:29,199 INFO L290 TraceCheckUtils]: 26: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-15 09:18:29,199 INFO L290 TraceCheckUtils]: 25: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-15 09:18:29,199 INFO L272 TraceCheckUtils]: 24: Hoare triple {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {3520#true} is VALID [2022-04-15 09:18:29,200 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {3520#true} {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} #84#return; {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:18:29,200 INFO L290 TraceCheckUtils]: 22: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-15 09:18:29,200 INFO L290 TraceCheckUtils]: 21: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-15 09:18:29,200 INFO L290 TraceCheckUtils]: 20: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-15 09:18:29,200 INFO L272 TraceCheckUtils]: 19: Hoare triple {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {3520#true} is VALID [2022-04-15 09:18:29,201 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3520#true} {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} #82#return; {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:18:29,201 INFO L290 TraceCheckUtils]: 17: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-15 09:18:29,201 INFO L290 TraceCheckUtils]: 16: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-15 09:18:29,201 INFO L290 TraceCheckUtils]: 15: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-15 09:18:29,201 INFO L272 TraceCheckUtils]: 14: Hoare triple {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {3520#true} is VALID [2022-04-15 09:18:29,201 INFO L290 TraceCheckUtils]: 13: Hoare triple {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} assume !!(#t~post6 < 5);havoc #t~post6; {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:18:29,202 INFO L290 TraceCheckUtils]: 12: Hoare triple {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:18:29,202 INFO L290 TraceCheckUtils]: 11: Hoare triple {3520#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:18:29,202 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3520#true} {3520#true} #80#return; {3520#true} is VALID [2022-04-15 09:18:29,202 INFO L290 TraceCheckUtils]: 9: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-15 09:18:29,202 INFO L290 TraceCheckUtils]: 8: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-15 09:18:29,203 INFO L290 TraceCheckUtils]: 7: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-15 09:18:29,203 INFO L272 TraceCheckUtils]: 6: Hoare triple {3520#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {3520#true} is VALID [2022-04-15 09:18:29,203 INFO L290 TraceCheckUtils]: 5: Hoare triple {3520#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {3520#true} is VALID [2022-04-15 09:18:29,203 INFO L272 TraceCheckUtils]: 4: Hoare triple {3520#true} call #t~ret8 := main(); {3520#true} is VALID [2022-04-15 09:18:29,203 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3520#true} {3520#true} #96#return; {3520#true} is VALID [2022-04-15 09:18:29,203 INFO L290 TraceCheckUtils]: 2: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-15 09:18:29,203 INFO L290 TraceCheckUtils]: 1: Hoare triple {3520#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);~counter~0 := 0; {3520#true} is VALID [2022-04-15 09:18:29,203 INFO L272 TraceCheckUtils]: 0: Hoare triple {3520#true} call ULTIMATE.init(); {3520#true} is VALID [2022-04-15 09:18:29,203 INFO L134 CoverageAnalysis]: Checked inductivity of 55 backedges. 10 proven. 0 refuted. 0 times theorem prover too weak. 45 trivial. 0 not checked. [2022-04-15 09:18:29,203 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:18:29,203 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2134043211] [2022-04-15 09:18:29,203 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:18:29,203 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1352040271] [2022-04-15 09:18:29,203 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1352040271] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-15 09:18:29,203 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-15 09:18:29,204 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [9] total 10 [2022-04-15 09:18:29,204 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:18:29,204 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1132955706] [2022-04-15 09:18:29,204 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1132955706] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:18:29,204 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:18:29,204 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 09:18:29,204 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [344964788] [2022-04-15 09:18:29,204 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:18:29,204 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 46 [2022-04-15 09:18:29,204 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:18:29,205 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 09:18:29,226 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 09:18:29,226 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 09:18:29,226 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:18:29,226 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 09:18:29,226 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2022-04-15 09:18:29,226 INFO L87 Difference]: Start difference. First operand 71 states and 84 transitions. Second operand has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 09:18:29,625 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:29,625 INFO L93 Difference]: Finished difference Result 84 states and 101 transitions. [2022-04-15 09:18:29,625 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 09:18:29,625 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) Word has length 46 [2022-04-15 09:18:29,626 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:18:29,626 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 09:18:29,626 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 59 transitions. [2022-04-15 09:18:29,627 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 09:18:29,627 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 59 transitions. [2022-04-15 09:18:29,627 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 59 transitions. [2022-04-15 09:18:29,669 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 59 edges. 59 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:18:29,671 INFO L225 Difference]: With dead ends: 84 [2022-04-15 09:18:29,671 INFO L226 Difference]: Without dead ends: 82 [2022-04-15 09:18:29,671 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 92 GetRequests, 81 SyntacticMatches, 2 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 12 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=25, Invalid=85, Unknown=0, NotChecked=0, Total=110 [2022-04-15 09:18:29,671 INFO L913 BasicCegarLoop]: 40 mSDtfsCounter, 11 mSDsluCounter, 85 mSDsCounter, 0 mSdLazyCounter, 48 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 125 SdHoareTripleChecker+Invalid, 49 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 48 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 09:18:29,672 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 125 Invalid, 49 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 48 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 09:18:29,672 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 82 states. [2022-04-15 09:18:29,709 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 82 to 79. [2022-04-15 09:18:29,710 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:18:29,710 INFO L82 GeneralOperation]: Start isEquivalent. First operand 82 states. Second operand has 79 states, 50 states have (on average 1.2) internal successors, (60), 53 states have internal predecessors, (60), 18 states have call successors, (18), 11 states have call predecessors, (18), 10 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-15 09:18:29,710 INFO L74 IsIncluded]: Start isIncluded. First operand 82 states. Second operand has 79 states, 50 states have (on average 1.2) internal successors, (60), 53 states have internal predecessors, (60), 18 states have call successors, (18), 11 states have call predecessors, (18), 10 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-15 09:18:29,710 INFO L87 Difference]: Start difference. First operand 82 states. Second operand has 79 states, 50 states have (on average 1.2) internal successors, (60), 53 states have internal predecessors, (60), 18 states have call successors, (18), 11 states have call predecessors, (18), 10 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-15 09:18:29,722 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:29,722 INFO L93 Difference]: Finished difference Result 82 states and 99 transitions. [2022-04-15 09:18:29,722 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 99 transitions. [2022-04-15 09:18:29,723 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:18:29,723 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:18:29,723 INFO L74 IsIncluded]: Start isIncluded. First operand has 79 states, 50 states have (on average 1.2) internal successors, (60), 53 states have internal predecessors, (60), 18 states have call successors, (18), 11 states have call predecessors, (18), 10 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) Second operand 82 states. [2022-04-15 09:18:29,723 INFO L87 Difference]: Start difference. First operand has 79 states, 50 states have (on average 1.2) internal successors, (60), 53 states have internal predecessors, (60), 18 states have call successors, (18), 11 states have call predecessors, (18), 10 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) Second operand 82 states. [2022-04-15 09:18:29,724 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:29,724 INFO L93 Difference]: Finished difference Result 82 states and 99 transitions. [2022-04-15 09:18:29,724 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 99 transitions. [2022-04-15 09:18:29,725 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:18:29,725 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:18:29,725 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:18:29,725 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:18:29,725 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 79 states, 50 states have (on average 1.2) internal successors, (60), 53 states have internal predecessors, (60), 18 states have call successors, (18), 11 states have call predecessors, (18), 10 states have return successors, (16), 14 states have call predecessors, (16), 16 states have call successors, (16) [2022-04-15 09:18:29,726 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 79 states to 79 states and 94 transitions. [2022-04-15 09:18:29,726 INFO L78 Accepts]: Start accepts. Automaton has 79 states and 94 transitions. Word has length 46 [2022-04-15 09:18:29,726 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:18:29,726 INFO L478 AbstractCegarLoop]: Abstraction has 79 states and 94 transitions. [2022-04-15 09:18:29,726 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.2) internal successors, (16), 4 states have internal predecessors, (16), 2 states have call successors, (7), 2 states have call predecessors, (7), 1 states have return successors, (5), 2 states have call predecessors, (5), 2 states have call successors, (5) [2022-04-15 09:18:29,726 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 79 states and 94 transitions. [2022-04-15 09:18:29,811 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 94 edges. 94 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:18:29,811 INFO L276 IsEmpty]: Start isEmpty. Operand 79 states and 94 transitions. [2022-04-15 09:18:29,812 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 60 [2022-04-15 09:18:29,812 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:18:29,812 INFO L499 BasicCegarLoop]: trace histogram [8, 7, 7, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:18:29,828 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 09:18:30,017 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 09:18:30,018 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:18:30,018 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:18:30,018 INFO L85 PathProgramCache]: Analyzing trace with hash 967982746, now seen corresponding path program 1 times [2022-04-15 09:18:30,018 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:18:30,018 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1279575286] [2022-04-15 09:18:34,260 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:18:34,260 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:18:34,260 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:18:34,261 INFO L85 PathProgramCache]: Analyzing trace with hash 967982746, now seen corresponding path program 2 times [2022-04-15 09:18:34,261 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:18:34,261 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1368035549] [2022-04-15 09:18:34,261 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:18:34,261 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:18:34,278 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:18:34,278 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1074826186] [2022-04-15 09:18:34,278 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 09:18:34,278 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:18:34,278 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:18:34,282 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 09:18:34,285 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 09:18:34,321 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 09:18:34,322 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:18:34,322 INFO L263 TraceCheckSpWp]: Trace formula consists of 161 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-15 09:18:34,332 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:18:34,333 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:18:34,545 INFO L272 TraceCheckUtils]: 0: Hoare triple {4297#true} call ULTIMATE.init(); {4297#true} is VALID [2022-04-15 09:18:34,547 INFO L290 TraceCheckUtils]: 1: Hoare triple {4297#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);~counter~0 := 0; {4305#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:34,548 INFO L290 TraceCheckUtils]: 2: Hoare triple {4305#(<= ~counter~0 0)} assume true; {4305#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:34,548 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4305#(<= ~counter~0 0)} {4297#true} #96#return; {4305#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:34,548 INFO L272 TraceCheckUtils]: 4: Hoare triple {4305#(<= ~counter~0 0)} call #t~ret8 := main(); {4305#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:34,549 INFO L290 TraceCheckUtils]: 5: Hoare triple {4305#(<= ~counter~0 0)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {4305#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:34,549 INFO L272 TraceCheckUtils]: 6: Hoare triple {4305#(<= ~counter~0 0)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {4305#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:34,549 INFO L290 TraceCheckUtils]: 7: Hoare triple {4305#(<= ~counter~0 0)} ~cond := #in~cond; {4305#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:34,549 INFO L290 TraceCheckUtils]: 8: Hoare triple {4305#(<= ~counter~0 0)} assume !(0 == ~cond); {4305#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:34,550 INFO L290 TraceCheckUtils]: 9: Hoare triple {4305#(<= ~counter~0 0)} assume true; {4305#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:34,550 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4305#(<= ~counter~0 0)} {4305#(<= ~counter~0 0)} #80#return; {4305#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:34,550 INFO L290 TraceCheckUtils]: 11: Hoare triple {4305#(<= ~counter~0 0)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {4305#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:34,551 INFO L290 TraceCheckUtils]: 12: Hoare triple {4305#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:34,551 INFO L290 TraceCheckUtils]: 13: Hoare triple {4339#(<= ~counter~0 1)} assume !!(#t~post6 < 5);havoc #t~post6; {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:34,551 INFO L272 TraceCheckUtils]: 14: Hoare triple {4339#(<= ~counter~0 1)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:34,552 INFO L290 TraceCheckUtils]: 15: Hoare triple {4339#(<= ~counter~0 1)} ~cond := #in~cond; {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:34,552 INFO L290 TraceCheckUtils]: 16: Hoare triple {4339#(<= ~counter~0 1)} assume !(0 == ~cond); {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:34,552 INFO L290 TraceCheckUtils]: 17: Hoare triple {4339#(<= ~counter~0 1)} assume true; {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:34,552 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4339#(<= ~counter~0 1)} {4339#(<= ~counter~0 1)} #82#return; {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:34,553 INFO L272 TraceCheckUtils]: 19: Hoare triple {4339#(<= ~counter~0 1)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:34,553 INFO L290 TraceCheckUtils]: 20: Hoare triple {4339#(<= ~counter~0 1)} ~cond := #in~cond; {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:34,553 INFO L290 TraceCheckUtils]: 21: Hoare triple {4339#(<= ~counter~0 1)} assume !(0 == ~cond); {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:34,554 INFO L290 TraceCheckUtils]: 22: Hoare triple {4339#(<= ~counter~0 1)} assume true; {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:34,565 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4339#(<= ~counter~0 1)} {4339#(<= ~counter~0 1)} #84#return; {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:34,566 INFO L272 TraceCheckUtils]: 24: Hoare triple {4339#(<= ~counter~0 1)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:34,566 INFO L290 TraceCheckUtils]: 25: Hoare triple {4339#(<= ~counter~0 1)} ~cond := #in~cond; {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:34,566 INFO L290 TraceCheckUtils]: 26: Hoare triple {4339#(<= ~counter~0 1)} assume !(0 == ~cond); {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:34,566 INFO L290 TraceCheckUtils]: 27: Hoare triple {4339#(<= ~counter~0 1)} assume true; {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:34,567 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {4339#(<= ~counter~0 1)} {4339#(<= ~counter~0 1)} #86#return; {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:34,567 INFO L290 TraceCheckUtils]: 29: Hoare triple {4339#(<= ~counter~0 1)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {4339#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:34,568 INFO L290 TraceCheckUtils]: 30: Hoare triple {4339#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:34,568 INFO L290 TraceCheckUtils]: 31: Hoare triple {4394#(<= ~counter~0 2)} assume !!(#t~post6 < 5);havoc #t~post6; {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:34,568 INFO L272 TraceCheckUtils]: 32: Hoare triple {4394#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:34,568 INFO L290 TraceCheckUtils]: 33: Hoare triple {4394#(<= ~counter~0 2)} ~cond := #in~cond; {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:34,569 INFO L290 TraceCheckUtils]: 34: Hoare triple {4394#(<= ~counter~0 2)} assume !(0 == ~cond); {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:34,569 INFO L290 TraceCheckUtils]: 35: Hoare triple {4394#(<= ~counter~0 2)} assume true; {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:34,569 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {4394#(<= ~counter~0 2)} {4394#(<= ~counter~0 2)} #82#return; {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:34,570 INFO L272 TraceCheckUtils]: 37: Hoare triple {4394#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:34,570 INFO L290 TraceCheckUtils]: 38: Hoare triple {4394#(<= ~counter~0 2)} ~cond := #in~cond; {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:34,570 INFO L290 TraceCheckUtils]: 39: Hoare triple {4394#(<= ~counter~0 2)} assume !(0 == ~cond); {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:34,570 INFO L290 TraceCheckUtils]: 40: Hoare triple {4394#(<= ~counter~0 2)} assume true; {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:34,571 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {4394#(<= ~counter~0 2)} {4394#(<= ~counter~0 2)} #84#return; {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:34,571 INFO L272 TraceCheckUtils]: 42: Hoare triple {4394#(<= ~counter~0 2)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:34,572 INFO L290 TraceCheckUtils]: 43: Hoare triple {4394#(<= ~counter~0 2)} ~cond := #in~cond; {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:34,572 INFO L290 TraceCheckUtils]: 44: Hoare triple {4394#(<= ~counter~0 2)} assume !(0 == ~cond); {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:34,572 INFO L290 TraceCheckUtils]: 45: Hoare triple {4394#(<= ~counter~0 2)} assume true; {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:34,572 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {4394#(<= ~counter~0 2)} {4394#(<= ~counter~0 2)} #86#return; {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:34,573 INFO L290 TraceCheckUtils]: 47: Hoare triple {4394#(<= ~counter~0 2)} assume !(~r~0 >= ~d~0); {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:34,573 INFO L290 TraceCheckUtils]: 48: Hoare triple {4394#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4449#(<= |main_#t~post7| 2)} is VALID [2022-04-15 09:18:34,573 INFO L290 TraceCheckUtils]: 49: Hoare triple {4449#(<= |main_#t~post7| 2)} assume !(#t~post7 < 5);havoc #t~post7; {4298#false} is VALID [2022-04-15 09:18:34,573 INFO L272 TraceCheckUtils]: 50: Hoare triple {4298#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {4298#false} is VALID [2022-04-15 09:18:34,573 INFO L290 TraceCheckUtils]: 51: Hoare triple {4298#false} ~cond := #in~cond; {4298#false} is VALID [2022-04-15 09:18:34,574 INFO L290 TraceCheckUtils]: 52: Hoare triple {4298#false} assume !(0 == ~cond); {4298#false} is VALID [2022-04-15 09:18:34,574 INFO L290 TraceCheckUtils]: 53: Hoare triple {4298#false} assume true; {4298#false} is VALID [2022-04-15 09:18:34,574 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {4298#false} {4298#false} #92#return; {4298#false} is VALID [2022-04-15 09:18:34,574 INFO L272 TraceCheckUtils]: 55: Hoare triple {4298#false} call __VERIFIER_assert((if ~B~0 % 4294967296 == ~d~0 then 1 else 0)); {4298#false} is VALID [2022-04-15 09:18:34,574 INFO L290 TraceCheckUtils]: 56: Hoare triple {4298#false} ~cond := #in~cond; {4298#false} is VALID [2022-04-15 09:18:34,574 INFO L290 TraceCheckUtils]: 57: Hoare triple {4298#false} assume 0 == ~cond; {4298#false} is VALID [2022-04-15 09:18:34,574 INFO L290 TraceCheckUtils]: 58: Hoare triple {4298#false} assume !false; {4298#false} is VALID [2022-04-15 09:18:34,574 INFO L134 CoverageAnalysis]: Checked inductivity of 104 backedges. 36 proven. 42 refuted. 0 times theorem prover too weak. 26 trivial. 0 not checked. [2022-04-15 09:18:34,574 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:18:34,778 INFO L290 TraceCheckUtils]: 58: Hoare triple {4298#false} assume !false; {4298#false} is VALID [2022-04-15 09:18:34,778 INFO L290 TraceCheckUtils]: 57: Hoare triple {4298#false} assume 0 == ~cond; {4298#false} is VALID [2022-04-15 09:18:34,778 INFO L290 TraceCheckUtils]: 56: Hoare triple {4298#false} ~cond := #in~cond; {4298#false} is VALID [2022-04-15 09:18:34,779 INFO L272 TraceCheckUtils]: 55: Hoare triple {4298#false} call __VERIFIER_assert((if ~B~0 % 4294967296 == ~d~0 then 1 else 0)); {4298#false} is VALID [2022-04-15 09:18:34,779 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {4297#true} {4298#false} #92#return; {4298#false} is VALID [2022-04-15 09:18:34,779 INFO L290 TraceCheckUtils]: 53: Hoare triple {4297#true} assume true; {4297#true} is VALID [2022-04-15 09:18:34,779 INFO L290 TraceCheckUtils]: 52: Hoare triple {4297#true} assume !(0 == ~cond); {4297#true} is VALID [2022-04-15 09:18:34,779 INFO L290 TraceCheckUtils]: 51: Hoare triple {4297#true} ~cond := #in~cond; {4297#true} is VALID [2022-04-15 09:18:34,779 INFO L272 TraceCheckUtils]: 50: Hoare triple {4298#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {4297#true} is VALID [2022-04-15 09:18:34,779 INFO L290 TraceCheckUtils]: 49: Hoare triple {4507#(< |main_#t~post7| 5)} assume !(#t~post7 < 5);havoc #t~post7; {4298#false} is VALID [2022-04-15 09:18:34,779 INFO L290 TraceCheckUtils]: 48: Hoare triple {4511#(< ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4507#(< |main_#t~post7| 5)} is VALID [2022-04-15 09:18:34,780 INFO L290 TraceCheckUtils]: 47: Hoare triple {4511#(< ~counter~0 5)} assume !(~r~0 >= ~d~0); {4511#(< ~counter~0 5)} is VALID [2022-04-15 09:18:34,780 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {4297#true} {4511#(< ~counter~0 5)} #86#return; {4511#(< ~counter~0 5)} is VALID [2022-04-15 09:18:34,780 INFO L290 TraceCheckUtils]: 45: Hoare triple {4297#true} assume true; {4297#true} is VALID [2022-04-15 09:18:34,780 INFO L290 TraceCheckUtils]: 44: Hoare triple {4297#true} assume !(0 == ~cond); {4297#true} is VALID [2022-04-15 09:18:34,780 INFO L290 TraceCheckUtils]: 43: Hoare triple {4297#true} ~cond := #in~cond; {4297#true} is VALID [2022-04-15 09:18:34,780 INFO L272 TraceCheckUtils]: 42: Hoare triple {4511#(< ~counter~0 5)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {4297#true} is VALID [2022-04-15 09:18:34,781 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {4297#true} {4511#(< ~counter~0 5)} #84#return; {4511#(< ~counter~0 5)} is VALID [2022-04-15 09:18:34,781 INFO L290 TraceCheckUtils]: 40: Hoare triple {4297#true} assume true; {4297#true} is VALID [2022-04-15 09:18:34,781 INFO L290 TraceCheckUtils]: 39: Hoare triple {4297#true} assume !(0 == ~cond); {4297#true} is VALID [2022-04-15 09:18:34,781 INFO L290 TraceCheckUtils]: 38: Hoare triple {4297#true} ~cond := #in~cond; {4297#true} is VALID [2022-04-15 09:18:34,781 INFO L272 TraceCheckUtils]: 37: Hoare triple {4511#(< ~counter~0 5)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {4297#true} is VALID [2022-04-15 09:18:34,781 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {4297#true} {4511#(< ~counter~0 5)} #82#return; {4511#(< ~counter~0 5)} is VALID [2022-04-15 09:18:34,782 INFO L290 TraceCheckUtils]: 35: Hoare triple {4297#true} assume true; {4297#true} is VALID [2022-04-15 09:18:34,782 INFO L290 TraceCheckUtils]: 34: Hoare triple {4297#true} assume !(0 == ~cond); {4297#true} is VALID [2022-04-15 09:18:34,782 INFO L290 TraceCheckUtils]: 33: Hoare triple {4297#true} ~cond := #in~cond; {4297#true} is VALID [2022-04-15 09:18:34,782 INFO L272 TraceCheckUtils]: 32: Hoare triple {4511#(< ~counter~0 5)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {4297#true} is VALID [2022-04-15 09:18:34,783 INFO L290 TraceCheckUtils]: 31: Hoare triple {4511#(< ~counter~0 5)} assume !!(#t~post6 < 5);havoc #t~post6; {4511#(< ~counter~0 5)} is VALID [2022-04-15 09:18:34,783 INFO L290 TraceCheckUtils]: 30: Hoare triple {4566#(< ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4511#(< ~counter~0 5)} is VALID [2022-04-15 09:18:34,784 INFO L290 TraceCheckUtils]: 29: Hoare triple {4566#(< ~counter~0 4)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {4566#(< ~counter~0 4)} is VALID [2022-04-15 09:18:34,784 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {4297#true} {4566#(< ~counter~0 4)} #86#return; {4566#(< ~counter~0 4)} is VALID [2022-04-15 09:18:34,784 INFO L290 TraceCheckUtils]: 27: Hoare triple {4297#true} assume true; {4297#true} is VALID [2022-04-15 09:18:34,784 INFO L290 TraceCheckUtils]: 26: Hoare triple {4297#true} assume !(0 == ~cond); {4297#true} is VALID [2022-04-15 09:18:34,784 INFO L290 TraceCheckUtils]: 25: Hoare triple {4297#true} ~cond := #in~cond; {4297#true} is VALID [2022-04-15 09:18:34,784 INFO L272 TraceCheckUtils]: 24: Hoare triple {4566#(< ~counter~0 4)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {4297#true} is VALID [2022-04-15 09:18:34,785 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4297#true} {4566#(< ~counter~0 4)} #84#return; {4566#(< ~counter~0 4)} is VALID [2022-04-15 09:18:34,785 INFO L290 TraceCheckUtils]: 22: Hoare triple {4297#true} assume true; {4297#true} is VALID [2022-04-15 09:18:34,785 INFO L290 TraceCheckUtils]: 21: Hoare triple {4297#true} assume !(0 == ~cond); {4297#true} is VALID [2022-04-15 09:18:34,785 INFO L290 TraceCheckUtils]: 20: Hoare triple {4297#true} ~cond := #in~cond; {4297#true} is VALID [2022-04-15 09:18:34,785 INFO L272 TraceCheckUtils]: 19: Hoare triple {4566#(< ~counter~0 4)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {4297#true} is VALID [2022-04-15 09:18:34,785 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4297#true} {4566#(< ~counter~0 4)} #82#return; {4566#(< ~counter~0 4)} is VALID [2022-04-15 09:18:34,785 INFO L290 TraceCheckUtils]: 17: Hoare triple {4297#true} assume true; {4297#true} is VALID [2022-04-15 09:18:34,785 INFO L290 TraceCheckUtils]: 16: Hoare triple {4297#true} assume !(0 == ~cond); {4297#true} is VALID [2022-04-15 09:18:34,785 INFO L290 TraceCheckUtils]: 15: Hoare triple {4297#true} ~cond := #in~cond; {4297#true} is VALID [2022-04-15 09:18:34,786 INFO L272 TraceCheckUtils]: 14: Hoare triple {4566#(< ~counter~0 4)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {4297#true} is VALID [2022-04-15 09:18:34,786 INFO L290 TraceCheckUtils]: 13: Hoare triple {4566#(< ~counter~0 4)} assume !!(#t~post6 < 5);havoc #t~post6; {4566#(< ~counter~0 4)} is VALID [2022-04-15 09:18:34,786 INFO L290 TraceCheckUtils]: 12: Hoare triple {4394#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4566#(< ~counter~0 4)} is VALID [2022-04-15 09:18:34,786 INFO L290 TraceCheckUtils]: 11: Hoare triple {4394#(<= ~counter~0 2)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:34,787 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4297#true} {4394#(<= ~counter~0 2)} #80#return; {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:34,787 INFO L290 TraceCheckUtils]: 9: Hoare triple {4297#true} assume true; {4297#true} is VALID [2022-04-15 09:18:34,787 INFO L290 TraceCheckUtils]: 8: Hoare triple {4297#true} assume !(0 == ~cond); {4297#true} is VALID [2022-04-15 09:18:34,787 INFO L290 TraceCheckUtils]: 7: Hoare triple {4297#true} ~cond := #in~cond; {4297#true} is VALID [2022-04-15 09:18:34,787 INFO L272 TraceCheckUtils]: 6: Hoare triple {4394#(<= ~counter~0 2)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {4297#true} is VALID [2022-04-15 09:18:34,787 INFO L290 TraceCheckUtils]: 5: Hoare triple {4394#(<= ~counter~0 2)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:34,788 INFO L272 TraceCheckUtils]: 4: Hoare triple {4394#(<= ~counter~0 2)} call #t~ret8 := main(); {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:34,788 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4394#(<= ~counter~0 2)} {4297#true} #96#return; {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:34,788 INFO L290 TraceCheckUtils]: 2: Hoare triple {4394#(<= ~counter~0 2)} assume true; {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:34,788 INFO L290 TraceCheckUtils]: 1: Hoare triple {4297#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);~counter~0 := 0; {4394#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:34,789 INFO L272 TraceCheckUtils]: 0: Hoare triple {4297#true} call ULTIMATE.init(); {4297#true} is VALID [2022-04-15 09:18:34,789 INFO L134 CoverageAnalysis]: Checked inductivity of 104 backedges. 14 proven. 6 refuted. 0 times theorem prover too weak. 84 trivial. 0 not checked. [2022-04-15 09:18:34,789 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:18:34,789 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1368035549] [2022-04-15 09:18:34,789 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:18:34,789 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1074826186] [2022-04-15 09:18:34,789 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1074826186] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:18:34,789 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:18:34,789 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 9 [2022-04-15 09:18:34,789 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:18:34,789 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1279575286] [2022-04-15 09:18:34,789 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1279575286] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:18:34,790 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:18:34,790 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 09:18:34,790 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [458287325] [2022-04-15 09:18:34,790 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:18:34,790 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 4 states have call predecessors, (9), 5 states have call successors, (9) Word has length 59 [2022-04-15 09:18:34,790 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:18:34,790 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 4 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-15 09:18:34,821 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 09:18:34,821 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 09:18:34,821 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:18:34,822 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 09:18:34,822 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=46, Unknown=0, NotChecked=0, Total=72 [2022-04-15 09:18:34,822 INFO L87 Difference]: Start difference. First operand 79 states and 94 transitions. Second operand has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 4 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-15 09:18:35,070 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:35,070 INFO L93 Difference]: Finished difference Result 110 states and 126 transitions. [2022-04-15 09:18:35,070 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-15 09:18:35,070 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 4 states have call predecessors, (9), 5 states have call successors, (9) Word has length 59 [2022-04-15 09:18:35,070 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:18:35,070 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 4 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-15 09:18:35,071 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 79 transitions. [2022-04-15 09:18:35,071 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 4 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-15 09:18:35,072 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 79 transitions. [2022-04-15 09:18:35,072 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 79 transitions. [2022-04-15 09:18:35,125 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:18:35,126 INFO L225 Difference]: With dead ends: 110 [2022-04-15 09:18:35,126 INFO L226 Difference]: Without dead ends: 98 [2022-04-15 09:18:35,127 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 117 GetRequests, 109 SyntacticMatches, 1 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=26, Invalid=46, Unknown=0, NotChecked=0, Total=72 [2022-04-15 09:18:35,127 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 14 mSDsluCounter, 84 mSDsCounter, 0 mSdLazyCounter, 27 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 129 SdHoareTripleChecker+Invalid, 37 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 27 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 09:18:35,127 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 129 Invalid, 37 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 27 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 09:18:35,128 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 98 states. [2022-04-15 09:18:35,180 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 98 to 97. [2022-04-15 09:18:35,181 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:18:35,181 INFO L82 GeneralOperation]: Start isEquivalent. First operand 98 states. Second operand has 97 states, 62 states have (on average 1.1774193548387097) internal successors, (73), 65 states have internal predecessors, (73), 21 states have call successors, (21), 14 states have call predecessors, (21), 13 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-15 09:18:35,181 INFO L74 IsIncluded]: Start isIncluded. First operand 98 states. Second operand has 97 states, 62 states have (on average 1.1774193548387097) internal successors, (73), 65 states have internal predecessors, (73), 21 states have call successors, (21), 14 states have call predecessors, (21), 13 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-15 09:18:35,181 INFO L87 Difference]: Start difference. First operand 98 states. Second operand has 97 states, 62 states have (on average 1.1774193548387097) internal successors, (73), 65 states have internal predecessors, (73), 21 states have call successors, (21), 14 states have call predecessors, (21), 13 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-15 09:18:35,183 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:35,183 INFO L93 Difference]: Finished difference Result 98 states and 114 transitions. [2022-04-15 09:18:35,183 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 114 transitions. [2022-04-15 09:18:35,183 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:18:35,183 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:18:35,183 INFO L74 IsIncluded]: Start isIncluded. First operand has 97 states, 62 states have (on average 1.1774193548387097) internal successors, (73), 65 states have internal predecessors, (73), 21 states have call successors, (21), 14 states have call predecessors, (21), 13 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) Second operand 98 states. [2022-04-15 09:18:35,184 INFO L87 Difference]: Start difference. First operand has 97 states, 62 states have (on average 1.1774193548387097) internal successors, (73), 65 states have internal predecessors, (73), 21 states have call successors, (21), 14 states have call predecessors, (21), 13 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) Second operand 98 states. [2022-04-15 09:18:35,185 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:35,185 INFO L93 Difference]: Finished difference Result 98 states and 114 transitions. [2022-04-15 09:18:35,185 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 114 transitions. [2022-04-15 09:18:35,185 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:18:35,185 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:18:35,185 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:18:35,185 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:18:35,186 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 97 states, 62 states have (on average 1.1774193548387097) internal successors, (73), 65 states have internal predecessors, (73), 21 states have call successors, (21), 14 states have call predecessors, (21), 13 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-15 09:18:35,187 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 97 states to 97 states and 113 transitions. [2022-04-15 09:18:35,187 INFO L78 Accepts]: Start accepts. Automaton has 97 states and 113 transitions. Word has length 59 [2022-04-15 09:18:35,187 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:18:35,187 INFO L478 AbstractCegarLoop]: Abstraction has 97 states and 113 transitions. [2022-04-15 09:18:35,187 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 4.333333333333333) internal successors, (26), 5 states have internal predecessors, (26), 5 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 4 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-15 09:18:35,187 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 97 states and 113 transitions. [2022-04-15 09:18:35,283 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 113 edges. 113 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:18:35,283 INFO L276 IsEmpty]: Start isEmpty. Operand 97 states and 113 transitions. [2022-04-15 09:18:35,284 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 62 [2022-04-15 09:18:35,284 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:18:35,284 INFO L499 BasicCegarLoop]: trace histogram [8, 7, 7, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:18:35,299 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 09:18:35,489 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 09:18:35,489 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:18:35,490 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:18:35,490 INFO L85 PathProgramCache]: Analyzing trace with hash 940283669, now seen corresponding path program 3 times [2022-04-15 09:18:35,490 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:18:35,490 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1516720944] [2022-04-15 09:18:40,869 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:18:40,869 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:18:40,869 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:18:40,869 INFO L85 PathProgramCache]: Analyzing trace with hash 940283669, now seen corresponding path program 4 times [2022-04-15 09:18:40,869 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:18:40,869 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [265800825] [2022-04-15 09:18:40,870 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:18:40,870 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:18:40,893 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:18:40,893 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1066919587] [2022-04-15 09:18:40,893 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 09:18:40,893 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:18:40,893 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:18:40,895 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 09:18:40,896 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 09:18:40,937 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 09:18:40,937 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:18:40,937 INFO L263 TraceCheckSpWp]: Trace formula consists of 170 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-15 09:18:40,947 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:18:40,949 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:18:41,186 INFO L272 TraceCheckUtils]: 0: Hoare triple {5269#true} call ULTIMATE.init(); {5269#true} is VALID [2022-04-15 09:18:41,191 INFO L290 TraceCheckUtils]: 1: Hoare triple {5269#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);~counter~0 := 0; {5277#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:41,191 INFO L290 TraceCheckUtils]: 2: Hoare triple {5277#(<= ~counter~0 0)} assume true; {5277#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:41,192 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5277#(<= ~counter~0 0)} {5269#true} #96#return; {5277#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:41,192 INFO L272 TraceCheckUtils]: 4: Hoare triple {5277#(<= ~counter~0 0)} call #t~ret8 := main(); {5277#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:41,192 INFO L290 TraceCheckUtils]: 5: Hoare triple {5277#(<= ~counter~0 0)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {5277#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:41,193 INFO L272 TraceCheckUtils]: 6: Hoare triple {5277#(<= ~counter~0 0)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {5277#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:41,193 INFO L290 TraceCheckUtils]: 7: Hoare triple {5277#(<= ~counter~0 0)} ~cond := #in~cond; {5277#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:41,193 INFO L290 TraceCheckUtils]: 8: Hoare triple {5277#(<= ~counter~0 0)} assume !(0 == ~cond); {5277#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:41,194 INFO L290 TraceCheckUtils]: 9: Hoare triple {5277#(<= ~counter~0 0)} assume true; {5277#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:41,194 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5277#(<= ~counter~0 0)} {5277#(<= ~counter~0 0)} #80#return; {5277#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:41,194 INFO L290 TraceCheckUtils]: 11: Hoare triple {5277#(<= ~counter~0 0)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {5277#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:41,195 INFO L290 TraceCheckUtils]: 12: Hoare triple {5277#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5311#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:41,195 INFO L290 TraceCheckUtils]: 13: Hoare triple {5311#(<= ~counter~0 1)} assume !!(#t~post6 < 5);havoc #t~post6; {5311#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:41,195 INFO L272 TraceCheckUtils]: 14: Hoare triple {5311#(<= ~counter~0 1)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {5311#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:41,196 INFO L290 TraceCheckUtils]: 15: Hoare triple {5311#(<= ~counter~0 1)} ~cond := #in~cond; {5311#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:41,196 INFO L290 TraceCheckUtils]: 16: Hoare triple {5311#(<= ~counter~0 1)} assume !(0 == ~cond); {5311#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:41,196 INFO L290 TraceCheckUtils]: 17: Hoare triple {5311#(<= ~counter~0 1)} assume true; {5311#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:41,197 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {5311#(<= ~counter~0 1)} {5311#(<= ~counter~0 1)} #82#return; {5311#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:41,197 INFO L272 TraceCheckUtils]: 19: Hoare triple {5311#(<= ~counter~0 1)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {5311#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:41,197 INFO L290 TraceCheckUtils]: 20: Hoare triple {5311#(<= ~counter~0 1)} ~cond := #in~cond; {5311#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:41,198 INFO L290 TraceCheckUtils]: 21: Hoare triple {5311#(<= ~counter~0 1)} assume !(0 == ~cond); {5311#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:41,198 INFO L290 TraceCheckUtils]: 22: Hoare triple {5311#(<= ~counter~0 1)} assume true; {5311#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:41,198 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {5311#(<= ~counter~0 1)} {5311#(<= ~counter~0 1)} #84#return; {5311#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:41,199 INFO L272 TraceCheckUtils]: 24: Hoare triple {5311#(<= ~counter~0 1)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {5311#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:41,199 INFO L290 TraceCheckUtils]: 25: Hoare triple {5311#(<= ~counter~0 1)} ~cond := #in~cond; {5311#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:41,199 INFO L290 TraceCheckUtils]: 26: Hoare triple {5311#(<= ~counter~0 1)} assume !(0 == ~cond); {5311#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:41,200 INFO L290 TraceCheckUtils]: 27: Hoare triple {5311#(<= ~counter~0 1)} assume true; {5311#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:41,200 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {5311#(<= ~counter~0 1)} {5311#(<= ~counter~0 1)} #86#return; {5311#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:41,200 INFO L290 TraceCheckUtils]: 29: Hoare triple {5311#(<= ~counter~0 1)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {5311#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:41,201 INFO L290 TraceCheckUtils]: 30: Hoare triple {5311#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5366#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:41,201 INFO L290 TraceCheckUtils]: 31: Hoare triple {5366#(<= ~counter~0 2)} assume !!(#t~post6 < 5);havoc #t~post6; {5366#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:41,201 INFO L272 TraceCheckUtils]: 32: Hoare triple {5366#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {5366#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:41,202 INFO L290 TraceCheckUtils]: 33: Hoare triple {5366#(<= ~counter~0 2)} ~cond := #in~cond; {5366#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:41,202 INFO L290 TraceCheckUtils]: 34: Hoare triple {5366#(<= ~counter~0 2)} assume !(0 == ~cond); {5366#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:41,202 INFO L290 TraceCheckUtils]: 35: Hoare triple {5366#(<= ~counter~0 2)} assume true; {5366#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:41,203 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {5366#(<= ~counter~0 2)} {5366#(<= ~counter~0 2)} #82#return; {5366#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:41,203 INFO L272 TraceCheckUtils]: 37: Hoare triple {5366#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {5366#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:41,204 INFO L290 TraceCheckUtils]: 38: Hoare triple {5366#(<= ~counter~0 2)} ~cond := #in~cond; {5366#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:41,204 INFO L290 TraceCheckUtils]: 39: Hoare triple {5366#(<= ~counter~0 2)} assume !(0 == ~cond); {5366#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:41,204 INFO L290 TraceCheckUtils]: 40: Hoare triple {5366#(<= ~counter~0 2)} assume true; {5366#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:41,205 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {5366#(<= ~counter~0 2)} {5366#(<= ~counter~0 2)} #84#return; {5366#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:41,205 INFO L272 TraceCheckUtils]: 42: Hoare triple {5366#(<= ~counter~0 2)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {5366#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:41,206 INFO L290 TraceCheckUtils]: 43: Hoare triple {5366#(<= ~counter~0 2)} ~cond := #in~cond; {5366#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:41,206 INFO L290 TraceCheckUtils]: 44: Hoare triple {5366#(<= ~counter~0 2)} assume !(0 == ~cond); {5366#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:41,206 INFO L290 TraceCheckUtils]: 45: Hoare triple {5366#(<= ~counter~0 2)} assume true; {5366#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:41,207 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {5366#(<= ~counter~0 2)} {5366#(<= ~counter~0 2)} #86#return; {5366#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:41,207 INFO L290 TraceCheckUtils]: 47: Hoare triple {5366#(<= ~counter~0 2)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {5366#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:41,207 INFO L290 TraceCheckUtils]: 48: Hoare triple {5366#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5421#(<= |main_#t~post6| 2)} is VALID [2022-04-15 09:18:41,208 INFO L290 TraceCheckUtils]: 49: Hoare triple {5421#(<= |main_#t~post6| 2)} assume !(#t~post6 < 5);havoc #t~post6; {5270#false} is VALID [2022-04-15 09:18:41,208 INFO L290 TraceCheckUtils]: 50: Hoare triple {5270#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5270#false} is VALID [2022-04-15 09:18:41,208 INFO L290 TraceCheckUtils]: 51: Hoare triple {5270#false} assume !(#t~post7 < 5);havoc #t~post7; {5270#false} is VALID [2022-04-15 09:18:41,208 INFO L272 TraceCheckUtils]: 52: Hoare triple {5270#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {5270#false} is VALID [2022-04-15 09:18:41,208 INFO L290 TraceCheckUtils]: 53: Hoare triple {5270#false} ~cond := #in~cond; {5270#false} is VALID [2022-04-15 09:18:41,208 INFO L290 TraceCheckUtils]: 54: Hoare triple {5270#false} assume !(0 == ~cond); {5270#false} is VALID [2022-04-15 09:18:41,208 INFO L290 TraceCheckUtils]: 55: Hoare triple {5270#false} assume true; {5270#false} is VALID [2022-04-15 09:18:41,208 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {5270#false} {5270#false} #92#return; {5270#false} is VALID [2022-04-15 09:18:41,208 INFO L272 TraceCheckUtils]: 57: Hoare triple {5270#false} call __VERIFIER_assert((if ~B~0 % 4294967296 == ~d~0 then 1 else 0)); {5270#false} is VALID [2022-04-15 09:18:41,208 INFO L290 TraceCheckUtils]: 58: Hoare triple {5270#false} ~cond := #in~cond; {5270#false} is VALID [2022-04-15 09:18:41,208 INFO L290 TraceCheckUtils]: 59: Hoare triple {5270#false} assume 0 == ~cond; {5270#false} is VALID [2022-04-15 09:18:41,208 INFO L290 TraceCheckUtils]: 60: Hoare triple {5270#false} assume !false; {5270#false} is VALID [2022-04-15 09:18:41,209 INFO L134 CoverageAnalysis]: Checked inductivity of 108 backedges. 36 proven. 46 refuted. 0 times theorem prover too weak. 26 trivial. 0 not checked. [2022-04-15 09:18:41,209 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:18:41,442 INFO L290 TraceCheckUtils]: 60: Hoare triple {5270#false} assume !false; {5270#false} is VALID [2022-04-15 09:18:41,442 INFO L290 TraceCheckUtils]: 59: Hoare triple {5270#false} assume 0 == ~cond; {5270#false} is VALID [2022-04-15 09:18:41,443 INFO L290 TraceCheckUtils]: 58: Hoare triple {5270#false} ~cond := #in~cond; {5270#false} is VALID [2022-04-15 09:18:41,443 INFO L272 TraceCheckUtils]: 57: Hoare triple {5270#false} call __VERIFIER_assert((if ~B~0 % 4294967296 == ~d~0 then 1 else 0)); {5270#false} is VALID [2022-04-15 09:18:41,443 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {5269#true} {5270#false} #92#return; {5270#false} is VALID [2022-04-15 09:18:41,443 INFO L290 TraceCheckUtils]: 55: Hoare triple {5269#true} assume true; {5269#true} is VALID [2022-04-15 09:18:41,443 INFO L290 TraceCheckUtils]: 54: Hoare triple {5269#true} assume !(0 == ~cond); {5269#true} is VALID [2022-04-15 09:18:41,443 INFO L290 TraceCheckUtils]: 53: Hoare triple {5269#true} ~cond := #in~cond; {5269#true} is VALID [2022-04-15 09:18:41,443 INFO L272 TraceCheckUtils]: 52: Hoare triple {5270#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {5269#true} is VALID [2022-04-15 09:18:41,443 INFO L290 TraceCheckUtils]: 51: Hoare triple {5270#false} assume !(#t~post7 < 5);havoc #t~post7; {5270#false} is VALID [2022-04-15 09:18:41,443 INFO L290 TraceCheckUtils]: 50: Hoare triple {5270#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5270#false} is VALID [2022-04-15 09:18:41,443 INFO L290 TraceCheckUtils]: 49: Hoare triple {5491#(< |main_#t~post6| 5)} assume !(#t~post6 < 5);havoc #t~post6; {5270#false} is VALID [2022-04-15 09:18:41,444 INFO L290 TraceCheckUtils]: 48: Hoare triple {5495#(< ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5491#(< |main_#t~post6| 5)} is VALID [2022-04-15 09:18:41,444 INFO L290 TraceCheckUtils]: 47: Hoare triple {5495#(< ~counter~0 5)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {5495#(< ~counter~0 5)} is VALID [2022-04-15 09:18:41,444 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {5269#true} {5495#(< ~counter~0 5)} #86#return; {5495#(< ~counter~0 5)} is VALID [2022-04-15 09:18:41,444 INFO L290 TraceCheckUtils]: 45: Hoare triple {5269#true} assume true; {5269#true} is VALID [2022-04-15 09:18:41,445 INFO L290 TraceCheckUtils]: 44: Hoare triple {5269#true} assume !(0 == ~cond); {5269#true} is VALID [2022-04-15 09:18:41,445 INFO L290 TraceCheckUtils]: 43: Hoare triple {5269#true} ~cond := #in~cond; {5269#true} is VALID [2022-04-15 09:18:41,445 INFO L272 TraceCheckUtils]: 42: Hoare triple {5495#(< ~counter~0 5)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {5269#true} is VALID [2022-04-15 09:18:41,445 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {5269#true} {5495#(< ~counter~0 5)} #84#return; {5495#(< ~counter~0 5)} is VALID [2022-04-15 09:18:41,445 INFO L290 TraceCheckUtils]: 40: Hoare triple {5269#true} assume true; {5269#true} is VALID [2022-04-15 09:18:41,445 INFO L290 TraceCheckUtils]: 39: Hoare triple {5269#true} assume !(0 == ~cond); {5269#true} is VALID [2022-04-15 09:18:41,445 INFO L290 TraceCheckUtils]: 38: Hoare triple {5269#true} ~cond := #in~cond; {5269#true} is VALID [2022-04-15 09:18:41,445 INFO L272 TraceCheckUtils]: 37: Hoare triple {5495#(< ~counter~0 5)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {5269#true} is VALID [2022-04-15 09:18:41,446 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {5269#true} {5495#(< ~counter~0 5)} #82#return; {5495#(< ~counter~0 5)} is VALID [2022-04-15 09:18:41,446 INFO L290 TraceCheckUtils]: 35: Hoare triple {5269#true} assume true; {5269#true} is VALID [2022-04-15 09:18:41,446 INFO L290 TraceCheckUtils]: 34: Hoare triple {5269#true} assume !(0 == ~cond); {5269#true} is VALID [2022-04-15 09:18:41,446 INFO L290 TraceCheckUtils]: 33: Hoare triple {5269#true} ~cond := #in~cond; {5269#true} is VALID [2022-04-15 09:18:41,446 INFO L272 TraceCheckUtils]: 32: Hoare triple {5495#(< ~counter~0 5)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {5269#true} is VALID [2022-04-15 09:18:41,446 INFO L290 TraceCheckUtils]: 31: Hoare triple {5495#(< ~counter~0 5)} assume !!(#t~post6 < 5);havoc #t~post6; {5495#(< ~counter~0 5)} is VALID [2022-04-15 09:18:41,447 INFO L290 TraceCheckUtils]: 30: Hoare triple {5550#(< ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5495#(< ~counter~0 5)} is VALID [2022-04-15 09:18:41,447 INFO L290 TraceCheckUtils]: 29: Hoare triple {5550#(< ~counter~0 4)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {5550#(< ~counter~0 4)} is VALID [2022-04-15 09:18:41,447 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {5269#true} {5550#(< ~counter~0 4)} #86#return; {5550#(< ~counter~0 4)} is VALID [2022-04-15 09:18:41,447 INFO L290 TraceCheckUtils]: 27: Hoare triple {5269#true} assume true; {5269#true} is VALID [2022-04-15 09:18:41,447 INFO L290 TraceCheckUtils]: 26: Hoare triple {5269#true} assume !(0 == ~cond); {5269#true} is VALID [2022-04-15 09:18:41,447 INFO L290 TraceCheckUtils]: 25: Hoare triple {5269#true} ~cond := #in~cond; {5269#true} is VALID [2022-04-15 09:18:41,448 INFO L272 TraceCheckUtils]: 24: Hoare triple {5550#(< ~counter~0 4)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {5269#true} is VALID [2022-04-15 09:18:41,448 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {5269#true} {5550#(< ~counter~0 4)} #84#return; {5550#(< ~counter~0 4)} is VALID [2022-04-15 09:18:41,448 INFO L290 TraceCheckUtils]: 22: Hoare triple {5269#true} assume true; {5269#true} is VALID [2022-04-15 09:18:41,448 INFO L290 TraceCheckUtils]: 21: Hoare triple {5269#true} assume !(0 == ~cond); {5269#true} is VALID [2022-04-15 09:18:41,448 INFO L290 TraceCheckUtils]: 20: Hoare triple {5269#true} ~cond := #in~cond; {5269#true} is VALID [2022-04-15 09:18:41,448 INFO L272 TraceCheckUtils]: 19: Hoare triple {5550#(< ~counter~0 4)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {5269#true} is VALID [2022-04-15 09:18:41,449 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {5269#true} {5550#(< ~counter~0 4)} #82#return; {5550#(< ~counter~0 4)} is VALID [2022-04-15 09:18:41,449 INFO L290 TraceCheckUtils]: 17: Hoare triple {5269#true} assume true; {5269#true} is VALID [2022-04-15 09:18:41,449 INFO L290 TraceCheckUtils]: 16: Hoare triple {5269#true} assume !(0 == ~cond); {5269#true} is VALID [2022-04-15 09:18:41,449 INFO L290 TraceCheckUtils]: 15: Hoare triple {5269#true} ~cond := #in~cond; {5269#true} is VALID [2022-04-15 09:18:41,449 INFO L272 TraceCheckUtils]: 14: Hoare triple {5550#(< ~counter~0 4)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {5269#true} is VALID [2022-04-15 09:18:41,449 INFO L290 TraceCheckUtils]: 13: Hoare triple {5550#(< ~counter~0 4)} assume !!(#t~post6 < 5);havoc #t~post6; {5550#(< ~counter~0 4)} is VALID [2022-04-15 09:18:41,449 INFO L290 TraceCheckUtils]: 12: Hoare triple {5366#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5550#(< ~counter~0 4)} is VALID [2022-04-15 09:18:41,450 INFO L290 TraceCheckUtils]: 11: Hoare triple {5366#(<= ~counter~0 2)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {5366#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:41,450 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5269#true} {5366#(<= ~counter~0 2)} #80#return; {5366#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:41,450 INFO L290 TraceCheckUtils]: 9: Hoare triple {5269#true} assume true; {5269#true} is VALID [2022-04-15 09:18:41,450 INFO L290 TraceCheckUtils]: 8: Hoare triple {5269#true} assume !(0 == ~cond); {5269#true} is VALID [2022-04-15 09:18:41,450 INFO L290 TraceCheckUtils]: 7: Hoare triple {5269#true} ~cond := #in~cond; {5269#true} is VALID [2022-04-15 09:18:41,450 INFO L272 TraceCheckUtils]: 6: Hoare triple {5366#(<= ~counter~0 2)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {5269#true} is VALID [2022-04-15 09:18:41,451 INFO L290 TraceCheckUtils]: 5: Hoare triple {5366#(<= ~counter~0 2)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {5366#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:41,451 INFO L272 TraceCheckUtils]: 4: Hoare triple {5366#(<= ~counter~0 2)} call #t~ret8 := main(); {5366#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:41,451 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5366#(<= ~counter~0 2)} {5269#true} #96#return; {5366#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:41,451 INFO L290 TraceCheckUtils]: 2: Hoare triple {5366#(<= ~counter~0 2)} assume true; {5366#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:41,452 INFO L290 TraceCheckUtils]: 1: Hoare triple {5269#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);~counter~0 := 0; {5366#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:41,452 INFO L272 TraceCheckUtils]: 0: Hoare triple {5269#true} call ULTIMATE.init(); {5269#true} is VALID [2022-04-15 09:18:41,452 INFO L134 CoverageAnalysis]: Checked inductivity of 108 backedges. 14 proven. 10 refuted. 0 times theorem prover too weak. 84 trivial. 0 not checked. [2022-04-15 09:18:41,452 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:18:41,452 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [265800825] [2022-04-15 09:18:41,452 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:18:41,452 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1066919587] [2022-04-15 09:18:41,452 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1066919587] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:18:41,452 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:18:41,453 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 9 [2022-04-15 09:18:41,453 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:18:41,453 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1516720944] [2022-04-15 09:18:41,453 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1516720944] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:18:41,453 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:18:41,453 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-15 09:18:41,453 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1245988413] [2022-04-15 09:18:41,453 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:18:41,453 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 4 states have call predecessors, (9), 5 states have call successors, (9) Word has length 61 [2022-04-15 09:18:41,454 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:18:41,454 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 4 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-15 09:18:41,486 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 09:18:41,486 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-15 09:18:41,486 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:18:41,486 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-15 09:18:41,486 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=46, Unknown=0, NotChecked=0, Total=72 [2022-04-15 09:18:41,486 INFO L87 Difference]: Start difference. First operand 97 states and 113 transitions. Second operand has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 4 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-15 09:18:41,675 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:41,675 INFO L93 Difference]: Finished difference Result 132 states and 161 transitions. [2022-04-15 09:18:41,675 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-15 09:18:41,675 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 4 states have call predecessors, (9), 5 states have call successors, (9) Word has length 61 [2022-04-15 09:18:41,675 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:18:41,675 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 4 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-15 09:18:41,676 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 90 transitions. [2022-04-15 09:18:41,677 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 4 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-15 09:18:41,691 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 90 transitions. [2022-04-15 09:18:41,691 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 90 transitions. [2022-04-15 09:18:41,760 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 90 edges. 90 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:18:41,762 INFO L225 Difference]: With dead ends: 132 [2022-04-15 09:18:41,762 INFO L226 Difference]: Without dead ends: 99 [2022-04-15 09:18:41,762 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 123 GetRequests, 113 SyntacticMatches, 1 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=42, Invalid=68, Unknown=0, NotChecked=0, Total=110 [2022-04-15 09:18:41,762 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 13 mSDsluCounter, 81 mSDsCounter, 0 mSdLazyCounter, 26 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 13 SdHoareTripleChecker+Valid, 126 SdHoareTripleChecker+Invalid, 36 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 26 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 09:18:41,762 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [13 Valid, 126 Invalid, 36 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 26 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 09:18:41,763 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 99 states. [2022-04-15 09:18:41,828 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 99 to 99. [2022-04-15 09:18:41,828 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:18:41,828 INFO L82 GeneralOperation]: Start isEquivalent. First operand 99 states. Second operand has 99 states, 64 states have (on average 1.171875) internal successors, (75), 67 states have internal predecessors, (75), 21 states have call successors, (21), 14 states have call predecessors, (21), 13 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-15 09:18:41,828 INFO L74 IsIncluded]: Start isIncluded. First operand 99 states. Second operand has 99 states, 64 states have (on average 1.171875) internal successors, (75), 67 states have internal predecessors, (75), 21 states have call successors, (21), 14 states have call predecessors, (21), 13 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-15 09:18:41,829 INFO L87 Difference]: Start difference. First operand 99 states. Second operand has 99 states, 64 states have (on average 1.171875) internal successors, (75), 67 states have internal predecessors, (75), 21 states have call successors, (21), 14 states have call predecessors, (21), 13 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-15 09:18:41,830 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:41,830 INFO L93 Difference]: Finished difference Result 99 states and 115 transitions. [2022-04-15 09:18:41,830 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 115 transitions. [2022-04-15 09:18:41,830 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:18:41,831 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:18:41,831 INFO L74 IsIncluded]: Start isIncluded. First operand has 99 states, 64 states have (on average 1.171875) internal successors, (75), 67 states have internal predecessors, (75), 21 states have call successors, (21), 14 states have call predecessors, (21), 13 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) Second operand 99 states. [2022-04-15 09:18:41,831 INFO L87 Difference]: Start difference. First operand has 99 states, 64 states have (on average 1.171875) internal successors, (75), 67 states have internal predecessors, (75), 21 states have call successors, (21), 14 states have call predecessors, (21), 13 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) Second operand 99 states. [2022-04-15 09:18:41,832 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:41,832 INFO L93 Difference]: Finished difference Result 99 states and 115 transitions. [2022-04-15 09:18:41,832 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 115 transitions. [2022-04-15 09:18:41,833 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:18:41,833 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:18:41,833 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:18:41,833 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:18:41,833 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 99 states, 64 states have (on average 1.171875) internal successors, (75), 67 states have internal predecessors, (75), 21 states have call successors, (21), 14 states have call predecessors, (21), 13 states have return successors, (19), 17 states have call predecessors, (19), 19 states have call successors, (19) [2022-04-15 09:18:41,834 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 99 states to 99 states and 115 transitions. [2022-04-15 09:18:41,834 INFO L78 Accepts]: Start accepts. Automaton has 99 states and 115 transitions. Word has length 61 [2022-04-15 09:18:41,834 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:18:41,834 INFO L478 AbstractCegarLoop]: Abstraction has 99 states and 115 transitions. [2022-04-15 09:18:41,835 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 4.666666666666667) internal successors, (28), 5 states have internal predecessors, (28), 5 states have call successors, (11), 5 states have call predecessors, (11), 4 states have return successors, (9), 4 states have call predecessors, (9), 5 states have call successors, (9) [2022-04-15 09:18:41,835 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 99 states and 115 transitions. [2022-04-15 09:18:41,937 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 115 edges. 115 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:18:41,937 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 115 transitions. [2022-04-15 09:18:41,937 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 69 [2022-04-15 09:18:41,937 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:18:41,938 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:18:41,953 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-04-15 09:18:42,138 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 09:18:42,138 INFO L403 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:18:42,139 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:18:42,139 INFO L85 PathProgramCache]: Analyzing trace with hash 1140868055, now seen corresponding path program 1 times [2022-04-15 09:18:42,139 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:18:42,139 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [456712333] [2022-04-15 09:18:49,322 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:18:49,323 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:18:49,323 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:18:49,323 INFO L85 PathProgramCache]: Analyzing trace with hash 1140868055, now seen corresponding path program 2 times [2022-04-15 09:18:49,323 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:18:49,323 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1360198571] [2022-04-15 09:18:49,323 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:18:49,323 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:18:49,334 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:18:49,334 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1560714843] [2022-04-15 09:18:49,334 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 09:18:49,334 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:18:49,334 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:18:49,335 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 09:18:49,360 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 09:18:49,378 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 09:18:49,379 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:18:49,379 INFO L263 TraceCheckSpWp]: Trace formula consists of 185 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-15 09:18:49,390 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:18:49,391 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:18:49,652 INFO L272 TraceCheckUtils]: 0: Hoare triple {6307#true} call ULTIMATE.init(); {6307#true} is VALID [2022-04-15 09:18:49,652 INFO L290 TraceCheckUtils]: 1: Hoare triple {6307#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);~counter~0 := 0; {6315#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:49,652 INFO L290 TraceCheckUtils]: 2: Hoare triple {6315#(<= ~counter~0 0)} assume true; {6315#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:49,653 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6315#(<= ~counter~0 0)} {6307#true} #96#return; {6315#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:49,653 INFO L272 TraceCheckUtils]: 4: Hoare triple {6315#(<= ~counter~0 0)} call #t~ret8 := main(); {6315#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:49,653 INFO L290 TraceCheckUtils]: 5: Hoare triple {6315#(<= ~counter~0 0)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {6315#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:49,654 INFO L272 TraceCheckUtils]: 6: Hoare triple {6315#(<= ~counter~0 0)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {6315#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:49,654 INFO L290 TraceCheckUtils]: 7: Hoare triple {6315#(<= ~counter~0 0)} ~cond := #in~cond; {6315#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:49,654 INFO L290 TraceCheckUtils]: 8: Hoare triple {6315#(<= ~counter~0 0)} assume !(0 == ~cond); {6315#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:49,654 INFO L290 TraceCheckUtils]: 9: Hoare triple {6315#(<= ~counter~0 0)} assume true; {6315#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:49,655 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6315#(<= ~counter~0 0)} {6315#(<= ~counter~0 0)} #80#return; {6315#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:49,655 INFO L290 TraceCheckUtils]: 11: Hoare triple {6315#(<= ~counter~0 0)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {6315#(<= ~counter~0 0)} is VALID [2022-04-15 09:18:49,656 INFO L290 TraceCheckUtils]: 12: Hoare triple {6315#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6349#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:49,656 INFO L290 TraceCheckUtils]: 13: Hoare triple {6349#(<= ~counter~0 1)} assume !!(#t~post6 < 5);havoc #t~post6; {6349#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:49,656 INFO L272 TraceCheckUtils]: 14: Hoare triple {6349#(<= ~counter~0 1)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {6349#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:49,656 INFO L290 TraceCheckUtils]: 15: Hoare triple {6349#(<= ~counter~0 1)} ~cond := #in~cond; {6349#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:49,657 INFO L290 TraceCheckUtils]: 16: Hoare triple {6349#(<= ~counter~0 1)} assume !(0 == ~cond); {6349#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:49,657 INFO L290 TraceCheckUtils]: 17: Hoare triple {6349#(<= ~counter~0 1)} assume true; {6349#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:49,657 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {6349#(<= ~counter~0 1)} {6349#(<= ~counter~0 1)} #82#return; {6349#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:49,658 INFO L272 TraceCheckUtils]: 19: Hoare triple {6349#(<= ~counter~0 1)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {6349#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:49,658 INFO L290 TraceCheckUtils]: 20: Hoare triple {6349#(<= ~counter~0 1)} ~cond := #in~cond; {6349#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:49,658 INFO L290 TraceCheckUtils]: 21: Hoare triple {6349#(<= ~counter~0 1)} assume !(0 == ~cond); {6349#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:49,658 INFO L290 TraceCheckUtils]: 22: Hoare triple {6349#(<= ~counter~0 1)} assume true; {6349#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:49,659 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {6349#(<= ~counter~0 1)} {6349#(<= ~counter~0 1)} #84#return; {6349#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:49,659 INFO L272 TraceCheckUtils]: 24: Hoare triple {6349#(<= ~counter~0 1)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {6349#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:49,659 INFO L290 TraceCheckUtils]: 25: Hoare triple {6349#(<= ~counter~0 1)} ~cond := #in~cond; {6349#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:49,660 INFO L290 TraceCheckUtils]: 26: Hoare triple {6349#(<= ~counter~0 1)} assume !(0 == ~cond); {6349#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:49,660 INFO L290 TraceCheckUtils]: 27: Hoare triple {6349#(<= ~counter~0 1)} assume true; {6349#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:49,660 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {6349#(<= ~counter~0 1)} {6349#(<= ~counter~0 1)} #86#return; {6349#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:49,661 INFO L290 TraceCheckUtils]: 29: Hoare triple {6349#(<= ~counter~0 1)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {6349#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:49,661 INFO L290 TraceCheckUtils]: 30: Hoare triple {6349#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6404#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:49,661 INFO L290 TraceCheckUtils]: 31: Hoare triple {6404#(<= ~counter~0 2)} assume !!(#t~post6 < 5);havoc #t~post6; {6404#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:49,662 INFO L272 TraceCheckUtils]: 32: Hoare triple {6404#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {6404#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:49,662 INFO L290 TraceCheckUtils]: 33: Hoare triple {6404#(<= ~counter~0 2)} ~cond := #in~cond; {6404#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:49,662 INFO L290 TraceCheckUtils]: 34: Hoare triple {6404#(<= ~counter~0 2)} assume !(0 == ~cond); {6404#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:49,667 INFO L290 TraceCheckUtils]: 35: Hoare triple {6404#(<= ~counter~0 2)} assume true; {6404#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:49,667 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {6404#(<= ~counter~0 2)} {6404#(<= ~counter~0 2)} #82#return; {6404#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:49,668 INFO L272 TraceCheckUtils]: 37: Hoare triple {6404#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {6404#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:49,668 INFO L290 TraceCheckUtils]: 38: Hoare triple {6404#(<= ~counter~0 2)} ~cond := #in~cond; {6404#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:49,668 INFO L290 TraceCheckUtils]: 39: Hoare triple {6404#(<= ~counter~0 2)} assume !(0 == ~cond); {6404#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:49,669 INFO L290 TraceCheckUtils]: 40: Hoare triple {6404#(<= ~counter~0 2)} assume true; {6404#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:49,669 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {6404#(<= ~counter~0 2)} {6404#(<= ~counter~0 2)} #84#return; {6404#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:49,669 INFO L272 TraceCheckUtils]: 42: Hoare triple {6404#(<= ~counter~0 2)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {6404#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:49,670 INFO L290 TraceCheckUtils]: 43: Hoare triple {6404#(<= ~counter~0 2)} ~cond := #in~cond; {6404#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:49,670 INFO L290 TraceCheckUtils]: 44: Hoare triple {6404#(<= ~counter~0 2)} assume !(0 == ~cond); {6404#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:49,670 INFO L290 TraceCheckUtils]: 45: Hoare triple {6404#(<= ~counter~0 2)} assume true; {6404#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:49,671 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {6404#(<= ~counter~0 2)} {6404#(<= ~counter~0 2)} #86#return; {6404#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:49,671 INFO L290 TraceCheckUtils]: 47: Hoare triple {6404#(<= ~counter~0 2)} assume !(~r~0 >= ~d~0); {6404#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:49,671 INFO L290 TraceCheckUtils]: 48: Hoare triple {6404#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6459#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:49,671 INFO L290 TraceCheckUtils]: 49: Hoare triple {6459#(<= ~counter~0 3)} assume !!(#t~post7 < 5);havoc #t~post7; {6459#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:49,672 INFO L272 TraceCheckUtils]: 50: Hoare triple {6459#(<= ~counter~0 3)} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {6459#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:49,672 INFO L290 TraceCheckUtils]: 51: Hoare triple {6459#(<= ~counter~0 3)} ~cond := #in~cond; {6459#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:49,672 INFO L290 TraceCheckUtils]: 52: Hoare triple {6459#(<= ~counter~0 3)} assume !(0 == ~cond); {6459#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:49,673 INFO L290 TraceCheckUtils]: 53: Hoare triple {6459#(<= ~counter~0 3)} assume true; {6459#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:49,673 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {6459#(<= ~counter~0 3)} {6459#(<= ~counter~0 3)} #88#return; {6459#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:49,674 INFO L272 TraceCheckUtils]: 55: Hoare triple {6459#(<= ~counter~0 3)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {6459#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:49,674 INFO L290 TraceCheckUtils]: 56: Hoare triple {6459#(<= ~counter~0 3)} ~cond := #in~cond; {6459#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:49,674 INFO L290 TraceCheckUtils]: 57: Hoare triple {6459#(<= ~counter~0 3)} assume !(0 == ~cond); {6459#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:49,674 INFO L290 TraceCheckUtils]: 58: Hoare triple {6459#(<= ~counter~0 3)} assume true; {6459#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:49,675 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {6459#(<= ~counter~0 3)} {6459#(<= ~counter~0 3)} #90#return; {6459#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:49,675 INFO L290 TraceCheckUtils]: 60: Hoare triple {6459#(<= ~counter~0 3)} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {6459#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:49,675 INFO L290 TraceCheckUtils]: 61: Hoare triple {6459#(<= ~counter~0 3)} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {6459#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:49,676 INFO L290 TraceCheckUtils]: 62: Hoare triple {6459#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6502#(<= |main_#t~post7| 3)} is VALID [2022-04-15 09:18:49,676 INFO L290 TraceCheckUtils]: 63: Hoare triple {6502#(<= |main_#t~post7| 3)} assume !(#t~post7 < 5);havoc #t~post7; {6308#false} is VALID [2022-04-15 09:18:49,676 INFO L272 TraceCheckUtils]: 64: Hoare triple {6308#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {6308#false} is VALID [2022-04-15 09:18:49,676 INFO L290 TraceCheckUtils]: 65: Hoare triple {6308#false} ~cond := #in~cond; {6308#false} is VALID [2022-04-15 09:18:49,676 INFO L290 TraceCheckUtils]: 66: Hoare triple {6308#false} assume 0 == ~cond; {6308#false} is VALID [2022-04-15 09:18:49,676 INFO L290 TraceCheckUtils]: 67: Hoare triple {6308#false} assume !false; {6308#false} is VALID [2022-04-15 09:18:49,677 INFO L134 CoverageAnalysis]: Checked inductivity of 136 backedges. 16 proven. 92 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-04-15 09:18:49,677 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:18:49,947 INFO L290 TraceCheckUtils]: 67: Hoare triple {6308#false} assume !false; {6308#false} is VALID [2022-04-15 09:18:49,948 INFO L290 TraceCheckUtils]: 66: Hoare triple {6308#false} assume 0 == ~cond; {6308#false} is VALID [2022-04-15 09:18:49,948 INFO L290 TraceCheckUtils]: 65: Hoare triple {6308#false} ~cond := #in~cond; {6308#false} is VALID [2022-04-15 09:18:49,948 INFO L272 TraceCheckUtils]: 64: Hoare triple {6308#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {6308#false} is VALID [2022-04-15 09:18:49,948 INFO L290 TraceCheckUtils]: 63: Hoare triple {6530#(< |main_#t~post7| 5)} assume !(#t~post7 < 5);havoc #t~post7; {6308#false} is VALID [2022-04-15 09:18:49,948 INFO L290 TraceCheckUtils]: 62: Hoare triple {6534#(< ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6530#(< |main_#t~post7| 5)} is VALID [2022-04-15 09:18:49,949 INFO L290 TraceCheckUtils]: 61: Hoare triple {6534#(< ~counter~0 5)} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {6534#(< ~counter~0 5)} is VALID [2022-04-15 09:18:49,949 INFO L290 TraceCheckUtils]: 60: Hoare triple {6534#(< ~counter~0 5)} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {6534#(< ~counter~0 5)} is VALID [2022-04-15 09:18:49,950 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {6307#true} {6534#(< ~counter~0 5)} #90#return; {6534#(< ~counter~0 5)} is VALID [2022-04-15 09:18:49,950 INFO L290 TraceCheckUtils]: 58: Hoare triple {6307#true} assume true; {6307#true} is VALID [2022-04-15 09:18:49,950 INFO L290 TraceCheckUtils]: 57: Hoare triple {6307#true} assume !(0 == ~cond); {6307#true} is VALID [2022-04-15 09:18:49,950 INFO L290 TraceCheckUtils]: 56: Hoare triple {6307#true} ~cond := #in~cond; {6307#true} is VALID [2022-04-15 09:18:49,950 INFO L272 TraceCheckUtils]: 55: Hoare triple {6534#(< ~counter~0 5)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {6307#true} is VALID [2022-04-15 09:18:49,951 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {6307#true} {6534#(< ~counter~0 5)} #88#return; {6534#(< ~counter~0 5)} is VALID [2022-04-15 09:18:49,951 INFO L290 TraceCheckUtils]: 53: Hoare triple {6307#true} assume true; {6307#true} is VALID [2022-04-15 09:18:49,962 INFO L290 TraceCheckUtils]: 52: Hoare triple {6307#true} assume !(0 == ~cond); {6307#true} is VALID [2022-04-15 09:18:49,962 INFO L290 TraceCheckUtils]: 51: Hoare triple {6307#true} ~cond := #in~cond; {6307#true} is VALID [2022-04-15 09:18:49,962 INFO L272 TraceCheckUtils]: 50: Hoare triple {6534#(< ~counter~0 5)} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {6307#true} is VALID [2022-04-15 09:18:49,972 INFO L290 TraceCheckUtils]: 49: Hoare triple {6534#(< ~counter~0 5)} assume !!(#t~post7 < 5);havoc #t~post7; {6534#(< ~counter~0 5)} is VALID [2022-04-15 09:18:49,972 INFO L290 TraceCheckUtils]: 48: Hoare triple {6459#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6534#(< ~counter~0 5)} is VALID [2022-04-15 09:18:49,973 INFO L290 TraceCheckUtils]: 47: Hoare triple {6459#(<= ~counter~0 3)} assume !(~r~0 >= ~d~0); {6459#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:49,973 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {6307#true} {6459#(<= ~counter~0 3)} #86#return; {6459#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:49,973 INFO L290 TraceCheckUtils]: 45: Hoare triple {6307#true} assume true; {6307#true} is VALID [2022-04-15 09:18:49,973 INFO L290 TraceCheckUtils]: 44: Hoare triple {6307#true} assume !(0 == ~cond); {6307#true} is VALID [2022-04-15 09:18:49,973 INFO L290 TraceCheckUtils]: 43: Hoare triple {6307#true} ~cond := #in~cond; {6307#true} is VALID [2022-04-15 09:18:49,973 INFO L272 TraceCheckUtils]: 42: Hoare triple {6459#(<= ~counter~0 3)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {6307#true} is VALID [2022-04-15 09:18:49,974 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {6307#true} {6459#(<= ~counter~0 3)} #84#return; {6459#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:49,974 INFO L290 TraceCheckUtils]: 40: Hoare triple {6307#true} assume true; {6307#true} is VALID [2022-04-15 09:18:49,974 INFO L290 TraceCheckUtils]: 39: Hoare triple {6307#true} assume !(0 == ~cond); {6307#true} is VALID [2022-04-15 09:18:49,974 INFO L290 TraceCheckUtils]: 38: Hoare triple {6307#true} ~cond := #in~cond; {6307#true} is VALID [2022-04-15 09:18:49,974 INFO L272 TraceCheckUtils]: 37: Hoare triple {6459#(<= ~counter~0 3)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {6307#true} is VALID [2022-04-15 09:18:49,974 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {6307#true} {6459#(<= ~counter~0 3)} #82#return; {6459#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:49,974 INFO L290 TraceCheckUtils]: 35: Hoare triple {6307#true} assume true; {6307#true} is VALID [2022-04-15 09:18:49,975 INFO L290 TraceCheckUtils]: 34: Hoare triple {6307#true} assume !(0 == ~cond); {6307#true} is VALID [2022-04-15 09:18:49,975 INFO L290 TraceCheckUtils]: 33: Hoare triple {6307#true} ~cond := #in~cond; {6307#true} is VALID [2022-04-15 09:18:49,975 INFO L272 TraceCheckUtils]: 32: Hoare triple {6459#(<= ~counter~0 3)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {6307#true} is VALID [2022-04-15 09:18:49,975 INFO L290 TraceCheckUtils]: 31: Hoare triple {6459#(<= ~counter~0 3)} assume !!(#t~post6 < 5);havoc #t~post6; {6459#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:49,975 INFO L290 TraceCheckUtils]: 30: Hoare triple {6404#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6459#(<= ~counter~0 3)} is VALID [2022-04-15 09:18:49,976 INFO L290 TraceCheckUtils]: 29: Hoare triple {6404#(<= ~counter~0 2)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {6404#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:49,976 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {6307#true} {6404#(<= ~counter~0 2)} #86#return; {6404#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:49,976 INFO L290 TraceCheckUtils]: 27: Hoare triple {6307#true} assume true; {6307#true} is VALID [2022-04-15 09:18:49,976 INFO L290 TraceCheckUtils]: 26: Hoare triple {6307#true} assume !(0 == ~cond); {6307#true} is VALID [2022-04-15 09:18:49,976 INFO L290 TraceCheckUtils]: 25: Hoare triple {6307#true} ~cond := #in~cond; {6307#true} is VALID [2022-04-15 09:18:49,976 INFO L272 TraceCheckUtils]: 24: Hoare triple {6404#(<= ~counter~0 2)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {6307#true} is VALID [2022-04-15 09:18:49,977 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {6307#true} {6404#(<= ~counter~0 2)} #84#return; {6404#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:49,977 INFO L290 TraceCheckUtils]: 22: Hoare triple {6307#true} assume true; {6307#true} is VALID [2022-04-15 09:18:49,977 INFO L290 TraceCheckUtils]: 21: Hoare triple {6307#true} assume !(0 == ~cond); {6307#true} is VALID [2022-04-15 09:18:49,977 INFO L290 TraceCheckUtils]: 20: Hoare triple {6307#true} ~cond := #in~cond; {6307#true} is VALID [2022-04-15 09:18:49,977 INFO L272 TraceCheckUtils]: 19: Hoare triple {6404#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {6307#true} is VALID [2022-04-15 09:18:49,977 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {6307#true} {6404#(<= ~counter~0 2)} #82#return; {6404#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:49,977 INFO L290 TraceCheckUtils]: 17: Hoare triple {6307#true} assume true; {6307#true} is VALID [2022-04-15 09:18:49,977 INFO L290 TraceCheckUtils]: 16: Hoare triple {6307#true} assume !(0 == ~cond); {6307#true} is VALID [2022-04-15 09:18:49,977 INFO L290 TraceCheckUtils]: 15: Hoare triple {6307#true} ~cond := #in~cond; {6307#true} is VALID [2022-04-15 09:18:49,977 INFO L272 TraceCheckUtils]: 14: Hoare triple {6404#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {6307#true} is VALID [2022-04-15 09:18:49,978 INFO L290 TraceCheckUtils]: 13: Hoare triple {6404#(<= ~counter~0 2)} assume !!(#t~post6 < 5);havoc #t~post6; {6404#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:49,978 INFO L290 TraceCheckUtils]: 12: Hoare triple {6349#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6404#(<= ~counter~0 2)} is VALID [2022-04-15 09:18:49,978 INFO L290 TraceCheckUtils]: 11: Hoare triple {6349#(<= ~counter~0 1)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {6349#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:49,979 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6307#true} {6349#(<= ~counter~0 1)} #80#return; {6349#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:49,979 INFO L290 TraceCheckUtils]: 9: Hoare triple {6307#true} assume true; {6307#true} is VALID [2022-04-15 09:18:49,979 INFO L290 TraceCheckUtils]: 8: Hoare triple {6307#true} assume !(0 == ~cond); {6307#true} is VALID [2022-04-15 09:18:49,979 INFO L290 TraceCheckUtils]: 7: Hoare triple {6307#true} ~cond := #in~cond; {6307#true} is VALID [2022-04-15 09:18:49,979 INFO L272 TraceCheckUtils]: 6: Hoare triple {6349#(<= ~counter~0 1)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {6307#true} is VALID [2022-04-15 09:18:49,979 INFO L290 TraceCheckUtils]: 5: Hoare triple {6349#(<= ~counter~0 1)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {6349#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:49,979 INFO L272 TraceCheckUtils]: 4: Hoare triple {6349#(<= ~counter~0 1)} call #t~ret8 := main(); {6349#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:49,980 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6349#(<= ~counter~0 1)} {6307#true} #96#return; {6349#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:49,980 INFO L290 TraceCheckUtils]: 2: Hoare triple {6349#(<= ~counter~0 1)} assume true; {6349#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:49,980 INFO L290 TraceCheckUtils]: 1: Hoare triple {6307#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);~counter~0 := 0; {6349#(<= ~counter~0 1)} is VALID [2022-04-15 09:18:49,980 INFO L272 TraceCheckUtils]: 0: Hoare triple {6307#true} call ULTIMATE.init(); {6307#true} is VALID [2022-04-15 09:18:49,981 INFO L134 CoverageAnalysis]: Checked inductivity of 136 backedges. 16 proven. 8 refuted. 0 times theorem prover too weak. 112 trivial. 0 not checked. [2022-04-15 09:18:49,981 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:18:49,981 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1360198571] [2022-04-15 09:18:49,981 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:18:49,981 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1560714843] [2022-04-15 09:18:49,981 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1560714843] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:18:49,981 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:18:49,981 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 9 [2022-04-15 09:18:49,981 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:18:49,981 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [456712333] [2022-04-15 09:18:49,981 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [456712333] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:18:49,981 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:18:49,982 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-15 09:18:49,982 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [691963288] [2022-04-15 09:18:49,982 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:18:49,982 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.428571428571429) internal successors, (31), 6 states have internal predecessors, (31), 6 states have call successors, (12), 6 states have call predecessors, (12), 4 states have return successors, (10), 4 states have call predecessors, (10), 5 states have call successors, (10) Word has length 68 [2022-04-15 09:18:49,982 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:18:49,982 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 4.428571428571429) internal successors, (31), 6 states have internal predecessors, (31), 6 states have call successors, (12), 6 states have call predecessors, (12), 4 states have return successors, (10), 4 states have call predecessors, (10), 5 states have call successors, (10) [2022-04-15 09:18:50,016 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:18:50,016 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-15 09:18:50,016 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:18:50,016 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-15 09:18:50,016 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=46, Unknown=0, NotChecked=0, Total=72 [2022-04-15 09:18:50,017 INFO L87 Difference]: Start difference. First operand 99 states and 115 transitions. Second operand has 7 states, 7 states have (on average 4.428571428571429) internal successors, (31), 6 states have internal predecessors, (31), 6 states have call successors, (12), 6 states have call predecessors, (12), 4 states have return successors, (10), 4 states have call predecessors, (10), 5 states have call successors, (10) [2022-04-15 09:18:50,384 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:50,384 INFO L93 Difference]: Finished difference Result 151 states and 174 transitions. [2022-04-15 09:18:50,384 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-15 09:18:50,384 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.428571428571429) internal successors, (31), 6 states have internal predecessors, (31), 6 states have call successors, (12), 6 states have call predecessors, (12), 4 states have return successors, (10), 4 states have call predecessors, (10), 5 states have call successors, (10) Word has length 68 [2022-04-15 09:18:50,384 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:18:50,384 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.428571428571429) internal successors, (31), 6 states have internal predecessors, (31), 6 states have call successors, (12), 6 states have call predecessors, (12), 4 states have return successors, (10), 4 states have call predecessors, (10), 5 states have call successors, (10) [2022-04-15 09:18:50,385 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 107 transitions. [2022-04-15 09:18:50,385 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.428571428571429) internal successors, (31), 6 states have internal predecessors, (31), 6 states have call successors, (12), 6 states have call predecessors, (12), 4 states have return successors, (10), 4 states have call predecessors, (10), 5 states have call successors, (10) [2022-04-15 09:18:50,386 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 107 transitions. [2022-04-15 09:18:50,386 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 107 transitions. [2022-04-15 09:18:50,460 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 107 edges. 107 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:18:50,462 INFO L225 Difference]: With dead ends: 151 [2022-04-15 09:18:50,462 INFO L226 Difference]: Without dead ends: 136 [2022-04-15 09:18:50,463 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 136 GetRequests, 127 SyntacticMatches, 1 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=32, Invalid=58, Unknown=0, NotChecked=0, Total=90 [2022-04-15 09:18:50,463 INFO L913 BasicCegarLoop]: 53 mSDtfsCounter, 29 mSDsluCounter, 120 mSDsCounter, 0 mSdLazyCounter, 52 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 29 SdHoareTripleChecker+Valid, 173 SdHoareTripleChecker+Invalid, 72 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 20 IncrementalHoareTripleChecker+Valid, 52 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 09:18:50,463 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [29 Valid, 173 Invalid, 72 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [20 Valid, 52 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 09:18:50,463 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 136 states. [2022-04-15 09:18:50,551 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 136 to 133. [2022-04-15 09:18:50,551 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:18:50,551 INFO L82 GeneralOperation]: Start isEquivalent. First operand 136 states. Second operand has 133 states, 87 states have (on average 1.160919540229885) internal successors, (101), 90 states have internal predecessors, (101), 28 states have call successors, (28), 19 states have call predecessors, (28), 17 states have return successors, (25), 23 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-15 09:18:50,551 INFO L74 IsIncluded]: Start isIncluded. First operand 136 states. Second operand has 133 states, 87 states have (on average 1.160919540229885) internal successors, (101), 90 states have internal predecessors, (101), 28 states have call successors, (28), 19 states have call predecessors, (28), 17 states have return successors, (25), 23 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-15 09:18:50,552 INFO L87 Difference]: Start difference. First operand 136 states. Second operand has 133 states, 87 states have (on average 1.160919540229885) internal successors, (101), 90 states have internal predecessors, (101), 28 states have call successors, (28), 19 states have call predecessors, (28), 17 states have return successors, (25), 23 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-15 09:18:50,554 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:50,554 INFO L93 Difference]: Finished difference Result 136 states and 156 transitions. [2022-04-15 09:18:50,554 INFO L276 IsEmpty]: Start isEmpty. Operand 136 states and 156 transitions. [2022-04-15 09:18:50,554 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:18:50,554 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:18:50,554 INFO L74 IsIncluded]: Start isIncluded. First operand has 133 states, 87 states have (on average 1.160919540229885) internal successors, (101), 90 states have internal predecessors, (101), 28 states have call successors, (28), 19 states have call predecessors, (28), 17 states have return successors, (25), 23 states have call predecessors, (25), 25 states have call successors, (25) Second operand 136 states. [2022-04-15 09:18:50,554 INFO L87 Difference]: Start difference. First operand has 133 states, 87 states have (on average 1.160919540229885) internal successors, (101), 90 states have internal predecessors, (101), 28 states have call successors, (28), 19 states have call predecessors, (28), 17 states have return successors, (25), 23 states have call predecessors, (25), 25 states have call successors, (25) Second operand 136 states. [2022-04-15 09:18:50,556 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:18:50,556 INFO L93 Difference]: Finished difference Result 136 states and 156 transitions. [2022-04-15 09:18:50,556 INFO L276 IsEmpty]: Start isEmpty. Operand 136 states and 156 transitions. [2022-04-15 09:18:50,557 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:18:50,557 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:18:50,557 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:18:50,557 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:18:50,557 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 133 states, 87 states have (on average 1.160919540229885) internal successors, (101), 90 states have internal predecessors, (101), 28 states have call successors, (28), 19 states have call predecessors, (28), 17 states have return successors, (25), 23 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-15 09:18:50,559 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 133 states to 133 states and 154 transitions. [2022-04-15 09:18:50,559 INFO L78 Accepts]: Start accepts. Automaton has 133 states and 154 transitions. Word has length 68 [2022-04-15 09:18:50,559 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:18:50,559 INFO L478 AbstractCegarLoop]: Abstraction has 133 states and 154 transitions. [2022-04-15 09:18:50,559 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 4.428571428571429) internal successors, (31), 6 states have internal predecessors, (31), 6 states have call successors, (12), 6 states have call predecessors, (12), 4 states have return successors, (10), 4 states have call predecessors, (10), 5 states have call successors, (10) [2022-04-15 09:18:50,559 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 133 states and 154 transitions. [2022-04-15 09:18:50,696 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 154 edges. 154 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:18:50,696 INFO L276 IsEmpty]: Start isEmpty. Operand 133 states and 154 transitions. [2022-04-15 09:18:50,696 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 69 [2022-04-15 09:18:50,696 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:18:50,696 INFO L499 BasicCegarLoop]: trace histogram [9, 8, 8, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:18:50,712 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Ended with exit code 0 [2022-04-15 09:18:50,901 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 09:18:50,904 INFO L403 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:18:50,904 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:18:50,904 INFO L85 PathProgramCache]: Analyzing trace with hash 1142595933, now seen corresponding path program 1 times [2022-04-15 09:18:50,904 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:18:50,904 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [308739441] [2022-04-15 09:18:58,151 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:18:58,151 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:18:58,151 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:18:58,151 INFO L85 PathProgramCache]: Analyzing trace with hash 1142595933, now seen corresponding path program 2 times [2022-04-15 09:18:58,152 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:18:58,152 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1474833578] [2022-04-15 09:18:58,152 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:18:58,152 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:18:58,162 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:18:58,163 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [960302654] [2022-04-15 09:18:58,163 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 09:18:58,163 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:18:58,163 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:18:58,163 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 09:18:58,164 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 09:18:58,204 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 09:18:58,205 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:18:58,205 INFO L263 TraceCheckSpWp]: Trace formula consists of 185 conjuncts, 25 conjunts are in the unsatisfiable core [2022-04-15 09:18:58,217 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:18:58,218 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:19:02,035 INFO L272 TraceCheckUtils]: 0: Hoare triple {7565#true} call ULTIMATE.init(); {7565#true} is VALID [2022-04-15 09:19:02,035 INFO L290 TraceCheckUtils]: 1: Hoare triple {7565#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);~counter~0 := 0; {7565#true} is VALID [2022-04-15 09:19:02,035 INFO L290 TraceCheckUtils]: 2: Hoare triple {7565#true} assume true; {7565#true} is VALID [2022-04-15 09:19:02,035 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7565#true} {7565#true} #96#return; {7565#true} is VALID [2022-04-15 09:19:02,035 INFO L272 TraceCheckUtils]: 4: Hoare triple {7565#true} call #t~ret8 := main(); {7565#true} is VALID [2022-04-15 09:19:02,036 INFO L290 TraceCheckUtils]: 5: Hoare triple {7565#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {7565#true} is VALID [2022-04-15 09:19:02,036 INFO L272 TraceCheckUtils]: 6: Hoare triple {7565#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {7565#true} is VALID [2022-04-15 09:19:02,036 INFO L290 TraceCheckUtils]: 7: Hoare triple {7565#true} ~cond := #in~cond; {7565#true} is VALID [2022-04-15 09:19:02,036 INFO L290 TraceCheckUtils]: 8: Hoare triple {7565#true} assume !(0 == ~cond); {7565#true} is VALID [2022-04-15 09:19:02,036 INFO L290 TraceCheckUtils]: 9: Hoare triple {7565#true} assume true; {7565#true} is VALID [2022-04-15 09:19:02,036 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7565#true} {7565#true} #80#return; {7565#true} is VALID [2022-04-15 09:19:02,036 INFO L290 TraceCheckUtils]: 11: Hoare triple {7565#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {7603#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 09:19:02,037 INFO L290 TraceCheckUtils]: 12: Hoare triple {7603#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7603#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 09:19:02,037 INFO L290 TraceCheckUtils]: 13: Hoare triple {7603#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} assume !!(#t~post6 < 5);havoc #t~post6; {7603#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 09:19:02,037 INFO L272 TraceCheckUtils]: 14: Hoare triple {7603#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {7565#true} is VALID [2022-04-15 09:19:02,037 INFO L290 TraceCheckUtils]: 15: Hoare triple {7565#true} ~cond := #in~cond; {7565#true} is VALID [2022-04-15 09:19:02,037 INFO L290 TraceCheckUtils]: 16: Hoare triple {7565#true} assume !(0 == ~cond); {7565#true} is VALID [2022-04-15 09:19:02,037 INFO L290 TraceCheckUtils]: 17: Hoare triple {7565#true} assume true; {7565#true} is VALID [2022-04-15 09:19:02,038 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {7565#true} {7603#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} #82#return; {7603#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 09:19:02,038 INFO L272 TraceCheckUtils]: 19: Hoare triple {7603#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {7565#true} is VALID [2022-04-15 09:19:02,038 INFO L290 TraceCheckUtils]: 20: Hoare triple {7565#true} ~cond := #in~cond; {7565#true} is VALID [2022-04-15 09:19:02,038 INFO L290 TraceCheckUtils]: 21: Hoare triple {7565#true} assume !(0 == ~cond); {7565#true} is VALID [2022-04-15 09:19:02,038 INFO L290 TraceCheckUtils]: 22: Hoare triple {7565#true} assume true; {7565#true} is VALID [2022-04-15 09:19:02,038 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {7565#true} {7603#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} #84#return; {7603#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 09:19:02,038 INFO L272 TraceCheckUtils]: 24: Hoare triple {7603#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {7565#true} is VALID [2022-04-15 09:19:02,039 INFO L290 TraceCheckUtils]: 25: Hoare triple {7565#true} ~cond := #in~cond; {7565#true} is VALID [2022-04-15 09:19:02,039 INFO L290 TraceCheckUtils]: 26: Hoare triple {7565#true} assume !(0 == ~cond); {7565#true} is VALID [2022-04-15 09:19:02,039 INFO L290 TraceCheckUtils]: 27: Hoare triple {7565#true} assume true; {7565#true} is VALID [2022-04-15 09:19:02,039 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {7565#true} {7603#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} #86#return; {7603#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} is VALID [2022-04-15 09:19:02,040 INFO L290 TraceCheckUtils]: 29: Hoare triple {7603#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (= main_~p~0 1))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {7658#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:19:02,044 INFO L290 TraceCheckUtils]: 30: Hoare triple {7658#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7658#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:19:02,044 INFO L290 TraceCheckUtils]: 31: Hoare triple {7658#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} assume !!(#t~post6 < 5);havoc #t~post6; {7658#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:19:02,044 INFO L272 TraceCheckUtils]: 32: Hoare triple {7658#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {7565#true} is VALID [2022-04-15 09:19:02,044 INFO L290 TraceCheckUtils]: 33: Hoare triple {7565#true} ~cond := #in~cond; {7565#true} is VALID [2022-04-15 09:19:02,044 INFO L290 TraceCheckUtils]: 34: Hoare triple {7565#true} assume !(0 == ~cond); {7565#true} is VALID [2022-04-15 09:19:02,044 INFO L290 TraceCheckUtils]: 35: Hoare triple {7565#true} assume true; {7565#true} is VALID [2022-04-15 09:19:02,045 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {7565#true} {7658#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} #82#return; {7658#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:19:02,045 INFO L272 TraceCheckUtils]: 37: Hoare triple {7658#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {7565#true} is VALID [2022-04-15 09:19:02,045 INFO L290 TraceCheckUtils]: 38: Hoare triple {7565#true} ~cond := #in~cond; {7565#true} is VALID [2022-04-15 09:19:02,045 INFO L290 TraceCheckUtils]: 39: Hoare triple {7565#true} assume !(0 == ~cond); {7565#true} is VALID [2022-04-15 09:19:02,045 INFO L290 TraceCheckUtils]: 40: Hoare triple {7565#true} assume true; {7565#true} is VALID [2022-04-15 09:19:02,046 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {7565#true} {7658#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} #84#return; {7658#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:19:02,046 INFO L272 TraceCheckUtils]: 42: Hoare triple {7658#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {7565#true} is VALID [2022-04-15 09:19:02,046 INFO L290 TraceCheckUtils]: 43: Hoare triple {7565#true} ~cond := #in~cond; {7565#true} is VALID [2022-04-15 09:19:02,046 INFO L290 TraceCheckUtils]: 44: Hoare triple {7565#true} assume !(0 == ~cond); {7565#true} is VALID [2022-04-15 09:19:02,046 INFO L290 TraceCheckUtils]: 45: Hoare triple {7565#true} assume true; {7565#true} is VALID [2022-04-15 09:19:02,046 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {7565#true} {7658#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} #86#return; {7658#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:19:02,047 INFO L290 TraceCheckUtils]: 47: Hoare triple {7658#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} assume !(~r~0 >= ~d~0); {7713#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:19:02,047 INFO L290 TraceCheckUtils]: 48: Hoare triple {7713#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7713#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:19:02,047 INFO L290 TraceCheckUtils]: 49: Hoare triple {7713#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} assume !!(#t~post7 < 5);havoc #t~post7; {7713#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:19:02,047 INFO L272 TraceCheckUtils]: 50: Hoare triple {7713#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {7565#true} is VALID [2022-04-15 09:19:02,048 INFO L290 TraceCheckUtils]: 51: Hoare triple {7565#true} ~cond := #in~cond; {7565#true} is VALID [2022-04-15 09:19:02,048 INFO L290 TraceCheckUtils]: 52: Hoare triple {7565#true} assume !(0 == ~cond); {7565#true} is VALID [2022-04-15 09:19:02,048 INFO L290 TraceCheckUtils]: 53: Hoare triple {7565#true} assume true; {7565#true} is VALID [2022-04-15 09:19:02,048 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {7565#true} {7713#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} #88#return; {7713#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:19:02,048 INFO L272 TraceCheckUtils]: 55: Hoare triple {7713#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {7565#true} is VALID [2022-04-15 09:19:02,048 INFO L290 TraceCheckUtils]: 56: Hoare triple {7565#true} ~cond := #in~cond; {7565#true} is VALID [2022-04-15 09:19:02,048 INFO L290 TraceCheckUtils]: 57: Hoare triple {7565#true} assume !(0 == ~cond); {7565#true} is VALID [2022-04-15 09:19:02,048 INFO L290 TraceCheckUtils]: 58: Hoare triple {7565#true} assume true; {7565#true} is VALID [2022-04-15 09:19:02,049 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {7565#true} {7713#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} #90#return; {7713#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:19:02,050 INFO L290 TraceCheckUtils]: 60: Hoare triple {7713#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (<= (mod main_~B~0 4294967296) main_~r~0))} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {7753#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (not (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0)) (<= (mod main_~B~0 4294967296) main_~r~0) (= main_~p~0 1))} is VALID [2022-04-15 09:19:02,051 INFO L290 TraceCheckUtils]: 61: Hoare triple {7753#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0) (not (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0)) (<= (mod main_~B~0 4294967296) main_~r~0) (= main_~p~0 1))} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {7757#(and (not (<= (* 2 (mod main_~B~0 4294967296)) (mod main_~A~0 4294967296))) (<= (mod main_~B~0 4294967296) (mod main_~A~0 4294967296)) (= (+ (* (- 1) (div (* 2 (mod main_~B~0 4294967296)) 2)) (mod main_~A~0 4294967296)) main_~r~0) (= main_~q~0 1))} is VALID [2022-04-15 09:19:02,051 INFO L290 TraceCheckUtils]: 62: Hoare triple {7757#(and (not (<= (* 2 (mod main_~B~0 4294967296)) (mod main_~A~0 4294967296))) (<= (mod main_~B~0 4294967296) (mod main_~A~0 4294967296)) (= (+ (* (- 1) (div (* 2 (mod main_~B~0 4294967296)) 2)) (mod main_~A~0 4294967296)) main_~r~0) (= main_~q~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7757#(and (not (<= (* 2 (mod main_~B~0 4294967296)) (mod main_~A~0 4294967296))) (<= (mod main_~B~0 4294967296) (mod main_~A~0 4294967296)) (= (+ (* (- 1) (div (* 2 (mod main_~B~0 4294967296)) 2)) (mod main_~A~0 4294967296)) main_~r~0) (= main_~q~0 1))} is VALID [2022-04-15 09:19:02,052 INFO L290 TraceCheckUtils]: 63: Hoare triple {7757#(and (not (<= (* 2 (mod main_~B~0 4294967296)) (mod main_~A~0 4294967296))) (<= (mod main_~B~0 4294967296) (mod main_~A~0 4294967296)) (= (+ (* (- 1) (div (* 2 (mod main_~B~0 4294967296)) 2)) (mod main_~A~0 4294967296)) main_~r~0) (= main_~q~0 1))} assume !!(#t~post7 < 5);havoc #t~post7; {7757#(and (not (<= (* 2 (mod main_~B~0 4294967296)) (mod main_~A~0 4294967296))) (<= (mod main_~B~0 4294967296) (mod main_~A~0 4294967296)) (= (+ (* (- 1) (div (* 2 (mod main_~B~0 4294967296)) 2)) (mod main_~A~0 4294967296)) main_~r~0) (= main_~q~0 1))} is VALID [2022-04-15 09:19:02,052 INFO L272 TraceCheckUtils]: 64: Hoare triple {7757#(and (not (<= (* 2 (mod main_~B~0 4294967296)) (mod main_~A~0 4294967296))) (<= (mod main_~B~0 4294967296) (mod main_~A~0 4294967296)) (= (+ (* (- 1) (div (* 2 (mod main_~B~0 4294967296)) 2)) (mod main_~A~0 4294967296)) main_~r~0) (= main_~q~0 1))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {7767#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:19:02,053 INFO L290 TraceCheckUtils]: 65: Hoare triple {7767#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7771#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:19:02,053 INFO L290 TraceCheckUtils]: 66: Hoare triple {7771#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7566#false} is VALID [2022-04-15 09:19:02,053 INFO L290 TraceCheckUtils]: 67: Hoare triple {7566#false} assume !false; {7566#false} is VALID [2022-04-15 09:19:02,053 INFO L134 CoverageAnalysis]: Checked inductivity of 137 backedges. 16 proven. 9 refuted. 0 times theorem prover too weak. 112 trivial. 0 not checked. [2022-04-15 09:19:02,053 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:19:10,195 INFO L290 TraceCheckUtils]: 67: Hoare triple {7566#false} assume !false; {7566#false} is VALID [2022-04-15 09:19:10,196 INFO L290 TraceCheckUtils]: 66: Hoare triple {7771#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7566#false} is VALID [2022-04-15 09:19:10,197 INFO L290 TraceCheckUtils]: 65: Hoare triple {7767#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7771#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:19:10,197 INFO L272 TraceCheckUtils]: 64: Hoare triple {7787#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {7767#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:19:10,199 INFO L290 TraceCheckUtils]: 63: Hoare triple {7787#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} assume !!(#t~post7 < 5);havoc #t~post7; {7787#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} is VALID [2022-04-15 09:19:10,200 INFO L290 TraceCheckUtils]: 62: Hoare triple {7787#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7787#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} is VALID [2022-04-15 09:19:10,202 INFO L290 TraceCheckUtils]: 61: Hoare triple {7797#(= (mod main_~A~0 4294967296) (+ (* (- 1) main_~d~0) (* (+ main_~q~0 main_~p~0) (mod main_~B~0 4294967296)) main_~r~0))} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {7787#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} is VALID [2022-04-15 09:19:10,212 INFO L290 TraceCheckUtils]: 60: Hoare triple {7801#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {7797#(= (mod main_~A~0 4294967296) (+ (* (- 1) main_~d~0) (* (+ main_~q~0 main_~p~0) (mod main_~B~0 4294967296)) main_~r~0))} is VALID [2022-04-15 09:19:10,213 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {7565#true} {7801#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} #90#return; {7801#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:19:10,213 INFO L290 TraceCheckUtils]: 58: Hoare triple {7565#true} assume true; {7565#true} is VALID [2022-04-15 09:19:10,213 INFO L290 TraceCheckUtils]: 57: Hoare triple {7565#true} assume !(0 == ~cond); {7565#true} is VALID [2022-04-15 09:19:10,213 INFO L290 TraceCheckUtils]: 56: Hoare triple {7565#true} ~cond := #in~cond; {7565#true} is VALID [2022-04-15 09:19:10,213 INFO L272 TraceCheckUtils]: 55: Hoare triple {7801#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {7565#true} is VALID [2022-04-15 09:19:10,214 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {7565#true} {7801#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} #88#return; {7801#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:19:10,214 INFO L290 TraceCheckUtils]: 53: Hoare triple {7565#true} assume true; {7565#true} is VALID [2022-04-15 09:19:10,214 INFO L290 TraceCheckUtils]: 52: Hoare triple {7565#true} assume !(0 == ~cond); {7565#true} is VALID [2022-04-15 09:19:10,214 INFO L290 TraceCheckUtils]: 51: Hoare triple {7565#true} ~cond := #in~cond; {7565#true} is VALID [2022-04-15 09:19:10,214 INFO L272 TraceCheckUtils]: 50: Hoare triple {7801#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {7565#true} is VALID [2022-04-15 09:19:10,215 INFO L290 TraceCheckUtils]: 49: Hoare triple {7801#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} assume !!(#t~post7 < 5);havoc #t~post7; {7801#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:19:10,216 INFO L290 TraceCheckUtils]: 48: Hoare triple {7801#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {7801#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:19:10,217 INFO L290 TraceCheckUtils]: 47: Hoare triple {7841#(or (and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0))))) (<= main_~d~0 main_~r~0))} assume !(~r~0 >= ~d~0); {7801#(and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:19:10,218 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {7565#true} {7841#(or (and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0))))) (<= main_~d~0 main_~r~0))} #86#return; {7841#(or (and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0))))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-15 09:19:10,218 INFO L290 TraceCheckUtils]: 45: Hoare triple {7565#true} assume true; {7565#true} is VALID [2022-04-15 09:19:10,218 INFO L290 TraceCheckUtils]: 44: Hoare triple {7565#true} assume !(0 == ~cond); {7565#true} is VALID [2022-04-15 09:19:10,218 INFO L290 TraceCheckUtils]: 43: Hoare triple {7565#true} ~cond := #in~cond; {7565#true} is VALID [2022-04-15 09:19:10,218 INFO L272 TraceCheckUtils]: 42: Hoare triple {7841#(or (and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0))))) (<= main_~d~0 main_~r~0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {7565#true} is VALID [2022-04-15 09:19:10,218 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {7565#true} {7841#(or (and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0))))) (<= main_~d~0 main_~r~0))} #84#return; {7841#(or (and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0))))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-15 09:19:10,218 INFO L290 TraceCheckUtils]: 40: Hoare triple {7565#true} assume true; {7565#true} is VALID [2022-04-15 09:19:10,219 INFO L290 TraceCheckUtils]: 39: Hoare triple {7565#true} assume !(0 == ~cond); {7565#true} is VALID [2022-04-15 09:19:10,219 INFO L290 TraceCheckUtils]: 38: Hoare triple {7565#true} ~cond := #in~cond; {7565#true} is VALID [2022-04-15 09:19:10,219 INFO L272 TraceCheckUtils]: 37: Hoare triple {7841#(or (and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0))))) (<= main_~d~0 main_~r~0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {7565#true} is VALID [2022-04-15 09:19:10,219 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {7565#true} {7841#(or (and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0))))) (<= main_~d~0 main_~r~0))} #82#return; {7841#(or (and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0))))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-15 09:19:10,219 INFO L290 TraceCheckUtils]: 35: Hoare triple {7565#true} assume true; {7565#true} is VALID [2022-04-15 09:19:10,219 INFO L290 TraceCheckUtils]: 34: Hoare triple {7565#true} assume !(0 == ~cond); {7565#true} is VALID [2022-04-15 09:19:10,219 INFO L290 TraceCheckUtils]: 33: Hoare triple {7565#true} ~cond := #in~cond; {7565#true} is VALID [2022-04-15 09:19:10,219 INFO L272 TraceCheckUtils]: 32: Hoare triple {7841#(or (and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0))))) (<= main_~d~0 main_~r~0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {7565#true} is VALID [2022-04-15 09:19:10,221 INFO L290 TraceCheckUtils]: 31: Hoare triple {7841#(or (and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0))))) (<= main_~d~0 main_~r~0))} assume !!(#t~post6 < 5);havoc #t~post6; {7841#(or (and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0))))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-15 09:19:10,222 INFO L290 TraceCheckUtils]: 30: Hoare triple {7841#(or (and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0))))) (<= main_~d~0 main_~r~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7841#(or (and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0))))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-15 09:19:10,225 INFO L290 TraceCheckUtils]: 29: Hoare triple {7896#(or (not (<= main_~d~0 main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (+ (div (* main_~p~0 2) 2) main_~q~0) (mod main_~B~0 4294967296)))) (<= (* main_~d~0 2) main_~r~0))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {7841#(or (and (or (not (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))))) (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod main_~p~0 2) 0))) (= (mod main_~d~0 2) 0)) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0))))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-15 09:19:10,226 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {7565#true} {7896#(or (not (<= main_~d~0 main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (+ (div (* main_~p~0 2) 2) main_~q~0) (mod main_~B~0 4294967296)))) (<= (* main_~d~0 2) main_~r~0))} #86#return; {7896#(or (not (<= main_~d~0 main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (+ (div (* main_~p~0 2) 2) main_~q~0) (mod main_~B~0 4294967296)))) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-15 09:19:10,226 INFO L290 TraceCheckUtils]: 27: Hoare triple {7565#true} assume true; {7565#true} is VALID [2022-04-15 09:19:10,226 INFO L290 TraceCheckUtils]: 26: Hoare triple {7565#true} assume !(0 == ~cond); {7565#true} is VALID [2022-04-15 09:19:10,226 INFO L290 TraceCheckUtils]: 25: Hoare triple {7565#true} ~cond := #in~cond; {7565#true} is VALID [2022-04-15 09:19:10,226 INFO L272 TraceCheckUtils]: 24: Hoare triple {7896#(or (not (<= main_~d~0 main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (+ (div (* main_~p~0 2) 2) main_~q~0) (mod main_~B~0 4294967296)))) (<= (* main_~d~0 2) main_~r~0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {7565#true} is VALID [2022-04-15 09:19:10,227 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {7565#true} {7896#(or (not (<= main_~d~0 main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (+ (div (* main_~p~0 2) 2) main_~q~0) (mod main_~B~0 4294967296)))) (<= (* main_~d~0 2) main_~r~0))} #84#return; {7896#(or (not (<= main_~d~0 main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (+ (div (* main_~p~0 2) 2) main_~q~0) (mod main_~B~0 4294967296)))) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-15 09:19:10,227 INFO L290 TraceCheckUtils]: 22: Hoare triple {7565#true} assume true; {7565#true} is VALID [2022-04-15 09:19:10,227 INFO L290 TraceCheckUtils]: 21: Hoare triple {7565#true} assume !(0 == ~cond); {7565#true} is VALID [2022-04-15 09:19:10,227 INFO L290 TraceCheckUtils]: 20: Hoare triple {7565#true} ~cond := #in~cond; {7565#true} is VALID [2022-04-15 09:19:10,227 INFO L272 TraceCheckUtils]: 19: Hoare triple {7896#(or (not (<= main_~d~0 main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (+ (div (* main_~p~0 2) 2) main_~q~0) (mod main_~B~0 4294967296)))) (<= (* main_~d~0 2) main_~r~0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {7565#true} is VALID [2022-04-15 09:19:10,228 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {7565#true} {7896#(or (not (<= main_~d~0 main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (+ (div (* main_~p~0 2) 2) main_~q~0) (mod main_~B~0 4294967296)))) (<= (* main_~d~0 2) main_~r~0))} #82#return; {7896#(or (not (<= main_~d~0 main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (+ (div (* main_~p~0 2) 2) main_~q~0) (mod main_~B~0 4294967296)))) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-15 09:19:10,228 INFO L290 TraceCheckUtils]: 17: Hoare triple {7565#true} assume true; {7565#true} is VALID [2022-04-15 09:19:10,228 INFO L290 TraceCheckUtils]: 16: Hoare triple {7565#true} assume !(0 == ~cond); {7565#true} is VALID [2022-04-15 09:19:10,228 INFO L290 TraceCheckUtils]: 15: Hoare triple {7565#true} ~cond := #in~cond; {7565#true} is VALID [2022-04-15 09:19:10,228 INFO L272 TraceCheckUtils]: 14: Hoare triple {7896#(or (not (<= main_~d~0 main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (+ (div (* main_~p~0 2) 2) main_~q~0) (mod main_~B~0 4294967296)))) (<= (* main_~d~0 2) main_~r~0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {7565#true} is VALID [2022-04-15 09:19:10,228 INFO L290 TraceCheckUtils]: 13: Hoare triple {7896#(or (not (<= main_~d~0 main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (+ (div (* main_~p~0 2) 2) main_~q~0) (mod main_~B~0 4294967296)))) (<= (* main_~d~0 2) main_~r~0))} assume !!(#t~post6 < 5);havoc #t~post6; {7896#(or (not (<= main_~d~0 main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (+ (div (* main_~p~0 2) 2) main_~q~0) (mod main_~B~0 4294967296)))) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-15 09:19:10,229 INFO L290 TraceCheckUtils]: 12: Hoare triple {7896#(or (not (<= main_~d~0 main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (+ (div (* main_~p~0 2) 2) main_~q~0) (mod main_~B~0 4294967296)))) (<= (* main_~d~0 2) main_~r~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {7896#(or (not (<= main_~d~0 main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (+ (div (* main_~p~0 2) 2) main_~q~0) (mod main_~B~0 4294967296)))) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-15 09:19:10,230 INFO L290 TraceCheckUtils]: 11: Hoare triple {7565#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {7896#(or (not (<= main_~d~0 main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (+ (div (* main_~p~0 2) 2) main_~q~0) (mod main_~B~0 4294967296)))) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-15 09:19:10,230 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7565#true} {7565#true} #80#return; {7565#true} is VALID [2022-04-15 09:19:10,230 INFO L290 TraceCheckUtils]: 9: Hoare triple {7565#true} assume true; {7565#true} is VALID [2022-04-15 09:19:10,230 INFO L290 TraceCheckUtils]: 8: Hoare triple {7565#true} assume !(0 == ~cond); {7565#true} is VALID [2022-04-15 09:19:10,230 INFO L290 TraceCheckUtils]: 7: Hoare triple {7565#true} ~cond := #in~cond; {7565#true} is VALID [2022-04-15 09:19:10,230 INFO L272 TraceCheckUtils]: 6: Hoare triple {7565#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {7565#true} is VALID [2022-04-15 09:19:10,230 INFO L290 TraceCheckUtils]: 5: Hoare triple {7565#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {7565#true} is VALID [2022-04-15 09:19:10,230 INFO L272 TraceCheckUtils]: 4: Hoare triple {7565#true} call #t~ret8 := main(); {7565#true} is VALID [2022-04-15 09:19:10,230 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7565#true} {7565#true} #96#return; {7565#true} is VALID [2022-04-15 09:19:10,230 INFO L290 TraceCheckUtils]: 2: Hoare triple {7565#true} assume true; {7565#true} is VALID [2022-04-15 09:19:10,231 INFO L290 TraceCheckUtils]: 1: Hoare triple {7565#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);~counter~0 := 0; {7565#true} is VALID [2022-04-15 09:19:10,231 INFO L272 TraceCheckUtils]: 0: Hoare triple {7565#true} call ULTIMATE.init(); {7565#true} is VALID [2022-04-15 09:19:10,231 INFO L134 CoverageAnalysis]: Checked inductivity of 137 backedges. 16 proven. 9 refuted. 0 times theorem prover too weak. 112 trivial. 0 not checked. [2022-04-15 09:19:10,231 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:19:10,231 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1474833578] [2022-04-15 09:19:10,231 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:19:10,231 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [960302654] [2022-04-15 09:19:10,231 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [960302654] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:19:10,231 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:19:10,231 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 14 [2022-04-15 09:19:10,232 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:19:10,232 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [308739441] [2022-04-15 09:19:10,232 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [308739441] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:19:10,232 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:19:10,232 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-15 09:19:10,232 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1426117331] [2022-04-15 09:19:10,232 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:19:10,232 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 5 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 68 [2022-04-15 09:19:10,232 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:19:10,232 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 5 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 09:19:10,278 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 47 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:19:10,278 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-15 09:19:10,278 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:19:10,279 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-15 09:19:10,279 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=47, Invalid=135, Unknown=0, NotChecked=0, Total=182 [2022-04-15 09:19:10,279 INFO L87 Difference]: Start difference. First operand 133 states and 154 transitions. Second operand has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 5 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 09:19:11,210 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:19:11,210 INFO L93 Difference]: Finished difference Result 178 states and 213 transitions. [2022-04-15 09:19:11,210 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-15 09:19:11,210 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 5 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 68 [2022-04-15 09:19:11,210 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:19:11,211 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 5 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 09:19:11,212 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 108 transitions. [2022-04-15 09:19:11,212 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 5 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 09:19:11,213 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 108 transitions. [2022-04-15 09:19:11,213 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 108 transitions. [2022-04-15 09:19:11,301 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 108 edges. 108 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:19:11,303 INFO L225 Difference]: With dead ends: 178 [2022-04-15 09:19:11,303 INFO L226 Difference]: Without dead ends: 143 [2022-04-15 09:19:11,304 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 136 GetRequests, 122 SyntacticMatches, 1 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 36 ImplicationChecksByTransitivity, 2.5s TimeCoverageRelationStatistics Valid=51, Invalid=159, Unknown=0, NotChecked=0, Total=210 [2022-04-15 09:19:11,304 INFO L913 BasicCegarLoop]: 50 mSDtfsCounter, 12 mSDsluCounter, 157 mSDsCounter, 0 mSdLazyCounter, 183 mSolverCounterSat, 13 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 15 SdHoareTripleChecker+Valid, 207 SdHoareTripleChecker+Invalid, 196 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 13 IncrementalHoareTripleChecker+Valid, 183 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-15 09:19:11,304 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [15 Valid, 207 Invalid, 196 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [13 Valid, 183 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-15 09:19:11,305 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 143 states. [2022-04-15 09:19:11,426 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 143 to 141. [2022-04-15 09:19:11,426 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:19:11,426 INFO L82 GeneralOperation]: Start isEquivalent. First operand 143 states. Second operand has 141 states, 93 states have (on average 1.1612903225806452) internal successors, (108), 96 states have internal predecessors, (108), 28 states have call successors, (28), 20 states have call predecessors, (28), 19 states have return successors, (26), 24 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-15 09:19:11,426 INFO L74 IsIncluded]: Start isIncluded. First operand 143 states. Second operand has 141 states, 93 states have (on average 1.1612903225806452) internal successors, (108), 96 states have internal predecessors, (108), 28 states have call successors, (28), 20 states have call predecessors, (28), 19 states have return successors, (26), 24 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-15 09:19:11,427 INFO L87 Difference]: Start difference. First operand 143 states. Second operand has 141 states, 93 states have (on average 1.1612903225806452) internal successors, (108), 96 states have internal predecessors, (108), 28 states have call successors, (28), 20 states have call predecessors, (28), 19 states have return successors, (26), 24 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-15 09:19:11,429 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:19:11,429 INFO L93 Difference]: Finished difference Result 143 states and 165 transitions. [2022-04-15 09:19:11,429 INFO L276 IsEmpty]: Start isEmpty. Operand 143 states and 165 transitions. [2022-04-15 09:19:11,429 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:19:11,429 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:19:11,430 INFO L74 IsIncluded]: Start isIncluded. First operand has 141 states, 93 states have (on average 1.1612903225806452) internal successors, (108), 96 states have internal predecessors, (108), 28 states have call successors, (28), 20 states have call predecessors, (28), 19 states have return successors, (26), 24 states have call predecessors, (26), 26 states have call successors, (26) Second operand 143 states. [2022-04-15 09:19:11,430 INFO L87 Difference]: Start difference. First operand has 141 states, 93 states have (on average 1.1612903225806452) internal successors, (108), 96 states have internal predecessors, (108), 28 states have call successors, (28), 20 states have call predecessors, (28), 19 states have return successors, (26), 24 states have call predecessors, (26), 26 states have call successors, (26) Second operand 143 states. [2022-04-15 09:19:11,432 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:19:11,432 INFO L93 Difference]: Finished difference Result 143 states and 165 transitions. [2022-04-15 09:19:11,432 INFO L276 IsEmpty]: Start isEmpty. Operand 143 states and 165 transitions. [2022-04-15 09:19:11,432 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:19:11,432 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:19:11,432 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:19:11,432 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:19:11,432 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 141 states, 93 states have (on average 1.1612903225806452) internal successors, (108), 96 states have internal predecessors, (108), 28 states have call successors, (28), 20 states have call predecessors, (28), 19 states have return successors, (26), 24 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-15 09:19:11,434 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 141 states to 141 states and 162 transitions. [2022-04-15 09:19:11,435 INFO L78 Accepts]: Start accepts. Automaton has 141 states and 162 transitions. Word has length 68 [2022-04-15 09:19:11,435 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:19:11,435 INFO L478 AbstractCegarLoop]: Abstraction has 141 states and 162 transitions. [2022-04-15 09:19:11,435 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.7777777777777777) internal successors, (25), 8 states have internal predecessors, (25), 5 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 09:19:11,435 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 141 states and 162 transitions. [2022-04-15 09:19:11,602 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 162 edges. 162 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:19:11,602 INFO L276 IsEmpty]: Start isEmpty. Operand 141 states and 162 transitions. [2022-04-15 09:19:11,602 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 74 [2022-04-15 09:19:11,602 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:19:11,602 INFO L499 BasicCegarLoop]: trace histogram [10, 9, 9, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:19:11,618 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 09:19:11,803 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 09:19:11,803 INFO L403 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:19:11,803 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:19:11,803 INFO L85 PathProgramCache]: Analyzing trace with hash -1390565976, now seen corresponding path program 3 times [2022-04-15 09:19:11,803 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:19:11,804 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1262140106] [2022-04-15 09:19:18,267 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:19:18,267 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:19:18,267 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:19:18,267 INFO L85 PathProgramCache]: Analyzing trace with hash -1390565976, now seen corresponding path program 4 times [2022-04-15 09:19:18,267 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:19:18,268 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [414395717] [2022-04-15 09:19:18,268 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:19:18,268 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:19:18,282 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:19:18,282 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [637794670] [2022-04-15 09:19:18,282 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 09:19:18,282 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:19:18,282 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:19:18,284 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 09:19:18,284 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 09:19:18,328 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 09:19:18,328 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:19:18,329 INFO L263 TraceCheckSpWp]: Trace formula consists of 194 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-15 09:19:18,341 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:19:18,342 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:19:19,052 INFO L272 TraceCheckUtils]: 0: Hoare triple {8912#true} call ULTIMATE.init(); {8912#true} is VALID [2022-04-15 09:19:19,052 INFO L290 TraceCheckUtils]: 1: Hoare triple {8912#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);~counter~0 := 0; {8912#true} is VALID [2022-04-15 09:19:19,052 INFO L290 TraceCheckUtils]: 2: Hoare triple {8912#true} assume true; {8912#true} is VALID [2022-04-15 09:19:19,052 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8912#true} {8912#true} #96#return; {8912#true} is VALID [2022-04-15 09:19:19,052 INFO L272 TraceCheckUtils]: 4: Hoare triple {8912#true} call #t~ret8 := main(); {8912#true} is VALID [2022-04-15 09:19:19,052 INFO L290 TraceCheckUtils]: 5: Hoare triple {8912#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {8912#true} is VALID [2022-04-15 09:19:19,052 INFO L272 TraceCheckUtils]: 6: Hoare triple {8912#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {8912#true} is VALID [2022-04-15 09:19:19,052 INFO L290 TraceCheckUtils]: 7: Hoare triple {8912#true} ~cond := #in~cond; {8912#true} is VALID [2022-04-15 09:19:19,053 INFO L290 TraceCheckUtils]: 8: Hoare triple {8912#true} assume !(0 == ~cond); {8912#true} is VALID [2022-04-15 09:19:19,053 INFO L290 TraceCheckUtils]: 9: Hoare triple {8912#true} assume true; {8912#true} is VALID [2022-04-15 09:19:19,053 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8912#true} {8912#true} #80#return; {8912#true} is VALID [2022-04-15 09:19:19,053 INFO L290 TraceCheckUtils]: 11: Hoare triple {8912#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {8950#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:19:19,053 INFO L290 TraceCheckUtils]: 12: Hoare triple {8950#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8950#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:19:19,054 INFO L290 TraceCheckUtils]: 13: Hoare triple {8950#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} assume !!(#t~post6 < 5);havoc #t~post6; {8950#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:19:19,054 INFO L272 TraceCheckUtils]: 14: Hoare triple {8950#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {8912#true} is VALID [2022-04-15 09:19:19,054 INFO L290 TraceCheckUtils]: 15: Hoare triple {8912#true} ~cond := #in~cond; {8912#true} is VALID [2022-04-15 09:19:19,054 INFO L290 TraceCheckUtils]: 16: Hoare triple {8912#true} assume !(0 == ~cond); {8912#true} is VALID [2022-04-15 09:19:19,054 INFO L290 TraceCheckUtils]: 17: Hoare triple {8912#true} assume true; {8912#true} is VALID [2022-04-15 09:19:19,054 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {8912#true} {8950#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #82#return; {8950#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:19:19,055 INFO L272 TraceCheckUtils]: 19: Hoare triple {8950#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {8912#true} is VALID [2022-04-15 09:19:19,055 INFO L290 TraceCheckUtils]: 20: Hoare triple {8912#true} ~cond := #in~cond; {8912#true} is VALID [2022-04-15 09:19:19,055 INFO L290 TraceCheckUtils]: 21: Hoare triple {8912#true} assume !(0 == ~cond); {8912#true} is VALID [2022-04-15 09:19:19,055 INFO L290 TraceCheckUtils]: 22: Hoare triple {8912#true} assume true; {8912#true} is VALID [2022-04-15 09:19:19,055 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {8912#true} {8950#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #84#return; {8950#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:19:19,055 INFO L272 TraceCheckUtils]: 24: Hoare triple {8950#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {8912#true} is VALID [2022-04-15 09:19:19,055 INFO L290 TraceCheckUtils]: 25: Hoare triple {8912#true} ~cond := #in~cond; {8912#true} is VALID [2022-04-15 09:19:19,055 INFO L290 TraceCheckUtils]: 26: Hoare triple {8912#true} assume !(0 == ~cond); {8912#true} is VALID [2022-04-15 09:19:19,055 INFO L290 TraceCheckUtils]: 27: Hoare triple {8912#true} assume true; {8912#true} is VALID [2022-04-15 09:19:19,056 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {8912#true} {8950#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #86#return; {8950#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:19:19,057 INFO L290 TraceCheckUtils]: 29: Hoare triple {8950#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {9005#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:19:19,057 INFO L290 TraceCheckUtils]: 30: Hoare triple {9005#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9005#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:19:19,057 INFO L290 TraceCheckUtils]: 31: Hoare triple {9005#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} assume !!(#t~post6 < 5);havoc #t~post6; {9005#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:19:19,058 INFO L272 TraceCheckUtils]: 32: Hoare triple {9005#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {8912#true} is VALID [2022-04-15 09:19:19,058 INFO L290 TraceCheckUtils]: 33: Hoare triple {8912#true} ~cond := #in~cond; {8912#true} is VALID [2022-04-15 09:19:19,058 INFO L290 TraceCheckUtils]: 34: Hoare triple {8912#true} assume !(0 == ~cond); {8912#true} is VALID [2022-04-15 09:19:19,058 INFO L290 TraceCheckUtils]: 35: Hoare triple {8912#true} assume true; {8912#true} is VALID [2022-04-15 09:19:19,058 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8912#true} {9005#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} #82#return; {9005#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:19:19,058 INFO L272 TraceCheckUtils]: 37: Hoare triple {9005#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {8912#true} is VALID [2022-04-15 09:19:19,058 INFO L290 TraceCheckUtils]: 38: Hoare triple {8912#true} ~cond := #in~cond; {8912#true} is VALID [2022-04-15 09:19:19,058 INFO L290 TraceCheckUtils]: 39: Hoare triple {8912#true} assume !(0 == ~cond); {8912#true} is VALID [2022-04-15 09:19:19,058 INFO L290 TraceCheckUtils]: 40: Hoare triple {8912#true} assume true; {8912#true} is VALID [2022-04-15 09:19:19,059 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {8912#true} {9005#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} #84#return; {9005#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:19:19,059 INFO L272 TraceCheckUtils]: 42: Hoare triple {9005#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {8912#true} is VALID [2022-04-15 09:19:19,059 INFO L290 TraceCheckUtils]: 43: Hoare triple {8912#true} ~cond := #in~cond; {8912#true} is VALID [2022-04-15 09:19:19,059 INFO L290 TraceCheckUtils]: 44: Hoare triple {8912#true} assume !(0 == ~cond); {8912#true} is VALID [2022-04-15 09:19:19,059 INFO L290 TraceCheckUtils]: 45: Hoare triple {8912#true} assume true; {8912#true} is VALID [2022-04-15 09:19:19,060 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {8912#true} {9005#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} #86#return; {9005#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:19:19,061 INFO L290 TraceCheckUtils]: 47: Hoare triple {9005#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} assume !(~r~0 >= ~d~0); {9060#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (< (mod main_~B~0 4294967296) main_~d~0))} is VALID [2022-04-15 09:19:19,061 INFO L290 TraceCheckUtils]: 48: Hoare triple {9060#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (< (mod main_~B~0 4294967296) main_~d~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9060#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (< (mod main_~B~0 4294967296) main_~d~0))} is VALID [2022-04-15 09:19:19,061 INFO L290 TraceCheckUtils]: 49: Hoare triple {9060#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (< (mod main_~B~0 4294967296) main_~d~0))} assume !!(#t~post7 < 5);havoc #t~post7; {9060#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (< (mod main_~B~0 4294967296) main_~d~0))} is VALID [2022-04-15 09:19:19,061 INFO L272 TraceCheckUtils]: 50: Hoare triple {9060#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (< (mod main_~B~0 4294967296) main_~d~0))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {8912#true} is VALID [2022-04-15 09:19:19,061 INFO L290 TraceCheckUtils]: 51: Hoare triple {8912#true} ~cond := #in~cond; {8912#true} is VALID [2022-04-15 09:19:19,061 INFO L290 TraceCheckUtils]: 52: Hoare triple {8912#true} assume !(0 == ~cond); {8912#true} is VALID [2022-04-15 09:19:19,062 INFO L290 TraceCheckUtils]: 53: Hoare triple {8912#true} assume true; {8912#true} is VALID [2022-04-15 09:19:19,062 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {8912#true} {9060#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (< (mod main_~B~0 4294967296) main_~d~0))} #88#return; {9060#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (< (mod main_~B~0 4294967296) main_~d~0))} is VALID [2022-04-15 09:19:19,062 INFO L272 TraceCheckUtils]: 55: Hoare triple {9060#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (< (mod main_~B~0 4294967296) main_~d~0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {8912#true} is VALID [2022-04-15 09:19:19,062 INFO L290 TraceCheckUtils]: 56: Hoare triple {8912#true} ~cond := #in~cond; {8912#true} is VALID [2022-04-15 09:19:19,062 INFO L290 TraceCheckUtils]: 57: Hoare triple {8912#true} assume !(0 == ~cond); {8912#true} is VALID [2022-04-15 09:19:19,062 INFO L290 TraceCheckUtils]: 58: Hoare triple {8912#true} assume true; {8912#true} is VALID [2022-04-15 09:19:19,063 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {8912#true} {9060#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (< (mod main_~B~0 4294967296) main_~d~0))} #90#return; {9060#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (< (mod main_~B~0 4294967296) main_~d~0))} is VALID [2022-04-15 09:19:19,065 INFO L290 TraceCheckUtils]: 60: Hoare triple {9060#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (< (mod main_~B~0 4294967296) main_~d~0))} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {9100#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (< 0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:19:19,065 INFO L290 TraceCheckUtils]: 61: Hoare triple {9100#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (< 0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {9100#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (< 0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:19:19,065 INFO L290 TraceCheckUtils]: 62: Hoare triple {9100#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (< 0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9100#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (< 0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:19:19,066 INFO L290 TraceCheckUtils]: 63: Hoare triple {9100#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (< 0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} assume !!(#t~post7 < 5);havoc #t~post7; {9100#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (< 0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:19:19,066 INFO L272 TraceCheckUtils]: 64: Hoare triple {9100#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (< 0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {8912#true} is VALID [2022-04-15 09:19:19,066 INFO L290 TraceCheckUtils]: 65: Hoare triple {8912#true} ~cond := #in~cond; {8912#true} is VALID [2022-04-15 09:19:19,066 INFO L290 TraceCheckUtils]: 66: Hoare triple {8912#true} assume !(0 == ~cond); {8912#true} is VALID [2022-04-15 09:19:19,066 INFO L290 TraceCheckUtils]: 67: Hoare triple {8912#true} assume true; {8912#true} is VALID [2022-04-15 09:19:19,067 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {8912#true} {9100#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (< 0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #88#return; {9100#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (< 0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:19:19,067 INFO L272 TraceCheckUtils]: 69: Hoare triple {9100#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (< 0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {9128#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:19:19,068 INFO L290 TraceCheckUtils]: 70: Hoare triple {9128#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {9132#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:19:19,068 INFO L290 TraceCheckUtils]: 71: Hoare triple {9132#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8913#false} is VALID [2022-04-15 09:19:19,068 INFO L290 TraceCheckUtils]: 72: Hoare triple {8913#false} assume !false; {8913#false} is VALID [2022-04-15 09:19:19,068 INFO L134 CoverageAnalysis]: Checked inductivity of 172 backedges. 18 proven. 10 refuted. 0 times theorem prover too weak. 144 trivial. 0 not checked. [2022-04-15 09:19:19,068 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:19:26,186 INFO L290 TraceCheckUtils]: 72: Hoare triple {8913#false} assume !false; {8913#false} is VALID [2022-04-15 09:19:26,187 INFO L290 TraceCheckUtils]: 71: Hoare triple {9132#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8913#false} is VALID [2022-04-15 09:19:26,188 INFO L290 TraceCheckUtils]: 70: Hoare triple {9128#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {9132#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:19:26,188 INFO L272 TraceCheckUtils]: 69: Hoare triple {9148#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {9128#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:19:26,189 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {8912#true} {9148#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} #88#return; {9148#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:19:26,189 INFO L290 TraceCheckUtils]: 67: Hoare triple {8912#true} assume true; {8912#true} is VALID [2022-04-15 09:19:26,189 INFO L290 TraceCheckUtils]: 66: Hoare triple {8912#true} assume !(0 == ~cond); {8912#true} is VALID [2022-04-15 09:19:26,189 INFO L290 TraceCheckUtils]: 65: Hoare triple {8912#true} ~cond := #in~cond; {8912#true} is VALID [2022-04-15 09:19:26,189 INFO L272 TraceCheckUtils]: 64: Hoare triple {9148#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {8912#true} is VALID [2022-04-15 09:19:26,189 INFO L290 TraceCheckUtils]: 63: Hoare triple {9148#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} assume !!(#t~post7 < 5);havoc #t~post7; {9148#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:19:26,189 INFO L290 TraceCheckUtils]: 62: Hoare triple {9148#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9148#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:19:26,190 INFO L290 TraceCheckUtils]: 61: Hoare triple {9148#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {9148#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:19:26,202 INFO L290 TraceCheckUtils]: 60: Hoare triple {9176#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {9148#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:19:26,202 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {8912#true} {9176#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} #90#return; {9176#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:19:26,202 INFO L290 TraceCheckUtils]: 58: Hoare triple {8912#true} assume true; {8912#true} is VALID [2022-04-15 09:19:26,202 INFO L290 TraceCheckUtils]: 57: Hoare triple {8912#true} assume !(0 == ~cond); {8912#true} is VALID [2022-04-15 09:19:26,202 INFO L290 TraceCheckUtils]: 56: Hoare triple {8912#true} ~cond := #in~cond; {8912#true} is VALID [2022-04-15 09:19:26,202 INFO L272 TraceCheckUtils]: 55: Hoare triple {9176#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {8912#true} is VALID [2022-04-15 09:19:26,203 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {8912#true} {9176#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} #88#return; {9176#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:19:26,203 INFO L290 TraceCheckUtils]: 53: Hoare triple {8912#true} assume true; {8912#true} is VALID [2022-04-15 09:19:26,203 INFO L290 TraceCheckUtils]: 52: Hoare triple {8912#true} assume !(0 == ~cond); {8912#true} is VALID [2022-04-15 09:19:26,203 INFO L290 TraceCheckUtils]: 51: Hoare triple {8912#true} ~cond := #in~cond; {8912#true} is VALID [2022-04-15 09:19:26,203 INFO L272 TraceCheckUtils]: 50: Hoare triple {9176#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {8912#true} is VALID [2022-04-15 09:19:26,204 INFO L290 TraceCheckUtils]: 49: Hoare triple {9176#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} assume !!(#t~post7 < 5);havoc #t~post7; {9176#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:19:26,205 INFO L290 TraceCheckUtils]: 48: Hoare triple {9176#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9176#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:19:26,205 INFO L290 TraceCheckUtils]: 47: Hoare triple {9216#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} assume !(~r~0 >= ~d~0); {9176#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:19:26,206 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {8912#true} {9216#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} #86#return; {9216#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} is VALID [2022-04-15 09:19:26,206 INFO L290 TraceCheckUtils]: 45: Hoare triple {8912#true} assume true; {8912#true} is VALID [2022-04-15 09:19:26,206 INFO L290 TraceCheckUtils]: 44: Hoare triple {8912#true} assume !(0 == ~cond); {8912#true} is VALID [2022-04-15 09:19:26,206 INFO L290 TraceCheckUtils]: 43: Hoare triple {8912#true} ~cond := #in~cond; {8912#true} is VALID [2022-04-15 09:19:26,206 INFO L272 TraceCheckUtils]: 42: Hoare triple {9216#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {8912#true} is VALID [2022-04-15 09:19:26,207 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {8912#true} {9216#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} #84#return; {9216#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} is VALID [2022-04-15 09:19:26,207 INFO L290 TraceCheckUtils]: 40: Hoare triple {8912#true} assume true; {8912#true} is VALID [2022-04-15 09:19:26,207 INFO L290 TraceCheckUtils]: 39: Hoare triple {8912#true} assume !(0 == ~cond); {8912#true} is VALID [2022-04-15 09:19:26,207 INFO L290 TraceCheckUtils]: 38: Hoare triple {8912#true} ~cond := #in~cond; {8912#true} is VALID [2022-04-15 09:19:26,207 INFO L272 TraceCheckUtils]: 37: Hoare triple {9216#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {8912#true} is VALID [2022-04-15 09:19:26,208 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8912#true} {9216#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} #82#return; {9216#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} is VALID [2022-04-15 09:19:26,208 INFO L290 TraceCheckUtils]: 35: Hoare triple {8912#true} assume true; {8912#true} is VALID [2022-04-15 09:19:26,208 INFO L290 TraceCheckUtils]: 34: Hoare triple {8912#true} assume !(0 == ~cond); {8912#true} is VALID [2022-04-15 09:19:26,208 INFO L290 TraceCheckUtils]: 33: Hoare triple {8912#true} ~cond := #in~cond; {8912#true} is VALID [2022-04-15 09:19:26,208 INFO L272 TraceCheckUtils]: 32: Hoare triple {9216#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {8912#true} is VALID [2022-04-15 09:19:26,209 INFO L290 TraceCheckUtils]: 31: Hoare triple {9216#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} assume !!(#t~post6 < 5);havoc #t~post6; {9216#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} is VALID [2022-04-15 09:19:26,209 INFO L290 TraceCheckUtils]: 30: Hoare triple {9216#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9216#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} is VALID [2022-04-15 09:19:26,213 INFO L290 TraceCheckUtils]: 29: Hoare triple {9271#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {9216#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} is VALID [2022-04-15 09:19:26,213 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {8912#true} {9271#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #86#return; {9271#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:19:26,213 INFO L290 TraceCheckUtils]: 27: Hoare triple {8912#true} assume true; {8912#true} is VALID [2022-04-15 09:19:26,213 INFO L290 TraceCheckUtils]: 26: Hoare triple {8912#true} assume !(0 == ~cond); {8912#true} is VALID [2022-04-15 09:19:26,213 INFO L290 TraceCheckUtils]: 25: Hoare triple {8912#true} ~cond := #in~cond; {8912#true} is VALID [2022-04-15 09:19:26,213 INFO L272 TraceCheckUtils]: 24: Hoare triple {9271#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {8912#true} is VALID [2022-04-15 09:19:26,214 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {8912#true} {9271#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #84#return; {9271#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:19:26,214 INFO L290 TraceCheckUtils]: 22: Hoare triple {8912#true} assume true; {8912#true} is VALID [2022-04-15 09:19:26,214 INFO L290 TraceCheckUtils]: 21: Hoare triple {8912#true} assume !(0 == ~cond); {8912#true} is VALID [2022-04-15 09:19:26,214 INFO L290 TraceCheckUtils]: 20: Hoare triple {8912#true} ~cond := #in~cond; {8912#true} is VALID [2022-04-15 09:19:26,214 INFO L272 TraceCheckUtils]: 19: Hoare triple {9271#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {8912#true} is VALID [2022-04-15 09:19:26,215 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {8912#true} {9271#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #82#return; {9271#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:19:26,215 INFO L290 TraceCheckUtils]: 17: Hoare triple {8912#true} assume true; {8912#true} is VALID [2022-04-15 09:19:26,215 INFO L290 TraceCheckUtils]: 16: Hoare triple {8912#true} assume !(0 == ~cond); {8912#true} is VALID [2022-04-15 09:19:26,215 INFO L290 TraceCheckUtils]: 15: Hoare triple {8912#true} ~cond := #in~cond; {8912#true} is VALID [2022-04-15 09:19:26,215 INFO L272 TraceCheckUtils]: 14: Hoare triple {9271#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {8912#true} is VALID [2022-04-15 09:19:26,216 INFO L290 TraceCheckUtils]: 13: Hoare triple {9271#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} assume !!(#t~post6 < 5);havoc #t~post6; {9271#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:19:26,216 INFO L290 TraceCheckUtils]: 12: Hoare triple {9271#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {9271#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:19:26,216 INFO L290 TraceCheckUtils]: 11: Hoare triple {8912#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {9271#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:19:26,217 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8912#true} {8912#true} #80#return; {8912#true} is VALID [2022-04-15 09:19:26,217 INFO L290 TraceCheckUtils]: 9: Hoare triple {8912#true} assume true; {8912#true} is VALID [2022-04-15 09:19:26,217 INFO L290 TraceCheckUtils]: 8: Hoare triple {8912#true} assume !(0 == ~cond); {8912#true} is VALID [2022-04-15 09:19:26,217 INFO L290 TraceCheckUtils]: 7: Hoare triple {8912#true} ~cond := #in~cond; {8912#true} is VALID [2022-04-15 09:19:26,217 INFO L272 TraceCheckUtils]: 6: Hoare triple {8912#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {8912#true} is VALID [2022-04-15 09:19:26,217 INFO L290 TraceCheckUtils]: 5: Hoare triple {8912#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {8912#true} is VALID [2022-04-15 09:19:26,217 INFO L272 TraceCheckUtils]: 4: Hoare triple {8912#true} call #t~ret8 := main(); {8912#true} is VALID [2022-04-15 09:19:26,217 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8912#true} {8912#true} #96#return; {8912#true} is VALID [2022-04-15 09:19:26,217 INFO L290 TraceCheckUtils]: 2: Hoare triple {8912#true} assume true; {8912#true} is VALID [2022-04-15 09:19:26,217 INFO L290 TraceCheckUtils]: 1: Hoare triple {8912#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);~counter~0 := 0; {8912#true} is VALID [2022-04-15 09:19:26,217 INFO L272 TraceCheckUtils]: 0: Hoare triple {8912#true} call ULTIMATE.init(); {8912#true} is VALID [2022-04-15 09:19:26,218 INFO L134 CoverageAnalysis]: Checked inductivity of 172 backedges. 18 proven. 10 refuted. 0 times theorem prover too weak. 144 trivial. 0 not checked. [2022-04-15 09:19:26,218 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:19:26,218 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [414395717] [2022-04-15 09:19:26,218 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:19:26,218 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [637794670] [2022-04-15 09:19:26,218 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [637794670] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:19:26,218 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:19:26,218 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 12 [2022-04-15 09:19:26,218 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:19:26,218 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1262140106] [2022-04-15 09:19:26,218 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1262140106] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:19:26,218 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:19:26,218 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-15 09:19:26,218 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [357579543] [2022-04-15 09:19:26,218 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:19:26,219 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.125) internal successors, (25), 7 states have internal predecessors, (25), 5 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) Word has length 73 [2022-04-15 09:19:26,219 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:19:26,219 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 3.125) internal successors, (25), 7 states have internal predecessors, (25), 5 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-15 09:19:26,260 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 49 edges. 49 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:19:26,260 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-15 09:19:26,260 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:19:26,260 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-15 09:19:26,260 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2022-04-15 09:19:26,261 INFO L87 Difference]: Start difference. First operand 141 states and 162 transitions. Second operand has 8 states, 8 states have (on average 3.125) internal successors, (25), 7 states have internal predecessors, (25), 5 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-15 09:19:27,234 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:19:27,234 INFO L93 Difference]: Finished difference Result 168 states and 197 transitions. [2022-04-15 09:19:27,234 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-15 09:19:27,234 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 3.125) internal successors, (25), 7 states have internal predecessors, (25), 5 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) Word has length 73 [2022-04-15 09:19:27,234 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:19:27,234 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.125) internal successors, (25), 7 states have internal predecessors, (25), 5 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-15 09:19:27,235 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 103 transitions. [2022-04-15 09:19:27,235 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 3.125) internal successors, (25), 7 states have internal predecessors, (25), 5 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-15 09:19:27,236 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 103 transitions. [2022-04-15 09:19:27,237 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 103 transitions. [2022-04-15 09:19:27,319 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 103 edges. 103 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:19:27,321 INFO L225 Difference]: With dead ends: 168 [2022-04-15 09:19:27,321 INFO L226 Difference]: Without dead ends: 143 [2022-04-15 09:19:27,321 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 147 GetRequests, 134 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 15 ImplicationChecksByTransitivity, 0.8s TimeCoverageRelationStatistics Valid=48, Invalid=134, Unknown=0, NotChecked=0, Total=182 [2022-04-15 09:19:27,322 INFO L913 BasicCegarLoop]: 55 mSDtfsCounter, 12 mSDsluCounter, 205 mSDsCounter, 0 mSdLazyCounter, 171 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 260 SdHoareTripleChecker+Invalid, 180 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 171 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-15 09:19:27,322 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 260 Invalid, 180 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 171 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-15 09:19:27,322 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 143 states. [2022-04-15 09:19:27,452 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 143 to 143. [2022-04-15 09:19:27,452 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:19:27,453 INFO L82 GeneralOperation]: Start isEquivalent. First operand 143 states. Second operand has 143 states, 93 states have (on average 1.1290322580645162) internal successors, (105), 97 states have internal predecessors, (105), 29 states have call successors, (29), 21 states have call predecessors, (29), 20 states have return successors, (26), 24 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-15 09:19:27,453 INFO L74 IsIncluded]: Start isIncluded. First operand 143 states. Second operand has 143 states, 93 states have (on average 1.1290322580645162) internal successors, (105), 97 states have internal predecessors, (105), 29 states have call successors, (29), 21 states have call predecessors, (29), 20 states have return successors, (26), 24 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-15 09:19:27,454 INFO L87 Difference]: Start difference. First operand 143 states. Second operand has 143 states, 93 states have (on average 1.1290322580645162) internal successors, (105), 97 states have internal predecessors, (105), 29 states have call successors, (29), 21 states have call predecessors, (29), 20 states have return successors, (26), 24 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-15 09:19:27,456 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:19:27,456 INFO L93 Difference]: Finished difference Result 143 states and 160 transitions. [2022-04-15 09:19:27,456 INFO L276 IsEmpty]: Start isEmpty. Operand 143 states and 160 transitions. [2022-04-15 09:19:27,456 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:19:27,456 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:19:27,456 INFO L74 IsIncluded]: Start isIncluded. First operand has 143 states, 93 states have (on average 1.1290322580645162) internal successors, (105), 97 states have internal predecessors, (105), 29 states have call successors, (29), 21 states have call predecessors, (29), 20 states have return successors, (26), 24 states have call predecessors, (26), 26 states have call successors, (26) Second operand 143 states. [2022-04-15 09:19:27,457 INFO L87 Difference]: Start difference. First operand has 143 states, 93 states have (on average 1.1290322580645162) internal successors, (105), 97 states have internal predecessors, (105), 29 states have call successors, (29), 21 states have call predecessors, (29), 20 states have return successors, (26), 24 states have call predecessors, (26), 26 states have call successors, (26) Second operand 143 states. [2022-04-15 09:19:27,460 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:19:27,460 INFO L93 Difference]: Finished difference Result 143 states and 160 transitions. [2022-04-15 09:19:27,460 INFO L276 IsEmpty]: Start isEmpty. Operand 143 states and 160 transitions. [2022-04-15 09:19:27,460 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:19:27,461 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:19:27,461 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:19:27,461 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:19:27,461 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 143 states, 93 states have (on average 1.1290322580645162) internal successors, (105), 97 states have internal predecessors, (105), 29 states have call successors, (29), 21 states have call predecessors, (29), 20 states have return successors, (26), 24 states have call predecessors, (26), 26 states have call successors, (26) [2022-04-15 09:19:27,471 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 143 states to 143 states and 160 transitions. [2022-04-15 09:19:27,471 INFO L78 Accepts]: Start accepts. Automaton has 143 states and 160 transitions. Word has length 73 [2022-04-15 09:19:27,473 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:19:27,473 INFO L478 AbstractCegarLoop]: Abstraction has 143 states and 160 transitions. [2022-04-15 09:19:27,473 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 3.125) internal successors, (25), 7 states have internal predecessors, (25), 5 states have call successors, (13), 2 states have call predecessors, (13), 1 states have return successors, (11), 5 states have call predecessors, (11), 5 states have call successors, (11) [2022-04-15 09:19:27,473 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 143 states and 160 transitions. [2022-04-15 09:19:27,630 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 160 edges. 160 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:19:27,630 INFO L276 IsEmpty]: Start isEmpty. Operand 143 states and 160 transitions. [2022-04-15 09:19:27,631 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 80 [2022-04-15 09:19:27,631 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:19:27,631 INFO L499 BasicCegarLoop]: trace histogram [11, 10, 10, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:19:27,647 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Forceful destruction successful, exit code 0 [2022-04-15 09:19:27,835 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 09:19:27,835 INFO L403 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:19:27,836 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:19:27,836 INFO L85 PathProgramCache]: Analyzing trace with hash 1792978632, now seen corresponding path program 1 times [2022-04-15 09:19:27,836 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:19:27,836 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2106758478] [2022-04-15 09:19:37,586 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:19:37,586 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:19:37,586 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:19:37,586 INFO L85 PathProgramCache]: Analyzing trace with hash 1792978632, now seen corresponding path program 2 times [2022-04-15 09:19:37,586 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:19:37,586 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [450688051] [2022-04-15 09:19:37,586 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:19:37,586 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:19:37,594 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:19:37,594 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1583089852] [2022-04-15 09:19:37,595 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 09:19:37,595 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:19:37,595 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:19:37,603 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 09:19:37,604 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 09:19:37,683 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 09:19:37,684 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:19:37,685 INFO L263 TraceCheckSpWp]: Trace formula consists of 205 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-15 09:19:37,699 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:19:37,700 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:20:17,952 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 09:20:23,975 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 09:20:37,781 INFO L272 TraceCheckUtils]: 0: Hoare triple {10273#true} call ULTIMATE.init(); {10273#true} is VALID [2022-04-15 09:20:37,781 INFO L290 TraceCheckUtils]: 1: Hoare triple {10273#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);~counter~0 := 0; {10273#true} is VALID [2022-04-15 09:20:37,781 INFO L290 TraceCheckUtils]: 2: Hoare triple {10273#true} assume true; {10273#true} is VALID [2022-04-15 09:20:37,781 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10273#true} {10273#true} #96#return; {10273#true} is VALID [2022-04-15 09:20:37,781 INFO L272 TraceCheckUtils]: 4: Hoare triple {10273#true} call #t~ret8 := main(); {10273#true} is VALID [2022-04-15 09:20:37,781 INFO L290 TraceCheckUtils]: 5: Hoare triple {10273#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {10273#true} is VALID [2022-04-15 09:20:37,781 INFO L272 TraceCheckUtils]: 6: Hoare triple {10273#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {10273#true} is VALID [2022-04-15 09:20:37,781 INFO L290 TraceCheckUtils]: 7: Hoare triple {10273#true} ~cond := #in~cond; {10273#true} is VALID [2022-04-15 09:20:37,781 INFO L290 TraceCheckUtils]: 8: Hoare triple {10273#true} assume !(0 == ~cond); {10273#true} is VALID [2022-04-15 09:20:37,782 INFO L290 TraceCheckUtils]: 9: Hoare triple {10273#true} assume true; {10273#true} is VALID [2022-04-15 09:20:37,782 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10273#true} {10273#true} #80#return; {10273#true} is VALID [2022-04-15 09:20:37,782 INFO L290 TraceCheckUtils]: 11: Hoare triple {10273#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:20:37,782 INFO L290 TraceCheckUtils]: 12: Hoare triple {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:20:37,783 INFO L290 TraceCheckUtils]: 13: Hoare triple {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} assume !!(#t~post6 < 5);havoc #t~post6; {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:20:37,783 INFO L272 TraceCheckUtils]: 14: Hoare triple {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {10273#true} is VALID [2022-04-15 09:20:37,783 INFO L290 TraceCheckUtils]: 15: Hoare triple {10273#true} ~cond := #in~cond; {10273#true} is VALID [2022-04-15 09:20:37,783 INFO L290 TraceCheckUtils]: 16: Hoare triple {10273#true} assume !(0 == ~cond); {10273#true} is VALID [2022-04-15 09:20:37,783 INFO L290 TraceCheckUtils]: 17: Hoare triple {10273#true} assume true; {10273#true} is VALID [2022-04-15 09:20:37,783 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {10273#true} {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #82#return; {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:20:37,784 INFO L272 TraceCheckUtils]: 19: Hoare triple {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {10273#true} is VALID [2022-04-15 09:20:37,784 INFO L290 TraceCheckUtils]: 20: Hoare triple {10273#true} ~cond := #in~cond; {10273#true} is VALID [2022-04-15 09:20:37,784 INFO L290 TraceCheckUtils]: 21: Hoare triple {10273#true} assume !(0 == ~cond); {10273#true} is VALID [2022-04-15 09:20:37,784 INFO L290 TraceCheckUtils]: 22: Hoare triple {10273#true} assume true; {10273#true} is VALID [2022-04-15 09:20:37,784 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {10273#true} {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #84#return; {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:20:37,784 INFO L272 TraceCheckUtils]: 24: Hoare triple {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {10273#true} is VALID [2022-04-15 09:20:37,784 INFO L290 TraceCheckUtils]: 25: Hoare triple {10273#true} ~cond := #in~cond; {10273#true} is VALID [2022-04-15 09:20:37,784 INFO L290 TraceCheckUtils]: 26: Hoare triple {10273#true} assume !(0 == ~cond); {10273#true} is VALID [2022-04-15 09:20:37,784 INFO L290 TraceCheckUtils]: 27: Hoare triple {10273#true} assume true; {10273#true} is VALID [2022-04-15 09:20:37,785 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {10273#true} {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #86#return; {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:20:37,785 INFO L290 TraceCheckUtils]: 29: Hoare triple {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:20:37,786 INFO L290 TraceCheckUtils]: 30: Hoare triple {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:20:37,786 INFO L290 TraceCheckUtils]: 31: Hoare triple {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} assume !!(#t~post6 < 5);havoc #t~post6; {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:20:37,786 INFO L272 TraceCheckUtils]: 32: Hoare triple {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {10273#true} is VALID [2022-04-15 09:20:37,786 INFO L290 TraceCheckUtils]: 33: Hoare triple {10273#true} ~cond := #in~cond; {10273#true} is VALID [2022-04-15 09:20:37,786 INFO L290 TraceCheckUtils]: 34: Hoare triple {10273#true} assume !(0 == ~cond); {10273#true} is VALID [2022-04-15 09:20:37,786 INFO L290 TraceCheckUtils]: 35: Hoare triple {10273#true} assume true; {10273#true} is VALID [2022-04-15 09:20:37,787 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {10273#true} {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #82#return; {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:20:37,787 INFO L272 TraceCheckUtils]: 37: Hoare triple {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {10273#true} is VALID [2022-04-15 09:20:37,787 INFO L290 TraceCheckUtils]: 38: Hoare triple {10273#true} ~cond := #in~cond; {10273#true} is VALID [2022-04-15 09:20:37,787 INFO L290 TraceCheckUtils]: 39: Hoare triple {10273#true} assume !(0 == ~cond); {10273#true} is VALID [2022-04-15 09:20:37,787 INFO L290 TraceCheckUtils]: 40: Hoare triple {10273#true} assume true; {10273#true} is VALID [2022-04-15 09:20:37,787 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {10273#true} {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #84#return; {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:20:37,787 INFO L272 TraceCheckUtils]: 42: Hoare triple {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {10273#true} is VALID [2022-04-15 09:20:37,787 INFO L290 TraceCheckUtils]: 43: Hoare triple {10273#true} ~cond := #in~cond; {10273#true} is VALID [2022-04-15 09:20:37,788 INFO L290 TraceCheckUtils]: 44: Hoare triple {10273#true} assume !(0 == ~cond); {10273#true} is VALID [2022-04-15 09:20:37,788 INFO L290 TraceCheckUtils]: 45: Hoare triple {10273#true} assume true; {10273#true} is VALID [2022-04-15 09:20:37,788 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {10273#true} {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #86#return; {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:20:37,788 INFO L290 TraceCheckUtils]: 47: Hoare triple {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} assume !(~r~0 >= ~d~0); {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:20:37,789 INFO L290 TraceCheckUtils]: 48: Hoare triple {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:20:37,789 INFO L290 TraceCheckUtils]: 49: Hoare triple {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} assume !!(#t~post7 < 5);havoc #t~post7; {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:20:37,789 INFO L272 TraceCheckUtils]: 50: Hoare triple {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {10273#true} is VALID [2022-04-15 09:20:37,789 INFO L290 TraceCheckUtils]: 51: Hoare triple {10273#true} ~cond := #in~cond; {10273#true} is VALID [2022-04-15 09:20:37,789 INFO L290 TraceCheckUtils]: 52: Hoare triple {10273#true} assume !(0 == ~cond); {10273#true} is VALID [2022-04-15 09:20:37,789 INFO L290 TraceCheckUtils]: 53: Hoare triple {10273#true} assume true; {10273#true} is VALID [2022-04-15 09:20:37,790 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {10273#true} {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #88#return; {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:20:37,790 INFO L272 TraceCheckUtils]: 55: Hoare triple {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {10273#true} is VALID [2022-04-15 09:20:37,790 INFO L290 TraceCheckUtils]: 56: Hoare triple {10273#true} ~cond := #in~cond; {10273#true} is VALID [2022-04-15 09:20:37,790 INFO L290 TraceCheckUtils]: 57: Hoare triple {10273#true} assume !(0 == ~cond); {10273#true} is VALID [2022-04-15 09:20:37,790 INFO L290 TraceCheckUtils]: 58: Hoare triple {10273#true} assume true; {10273#true} is VALID [2022-04-15 09:20:37,791 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {10273#true} {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #90#return; {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:20:37,791 INFO L290 TraceCheckUtils]: 60: Hoare triple {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-15 09:20:37,792 INFO L290 TraceCheckUtils]: 61: Hoare triple {10311#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {10462#(and (= main_~q~0 main_~p~0) (<= (mod main_~A~0 4294967296) (+ main_~d~0 main_~r~0)))} is VALID [2022-04-15 09:20:37,792 INFO L290 TraceCheckUtils]: 62: Hoare triple {10462#(and (= main_~q~0 main_~p~0) (<= (mod main_~A~0 4294967296) (+ main_~d~0 main_~r~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10462#(and (= main_~q~0 main_~p~0) (<= (mod main_~A~0 4294967296) (+ main_~d~0 main_~r~0)))} is VALID [2022-04-15 09:20:37,793 INFO L290 TraceCheckUtils]: 63: Hoare triple {10462#(and (= main_~q~0 main_~p~0) (<= (mod main_~A~0 4294967296) (+ main_~d~0 main_~r~0)))} assume !!(#t~post7 < 5);havoc #t~post7; {10462#(and (= main_~q~0 main_~p~0) (<= (mod main_~A~0 4294967296) (+ main_~d~0 main_~r~0)))} is VALID [2022-04-15 09:20:37,793 INFO L272 TraceCheckUtils]: 64: Hoare triple {10462#(and (= main_~q~0 main_~p~0) (<= (mod main_~A~0 4294967296) (+ main_~d~0 main_~r~0)))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {10273#true} is VALID [2022-04-15 09:20:37,793 INFO L290 TraceCheckUtils]: 65: Hoare triple {10273#true} ~cond := #in~cond; {10475#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:20:37,793 INFO L290 TraceCheckUtils]: 66: Hoare triple {10475#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {10479#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:20:37,794 INFO L290 TraceCheckUtils]: 67: Hoare triple {10479#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {10479#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:20:37,794 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {10479#(not (= |__VERIFIER_assert_#in~cond| 0))} {10462#(and (= main_~q~0 main_~p~0) (<= (mod main_~A~0 4294967296) (+ main_~d~0 main_~r~0)))} #88#return; {10486#(and (= main_~q~0 main_~p~0) (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= (mod main_~A~0 4294967296) (+ main_~d~0 main_~r~0)))} is VALID [2022-04-15 09:20:37,794 INFO L272 TraceCheckUtils]: 69: Hoare triple {10486#(and (= main_~q~0 main_~p~0) (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= (mod main_~A~0 4294967296) (+ main_~d~0 main_~r~0)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {10273#true} is VALID [2022-04-15 09:20:37,795 INFO L290 TraceCheckUtils]: 70: Hoare triple {10273#true} ~cond := #in~cond; {10475#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:20:37,795 INFO L290 TraceCheckUtils]: 71: Hoare triple {10475#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {10479#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:20:37,795 INFO L290 TraceCheckUtils]: 72: Hoare triple {10479#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {10479#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:20:39,798 WARN L284 TraceCheckUtils]: 73: Hoare quadruple {10479#(not (= |__VERIFIER_assert_#in~cond| 0))} {10486#(and (= main_~q~0 main_~p~0) (= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (<= (mod main_~A~0 4294967296) (+ main_~d~0 main_~r~0)))} #90#return; {10502#(and (or (and (= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 0) (= main_~q~0 0) (exists ((aux_div_aux_mod_main_~B~0_26_37 Int) (aux_mod_aux_mod_main_~B~0_26_37 Int)) (and (< (+ (* 4294967296 aux_div_aux_mod_main_~B~0_26_37) aux_mod_aux_mod_main_~B~0_26_37) 4294967296) (<= 0 aux_mod_aux_mod_main_~B~0_26_37) (<= 0 (+ (* 4294967296 aux_div_aux_mod_main_~B~0_26_37) aux_mod_aux_mod_main_~B~0_26_37)) (< aux_mod_aux_mod_main_~B~0_26_37 4294967296) (= (* main_~p~0 (+ (* 4294967296 aux_div_aux_mod_main_~B~0_26_37) aux_mod_aux_mod_main_~B~0_26_37)) main_~d~0)))) (and (<= 0 (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0)) (= (mod (div (+ main_~d~0 (* (- 1) (* (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) main_~p~0))) 4294967296) main_~p~0) 0) (<= 0 (+ (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) (* 4294967296 (div (div (+ (* (- 1) (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) main_~p~0) main_~d~0) 4294967296) main_~p~0)))) (< (+ (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) (* 4294967296 (div (div (+ (* (- 1) (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) main_~p~0) main_~d~0) 4294967296) main_~p~0))) 4294967296) (not (= main_~q~0 0)) (< (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) 4294967296) (= (mod (+ (* (- 1) (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) main_~p~0) main_~d~0) 4294967296) 0))) (= main_~q~0 main_~p~0) (<= (mod main_~A~0 4294967296) (+ main_~d~0 main_~r~0)))} is UNKNOWN [2022-04-15 09:20:39,800 INFO L290 TraceCheckUtils]: 74: Hoare triple {10502#(and (or (and (= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 0) (= main_~q~0 0) (exists ((aux_div_aux_mod_main_~B~0_26_37 Int) (aux_mod_aux_mod_main_~B~0_26_37 Int)) (and (< (+ (* 4294967296 aux_div_aux_mod_main_~B~0_26_37) aux_mod_aux_mod_main_~B~0_26_37) 4294967296) (<= 0 aux_mod_aux_mod_main_~B~0_26_37) (<= 0 (+ (* 4294967296 aux_div_aux_mod_main_~B~0_26_37) aux_mod_aux_mod_main_~B~0_26_37)) (< aux_mod_aux_mod_main_~B~0_26_37 4294967296) (= (* main_~p~0 (+ (* 4294967296 aux_div_aux_mod_main_~B~0_26_37) aux_mod_aux_mod_main_~B~0_26_37)) main_~d~0)))) (and (<= 0 (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0)) (= (mod (div (+ main_~d~0 (* (- 1) (* (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) main_~p~0))) 4294967296) main_~p~0) 0) (<= 0 (+ (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) (* 4294967296 (div (div (+ (* (- 1) (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) main_~p~0) main_~d~0) 4294967296) main_~p~0)))) (< (+ (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) (* 4294967296 (div (div (+ (* (- 1) (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) main_~p~0) main_~d~0) 4294967296) main_~p~0))) 4294967296) (not (= main_~q~0 0)) (< (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) 4294967296) (= (mod (+ (* (- 1) (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) main_~p~0) main_~d~0) 4294967296) 0))) (= main_~q~0 main_~p~0) (<= (mod main_~A~0 4294967296) (+ main_~d~0 main_~r~0)))} assume !(1 != ~p~0); {10506#(and (< (+ (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) (* 4294967296 (div (div (+ main_~d~0 (* (- 1) (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) main_~q~0)) 4294967296) main_~q~0))) 4294967296) (= (mod (+ main_~d~0 (* (- 1) (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) main_~q~0)) 4294967296) 0) (<= 0 (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0)) (= main_~q~0 1) (< (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) 4294967296) (<= 0 (+ (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) (* 4294967296 (div (div (+ main_~d~0 (* (- 1) (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) main_~q~0)) 4294967296) main_~q~0)))))} is VALID [2022-04-15 09:20:39,803 INFO L272 TraceCheckUtils]: 75: Hoare triple {10506#(and (< (+ (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) (* 4294967296 (div (div (+ main_~d~0 (* (- 1) (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) main_~q~0)) 4294967296) main_~q~0))) 4294967296) (= (mod (+ main_~d~0 (* (- 1) (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) main_~q~0)) 4294967296) 0) (<= 0 (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0)) (= main_~q~0 1) (< (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) 4294967296) (<= 0 (+ (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) (* 4294967296 (div (div (+ main_~d~0 (* (- 1) (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) main_~q~0) main_~q~0)) 4294967296) main_~q~0)))))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {10510#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:20:39,803 INFO L290 TraceCheckUtils]: 76: Hoare triple {10510#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10514#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:20:39,803 INFO L290 TraceCheckUtils]: 77: Hoare triple {10514#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10274#false} is VALID [2022-04-15 09:20:39,803 INFO L290 TraceCheckUtils]: 78: Hoare triple {10274#false} assume !false; {10274#false} is VALID [2022-04-15 09:20:39,804 INFO L134 CoverageAnalysis]: Checked inductivity of 211 backedges. 66 proven. 7 refuted. 0 times theorem prover too weak. 138 trivial. 0 not checked. [2022-04-15 09:20:39,804 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:21:33,276 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 09:21:39,299 WARN L914 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-15 09:22:04,211 INFO L290 TraceCheckUtils]: 78: Hoare triple {10274#false} assume !false; {10274#false} is VALID [2022-04-15 09:22:04,211 INFO L290 TraceCheckUtils]: 77: Hoare triple {10514#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10274#false} is VALID [2022-04-15 09:22:04,212 INFO L290 TraceCheckUtils]: 76: Hoare triple {10510#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10514#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:22:04,212 INFO L272 TraceCheckUtils]: 75: Hoare triple {10530#(= (mod main_~A~0 4294967296) (+ (* main_~d~0 main_~q~0) main_~r~0))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {10510#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:22:04,212 INFO L290 TraceCheckUtils]: 74: Hoare triple {10534#(or (= (mod main_~A~0 4294967296) (+ (* main_~d~0 main_~q~0) main_~r~0)) (not (= main_~p~0 1)))} assume !(1 != ~p~0); {10530#(= (mod main_~A~0 4294967296) (+ (* main_~d~0 main_~q~0) main_~r~0))} is VALID [2022-04-15 09:22:04,213 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {10479#(not (= |__VERIFIER_assert_#in~cond| 0))} {10538#(or (= (mod main_~A~0 4294967296) (+ (* main_~d~0 main_~q~0) main_~r~0)) (not (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))) (not (= main_~p~0 1)))} #90#return; {10534#(or (= (mod main_~A~0 4294967296) (+ (* main_~d~0 main_~q~0) main_~r~0)) (not (= main_~p~0 1)))} is VALID [2022-04-15 09:22:04,213 INFO L290 TraceCheckUtils]: 72: Hoare triple {10479#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {10479#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:22:04,214 INFO L290 TraceCheckUtils]: 71: Hoare triple {10548#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {10479#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:22:04,214 INFO L290 TraceCheckUtils]: 70: Hoare triple {10273#true} ~cond := #in~cond; {10548#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 09:22:04,214 INFO L272 TraceCheckUtils]: 69: Hoare triple {10538#(or (= (mod main_~A~0 4294967296) (+ (* main_~d~0 main_~q~0) main_~r~0)) (not (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))) (not (= main_~p~0 1)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {10273#true} is VALID [2022-04-15 09:22:04,216 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {10479#(not (= |__VERIFIER_assert_#in~cond| 0))} {10273#true} #88#return; {10538#(or (= (mod main_~A~0 4294967296) (+ (* main_~d~0 main_~q~0) main_~r~0)) (not (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))) (not (= main_~p~0 1)))} is VALID [2022-04-15 09:22:04,216 INFO L290 TraceCheckUtils]: 67: Hoare triple {10479#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {10479#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:22:04,216 INFO L290 TraceCheckUtils]: 66: Hoare triple {10548#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {10479#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:22:04,217 INFO L290 TraceCheckUtils]: 65: Hoare triple {10273#true} ~cond := #in~cond; {10548#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 09:22:04,217 INFO L272 TraceCheckUtils]: 64: Hoare triple {10273#true} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {10273#true} is VALID [2022-04-15 09:22:04,217 INFO L290 TraceCheckUtils]: 63: Hoare triple {10273#true} assume !!(#t~post7 < 5);havoc #t~post7; {10273#true} is VALID [2022-04-15 09:22:04,217 INFO L290 TraceCheckUtils]: 62: Hoare triple {10273#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10273#true} is VALID [2022-04-15 09:22:04,217 INFO L290 TraceCheckUtils]: 61: Hoare triple {10273#true} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {10273#true} is VALID [2022-04-15 09:22:04,217 INFO L290 TraceCheckUtils]: 60: Hoare triple {10273#true} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {10273#true} is VALID [2022-04-15 09:22:04,217 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {10273#true} {10273#true} #90#return; {10273#true} is VALID [2022-04-15 09:22:04,217 INFO L290 TraceCheckUtils]: 58: Hoare triple {10273#true} assume true; {10273#true} is VALID [2022-04-15 09:22:04,217 INFO L290 TraceCheckUtils]: 57: Hoare triple {10273#true} assume !(0 == ~cond); {10273#true} is VALID [2022-04-15 09:22:04,217 INFO L290 TraceCheckUtils]: 56: Hoare triple {10273#true} ~cond := #in~cond; {10273#true} is VALID [2022-04-15 09:22:04,217 INFO L272 TraceCheckUtils]: 55: Hoare triple {10273#true} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {10273#true} is VALID [2022-04-15 09:22:04,217 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {10273#true} {10273#true} #88#return; {10273#true} is VALID [2022-04-15 09:22:04,217 INFO L290 TraceCheckUtils]: 53: Hoare triple {10273#true} assume true; {10273#true} is VALID [2022-04-15 09:22:04,217 INFO L290 TraceCheckUtils]: 52: Hoare triple {10273#true} assume !(0 == ~cond); {10273#true} is VALID [2022-04-15 09:22:04,217 INFO L290 TraceCheckUtils]: 51: Hoare triple {10273#true} ~cond := #in~cond; {10273#true} is VALID [2022-04-15 09:22:04,217 INFO L272 TraceCheckUtils]: 50: Hoare triple {10273#true} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {10273#true} is VALID [2022-04-15 09:22:04,218 INFO L290 TraceCheckUtils]: 49: Hoare triple {10273#true} assume !!(#t~post7 < 5);havoc #t~post7; {10273#true} is VALID [2022-04-15 09:22:04,218 INFO L290 TraceCheckUtils]: 48: Hoare triple {10273#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10273#true} is VALID [2022-04-15 09:22:04,218 INFO L290 TraceCheckUtils]: 47: Hoare triple {10273#true} assume !(~r~0 >= ~d~0); {10273#true} is VALID [2022-04-15 09:22:04,218 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {10273#true} {10273#true} #86#return; {10273#true} is VALID [2022-04-15 09:22:04,218 INFO L290 TraceCheckUtils]: 45: Hoare triple {10273#true} assume true; {10273#true} is VALID [2022-04-15 09:22:04,218 INFO L290 TraceCheckUtils]: 44: Hoare triple {10273#true} assume !(0 == ~cond); {10273#true} is VALID [2022-04-15 09:22:04,218 INFO L290 TraceCheckUtils]: 43: Hoare triple {10273#true} ~cond := #in~cond; {10273#true} is VALID [2022-04-15 09:22:04,218 INFO L272 TraceCheckUtils]: 42: Hoare triple {10273#true} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {10273#true} is VALID [2022-04-15 09:22:04,218 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {10273#true} {10273#true} #84#return; {10273#true} is VALID [2022-04-15 09:22:04,218 INFO L290 TraceCheckUtils]: 40: Hoare triple {10273#true} assume true; {10273#true} is VALID [2022-04-15 09:22:04,218 INFO L290 TraceCheckUtils]: 39: Hoare triple {10273#true} assume !(0 == ~cond); {10273#true} is VALID [2022-04-15 09:22:04,218 INFO L290 TraceCheckUtils]: 38: Hoare triple {10273#true} ~cond := #in~cond; {10273#true} is VALID [2022-04-15 09:22:04,218 INFO L272 TraceCheckUtils]: 37: Hoare triple {10273#true} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {10273#true} is VALID [2022-04-15 09:22:04,218 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {10273#true} {10273#true} #82#return; {10273#true} is VALID [2022-04-15 09:22:04,218 INFO L290 TraceCheckUtils]: 35: Hoare triple {10273#true} assume true; {10273#true} is VALID [2022-04-15 09:22:04,218 INFO L290 TraceCheckUtils]: 34: Hoare triple {10273#true} assume !(0 == ~cond); {10273#true} is VALID [2022-04-15 09:22:04,218 INFO L290 TraceCheckUtils]: 33: Hoare triple {10273#true} ~cond := #in~cond; {10273#true} is VALID [2022-04-15 09:22:04,218 INFO L272 TraceCheckUtils]: 32: Hoare triple {10273#true} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {10273#true} is VALID [2022-04-15 09:22:04,219 INFO L290 TraceCheckUtils]: 31: Hoare triple {10273#true} assume !!(#t~post6 < 5);havoc #t~post6; {10273#true} is VALID [2022-04-15 09:22:04,219 INFO L290 TraceCheckUtils]: 30: Hoare triple {10273#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10273#true} is VALID [2022-04-15 09:22:04,219 INFO L290 TraceCheckUtils]: 29: Hoare triple {10273#true} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {10273#true} is VALID [2022-04-15 09:22:04,219 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {10273#true} {10273#true} #86#return; {10273#true} is VALID [2022-04-15 09:22:04,219 INFO L290 TraceCheckUtils]: 27: Hoare triple {10273#true} assume true; {10273#true} is VALID [2022-04-15 09:22:04,219 INFO L290 TraceCheckUtils]: 26: Hoare triple {10273#true} assume !(0 == ~cond); {10273#true} is VALID [2022-04-15 09:22:04,219 INFO L290 TraceCheckUtils]: 25: Hoare triple {10273#true} ~cond := #in~cond; {10273#true} is VALID [2022-04-15 09:22:04,219 INFO L272 TraceCheckUtils]: 24: Hoare triple {10273#true} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {10273#true} is VALID [2022-04-15 09:22:04,219 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {10273#true} {10273#true} #84#return; {10273#true} is VALID [2022-04-15 09:22:04,219 INFO L290 TraceCheckUtils]: 22: Hoare triple {10273#true} assume true; {10273#true} is VALID [2022-04-15 09:22:04,219 INFO L290 TraceCheckUtils]: 21: Hoare triple {10273#true} assume !(0 == ~cond); {10273#true} is VALID [2022-04-15 09:22:04,219 INFO L290 TraceCheckUtils]: 20: Hoare triple {10273#true} ~cond := #in~cond; {10273#true} is VALID [2022-04-15 09:22:04,219 INFO L272 TraceCheckUtils]: 19: Hoare triple {10273#true} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {10273#true} is VALID [2022-04-15 09:22:04,219 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {10273#true} {10273#true} #82#return; {10273#true} is VALID [2022-04-15 09:22:04,219 INFO L290 TraceCheckUtils]: 17: Hoare triple {10273#true} assume true; {10273#true} is VALID [2022-04-15 09:22:04,219 INFO L290 TraceCheckUtils]: 16: Hoare triple {10273#true} assume !(0 == ~cond); {10273#true} is VALID [2022-04-15 09:22:04,219 INFO L290 TraceCheckUtils]: 15: Hoare triple {10273#true} ~cond := #in~cond; {10273#true} is VALID [2022-04-15 09:22:04,220 INFO L272 TraceCheckUtils]: 14: Hoare triple {10273#true} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {10273#true} is VALID [2022-04-15 09:22:04,220 INFO L290 TraceCheckUtils]: 13: Hoare triple {10273#true} assume !!(#t~post6 < 5);havoc #t~post6; {10273#true} is VALID [2022-04-15 09:22:04,220 INFO L290 TraceCheckUtils]: 12: Hoare triple {10273#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10273#true} is VALID [2022-04-15 09:22:04,220 INFO L290 TraceCheckUtils]: 11: Hoare triple {10273#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {10273#true} is VALID [2022-04-15 09:22:04,220 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10273#true} {10273#true} #80#return; {10273#true} is VALID [2022-04-15 09:22:04,220 INFO L290 TraceCheckUtils]: 9: Hoare triple {10273#true} assume true; {10273#true} is VALID [2022-04-15 09:22:04,220 INFO L290 TraceCheckUtils]: 8: Hoare triple {10273#true} assume !(0 == ~cond); {10273#true} is VALID [2022-04-15 09:22:04,220 INFO L290 TraceCheckUtils]: 7: Hoare triple {10273#true} ~cond := #in~cond; {10273#true} is VALID [2022-04-15 09:22:04,220 INFO L272 TraceCheckUtils]: 6: Hoare triple {10273#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {10273#true} is VALID [2022-04-15 09:22:04,220 INFO L290 TraceCheckUtils]: 5: Hoare triple {10273#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {10273#true} is VALID [2022-04-15 09:22:04,220 INFO L272 TraceCheckUtils]: 4: Hoare triple {10273#true} call #t~ret8 := main(); {10273#true} is VALID [2022-04-15 09:22:04,220 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10273#true} {10273#true} #96#return; {10273#true} is VALID [2022-04-15 09:22:04,220 INFO L290 TraceCheckUtils]: 2: Hoare triple {10273#true} assume true; {10273#true} is VALID [2022-04-15 09:22:04,220 INFO L290 TraceCheckUtils]: 1: Hoare triple {10273#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);~counter~0 := 0; {10273#true} is VALID [2022-04-15 09:22:04,220 INFO L272 TraceCheckUtils]: 0: Hoare triple {10273#true} call ULTIMATE.init(); {10273#true} is VALID [2022-04-15 09:22:04,220 INFO L134 CoverageAnalysis]: Checked inductivity of 211 backedges. 68 proven. 2 refuted. 0 times theorem prover too weak. 141 trivial. 0 not checked. [2022-04-15 09:22:04,221 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:22:04,221 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [450688051] [2022-04-15 09:22:04,221 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:22:04,221 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1583089852] [2022-04-15 09:22:04,221 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1583089852] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:22:04,221 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:22:04,221 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 9] total 15 [2022-04-15 09:22:04,221 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:22:04,221 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2106758478] [2022-04-15 09:22:04,221 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2106758478] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:22:04,221 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:22:04,221 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-15 09:22:04,221 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [665563702] [2022-04-15 09:22:04,221 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:22:04,222 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) Word has length 79 [2022-04-15 09:22:04,222 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:22:04,222 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-15 09:22:06,264 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 47 edges. 46 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 09:22:06,265 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-15 09:22:06,265 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:22:06,265 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-15 09:22:06,265 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=42, Invalid=168, Unknown=0, NotChecked=0, Total=210 [2022-04-15 09:22:06,265 INFO L87 Difference]: Start difference. First operand 143 states and 160 transitions. Second operand has 11 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-15 09:22:14,755 WARN L232 SmtUtils]: Spent 5.05s on a formula simplification. DAG size of input: 57 DAG size of output: 54 (called from [L 360] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2022-04-15 09:22:15,475 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:22:15,475 INFO L93 Difference]: Finished difference Result 159 states and 181 transitions. [2022-04-15 09:22:15,475 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-15 09:22:15,475 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) Word has length 79 [2022-04-15 09:22:15,475 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:22:15,475 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-15 09:22:15,477 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 76 transitions. [2022-04-15 09:22:15,477 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-15 09:22:15,478 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 76 transitions. [2022-04-15 09:22:15,478 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 76 transitions. [2022-04-15 09:22:17,555 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 75 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 09:22:17,557 INFO L225 Difference]: With dead ends: 159 [2022-04-15 09:22:17,557 INFO L226 Difference]: Without dead ends: 129 [2022-04-15 09:22:17,557 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 160 GetRequests, 143 SyntacticMatches, 1 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 34 ImplicationChecksByTransitivity, 6.1s TimeCoverageRelationStatistics Valid=62, Invalid=244, Unknown=0, NotChecked=0, Total=306 [2022-04-15 09:22:17,558 INFO L913 BasicCegarLoop]: 38 mSDtfsCounter, 17 mSDsluCounter, 159 mSDsCounter, 0 mSdLazyCounter, 239 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 197 SdHoareTripleChecker+Invalid, 247 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 239 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 5 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-15 09:22:17,558 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [22 Valid, 197 Invalid, 247 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 239 Invalid, 0 Unknown, 5 Unchecked, 0.7s Time] [2022-04-15 09:22:17,558 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 129 states. [2022-04-15 09:22:17,666 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 129 to 125. [2022-04-15 09:22:17,666 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:22:17,667 INFO L82 GeneralOperation]: Start isEquivalent. First operand 129 states. Second operand has 125 states, 80 states have (on average 1.1625) internal successors, (93), 84 states have internal predecessors, (93), 27 states have call successors, (27), 18 states have call predecessors, (27), 17 states have return successors, (25), 22 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-15 09:22:17,667 INFO L74 IsIncluded]: Start isIncluded. First operand 129 states. Second operand has 125 states, 80 states have (on average 1.1625) internal successors, (93), 84 states have internal predecessors, (93), 27 states have call successors, (27), 18 states have call predecessors, (27), 17 states have return successors, (25), 22 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-15 09:22:17,667 INFO L87 Difference]: Start difference. First operand 129 states. Second operand has 125 states, 80 states have (on average 1.1625) internal successors, (93), 84 states have internal predecessors, (93), 27 states have call successors, (27), 18 states have call predecessors, (27), 17 states have return successors, (25), 22 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-15 09:22:17,669 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:22:17,669 INFO L93 Difference]: Finished difference Result 129 states and 150 transitions. [2022-04-15 09:22:17,669 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 150 transitions. [2022-04-15 09:22:17,670 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:22:17,670 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:22:17,670 INFO L74 IsIncluded]: Start isIncluded. First operand has 125 states, 80 states have (on average 1.1625) internal successors, (93), 84 states have internal predecessors, (93), 27 states have call successors, (27), 18 states have call predecessors, (27), 17 states have return successors, (25), 22 states have call predecessors, (25), 25 states have call successors, (25) Second operand 129 states. [2022-04-15 09:22:17,670 INFO L87 Difference]: Start difference. First operand has 125 states, 80 states have (on average 1.1625) internal successors, (93), 84 states have internal predecessors, (93), 27 states have call successors, (27), 18 states have call predecessors, (27), 17 states have return successors, (25), 22 states have call predecessors, (25), 25 states have call successors, (25) Second operand 129 states. [2022-04-15 09:22:17,676 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:22:17,676 INFO L93 Difference]: Finished difference Result 129 states and 150 transitions. [2022-04-15 09:22:17,676 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 150 transitions. [2022-04-15 09:22:17,676 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:22:17,676 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:22:17,676 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:22:17,676 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:22:17,677 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 125 states, 80 states have (on average 1.1625) internal successors, (93), 84 states have internal predecessors, (93), 27 states have call successors, (27), 18 states have call predecessors, (27), 17 states have return successors, (25), 22 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-15 09:22:17,679 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 125 states to 125 states and 145 transitions. [2022-04-15 09:22:17,679 INFO L78 Accepts]: Start accepts. Automaton has 125 states and 145 transitions. Word has length 79 [2022-04-15 09:22:17,680 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:22:17,680 INFO L478 AbstractCegarLoop]: Abstraction has 125 states and 145 transitions. [2022-04-15 09:22:17,681 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 9 states have (on average 3.0) internal successors, (27), 8 states have internal predecessors, (27), 5 states have call successors, (11), 2 states have call predecessors, (11), 2 states have return successors, (9), 4 states have call predecessors, (9), 4 states have call successors, (9) [2022-04-15 09:22:17,681 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 125 states and 145 transitions. [2022-04-15 09:22:19,835 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 145 edges. 144 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 09:22:19,835 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 145 transitions. [2022-04-15 09:22:19,836 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 80 [2022-04-15 09:22:19,836 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:22:19,836 INFO L499 BasicCegarLoop]: trace histogram [11, 10, 10, 4, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:22:19,851 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 09:22:20,039 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 09:22:20,039 INFO L403 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:22:20,040 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:22:20,040 INFO L85 PathProgramCache]: Analyzing trace with hash 816704307, now seen corresponding path program 5 times [2022-04-15 09:22:20,040 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:22:20,040 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2112757424] [2022-04-15 09:22:26,796 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:22:26,796 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:22:26,796 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:22:26,796 INFO L85 PathProgramCache]: Analyzing trace with hash 816704307, now seen corresponding path program 6 times [2022-04-15 09:22:26,797 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:22:26,797 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1902700642] [2022-04-15 09:22:26,797 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:22:26,797 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:22:26,804 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:22:26,804 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1524554399] [2022-04-15 09:22:26,804 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-15 09:22:26,804 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:22:26,804 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:22:26,805 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 09:22:26,806 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 09:22:26,850 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 6 check-sat command(s) [2022-04-15 09:22:26,850 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:22:26,850 INFO L263 TraceCheckSpWp]: Trace formula consists of 207 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-15 09:22:26,862 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:22:26,864 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:22:27,118 INFO L272 TraceCheckUtils]: 0: Hoare triple {11593#true} call ULTIMATE.init(); {11593#true} is VALID [2022-04-15 09:22:27,119 INFO L290 TraceCheckUtils]: 1: Hoare triple {11593#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);~counter~0 := 0; {11601#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:27,119 INFO L290 TraceCheckUtils]: 2: Hoare triple {11601#(<= ~counter~0 0)} assume true; {11601#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:27,119 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11601#(<= ~counter~0 0)} {11593#true} #96#return; {11601#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:27,119 INFO L272 TraceCheckUtils]: 4: Hoare triple {11601#(<= ~counter~0 0)} call #t~ret8 := main(); {11601#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:27,120 INFO L290 TraceCheckUtils]: 5: Hoare triple {11601#(<= ~counter~0 0)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {11601#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:27,120 INFO L272 TraceCheckUtils]: 6: Hoare triple {11601#(<= ~counter~0 0)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {11601#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:27,120 INFO L290 TraceCheckUtils]: 7: Hoare triple {11601#(<= ~counter~0 0)} ~cond := #in~cond; {11601#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:27,120 INFO L290 TraceCheckUtils]: 8: Hoare triple {11601#(<= ~counter~0 0)} assume !(0 == ~cond); {11601#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:27,121 INFO L290 TraceCheckUtils]: 9: Hoare triple {11601#(<= ~counter~0 0)} assume true; {11601#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:27,121 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11601#(<= ~counter~0 0)} {11601#(<= ~counter~0 0)} #80#return; {11601#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:27,121 INFO L290 TraceCheckUtils]: 11: Hoare triple {11601#(<= ~counter~0 0)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {11601#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:27,122 INFO L290 TraceCheckUtils]: 12: Hoare triple {11601#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11635#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:27,122 INFO L290 TraceCheckUtils]: 13: Hoare triple {11635#(<= ~counter~0 1)} assume !!(#t~post6 < 5);havoc #t~post6; {11635#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:27,122 INFO L272 TraceCheckUtils]: 14: Hoare triple {11635#(<= ~counter~0 1)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {11635#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:27,123 INFO L290 TraceCheckUtils]: 15: Hoare triple {11635#(<= ~counter~0 1)} ~cond := #in~cond; {11635#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:27,123 INFO L290 TraceCheckUtils]: 16: Hoare triple {11635#(<= ~counter~0 1)} assume !(0 == ~cond); {11635#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:27,123 INFO L290 TraceCheckUtils]: 17: Hoare triple {11635#(<= ~counter~0 1)} assume true; {11635#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:27,124 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {11635#(<= ~counter~0 1)} {11635#(<= ~counter~0 1)} #82#return; {11635#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:27,124 INFO L272 TraceCheckUtils]: 19: Hoare triple {11635#(<= ~counter~0 1)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {11635#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:27,124 INFO L290 TraceCheckUtils]: 20: Hoare triple {11635#(<= ~counter~0 1)} ~cond := #in~cond; {11635#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:27,124 INFO L290 TraceCheckUtils]: 21: Hoare triple {11635#(<= ~counter~0 1)} assume !(0 == ~cond); {11635#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:27,125 INFO L290 TraceCheckUtils]: 22: Hoare triple {11635#(<= ~counter~0 1)} assume true; {11635#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:27,125 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {11635#(<= ~counter~0 1)} {11635#(<= ~counter~0 1)} #84#return; {11635#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:27,125 INFO L272 TraceCheckUtils]: 24: Hoare triple {11635#(<= ~counter~0 1)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {11635#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:27,127 INFO L290 TraceCheckUtils]: 25: Hoare triple {11635#(<= ~counter~0 1)} ~cond := #in~cond; {11635#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:27,127 INFO L290 TraceCheckUtils]: 26: Hoare triple {11635#(<= ~counter~0 1)} assume !(0 == ~cond); {11635#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:27,127 INFO L290 TraceCheckUtils]: 27: Hoare triple {11635#(<= ~counter~0 1)} assume true; {11635#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:27,128 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {11635#(<= ~counter~0 1)} {11635#(<= ~counter~0 1)} #86#return; {11635#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:27,128 INFO L290 TraceCheckUtils]: 29: Hoare triple {11635#(<= ~counter~0 1)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {11635#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:27,128 INFO L290 TraceCheckUtils]: 30: Hoare triple {11635#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11690#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:27,129 INFO L290 TraceCheckUtils]: 31: Hoare triple {11690#(<= ~counter~0 2)} assume !!(#t~post6 < 5);havoc #t~post6; {11690#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:27,129 INFO L272 TraceCheckUtils]: 32: Hoare triple {11690#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {11690#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:27,129 INFO L290 TraceCheckUtils]: 33: Hoare triple {11690#(<= ~counter~0 2)} ~cond := #in~cond; {11690#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:27,130 INFO L290 TraceCheckUtils]: 34: Hoare triple {11690#(<= ~counter~0 2)} assume !(0 == ~cond); {11690#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:27,130 INFO L290 TraceCheckUtils]: 35: Hoare triple {11690#(<= ~counter~0 2)} assume true; {11690#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:27,130 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {11690#(<= ~counter~0 2)} {11690#(<= ~counter~0 2)} #82#return; {11690#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:27,131 INFO L272 TraceCheckUtils]: 37: Hoare triple {11690#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {11690#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:27,131 INFO L290 TraceCheckUtils]: 38: Hoare triple {11690#(<= ~counter~0 2)} ~cond := #in~cond; {11690#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:27,131 INFO L290 TraceCheckUtils]: 39: Hoare triple {11690#(<= ~counter~0 2)} assume !(0 == ~cond); {11690#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:27,131 INFO L290 TraceCheckUtils]: 40: Hoare triple {11690#(<= ~counter~0 2)} assume true; {11690#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:27,132 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {11690#(<= ~counter~0 2)} {11690#(<= ~counter~0 2)} #84#return; {11690#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:27,132 INFO L272 TraceCheckUtils]: 42: Hoare triple {11690#(<= ~counter~0 2)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {11690#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:27,132 INFO L290 TraceCheckUtils]: 43: Hoare triple {11690#(<= ~counter~0 2)} ~cond := #in~cond; {11690#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:27,133 INFO L290 TraceCheckUtils]: 44: Hoare triple {11690#(<= ~counter~0 2)} assume !(0 == ~cond); {11690#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:27,133 INFO L290 TraceCheckUtils]: 45: Hoare triple {11690#(<= ~counter~0 2)} assume true; {11690#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:27,133 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {11690#(<= ~counter~0 2)} {11690#(<= ~counter~0 2)} #86#return; {11690#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:27,134 INFO L290 TraceCheckUtils]: 47: Hoare triple {11690#(<= ~counter~0 2)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {11690#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:27,134 INFO L290 TraceCheckUtils]: 48: Hoare triple {11690#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11745#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:27,134 INFO L290 TraceCheckUtils]: 49: Hoare triple {11745#(<= ~counter~0 3)} assume !!(#t~post6 < 5);havoc #t~post6; {11745#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:27,135 INFO L272 TraceCheckUtils]: 50: Hoare triple {11745#(<= ~counter~0 3)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {11745#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:27,135 INFO L290 TraceCheckUtils]: 51: Hoare triple {11745#(<= ~counter~0 3)} ~cond := #in~cond; {11745#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:27,135 INFO L290 TraceCheckUtils]: 52: Hoare triple {11745#(<= ~counter~0 3)} assume !(0 == ~cond); {11745#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:27,135 INFO L290 TraceCheckUtils]: 53: Hoare triple {11745#(<= ~counter~0 3)} assume true; {11745#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:27,136 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {11745#(<= ~counter~0 3)} {11745#(<= ~counter~0 3)} #82#return; {11745#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:27,136 INFO L272 TraceCheckUtils]: 55: Hoare triple {11745#(<= ~counter~0 3)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {11745#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:27,136 INFO L290 TraceCheckUtils]: 56: Hoare triple {11745#(<= ~counter~0 3)} ~cond := #in~cond; {11745#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:27,137 INFO L290 TraceCheckUtils]: 57: Hoare triple {11745#(<= ~counter~0 3)} assume !(0 == ~cond); {11745#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:27,137 INFO L290 TraceCheckUtils]: 58: Hoare triple {11745#(<= ~counter~0 3)} assume true; {11745#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:27,137 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {11745#(<= ~counter~0 3)} {11745#(<= ~counter~0 3)} #84#return; {11745#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:27,138 INFO L272 TraceCheckUtils]: 60: Hoare triple {11745#(<= ~counter~0 3)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {11745#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:27,138 INFO L290 TraceCheckUtils]: 61: Hoare triple {11745#(<= ~counter~0 3)} ~cond := #in~cond; {11745#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:27,138 INFO L290 TraceCheckUtils]: 62: Hoare triple {11745#(<= ~counter~0 3)} assume !(0 == ~cond); {11745#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:27,138 INFO L290 TraceCheckUtils]: 63: Hoare triple {11745#(<= ~counter~0 3)} assume true; {11745#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:27,139 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {11745#(<= ~counter~0 3)} {11745#(<= ~counter~0 3)} #86#return; {11745#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:27,139 INFO L290 TraceCheckUtils]: 65: Hoare triple {11745#(<= ~counter~0 3)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {11745#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:27,139 INFO L290 TraceCheckUtils]: 66: Hoare triple {11745#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11800#(<= |main_#t~post6| 3)} is VALID [2022-04-15 09:22:27,140 INFO L290 TraceCheckUtils]: 67: Hoare triple {11800#(<= |main_#t~post6| 3)} assume !(#t~post6 < 5);havoc #t~post6; {11594#false} is VALID [2022-04-15 09:22:27,140 INFO L290 TraceCheckUtils]: 68: Hoare triple {11594#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11594#false} is VALID [2022-04-15 09:22:27,140 INFO L290 TraceCheckUtils]: 69: Hoare triple {11594#false} assume !(#t~post7 < 5);havoc #t~post7; {11594#false} is VALID [2022-04-15 09:22:27,140 INFO L272 TraceCheckUtils]: 70: Hoare triple {11594#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {11594#false} is VALID [2022-04-15 09:22:27,140 INFO L290 TraceCheckUtils]: 71: Hoare triple {11594#false} ~cond := #in~cond; {11594#false} is VALID [2022-04-15 09:22:27,140 INFO L290 TraceCheckUtils]: 72: Hoare triple {11594#false} assume !(0 == ~cond); {11594#false} is VALID [2022-04-15 09:22:27,140 INFO L290 TraceCheckUtils]: 73: Hoare triple {11594#false} assume true; {11594#false} is VALID [2022-04-15 09:22:27,140 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {11594#false} {11594#false} #92#return; {11594#false} is VALID [2022-04-15 09:22:27,140 INFO L272 TraceCheckUtils]: 75: Hoare triple {11594#false} call __VERIFIER_assert((if ~B~0 % 4294967296 == ~d~0 then 1 else 0)); {11594#false} is VALID [2022-04-15 09:22:27,140 INFO L290 TraceCheckUtils]: 76: Hoare triple {11594#false} ~cond := #in~cond; {11594#false} is VALID [2022-04-15 09:22:27,140 INFO L290 TraceCheckUtils]: 77: Hoare triple {11594#false} assume 0 == ~cond; {11594#false} is VALID [2022-04-15 09:22:27,140 INFO L290 TraceCheckUtils]: 78: Hoare triple {11594#false} assume !false; {11594#false} is VALID [2022-04-15 09:22:27,141 INFO L134 CoverageAnalysis]: Checked inductivity of 224 backedges. 54 proven. 132 refuted. 0 times theorem prover too weak. 38 trivial. 0 not checked. [2022-04-15 09:22:27,141 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:22:27,394 INFO L290 TraceCheckUtils]: 78: Hoare triple {11594#false} assume !false; {11594#false} is VALID [2022-04-15 09:22:27,394 INFO L290 TraceCheckUtils]: 77: Hoare triple {11594#false} assume 0 == ~cond; {11594#false} is VALID [2022-04-15 09:22:27,394 INFO L290 TraceCheckUtils]: 76: Hoare triple {11594#false} ~cond := #in~cond; {11594#false} is VALID [2022-04-15 09:22:27,394 INFO L272 TraceCheckUtils]: 75: Hoare triple {11594#false} call __VERIFIER_assert((if ~B~0 % 4294967296 == ~d~0 then 1 else 0)); {11594#false} is VALID [2022-04-15 09:22:27,395 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {11593#true} {11594#false} #92#return; {11594#false} is VALID [2022-04-15 09:22:27,395 INFO L290 TraceCheckUtils]: 73: Hoare triple {11593#true} assume true; {11593#true} is VALID [2022-04-15 09:22:27,395 INFO L290 TraceCheckUtils]: 72: Hoare triple {11593#true} assume !(0 == ~cond); {11593#true} is VALID [2022-04-15 09:22:27,395 INFO L290 TraceCheckUtils]: 71: Hoare triple {11593#true} ~cond := #in~cond; {11593#true} is VALID [2022-04-15 09:22:27,395 INFO L272 TraceCheckUtils]: 70: Hoare triple {11594#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {11593#true} is VALID [2022-04-15 09:22:27,395 INFO L290 TraceCheckUtils]: 69: Hoare triple {11594#false} assume !(#t~post7 < 5);havoc #t~post7; {11594#false} is VALID [2022-04-15 09:22:27,395 INFO L290 TraceCheckUtils]: 68: Hoare triple {11594#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11594#false} is VALID [2022-04-15 09:22:27,395 INFO L290 TraceCheckUtils]: 67: Hoare triple {11870#(< |main_#t~post6| 5)} assume !(#t~post6 < 5);havoc #t~post6; {11594#false} is VALID [2022-04-15 09:22:27,395 INFO L290 TraceCheckUtils]: 66: Hoare triple {11874#(< ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11870#(< |main_#t~post6| 5)} is VALID [2022-04-15 09:22:27,396 INFO L290 TraceCheckUtils]: 65: Hoare triple {11874#(< ~counter~0 5)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {11874#(< ~counter~0 5)} is VALID [2022-04-15 09:22:27,396 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {11593#true} {11874#(< ~counter~0 5)} #86#return; {11874#(< ~counter~0 5)} is VALID [2022-04-15 09:22:27,396 INFO L290 TraceCheckUtils]: 63: Hoare triple {11593#true} assume true; {11593#true} is VALID [2022-04-15 09:22:27,396 INFO L290 TraceCheckUtils]: 62: Hoare triple {11593#true} assume !(0 == ~cond); {11593#true} is VALID [2022-04-15 09:22:27,396 INFO L290 TraceCheckUtils]: 61: Hoare triple {11593#true} ~cond := #in~cond; {11593#true} is VALID [2022-04-15 09:22:27,396 INFO L272 TraceCheckUtils]: 60: Hoare triple {11874#(< ~counter~0 5)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {11593#true} is VALID [2022-04-15 09:22:27,397 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {11593#true} {11874#(< ~counter~0 5)} #84#return; {11874#(< ~counter~0 5)} is VALID [2022-04-15 09:22:27,397 INFO L290 TraceCheckUtils]: 58: Hoare triple {11593#true} assume true; {11593#true} is VALID [2022-04-15 09:22:27,397 INFO L290 TraceCheckUtils]: 57: Hoare triple {11593#true} assume !(0 == ~cond); {11593#true} is VALID [2022-04-15 09:22:27,397 INFO L290 TraceCheckUtils]: 56: Hoare triple {11593#true} ~cond := #in~cond; {11593#true} is VALID [2022-04-15 09:22:27,397 INFO L272 TraceCheckUtils]: 55: Hoare triple {11874#(< ~counter~0 5)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {11593#true} is VALID [2022-04-15 09:22:27,397 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {11593#true} {11874#(< ~counter~0 5)} #82#return; {11874#(< ~counter~0 5)} is VALID [2022-04-15 09:22:27,397 INFO L290 TraceCheckUtils]: 53: Hoare triple {11593#true} assume true; {11593#true} is VALID [2022-04-15 09:22:27,397 INFO L290 TraceCheckUtils]: 52: Hoare triple {11593#true} assume !(0 == ~cond); {11593#true} is VALID [2022-04-15 09:22:27,397 INFO L290 TraceCheckUtils]: 51: Hoare triple {11593#true} ~cond := #in~cond; {11593#true} is VALID [2022-04-15 09:22:27,398 INFO L272 TraceCheckUtils]: 50: Hoare triple {11874#(< ~counter~0 5)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {11593#true} is VALID [2022-04-15 09:22:27,398 INFO L290 TraceCheckUtils]: 49: Hoare triple {11874#(< ~counter~0 5)} assume !!(#t~post6 < 5);havoc #t~post6; {11874#(< ~counter~0 5)} is VALID [2022-04-15 09:22:27,398 INFO L290 TraceCheckUtils]: 48: Hoare triple {11745#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11874#(< ~counter~0 5)} is VALID [2022-04-15 09:22:27,399 INFO L290 TraceCheckUtils]: 47: Hoare triple {11745#(<= ~counter~0 3)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {11745#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:27,399 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {11593#true} {11745#(<= ~counter~0 3)} #86#return; {11745#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:27,399 INFO L290 TraceCheckUtils]: 45: Hoare triple {11593#true} assume true; {11593#true} is VALID [2022-04-15 09:22:27,399 INFO L290 TraceCheckUtils]: 44: Hoare triple {11593#true} assume !(0 == ~cond); {11593#true} is VALID [2022-04-15 09:22:27,399 INFO L290 TraceCheckUtils]: 43: Hoare triple {11593#true} ~cond := #in~cond; {11593#true} is VALID [2022-04-15 09:22:27,399 INFO L272 TraceCheckUtils]: 42: Hoare triple {11745#(<= ~counter~0 3)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {11593#true} is VALID [2022-04-15 09:22:27,410 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {11593#true} {11745#(<= ~counter~0 3)} #84#return; {11745#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:27,411 INFO L290 TraceCheckUtils]: 40: Hoare triple {11593#true} assume true; {11593#true} is VALID [2022-04-15 09:22:27,411 INFO L290 TraceCheckUtils]: 39: Hoare triple {11593#true} assume !(0 == ~cond); {11593#true} is VALID [2022-04-15 09:22:27,411 INFO L290 TraceCheckUtils]: 38: Hoare triple {11593#true} ~cond := #in~cond; {11593#true} is VALID [2022-04-15 09:22:27,411 INFO L272 TraceCheckUtils]: 37: Hoare triple {11745#(<= ~counter~0 3)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {11593#true} is VALID [2022-04-15 09:22:27,411 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {11593#true} {11745#(<= ~counter~0 3)} #82#return; {11745#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:27,411 INFO L290 TraceCheckUtils]: 35: Hoare triple {11593#true} assume true; {11593#true} is VALID [2022-04-15 09:22:27,411 INFO L290 TraceCheckUtils]: 34: Hoare triple {11593#true} assume !(0 == ~cond); {11593#true} is VALID [2022-04-15 09:22:27,411 INFO L290 TraceCheckUtils]: 33: Hoare triple {11593#true} ~cond := #in~cond; {11593#true} is VALID [2022-04-15 09:22:27,412 INFO L272 TraceCheckUtils]: 32: Hoare triple {11745#(<= ~counter~0 3)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {11593#true} is VALID [2022-04-15 09:22:27,412 INFO L290 TraceCheckUtils]: 31: Hoare triple {11745#(<= ~counter~0 3)} assume !!(#t~post6 < 5);havoc #t~post6; {11745#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:27,412 INFO L290 TraceCheckUtils]: 30: Hoare triple {11690#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11745#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:27,413 INFO L290 TraceCheckUtils]: 29: Hoare triple {11690#(<= ~counter~0 2)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {11690#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:27,413 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {11593#true} {11690#(<= ~counter~0 2)} #86#return; {11690#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:27,413 INFO L290 TraceCheckUtils]: 27: Hoare triple {11593#true} assume true; {11593#true} is VALID [2022-04-15 09:22:27,414 INFO L290 TraceCheckUtils]: 26: Hoare triple {11593#true} assume !(0 == ~cond); {11593#true} is VALID [2022-04-15 09:22:27,414 INFO L290 TraceCheckUtils]: 25: Hoare triple {11593#true} ~cond := #in~cond; {11593#true} is VALID [2022-04-15 09:22:27,414 INFO L272 TraceCheckUtils]: 24: Hoare triple {11690#(<= ~counter~0 2)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {11593#true} is VALID [2022-04-15 09:22:27,414 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {11593#true} {11690#(<= ~counter~0 2)} #84#return; {11690#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:27,414 INFO L290 TraceCheckUtils]: 22: Hoare triple {11593#true} assume true; {11593#true} is VALID [2022-04-15 09:22:27,414 INFO L290 TraceCheckUtils]: 21: Hoare triple {11593#true} assume !(0 == ~cond); {11593#true} is VALID [2022-04-15 09:22:27,414 INFO L290 TraceCheckUtils]: 20: Hoare triple {11593#true} ~cond := #in~cond; {11593#true} is VALID [2022-04-15 09:22:27,414 INFO L272 TraceCheckUtils]: 19: Hoare triple {11690#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {11593#true} is VALID [2022-04-15 09:22:27,415 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {11593#true} {11690#(<= ~counter~0 2)} #82#return; {11690#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:27,415 INFO L290 TraceCheckUtils]: 17: Hoare triple {11593#true} assume true; {11593#true} is VALID [2022-04-15 09:22:27,415 INFO L290 TraceCheckUtils]: 16: Hoare triple {11593#true} assume !(0 == ~cond); {11593#true} is VALID [2022-04-15 09:22:27,415 INFO L290 TraceCheckUtils]: 15: Hoare triple {11593#true} ~cond := #in~cond; {11593#true} is VALID [2022-04-15 09:22:27,415 INFO L272 TraceCheckUtils]: 14: Hoare triple {11690#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {11593#true} is VALID [2022-04-15 09:22:27,415 INFO L290 TraceCheckUtils]: 13: Hoare triple {11690#(<= ~counter~0 2)} assume !!(#t~post6 < 5);havoc #t~post6; {11690#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:27,416 INFO L290 TraceCheckUtils]: 12: Hoare triple {11635#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11690#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:27,416 INFO L290 TraceCheckUtils]: 11: Hoare triple {11635#(<= ~counter~0 1)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {11635#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:27,416 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11593#true} {11635#(<= ~counter~0 1)} #80#return; {11635#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:27,416 INFO L290 TraceCheckUtils]: 9: Hoare triple {11593#true} assume true; {11593#true} is VALID [2022-04-15 09:22:27,417 INFO L290 TraceCheckUtils]: 8: Hoare triple {11593#true} assume !(0 == ~cond); {11593#true} is VALID [2022-04-15 09:22:27,417 INFO L290 TraceCheckUtils]: 7: Hoare triple {11593#true} ~cond := #in~cond; {11593#true} is VALID [2022-04-15 09:22:27,417 INFO L272 TraceCheckUtils]: 6: Hoare triple {11635#(<= ~counter~0 1)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {11593#true} is VALID [2022-04-15 09:22:27,417 INFO L290 TraceCheckUtils]: 5: Hoare triple {11635#(<= ~counter~0 1)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {11635#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:27,417 INFO L272 TraceCheckUtils]: 4: Hoare triple {11635#(<= ~counter~0 1)} call #t~ret8 := main(); {11635#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:27,417 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11635#(<= ~counter~0 1)} {11593#true} #96#return; {11635#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:27,418 INFO L290 TraceCheckUtils]: 2: Hoare triple {11635#(<= ~counter~0 1)} assume true; {11635#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:27,418 INFO L290 TraceCheckUtils]: 1: Hoare triple {11593#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);~counter~0 := 0; {11635#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:27,418 INFO L272 TraceCheckUtils]: 0: Hoare triple {11593#true} call ULTIMATE.init(); {11593#true} is VALID [2022-04-15 09:22:27,418 INFO L134 CoverageAnalysis]: Checked inductivity of 224 backedges. 20 proven. 24 refuted. 0 times theorem prover too weak. 180 trivial. 0 not checked. [2022-04-15 09:22:27,419 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:22:27,419 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1902700642] [2022-04-15 09:22:27,419 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:22:27,419 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1524554399] [2022-04-15 09:22:27,419 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1524554399] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:22:27,419 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:22:27,419 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 9 [2022-04-15 09:22:27,419 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:22:27,419 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2112757424] [2022-04-15 09:22:27,419 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2112757424] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:22:27,419 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:22:27,419 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-15 09:22:27,419 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [502956777] [2022-04-15 09:22:27,419 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:22:27,420 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.857142857142857) internal successors, (34), 6 states have internal predecessors, (34), 6 states have call successors, (14), 6 states have call predecessors, (14), 5 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) Word has length 79 [2022-04-15 09:22:27,420 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:22:27,420 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 4.857142857142857) internal successors, (34), 6 states have internal predecessors, (34), 6 states have call successors, (14), 6 states have call predecessors, (14), 5 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-15 09:22:27,461 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:22:27,461 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-15 09:22:27,461 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:22:27,461 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-15 09:22:27,461 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=46, Unknown=0, NotChecked=0, Total=72 [2022-04-15 09:22:27,462 INFO L87 Difference]: Start difference. First operand 125 states and 145 transitions. Second operand has 7 states, 7 states have (on average 4.857142857142857) internal successors, (34), 6 states have internal predecessors, (34), 6 states have call successors, (14), 6 states have call predecessors, (14), 5 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-15 09:22:27,782 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:22:27,783 INFO L93 Difference]: Finished difference Result 170 states and 207 transitions. [2022-04-15 09:22:27,783 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-15 09:22:27,783 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 4.857142857142857) internal successors, (34), 6 states have internal predecessors, (34), 6 states have call successors, (14), 6 states have call predecessors, (14), 5 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) Word has length 79 [2022-04-15 09:22:27,783 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:22:27,783 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.857142857142857) internal successors, (34), 6 states have internal predecessors, (34), 6 states have call successors, (14), 6 states have call predecessors, (14), 5 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-15 09:22:27,784 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 102 transitions. [2022-04-15 09:22:27,784 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 4.857142857142857) internal successors, (34), 6 states have internal predecessors, (34), 6 states have call successors, (14), 6 states have call predecessors, (14), 5 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-15 09:22:27,785 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 102 transitions. [2022-04-15 09:22:27,785 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 102 transitions. [2022-04-15 09:22:27,859 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 102 edges. 102 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:22:27,861 INFO L225 Difference]: With dead ends: 170 [2022-04-15 09:22:27,861 INFO L226 Difference]: Without dead ends: 127 [2022-04-15 09:22:27,861 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 160 GetRequests, 149 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=50, Invalid=82, Unknown=0, NotChecked=0, Total=132 [2022-04-15 09:22:27,862 INFO L913 BasicCegarLoop]: 48 mSDtfsCounter, 7 mSDsluCounter, 109 mSDsCounter, 0 mSdLazyCounter, 38 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 7 SdHoareTripleChecker+Valid, 157 SdHoareTripleChecker+Invalid, 43 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 38 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 09:22:27,862 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [7 Valid, 157 Invalid, 43 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 38 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 09:22:27,862 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 127 states. [2022-04-15 09:22:27,961 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 127 to 127. [2022-04-15 09:22:27,961 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:22:27,961 INFO L82 GeneralOperation]: Start isEquivalent. First operand 127 states. Second operand has 127 states, 82 states have (on average 1.1585365853658536) internal successors, (95), 86 states have internal predecessors, (95), 27 states have call successors, (27), 18 states have call predecessors, (27), 17 states have return successors, (25), 22 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-15 09:22:27,961 INFO L74 IsIncluded]: Start isIncluded. First operand 127 states. Second operand has 127 states, 82 states have (on average 1.1585365853658536) internal successors, (95), 86 states have internal predecessors, (95), 27 states have call successors, (27), 18 states have call predecessors, (27), 17 states have return successors, (25), 22 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-15 09:22:27,961 INFO L87 Difference]: Start difference. First operand 127 states. Second operand has 127 states, 82 states have (on average 1.1585365853658536) internal successors, (95), 86 states have internal predecessors, (95), 27 states have call successors, (27), 18 states have call predecessors, (27), 17 states have return successors, (25), 22 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-15 09:22:27,963 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:22:27,963 INFO L93 Difference]: Finished difference Result 127 states and 147 transitions. [2022-04-15 09:22:27,964 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 147 transitions. [2022-04-15 09:22:27,964 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:22:27,964 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:22:27,964 INFO L74 IsIncluded]: Start isIncluded. First operand has 127 states, 82 states have (on average 1.1585365853658536) internal successors, (95), 86 states have internal predecessors, (95), 27 states have call successors, (27), 18 states have call predecessors, (27), 17 states have return successors, (25), 22 states have call predecessors, (25), 25 states have call successors, (25) Second operand 127 states. [2022-04-15 09:22:27,964 INFO L87 Difference]: Start difference. First operand has 127 states, 82 states have (on average 1.1585365853658536) internal successors, (95), 86 states have internal predecessors, (95), 27 states have call successors, (27), 18 states have call predecessors, (27), 17 states have return successors, (25), 22 states have call predecessors, (25), 25 states have call successors, (25) Second operand 127 states. [2022-04-15 09:22:27,966 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:22:27,966 INFO L93 Difference]: Finished difference Result 127 states and 147 transitions. [2022-04-15 09:22:27,966 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 147 transitions. [2022-04-15 09:22:27,966 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:22:27,966 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:22:27,966 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:22:27,966 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:22:27,967 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 127 states, 82 states have (on average 1.1585365853658536) internal successors, (95), 86 states have internal predecessors, (95), 27 states have call successors, (27), 18 states have call predecessors, (27), 17 states have return successors, (25), 22 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-15 09:22:27,968 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 127 states to 127 states and 147 transitions. [2022-04-15 09:22:27,968 INFO L78 Accepts]: Start accepts. Automaton has 127 states and 147 transitions. Word has length 79 [2022-04-15 09:22:27,969 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:22:27,969 INFO L478 AbstractCegarLoop]: Abstraction has 127 states and 147 transitions. [2022-04-15 09:22:27,969 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 4.857142857142857) internal successors, (34), 6 states have internal predecessors, (34), 6 states have call successors, (14), 6 states have call predecessors, (14), 5 states have return successors, (12), 5 states have call predecessors, (12), 6 states have call successors, (12) [2022-04-15 09:22:27,969 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 127 states and 147 transitions. [2022-04-15 09:22:30,140 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 147 edges. 146 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 09:22:30,141 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 147 transitions. [2022-04-15 09:22:30,141 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 87 [2022-04-15 09:22:30,141 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:22:30,141 INFO L499 BasicCegarLoop]: trace histogram [12, 11, 11, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:22:30,157 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Ended with exit code 0 [2022-04-15 09:22:30,343 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 09:22:30,343 INFO L403 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:22:30,344 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:22:30,344 INFO L85 PathProgramCache]: Analyzing trace with hash -1069895175, now seen corresponding path program 3 times [2022-04-15 09:22:30,344 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:22:30,344 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1170825967] [2022-04-15 09:22:40,041 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:22:40,042 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:22:40,042 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:22:40,042 INFO L85 PathProgramCache]: Analyzing trace with hash -1069895175, now seen corresponding path program 4 times [2022-04-15 09:22:40,042 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:22:40,042 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2036141453] [2022-04-15 09:22:40,042 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:22:40,042 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:22:40,060 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:22:40,060 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [31569648] [2022-04-15 09:22:40,060 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 09:22:40,060 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:22:40,061 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:22:40,064 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 09:22:40,084 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 09:22:40,120 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 09:22:40,121 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:22:40,122 INFO L263 TraceCheckSpWp]: Trace formula consists of 222 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-15 09:22:40,136 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:22:40,137 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:22:40,481 INFO L272 TraceCheckUtils]: 0: Hoare triple {12929#true} call ULTIMATE.init(); {12929#true} is VALID [2022-04-15 09:22:40,481 INFO L290 TraceCheckUtils]: 1: Hoare triple {12929#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);~counter~0 := 0; {12937#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:40,482 INFO L290 TraceCheckUtils]: 2: Hoare triple {12937#(<= ~counter~0 0)} assume true; {12937#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:40,482 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12937#(<= ~counter~0 0)} {12929#true} #96#return; {12937#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:40,482 INFO L272 TraceCheckUtils]: 4: Hoare triple {12937#(<= ~counter~0 0)} call #t~ret8 := main(); {12937#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:40,482 INFO L290 TraceCheckUtils]: 5: Hoare triple {12937#(<= ~counter~0 0)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {12937#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:40,483 INFO L272 TraceCheckUtils]: 6: Hoare triple {12937#(<= ~counter~0 0)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {12937#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:40,483 INFO L290 TraceCheckUtils]: 7: Hoare triple {12937#(<= ~counter~0 0)} ~cond := #in~cond; {12937#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:40,483 INFO L290 TraceCheckUtils]: 8: Hoare triple {12937#(<= ~counter~0 0)} assume !(0 == ~cond); {12937#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:40,483 INFO L290 TraceCheckUtils]: 9: Hoare triple {12937#(<= ~counter~0 0)} assume true; {12937#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:40,484 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12937#(<= ~counter~0 0)} {12937#(<= ~counter~0 0)} #80#return; {12937#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:40,484 INFO L290 TraceCheckUtils]: 11: Hoare triple {12937#(<= ~counter~0 0)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {12937#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:40,485 INFO L290 TraceCheckUtils]: 12: Hoare triple {12937#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12971#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:40,485 INFO L290 TraceCheckUtils]: 13: Hoare triple {12971#(<= ~counter~0 1)} assume !!(#t~post6 < 5);havoc #t~post6; {12971#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:40,485 INFO L272 TraceCheckUtils]: 14: Hoare triple {12971#(<= ~counter~0 1)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {12971#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:40,486 INFO L290 TraceCheckUtils]: 15: Hoare triple {12971#(<= ~counter~0 1)} ~cond := #in~cond; {12971#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:40,486 INFO L290 TraceCheckUtils]: 16: Hoare triple {12971#(<= ~counter~0 1)} assume !(0 == ~cond); {12971#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:40,486 INFO L290 TraceCheckUtils]: 17: Hoare triple {12971#(<= ~counter~0 1)} assume true; {12971#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:40,487 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {12971#(<= ~counter~0 1)} {12971#(<= ~counter~0 1)} #82#return; {12971#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:40,487 INFO L272 TraceCheckUtils]: 19: Hoare triple {12971#(<= ~counter~0 1)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {12971#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:40,488 INFO L290 TraceCheckUtils]: 20: Hoare triple {12971#(<= ~counter~0 1)} ~cond := #in~cond; {12971#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:40,488 INFO L290 TraceCheckUtils]: 21: Hoare triple {12971#(<= ~counter~0 1)} assume !(0 == ~cond); {12971#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:40,488 INFO L290 TraceCheckUtils]: 22: Hoare triple {12971#(<= ~counter~0 1)} assume true; {12971#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:40,489 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {12971#(<= ~counter~0 1)} {12971#(<= ~counter~0 1)} #84#return; {12971#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:40,489 INFO L272 TraceCheckUtils]: 24: Hoare triple {12971#(<= ~counter~0 1)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {12971#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:40,489 INFO L290 TraceCheckUtils]: 25: Hoare triple {12971#(<= ~counter~0 1)} ~cond := #in~cond; {12971#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:40,489 INFO L290 TraceCheckUtils]: 26: Hoare triple {12971#(<= ~counter~0 1)} assume !(0 == ~cond); {12971#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:40,490 INFO L290 TraceCheckUtils]: 27: Hoare triple {12971#(<= ~counter~0 1)} assume true; {12971#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:40,490 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {12971#(<= ~counter~0 1)} {12971#(<= ~counter~0 1)} #86#return; {12971#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:40,490 INFO L290 TraceCheckUtils]: 29: Hoare triple {12971#(<= ~counter~0 1)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {12971#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:40,491 INFO L290 TraceCheckUtils]: 30: Hoare triple {12971#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13026#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:40,491 INFO L290 TraceCheckUtils]: 31: Hoare triple {13026#(<= ~counter~0 2)} assume !!(#t~post6 < 5);havoc #t~post6; {13026#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:40,492 INFO L272 TraceCheckUtils]: 32: Hoare triple {13026#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {13026#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:40,492 INFO L290 TraceCheckUtils]: 33: Hoare triple {13026#(<= ~counter~0 2)} ~cond := #in~cond; {13026#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:40,492 INFO L290 TraceCheckUtils]: 34: Hoare triple {13026#(<= ~counter~0 2)} assume !(0 == ~cond); {13026#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:40,492 INFO L290 TraceCheckUtils]: 35: Hoare triple {13026#(<= ~counter~0 2)} assume true; {13026#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:40,493 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {13026#(<= ~counter~0 2)} {13026#(<= ~counter~0 2)} #82#return; {13026#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:40,493 INFO L272 TraceCheckUtils]: 37: Hoare triple {13026#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {13026#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:40,493 INFO L290 TraceCheckUtils]: 38: Hoare triple {13026#(<= ~counter~0 2)} ~cond := #in~cond; {13026#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:40,494 INFO L290 TraceCheckUtils]: 39: Hoare triple {13026#(<= ~counter~0 2)} assume !(0 == ~cond); {13026#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:40,494 INFO L290 TraceCheckUtils]: 40: Hoare triple {13026#(<= ~counter~0 2)} assume true; {13026#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:40,494 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {13026#(<= ~counter~0 2)} {13026#(<= ~counter~0 2)} #84#return; {13026#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:40,495 INFO L272 TraceCheckUtils]: 42: Hoare triple {13026#(<= ~counter~0 2)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {13026#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:40,495 INFO L290 TraceCheckUtils]: 43: Hoare triple {13026#(<= ~counter~0 2)} ~cond := #in~cond; {13026#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:40,495 INFO L290 TraceCheckUtils]: 44: Hoare triple {13026#(<= ~counter~0 2)} assume !(0 == ~cond); {13026#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:40,495 INFO L290 TraceCheckUtils]: 45: Hoare triple {13026#(<= ~counter~0 2)} assume true; {13026#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:40,496 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {13026#(<= ~counter~0 2)} {13026#(<= ~counter~0 2)} #86#return; {13026#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:40,496 INFO L290 TraceCheckUtils]: 47: Hoare triple {13026#(<= ~counter~0 2)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {13026#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:40,497 INFO L290 TraceCheckUtils]: 48: Hoare triple {13026#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13081#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:40,497 INFO L290 TraceCheckUtils]: 49: Hoare triple {13081#(<= ~counter~0 3)} assume !!(#t~post6 < 5);havoc #t~post6; {13081#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:40,498 INFO L272 TraceCheckUtils]: 50: Hoare triple {13081#(<= ~counter~0 3)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {13081#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:40,498 INFO L290 TraceCheckUtils]: 51: Hoare triple {13081#(<= ~counter~0 3)} ~cond := #in~cond; {13081#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:40,498 INFO L290 TraceCheckUtils]: 52: Hoare triple {13081#(<= ~counter~0 3)} assume !(0 == ~cond); {13081#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:40,498 INFO L290 TraceCheckUtils]: 53: Hoare triple {13081#(<= ~counter~0 3)} assume true; {13081#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:40,499 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {13081#(<= ~counter~0 3)} {13081#(<= ~counter~0 3)} #82#return; {13081#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:40,499 INFO L272 TraceCheckUtils]: 55: Hoare triple {13081#(<= ~counter~0 3)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {13081#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:40,500 INFO L290 TraceCheckUtils]: 56: Hoare triple {13081#(<= ~counter~0 3)} ~cond := #in~cond; {13081#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:40,500 INFO L290 TraceCheckUtils]: 57: Hoare triple {13081#(<= ~counter~0 3)} assume !(0 == ~cond); {13081#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:40,500 INFO L290 TraceCheckUtils]: 58: Hoare triple {13081#(<= ~counter~0 3)} assume true; {13081#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:40,501 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {13081#(<= ~counter~0 3)} {13081#(<= ~counter~0 3)} #84#return; {13081#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:40,501 INFO L272 TraceCheckUtils]: 60: Hoare triple {13081#(<= ~counter~0 3)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {13081#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:40,501 INFO L290 TraceCheckUtils]: 61: Hoare triple {13081#(<= ~counter~0 3)} ~cond := #in~cond; {13081#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:40,502 INFO L290 TraceCheckUtils]: 62: Hoare triple {13081#(<= ~counter~0 3)} assume !(0 == ~cond); {13081#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:40,502 INFO L290 TraceCheckUtils]: 63: Hoare triple {13081#(<= ~counter~0 3)} assume true; {13081#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:40,503 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {13081#(<= ~counter~0 3)} {13081#(<= ~counter~0 3)} #86#return; {13081#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:40,503 INFO L290 TraceCheckUtils]: 65: Hoare triple {13081#(<= ~counter~0 3)} assume !(~r~0 >= ~d~0); {13081#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:40,504 INFO L290 TraceCheckUtils]: 66: Hoare triple {13081#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {13136#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:40,504 INFO L290 TraceCheckUtils]: 67: Hoare triple {13136#(<= ~counter~0 4)} assume !!(#t~post7 < 5);havoc #t~post7; {13136#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:40,505 INFO L272 TraceCheckUtils]: 68: Hoare triple {13136#(<= ~counter~0 4)} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {13136#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:40,505 INFO L290 TraceCheckUtils]: 69: Hoare triple {13136#(<= ~counter~0 4)} ~cond := #in~cond; {13136#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:40,505 INFO L290 TraceCheckUtils]: 70: Hoare triple {13136#(<= ~counter~0 4)} assume !(0 == ~cond); {13136#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:40,506 INFO L290 TraceCheckUtils]: 71: Hoare triple {13136#(<= ~counter~0 4)} assume true; {13136#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:40,506 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {13136#(<= ~counter~0 4)} {13136#(<= ~counter~0 4)} #88#return; {13136#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:40,507 INFO L272 TraceCheckUtils]: 73: Hoare triple {13136#(<= ~counter~0 4)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {13136#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:40,507 INFO L290 TraceCheckUtils]: 74: Hoare triple {13136#(<= ~counter~0 4)} ~cond := #in~cond; {13136#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:40,507 INFO L290 TraceCheckUtils]: 75: Hoare triple {13136#(<= ~counter~0 4)} assume !(0 == ~cond); {13136#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:40,508 INFO L290 TraceCheckUtils]: 76: Hoare triple {13136#(<= ~counter~0 4)} assume true; {13136#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:40,508 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {13136#(<= ~counter~0 4)} {13136#(<= ~counter~0 4)} #90#return; {13136#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:40,508 INFO L290 TraceCheckUtils]: 78: Hoare triple {13136#(<= ~counter~0 4)} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {13136#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:40,509 INFO L290 TraceCheckUtils]: 79: Hoare triple {13136#(<= ~counter~0 4)} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {13136#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:40,509 INFO L290 TraceCheckUtils]: 80: Hoare triple {13136#(<= ~counter~0 4)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {13179#(<= |main_#t~post7| 4)} is VALID [2022-04-15 09:22:40,510 INFO L290 TraceCheckUtils]: 81: Hoare triple {13179#(<= |main_#t~post7| 4)} assume !(#t~post7 < 5);havoc #t~post7; {12930#false} is VALID [2022-04-15 09:22:40,510 INFO L272 TraceCheckUtils]: 82: Hoare triple {12930#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {12930#false} is VALID [2022-04-15 09:22:40,510 INFO L290 TraceCheckUtils]: 83: Hoare triple {12930#false} ~cond := #in~cond; {12930#false} is VALID [2022-04-15 09:22:40,510 INFO L290 TraceCheckUtils]: 84: Hoare triple {12930#false} assume 0 == ~cond; {12930#false} is VALID [2022-04-15 09:22:40,510 INFO L290 TraceCheckUtils]: 85: Hoare triple {12930#false} assume !false; {12930#false} is VALID [2022-04-15 09:22:40,510 INFO L134 CoverageAnalysis]: Checked inductivity of 262 backedges. 22 proven. 200 refuted. 0 times theorem prover too weak. 40 trivial. 0 not checked. [2022-04-15 09:22:40,510 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:22:40,847 INFO L290 TraceCheckUtils]: 85: Hoare triple {12930#false} assume !false; {12930#false} is VALID [2022-04-15 09:22:40,847 INFO L290 TraceCheckUtils]: 84: Hoare triple {12930#false} assume 0 == ~cond; {12930#false} is VALID [2022-04-15 09:22:40,847 INFO L290 TraceCheckUtils]: 83: Hoare triple {12930#false} ~cond := #in~cond; {12930#false} is VALID [2022-04-15 09:22:40,847 INFO L272 TraceCheckUtils]: 82: Hoare triple {12930#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {12930#false} is VALID [2022-04-15 09:22:40,847 INFO L290 TraceCheckUtils]: 81: Hoare triple {13179#(<= |main_#t~post7| 4)} assume !(#t~post7 < 5);havoc #t~post7; {12930#false} is VALID [2022-04-15 09:22:40,848 INFO L290 TraceCheckUtils]: 80: Hoare triple {13136#(<= ~counter~0 4)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {13179#(<= |main_#t~post7| 4)} is VALID [2022-04-15 09:22:40,848 INFO L290 TraceCheckUtils]: 79: Hoare triple {13136#(<= ~counter~0 4)} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {13136#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:40,848 INFO L290 TraceCheckUtils]: 78: Hoare triple {13136#(<= ~counter~0 4)} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {13136#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:40,849 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {12929#true} {13136#(<= ~counter~0 4)} #90#return; {13136#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:40,849 INFO L290 TraceCheckUtils]: 76: Hoare triple {12929#true} assume true; {12929#true} is VALID [2022-04-15 09:22:40,849 INFO L290 TraceCheckUtils]: 75: Hoare triple {12929#true} assume !(0 == ~cond); {12929#true} is VALID [2022-04-15 09:22:40,849 INFO L290 TraceCheckUtils]: 74: Hoare triple {12929#true} ~cond := #in~cond; {12929#true} is VALID [2022-04-15 09:22:40,849 INFO L272 TraceCheckUtils]: 73: Hoare triple {13136#(<= ~counter~0 4)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {12929#true} is VALID [2022-04-15 09:22:40,849 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {12929#true} {13136#(<= ~counter~0 4)} #88#return; {13136#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:40,850 INFO L290 TraceCheckUtils]: 71: Hoare triple {12929#true} assume true; {12929#true} is VALID [2022-04-15 09:22:40,850 INFO L290 TraceCheckUtils]: 70: Hoare triple {12929#true} assume !(0 == ~cond); {12929#true} is VALID [2022-04-15 09:22:40,850 INFO L290 TraceCheckUtils]: 69: Hoare triple {12929#true} ~cond := #in~cond; {12929#true} is VALID [2022-04-15 09:22:40,850 INFO L272 TraceCheckUtils]: 68: Hoare triple {13136#(<= ~counter~0 4)} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {12929#true} is VALID [2022-04-15 09:22:40,850 INFO L290 TraceCheckUtils]: 67: Hoare triple {13136#(<= ~counter~0 4)} assume !!(#t~post7 < 5);havoc #t~post7; {13136#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:40,850 INFO L290 TraceCheckUtils]: 66: Hoare triple {13081#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {13136#(<= ~counter~0 4)} is VALID [2022-04-15 09:22:40,851 INFO L290 TraceCheckUtils]: 65: Hoare triple {13081#(<= ~counter~0 3)} assume !(~r~0 >= ~d~0); {13081#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:40,851 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {12929#true} {13081#(<= ~counter~0 3)} #86#return; {13081#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:40,851 INFO L290 TraceCheckUtils]: 63: Hoare triple {12929#true} assume true; {12929#true} is VALID [2022-04-15 09:22:40,851 INFO L290 TraceCheckUtils]: 62: Hoare triple {12929#true} assume !(0 == ~cond); {12929#true} is VALID [2022-04-15 09:22:40,851 INFO L290 TraceCheckUtils]: 61: Hoare triple {12929#true} ~cond := #in~cond; {12929#true} is VALID [2022-04-15 09:22:40,851 INFO L272 TraceCheckUtils]: 60: Hoare triple {13081#(<= ~counter~0 3)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {12929#true} is VALID [2022-04-15 09:22:40,852 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {12929#true} {13081#(<= ~counter~0 3)} #84#return; {13081#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:40,852 INFO L290 TraceCheckUtils]: 58: Hoare triple {12929#true} assume true; {12929#true} is VALID [2022-04-15 09:22:40,852 INFO L290 TraceCheckUtils]: 57: Hoare triple {12929#true} assume !(0 == ~cond); {12929#true} is VALID [2022-04-15 09:22:40,852 INFO L290 TraceCheckUtils]: 56: Hoare triple {12929#true} ~cond := #in~cond; {12929#true} is VALID [2022-04-15 09:22:40,852 INFO L272 TraceCheckUtils]: 55: Hoare triple {13081#(<= ~counter~0 3)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {12929#true} is VALID [2022-04-15 09:22:40,852 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {12929#true} {13081#(<= ~counter~0 3)} #82#return; {13081#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:40,852 INFO L290 TraceCheckUtils]: 53: Hoare triple {12929#true} assume true; {12929#true} is VALID [2022-04-15 09:22:40,852 INFO L290 TraceCheckUtils]: 52: Hoare triple {12929#true} assume !(0 == ~cond); {12929#true} is VALID [2022-04-15 09:22:40,852 INFO L290 TraceCheckUtils]: 51: Hoare triple {12929#true} ~cond := #in~cond; {12929#true} is VALID [2022-04-15 09:22:40,853 INFO L272 TraceCheckUtils]: 50: Hoare triple {13081#(<= ~counter~0 3)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {12929#true} is VALID [2022-04-15 09:22:40,853 INFO L290 TraceCheckUtils]: 49: Hoare triple {13081#(<= ~counter~0 3)} assume !!(#t~post6 < 5);havoc #t~post6; {13081#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:40,853 INFO L290 TraceCheckUtils]: 48: Hoare triple {13026#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13081#(<= ~counter~0 3)} is VALID [2022-04-15 09:22:40,853 INFO L290 TraceCheckUtils]: 47: Hoare triple {13026#(<= ~counter~0 2)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {13026#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:40,854 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {12929#true} {13026#(<= ~counter~0 2)} #86#return; {13026#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:40,854 INFO L290 TraceCheckUtils]: 45: Hoare triple {12929#true} assume true; {12929#true} is VALID [2022-04-15 09:22:40,854 INFO L290 TraceCheckUtils]: 44: Hoare triple {12929#true} assume !(0 == ~cond); {12929#true} is VALID [2022-04-15 09:22:40,854 INFO L290 TraceCheckUtils]: 43: Hoare triple {12929#true} ~cond := #in~cond; {12929#true} is VALID [2022-04-15 09:22:40,854 INFO L272 TraceCheckUtils]: 42: Hoare triple {13026#(<= ~counter~0 2)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {12929#true} is VALID [2022-04-15 09:22:40,854 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {12929#true} {13026#(<= ~counter~0 2)} #84#return; {13026#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:40,855 INFO L290 TraceCheckUtils]: 40: Hoare triple {12929#true} assume true; {12929#true} is VALID [2022-04-15 09:22:40,855 INFO L290 TraceCheckUtils]: 39: Hoare triple {12929#true} assume !(0 == ~cond); {12929#true} is VALID [2022-04-15 09:22:40,855 INFO L290 TraceCheckUtils]: 38: Hoare triple {12929#true} ~cond := #in~cond; {12929#true} is VALID [2022-04-15 09:22:40,855 INFO L272 TraceCheckUtils]: 37: Hoare triple {13026#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {12929#true} is VALID [2022-04-15 09:22:40,855 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {12929#true} {13026#(<= ~counter~0 2)} #82#return; {13026#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:40,855 INFO L290 TraceCheckUtils]: 35: Hoare triple {12929#true} assume true; {12929#true} is VALID [2022-04-15 09:22:40,855 INFO L290 TraceCheckUtils]: 34: Hoare triple {12929#true} assume !(0 == ~cond); {12929#true} is VALID [2022-04-15 09:22:40,855 INFO L290 TraceCheckUtils]: 33: Hoare triple {12929#true} ~cond := #in~cond; {12929#true} is VALID [2022-04-15 09:22:40,855 INFO L272 TraceCheckUtils]: 32: Hoare triple {13026#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {12929#true} is VALID [2022-04-15 09:22:40,856 INFO L290 TraceCheckUtils]: 31: Hoare triple {13026#(<= ~counter~0 2)} assume !!(#t~post6 < 5);havoc #t~post6; {13026#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:40,856 INFO L290 TraceCheckUtils]: 30: Hoare triple {12971#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13026#(<= ~counter~0 2)} is VALID [2022-04-15 09:22:40,856 INFO L290 TraceCheckUtils]: 29: Hoare triple {12971#(<= ~counter~0 1)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {12971#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:40,857 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {12929#true} {12971#(<= ~counter~0 1)} #86#return; {12971#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:40,857 INFO L290 TraceCheckUtils]: 27: Hoare triple {12929#true} assume true; {12929#true} is VALID [2022-04-15 09:22:40,857 INFO L290 TraceCheckUtils]: 26: Hoare triple {12929#true} assume !(0 == ~cond); {12929#true} is VALID [2022-04-15 09:22:40,857 INFO L290 TraceCheckUtils]: 25: Hoare triple {12929#true} ~cond := #in~cond; {12929#true} is VALID [2022-04-15 09:22:40,857 INFO L272 TraceCheckUtils]: 24: Hoare triple {12971#(<= ~counter~0 1)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {12929#true} is VALID [2022-04-15 09:22:40,857 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {12929#true} {12971#(<= ~counter~0 1)} #84#return; {12971#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:40,857 INFO L290 TraceCheckUtils]: 22: Hoare triple {12929#true} assume true; {12929#true} is VALID [2022-04-15 09:22:40,857 INFO L290 TraceCheckUtils]: 21: Hoare triple {12929#true} assume !(0 == ~cond); {12929#true} is VALID [2022-04-15 09:22:40,857 INFO L290 TraceCheckUtils]: 20: Hoare triple {12929#true} ~cond := #in~cond; {12929#true} is VALID [2022-04-15 09:22:40,857 INFO L272 TraceCheckUtils]: 19: Hoare triple {12971#(<= ~counter~0 1)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {12929#true} is VALID [2022-04-15 09:22:40,858 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {12929#true} {12971#(<= ~counter~0 1)} #82#return; {12971#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:40,858 INFO L290 TraceCheckUtils]: 17: Hoare triple {12929#true} assume true; {12929#true} is VALID [2022-04-15 09:22:40,858 INFO L290 TraceCheckUtils]: 16: Hoare triple {12929#true} assume !(0 == ~cond); {12929#true} is VALID [2022-04-15 09:22:40,858 INFO L290 TraceCheckUtils]: 15: Hoare triple {12929#true} ~cond := #in~cond; {12929#true} is VALID [2022-04-15 09:22:40,858 INFO L272 TraceCheckUtils]: 14: Hoare triple {12971#(<= ~counter~0 1)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {12929#true} is VALID [2022-04-15 09:22:40,858 INFO L290 TraceCheckUtils]: 13: Hoare triple {12971#(<= ~counter~0 1)} assume !!(#t~post6 < 5);havoc #t~post6; {12971#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:40,859 INFO L290 TraceCheckUtils]: 12: Hoare triple {12937#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12971#(<= ~counter~0 1)} is VALID [2022-04-15 09:22:40,859 INFO L290 TraceCheckUtils]: 11: Hoare triple {12937#(<= ~counter~0 0)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {12937#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:40,859 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12929#true} {12937#(<= ~counter~0 0)} #80#return; {12937#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:40,859 INFO L290 TraceCheckUtils]: 9: Hoare triple {12929#true} assume true; {12929#true} is VALID [2022-04-15 09:22:40,859 INFO L290 TraceCheckUtils]: 8: Hoare triple {12929#true} assume !(0 == ~cond); {12929#true} is VALID [2022-04-15 09:22:40,859 INFO L290 TraceCheckUtils]: 7: Hoare triple {12929#true} ~cond := #in~cond; {12929#true} is VALID [2022-04-15 09:22:40,859 INFO L272 TraceCheckUtils]: 6: Hoare triple {12937#(<= ~counter~0 0)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {12929#true} is VALID [2022-04-15 09:22:40,860 INFO L290 TraceCheckUtils]: 5: Hoare triple {12937#(<= ~counter~0 0)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {12937#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:40,860 INFO L272 TraceCheckUtils]: 4: Hoare triple {12937#(<= ~counter~0 0)} call #t~ret8 := main(); {12937#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:40,860 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12937#(<= ~counter~0 0)} {12929#true} #96#return; {12937#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:40,860 INFO L290 TraceCheckUtils]: 2: Hoare triple {12937#(<= ~counter~0 0)} assume true; {12937#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:40,861 INFO L290 TraceCheckUtils]: 1: Hoare triple {12929#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);~counter~0 := 0; {12937#(<= ~counter~0 0)} is VALID [2022-04-15 09:22:40,861 INFO L272 TraceCheckUtils]: 0: Hoare triple {12929#true} call ULTIMATE.init(); {12929#true} is VALID [2022-04-15 09:22:40,861 INFO L134 CoverageAnalysis]: Checked inductivity of 262 backedges. 22 proven. 20 refuted. 0 times theorem prover too weak. 220 trivial. 0 not checked. [2022-04-15 09:22:40,861 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:22:40,861 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2036141453] [2022-04-15 09:22:40,861 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:22:40,861 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [31569648] [2022-04-15 09:22:40,862 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [31569648] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:22:40,862 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:22:40,862 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 8 [2022-04-15 09:22:40,862 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:22:40,862 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1170825967] [2022-04-15 09:22:40,862 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1170825967] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:22:40,862 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:22:40,862 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-15 09:22:40,862 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [314462824] [2022-04-15 09:22:40,862 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:22:40,862 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 7 states have internal predecessors, (37), 7 states have call successors, (15), 7 states have call predecessors, (15), 5 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) Word has length 86 [2022-04-15 09:22:40,863 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:22:40,863 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 4.625) internal successors, (37), 7 states have internal predecessors, (37), 7 states have call successors, (15), 7 states have call predecessors, (15), 5 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-15 09:22:40,917 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:22:40,917 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-15 09:22:40,917 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:22:40,917 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-15 09:22:40,918 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=33, Unknown=0, NotChecked=0, Total=56 [2022-04-15 09:22:40,918 INFO L87 Difference]: Start difference. First operand 127 states and 147 transitions. Second operand has 8 states, 8 states have (on average 4.625) internal successors, (37), 7 states have internal predecessors, (37), 7 states have call successors, (15), 7 states have call predecessors, (15), 5 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-15 09:22:41,385 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:22:41,385 INFO L93 Difference]: Finished difference Result 179 states and 206 transitions. [2022-04-15 09:22:41,386 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-15 09:22:41,386 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 7 states have internal predecessors, (37), 7 states have call successors, (15), 7 states have call predecessors, (15), 5 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) Word has length 86 [2022-04-15 09:22:41,386 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:22:41,386 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.625) internal successors, (37), 7 states have internal predecessors, (37), 7 states have call successors, (15), 7 states have call predecessors, (15), 5 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-15 09:22:41,387 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 119 transitions. [2022-04-15 09:22:41,387 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 4.625) internal successors, (37), 7 states have internal predecessors, (37), 7 states have call successors, (15), 7 states have call predecessors, (15), 5 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-15 09:22:41,388 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 119 transitions. [2022-04-15 09:22:41,388 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 119 transitions. [2022-04-15 09:22:41,491 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 119 edges. 119 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:22:41,493 INFO L225 Difference]: With dead ends: 179 [2022-04-15 09:22:41,494 INFO L226 Difference]: Without dead ends: 164 [2022-04-15 09:22:41,494 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 172 GetRequests, 164 SyntacticMatches, 1 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=27, Invalid=45, Unknown=0, NotChecked=0, Total=72 [2022-04-15 09:22:41,494 INFO L913 BasicCegarLoop]: 56 mSDtfsCounter, 35 mSDsluCounter, 157 mSDsCounter, 0 mSdLazyCounter, 77 mSolverCounterSat, 32 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 35 SdHoareTripleChecker+Valid, 213 SdHoareTripleChecker+Invalid, 109 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 32 IncrementalHoareTripleChecker+Valid, 77 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 09:22:41,494 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [35 Valid, 213 Invalid, 109 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [32 Valid, 77 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 09:22:41,495 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 164 states. [2022-04-15 09:22:41,639 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 164 to 161. [2022-04-15 09:22:41,639 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:22:41,640 INFO L82 GeneralOperation]: Start isEquivalent. First operand 164 states. Second operand has 161 states, 105 states have (on average 1.1523809523809523) internal successors, (121), 109 states have internal predecessors, (121), 34 states have call successors, (34), 23 states have call predecessors, (34), 21 states have return successors, (31), 28 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-15 09:22:41,640 INFO L74 IsIncluded]: Start isIncluded. First operand 164 states. Second operand has 161 states, 105 states have (on average 1.1523809523809523) internal successors, (121), 109 states have internal predecessors, (121), 34 states have call successors, (34), 23 states have call predecessors, (34), 21 states have return successors, (31), 28 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-15 09:22:41,640 INFO L87 Difference]: Start difference. First operand 164 states. Second operand has 161 states, 105 states have (on average 1.1523809523809523) internal successors, (121), 109 states have internal predecessors, (121), 34 states have call successors, (34), 23 states have call predecessors, (34), 21 states have return successors, (31), 28 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-15 09:22:41,643 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:22:41,643 INFO L93 Difference]: Finished difference Result 164 states and 188 transitions. [2022-04-15 09:22:41,643 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 188 transitions. [2022-04-15 09:22:41,643 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:22:41,643 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:22:41,644 INFO L74 IsIncluded]: Start isIncluded. First operand has 161 states, 105 states have (on average 1.1523809523809523) internal successors, (121), 109 states have internal predecessors, (121), 34 states have call successors, (34), 23 states have call predecessors, (34), 21 states have return successors, (31), 28 states have call predecessors, (31), 31 states have call successors, (31) Second operand 164 states. [2022-04-15 09:22:41,644 INFO L87 Difference]: Start difference. First operand has 161 states, 105 states have (on average 1.1523809523809523) internal successors, (121), 109 states have internal predecessors, (121), 34 states have call successors, (34), 23 states have call predecessors, (34), 21 states have return successors, (31), 28 states have call predecessors, (31), 31 states have call successors, (31) Second operand 164 states. [2022-04-15 09:22:41,646 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:22:41,646 INFO L93 Difference]: Finished difference Result 164 states and 188 transitions. [2022-04-15 09:22:41,646 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 188 transitions. [2022-04-15 09:22:41,647 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:22:41,647 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:22:41,647 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:22:41,647 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:22:41,647 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 161 states, 105 states have (on average 1.1523809523809523) internal successors, (121), 109 states have internal predecessors, (121), 34 states have call successors, (34), 23 states have call predecessors, (34), 21 states have return successors, (31), 28 states have call predecessors, (31), 31 states have call successors, (31) [2022-04-15 09:22:41,652 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 161 states to 161 states and 186 transitions. [2022-04-15 09:22:41,652 INFO L78 Accepts]: Start accepts. Automaton has 161 states and 186 transitions. Word has length 86 [2022-04-15 09:22:41,652 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:22:41,652 INFO L478 AbstractCegarLoop]: Abstraction has 161 states and 186 transitions. [2022-04-15 09:22:41,653 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.625) internal successors, (37), 7 states have internal predecessors, (37), 7 states have call successors, (15), 7 states have call predecessors, (15), 5 states have return successors, (13), 5 states have call predecessors, (13), 6 states have call successors, (13) [2022-04-15 09:22:41,653 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 161 states and 186 transitions. [2022-04-15 09:22:43,890 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 186 edges. 185 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 09:22:43,890 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 186 transitions. [2022-04-15 09:22:43,895 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 87 [2022-04-15 09:22:43,895 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:22:43,895 INFO L499 BasicCegarLoop]: trace histogram [12, 11, 11, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:22:43,917 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Ended with exit code 0 [2022-04-15 09:22:44,111 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 09:22:44,111 INFO L403 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:22:44,112 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:22:44,112 INFO L85 PathProgramCache]: Analyzing trace with hash -1068167297, now seen corresponding path program 5 times [2022-04-15 09:22:44,112 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:22:44,112 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [702398316] [2022-04-15 09:22:51,645 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:22:51,645 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:22:51,645 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:22:51,645 INFO L85 PathProgramCache]: Analyzing trace with hash -1068167297, now seen corresponding path program 6 times [2022-04-15 09:22:51,645 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:22:51,645 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [736159420] [2022-04-15 09:22:51,645 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:22:51,645 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:22:51,664 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:22:51,664 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2079864634] [2022-04-15 09:22:51,664 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-15 09:22:51,664 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:22:51,664 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:22:51,665 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 09:22:51,666 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 09:22:51,712 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 4 check-sat command(s) [2022-04-15 09:22:51,713 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:22:51,713 INFO L263 TraceCheckSpWp]: Trace formula consists of 152 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-15 09:22:51,729 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:22:51,730 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:24:11,143 INFO L272 TraceCheckUtils]: 0: Hoare triple {14462#true} call ULTIMATE.init(); {14462#true} is VALID [2022-04-15 09:24:11,143 INFO L290 TraceCheckUtils]: 1: Hoare triple {14462#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);~counter~0 := 0; {14462#true} is VALID [2022-04-15 09:24:11,143 INFO L290 TraceCheckUtils]: 2: Hoare triple {14462#true} assume true; {14462#true} is VALID [2022-04-15 09:24:11,144 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14462#true} {14462#true} #96#return; {14462#true} is VALID [2022-04-15 09:24:11,144 INFO L272 TraceCheckUtils]: 4: Hoare triple {14462#true} call #t~ret8 := main(); {14462#true} is VALID [2022-04-15 09:24:11,144 INFO L290 TraceCheckUtils]: 5: Hoare triple {14462#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {14462#true} is VALID [2022-04-15 09:24:11,144 INFO L272 TraceCheckUtils]: 6: Hoare triple {14462#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {14462#true} is VALID [2022-04-15 09:24:11,144 INFO L290 TraceCheckUtils]: 7: Hoare triple {14462#true} ~cond := #in~cond; {14462#true} is VALID [2022-04-15 09:24:11,144 INFO L290 TraceCheckUtils]: 8: Hoare triple {14462#true} assume !(0 == ~cond); {14462#true} is VALID [2022-04-15 09:24:11,144 INFO L290 TraceCheckUtils]: 9: Hoare triple {14462#true} assume true; {14462#true} is VALID [2022-04-15 09:24:11,144 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14462#true} {14462#true} #80#return; {14462#true} is VALID [2022-04-15 09:24:11,144 INFO L290 TraceCheckUtils]: 11: Hoare triple {14462#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {14500#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:24:11,145 INFO L290 TraceCheckUtils]: 12: Hoare triple {14500#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14500#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:24:11,145 INFO L290 TraceCheckUtils]: 13: Hoare triple {14500#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 5);havoc #t~post6; {14500#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:24:11,145 INFO L272 TraceCheckUtils]: 14: Hoare triple {14500#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {14462#true} is VALID [2022-04-15 09:24:11,145 INFO L290 TraceCheckUtils]: 15: Hoare triple {14462#true} ~cond := #in~cond; {14462#true} is VALID [2022-04-15 09:24:11,145 INFO L290 TraceCheckUtils]: 16: Hoare triple {14462#true} assume !(0 == ~cond); {14462#true} is VALID [2022-04-15 09:24:11,145 INFO L290 TraceCheckUtils]: 17: Hoare triple {14462#true} assume true; {14462#true} is VALID [2022-04-15 09:24:11,146 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {14462#true} {14500#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #82#return; {14500#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:24:11,146 INFO L272 TraceCheckUtils]: 19: Hoare triple {14500#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {14462#true} is VALID [2022-04-15 09:24:11,146 INFO L290 TraceCheckUtils]: 20: Hoare triple {14462#true} ~cond := #in~cond; {14462#true} is VALID [2022-04-15 09:24:11,146 INFO L290 TraceCheckUtils]: 21: Hoare triple {14462#true} assume !(0 == ~cond); {14462#true} is VALID [2022-04-15 09:24:11,146 INFO L290 TraceCheckUtils]: 22: Hoare triple {14462#true} assume true; {14462#true} is VALID [2022-04-15 09:24:11,146 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {14462#true} {14500#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #84#return; {14500#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:24:11,147 INFO L272 TraceCheckUtils]: 24: Hoare triple {14500#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {14462#true} is VALID [2022-04-15 09:24:11,147 INFO L290 TraceCheckUtils]: 25: Hoare triple {14462#true} ~cond := #in~cond; {14462#true} is VALID [2022-04-15 09:24:11,147 INFO L290 TraceCheckUtils]: 26: Hoare triple {14462#true} assume !(0 == ~cond); {14462#true} is VALID [2022-04-15 09:24:11,147 INFO L290 TraceCheckUtils]: 27: Hoare triple {14462#true} assume true; {14462#true} is VALID [2022-04-15 09:24:11,147 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {14462#true} {14500#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #86#return; {14500#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:24:11,148 INFO L290 TraceCheckUtils]: 29: Hoare triple {14500#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {14500#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:24:11,148 INFO L290 TraceCheckUtils]: 30: Hoare triple {14500#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14500#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:24:11,148 INFO L290 TraceCheckUtils]: 31: Hoare triple {14500#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 5);havoc #t~post6; {14500#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:24:11,148 INFO L272 TraceCheckUtils]: 32: Hoare triple {14500#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {14462#true} is VALID [2022-04-15 09:24:11,148 INFO L290 TraceCheckUtils]: 33: Hoare triple {14462#true} ~cond := #in~cond; {14462#true} is VALID [2022-04-15 09:24:11,148 INFO L290 TraceCheckUtils]: 34: Hoare triple {14462#true} assume !(0 == ~cond); {14462#true} is VALID [2022-04-15 09:24:11,148 INFO L290 TraceCheckUtils]: 35: Hoare triple {14462#true} assume true; {14462#true} is VALID [2022-04-15 09:24:11,149 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {14462#true} {14500#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #82#return; {14500#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:24:11,149 INFO L272 TraceCheckUtils]: 37: Hoare triple {14500#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {14462#true} is VALID [2022-04-15 09:24:11,149 INFO L290 TraceCheckUtils]: 38: Hoare triple {14462#true} ~cond := #in~cond; {14462#true} is VALID [2022-04-15 09:24:11,149 INFO L290 TraceCheckUtils]: 39: Hoare triple {14462#true} assume !(0 == ~cond); {14462#true} is VALID [2022-04-15 09:24:11,149 INFO L290 TraceCheckUtils]: 40: Hoare triple {14462#true} assume true; {14462#true} is VALID [2022-04-15 09:24:11,150 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {14462#true} {14500#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #84#return; {14500#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:24:11,150 INFO L272 TraceCheckUtils]: 42: Hoare triple {14500#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {14462#true} is VALID [2022-04-15 09:24:11,150 INFO L290 TraceCheckUtils]: 43: Hoare triple {14462#true} ~cond := #in~cond; {14462#true} is VALID [2022-04-15 09:24:11,150 INFO L290 TraceCheckUtils]: 44: Hoare triple {14462#true} assume !(0 == ~cond); {14462#true} is VALID [2022-04-15 09:24:11,150 INFO L290 TraceCheckUtils]: 45: Hoare triple {14462#true} assume true; {14462#true} is VALID [2022-04-15 09:24:11,150 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {14462#true} {14500#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #86#return; {14500#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-15 09:24:11,151 INFO L290 TraceCheckUtils]: 47: Hoare triple {14500#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {14609#(and (= (mod main_~A~0 4294967296) main_~r~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} is VALID [2022-04-15 09:24:11,152 INFO L290 TraceCheckUtils]: 48: Hoare triple {14609#(and (= (mod main_~A~0 4294967296) main_~r~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14609#(and (= (mod main_~A~0 4294967296) main_~r~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} is VALID [2022-04-15 09:24:11,152 INFO L290 TraceCheckUtils]: 49: Hoare triple {14609#(and (= (mod main_~A~0 4294967296) main_~r~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} assume !!(#t~post6 < 5);havoc #t~post6; {14609#(and (= (mod main_~A~0 4294967296) main_~r~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} is VALID [2022-04-15 09:24:11,152 INFO L272 TraceCheckUtils]: 50: Hoare triple {14609#(and (= (mod main_~A~0 4294967296) main_~r~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {14462#true} is VALID [2022-04-15 09:24:11,152 INFO L290 TraceCheckUtils]: 51: Hoare triple {14462#true} ~cond := #in~cond; {14462#true} is VALID [2022-04-15 09:24:11,152 INFO L290 TraceCheckUtils]: 52: Hoare triple {14462#true} assume !(0 == ~cond); {14462#true} is VALID [2022-04-15 09:24:11,152 INFO L290 TraceCheckUtils]: 53: Hoare triple {14462#true} assume true; {14462#true} is VALID [2022-04-15 09:24:11,153 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {14462#true} {14609#(and (= (mod main_~A~0 4294967296) main_~r~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} #82#return; {14609#(and (= (mod main_~A~0 4294967296) main_~r~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} is VALID [2022-04-15 09:24:11,153 INFO L272 TraceCheckUtils]: 55: Hoare triple {14609#(and (= (mod main_~A~0 4294967296) main_~r~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {14462#true} is VALID [2022-04-15 09:24:11,153 INFO L290 TraceCheckUtils]: 56: Hoare triple {14462#true} ~cond := #in~cond; {14462#true} is VALID [2022-04-15 09:24:11,153 INFO L290 TraceCheckUtils]: 57: Hoare triple {14462#true} assume !(0 == ~cond); {14462#true} is VALID [2022-04-15 09:24:11,153 INFO L290 TraceCheckUtils]: 58: Hoare triple {14462#true} assume true; {14462#true} is VALID [2022-04-15 09:24:11,154 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {14462#true} {14609#(and (= (mod main_~A~0 4294967296) main_~r~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} #84#return; {14609#(and (= (mod main_~A~0 4294967296) main_~r~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} is VALID [2022-04-15 09:24:11,154 INFO L272 TraceCheckUtils]: 60: Hoare triple {14609#(and (= (mod main_~A~0 4294967296) main_~r~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {14462#true} is VALID [2022-04-15 09:24:11,154 INFO L290 TraceCheckUtils]: 61: Hoare triple {14462#true} ~cond := #in~cond; {14652#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:24:11,154 INFO L290 TraceCheckUtils]: 62: Hoare triple {14652#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {14656#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:24:11,154 INFO L290 TraceCheckUtils]: 63: Hoare triple {14656#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {14656#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:24:11,155 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {14656#(not (= |__VERIFIER_assert_#in~cond| 0))} {14609#(and (= (mod main_~A~0 4294967296) main_~r~0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} #86#return; {14663#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} is VALID [2022-04-15 09:24:11,156 INFO L290 TraceCheckUtils]: 65: Hoare triple {14663#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} assume !(~r~0 >= ~d~0); {14663#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} is VALID [2022-04-15 09:24:11,156 INFO L290 TraceCheckUtils]: 66: Hoare triple {14663#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14663#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} is VALID [2022-04-15 09:24:11,156 INFO L290 TraceCheckUtils]: 67: Hoare triple {14663#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} assume !!(#t~post7 < 5);havoc #t~post7; {14663#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} is VALID [2022-04-15 09:24:11,156 INFO L272 TraceCheckUtils]: 68: Hoare triple {14663#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {14462#true} is VALID [2022-04-15 09:24:11,156 INFO L290 TraceCheckUtils]: 69: Hoare triple {14462#true} ~cond := #in~cond; {14462#true} is VALID [2022-04-15 09:24:11,157 INFO L290 TraceCheckUtils]: 70: Hoare triple {14462#true} assume !(0 == ~cond); {14462#true} is VALID [2022-04-15 09:24:11,157 INFO L290 TraceCheckUtils]: 71: Hoare triple {14462#true} assume true; {14462#true} is VALID [2022-04-15 09:24:11,157 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {14462#true} {14663#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} #88#return; {14663#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} is VALID [2022-04-15 09:24:11,157 INFO L272 TraceCheckUtils]: 73: Hoare triple {14663#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {14462#true} is VALID [2022-04-15 09:24:11,157 INFO L290 TraceCheckUtils]: 74: Hoare triple {14462#true} ~cond := #in~cond; {14462#true} is VALID [2022-04-15 09:24:11,157 INFO L290 TraceCheckUtils]: 75: Hoare triple {14462#true} assume !(0 == ~cond); {14462#true} is VALID [2022-04-15 09:24:11,157 INFO L290 TraceCheckUtils]: 76: Hoare triple {14462#true} assume true; {14462#true} is VALID [2022-04-15 09:24:11,158 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {14462#true} {14663#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} #90#return; {14663#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} is VALID [2022-04-15 09:24:11,163 INFO L290 TraceCheckUtils]: 78: Hoare triple {14663#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296))) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= (mod main_~p~0 2) 0))} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {14706#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296))) (= main_~q~0 0))} is VALID [2022-04-15 09:24:11,165 INFO L290 TraceCheckUtils]: 79: Hoare triple {14706#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296))) (= main_~q~0 0))} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:24:11,166 INFO L290 TraceCheckUtils]: 80: Hoare triple {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:24:11,166 INFO L290 TraceCheckUtils]: 81: Hoare triple {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} assume !!(#t~post7 < 5);havoc #t~post7; {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:24:11,166 INFO L272 TraceCheckUtils]: 82: Hoare triple {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {14720#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:24:11,167 INFO L290 TraceCheckUtils]: 83: Hoare triple {14720#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {14724#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:24:11,167 INFO L290 TraceCheckUtils]: 84: Hoare triple {14724#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {14463#false} is VALID [2022-04-15 09:24:11,167 INFO L290 TraceCheckUtils]: 85: Hoare triple {14463#false} assume !false; {14463#false} is VALID [2022-04-15 09:24:11,168 INFO L134 CoverageAnalysis]: Checked inductivity of 263 backedges. 57 proven. 10 refuted. 0 times theorem prover too weak. 196 trivial. 0 not checked. [2022-04-15 09:24:11,168 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:25:03,340 WARN L232 SmtUtils]: Spent 22.74s on a formula simplification that was a NOOP. DAG size: 51 (called from [L 360] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2022-04-15 09:26:26,903 INFO L290 TraceCheckUtils]: 85: Hoare triple {14463#false} assume !false; {14463#false} is VALID [2022-04-15 09:26:26,904 INFO L290 TraceCheckUtils]: 84: Hoare triple {14724#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {14463#false} is VALID [2022-04-15 09:26:26,904 INFO L290 TraceCheckUtils]: 83: Hoare triple {14720#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {14724#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:26:26,904 INFO L272 TraceCheckUtils]: 82: Hoare triple {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {14720#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:26:26,905 INFO L290 TraceCheckUtils]: 81: Hoare triple {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} assume !!(#t~post7 < 5);havoc #t~post7; {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:26:26,905 INFO L290 TraceCheckUtils]: 80: Hoare triple {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:26:26,907 INFO L290 TraceCheckUtils]: 79: Hoare triple {14749#(= (* (+ main_~q~0 main_~p~0) (mod main_~B~0 4294967296)) (+ (mod main_~A~0 4294967296) main_~d~0 (* (- 1) main_~r~0)))} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:26:26,918 INFO L290 TraceCheckUtils]: 78: Hoare triple {14753#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {14749#(= (* (+ main_~q~0 main_~p~0) (mod main_~B~0 4294967296)) (+ (mod main_~A~0 4294967296) main_~d~0 (* (- 1) main_~r~0)))} is VALID [2022-04-15 09:26:26,919 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {14462#true} {14753#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} #90#return; {14753#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:26:26,919 INFO L290 TraceCheckUtils]: 76: Hoare triple {14462#true} assume true; {14462#true} is VALID [2022-04-15 09:26:26,919 INFO L290 TraceCheckUtils]: 75: Hoare triple {14462#true} assume !(0 == ~cond); {14462#true} is VALID [2022-04-15 09:26:26,919 INFO L290 TraceCheckUtils]: 74: Hoare triple {14462#true} ~cond := #in~cond; {14462#true} is VALID [2022-04-15 09:26:26,919 INFO L272 TraceCheckUtils]: 73: Hoare triple {14753#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {14462#true} is VALID [2022-04-15 09:26:26,920 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {14462#true} {14753#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} #88#return; {14753#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:26:26,920 INFO L290 TraceCheckUtils]: 71: Hoare triple {14462#true} assume true; {14462#true} is VALID [2022-04-15 09:26:26,920 INFO L290 TraceCheckUtils]: 70: Hoare triple {14462#true} assume !(0 == ~cond); {14462#true} is VALID [2022-04-15 09:26:26,920 INFO L290 TraceCheckUtils]: 69: Hoare triple {14462#true} ~cond := #in~cond; {14462#true} is VALID [2022-04-15 09:26:26,920 INFO L272 TraceCheckUtils]: 68: Hoare triple {14753#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {14462#true} is VALID [2022-04-15 09:26:26,921 INFO L290 TraceCheckUtils]: 67: Hoare triple {14753#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} assume !!(#t~post7 < 5);havoc #t~post7; {14753#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:26:26,922 INFO L290 TraceCheckUtils]: 66: Hoare triple {14753#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {14753#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:26:26,923 INFO L290 TraceCheckUtils]: 65: Hoare triple {14753#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} assume !(~r~0 >= ~d~0); {14753#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:26:26,926 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {14656#(not (= |__VERIFIER_assert_#in~cond| 0))} {14796#(or (not (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (= (mod main_~p~0 2) 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))))))} #86#return; {14753#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:26:26,926 INFO L290 TraceCheckUtils]: 63: Hoare triple {14656#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {14656#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:26:26,926 INFO L290 TraceCheckUtils]: 62: Hoare triple {14806#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {14656#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 09:26:26,927 INFO L290 TraceCheckUtils]: 61: Hoare triple {14462#true} ~cond := #in~cond; {14806#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 09:26:26,927 INFO L272 TraceCheckUtils]: 60: Hoare triple {14796#(or (not (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (= (mod main_~p~0 2) 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))))))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {14462#true} is VALID [2022-04-15 09:26:26,927 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {14462#true} {14796#(or (not (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (= (mod main_~p~0 2) 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))))))} #84#return; {14796#(or (not (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (= (mod main_~p~0 2) 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))))))} is VALID [2022-04-15 09:26:26,927 INFO L290 TraceCheckUtils]: 58: Hoare triple {14462#true} assume true; {14462#true} is VALID [2022-04-15 09:26:26,927 INFO L290 TraceCheckUtils]: 57: Hoare triple {14462#true} assume !(0 == ~cond); {14462#true} is VALID [2022-04-15 09:26:26,928 INFO L290 TraceCheckUtils]: 56: Hoare triple {14462#true} ~cond := #in~cond; {14462#true} is VALID [2022-04-15 09:26:26,928 INFO L272 TraceCheckUtils]: 55: Hoare triple {14796#(or (not (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (= (mod main_~p~0 2) 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))))))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {14462#true} is VALID [2022-04-15 09:26:26,928 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {14462#true} {14796#(or (not (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (= (mod main_~p~0 2) 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))))))} #82#return; {14796#(or (not (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (= (mod main_~p~0 2) 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))))))} is VALID [2022-04-15 09:26:26,928 INFO L290 TraceCheckUtils]: 53: Hoare triple {14462#true} assume true; {14462#true} is VALID [2022-04-15 09:26:26,928 INFO L290 TraceCheckUtils]: 52: Hoare triple {14462#true} assume !(0 == ~cond); {14462#true} is VALID [2022-04-15 09:26:26,928 INFO L290 TraceCheckUtils]: 51: Hoare triple {14462#true} ~cond := #in~cond; {14462#true} is VALID [2022-04-15 09:26:26,928 INFO L272 TraceCheckUtils]: 50: Hoare triple {14796#(or (not (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (= (mod main_~p~0 2) 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))))))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {14462#true} is VALID [2022-04-15 09:26:26,930 INFO L290 TraceCheckUtils]: 49: Hoare triple {14796#(or (not (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (= (mod main_~p~0 2) 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))))))} assume !!(#t~post6 < 5);havoc #t~post6; {14796#(or (not (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (= (mod main_~p~0 2) 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))))))} is VALID [2022-04-15 09:26:26,931 INFO L290 TraceCheckUtils]: 48: Hoare triple {14796#(or (not (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (= (mod main_~p~0 2) 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14796#(or (not (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (= (mod main_~p~0 2) 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))))))} is VALID [2022-04-15 09:26:26,935 INFO L290 TraceCheckUtils]: 47: Hoare triple {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {14796#(or (not (= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))) (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0)) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))) (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0)))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (= (mod main_~p~0 2) 0)) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (or (= (mod main_~p~0 2) 0) (= (+ (mod main_~A~0 4294967296) (div main_~d~0 2) (* (- 1) main_~r~0) 1) (* (+ main_~q~0 (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))))))} is VALID [2022-04-15 09:26:26,935 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {14462#true} {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} #86#return; {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:26:26,936 INFO L290 TraceCheckUtils]: 45: Hoare triple {14462#true} assume true; {14462#true} is VALID [2022-04-15 09:26:26,936 INFO L290 TraceCheckUtils]: 44: Hoare triple {14462#true} assume !(0 == ~cond); {14462#true} is VALID [2022-04-15 09:26:26,936 INFO L290 TraceCheckUtils]: 43: Hoare triple {14462#true} ~cond := #in~cond; {14462#true} is VALID [2022-04-15 09:26:26,936 INFO L272 TraceCheckUtils]: 42: Hoare triple {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {14462#true} is VALID [2022-04-15 09:26:26,936 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {14462#true} {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} #84#return; {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:26:26,936 INFO L290 TraceCheckUtils]: 40: Hoare triple {14462#true} assume true; {14462#true} is VALID [2022-04-15 09:26:26,936 INFO L290 TraceCheckUtils]: 39: Hoare triple {14462#true} assume !(0 == ~cond); {14462#true} is VALID [2022-04-15 09:26:26,936 INFO L290 TraceCheckUtils]: 38: Hoare triple {14462#true} ~cond := #in~cond; {14462#true} is VALID [2022-04-15 09:26:26,936 INFO L272 TraceCheckUtils]: 37: Hoare triple {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {14462#true} is VALID [2022-04-15 09:26:26,937 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {14462#true} {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} #82#return; {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:26:26,937 INFO L290 TraceCheckUtils]: 35: Hoare triple {14462#true} assume true; {14462#true} is VALID [2022-04-15 09:26:26,937 INFO L290 TraceCheckUtils]: 34: Hoare triple {14462#true} assume !(0 == ~cond); {14462#true} is VALID [2022-04-15 09:26:26,937 INFO L290 TraceCheckUtils]: 33: Hoare triple {14462#true} ~cond := #in~cond; {14462#true} is VALID [2022-04-15 09:26:26,937 INFO L272 TraceCheckUtils]: 32: Hoare triple {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {14462#true} is VALID [2022-04-15 09:26:26,937 INFO L290 TraceCheckUtils]: 31: Hoare triple {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} assume !!(#t~post6 < 5);havoc #t~post6; {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:26:26,938 INFO L290 TraceCheckUtils]: 30: Hoare triple {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:26:26,938 INFO L290 TraceCheckUtils]: 29: Hoare triple {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:26:26,938 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {14462#true} {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} #86#return; {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:26:26,938 INFO L290 TraceCheckUtils]: 27: Hoare triple {14462#true} assume true; {14462#true} is VALID [2022-04-15 09:26:26,938 INFO L290 TraceCheckUtils]: 26: Hoare triple {14462#true} assume !(0 == ~cond); {14462#true} is VALID [2022-04-15 09:26:26,939 INFO L290 TraceCheckUtils]: 25: Hoare triple {14462#true} ~cond := #in~cond; {14462#true} is VALID [2022-04-15 09:26:26,939 INFO L272 TraceCheckUtils]: 24: Hoare triple {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {14462#true} is VALID [2022-04-15 09:26:26,939 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {14462#true} {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} #84#return; {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:26:26,939 INFO L290 TraceCheckUtils]: 22: Hoare triple {14462#true} assume true; {14462#true} is VALID [2022-04-15 09:26:26,939 INFO L290 TraceCheckUtils]: 21: Hoare triple {14462#true} assume !(0 == ~cond); {14462#true} is VALID [2022-04-15 09:26:26,939 INFO L290 TraceCheckUtils]: 20: Hoare triple {14462#true} ~cond := #in~cond; {14462#true} is VALID [2022-04-15 09:26:26,939 INFO L272 TraceCheckUtils]: 19: Hoare triple {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {14462#true} is VALID [2022-04-15 09:26:26,940 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {14462#true} {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} #82#return; {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:26:26,940 INFO L290 TraceCheckUtils]: 17: Hoare triple {14462#true} assume true; {14462#true} is VALID [2022-04-15 09:26:26,940 INFO L290 TraceCheckUtils]: 16: Hoare triple {14462#true} assume !(0 == ~cond); {14462#true} is VALID [2022-04-15 09:26:26,940 INFO L290 TraceCheckUtils]: 15: Hoare triple {14462#true} ~cond := #in~cond; {14462#true} is VALID [2022-04-15 09:26:26,940 INFO L272 TraceCheckUtils]: 14: Hoare triple {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {14462#true} is VALID [2022-04-15 09:26:26,940 INFO L290 TraceCheckUtils]: 13: Hoare triple {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} assume !!(#t~post6 < 5);havoc #t~post6; {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:26:26,940 INFO L290 TraceCheckUtils]: 12: Hoare triple {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:26:26,941 INFO L290 TraceCheckUtils]: 11: Hoare triple {14462#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {14710#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:26:26,941 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14462#true} {14462#true} #80#return; {14462#true} is VALID [2022-04-15 09:26:26,941 INFO L290 TraceCheckUtils]: 9: Hoare triple {14462#true} assume true; {14462#true} is VALID [2022-04-15 09:26:26,941 INFO L290 TraceCheckUtils]: 8: Hoare triple {14462#true} assume !(0 == ~cond); {14462#true} is VALID [2022-04-15 09:26:26,941 INFO L290 TraceCheckUtils]: 7: Hoare triple {14462#true} ~cond := #in~cond; {14462#true} is VALID [2022-04-15 09:26:26,941 INFO L272 TraceCheckUtils]: 6: Hoare triple {14462#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {14462#true} is VALID [2022-04-15 09:26:26,941 INFO L290 TraceCheckUtils]: 5: Hoare triple {14462#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {14462#true} is VALID [2022-04-15 09:26:26,941 INFO L272 TraceCheckUtils]: 4: Hoare triple {14462#true} call #t~ret8 := main(); {14462#true} is VALID [2022-04-15 09:26:26,941 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14462#true} {14462#true} #96#return; {14462#true} is VALID [2022-04-15 09:26:26,941 INFO L290 TraceCheckUtils]: 2: Hoare triple {14462#true} assume true; {14462#true} is VALID [2022-04-15 09:26:26,941 INFO L290 TraceCheckUtils]: 1: Hoare triple {14462#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);~counter~0 := 0; {14462#true} is VALID [2022-04-15 09:26:26,942 INFO L272 TraceCheckUtils]: 0: Hoare triple {14462#true} call ULTIMATE.init(); {14462#true} is VALID [2022-04-15 09:26:26,942 INFO L134 CoverageAnalysis]: Checked inductivity of 263 backedges. 45 proven. 22 refuted. 0 times theorem prover too weak. 196 trivial. 0 not checked. [2022-04-15 09:26:26,942 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:26:26,942 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [736159420] [2022-04-15 09:26:26,942 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:26:26,942 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2079864634] [2022-04-15 09:26:26,942 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2079864634] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:26:26,942 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:26:26,942 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 10] total 15 [2022-04-15 09:26:26,943 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:26:26,943 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [702398316] [2022-04-15 09:26:26,943 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [702398316] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:26:26,943 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:26:26,943 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-15 09:26:26,943 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [69037262] [2022-04-15 09:26:26,943 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:26:26,943 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 10 states have internal predecessors, (29), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 86 [2022-04-15 09:26:26,943 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:26:26,944 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 10 states have internal predecessors, (29), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 09:26:27,006 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 51 edges. 51 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:26:27,006 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-15 09:26:27,006 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:26:27,006 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-15 09:26:27,007 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=46, Invalid=162, Unknown=2, NotChecked=0, Total=210 [2022-04-15 09:26:27,007 INFO L87 Difference]: Start difference. First operand 161 states and 186 transitions. Second operand has 11 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 10 states have internal predecessors, (29), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 09:26:33,550 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.49s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 09:26:36,341 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-15 09:26:37,009 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:26:37,009 INFO L93 Difference]: Finished difference Result 200 states and 235 transitions. [2022-04-15 09:26:37,010 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-15 09:26:37,010 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 10 states have internal predecessors, (29), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) Word has length 86 [2022-04-15 09:26:37,010 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:26:37,010 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 10 states have internal predecessors, (29), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 09:26:37,011 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 109 transitions. [2022-04-15 09:26:37,012 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 10 states have internal predecessors, (29), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 09:26:37,013 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 109 transitions. [2022-04-15 09:26:37,013 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 109 transitions. [2022-04-15 09:26:37,168 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 109 edges. 109 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:26:37,171 INFO L225 Difference]: With dead ends: 200 [2022-04-15 09:26:37,171 INFO L226 Difference]: Without dead ends: 180 [2022-04-15 09:26:37,171 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 173 GetRequests, 155 SyntacticMatches, 3 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 76 ImplicationChecksByTransitivity, 32.1s TimeCoverageRelationStatistics Valid=59, Invalid=210, Unknown=3, NotChecked=0, Total=272 [2022-04-15 09:26:37,172 INFO L913 BasicCegarLoop]: 38 mSDtfsCounter, 40 mSDsluCounter, 153 mSDsCounter, 0 mSdLazyCounter, 280 mSolverCounterSat, 37 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 4.5s Time, 0 mProtectedPredicate, 0 mProtectedAction, 54 SdHoareTripleChecker+Valid, 191 SdHoareTripleChecker+Invalid, 318 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 37 IncrementalHoareTripleChecker+Valid, 280 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 4.5s IncrementalHoareTripleChecker+Time [2022-04-15 09:26:37,172 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [54 Valid, 191 Invalid, 318 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [37 Valid, 280 Invalid, 1 Unknown, 0 Unchecked, 4.5s Time] [2022-04-15 09:26:37,172 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 180 states. [2022-04-15 09:26:37,326 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 180 to 173. [2022-04-15 09:26:37,326 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:26:37,326 INFO L82 GeneralOperation]: Start isEquivalent. First operand 180 states. Second operand has 173 states, 114 states have (on average 1.1666666666666667) internal successors, (133), 120 states have internal predecessors, (133), 36 states have call successors, (36), 23 states have call predecessors, (36), 22 states have return successors, (34), 29 states have call predecessors, (34), 34 states have call successors, (34) [2022-04-15 09:26:37,327 INFO L74 IsIncluded]: Start isIncluded. First operand 180 states. Second operand has 173 states, 114 states have (on average 1.1666666666666667) internal successors, (133), 120 states have internal predecessors, (133), 36 states have call successors, (36), 23 states have call predecessors, (36), 22 states have return successors, (34), 29 states have call predecessors, (34), 34 states have call successors, (34) [2022-04-15 09:26:37,327 INFO L87 Difference]: Start difference. First operand 180 states. Second operand has 173 states, 114 states have (on average 1.1666666666666667) internal successors, (133), 120 states have internal predecessors, (133), 36 states have call successors, (36), 23 states have call predecessors, (36), 22 states have return successors, (34), 29 states have call predecessors, (34), 34 states have call successors, (34) [2022-04-15 09:26:37,330 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:26:37,330 INFO L93 Difference]: Finished difference Result 180 states and 213 transitions. [2022-04-15 09:26:37,330 INFO L276 IsEmpty]: Start isEmpty. Operand 180 states and 213 transitions. [2022-04-15 09:26:37,331 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:26:37,331 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:26:37,331 INFO L74 IsIncluded]: Start isIncluded. First operand has 173 states, 114 states have (on average 1.1666666666666667) internal successors, (133), 120 states have internal predecessors, (133), 36 states have call successors, (36), 23 states have call predecessors, (36), 22 states have return successors, (34), 29 states have call predecessors, (34), 34 states have call successors, (34) Second operand 180 states. [2022-04-15 09:26:37,331 INFO L87 Difference]: Start difference. First operand has 173 states, 114 states have (on average 1.1666666666666667) internal successors, (133), 120 states have internal predecessors, (133), 36 states have call successors, (36), 23 states have call predecessors, (36), 22 states have return successors, (34), 29 states have call predecessors, (34), 34 states have call successors, (34) Second operand 180 states. [2022-04-15 09:26:37,335 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:26:37,335 INFO L93 Difference]: Finished difference Result 180 states and 213 transitions. [2022-04-15 09:26:37,335 INFO L276 IsEmpty]: Start isEmpty. Operand 180 states and 213 transitions. [2022-04-15 09:26:37,336 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:26:37,336 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:26:37,336 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:26:37,336 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:26:37,336 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 173 states, 114 states have (on average 1.1666666666666667) internal successors, (133), 120 states have internal predecessors, (133), 36 states have call successors, (36), 23 states have call predecessors, (36), 22 states have return successors, (34), 29 states have call predecessors, (34), 34 states have call successors, (34) [2022-04-15 09:26:37,339 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 173 states to 173 states and 203 transitions. [2022-04-15 09:26:37,340 INFO L78 Accepts]: Start accepts. Automaton has 173 states and 203 transitions. Word has length 86 [2022-04-15 09:26:37,340 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:26:37,340 INFO L478 AbstractCegarLoop]: Abstraction has 173 states and 203 transitions. [2022-04-15 09:26:37,340 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 2.6363636363636362) internal successors, (29), 10 states have internal predecessors, (29), 5 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (10), 4 states have call predecessors, (10), 4 states have call successors, (10) [2022-04-15 09:26:37,340 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 173 states and 203 transitions. [2022-04-15 09:26:39,651 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 203 edges. 202 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 09:26:39,651 INFO L276 IsEmpty]: Start isEmpty. Operand 173 states and 203 transitions. [2022-04-15 09:26:39,663 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-04-15 09:26:39,663 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:26:39,664 INFO L499 BasicCegarLoop]: trace histogram [13, 12, 12, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:26:39,684 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 09:26:39,879 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 09:26:39,879 INFO L403 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:26:39,879 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:26:39,879 INFO L85 PathProgramCache]: Analyzing trace with hash -1271087930, now seen corresponding path program 7 times [2022-04-15 09:26:39,879 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:26:39,880 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1431994555] [2022-04-15 09:26:46,916 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:26:46,916 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:26:46,916 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:26:46,916 INFO L85 PathProgramCache]: Analyzing trace with hash -1271087930, now seen corresponding path program 8 times [2022-04-15 09:26:46,916 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:26:46,916 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1070610143] [2022-04-15 09:26:46,917 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:26:46,917 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:26:46,925 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:26:46,925 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2142904409] [2022-04-15 09:26:46,925 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 09:26:46,925 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:26:46,925 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:26:46,926 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 09:26:46,951 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 09:26:46,977 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 09:26:46,978 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:26:46,979 INFO L263 TraceCheckSpWp]: Trace formula consists of 231 conjuncts, 26 conjunts are in the unsatisfiable core [2022-04-15 09:26:46,995 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:26:46,996 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:26:48,677 INFO L272 TraceCheckUtils]: 0: Hoare triple {16102#true} call ULTIMATE.init(); {16102#true} is VALID [2022-04-15 09:26:48,678 INFO L290 TraceCheckUtils]: 1: Hoare triple {16102#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);~counter~0 := 0; {16102#true} is VALID [2022-04-15 09:26:48,678 INFO L290 TraceCheckUtils]: 2: Hoare triple {16102#true} assume true; {16102#true} is VALID [2022-04-15 09:26:48,678 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16102#true} {16102#true} #96#return; {16102#true} is VALID [2022-04-15 09:26:48,678 INFO L272 TraceCheckUtils]: 4: Hoare triple {16102#true} call #t~ret8 := main(); {16102#true} is VALID [2022-04-15 09:26:48,678 INFO L290 TraceCheckUtils]: 5: Hoare triple {16102#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {16102#true} is VALID [2022-04-15 09:26:48,678 INFO L272 TraceCheckUtils]: 6: Hoare triple {16102#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {16102#true} is VALID [2022-04-15 09:26:48,678 INFO L290 TraceCheckUtils]: 7: Hoare triple {16102#true} ~cond := #in~cond; {16128#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 09:26:48,678 INFO L290 TraceCheckUtils]: 8: Hoare triple {16128#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {16132#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 09:26:48,679 INFO L290 TraceCheckUtils]: 9: Hoare triple {16132#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {16132#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 09:26:48,679 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16132#(not (= |assume_abort_if_not_#in~cond| 0))} {16102#true} #80#return; {16139#(<= 1 (mod main_~B~0 4294967296))} is VALID [2022-04-15 09:26:48,680 INFO L290 TraceCheckUtils]: 11: Hoare triple {16139#(<= 1 (mod main_~B~0 4294967296))} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {16143#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:26:48,680 INFO L290 TraceCheckUtils]: 12: Hoare triple {16143#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16143#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:26:48,681 INFO L290 TraceCheckUtils]: 13: Hoare triple {16143#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} assume !!(#t~post6 < 5);havoc #t~post6; {16143#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:26:48,681 INFO L272 TraceCheckUtils]: 14: Hoare triple {16143#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {16102#true} is VALID [2022-04-15 09:26:48,681 INFO L290 TraceCheckUtils]: 15: Hoare triple {16102#true} ~cond := #in~cond; {16102#true} is VALID [2022-04-15 09:26:48,681 INFO L290 TraceCheckUtils]: 16: Hoare triple {16102#true} assume !(0 == ~cond); {16102#true} is VALID [2022-04-15 09:26:48,681 INFO L290 TraceCheckUtils]: 17: Hoare triple {16102#true} assume true; {16102#true} is VALID [2022-04-15 09:26:48,682 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {16102#true} {16143#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #82#return; {16143#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:26:48,682 INFO L272 TraceCheckUtils]: 19: Hoare triple {16143#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {16102#true} is VALID [2022-04-15 09:26:48,682 INFO L290 TraceCheckUtils]: 20: Hoare triple {16102#true} ~cond := #in~cond; {16102#true} is VALID [2022-04-15 09:26:48,682 INFO L290 TraceCheckUtils]: 21: Hoare triple {16102#true} assume !(0 == ~cond); {16102#true} is VALID [2022-04-15 09:26:48,682 INFO L290 TraceCheckUtils]: 22: Hoare triple {16102#true} assume true; {16102#true} is VALID [2022-04-15 09:26:48,682 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {16102#true} {16143#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #84#return; {16143#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:26:48,682 INFO L272 TraceCheckUtils]: 24: Hoare triple {16143#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {16102#true} is VALID [2022-04-15 09:26:48,682 INFO L290 TraceCheckUtils]: 25: Hoare triple {16102#true} ~cond := #in~cond; {16102#true} is VALID [2022-04-15 09:26:48,682 INFO L290 TraceCheckUtils]: 26: Hoare triple {16102#true} assume !(0 == ~cond); {16102#true} is VALID [2022-04-15 09:26:48,682 INFO L290 TraceCheckUtils]: 27: Hoare triple {16102#true} assume true; {16102#true} is VALID [2022-04-15 09:26:48,683 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {16102#true} {16143#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #86#return; {16143#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:26:48,684 INFO L290 TraceCheckUtils]: 29: Hoare triple {16143#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {16198#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:26:48,685 INFO L290 TraceCheckUtils]: 30: Hoare triple {16198#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16198#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:26:48,685 INFO L290 TraceCheckUtils]: 31: Hoare triple {16198#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} assume !!(#t~post6 < 5);havoc #t~post6; {16198#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:26:48,685 INFO L272 TraceCheckUtils]: 32: Hoare triple {16198#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {16102#true} is VALID [2022-04-15 09:26:48,685 INFO L290 TraceCheckUtils]: 33: Hoare triple {16102#true} ~cond := #in~cond; {16102#true} is VALID [2022-04-15 09:26:48,685 INFO L290 TraceCheckUtils]: 34: Hoare triple {16102#true} assume !(0 == ~cond); {16102#true} is VALID [2022-04-15 09:26:48,685 INFO L290 TraceCheckUtils]: 35: Hoare triple {16102#true} assume true; {16102#true} is VALID [2022-04-15 09:26:48,686 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {16102#true} {16198#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} #82#return; {16198#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:26:48,686 INFO L272 TraceCheckUtils]: 37: Hoare triple {16198#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {16102#true} is VALID [2022-04-15 09:26:48,686 INFO L290 TraceCheckUtils]: 38: Hoare triple {16102#true} ~cond := #in~cond; {16102#true} is VALID [2022-04-15 09:26:48,686 INFO L290 TraceCheckUtils]: 39: Hoare triple {16102#true} assume !(0 == ~cond); {16102#true} is VALID [2022-04-15 09:26:48,686 INFO L290 TraceCheckUtils]: 40: Hoare triple {16102#true} assume true; {16102#true} is VALID [2022-04-15 09:26:48,686 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {16102#true} {16198#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} #84#return; {16198#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:26:48,686 INFO L272 TraceCheckUtils]: 42: Hoare triple {16198#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {16102#true} is VALID [2022-04-15 09:26:48,687 INFO L290 TraceCheckUtils]: 43: Hoare triple {16102#true} ~cond := #in~cond; {16102#true} is VALID [2022-04-15 09:26:48,687 INFO L290 TraceCheckUtils]: 44: Hoare triple {16102#true} assume !(0 == ~cond); {16102#true} is VALID [2022-04-15 09:26:48,687 INFO L290 TraceCheckUtils]: 45: Hoare triple {16102#true} assume true; {16102#true} is VALID [2022-04-15 09:26:48,687 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {16102#true} {16198#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} #86#return; {16198#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:26:48,688 INFO L290 TraceCheckUtils]: 47: Hoare triple {16198#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {16253#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} is VALID [2022-04-15 09:26:48,691 INFO L290 TraceCheckUtils]: 48: Hoare triple {16253#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16253#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} is VALID [2022-04-15 09:26:48,692 INFO L290 TraceCheckUtils]: 49: Hoare triple {16253#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} assume !!(#t~post6 < 5);havoc #t~post6; {16253#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} is VALID [2022-04-15 09:26:48,692 INFO L272 TraceCheckUtils]: 50: Hoare triple {16253#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {16102#true} is VALID [2022-04-15 09:26:48,692 INFO L290 TraceCheckUtils]: 51: Hoare triple {16102#true} ~cond := #in~cond; {16102#true} is VALID [2022-04-15 09:26:48,692 INFO L290 TraceCheckUtils]: 52: Hoare triple {16102#true} assume !(0 == ~cond); {16102#true} is VALID [2022-04-15 09:26:48,692 INFO L290 TraceCheckUtils]: 53: Hoare triple {16102#true} assume true; {16102#true} is VALID [2022-04-15 09:26:48,698 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {16102#true} {16253#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} #82#return; {16253#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} is VALID [2022-04-15 09:26:48,698 INFO L272 TraceCheckUtils]: 55: Hoare triple {16253#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {16102#true} is VALID [2022-04-15 09:26:48,698 INFO L290 TraceCheckUtils]: 56: Hoare triple {16102#true} ~cond := #in~cond; {16102#true} is VALID [2022-04-15 09:26:48,698 INFO L290 TraceCheckUtils]: 57: Hoare triple {16102#true} assume !(0 == ~cond); {16102#true} is VALID [2022-04-15 09:26:48,698 INFO L290 TraceCheckUtils]: 58: Hoare triple {16102#true} assume true; {16102#true} is VALID [2022-04-15 09:26:48,699 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {16102#true} {16253#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} #84#return; {16253#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} is VALID [2022-04-15 09:26:48,699 INFO L272 TraceCheckUtils]: 60: Hoare triple {16253#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {16102#true} is VALID [2022-04-15 09:26:48,699 INFO L290 TraceCheckUtils]: 61: Hoare triple {16102#true} ~cond := #in~cond; {16102#true} is VALID [2022-04-15 09:26:48,699 INFO L290 TraceCheckUtils]: 62: Hoare triple {16102#true} assume !(0 == ~cond); {16102#true} is VALID [2022-04-15 09:26:48,699 INFO L290 TraceCheckUtils]: 63: Hoare triple {16102#true} assume true; {16102#true} is VALID [2022-04-15 09:26:48,699 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {16102#true} {16253#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} #86#return; {16253#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} is VALID [2022-04-15 09:26:48,700 INFO L290 TraceCheckUtils]: 65: Hoare triple {16253#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} assume !(~r~0 >= ~d~0); {16308#(and (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} is VALID [2022-04-15 09:26:48,700 INFO L290 TraceCheckUtils]: 66: Hoare triple {16308#(and (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16308#(and (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} is VALID [2022-04-15 09:26:48,701 INFO L290 TraceCheckUtils]: 67: Hoare triple {16308#(and (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} assume !!(#t~post7 < 5);havoc #t~post7; {16308#(and (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} is VALID [2022-04-15 09:26:48,701 INFO L272 TraceCheckUtils]: 68: Hoare triple {16308#(and (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {16102#true} is VALID [2022-04-15 09:26:48,701 INFO L290 TraceCheckUtils]: 69: Hoare triple {16102#true} ~cond := #in~cond; {16102#true} is VALID [2022-04-15 09:26:48,701 INFO L290 TraceCheckUtils]: 70: Hoare triple {16102#true} assume !(0 == ~cond); {16102#true} is VALID [2022-04-15 09:26:48,701 INFO L290 TraceCheckUtils]: 71: Hoare triple {16102#true} assume true; {16102#true} is VALID [2022-04-15 09:26:48,701 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {16102#true} {16308#(and (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} #88#return; {16308#(and (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} is VALID [2022-04-15 09:26:48,701 INFO L272 TraceCheckUtils]: 73: Hoare triple {16308#(and (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {16102#true} is VALID [2022-04-15 09:26:48,702 INFO L290 TraceCheckUtils]: 74: Hoare triple {16102#true} ~cond := #in~cond; {16102#true} is VALID [2022-04-15 09:26:48,702 INFO L290 TraceCheckUtils]: 75: Hoare triple {16102#true} assume !(0 == ~cond); {16102#true} is VALID [2022-04-15 09:26:48,702 INFO L290 TraceCheckUtils]: 76: Hoare triple {16102#true} assume true; {16102#true} is VALID [2022-04-15 09:26:48,702 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {16102#true} {16308#(and (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} #90#return; {16308#(and (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} is VALID [2022-04-15 09:26:48,704 INFO L290 TraceCheckUtils]: 78: Hoare triple {16308#(and (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {16198#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:26:48,704 INFO L290 TraceCheckUtils]: 79: Hoare triple {16198#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {16198#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:26:48,704 INFO L290 TraceCheckUtils]: 80: Hoare triple {16198#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16198#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:26:48,705 INFO L290 TraceCheckUtils]: 81: Hoare triple {16198#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} assume !!(#t~post7 < 5);havoc #t~post7; {16198#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:26:48,705 INFO L272 TraceCheckUtils]: 82: Hoare triple {16198#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {16102#true} is VALID [2022-04-15 09:26:48,705 INFO L290 TraceCheckUtils]: 83: Hoare triple {16102#true} ~cond := #in~cond; {16102#true} is VALID [2022-04-15 09:26:48,705 INFO L290 TraceCheckUtils]: 84: Hoare triple {16102#true} assume !(0 == ~cond); {16102#true} is VALID [2022-04-15 09:26:48,705 INFO L290 TraceCheckUtils]: 85: Hoare triple {16102#true} assume true; {16102#true} is VALID [2022-04-15 09:26:48,705 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {16102#true} {16198#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} #88#return; {16198#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:26:48,706 INFO L272 TraceCheckUtils]: 87: Hoare triple {16198#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {16375#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:26:48,706 INFO L290 TraceCheckUtils]: 88: Hoare triple {16375#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {16379#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:26:48,707 INFO L290 TraceCheckUtils]: 89: Hoare triple {16379#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {16103#false} is VALID [2022-04-15 09:26:48,707 INFO L290 TraceCheckUtils]: 90: Hoare triple {16103#false} assume !false; {16103#false} is VALID [2022-04-15 09:26:48,707 INFO L134 CoverageAnalysis]: Checked inductivity of 310 backedges. 24 proven. 22 refuted. 0 times theorem prover too weak. 264 trivial. 0 not checked. [2022-04-15 09:26:48,707 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:26:56,858 INFO L290 TraceCheckUtils]: 90: Hoare triple {16103#false} assume !false; {16103#false} is VALID [2022-04-15 09:26:56,859 INFO L290 TraceCheckUtils]: 89: Hoare triple {16379#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {16103#false} is VALID [2022-04-15 09:26:56,859 INFO L290 TraceCheckUtils]: 88: Hoare triple {16375#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {16379#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:26:56,860 INFO L272 TraceCheckUtils]: 87: Hoare triple {16395#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {16375#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:26:56,860 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {16102#true} {16395#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} #88#return; {16395#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:26:56,860 INFO L290 TraceCheckUtils]: 85: Hoare triple {16102#true} assume true; {16102#true} is VALID [2022-04-15 09:26:56,860 INFO L290 TraceCheckUtils]: 84: Hoare triple {16102#true} assume !(0 == ~cond); {16102#true} is VALID [2022-04-15 09:26:56,860 INFO L290 TraceCheckUtils]: 83: Hoare triple {16102#true} ~cond := #in~cond; {16102#true} is VALID [2022-04-15 09:26:56,860 INFO L272 TraceCheckUtils]: 82: Hoare triple {16395#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {16102#true} is VALID [2022-04-15 09:26:56,861 INFO L290 TraceCheckUtils]: 81: Hoare triple {16395#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} assume !!(#t~post7 < 5);havoc #t~post7; {16395#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:26:56,861 INFO L290 TraceCheckUtils]: 80: Hoare triple {16395#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16395#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:26:56,861 INFO L290 TraceCheckUtils]: 79: Hoare triple {16395#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {16395#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:26:56,881 INFO L290 TraceCheckUtils]: 78: Hoare triple {16423#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {16395#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-15 09:26:56,882 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {16102#true} {16423#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} #90#return; {16423#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:26:56,882 INFO L290 TraceCheckUtils]: 76: Hoare triple {16102#true} assume true; {16102#true} is VALID [2022-04-15 09:26:56,882 INFO L290 TraceCheckUtils]: 75: Hoare triple {16102#true} assume !(0 == ~cond); {16102#true} is VALID [2022-04-15 09:26:56,882 INFO L290 TraceCheckUtils]: 74: Hoare triple {16102#true} ~cond := #in~cond; {16102#true} is VALID [2022-04-15 09:26:56,882 INFO L272 TraceCheckUtils]: 73: Hoare triple {16423#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {16102#true} is VALID [2022-04-15 09:26:56,882 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {16102#true} {16423#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} #88#return; {16423#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:26:56,882 INFO L290 TraceCheckUtils]: 71: Hoare triple {16102#true} assume true; {16102#true} is VALID [2022-04-15 09:26:56,883 INFO L290 TraceCheckUtils]: 70: Hoare triple {16102#true} assume !(0 == ~cond); {16102#true} is VALID [2022-04-15 09:26:56,883 INFO L290 TraceCheckUtils]: 69: Hoare triple {16102#true} ~cond := #in~cond; {16102#true} is VALID [2022-04-15 09:26:56,883 INFO L272 TraceCheckUtils]: 68: Hoare triple {16423#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {16102#true} is VALID [2022-04-15 09:26:56,884 INFO L290 TraceCheckUtils]: 67: Hoare triple {16423#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} assume !!(#t~post7 < 5);havoc #t~post7; {16423#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:26:56,885 INFO L290 TraceCheckUtils]: 66: Hoare triple {16423#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16423#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:26:56,886 INFO L290 TraceCheckUtils]: 65: Hoare triple {16463#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} assume !(~r~0 >= ~d~0); {16423#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0)))))} is VALID [2022-04-15 09:26:56,886 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {16102#true} {16463#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} #86#return; {16463#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} is VALID [2022-04-15 09:26:56,886 INFO L290 TraceCheckUtils]: 63: Hoare triple {16102#true} assume true; {16102#true} is VALID [2022-04-15 09:26:56,886 INFO L290 TraceCheckUtils]: 62: Hoare triple {16102#true} assume !(0 == ~cond); {16102#true} is VALID [2022-04-15 09:26:56,886 INFO L290 TraceCheckUtils]: 61: Hoare triple {16102#true} ~cond := #in~cond; {16102#true} is VALID [2022-04-15 09:26:56,886 INFO L272 TraceCheckUtils]: 60: Hoare triple {16463#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {16102#true} is VALID [2022-04-15 09:26:56,887 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {16102#true} {16463#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} #84#return; {16463#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} is VALID [2022-04-15 09:26:56,887 INFO L290 TraceCheckUtils]: 58: Hoare triple {16102#true} assume true; {16102#true} is VALID [2022-04-15 09:26:56,887 INFO L290 TraceCheckUtils]: 57: Hoare triple {16102#true} assume !(0 == ~cond); {16102#true} is VALID [2022-04-15 09:26:56,887 INFO L290 TraceCheckUtils]: 56: Hoare triple {16102#true} ~cond := #in~cond; {16102#true} is VALID [2022-04-15 09:26:56,887 INFO L272 TraceCheckUtils]: 55: Hoare triple {16463#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {16102#true} is VALID [2022-04-15 09:26:56,887 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {16102#true} {16463#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} #82#return; {16463#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} is VALID [2022-04-15 09:26:56,887 INFO L290 TraceCheckUtils]: 53: Hoare triple {16102#true} assume true; {16102#true} is VALID [2022-04-15 09:26:56,888 INFO L290 TraceCheckUtils]: 52: Hoare triple {16102#true} assume !(0 == ~cond); {16102#true} is VALID [2022-04-15 09:26:56,888 INFO L290 TraceCheckUtils]: 51: Hoare triple {16102#true} ~cond := #in~cond; {16102#true} is VALID [2022-04-15 09:26:56,888 INFO L272 TraceCheckUtils]: 50: Hoare triple {16463#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {16102#true} is VALID [2022-04-15 09:26:56,889 INFO L290 TraceCheckUtils]: 49: Hoare triple {16463#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} assume !!(#t~post6 < 5);havoc #t~post6; {16463#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} is VALID [2022-04-15 09:26:56,890 INFO L290 TraceCheckUtils]: 48: Hoare triple {16463#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16463#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} is VALID [2022-04-15 09:26:56,894 INFO L290 TraceCheckUtils]: 47: Hoare triple {16518#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {16463#(or (<= main_~d~0 main_~r~0) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (+ (div main_~d~0 2) 1)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (+ (div main_~d~0 2) 1)) (= (mod main_~p~0 2) 0)))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (* (mod main_~B~0 4294967296) (div main_~p~0 2)) (div main_~d~0 2))) (or (not (< main_~p~0 0)) (= (* (+ (div main_~p~0 2) 1) (mod main_~B~0 4294967296)) (div main_~d~0 2)) (= (mod main_~p~0 2) 0))))))} is VALID [2022-04-15 09:26:56,894 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {16102#true} {16518#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #86#return; {16518#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:26:56,895 INFO L290 TraceCheckUtils]: 45: Hoare triple {16102#true} assume true; {16102#true} is VALID [2022-04-15 09:26:56,895 INFO L290 TraceCheckUtils]: 44: Hoare triple {16102#true} assume !(0 == ~cond); {16102#true} is VALID [2022-04-15 09:26:56,895 INFO L290 TraceCheckUtils]: 43: Hoare triple {16102#true} ~cond := #in~cond; {16102#true} is VALID [2022-04-15 09:26:56,895 INFO L272 TraceCheckUtils]: 42: Hoare triple {16518#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {16102#true} is VALID [2022-04-15 09:26:56,895 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {16102#true} {16518#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #84#return; {16518#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:26:56,895 INFO L290 TraceCheckUtils]: 40: Hoare triple {16102#true} assume true; {16102#true} is VALID [2022-04-15 09:26:56,895 INFO L290 TraceCheckUtils]: 39: Hoare triple {16102#true} assume !(0 == ~cond); {16102#true} is VALID [2022-04-15 09:26:56,895 INFO L290 TraceCheckUtils]: 38: Hoare triple {16102#true} ~cond := #in~cond; {16102#true} is VALID [2022-04-15 09:26:56,895 INFO L272 TraceCheckUtils]: 37: Hoare triple {16518#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {16102#true} is VALID [2022-04-15 09:26:56,896 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {16102#true} {16518#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #82#return; {16518#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:26:56,896 INFO L290 TraceCheckUtils]: 35: Hoare triple {16102#true} assume true; {16102#true} is VALID [2022-04-15 09:26:56,896 INFO L290 TraceCheckUtils]: 34: Hoare triple {16102#true} assume !(0 == ~cond); {16102#true} is VALID [2022-04-15 09:26:56,896 INFO L290 TraceCheckUtils]: 33: Hoare triple {16102#true} ~cond := #in~cond; {16102#true} is VALID [2022-04-15 09:26:56,896 INFO L272 TraceCheckUtils]: 32: Hoare triple {16518#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {16102#true} is VALID [2022-04-15 09:26:56,897 INFO L290 TraceCheckUtils]: 31: Hoare triple {16518#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} assume !!(#t~post6 < 5);havoc #t~post6; {16518#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:26:56,897 INFO L290 TraceCheckUtils]: 30: Hoare triple {16518#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16518#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:26:56,899 INFO L290 TraceCheckUtils]: 29: Hoare triple {16518#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {16518#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:26:56,899 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {16102#true} {16518#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #86#return; {16518#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:26:56,899 INFO L290 TraceCheckUtils]: 27: Hoare triple {16102#true} assume true; {16102#true} is VALID [2022-04-15 09:26:56,899 INFO L290 TraceCheckUtils]: 26: Hoare triple {16102#true} assume !(0 == ~cond); {16102#true} is VALID [2022-04-15 09:26:56,899 INFO L290 TraceCheckUtils]: 25: Hoare triple {16102#true} ~cond := #in~cond; {16102#true} is VALID [2022-04-15 09:26:56,899 INFO L272 TraceCheckUtils]: 24: Hoare triple {16518#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {16102#true} is VALID [2022-04-15 09:26:56,900 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {16102#true} {16518#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #84#return; {16518#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:26:56,900 INFO L290 TraceCheckUtils]: 22: Hoare triple {16102#true} assume true; {16102#true} is VALID [2022-04-15 09:26:56,900 INFO L290 TraceCheckUtils]: 21: Hoare triple {16102#true} assume !(0 == ~cond); {16102#true} is VALID [2022-04-15 09:26:56,900 INFO L290 TraceCheckUtils]: 20: Hoare triple {16102#true} ~cond := #in~cond; {16102#true} is VALID [2022-04-15 09:26:56,900 INFO L272 TraceCheckUtils]: 19: Hoare triple {16518#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {16102#true} is VALID [2022-04-15 09:26:56,901 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {16102#true} {16518#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #82#return; {16518#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:26:56,901 INFO L290 TraceCheckUtils]: 17: Hoare triple {16102#true} assume true; {16102#true} is VALID [2022-04-15 09:26:56,901 INFO L290 TraceCheckUtils]: 16: Hoare triple {16102#true} assume !(0 == ~cond); {16102#true} is VALID [2022-04-15 09:26:56,901 INFO L290 TraceCheckUtils]: 15: Hoare triple {16102#true} ~cond := #in~cond; {16102#true} is VALID [2022-04-15 09:26:56,901 INFO L272 TraceCheckUtils]: 14: Hoare triple {16518#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {16102#true} is VALID [2022-04-15 09:26:56,901 INFO L290 TraceCheckUtils]: 13: Hoare triple {16518#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} assume !!(#t~post6 < 5);havoc #t~post6; {16518#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:26:56,901 INFO L290 TraceCheckUtils]: 12: Hoare triple {16518#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {16518#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:26:56,902 INFO L290 TraceCheckUtils]: 11: Hoare triple {16102#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {16518#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} is VALID [2022-04-15 09:26:56,902 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16102#true} {16102#true} #80#return; {16102#true} is VALID [2022-04-15 09:26:56,902 INFO L290 TraceCheckUtils]: 9: Hoare triple {16102#true} assume true; {16102#true} is VALID [2022-04-15 09:26:56,902 INFO L290 TraceCheckUtils]: 8: Hoare triple {16102#true} assume !(0 == ~cond); {16102#true} is VALID [2022-04-15 09:26:56,902 INFO L290 TraceCheckUtils]: 7: Hoare triple {16102#true} ~cond := #in~cond; {16102#true} is VALID [2022-04-15 09:26:56,902 INFO L272 TraceCheckUtils]: 6: Hoare triple {16102#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {16102#true} is VALID [2022-04-15 09:26:56,902 INFO L290 TraceCheckUtils]: 5: Hoare triple {16102#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {16102#true} is VALID [2022-04-15 09:26:56,902 INFO L272 TraceCheckUtils]: 4: Hoare triple {16102#true} call #t~ret8 := main(); {16102#true} is VALID [2022-04-15 09:26:56,902 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16102#true} {16102#true} #96#return; {16102#true} is VALID [2022-04-15 09:26:56,902 INFO L290 TraceCheckUtils]: 2: Hoare triple {16102#true} assume true; {16102#true} is VALID [2022-04-15 09:26:56,902 INFO L290 TraceCheckUtils]: 1: Hoare triple {16102#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);~counter~0 := 0; {16102#true} is VALID [2022-04-15 09:26:56,902 INFO L272 TraceCheckUtils]: 0: Hoare triple {16102#true} call ULTIMATE.init(); {16102#true} is VALID [2022-04-15 09:26:56,903 INFO L134 CoverageAnalysis]: Checked inductivity of 310 backedges. 24 proven. 16 refuted. 0 times theorem prover too weak. 270 trivial. 0 not checked. [2022-04-15 09:26:56,903 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:26:56,903 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1070610143] [2022-04-15 09:26:56,903 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:26:56,903 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2142904409] [2022-04-15 09:26:56,903 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2142904409] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:26:56,903 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:26:56,903 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 8] total 15 [2022-04-15 09:26:56,904 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:26:56,904 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1431994555] [2022-04-15 09:26:56,904 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1431994555] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:26:56,904 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:26:56,904 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-15 09:26:56,904 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2052098207] [2022-04-15 09:26:56,904 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:26:56,904 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 5 states have call successors, (14) Word has length 91 [2022-04-15 09:26:56,905 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:26:56,905 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-15 09:26:56,971 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 09:26:56,972 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-15 09:26:56,972 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:26:56,972 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-15 09:26:56,972 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=48, Invalid=162, Unknown=0, NotChecked=0, Total=210 [2022-04-15 09:26:56,972 INFO L87 Difference]: Start difference. First operand 173 states and 203 transitions. Second operand has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-15 09:26:59,283 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:26:59,283 INFO L93 Difference]: Finished difference Result 257 states and 325 transitions. [2022-04-15 09:26:59,283 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-15 09:26:59,283 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 5 states have call successors, (14) Word has length 91 [2022-04-15 09:26:59,283 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:26:59,283 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-15 09:26:59,285 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 124 transitions. [2022-04-15 09:26:59,285 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-15 09:26:59,286 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 124 transitions. [2022-04-15 09:26:59,286 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 124 transitions. [2022-04-15 09:26:59,451 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 124 edges. 124 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:26:59,455 INFO L225 Difference]: With dead ends: 257 [2022-04-15 09:26:59,455 INFO L226 Difference]: Without dead ends: 205 [2022-04-15 09:26:59,455 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 183 GetRequests, 165 SyntacticMatches, 3 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 48 ImplicationChecksByTransitivity, 1.4s TimeCoverageRelationStatistics Valid=56, Invalid=216, Unknown=0, NotChecked=0, Total=272 [2022-04-15 09:26:59,456 INFO L913 BasicCegarLoop]: 64 mSDtfsCounter, 42 mSDsluCounter, 295 mSDsCounter, 0 mSdLazyCounter, 312 mSolverCounterSat, 25 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 54 SdHoareTripleChecker+Valid, 359 SdHoareTripleChecker+Invalid, 337 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 25 IncrementalHoareTripleChecker+Valid, 312 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.0s IncrementalHoareTripleChecker+Time [2022-04-15 09:26:59,456 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [54 Valid, 359 Invalid, 337 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [25 Valid, 312 Invalid, 0 Unknown, 0 Unchecked, 1.0s Time] [2022-04-15 09:26:59,456 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 205 states. [2022-04-15 09:26:59,671 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 205 to 205. [2022-04-15 09:26:59,671 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:26:59,672 INFO L82 GeneralOperation]: Start isEquivalent. First operand 205 states. Second operand has 205 states, 134 states have (on average 1.171641791044776) internal successors, (157), 143 states have internal predecessors, (157), 45 states have call successors, (45), 26 states have call predecessors, (45), 25 states have return successors, (41), 35 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-15 09:26:59,672 INFO L74 IsIncluded]: Start isIncluded. First operand 205 states. Second operand has 205 states, 134 states have (on average 1.171641791044776) internal successors, (157), 143 states have internal predecessors, (157), 45 states have call successors, (45), 26 states have call predecessors, (45), 25 states have return successors, (41), 35 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-15 09:26:59,672 INFO L87 Difference]: Start difference. First operand 205 states. Second operand has 205 states, 134 states have (on average 1.171641791044776) internal successors, (157), 143 states have internal predecessors, (157), 45 states have call successors, (45), 26 states have call predecessors, (45), 25 states have return successors, (41), 35 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-15 09:26:59,676 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:26:59,676 INFO L93 Difference]: Finished difference Result 205 states and 243 transitions. [2022-04-15 09:26:59,676 INFO L276 IsEmpty]: Start isEmpty. Operand 205 states and 243 transitions. [2022-04-15 09:26:59,677 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:26:59,677 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:26:59,677 INFO L74 IsIncluded]: Start isIncluded. First operand has 205 states, 134 states have (on average 1.171641791044776) internal successors, (157), 143 states have internal predecessors, (157), 45 states have call successors, (45), 26 states have call predecessors, (45), 25 states have return successors, (41), 35 states have call predecessors, (41), 41 states have call successors, (41) Second operand 205 states. [2022-04-15 09:26:59,678 INFO L87 Difference]: Start difference. First operand has 205 states, 134 states have (on average 1.171641791044776) internal successors, (157), 143 states have internal predecessors, (157), 45 states have call successors, (45), 26 states have call predecessors, (45), 25 states have return successors, (41), 35 states have call predecessors, (41), 41 states have call successors, (41) Second operand 205 states. [2022-04-15 09:26:59,682 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:26:59,682 INFO L93 Difference]: Finished difference Result 205 states and 243 transitions. [2022-04-15 09:26:59,682 INFO L276 IsEmpty]: Start isEmpty. Operand 205 states and 243 transitions. [2022-04-15 09:26:59,682 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:26:59,682 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:26:59,682 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:26:59,682 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:26:59,684 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 205 states, 134 states have (on average 1.171641791044776) internal successors, (157), 143 states have internal predecessors, (157), 45 states have call successors, (45), 26 states have call predecessors, (45), 25 states have return successors, (41), 35 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-15 09:26:59,688 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 205 states to 205 states and 243 transitions. [2022-04-15 09:26:59,688 INFO L78 Accepts]: Start accepts. Automaton has 205 states and 243 transitions. Word has length 91 [2022-04-15 09:26:59,688 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:26:59,689 INFO L478 AbstractCegarLoop]: Abstraction has 205 states and 243 transitions. [2022-04-15 09:26:59,689 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 2.5454545454545454) internal successors, (28), 9 states have internal predecessors, (28), 5 states have call successors, (16), 2 states have call predecessors, (16), 2 states have return successors, (14), 6 states have call predecessors, (14), 5 states have call successors, (14) [2022-04-15 09:26:59,689 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 205 states and 243 transitions. [2022-04-15 09:27:02,096 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 243 edges. 242 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 09:27:02,096 INFO L276 IsEmpty]: Start isEmpty. Operand 205 states and 243 transitions. [2022-04-15 09:27:02,097 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 98 [2022-04-15 09:27:02,097 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:27:02,097 INFO L499 BasicCegarLoop]: trace histogram [14, 13, 13, 5, 4, 4, 4, 4, 4, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:27:02,121 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 09:27:02,297 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 09:27:02,297 INFO L403 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:27:02,298 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:27:02,298 INFO L85 PathProgramCache]: Analyzing trace with hash 114996177, now seen corresponding path program 7 times [2022-04-15 09:27:02,298 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:27:02,298 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1032126676] [2022-04-15 09:27:10,424 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:27:10,424 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:27:10,424 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:27:10,424 INFO L85 PathProgramCache]: Analyzing trace with hash 114996177, now seen corresponding path program 8 times [2022-04-15 09:27:10,425 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:27:10,425 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1073998045] [2022-04-15 09:27:10,425 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:27:10,425 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:27:10,434 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:27:10,434 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1261893677] [2022-04-15 09:27:10,434 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 09:27:10,434 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:27:10,434 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:27:10,435 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 09:27:10,436 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 09:27:10,494 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 09:27:10,494 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:27:10,496 INFO L263 TraceCheckSpWp]: Trace formula consists of 244 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-15 09:27:10,513 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:27:10,515 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:27:10,859 INFO L272 TraceCheckUtils]: 0: Hoare triple {18000#true} call ULTIMATE.init(); {18000#true} is VALID [2022-04-15 09:27:10,859 INFO L290 TraceCheckUtils]: 1: Hoare triple {18000#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);~counter~0 := 0; {18008#(<= ~counter~0 0)} is VALID [2022-04-15 09:27:10,860 INFO L290 TraceCheckUtils]: 2: Hoare triple {18008#(<= ~counter~0 0)} assume true; {18008#(<= ~counter~0 0)} is VALID [2022-04-15 09:27:10,860 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18008#(<= ~counter~0 0)} {18000#true} #96#return; {18008#(<= ~counter~0 0)} is VALID [2022-04-15 09:27:10,860 INFO L272 TraceCheckUtils]: 4: Hoare triple {18008#(<= ~counter~0 0)} call #t~ret8 := main(); {18008#(<= ~counter~0 0)} is VALID [2022-04-15 09:27:10,860 INFO L290 TraceCheckUtils]: 5: Hoare triple {18008#(<= ~counter~0 0)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {18008#(<= ~counter~0 0)} is VALID [2022-04-15 09:27:10,861 INFO L272 TraceCheckUtils]: 6: Hoare triple {18008#(<= ~counter~0 0)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {18008#(<= ~counter~0 0)} is VALID [2022-04-15 09:27:10,861 INFO L290 TraceCheckUtils]: 7: Hoare triple {18008#(<= ~counter~0 0)} ~cond := #in~cond; {18008#(<= ~counter~0 0)} is VALID [2022-04-15 09:27:10,861 INFO L290 TraceCheckUtils]: 8: Hoare triple {18008#(<= ~counter~0 0)} assume !(0 == ~cond); {18008#(<= ~counter~0 0)} is VALID [2022-04-15 09:27:10,862 INFO L290 TraceCheckUtils]: 9: Hoare triple {18008#(<= ~counter~0 0)} assume true; {18008#(<= ~counter~0 0)} is VALID [2022-04-15 09:27:10,862 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18008#(<= ~counter~0 0)} {18008#(<= ~counter~0 0)} #80#return; {18008#(<= ~counter~0 0)} is VALID [2022-04-15 09:27:10,862 INFO L290 TraceCheckUtils]: 11: Hoare triple {18008#(<= ~counter~0 0)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {18008#(<= ~counter~0 0)} is VALID [2022-04-15 09:27:10,863 INFO L290 TraceCheckUtils]: 12: Hoare triple {18008#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18042#(<= ~counter~0 1)} is VALID [2022-04-15 09:27:10,863 INFO L290 TraceCheckUtils]: 13: Hoare triple {18042#(<= ~counter~0 1)} assume !!(#t~post6 < 5);havoc #t~post6; {18042#(<= ~counter~0 1)} is VALID [2022-04-15 09:27:10,864 INFO L272 TraceCheckUtils]: 14: Hoare triple {18042#(<= ~counter~0 1)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {18042#(<= ~counter~0 1)} is VALID [2022-04-15 09:27:10,864 INFO L290 TraceCheckUtils]: 15: Hoare triple {18042#(<= ~counter~0 1)} ~cond := #in~cond; {18042#(<= ~counter~0 1)} is VALID [2022-04-15 09:27:10,864 INFO L290 TraceCheckUtils]: 16: Hoare triple {18042#(<= ~counter~0 1)} assume !(0 == ~cond); {18042#(<= ~counter~0 1)} is VALID [2022-04-15 09:27:10,864 INFO L290 TraceCheckUtils]: 17: Hoare triple {18042#(<= ~counter~0 1)} assume true; {18042#(<= ~counter~0 1)} is VALID [2022-04-15 09:27:10,865 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {18042#(<= ~counter~0 1)} {18042#(<= ~counter~0 1)} #82#return; {18042#(<= ~counter~0 1)} is VALID [2022-04-15 09:27:10,865 INFO L272 TraceCheckUtils]: 19: Hoare triple {18042#(<= ~counter~0 1)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {18042#(<= ~counter~0 1)} is VALID [2022-04-15 09:27:10,865 INFO L290 TraceCheckUtils]: 20: Hoare triple {18042#(<= ~counter~0 1)} ~cond := #in~cond; {18042#(<= ~counter~0 1)} is VALID [2022-04-15 09:27:10,865 INFO L290 TraceCheckUtils]: 21: Hoare triple {18042#(<= ~counter~0 1)} assume !(0 == ~cond); {18042#(<= ~counter~0 1)} is VALID [2022-04-15 09:27:10,866 INFO L290 TraceCheckUtils]: 22: Hoare triple {18042#(<= ~counter~0 1)} assume true; {18042#(<= ~counter~0 1)} is VALID [2022-04-15 09:27:10,866 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {18042#(<= ~counter~0 1)} {18042#(<= ~counter~0 1)} #84#return; {18042#(<= ~counter~0 1)} is VALID [2022-04-15 09:27:10,866 INFO L272 TraceCheckUtils]: 24: Hoare triple {18042#(<= ~counter~0 1)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {18042#(<= ~counter~0 1)} is VALID [2022-04-15 09:27:10,867 INFO L290 TraceCheckUtils]: 25: Hoare triple {18042#(<= ~counter~0 1)} ~cond := #in~cond; {18042#(<= ~counter~0 1)} is VALID [2022-04-15 09:27:10,867 INFO L290 TraceCheckUtils]: 26: Hoare triple {18042#(<= ~counter~0 1)} assume !(0 == ~cond); {18042#(<= ~counter~0 1)} is VALID [2022-04-15 09:27:10,867 INFO L290 TraceCheckUtils]: 27: Hoare triple {18042#(<= ~counter~0 1)} assume true; {18042#(<= ~counter~0 1)} is VALID [2022-04-15 09:27:10,868 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {18042#(<= ~counter~0 1)} {18042#(<= ~counter~0 1)} #86#return; {18042#(<= ~counter~0 1)} is VALID [2022-04-15 09:27:10,868 INFO L290 TraceCheckUtils]: 29: Hoare triple {18042#(<= ~counter~0 1)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {18042#(<= ~counter~0 1)} is VALID [2022-04-15 09:27:10,869 INFO L290 TraceCheckUtils]: 30: Hoare triple {18042#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18097#(<= ~counter~0 2)} is VALID [2022-04-15 09:27:10,869 INFO L290 TraceCheckUtils]: 31: Hoare triple {18097#(<= ~counter~0 2)} assume !!(#t~post6 < 5);havoc #t~post6; {18097#(<= ~counter~0 2)} is VALID [2022-04-15 09:27:10,869 INFO L272 TraceCheckUtils]: 32: Hoare triple {18097#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {18097#(<= ~counter~0 2)} is VALID [2022-04-15 09:27:10,869 INFO L290 TraceCheckUtils]: 33: Hoare triple {18097#(<= ~counter~0 2)} ~cond := #in~cond; {18097#(<= ~counter~0 2)} is VALID [2022-04-15 09:27:10,870 INFO L290 TraceCheckUtils]: 34: Hoare triple {18097#(<= ~counter~0 2)} assume !(0 == ~cond); {18097#(<= ~counter~0 2)} is VALID [2022-04-15 09:27:10,870 INFO L290 TraceCheckUtils]: 35: Hoare triple {18097#(<= ~counter~0 2)} assume true; {18097#(<= ~counter~0 2)} is VALID [2022-04-15 09:27:10,870 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {18097#(<= ~counter~0 2)} {18097#(<= ~counter~0 2)} #82#return; {18097#(<= ~counter~0 2)} is VALID [2022-04-15 09:27:10,871 INFO L272 TraceCheckUtils]: 37: Hoare triple {18097#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {18097#(<= ~counter~0 2)} is VALID [2022-04-15 09:27:10,871 INFO L290 TraceCheckUtils]: 38: Hoare triple {18097#(<= ~counter~0 2)} ~cond := #in~cond; {18097#(<= ~counter~0 2)} is VALID [2022-04-15 09:27:10,871 INFO L290 TraceCheckUtils]: 39: Hoare triple {18097#(<= ~counter~0 2)} assume !(0 == ~cond); {18097#(<= ~counter~0 2)} is VALID [2022-04-15 09:27:10,871 INFO L290 TraceCheckUtils]: 40: Hoare triple {18097#(<= ~counter~0 2)} assume true; {18097#(<= ~counter~0 2)} is VALID [2022-04-15 09:27:10,872 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {18097#(<= ~counter~0 2)} {18097#(<= ~counter~0 2)} #84#return; {18097#(<= ~counter~0 2)} is VALID [2022-04-15 09:27:10,872 INFO L272 TraceCheckUtils]: 42: Hoare triple {18097#(<= ~counter~0 2)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {18097#(<= ~counter~0 2)} is VALID [2022-04-15 09:27:10,872 INFO L290 TraceCheckUtils]: 43: Hoare triple {18097#(<= ~counter~0 2)} ~cond := #in~cond; {18097#(<= ~counter~0 2)} is VALID [2022-04-15 09:27:10,873 INFO L290 TraceCheckUtils]: 44: Hoare triple {18097#(<= ~counter~0 2)} assume !(0 == ~cond); {18097#(<= ~counter~0 2)} is VALID [2022-04-15 09:27:10,873 INFO L290 TraceCheckUtils]: 45: Hoare triple {18097#(<= ~counter~0 2)} assume true; {18097#(<= ~counter~0 2)} is VALID [2022-04-15 09:27:10,873 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {18097#(<= ~counter~0 2)} {18097#(<= ~counter~0 2)} #86#return; {18097#(<= ~counter~0 2)} is VALID [2022-04-15 09:27:10,874 INFO L290 TraceCheckUtils]: 47: Hoare triple {18097#(<= ~counter~0 2)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {18097#(<= ~counter~0 2)} is VALID [2022-04-15 09:27:10,874 INFO L290 TraceCheckUtils]: 48: Hoare triple {18097#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18152#(<= ~counter~0 3)} is VALID [2022-04-15 09:27:10,874 INFO L290 TraceCheckUtils]: 49: Hoare triple {18152#(<= ~counter~0 3)} assume !!(#t~post6 < 5);havoc #t~post6; {18152#(<= ~counter~0 3)} is VALID [2022-04-15 09:27:10,875 INFO L272 TraceCheckUtils]: 50: Hoare triple {18152#(<= ~counter~0 3)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {18152#(<= ~counter~0 3)} is VALID [2022-04-15 09:27:10,875 INFO L290 TraceCheckUtils]: 51: Hoare triple {18152#(<= ~counter~0 3)} ~cond := #in~cond; {18152#(<= ~counter~0 3)} is VALID [2022-04-15 09:27:10,875 INFO L290 TraceCheckUtils]: 52: Hoare triple {18152#(<= ~counter~0 3)} assume !(0 == ~cond); {18152#(<= ~counter~0 3)} is VALID [2022-04-15 09:27:10,876 INFO L290 TraceCheckUtils]: 53: Hoare triple {18152#(<= ~counter~0 3)} assume true; {18152#(<= ~counter~0 3)} is VALID [2022-04-15 09:27:10,876 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {18152#(<= ~counter~0 3)} {18152#(<= ~counter~0 3)} #82#return; {18152#(<= ~counter~0 3)} is VALID [2022-04-15 09:27:10,876 INFO L272 TraceCheckUtils]: 55: Hoare triple {18152#(<= ~counter~0 3)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {18152#(<= ~counter~0 3)} is VALID [2022-04-15 09:27:10,876 INFO L290 TraceCheckUtils]: 56: Hoare triple {18152#(<= ~counter~0 3)} ~cond := #in~cond; {18152#(<= ~counter~0 3)} is VALID [2022-04-15 09:27:10,877 INFO L290 TraceCheckUtils]: 57: Hoare triple {18152#(<= ~counter~0 3)} assume !(0 == ~cond); {18152#(<= ~counter~0 3)} is VALID [2022-04-15 09:27:10,877 INFO L290 TraceCheckUtils]: 58: Hoare triple {18152#(<= ~counter~0 3)} assume true; {18152#(<= ~counter~0 3)} is VALID [2022-04-15 09:27:10,877 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {18152#(<= ~counter~0 3)} {18152#(<= ~counter~0 3)} #84#return; {18152#(<= ~counter~0 3)} is VALID [2022-04-15 09:27:10,878 INFO L272 TraceCheckUtils]: 60: Hoare triple {18152#(<= ~counter~0 3)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {18152#(<= ~counter~0 3)} is VALID [2022-04-15 09:27:10,878 INFO L290 TraceCheckUtils]: 61: Hoare triple {18152#(<= ~counter~0 3)} ~cond := #in~cond; {18152#(<= ~counter~0 3)} is VALID [2022-04-15 09:27:10,878 INFO L290 TraceCheckUtils]: 62: Hoare triple {18152#(<= ~counter~0 3)} assume !(0 == ~cond); {18152#(<= ~counter~0 3)} is VALID [2022-04-15 09:27:10,878 INFO L290 TraceCheckUtils]: 63: Hoare triple {18152#(<= ~counter~0 3)} assume true; {18152#(<= ~counter~0 3)} is VALID [2022-04-15 09:27:10,879 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {18152#(<= ~counter~0 3)} {18152#(<= ~counter~0 3)} #86#return; {18152#(<= ~counter~0 3)} is VALID [2022-04-15 09:27:10,879 INFO L290 TraceCheckUtils]: 65: Hoare triple {18152#(<= ~counter~0 3)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {18152#(<= ~counter~0 3)} is VALID [2022-04-15 09:27:10,880 INFO L290 TraceCheckUtils]: 66: Hoare triple {18152#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18207#(<= ~counter~0 4)} is VALID [2022-04-15 09:27:10,880 INFO L290 TraceCheckUtils]: 67: Hoare triple {18207#(<= ~counter~0 4)} assume !!(#t~post6 < 5);havoc #t~post6; {18207#(<= ~counter~0 4)} is VALID [2022-04-15 09:27:10,880 INFO L272 TraceCheckUtils]: 68: Hoare triple {18207#(<= ~counter~0 4)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {18207#(<= ~counter~0 4)} is VALID [2022-04-15 09:27:10,881 INFO L290 TraceCheckUtils]: 69: Hoare triple {18207#(<= ~counter~0 4)} ~cond := #in~cond; {18207#(<= ~counter~0 4)} is VALID [2022-04-15 09:27:10,881 INFO L290 TraceCheckUtils]: 70: Hoare triple {18207#(<= ~counter~0 4)} assume !(0 == ~cond); {18207#(<= ~counter~0 4)} is VALID [2022-04-15 09:27:10,881 INFO L290 TraceCheckUtils]: 71: Hoare triple {18207#(<= ~counter~0 4)} assume true; {18207#(<= ~counter~0 4)} is VALID [2022-04-15 09:27:10,881 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {18207#(<= ~counter~0 4)} {18207#(<= ~counter~0 4)} #82#return; {18207#(<= ~counter~0 4)} is VALID [2022-04-15 09:27:10,882 INFO L272 TraceCheckUtils]: 73: Hoare triple {18207#(<= ~counter~0 4)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {18207#(<= ~counter~0 4)} is VALID [2022-04-15 09:27:10,882 INFO L290 TraceCheckUtils]: 74: Hoare triple {18207#(<= ~counter~0 4)} ~cond := #in~cond; {18207#(<= ~counter~0 4)} is VALID [2022-04-15 09:27:10,882 INFO L290 TraceCheckUtils]: 75: Hoare triple {18207#(<= ~counter~0 4)} assume !(0 == ~cond); {18207#(<= ~counter~0 4)} is VALID [2022-04-15 09:27:10,883 INFO L290 TraceCheckUtils]: 76: Hoare triple {18207#(<= ~counter~0 4)} assume true; {18207#(<= ~counter~0 4)} is VALID [2022-04-15 09:27:10,883 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {18207#(<= ~counter~0 4)} {18207#(<= ~counter~0 4)} #84#return; {18207#(<= ~counter~0 4)} is VALID [2022-04-15 09:27:10,883 INFO L272 TraceCheckUtils]: 78: Hoare triple {18207#(<= ~counter~0 4)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {18207#(<= ~counter~0 4)} is VALID [2022-04-15 09:27:10,884 INFO L290 TraceCheckUtils]: 79: Hoare triple {18207#(<= ~counter~0 4)} ~cond := #in~cond; {18207#(<= ~counter~0 4)} is VALID [2022-04-15 09:27:10,884 INFO L290 TraceCheckUtils]: 80: Hoare triple {18207#(<= ~counter~0 4)} assume !(0 == ~cond); {18207#(<= ~counter~0 4)} is VALID [2022-04-15 09:27:10,884 INFO L290 TraceCheckUtils]: 81: Hoare triple {18207#(<= ~counter~0 4)} assume true; {18207#(<= ~counter~0 4)} is VALID [2022-04-15 09:27:10,884 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {18207#(<= ~counter~0 4)} {18207#(<= ~counter~0 4)} #86#return; {18207#(<= ~counter~0 4)} is VALID [2022-04-15 09:27:10,885 INFO L290 TraceCheckUtils]: 83: Hoare triple {18207#(<= ~counter~0 4)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {18207#(<= ~counter~0 4)} is VALID [2022-04-15 09:27:10,885 INFO L290 TraceCheckUtils]: 84: Hoare triple {18207#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18262#(<= |main_#t~post6| 4)} is VALID [2022-04-15 09:27:10,885 INFO L290 TraceCheckUtils]: 85: Hoare triple {18262#(<= |main_#t~post6| 4)} assume !(#t~post6 < 5);havoc #t~post6; {18001#false} is VALID [2022-04-15 09:27:10,886 INFO L290 TraceCheckUtils]: 86: Hoare triple {18001#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18001#false} is VALID [2022-04-15 09:27:10,886 INFO L290 TraceCheckUtils]: 87: Hoare triple {18001#false} assume !(#t~post7 < 5);havoc #t~post7; {18001#false} is VALID [2022-04-15 09:27:10,886 INFO L272 TraceCheckUtils]: 88: Hoare triple {18001#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {18001#false} is VALID [2022-04-15 09:27:10,886 INFO L290 TraceCheckUtils]: 89: Hoare triple {18001#false} ~cond := #in~cond; {18001#false} is VALID [2022-04-15 09:27:10,886 INFO L290 TraceCheckUtils]: 90: Hoare triple {18001#false} assume !(0 == ~cond); {18001#false} is VALID [2022-04-15 09:27:10,886 INFO L290 TraceCheckUtils]: 91: Hoare triple {18001#false} assume true; {18001#false} is VALID [2022-04-15 09:27:10,886 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {18001#false} {18001#false} #92#return; {18001#false} is VALID [2022-04-15 09:27:10,886 INFO L272 TraceCheckUtils]: 93: Hoare triple {18001#false} call __VERIFIER_assert((if ~B~0 % 4294967296 == ~d~0 then 1 else 0)); {18001#false} is VALID [2022-04-15 09:27:10,886 INFO L290 TraceCheckUtils]: 94: Hoare triple {18001#false} ~cond := #in~cond; {18001#false} is VALID [2022-04-15 09:27:10,886 INFO L290 TraceCheckUtils]: 95: Hoare triple {18001#false} assume 0 == ~cond; {18001#false} is VALID [2022-04-15 09:27:10,886 INFO L290 TraceCheckUtils]: 96: Hoare triple {18001#false} assume !false; {18001#false} is VALID [2022-04-15 09:27:10,886 INFO L134 CoverageAnalysis]: Checked inductivity of 382 backedges. 72 proven. 260 refuted. 0 times theorem prover too weak. 50 trivial. 0 not checked. [2022-04-15 09:27:10,886 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:27:11,209 INFO L290 TraceCheckUtils]: 96: Hoare triple {18001#false} assume !false; {18001#false} is VALID [2022-04-15 09:27:11,209 INFO L290 TraceCheckUtils]: 95: Hoare triple {18001#false} assume 0 == ~cond; {18001#false} is VALID [2022-04-15 09:27:11,209 INFO L290 TraceCheckUtils]: 94: Hoare triple {18001#false} ~cond := #in~cond; {18001#false} is VALID [2022-04-15 09:27:11,209 INFO L272 TraceCheckUtils]: 93: Hoare triple {18001#false} call __VERIFIER_assert((if ~B~0 % 4294967296 == ~d~0 then 1 else 0)); {18001#false} is VALID [2022-04-15 09:27:11,209 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {18000#true} {18001#false} #92#return; {18001#false} is VALID [2022-04-15 09:27:11,209 INFO L290 TraceCheckUtils]: 91: Hoare triple {18000#true} assume true; {18000#true} is VALID [2022-04-15 09:27:11,209 INFO L290 TraceCheckUtils]: 90: Hoare triple {18000#true} assume !(0 == ~cond); {18000#true} is VALID [2022-04-15 09:27:11,209 INFO L290 TraceCheckUtils]: 89: Hoare triple {18000#true} ~cond := #in~cond; {18000#true} is VALID [2022-04-15 09:27:11,210 INFO L272 TraceCheckUtils]: 88: Hoare triple {18001#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {18000#true} is VALID [2022-04-15 09:27:11,210 INFO L290 TraceCheckUtils]: 87: Hoare triple {18001#false} assume !(#t~post7 < 5);havoc #t~post7; {18001#false} is VALID [2022-04-15 09:27:11,210 INFO L290 TraceCheckUtils]: 86: Hoare triple {18001#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18001#false} is VALID [2022-04-15 09:27:11,210 INFO L290 TraceCheckUtils]: 85: Hoare triple {18262#(<= |main_#t~post6| 4)} assume !(#t~post6 < 5);havoc #t~post6; {18001#false} is VALID [2022-04-15 09:27:11,210 INFO L290 TraceCheckUtils]: 84: Hoare triple {18207#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18262#(<= |main_#t~post6| 4)} is VALID [2022-04-15 09:27:11,211 INFO L290 TraceCheckUtils]: 83: Hoare triple {18207#(<= ~counter~0 4)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {18207#(<= ~counter~0 4)} is VALID [2022-04-15 09:27:11,211 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {18000#true} {18207#(<= ~counter~0 4)} #86#return; {18207#(<= ~counter~0 4)} is VALID [2022-04-15 09:27:11,211 INFO L290 TraceCheckUtils]: 81: Hoare triple {18000#true} assume true; {18000#true} is VALID [2022-04-15 09:27:11,211 INFO L290 TraceCheckUtils]: 80: Hoare triple {18000#true} assume !(0 == ~cond); {18000#true} is VALID [2022-04-15 09:27:11,211 INFO L290 TraceCheckUtils]: 79: Hoare triple {18000#true} ~cond := #in~cond; {18000#true} is VALID [2022-04-15 09:27:11,211 INFO L272 TraceCheckUtils]: 78: Hoare triple {18207#(<= ~counter~0 4)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {18000#true} is VALID [2022-04-15 09:27:11,212 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {18000#true} {18207#(<= ~counter~0 4)} #84#return; {18207#(<= ~counter~0 4)} is VALID [2022-04-15 09:27:11,212 INFO L290 TraceCheckUtils]: 76: Hoare triple {18000#true} assume true; {18000#true} is VALID [2022-04-15 09:27:11,212 INFO L290 TraceCheckUtils]: 75: Hoare triple {18000#true} assume !(0 == ~cond); {18000#true} is VALID [2022-04-15 09:27:11,212 INFO L290 TraceCheckUtils]: 74: Hoare triple {18000#true} ~cond := #in~cond; {18000#true} is VALID [2022-04-15 09:27:11,212 INFO L272 TraceCheckUtils]: 73: Hoare triple {18207#(<= ~counter~0 4)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {18000#true} is VALID [2022-04-15 09:27:11,212 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {18000#true} {18207#(<= ~counter~0 4)} #82#return; {18207#(<= ~counter~0 4)} is VALID [2022-04-15 09:27:11,212 INFO L290 TraceCheckUtils]: 71: Hoare triple {18000#true} assume true; {18000#true} is VALID [2022-04-15 09:27:11,212 INFO L290 TraceCheckUtils]: 70: Hoare triple {18000#true} assume !(0 == ~cond); {18000#true} is VALID [2022-04-15 09:27:11,212 INFO L290 TraceCheckUtils]: 69: Hoare triple {18000#true} ~cond := #in~cond; {18000#true} is VALID [2022-04-15 09:27:11,213 INFO L272 TraceCheckUtils]: 68: Hoare triple {18207#(<= ~counter~0 4)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {18000#true} is VALID [2022-04-15 09:27:11,213 INFO L290 TraceCheckUtils]: 67: Hoare triple {18207#(<= ~counter~0 4)} assume !!(#t~post6 < 5);havoc #t~post6; {18207#(<= ~counter~0 4)} is VALID [2022-04-15 09:27:11,213 INFO L290 TraceCheckUtils]: 66: Hoare triple {18152#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18207#(<= ~counter~0 4)} is VALID [2022-04-15 09:27:11,214 INFO L290 TraceCheckUtils]: 65: Hoare triple {18152#(<= ~counter~0 3)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {18152#(<= ~counter~0 3)} is VALID [2022-04-15 09:27:11,214 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {18000#true} {18152#(<= ~counter~0 3)} #86#return; {18152#(<= ~counter~0 3)} is VALID [2022-04-15 09:27:11,214 INFO L290 TraceCheckUtils]: 63: Hoare triple {18000#true} assume true; {18000#true} is VALID [2022-04-15 09:27:11,214 INFO L290 TraceCheckUtils]: 62: Hoare triple {18000#true} assume !(0 == ~cond); {18000#true} is VALID [2022-04-15 09:27:11,214 INFO L290 TraceCheckUtils]: 61: Hoare triple {18000#true} ~cond := #in~cond; {18000#true} is VALID [2022-04-15 09:27:11,214 INFO L272 TraceCheckUtils]: 60: Hoare triple {18152#(<= ~counter~0 3)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {18000#true} is VALID [2022-04-15 09:27:11,215 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {18000#true} {18152#(<= ~counter~0 3)} #84#return; {18152#(<= ~counter~0 3)} is VALID [2022-04-15 09:27:11,215 INFO L290 TraceCheckUtils]: 58: Hoare triple {18000#true} assume true; {18000#true} is VALID [2022-04-15 09:27:11,215 INFO L290 TraceCheckUtils]: 57: Hoare triple {18000#true} assume !(0 == ~cond); {18000#true} is VALID [2022-04-15 09:27:11,215 INFO L290 TraceCheckUtils]: 56: Hoare triple {18000#true} ~cond := #in~cond; {18000#true} is VALID [2022-04-15 09:27:11,215 INFO L272 TraceCheckUtils]: 55: Hoare triple {18152#(<= ~counter~0 3)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {18000#true} is VALID [2022-04-15 09:27:11,215 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {18000#true} {18152#(<= ~counter~0 3)} #82#return; {18152#(<= ~counter~0 3)} is VALID [2022-04-15 09:27:11,215 INFO L290 TraceCheckUtils]: 53: Hoare triple {18000#true} assume true; {18000#true} is VALID [2022-04-15 09:27:11,215 INFO L290 TraceCheckUtils]: 52: Hoare triple {18000#true} assume !(0 == ~cond); {18000#true} is VALID [2022-04-15 09:27:11,215 INFO L290 TraceCheckUtils]: 51: Hoare triple {18000#true} ~cond := #in~cond; {18000#true} is VALID [2022-04-15 09:27:11,216 INFO L272 TraceCheckUtils]: 50: Hoare triple {18152#(<= ~counter~0 3)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {18000#true} is VALID [2022-04-15 09:27:11,216 INFO L290 TraceCheckUtils]: 49: Hoare triple {18152#(<= ~counter~0 3)} assume !!(#t~post6 < 5);havoc #t~post6; {18152#(<= ~counter~0 3)} is VALID [2022-04-15 09:27:11,216 INFO L290 TraceCheckUtils]: 48: Hoare triple {18097#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18152#(<= ~counter~0 3)} is VALID [2022-04-15 09:27:11,217 INFO L290 TraceCheckUtils]: 47: Hoare triple {18097#(<= ~counter~0 2)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {18097#(<= ~counter~0 2)} is VALID [2022-04-15 09:27:11,217 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {18000#true} {18097#(<= ~counter~0 2)} #86#return; {18097#(<= ~counter~0 2)} is VALID [2022-04-15 09:27:11,217 INFO L290 TraceCheckUtils]: 45: Hoare triple {18000#true} assume true; {18000#true} is VALID [2022-04-15 09:27:11,217 INFO L290 TraceCheckUtils]: 44: Hoare triple {18000#true} assume !(0 == ~cond); {18000#true} is VALID [2022-04-15 09:27:11,217 INFO L290 TraceCheckUtils]: 43: Hoare triple {18000#true} ~cond := #in~cond; {18000#true} is VALID [2022-04-15 09:27:11,217 INFO L272 TraceCheckUtils]: 42: Hoare triple {18097#(<= ~counter~0 2)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {18000#true} is VALID [2022-04-15 09:27:11,218 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {18000#true} {18097#(<= ~counter~0 2)} #84#return; {18097#(<= ~counter~0 2)} is VALID [2022-04-15 09:27:11,218 INFO L290 TraceCheckUtils]: 40: Hoare triple {18000#true} assume true; {18000#true} is VALID [2022-04-15 09:27:11,218 INFO L290 TraceCheckUtils]: 39: Hoare triple {18000#true} assume !(0 == ~cond); {18000#true} is VALID [2022-04-15 09:27:11,218 INFO L290 TraceCheckUtils]: 38: Hoare triple {18000#true} ~cond := #in~cond; {18000#true} is VALID [2022-04-15 09:27:11,218 INFO L272 TraceCheckUtils]: 37: Hoare triple {18097#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {18000#true} is VALID [2022-04-15 09:27:11,218 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {18000#true} {18097#(<= ~counter~0 2)} #82#return; {18097#(<= ~counter~0 2)} is VALID [2022-04-15 09:27:11,218 INFO L290 TraceCheckUtils]: 35: Hoare triple {18000#true} assume true; {18000#true} is VALID [2022-04-15 09:27:11,218 INFO L290 TraceCheckUtils]: 34: Hoare triple {18000#true} assume !(0 == ~cond); {18000#true} is VALID [2022-04-15 09:27:11,218 INFO L290 TraceCheckUtils]: 33: Hoare triple {18000#true} ~cond := #in~cond; {18000#true} is VALID [2022-04-15 09:27:11,219 INFO L272 TraceCheckUtils]: 32: Hoare triple {18097#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {18000#true} is VALID [2022-04-15 09:27:11,219 INFO L290 TraceCheckUtils]: 31: Hoare triple {18097#(<= ~counter~0 2)} assume !!(#t~post6 < 5);havoc #t~post6; {18097#(<= ~counter~0 2)} is VALID [2022-04-15 09:27:11,219 INFO L290 TraceCheckUtils]: 30: Hoare triple {18042#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18097#(<= ~counter~0 2)} is VALID [2022-04-15 09:27:11,220 INFO L290 TraceCheckUtils]: 29: Hoare triple {18042#(<= ~counter~0 1)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {18042#(<= ~counter~0 1)} is VALID [2022-04-15 09:27:11,223 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {18000#true} {18042#(<= ~counter~0 1)} #86#return; {18042#(<= ~counter~0 1)} is VALID [2022-04-15 09:27:11,224 INFO L290 TraceCheckUtils]: 27: Hoare triple {18000#true} assume true; {18000#true} is VALID [2022-04-15 09:27:11,224 INFO L290 TraceCheckUtils]: 26: Hoare triple {18000#true} assume !(0 == ~cond); {18000#true} is VALID [2022-04-15 09:27:11,224 INFO L290 TraceCheckUtils]: 25: Hoare triple {18000#true} ~cond := #in~cond; {18000#true} is VALID [2022-04-15 09:27:11,224 INFO L272 TraceCheckUtils]: 24: Hoare triple {18042#(<= ~counter~0 1)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {18000#true} is VALID [2022-04-15 09:27:11,224 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {18000#true} {18042#(<= ~counter~0 1)} #84#return; {18042#(<= ~counter~0 1)} is VALID [2022-04-15 09:27:11,224 INFO L290 TraceCheckUtils]: 22: Hoare triple {18000#true} assume true; {18000#true} is VALID [2022-04-15 09:27:11,224 INFO L290 TraceCheckUtils]: 21: Hoare triple {18000#true} assume !(0 == ~cond); {18000#true} is VALID [2022-04-15 09:27:11,224 INFO L290 TraceCheckUtils]: 20: Hoare triple {18000#true} ~cond := #in~cond; {18000#true} is VALID [2022-04-15 09:27:11,224 INFO L272 TraceCheckUtils]: 19: Hoare triple {18042#(<= ~counter~0 1)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {18000#true} is VALID [2022-04-15 09:27:11,225 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {18000#true} {18042#(<= ~counter~0 1)} #82#return; {18042#(<= ~counter~0 1)} is VALID [2022-04-15 09:27:11,225 INFO L290 TraceCheckUtils]: 17: Hoare triple {18000#true} assume true; {18000#true} is VALID [2022-04-15 09:27:11,225 INFO L290 TraceCheckUtils]: 16: Hoare triple {18000#true} assume !(0 == ~cond); {18000#true} is VALID [2022-04-15 09:27:11,225 INFO L290 TraceCheckUtils]: 15: Hoare triple {18000#true} ~cond := #in~cond; {18000#true} is VALID [2022-04-15 09:27:11,225 INFO L272 TraceCheckUtils]: 14: Hoare triple {18042#(<= ~counter~0 1)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {18000#true} is VALID [2022-04-15 09:27:11,225 INFO L290 TraceCheckUtils]: 13: Hoare triple {18042#(<= ~counter~0 1)} assume !!(#t~post6 < 5);havoc #t~post6; {18042#(<= ~counter~0 1)} is VALID [2022-04-15 09:27:11,226 INFO L290 TraceCheckUtils]: 12: Hoare triple {18008#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18042#(<= ~counter~0 1)} is VALID [2022-04-15 09:27:11,226 INFO L290 TraceCheckUtils]: 11: Hoare triple {18008#(<= ~counter~0 0)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {18008#(<= ~counter~0 0)} is VALID [2022-04-15 09:27:11,226 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18000#true} {18008#(<= ~counter~0 0)} #80#return; {18008#(<= ~counter~0 0)} is VALID [2022-04-15 09:27:11,227 INFO L290 TraceCheckUtils]: 9: Hoare triple {18000#true} assume true; {18000#true} is VALID [2022-04-15 09:27:11,227 INFO L290 TraceCheckUtils]: 8: Hoare triple {18000#true} assume !(0 == ~cond); {18000#true} is VALID [2022-04-15 09:27:11,227 INFO L290 TraceCheckUtils]: 7: Hoare triple {18000#true} ~cond := #in~cond; {18000#true} is VALID [2022-04-15 09:27:11,227 INFO L272 TraceCheckUtils]: 6: Hoare triple {18008#(<= ~counter~0 0)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {18000#true} is VALID [2022-04-15 09:27:11,227 INFO L290 TraceCheckUtils]: 5: Hoare triple {18008#(<= ~counter~0 0)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {18008#(<= ~counter~0 0)} is VALID [2022-04-15 09:27:11,227 INFO L272 TraceCheckUtils]: 4: Hoare triple {18008#(<= ~counter~0 0)} call #t~ret8 := main(); {18008#(<= ~counter~0 0)} is VALID [2022-04-15 09:27:11,227 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18008#(<= ~counter~0 0)} {18000#true} #96#return; {18008#(<= ~counter~0 0)} is VALID [2022-04-15 09:27:11,228 INFO L290 TraceCheckUtils]: 2: Hoare triple {18008#(<= ~counter~0 0)} assume true; {18008#(<= ~counter~0 0)} is VALID [2022-04-15 09:27:11,228 INFO L290 TraceCheckUtils]: 1: Hoare triple {18000#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);~counter~0 := 0; {18008#(<= ~counter~0 0)} is VALID [2022-04-15 09:27:11,228 INFO L272 TraceCheckUtils]: 0: Hoare triple {18000#true} call ULTIMATE.init(); {18000#true} is VALID [2022-04-15 09:27:11,228 INFO L134 CoverageAnalysis]: Checked inductivity of 382 backedges. 26 proven. 44 refuted. 0 times theorem prover too weak. 312 trivial. 0 not checked. [2022-04-15 09:27:11,229 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:27:11,229 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1073998045] [2022-04-15 09:27:11,229 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:27:11,229 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1261893677] [2022-04-15 09:27:11,229 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1261893677] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:27:11,229 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:27:11,229 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 8 [2022-04-15 09:27:11,229 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:27:11,229 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1032126676] [2022-04-15 09:27:11,229 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1032126676] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:27:11,229 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:27:11,229 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-15 09:27:11,229 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1854574790] [2022-04-15 09:27:11,229 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:27:11,230 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 7 states have call successors, (17), 7 states have call predecessors, (17), 6 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) Word has length 97 [2022-04-15 09:27:11,231 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:27:11,231 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 7 states have call successors, (17), 7 states have call predecessors, (17), 6 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-15 09:27:11,306 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:27:11,306 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-15 09:27:11,306 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:27:11,307 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-15 09:27:11,307 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=33, Unknown=0, NotChecked=0, Total=56 [2022-04-15 09:27:11,307 INFO L87 Difference]: Start difference. First operand 205 states and 243 transitions. Second operand has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 7 states have call successors, (17), 7 states have call predecessors, (17), 6 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-15 09:27:11,916 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:27:11,916 INFO L93 Difference]: Finished difference Result 266 states and 328 transitions. [2022-04-15 09:27:11,916 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-15 09:27:11,917 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 7 states have call successors, (17), 7 states have call predecessors, (17), 6 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) Word has length 97 [2022-04-15 09:27:11,917 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:27:11,917 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 7 states have call successors, (17), 7 states have call predecessors, (17), 6 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-15 09:27:11,918 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 124 transitions. [2022-04-15 09:27:11,918 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 7 states have call successors, (17), 7 states have call predecessors, (17), 6 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-15 09:27:11,920 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 124 transitions. [2022-04-15 09:27:11,920 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 124 transitions. [2022-04-15 09:27:12,050 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 124 edges. 124 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:27:12,053 INFO L225 Difference]: With dead ends: 266 [2022-04-15 09:27:12,053 INFO L226 Difference]: Without dead ends: 207 [2022-04-15 09:27:12,053 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 197 GetRequests, 186 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=51, Invalid=81, Unknown=0, NotChecked=0, Total=132 [2022-04-15 09:27:12,054 INFO L913 BasicCegarLoop]: 53 mSDtfsCounter, 23 mSDsluCounter, 111 mSDsCounter, 0 mSdLazyCounter, 66 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 23 SdHoareTripleChecker+Valid, 164 SdHoareTripleChecker+Invalid, 77 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 66 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-15 09:27:12,054 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [23 Valid, 164 Invalid, 77 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 66 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-15 09:27:12,054 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 207 states. [2022-04-15 09:27:12,275 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 207 to 207. [2022-04-15 09:27:12,276 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:27:12,277 INFO L82 GeneralOperation]: Start isEquivalent. First operand 207 states. Second operand has 207 states, 136 states have (on average 1.1691176470588236) internal successors, (159), 145 states have internal predecessors, (159), 45 states have call successors, (45), 26 states have call predecessors, (45), 25 states have return successors, (41), 35 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-15 09:27:12,277 INFO L74 IsIncluded]: Start isIncluded. First operand 207 states. Second operand has 207 states, 136 states have (on average 1.1691176470588236) internal successors, (159), 145 states have internal predecessors, (159), 45 states have call successors, (45), 26 states have call predecessors, (45), 25 states have return successors, (41), 35 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-15 09:27:12,277 INFO L87 Difference]: Start difference. First operand 207 states. Second operand has 207 states, 136 states have (on average 1.1691176470588236) internal successors, (159), 145 states have internal predecessors, (159), 45 states have call successors, (45), 26 states have call predecessors, (45), 25 states have return successors, (41), 35 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-15 09:27:12,281 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:27:12,281 INFO L93 Difference]: Finished difference Result 207 states and 245 transitions. [2022-04-15 09:27:12,281 INFO L276 IsEmpty]: Start isEmpty. Operand 207 states and 245 transitions. [2022-04-15 09:27:12,282 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:27:12,282 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:27:12,282 INFO L74 IsIncluded]: Start isIncluded. First operand has 207 states, 136 states have (on average 1.1691176470588236) internal successors, (159), 145 states have internal predecessors, (159), 45 states have call successors, (45), 26 states have call predecessors, (45), 25 states have return successors, (41), 35 states have call predecessors, (41), 41 states have call successors, (41) Second operand 207 states. [2022-04-15 09:27:12,283 INFO L87 Difference]: Start difference. First operand has 207 states, 136 states have (on average 1.1691176470588236) internal successors, (159), 145 states have internal predecessors, (159), 45 states have call successors, (45), 26 states have call predecessors, (45), 25 states have return successors, (41), 35 states have call predecessors, (41), 41 states have call successors, (41) Second operand 207 states. [2022-04-15 09:27:12,286 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:27:12,286 INFO L93 Difference]: Finished difference Result 207 states and 245 transitions. [2022-04-15 09:27:12,287 INFO L276 IsEmpty]: Start isEmpty. Operand 207 states and 245 transitions. [2022-04-15 09:27:12,287 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:27:12,287 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:27:12,287 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:27:12,287 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:27:12,287 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 207 states, 136 states have (on average 1.1691176470588236) internal successors, (159), 145 states have internal predecessors, (159), 45 states have call successors, (45), 26 states have call predecessors, (45), 25 states have return successors, (41), 35 states have call predecessors, (41), 41 states have call successors, (41) [2022-04-15 09:27:12,292 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 207 states to 207 states and 245 transitions. [2022-04-15 09:27:12,292 INFO L78 Accepts]: Start accepts. Automaton has 207 states and 245 transitions. Word has length 97 [2022-04-15 09:27:12,292 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:27:12,292 INFO L478 AbstractCegarLoop]: Abstraction has 207 states and 245 transitions. [2022-04-15 09:27:12,293 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 5.0) internal successors, (40), 7 states have internal predecessors, (40), 7 states have call successors, (17), 7 states have call predecessors, (17), 6 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-15 09:27:12,293 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 207 states and 245 transitions. [2022-04-15 09:27:14,669 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 245 edges. 244 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 09:27:14,669 INFO L276 IsEmpty]: Start isEmpty. Operand 207 states and 245 transitions. [2022-04-15 09:27:14,670 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 101 [2022-04-15 09:27:14,670 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:27:14,670 INFO L499 BasicCegarLoop]: trace histogram [14, 13, 13, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:27:14,687 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 09:27:14,870 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 09:27:14,871 INFO L403 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:27:14,871 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:27:14,871 INFO L85 PathProgramCache]: Analyzing trace with hash -545719131, now seen corresponding path program 5 times [2022-04-15 09:27:14,871 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:27:14,871 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [40016551] [2022-04-15 09:27:21,515 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:27:21,515 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:27:21,515 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:27:21,515 INFO L85 PathProgramCache]: Analyzing trace with hash -545719131, now seen corresponding path program 6 times [2022-04-15 09:27:21,515 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:27:21,516 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [426484577] [2022-04-15 09:27:21,516 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:27:21,516 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:27:21,540 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:27:21,540 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1577108521] [2022-04-15 09:27:21,540 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-15 09:27:21,540 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:27:21,540 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:27:21,541 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 09:27:21,542 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 09:27:21,685 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-15 09:27:21,685 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:27:21,686 INFO L263 TraceCheckSpWp]: Trace formula consists of 237 conjuncts, 42 conjunts are in the unsatisfiable core [2022-04-15 09:27:21,701 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:27:21,702 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:27:50,267 INFO L272 TraceCheckUtils]: 0: Hoare triple {19957#true} call ULTIMATE.init(); {19957#true} is VALID [2022-04-15 09:27:50,267 INFO L290 TraceCheckUtils]: 1: Hoare triple {19957#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);~counter~0 := 0; {19957#true} is VALID [2022-04-15 09:27:50,267 INFO L290 TraceCheckUtils]: 2: Hoare triple {19957#true} assume true; {19957#true} is VALID [2022-04-15 09:27:50,267 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {19957#true} {19957#true} #96#return; {19957#true} is VALID [2022-04-15 09:27:50,267 INFO L272 TraceCheckUtils]: 4: Hoare triple {19957#true} call #t~ret8 := main(); {19957#true} is VALID [2022-04-15 09:27:50,267 INFO L290 TraceCheckUtils]: 5: Hoare triple {19957#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {19957#true} is VALID [2022-04-15 09:27:50,267 INFO L272 TraceCheckUtils]: 6: Hoare triple {19957#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {19957#true} is VALID [2022-04-15 09:27:50,268 INFO L290 TraceCheckUtils]: 7: Hoare triple {19957#true} ~cond := #in~cond; {19983#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 09:27:50,268 INFO L290 TraceCheckUtils]: 8: Hoare triple {19983#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {19987#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 09:27:50,268 INFO L290 TraceCheckUtils]: 9: Hoare triple {19987#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {19987#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 09:27:50,269 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {19987#(not (= |assume_abort_if_not_#in~cond| 0))} {19957#true} #80#return; {19994#(<= 1 (mod main_~B~0 4294967296))} is VALID [2022-04-15 09:27:50,271 INFO L290 TraceCheckUtils]: 11: Hoare triple {19994#(<= 1 (mod main_~B~0 4294967296))} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {19998#(and (= (mod main_~A~0 4294967296) main_~r~0) (< main_~d~0 4294967296) (<= 0 main_~d~0) (= main_~q~0 0) (<= 1 (mod main_~d~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:27:50,272 INFO L290 TraceCheckUtils]: 12: Hoare triple {19998#(and (= (mod main_~A~0 4294967296) main_~r~0) (< main_~d~0 4294967296) (<= 0 main_~d~0) (= main_~q~0 0) (<= 1 (mod main_~d~0 4294967296)) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {19998#(and (= (mod main_~A~0 4294967296) main_~r~0) (< main_~d~0 4294967296) (<= 0 main_~d~0) (= main_~q~0 0) (<= 1 (mod main_~d~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:27:50,272 INFO L290 TraceCheckUtils]: 13: Hoare triple {19998#(and (= (mod main_~A~0 4294967296) main_~r~0) (< main_~d~0 4294967296) (<= 0 main_~d~0) (= main_~q~0 0) (<= 1 (mod main_~d~0 4294967296)) (= main_~p~0 1))} assume !!(#t~post6 < 5);havoc #t~post6; {19998#(and (= (mod main_~A~0 4294967296) main_~r~0) (< main_~d~0 4294967296) (<= 0 main_~d~0) (= main_~q~0 0) (<= 1 (mod main_~d~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:27:50,272 INFO L272 TraceCheckUtils]: 14: Hoare triple {19998#(and (= (mod main_~A~0 4294967296) main_~r~0) (< main_~d~0 4294967296) (<= 0 main_~d~0) (= main_~q~0 0) (<= 1 (mod main_~d~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {19957#true} is VALID [2022-04-15 09:27:50,272 INFO L290 TraceCheckUtils]: 15: Hoare triple {19957#true} ~cond := #in~cond; {19957#true} is VALID [2022-04-15 09:27:50,272 INFO L290 TraceCheckUtils]: 16: Hoare triple {19957#true} assume !(0 == ~cond); {19957#true} is VALID [2022-04-15 09:27:50,273 INFO L290 TraceCheckUtils]: 17: Hoare triple {19957#true} assume true; {19957#true} is VALID [2022-04-15 09:27:50,273 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {19957#true} {19998#(and (= (mod main_~A~0 4294967296) main_~r~0) (< main_~d~0 4294967296) (<= 0 main_~d~0) (= main_~q~0 0) (<= 1 (mod main_~d~0 4294967296)) (= main_~p~0 1))} #82#return; {19998#(and (= (mod main_~A~0 4294967296) main_~r~0) (< main_~d~0 4294967296) (<= 0 main_~d~0) (= main_~q~0 0) (<= 1 (mod main_~d~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:27:50,273 INFO L272 TraceCheckUtils]: 19: Hoare triple {19998#(and (= (mod main_~A~0 4294967296) main_~r~0) (< main_~d~0 4294967296) (<= 0 main_~d~0) (= main_~q~0 0) (<= 1 (mod main_~d~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {19957#true} is VALID [2022-04-15 09:27:50,273 INFO L290 TraceCheckUtils]: 20: Hoare triple {19957#true} ~cond := #in~cond; {19957#true} is VALID [2022-04-15 09:27:50,273 INFO L290 TraceCheckUtils]: 21: Hoare triple {19957#true} assume !(0 == ~cond); {19957#true} is VALID [2022-04-15 09:27:50,273 INFO L290 TraceCheckUtils]: 22: Hoare triple {19957#true} assume true; {19957#true} is VALID [2022-04-15 09:27:50,274 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {19957#true} {19998#(and (= (mod main_~A~0 4294967296) main_~r~0) (< main_~d~0 4294967296) (<= 0 main_~d~0) (= main_~q~0 0) (<= 1 (mod main_~d~0 4294967296)) (= main_~p~0 1))} #84#return; {19998#(and (= (mod main_~A~0 4294967296) main_~r~0) (< main_~d~0 4294967296) (<= 0 main_~d~0) (= main_~q~0 0) (<= 1 (mod main_~d~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:27:50,274 INFO L272 TraceCheckUtils]: 24: Hoare triple {19998#(and (= (mod main_~A~0 4294967296) main_~r~0) (< main_~d~0 4294967296) (<= 0 main_~d~0) (= main_~q~0 0) (<= 1 (mod main_~d~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {19957#true} is VALID [2022-04-15 09:27:50,274 INFO L290 TraceCheckUtils]: 25: Hoare triple {19957#true} ~cond := #in~cond; {19957#true} is VALID [2022-04-15 09:27:50,274 INFO L290 TraceCheckUtils]: 26: Hoare triple {19957#true} assume !(0 == ~cond); {19957#true} is VALID [2022-04-15 09:27:50,274 INFO L290 TraceCheckUtils]: 27: Hoare triple {19957#true} assume true; {19957#true} is VALID [2022-04-15 09:27:50,274 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {19957#true} {19998#(and (= (mod main_~A~0 4294967296) main_~r~0) (< main_~d~0 4294967296) (<= 0 main_~d~0) (= main_~q~0 0) (<= 1 (mod main_~d~0 4294967296)) (= main_~p~0 1))} #86#return; {19998#(and (= (mod main_~A~0 4294967296) main_~r~0) (< main_~d~0 4294967296) (<= 0 main_~d~0) (= main_~q~0 0) (<= 1 (mod main_~d~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-15 09:27:50,277 INFO L290 TraceCheckUtils]: 29: Hoare triple {19998#(and (= (mod main_~A~0 4294967296) main_~r~0) (< main_~d~0 4294967296) (<= 0 main_~d~0) (= main_~q~0 0) (<= 1 (mod main_~d~0 4294967296)) (= main_~p~0 1))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {20053#(and (= (mod main_~A~0 4294967296) main_~r~0) (< (div main_~d~0 2) 4294967296) (<= 1 (mod (div main_~d~0 2) 4294967296)) (= main_~p~0 2) (<= 0 (div main_~d~0 2)) (= (mod main_~d~0 2) 0) (= main_~q~0 0))} is VALID [2022-04-15 09:27:50,277 INFO L290 TraceCheckUtils]: 30: Hoare triple {20053#(and (= (mod main_~A~0 4294967296) main_~r~0) (< (div main_~d~0 2) 4294967296) (<= 1 (mod (div main_~d~0 2) 4294967296)) (= main_~p~0 2) (<= 0 (div main_~d~0 2)) (= (mod main_~d~0 2) 0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20053#(and (= (mod main_~A~0 4294967296) main_~r~0) (< (div main_~d~0 2) 4294967296) (<= 1 (mod (div main_~d~0 2) 4294967296)) (= main_~p~0 2) (<= 0 (div main_~d~0 2)) (= (mod main_~d~0 2) 0) (= main_~q~0 0))} is VALID [2022-04-15 09:27:50,278 INFO L290 TraceCheckUtils]: 31: Hoare triple {20053#(and (= (mod main_~A~0 4294967296) main_~r~0) (< (div main_~d~0 2) 4294967296) (<= 1 (mod (div main_~d~0 2) 4294967296)) (= main_~p~0 2) (<= 0 (div main_~d~0 2)) (= (mod main_~d~0 2) 0) (= main_~q~0 0))} assume !!(#t~post6 < 5);havoc #t~post6; {20053#(and (= (mod main_~A~0 4294967296) main_~r~0) (< (div main_~d~0 2) 4294967296) (<= 1 (mod (div main_~d~0 2) 4294967296)) (= main_~p~0 2) (<= 0 (div main_~d~0 2)) (= (mod main_~d~0 2) 0) (= main_~q~0 0))} is VALID [2022-04-15 09:27:50,278 INFO L272 TraceCheckUtils]: 32: Hoare triple {20053#(and (= (mod main_~A~0 4294967296) main_~r~0) (< (div main_~d~0 2) 4294967296) (<= 1 (mod (div main_~d~0 2) 4294967296)) (= main_~p~0 2) (<= 0 (div main_~d~0 2)) (= (mod main_~d~0 2) 0) (= main_~q~0 0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {19957#true} is VALID [2022-04-15 09:27:50,278 INFO L290 TraceCheckUtils]: 33: Hoare triple {19957#true} ~cond := #in~cond; {19957#true} is VALID [2022-04-15 09:27:50,278 INFO L290 TraceCheckUtils]: 34: Hoare triple {19957#true} assume !(0 == ~cond); {19957#true} is VALID [2022-04-15 09:27:50,278 INFO L290 TraceCheckUtils]: 35: Hoare triple {19957#true} assume true; {19957#true} is VALID [2022-04-15 09:27:50,279 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {19957#true} {20053#(and (= (mod main_~A~0 4294967296) main_~r~0) (< (div main_~d~0 2) 4294967296) (<= 1 (mod (div main_~d~0 2) 4294967296)) (= main_~p~0 2) (<= 0 (div main_~d~0 2)) (= (mod main_~d~0 2) 0) (= main_~q~0 0))} #82#return; {20053#(and (= (mod main_~A~0 4294967296) main_~r~0) (< (div main_~d~0 2) 4294967296) (<= 1 (mod (div main_~d~0 2) 4294967296)) (= main_~p~0 2) (<= 0 (div main_~d~0 2)) (= (mod main_~d~0 2) 0) (= main_~q~0 0))} is VALID [2022-04-15 09:27:50,279 INFO L272 TraceCheckUtils]: 37: Hoare triple {20053#(and (= (mod main_~A~0 4294967296) main_~r~0) (< (div main_~d~0 2) 4294967296) (<= 1 (mod (div main_~d~0 2) 4294967296)) (= main_~p~0 2) (<= 0 (div main_~d~0 2)) (= (mod main_~d~0 2) 0) (= main_~q~0 0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {19957#true} is VALID [2022-04-15 09:27:50,279 INFO L290 TraceCheckUtils]: 38: Hoare triple {19957#true} ~cond := #in~cond; {19957#true} is VALID [2022-04-15 09:27:50,279 INFO L290 TraceCheckUtils]: 39: Hoare triple {19957#true} assume !(0 == ~cond); {19957#true} is VALID [2022-04-15 09:27:50,279 INFO L290 TraceCheckUtils]: 40: Hoare triple {19957#true} assume true; {19957#true} is VALID [2022-04-15 09:27:50,279 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {19957#true} {20053#(and (= (mod main_~A~0 4294967296) main_~r~0) (< (div main_~d~0 2) 4294967296) (<= 1 (mod (div main_~d~0 2) 4294967296)) (= main_~p~0 2) (<= 0 (div main_~d~0 2)) (= (mod main_~d~0 2) 0) (= main_~q~0 0))} #84#return; {20053#(and (= (mod main_~A~0 4294967296) main_~r~0) (< (div main_~d~0 2) 4294967296) (<= 1 (mod (div main_~d~0 2) 4294967296)) (= main_~p~0 2) (<= 0 (div main_~d~0 2)) (= (mod main_~d~0 2) 0) (= main_~q~0 0))} is VALID [2022-04-15 09:27:50,279 INFO L272 TraceCheckUtils]: 42: Hoare triple {20053#(and (= (mod main_~A~0 4294967296) main_~r~0) (< (div main_~d~0 2) 4294967296) (<= 1 (mod (div main_~d~0 2) 4294967296)) (= main_~p~0 2) (<= 0 (div main_~d~0 2)) (= (mod main_~d~0 2) 0) (= main_~q~0 0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {19957#true} is VALID [2022-04-15 09:27:50,279 INFO L290 TraceCheckUtils]: 43: Hoare triple {19957#true} ~cond := #in~cond; {19957#true} is VALID [2022-04-15 09:27:50,279 INFO L290 TraceCheckUtils]: 44: Hoare triple {19957#true} assume !(0 == ~cond); {19957#true} is VALID [2022-04-15 09:27:50,279 INFO L290 TraceCheckUtils]: 45: Hoare triple {19957#true} assume true; {19957#true} is VALID [2022-04-15 09:27:50,280 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {19957#true} {20053#(and (= (mod main_~A~0 4294967296) main_~r~0) (< (div main_~d~0 2) 4294967296) (<= 1 (mod (div main_~d~0 2) 4294967296)) (= main_~p~0 2) (<= 0 (div main_~d~0 2)) (= (mod main_~d~0 2) 0) (= main_~q~0 0))} #86#return; {20053#(and (= (mod main_~A~0 4294967296) main_~r~0) (< (div main_~d~0 2) 4294967296) (<= 1 (mod (div main_~d~0 2) 4294967296)) (= main_~p~0 2) (<= 0 (div main_~d~0 2)) (= (mod main_~d~0 2) 0) (= main_~q~0 0))} is VALID [2022-04-15 09:27:50,282 INFO L290 TraceCheckUtils]: 47: Hoare triple {20053#(and (= (mod main_~A~0 4294967296) main_~r~0) (< (div main_~d~0 2) 4294967296) (<= 1 (mod (div main_~d~0 2) 4294967296)) (= main_~p~0 2) (<= 0 (div main_~d~0 2)) (= (mod main_~d~0 2) 0) (= main_~q~0 0))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {20108#(and (<= 1 (mod (div (div main_~d~0 2) 2) 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= 0 (div (div main_~d~0 2) 2)) (= (mod (div main_~d~0 2) 2) 0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (< (div (div main_~d~0 2) 2) 4294967296))} is VALID [2022-04-15 09:27:50,283 INFO L290 TraceCheckUtils]: 48: Hoare triple {20108#(and (<= 1 (mod (div (div main_~d~0 2) 2) 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= 0 (div (div main_~d~0 2) 2)) (= (mod (div main_~d~0 2) 2) 0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (< (div (div main_~d~0 2) 2) 4294967296))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20108#(and (<= 1 (mod (div (div main_~d~0 2) 2) 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= 0 (div (div main_~d~0 2) 2)) (= (mod (div main_~d~0 2) 2) 0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (< (div (div main_~d~0 2) 2) 4294967296))} is VALID [2022-04-15 09:27:50,283 INFO L290 TraceCheckUtils]: 49: Hoare triple {20108#(and (<= 1 (mod (div (div main_~d~0 2) 2) 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= 0 (div (div main_~d~0 2) 2)) (= (mod (div main_~d~0 2) 2) 0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (< (div (div main_~d~0 2) 2) 4294967296))} assume !!(#t~post6 < 5);havoc #t~post6; {20108#(and (<= 1 (mod (div (div main_~d~0 2) 2) 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= 0 (div (div main_~d~0 2) 2)) (= (mod (div main_~d~0 2) 2) 0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (< (div (div main_~d~0 2) 2) 4294967296))} is VALID [2022-04-15 09:27:50,283 INFO L272 TraceCheckUtils]: 50: Hoare triple {20108#(and (<= 1 (mod (div (div main_~d~0 2) 2) 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= 0 (div (div main_~d~0 2) 2)) (= (mod (div main_~d~0 2) 2) 0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (< (div (div main_~d~0 2) 2) 4294967296))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {19957#true} is VALID [2022-04-15 09:27:50,283 INFO L290 TraceCheckUtils]: 51: Hoare triple {19957#true} ~cond := #in~cond; {19957#true} is VALID [2022-04-15 09:27:50,283 INFO L290 TraceCheckUtils]: 52: Hoare triple {19957#true} assume !(0 == ~cond); {19957#true} is VALID [2022-04-15 09:27:50,283 INFO L290 TraceCheckUtils]: 53: Hoare triple {19957#true} assume true; {19957#true} is VALID [2022-04-15 09:27:50,284 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {19957#true} {20108#(and (<= 1 (mod (div (div main_~d~0 2) 2) 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= 0 (div (div main_~d~0 2) 2)) (= (mod (div main_~d~0 2) 2) 0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (< (div (div main_~d~0 2) 2) 4294967296))} #82#return; {20108#(and (<= 1 (mod (div (div main_~d~0 2) 2) 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= 0 (div (div main_~d~0 2) 2)) (= (mod (div main_~d~0 2) 2) 0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (< (div (div main_~d~0 2) 2) 4294967296))} is VALID [2022-04-15 09:27:50,284 INFO L272 TraceCheckUtils]: 55: Hoare triple {20108#(and (<= 1 (mod (div (div main_~d~0 2) 2) 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= 0 (div (div main_~d~0 2) 2)) (= (mod (div main_~d~0 2) 2) 0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (< (div (div main_~d~0 2) 2) 4294967296))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {19957#true} is VALID [2022-04-15 09:27:50,284 INFO L290 TraceCheckUtils]: 56: Hoare triple {19957#true} ~cond := #in~cond; {19957#true} is VALID [2022-04-15 09:27:50,284 INFO L290 TraceCheckUtils]: 57: Hoare triple {19957#true} assume !(0 == ~cond); {19957#true} is VALID [2022-04-15 09:27:50,284 INFO L290 TraceCheckUtils]: 58: Hoare triple {19957#true} assume true; {19957#true} is VALID [2022-04-15 09:27:50,285 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {19957#true} {20108#(and (<= 1 (mod (div (div main_~d~0 2) 2) 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= 0 (div (div main_~d~0 2) 2)) (= (mod (div main_~d~0 2) 2) 0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (< (div (div main_~d~0 2) 2) 4294967296))} #84#return; {20108#(and (<= 1 (mod (div (div main_~d~0 2) 2) 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= 0 (div (div main_~d~0 2) 2)) (= (mod (div main_~d~0 2) 2) 0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (< (div (div main_~d~0 2) 2) 4294967296))} is VALID [2022-04-15 09:27:50,285 INFO L272 TraceCheckUtils]: 60: Hoare triple {20108#(and (<= 1 (mod (div (div main_~d~0 2) 2) 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= 0 (div (div main_~d~0 2) 2)) (= (mod (div main_~d~0 2) 2) 0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (< (div (div main_~d~0 2) 2) 4294967296))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {19957#true} is VALID [2022-04-15 09:27:50,285 INFO L290 TraceCheckUtils]: 61: Hoare triple {19957#true} ~cond := #in~cond; {19957#true} is VALID [2022-04-15 09:27:50,285 INFO L290 TraceCheckUtils]: 62: Hoare triple {19957#true} assume !(0 == ~cond); {19957#true} is VALID [2022-04-15 09:27:50,285 INFO L290 TraceCheckUtils]: 63: Hoare triple {19957#true} assume true; {19957#true} is VALID [2022-04-15 09:27:50,285 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {19957#true} {20108#(and (<= 1 (mod (div (div main_~d~0 2) 2) 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= 0 (div (div main_~d~0 2) 2)) (= (mod (div main_~d~0 2) 2) 0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (< (div (div main_~d~0 2) 2) 4294967296))} #86#return; {20108#(and (<= 1 (mod (div (div main_~d~0 2) 2) 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= 0 (div (div main_~d~0 2) 2)) (= (mod (div main_~d~0 2) 2) 0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (< (div (div main_~d~0 2) 2) 4294967296))} is VALID [2022-04-15 09:27:50,287 INFO L290 TraceCheckUtils]: 65: Hoare triple {20108#(and (<= 1 (mod (div (div main_~d~0 2) 2) 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= 0 (div (div main_~d~0 2) 2)) (= (mod (div main_~d~0 2) 2) 0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (< (div (div main_~d~0 2) 2) 4294967296))} assume !(~r~0 >= ~d~0); {20108#(and (<= 1 (mod (div (div main_~d~0 2) 2) 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= 0 (div (div main_~d~0 2) 2)) (= (mod (div main_~d~0 2) 2) 0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (< (div (div main_~d~0 2) 2) 4294967296))} is VALID [2022-04-15 09:27:50,287 INFO L290 TraceCheckUtils]: 66: Hoare triple {20108#(and (<= 1 (mod (div (div main_~d~0 2) 2) 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= 0 (div (div main_~d~0 2) 2)) (= (mod (div main_~d~0 2) 2) 0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (< (div (div main_~d~0 2) 2) 4294967296))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20108#(and (<= 1 (mod (div (div main_~d~0 2) 2) 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= 0 (div (div main_~d~0 2) 2)) (= (mod (div main_~d~0 2) 2) 0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (< (div (div main_~d~0 2) 2) 4294967296))} is VALID [2022-04-15 09:27:50,288 INFO L290 TraceCheckUtils]: 67: Hoare triple {20108#(and (<= 1 (mod (div (div main_~d~0 2) 2) 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= 0 (div (div main_~d~0 2) 2)) (= (mod (div main_~d~0 2) 2) 0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (< (div (div main_~d~0 2) 2) 4294967296))} assume !!(#t~post7 < 5);havoc #t~post7; {20108#(and (<= 1 (mod (div (div main_~d~0 2) 2) 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= 0 (div (div main_~d~0 2) 2)) (= (mod (div main_~d~0 2) 2) 0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (< (div (div main_~d~0 2) 2) 4294967296))} is VALID [2022-04-15 09:27:50,288 INFO L272 TraceCheckUtils]: 68: Hoare triple {20108#(and (<= 1 (mod (div (div main_~d~0 2) 2) 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= 0 (div (div main_~d~0 2) 2)) (= (mod (div main_~d~0 2) 2) 0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (< (div (div main_~d~0 2) 2) 4294967296))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {19957#true} is VALID [2022-04-15 09:27:50,288 INFO L290 TraceCheckUtils]: 69: Hoare triple {19957#true} ~cond := #in~cond; {19957#true} is VALID [2022-04-15 09:27:50,288 INFO L290 TraceCheckUtils]: 70: Hoare triple {19957#true} assume !(0 == ~cond); {19957#true} is VALID [2022-04-15 09:27:50,288 INFO L290 TraceCheckUtils]: 71: Hoare triple {19957#true} assume true; {19957#true} is VALID [2022-04-15 09:27:50,289 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {19957#true} {20108#(and (<= 1 (mod (div (div main_~d~0 2) 2) 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= 0 (div (div main_~d~0 2) 2)) (= (mod (div main_~d~0 2) 2) 0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (< (div (div main_~d~0 2) 2) 4294967296))} #88#return; {20108#(and (<= 1 (mod (div (div main_~d~0 2) 2) 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= 0 (div (div main_~d~0 2) 2)) (= (mod (div main_~d~0 2) 2) 0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (< (div (div main_~d~0 2) 2) 4294967296))} is VALID [2022-04-15 09:27:50,289 INFO L272 TraceCheckUtils]: 73: Hoare triple {20108#(and (<= 1 (mod (div (div main_~d~0 2) 2) 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= 0 (div (div main_~d~0 2) 2)) (= (mod (div main_~d~0 2) 2) 0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (< (div (div main_~d~0 2) 2) 4294967296))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {19957#true} is VALID [2022-04-15 09:27:50,289 INFO L290 TraceCheckUtils]: 74: Hoare triple {19957#true} ~cond := #in~cond; {19957#true} is VALID [2022-04-15 09:27:50,289 INFO L290 TraceCheckUtils]: 75: Hoare triple {19957#true} assume !(0 == ~cond); {19957#true} is VALID [2022-04-15 09:27:50,289 INFO L290 TraceCheckUtils]: 76: Hoare triple {19957#true} assume true; {19957#true} is VALID [2022-04-15 09:27:50,289 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {19957#true} {20108#(and (<= 1 (mod (div (div main_~d~0 2) 2) 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= 0 (div (div main_~d~0 2) 2)) (= (mod (div main_~d~0 2) 2) 0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (< (div (div main_~d~0 2) 2) 4294967296))} #90#return; {20108#(and (<= 1 (mod (div (div main_~d~0 2) 2) 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= 0 (div (div main_~d~0 2) 2)) (= (mod (div main_~d~0 2) 2) 0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (< (div (div main_~d~0 2) 2) 4294967296))} is VALID [2022-04-15 09:27:50,291 INFO L290 TraceCheckUtils]: 78: Hoare triple {20108#(and (<= 1 (mod (div (div main_~d~0 2) 2) 4294967296)) (= (mod main_~A~0 4294967296) main_~r~0) (<= 0 (div (div main_~d~0 2) 2)) (= (mod (div main_~d~0 2) 2) 0) (= (mod main_~d~0 2) 0) (= main_~q~0 0) (= main_~p~0 4) (< (div (div main_~d~0 2) 2) 4294967296))} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {20053#(and (= (mod main_~A~0 4294967296) main_~r~0) (< (div main_~d~0 2) 4294967296) (<= 1 (mod (div main_~d~0 2) 4294967296)) (= main_~p~0 2) (<= 0 (div main_~d~0 2)) (= (mod main_~d~0 2) 0) (= main_~q~0 0))} is VALID [2022-04-15 09:27:50,294 INFO L290 TraceCheckUtils]: 79: Hoare triple {20053#(and (= (mod main_~A~0 4294967296) main_~r~0) (< (div main_~d~0 2) 4294967296) (<= 1 (mod (div main_~d~0 2) 4294967296)) (= main_~p~0 2) (<= 0 (div main_~d~0 2)) (= (mod main_~d~0 2) 0) (= main_~q~0 0))} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {20205#(and (= main_~q~0 main_~p~0) (< (div main_~d~0 2) 4294967296) (<= 1 (mod (div main_~d~0 2) 4294967296)) (= (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296)) main_~r~0) (= main_~p~0 2) (<= 0 (div main_~d~0 2)) (= (mod main_~d~0 2) 0))} is VALID [2022-04-15 09:27:50,294 INFO L290 TraceCheckUtils]: 80: Hoare triple {20205#(and (= main_~q~0 main_~p~0) (< (div main_~d~0 2) 4294967296) (<= 1 (mod (div main_~d~0 2) 4294967296)) (= (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296)) main_~r~0) (= main_~p~0 2) (<= 0 (div main_~d~0 2)) (= (mod main_~d~0 2) 0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20205#(and (= main_~q~0 main_~p~0) (< (div main_~d~0 2) 4294967296) (<= 1 (mod (div main_~d~0 2) 4294967296)) (= (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296)) main_~r~0) (= main_~p~0 2) (<= 0 (div main_~d~0 2)) (= (mod main_~d~0 2) 0))} is VALID [2022-04-15 09:27:50,295 INFO L290 TraceCheckUtils]: 81: Hoare triple {20205#(and (= main_~q~0 main_~p~0) (< (div main_~d~0 2) 4294967296) (<= 1 (mod (div main_~d~0 2) 4294967296)) (= (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296)) main_~r~0) (= main_~p~0 2) (<= 0 (div main_~d~0 2)) (= (mod main_~d~0 2) 0))} assume !!(#t~post7 < 5);havoc #t~post7; {20205#(and (= main_~q~0 main_~p~0) (< (div main_~d~0 2) 4294967296) (<= 1 (mod (div main_~d~0 2) 4294967296)) (= (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296)) main_~r~0) (= main_~p~0 2) (<= 0 (div main_~d~0 2)) (= (mod main_~d~0 2) 0))} is VALID [2022-04-15 09:27:50,295 INFO L272 TraceCheckUtils]: 82: Hoare triple {20205#(and (= main_~q~0 main_~p~0) (< (div main_~d~0 2) 4294967296) (<= 1 (mod (div main_~d~0 2) 4294967296)) (= (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296)) main_~r~0) (= main_~p~0 2) (<= 0 (div main_~d~0 2)) (= (mod main_~d~0 2) 0))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {19957#true} is VALID [2022-04-15 09:27:50,295 INFO L290 TraceCheckUtils]: 83: Hoare triple {19957#true} ~cond := #in~cond; {19957#true} is VALID [2022-04-15 09:27:50,295 INFO L290 TraceCheckUtils]: 84: Hoare triple {19957#true} assume !(0 == ~cond); {19957#true} is VALID [2022-04-15 09:27:50,295 INFO L290 TraceCheckUtils]: 85: Hoare triple {19957#true} assume true; {19957#true} is VALID [2022-04-15 09:27:50,296 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {19957#true} {20205#(and (= main_~q~0 main_~p~0) (< (div main_~d~0 2) 4294967296) (<= 1 (mod (div main_~d~0 2) 4294967296)) (= (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296)) main_~r~0) (= main_~p~0 2) (<= 0 (div main_~d~0 2)) (= (mod main_~d~0 2) 0))} #88#return; {20205#(and (= main_~q~0 main_~p~0) (< (div main_~d~0 2) 4294967296) (<= 1 (mod (div main_~d~0 2) 4294967296)) (= (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296)) main_~r~0) (= main_~p~0 2) (<= 0 (div main_~d~0 2)) (= (mod main_~d~0 2) 0))} is VALID [2022-04-15 09:27:50,296 INFO L272 TraceCheckUtils]: 87: Hoare triple {20205#(and (= main_~q~0 main_~p~0) (< (div main_~d~0 2) 4294967296) (<= 1 (mod (div main_~d~0 2) 4294967296)) (= (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296)) main_~r~0) (= main_~p~0 2) (<= 0 (div main_~d~0 2)) (= (mod main_~d~0 2) 0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {19957#true} is VALID [2022-04-15 09:27:50,296 INFO L290 TraceCheckUtils]: 88: Hoare triple {19957#true} ~cond := #in~cond; {19957#true} is VALID [2022-04-15 09:27:50,296 INFO L290 TraceCheckUtils]: 89: Hoare triple {19957#true} assume !(0 == ~cond); {19957#true} is VALID [2022-04-15 09:27:50,296 INFO L290 TraceCheckUtils]: 90: Hoare triple {19957#true} assume true; {19957#true} is VALID [2022-04-15 09:27:50,296 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {19957#true} {20205#(and (= main_~q~0 main_~p~0) (< (div main_~d~0 2) 4294967296) (<= 1 (mod (div main_~d~0 2) 4294967296)) (= (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296)) main_~r~0) (= main_~p~0 2) (<= 0 (div main_~d~0 2)) (= (mod main_~d~0 2) 0))} #90#return; {20205#(and (= main_~q~0 main_~p~0) (< (div main_~d~0 2) 4294967296) (<= 1 (mod (div main_~d~0 2) 4294967296)) (= (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296)) main_~r~0) (= main_~p~0 2) (<= 0 (div main_~d~0 2)) (= (mod main_~d~0 2) 0))} is VALID [2022-04-15 09:27:50,300 INFO L290 TraceCheckUtils]: 92: Hoare triple {20205#(and (= main_~q~0 main_~p~0) (< (div main_~d~0 2) 4294967296) (<= 1 (mod (div main_~d~0 2) 4294967296)) (= (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296)) main_~r~0) (= main_~p~0 2) (<= 0 (div main_~d~0 2)) (= (mod main_~d~0 2) 0))} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {20245#(and (< (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2) 4294967296) (= main_~q~0 2) (= (mod (+ (mod main_~A~0 4294967296) main_~r~0) 2) 0) (<= 1 (mod (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2) 4294967296)) (= main_~d~0 (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2)) (<= 0 (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2)) (= main_~p~0 1))} is VALID [2022-04-15 09:27:50,303 INFO L290 TraceCheckUtils]: 93: Hoare triple {20245#(and (< (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2) 4294967296) (= main_~q~0 2) (= (mod (+ (mod main_~A~0 4294967296) main_~r~0) 2) 0) (<= 1 (mod (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2) 4294967296)) (= main_~d~0 (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2)) (<= 0 (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2)) (= main_~p~0 1))} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {20249#(and (<= 1 (mod (div (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2) 4294967296)) (= (mod (+ (mod main_~A~0 4294967296) main_~d~0 main_~r~0) 2) 0) (< (div (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2) 4294967296) (= main_~d~0 (div (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2)) (<= 0 (div (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2)) (= (+ (- 2) main_~q~0) 1))} is VALID [2022-04-15 09:27:50,304 INFO L290 TraceCheckUtils]: 94: Hoare triple {20249#(and (<= 1 (mod (div (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2) 4294967296)) (= (mod (+ (mod main_~A~0 4294967296) main_~d~0 main_~r~0) 2) 0) (< (div (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2) 4294967296) (= main_~d~0 (div (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2)) (<= 0 (div (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2)) (= (+ (- 2) main_~q~0) 1))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20249#(and (<= 1 (mod (div (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2) 4294967296)) (= (mod (+ (mod main_~A~0 4294967296) main_~d~0 main_~r~0) 2) 0) (< (div (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2) 4294967296) (= main_~d~0 (div (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2)) (<= 0 (div (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2)) (= (+ (- 2) main_~q~0) 1))} is VALID [2022-04-15 09:27:50,304 INFO L290 TraceCheckUtils]: 95: Hoare triple {20249#(and (<= 1 (mod (div (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2) 4294967296)) (= (mod (+ (mod main_~A~0 4294967296) main_~d~0 main_~r~0) 2) 0) (< (div (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2) 4294967296) (= main_~d~0 (div (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2)) (<= 0 (div (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2)) (= (+ (- 2) main_~q~0) 1))} assume !(#t~post7 < 5);havoc #t~post7; {20249#(and (<= 1 (mod (div (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2) 4294967296)) (= (mod (+ (mod main_~A~0 4294967296) main_~d~0 main_~r~0) 2) 0) (< (div (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2) 4294967296) (= main_~d~0 (div (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2)) (<= 0 (div (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2)) (= (+ (- 2) main_~q~0) 1))} is VALID [2022-04-15 09:27:50,306 INFO L272 TraceCheckUtils]: 96: Hoare triple {20249#(and (<= 1 (mod (div (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2) 4294967296)) (= (mod (+ (mod main_~A~0 4294967296) main_~d~0 main_~r~0) 2) 0) (< (div (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2) 4294967296) (= main_~d~0 (div (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2)) (<= 0 (div (+ (* (- 1) main_~d~0) (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2)) (= (+ (- 2) main_~q~0) 1))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {20259#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:27:50,306 INFO L290 TraceCheckUtils]: 97: Hoare triple {20259#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {20263#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:27:50,307 INFO L290 TraceCheckUtils]: 98: Hoare triple {20263#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {19958#false} is VALID [2022-04-15 09:27:50,307 INFO L290 TraceCheckUtils]: 99: Hoare triple {19958#false} assume !false; {19958#false} is VALID [2022-04-15 09:27:50,307 INFO L134 CoverageAnalysis]: Checked inductivity of 366 backedges. 26 proven. 28 refuted. 0 times theorem prover too weak. 312 trivial. 0 not checked. [2022-04-15 09:27:50,307 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:28:38,344 INFO L290 TraceCheckUtils]: 99: Hoare triple {19958#false} assume !false; {19958#false} is VALID [2022-04-15 09:28:38,345 INFO L290 TraceCheckUtils]: 98: Hoare triple {20263#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {19958#false} is VALID [2022-04-15 09:28:38,345 INFO L290 TraceCheckUtils]: 97: Hoare triple {20259#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {20263#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 09:28:38,346 INFO L272 TraceCheckUtils]: 96: Hoare triple {20279#(= (mod main_~A~0 4294967296) (+ (* main_~d~0 main_~q~0) main_~r~0))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {20259#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 09:28:38,346 INFO L290 TraceCheckUtils]: 95: Hoare triple {20279#(= (mod main_~A~0 4294967296) (+ (* main_~d~0 main_~q~0) main_~r~0))} assume !(#t~post7 < 5);havoc #t~post7; {20279#(= (mod main_~A~0 4294967296) (+ (* main_~d~0 main_~q~0) main_~r~0))} is VALID [2022-04-15 09:28:38,346 INFO L290 TraceCheckUtils]: 94: Hoare triple {20279#(= (mod main_~A~0 4294967296) (+ (* main_~d~0 main_~q~0) main_~r~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20279#(= (mod main_~A~0 4294967296) (+ (* main_~d~0 main_~q~0) main_~r~0))} is VALID [2022-04-15 09:28:38,348 INFO L290 TraceCheckUtils]: 93: Hoare triple {20289#(= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 main_~p~0) main_~d~0) (* (- 1) main_~d~0) main_~r~0))} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {20279#(= (mod main_~A~0 4294967296) (+ (* main_~d~0 main_~q~0) main_~r~0))} is VALID [2022-04-15 09:28:38,369 INFO L290 TraceCheckUtils]: 92: Hoare triple {20293#(and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (div main_~d~0 2)) (* (- 1) (div main_~d~0 2)))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div main_~p~0 2) 1) (div main_~d~0 2)) main_~r~0 (* (- 1) (div main_~d~0 2))))))) (or (and (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (+ (div main_~d~0 2) 1))))) (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)))) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)))} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {20289#(= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 main_~p~0) main_~d~0) (* (- 1) main_~d~0) main_~r~0))} is VALID [2022-04-15 09:28:38,370 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {19957#true} {20293#(and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (div main_~d~0 2)) (* (- 1) (div main_~d~0 2)))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div main_~p~0 2) 1) (div main_~d~0 2)) main_~r~0 (* (- 1) (div main_~d~0 2))))))) (or (and (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (+ (div main_~d~0 2) 1))))) (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)))) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)))} #90#return; {20293#(and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (div main_~d~0 2)) (* (- 1) (div main_~d~0 2)))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div main_~p~0 2) 1) (div main_~d~0 2)) main_~r~0 (* (- 1) (div main_~d~0 2))))))) (or (and (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (+ (div main_~d~0 2) 1))))) (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)))) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)))} is VALID [2022-04-15 09:28:38,370 INFO L290 TraceCheckUtils]: 90: Hoare triple {19957#true} assume true; {19957#true} is VALID [2022-04-15 09:28:38,370 INFO L290 TraceCheckUtils]: 89: Hoare triple {19957#true} assume !(0 == ~cond); {19957#true} is VALID [2022-04-15 09:28:38,370 INFO L290 TraceCheckUtils]: 88: Hoare triple {19957#true} ~cond := #in~cond; {19957#true} is VALID [2022-04-15 09:28:38,371 INFO L272 TraceCheckUtils]: 87: Hoare triple {20293#(and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (div main_~d~0 2)) (* (- 1) (div main_~d~0 2)))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div main_~p~0 2) 1) (div main_~d~0 2)) main_~r~0 (* (- 1) (div main_~d~0 2))))))) (or (and (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (+ (div main_~d~0 2) 1))))) (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)))) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {19957#true} is VALID [2022-04-15 09:28:38,371 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {19957#true} {20293#(and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (div main_~d~0 2)) (* (- 1) (div main_~d~0 2)))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div main_~p~0 2) 1) (div main_~d~0 2)) main_~r~0 (* (- 1) (div main_~d~0 2))))))) (or (and (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (+ (div main_~d~0 2) 1))))) (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)))) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)))} #88#return; {20293#(and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (div main_~d~0 2)) (* (- 1) (div main_~d~0 2)))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div main_~p~0 2) 1) (div main_~d~0 2)) main_~r~0 (* (- 1) (div main_~d~0 2))))))) (or (and (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (+ (div main_~d~0 2) 1))))) (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)))) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)))} is VALID [2022-04-15 09:28:38,371 INFO L290 TraceCheckUtils]: 85: Hoare triple {19957#true} assume true; {19957#true} is VALID [2022-04-15 09:28:38,371 INFO L290 TraceCheckUtils]: 84: Hoare triple {19957#true} assume !(0 == ~cond); {19957#true} is VALID [2022-04-15 09:28:38,371 INFO L290 TraceCheckUtils]: 83: Hoare triple {19957#true} ~cond := #in~cond; {19957#true} is VALID [2022-04-15 09:28:38,371 INFO L272 TraceCheckUtils]: 82: Hoare triple {20293#(and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (div main_~d~0 2)) (* (- 1) (div main_~d~0 2)))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div main_~p~0 2) 1) (div main_~d~0 2)) main_~r~0 (* (- 1) (div main_~d~0 2))))))) (or (and (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (+ (div main_~d~0 2) 1))))) (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)))) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {19957#true} is VALID [2022-04-15 09:28:38,373 INFO L290 TraceCheckUtils]: 81: Hoare triple {20293#(and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (div main_~d~0 2)) (* (- 1) (div main_~d~0 2)))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div main_~p~0 2) 1) (div main_~d~0 2)) main_~r~0 (* (- 1) (div main_~d~0 2))))))) (or (and (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (+ (div main_~d~0 2) 1))))) (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)))) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)))} assume !!(#t~post7 < 5);havoc #t~post7; {20293#(and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (div main_~d~0 2)) (* (- 1) (div main_~d~0 2)))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div main_~p~0 2) 1) (div main_~d~0 2)) main_~r~0 (* (- 1) (div main_~d~0 2))))))) (or (and (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (+ (div main_~d~0 2) 1))))) (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)))) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)))} is VALID [2022-04-15 09:28:38,374 INFO L290 TraceCheckUtils]: 80: Hoare triple {20293#(and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (div main_~d~0 2)) (* (- 1) (div main_~d~0 2)))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div main_~p~0 2) 1) (div main_~d~0 2)) main_~r~0 (* (- 1) (div main_~d~0 2))))))) (or (and (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (+ (div main_~d~0 2) 1))))) (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)))) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20293#(and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (div main_~d~0 2)) (* (- 1) (div main_~d~0 2)))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div main_~p~0 2) 1) (div main_~d~0 2)) main_~r~0 (* (- 1) (div main_~d~0 2))))))) (or (and (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (+ (div main_~d~0 2) 1))))) (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)))) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)))} is VALID [2022-04-15 09:28:38,433 INFO L290 TraceCheckUtils]: 79: Hoare triple {20333#(and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 main_~p~0 (div main_~p~0 2)) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (* (- 1) main_~d~0) main_~r~0 (* (div main_~d~0 2) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)) (* (- 1) (div main_~d~0 2))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2)))))))))} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {20293#(and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (+ main_~q~0 (div main_~p~0 2)) (div main_~d~0 2)) (* (- 1) (div main_~d~0 2)))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div main_~p~0 2) 1) (div main_~d~0 2)) main_~r~0 (* (- 1) (div main_~d~0 2))))))) (or (and (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div main_~p~0 2) 1) (+ (div main_~d~0 2) 1))))) (or (= (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)))) (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0)))} is VALID [2022-04-15 09:28:38,665 INFO L290 TraceCheckUtils]: 78: Hoare triple {20337#(and (or (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1))) (mod main_~A~0 4294967296)) (not (< (div main_~p~0 2) 0))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (div (+ (div main_~d~0 2) 1) 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))) (or (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)))))) (or (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0)))) (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (+ (div main_~d~0 2) 1) 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))) (or (= (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (+ (div main_~d~0 2) 1) 2)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (div main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (div main_~d~0 2) 2) 1)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))))))))) (= (mod main_~p~0 2) 0)))} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {20333#(and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 main_~p~0 (div main_~p~0 2)) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (* (- 1) main_~d~0) main_~r~0 (* (div main_~d~0 2) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)) (* (- 1) (div main_~d~0 2))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2)))))))))} is VALID [2022-04-15 09:28:38,666 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {19957#true} {20337#(and (or (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1))) (mod main_~A~0 4294967296)) (not (< (div main_~p~0 2) 0))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (div (+ (div main_~d~0 2) 1) 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))) (or (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)))))) (or (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0)))) (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (+ (div main_~d~0 2) 1) 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))) (or (= (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (+ (div main_~d~0 2) 1) 2)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (div main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (div main_~d~0 2) 2) 1)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))))))))) (= (mod main_~p~0 2) 0)))} #90#return; {20337#(and (or (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1))) (mod main_~A~0 4294967296)) (not (< (div main_~p~0 2) 0))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (div (+ (div main_~d~0 2) 1) 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))) (or (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)))))) (or (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0)))) (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (+ (div main_~d~0 2) 1) 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))) (or (= (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (+ (div main_~d~0 2) 1) 2)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (div main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (div main_~d~0 2) 2) 1)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))))))))) (= (mod main_~p~0 2) 0)))} is VALID [2022-04-15 09:28:38,666 INFO L290 TraceCheckUtils]: 76: Hoare triple {19957#true} assume true; {19957#true} is VALID [2022-04-15 09:28:38,667 INFO L290 TraceCheckUtils]: 75: Hoare triple {19957#true} assume !(0 == ~cond); {19957#true} is VALID [2022-04-15 09:28:38,667 INFO L290 TraceCheckUtils]: 74: Hoare triple {19957#true} ~cond := #in~cond; {19957#true} is VALID [2022-04-15 09:28:38,667 INFO L272 TraceCheckUtils]: 73: Hoare triple {20337#(and (or (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1))) (mod main_~A~0 4294967296)) (not (< (div main_~p~0 2) 0))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (div (+ (div main_~d~0 2) 1) 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))) (or (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)))))) (or (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0)))) (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (+ (div main_~d~0 2) 1) 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))) (or (= (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (+ (div main_~d~0 2) 1) 2)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (div main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (div main_~d~0 2) 2) 1)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))))))))) (= (mod main_~p~0 2) 0)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {19957#true} is VALID [2022-04-15 09:28:38,668 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {19957#true} {20337#(and (or (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1))) (mod main_~A~0 4294967296)) (not (< (div main_~p~0 2) 0))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (div (+ (div main_~d~0 2) 1) 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))) (or (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)))))) (or (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0)))) (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (+ (div main_~d~0 2) 1) 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))) (or (= (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (+ (div main_~d~0 2) 1) 2)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (div main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (div main_~d~0 2) 2) 1)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))))))))) (= (mod main_~p~0 2) 0)))} #88#return; {20337#(and (or (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1))) (mod main_~A~0 4294967296)) (not (< (div main_~p~0 2) 0))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (div (+ (div main_~d~0 2) 1) 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))) (or (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)))))) (or (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0)))) (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (+ (div main_~d~0 2) 1) 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))) (or (= (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (+ (div main_~d~0 2) 1) 2)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (div main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (div main_~d~0 2) 2) 1)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))))))))) (= (mod main_~p~0 2) 0)))} is VALID [2022-04-15 09:28:38,668 INFO L290 TraceCheckUtils]: 71: Hoare triple {19957#true} assume true; {19957#true} is VALID [2022-04-15 09:28:38,668 INFO L290 TraceCheckUtils]: 70: Hoare triple {19957#true} assume !(0 == ~cond); {19957#true} is VALID [2022-04-15 09:28:38,668 INFO L290 TraceCheckUtils]: 69: Hoare triple {19957#true} ~cond := #in~cond; {19957#true} is VALID [2022-04-15 09:28:38,668 INFO L272 TraceCheckUtils]: 68: Hoare triple {20337#(and (or (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1))) (mod main_~A~0 4294967296)) (not (< (div main_~p~0 2) 0))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (div (+ (div main_~d~0 2) 1) 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))) (or (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)))))) (or (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0)))) (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (+ (div main_~d~0 2) 1) 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))) (or (= (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (+ (div main_~d~0 2) 1) 2)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (div main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (div main_~d~0 2) 2) 1)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))))))))) (= (mod main_~p~0 2) 0)))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {19957#true} is VALID [2022-04-15 09:28:38,674 INFO L290 TraceCheckUtils]: 67: Hoare triple {20337#(and (or (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1))) (mod main_~A~0 4294967296)) (not (< (div main_~p~0 2) 0))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (div (+ (div main_~d~0 2) 1) 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))) (or (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)))))) (or (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0)))) (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (+ (div main_~d~0 2) 1) 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))) (or (= (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (+ (div main_~d~0 2) 1) 2)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (div main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (div main_~d~0 2) 2) 1)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))))))))) (= (mod main_~p~0 2) 0)))} assume !!(#t~post7 < 5);havoc #t~post7; {20337#(and (or (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1))) (mod main_~A~0 4294967296)) (not (< (div main_~p~0 2) 0))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (div (+ (div main_~d~0 2) 1) 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))) (or (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)))))) (or (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0)))) (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (+ (div main_~d~0 2) 1) 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))) (or (= (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (+ (div main_~d~0 2) 1) 2)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (div main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (div main_~d~0 2) 2) 1)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))))))))) (= (mod main_~p~0 2) 0)))} is VALID [2022-04-15 09:28:38,680 INFO L290 TraceCheckUtils]: 66: Hoare triple {20337#(and (or (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1))) (mod main_~A~0 4294967296)) (not (< (div main_~p~0 2) 0))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (div (+ (div main_~d~0 2) 1) 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))) (or (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)))))) (or (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0)))) (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (+ (div main_~d~0 2) 1) 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))) (or (= (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (+ (div main_~d~0 2) 1) 2)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (div main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (div main_~d~0 2) 2) 1)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))))))))) (= (mod main_~p~0 2) 0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20337#(and (or (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1))) (mod main_~A~0 4294967296)) (not (< (div main_~p~0 2) 0))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (div (+ (div main_~d~0 2) 1) 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))) (or (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)))))) (or (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0)))) (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (+ (div main_~d~0 2) 1) 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))) (or (= (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (+ (div main_~d~0 2) 1) 2)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (div main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (div main_~d~0 2) 2) 1)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))))))))) (= (mod main_~p~0 2) 0)))} is VALID [2022-04-15 09:28:38,688 INFO L290 TraceCheckUtils]: 65: Hoare triple {20337#(and (or (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1))) (mod main_~A~0 4294967296)) (not (< (div main_~p~0 2) 0))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (div (+ (div main_~d~0 2) 1) 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))) (or (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)))))) (or (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0)))) (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (+ (div main_~d~0 2) 1) 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))) (or (= (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (+ (div main_~d~0 2) 1) 2)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (div main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (div main_~d~0 2) 2) 1)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))))))))) (= (mod main_~p~0 2) 0)))} assume !(~r~0 >= ~d~0); {20337#(and (or (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1))) (mod main_~A~0 4294967296)) (not (< (div main_~p~0 2) 0))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (div (+ (div main_~d~0 2) 1) 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))) (or (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)))))) (or (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0)))) (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (+ (div main_~d~0 2) 1) 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))) (or (= (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (+ (div main_~d~0 2) 1) 2)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (div main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (div main_~d~0 2) 2) 1)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))))))))) (= (mod main_~p~0 2) 0)))} is VALID [2022-04-15 09:28:38,689 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {19957#true} {20337#(and (or (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1))) (mod main_~A~0 4294967296)) (not (< (div main_~p~0 2) 0))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (div (+ (div main_~d~0 2) 1) 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))) (or (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)))))) (or (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0)))) (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (+ (div main_~d~0 2) 1) 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))) (or (= (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (+ (div main_~d~0 2) 1) 2)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (div main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (div main_~d~0 2) 2) 1)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))))))))) (= (mod main_~p~0 2) 0)))} #86#return; {20337#(and (or (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1))) (mod main_~A~0 4294967296)) (not (< (div main_~p~0 2) 0))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (div (+ (div main_~d~0 2) 1) 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))) (or (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)))))) (or (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0)))) (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (+ (div main_~d~0 2) 1) 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))) (or (= (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (+ (div main_~d~0 2) 1) 2)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (div main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (div main_~d~0 2) 2) 1)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))))))))) (= (mod main_~p~0 2) 0)))} is VALID [2022-04-15 09:28:38,689 INFO L290 TraceCheckUtils]: 63: Hoare triple {19957#true} assume true; {19957#true} is VALID [2022-04-15 09:28:38,689 INFO L290 TraceCheckUtils]: 62: Hoare triple {19957#true} assume !(0 == ~cond); {19957#true} is VALID [2022-04-15 09:28:38,689 INFO L290 TraceCheckUtils]: 61: Hoare triple {19957#true} ~cond := #in~cond; {19957#true} is VALID [2022-04-15 09:28:38,689 INFO L272 TraceCheckUtils]: 60: Hoare triple {20337#(and (or (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1))) (mod main_~A~0 4294967296)) (not (< (div main_~p~0 2) 0))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (div (+ (div main_~d~0 2) 1) 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))) (or (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)))))) (or (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0)))) (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (+ (div main_~d~0 2) 1) 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))) (or (= (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (+ (div main_~d~0 2) 1) 2)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (div main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (div main_~d~0 2) 2) 1)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))))))))) (= (mod main_~p~0 2) 0)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {19957#true} is VALID [2022-04-15 09:28:38,690 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {19957#true} {20337#(and (or (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1))) (mod main_~A~0 4294967296)) (not (< (div main_~p~0 2) 0))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (div (+ (div main_~d~0 2) 1) 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))) (or (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)))))) (or (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0)))) (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (+ (div main_~d~0 2) 1) 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))) (or (= (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (+ (div main_~d~0 2) 1) 2)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (div main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (div main_~d~0 2) 2) 1)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))))))))) (= (mod main_~p~0 2) 0)))} #84#return; {20337#(and (or (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1))) (mod main_~A~0 4294967296)) (not (< (div main_~p~0 2) 0))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (div (+ (div main_~d~0 2) 1) 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))) (or (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)))))) (or (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0)))) (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (+ (div main_~d~0 2) 1) 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))) (or (= (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (+ (div main_~d~0 2) 1) 2)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (div main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (div main_~d~0 2) 2) 1)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))))))))) (= (mod main_~p~0 2) 0)))} is VALID [2022-04-15 09:28:38,690 INFO L290 TraceCheckUtils]: 58: Hoare triple {19957#true} assume true; {19957#true} is VALID [2022-04-15 09:28:38,690 INFO L290 TraceCheckUtils]: 57: Hoare triple {19957#true} assume !(0 == ~cond); {19957#true} is VALID [2022-04-15 09:28:38,690 INFO L290 TraceCheckUtils]: 56: Hoare triple {19957#true} ~cond := #in~cond; {19957#true} is VALID [2022-04-15 09:28:38,691 INFO L272 TraceCheckUtils]: 55: Hoare triple {20337#(and (or (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1))) (mod main_~A~0 4294967296)) (not (< (div main_~p~0 2) 0))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (div (+ (div main_~d~0 2) 1) 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))) (or (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)))))) (or (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0)))) (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (+ (div main_~d~0 2) 1) 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))) (or (= (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (+ (div main_~d~0 2) 1) 2)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (div main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (div main_~d~0 2) 2) 1)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))))))))) (= (mod main_~p~0 2) 0)))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {19957#true} is VALID [2022-04-15 09:28:38,691 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {19957#true} {20337#(and (or (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1))) (mod main_~A~0 4294967296)) (not (< (div main_~p~0 2) 0))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (div (+ (div main_~d~0 2) 1) 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))) (or (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)))))) (or (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0)))) (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (+ (div main_~d~0 2) 1) 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))) (or (= (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (+ (div main_~d~0 2) 1) 2)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (div main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (div main_~d~0 2) 2) 1)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))))))))) (= (mod main_~p~0 2) 0)))} #82#return; {20337#(and (or (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1))) (mod main_~A~0 4294967296)) (not (< (div main_~p~0 2) 0))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (div (+ (div main_~d~0 2) 1) 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))) (or (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)))))) (or (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0)))) (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (+ (div main_~d~0 2) 1) 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))) (or (= (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (+ (div main_~d~0 2) 1) 2)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (div main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (div main_~d~0 2) 2) 1)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))))))))) (= (mod main_~p~0 2) 0)))} is VALID [2022-04-15 09:28:38,691 INFO L290 TraceCheckUtils]: 53: Hoare triple {19957#true} assume true; {19957#true} is VALID [2022-04-15 09:28:38,691 INFO L290 TraceCheckUtils]: 52: Hoare triple {19957#true} assume !(0 == ~cond); {19957#true} is VALID [2022-04-15 09:28:38,692 INFO L290 TraceCheckUtils]: 51: Hoare triple {19957#true} ~cond := #in~cond; {19957#true} is VALID [2022-04-15 09:28:38,692 INFO L272 TraceCheckUtils]: 50: Hoare triple {20337#(and (or (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1))) (mod main_~A~0 4294967296)) (not (< (div main_~p~0 2) 0))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (div (+ (div main_~d~0 2) 1) 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))) (or (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)))))) (or (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0)))) (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (+ (div main_~d~0 2) 1) 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))) (or (= (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (+ (div main_~d~0 2) 1) 2)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (div main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (div main_~d~0 2) 2) 1)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))))))))) (= (mod main_~p~0 2) 0)))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {19957#true} is VALID [2022-04-15 09:28:38,697 INFO L290 TraceCheckUtils]: 49: Hoare triple {20337#(and (or (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1))) (mod main_~A~0 4294967296)) (not (< (div main_~p~0 2) 0))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (div (+ (div main_~d~0 2) 1) 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))) (or (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)))))) (or (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0)))) (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (+ (div main_~d~0 2) 1) 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))) (or (= (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (+ (div main_~d~0 2) 1) 2)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (div main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (div main_~d~0 2) 2) 1)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))))))))) (= (mod main_~p~0 2) 0)))} assume !!(#t~post6 < 5);havoc #t~post6; {20337#(and (or (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1))) (mod main_~A~0 4294967296)) (not (< (div main_~p~0 2) 0))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (div (+ (div main_~d~0 2) 1) 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))) (or (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)))))) (or (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0)))) (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (+ (div main_~d~0 2) 1) 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))) (or (= (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (+ (div main_~d~0 2) 1) 2)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (div main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (div main_~d~0 2) 2) 1)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))))))))) (= (mod main_~p~0 2) 0)))} is VALID [2022-04-15 09:28:38,703 INFO L290 TraceCheckUtils]: 48: Hoare triple {20337#(and (or (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1))) (mod main_~A~0 4294967296)) (not (< (div main_~p~0 2) 0))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (div (+ (div main_~d~0 2) 1) 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))) (or (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)))))) (or (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0)))) (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (+ (div main_~d~0 2) 1) 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))) (or (= (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (+ (div main_~d~0 2) 1) 2)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (div main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (div main_~d~0 2) 2) 1)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))))))))) (= (mod main_~p~0 2) 0)))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20337#(and (or (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1))) (mod main_~A~0 4294967296)) (not (< (div main_~p~0 2) 0))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (div (+ (div main_~d~0 2) 1) 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))) (or (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)))))) (or (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0)))) (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (+ (div main_~d~0 2) 1) 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))) (or (= (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (+ (div main_~d~0 2) 1) 2)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (div main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (div main_~d~0 2) 2) 1)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))))))))) (= (mod main_~p~0 2) 0)))} is VALID [2022-04-15 09:28:38,998 INFO L290 TraceCheckUtils]: 47: Hoare triple {20333#(and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 main_~p~0 (div main_~p~0 2)) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (* (- 1) main_~d~0) main_~r~0 (* (div main_~d~0 2) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)) (* (- 1) (div main_~d~0 2))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2)))))))))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {20337#(and (or (and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod (div main_~p~0 2) 2) 0) (= (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (div (div main_~d~0 2) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1))) (mod main_~A~0 4294967296)) (not (< (div main_~p~0 2) 0))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2))))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0)))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (div (+ (div main_~d~0 2) 1) 2)))) (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))) (or (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)))))) (or (= (mod main_~A~0 4294967296) (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0)))) (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (+ (div main_~d~0 2) 1) 2) 1)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))) (or (= (+ (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)) (* (+ (div (+ (div main_~d~0 2) 1) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (div (+ (div main_~d~0 2) 1) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (+ (div main_~d~0 2) 1) 2)) (- 1) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2)))))) (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (= (mod main_~A~0 4294967296) (+ (* (div (div main_~d~0 2) 2) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (div (div main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))))) (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ (div (div main_~d~0 2) 2) 1) (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2))))) (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (+ (div (div main_~d~0 2) 2) 1)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)))))))))) (= (mod main_~p~0 2) 0)))} is VALID [2022-04-15 09:28:38,999 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {19957#true} {20333#(and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 main_~p~0 (div main_~p~0 2)) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (* (- 1) main_~d~0) main_~r~0 (* (div main_~d~0 2) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)) (* (- 1) (div main_~d~0 2))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2)))))))))} #86#return; {20333#(and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 main_~p~0 (div main_~p~0 2)) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (* (- 1) main_~d~0) main_~r~0 (* (div main_~d~0 2) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)) (* (- 1) (div main_~d~0 2))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2)))))))))} is VALID [2022-04-15 09:28:38,999 INFO L290 TraceCheckUtils]: 45: Hoare triple {19957#true} assume true; {19957#true} is VALID [2022-04-15 09:28:38,999 INFO L290 TraceCheckUtils]: 44: Hoare triple {19957#true} assume !(0 == ~cond); {19957#true} is VALID [2022-04-15 09:28:38,999 INFO L290 TraceCheckUtils]: 43: Hoare triple {19957#true} ~cond := #in~cond; {19957#true} is VALID [2022-04-15 09:28:38,999 INFO L272 TraceCheckUtils]: 42: Hoare triple {20333#(and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 main_~p~0 (div main_~p~0 2)) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (* (- 1) main_~d~0) main_~r~0 (* (div main_~d~0 2) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)) (* (- 1) (div main_~d~0 2))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2)))))))))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {19957#true} is VALID [2022-04-15 09:28:39,000 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {19957#true} {20333#(and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 main_~p~0 (div main_~p~0 2)) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (* (- 1) main_~d~0) main_~r~0 (* (div main_~d~0 2) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)) (* (- 1) (div main_~d~0 2))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2)))))))))} #84#return; {20333#(and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 main_~p~0 (div main_~p~0 2)) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (* (- 1) main_~d~0) main_~r~0 (* (div main_~d~0 2) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)) (* (- 1) (div main_~d~0 2))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2)))))))))} is VALID [2022-04-15 09:28:39,000 INFO L290 TraceCheckUtils]: 40: Hoare triple {19957#true} assume true; {19957#true} is VALID [2022-04-15 09:28:39,000 INFO L290 TraceCheckUtils]: 39: Hoare triple {19957#true} assume !(0 == ~cond); {19957#true} is VALID [2022-04-15 09:28:39,000 INFO L290 TraceCheckUtils]: 38: Hoare triple {19957#true} ~cond := #in~cond; {19957#true} is VALID [2022-04-15 09:28:39,000 INFO L272 TraceCheckUtils]: 37: Hoare triple {20333#(and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 main_~p~0 (div main_~p~0 2)) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (* (- 1) main_~d~0) main_~r~0 (* (div main_~d~0 2) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)) (* (- 1) (div main_~d~0 2))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2)))))))))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {19957#true} is VALID [2022-04-15 09:28:39,000 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {19957#true} {20333#(and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 main_~p~0 (div main_~p~0 2)) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (* (- 1) main_~d~0) main_~r~0 (* (div main_~d~0 2) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)) (* (- 1) (div main_~d~0 2))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2)))))))))} #82#return; {20333#(and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 main_~p~0 (div main_~p~0 2)) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (* (- 1) main_~d~0) main_~r~0 (* (div main_~d~0 2) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)) (* (- 1) (div main_~d~0 2))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2)))))))))} is VALID [2022-04-15 09:28:39,001 INFO L290 TraceCheckUtils]: 35: Hoare triple {19957#true} assume true; {19957#true} is VALID [2022-04-15 09:28:39,001 INFO L290 TraceCheckUtils]: 34: Hoare triple {19957#true} assume !(0 == ~cond); {19957#true} is VALID [2022-04-15 09:28:39,001 INFO L290 TraceCheckUtils]: 33: Hoare triple {19957#true} ~cond := #in~cond; {19957#true} is VALID [2022-04-15 09:28:39,001 INFO L272 TraceCheckUtils]: 32: Hoare triple {20333#(and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 main_~p~0 (div main_~p~0 2)) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (* (- 1) main_~d~0) main_~r~0 (* (div main_~d~0 2) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)) (* (- 1) (div main_~d~0 2))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2)))))))))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {19957#true} is VALID [2022-04-15 09:28:39,002 INFO L290 TraceCheckUtils]: 31: Hoare triple {20333#(and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 main_~p~0 (div main_~p~0 2)) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (* (- 1) main_~d~0) main_~r~0 (* (div main_~d~0 2) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)) (* (- 1) (div main_~d~0 2))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2)))))))))} assume !!(#t~post6 < 5);havoc #t~post6; {20333#(and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 main_~p~0 (div main_~p~0 2)) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (* (- 1) main_~d~0) main_~r~0 (* (div main_~d~0 2) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)) (* (- 1) (div main_~d~0 2))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2)))))))))} is VALID [2022-04-15 09:28:39,003 INFO L290 TraceCheckUtils]: 30: Hoare triple {20333#(and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 main_~p~0 (div main_~p~0 2)) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (* (- 1) main_~d~0) main_~r~0 (* (div main_~d~0 2) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)) (* (- 1) (div main_~d~0 2))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2)))))))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20333#(and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 main_~p~0 (div main_~p~0 2)) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (* (- 1) main_~d~0) main_~r~0 (* (div main_~d~0 2) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)) (* (- 1) (div main_~d~0 2))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2)))))))))} is VALID [2022-04-15 09:28:39,009 INFO L290 TraceCheckUtils]: 29: Hoare triple {20485#(= (+ (mod main_~A~0 4294967296) (* main_~d~0 3)) (+ (* main_~d~0 main_~q~0) main_~r~0 (* 3 (* main_~d~0 main_~p~0))))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {20333#(and (or (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0)) (and (or (= (+ (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 main_~p~0 (div main_~p~0 2)) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (= (mod main_~A~0 4294967296) (+ (* (- 1) main_~d~0) main_~r~0 (* (div main_~d~0 2) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)) (* (- 1) (div main_~d~0 2))))))) (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ (div main_~d~0 2) 1) (+ main_~q~0 main_~p~0 (div main_~p~0 2)))))))))} is VALID [2022-04-15 09:28:39,009 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {19957#true} {20485#(= (+ (mod main_~A~0 4294967296) (* main_~d~0 3)) (+ (* main_~d~0 main_~q~0) main_~r~0 (* 3 (* main_~d~0 main_~p~0))))} #86#return; {20485#(= (+ (mod main_~A~0 4294967296) (* main_~d~0 3)) (+ (* main_~d~0 main_~q~0) main_~r~0 (* 3 (* main_~d~0 main_~p~0))))} is VALID [2022-04-15 09:28:39,010 INFO L290 TraceCheckUtils]: 27: Hoare triple {19957#true} assume true; {19957#true} is VALID [2022-04-15 09:28:39,010 INFO L290 TraceCheckUtils]: 26: Hoare triple {19957#true} assume !(0 == ~cond); {19957#true} is VALID [2022-04-15 09:28:39,010 INFO L290 TraceCheckUtils]: 25: Hoare triple {19957#true} ~cond := #in~cond; {19957#true} is VALID [2022-04-15 09:28:39,010 INFO L272 TraceCheckUtils]: 24: Hoare triple {20485#(= (+ (mod main_~A~0 4294967296) (* main_~d~0 3)) (+ (* main_~d~0 main_~q~0) main_~r~0 (* 3 (* main_~d~0 main_~p~0))))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {19957#true} is VALID [2022-04-15 09:28:39,010 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {19957#true} {20485#(= (+ (mod main_~A~0 4294967296) (* main_~d~0 3)) (+ (* main_~d~0 main_~q~0) main_~r~0 (* 3 (* main_~d~0 main_~p~0))))} #84#return; {20485#(= (+ (mod main_~A~0 4294967296) (* main_~d~0 3)) (+ (* main_~d~0 main_~q~0) main_~r~0 (* 3 (* main_~d~0 main_~p~0))))} is VALID [2022-04-15 09:28:39,010 INFO L290 TraceCheckUtils]: 22: Hoare triple {19957#true} assume true; {19957#true} is VALID [2022-04-15 09:28:39,010 INFO L290 TraceCheckUtils]: 21: Hoare triple {19957#true} assume !(0 == ~cond); {19957#true} is VALID [2022-04-15 09:28:39,010 INFO L290 TraceCheckUtils]: 20: Hoare triple {19957#true} ~cond := #in~cond; {19957#true} is VALID [2022-04-15 09:28:39,010 INFO L272 TraceCheckUtils]: 19: Hoare triple {20485#(= (+ (mod main_~A~0 4294967296) (* main_~d~0 3)) (+ (* main_~d~0 main_~q~0) main_~r~0 (* 3 (* main_~d~0 main_~p~0))))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {19957#true} is VALID [2022-04-15 09:28:39,011 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {19957#true} {20485#(= (+ (mod main_~A~0 4294967296) (* main_~d~0 3)) (+ (* main_~d~0 main_~q~0) main_~r~0 (* 3 (* main_~d~0 main_~p~0))))} #82#return; {20485#(= (+ (mod main_~A~0 4294967296) (* main_~d~0 3)) (+ (* main_~d~0 main_~q~0) main_~r~0 (* 3 (* main_~d~0 main_~p~0))))} is VALID [2022-04-15 09:28:39,011 INFO L290 TraceCheckUtils]: 17: Hoare triple {19957#true} assume true; {19957#true} is VALID [2022-04-15 09:28:39,011 INFO L290 TraceCheckUtils]: 16: Hoare triple {19957#true} assume !(0 == ~cond); {19957#true} is VALID [2022-04-15 09:28:39,011 INFO L290 TraceCheckUtils]: 15: Hoare triple {19957#true} ~cond := #in~cond; {19957#true} is VALID [2022-04-15 09:28:39,011 INFO L272 TraceCheckUtils]: 14: Hoare triple {20485#(= (+ (mod main_~A~0 4294967296) (* main_~d~0 3)) (+ (* main_~d~0 main_~q~0) main_~r~0 (* 3 (* main_~d~0 main_~p~0))))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {19957#true} is VALID [2022-04-15 09:28:39,012 INFO L290 TraceCheckUtils]: 13: Hoare triple {20485#(= (+ (mod main_~A~0 4294967296) (* main_~d~0 3)) (+ (* main_~d~0 main_~q~0) main_~r~0 (* 3 (* main_~d~0 main_~p~0))))} assume !!(#t~post6 < 5);havoc #t~post6; {20485#(= (+ (mod main_~A~0 4294967296) (* main_~d~0 3)) (+ (* main_~d~0 main_~q~0) main_~r~0 (* 3 (* main_~d~0 main_~p~0))))} is VALID [2022-04-15 09:28:39,013 INFO L290 TraceCheckUtils]: 12: Hoare triple {20485#(= (+ (mod main_~A~0 4294967296) (* main_~d~0 3)) (+ (* main_~d~0 main_~q~0) main_~r~0 (* 3 (* main_~d~0 main_~p~0))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20485#(= (+ (mod main_~A~0 4294967296) (* main_~d~0 3)) (+ (* main_~d~0 main_~q~0) main_~r~0 (* 3 (* main_~d~0 main_~p~0))))} is VALID [2022-04-15 09:28:39,014 INFO L290 TraceCheckUtils]: 11: Hoare triple {19957#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {20485#(= (+ (mod main_~A~0 4294967296) (* main_~d~0 3)) (+ (* main_~d~0 main_~q~0) main_~r~0 (* 3 (* main_~d~0 main_~p~0))))} is VALID [2022-04-15 09:28:39,014 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {19957#true} {19957#true} #80#return; {19957#true} is VALID [2022-04-15 09:28:39,014 INFO L290 TraceCheckUtils]: 9: Hoare triple {19957#true} assume true; {19957#true} is VALID [2022-04-15 09:28:39,014 INFO L290 TraceCheckUtils]: 8: Hoare triple {19957#true} assume !(0 == ~cond); {19957#true} is VALID [2022-04-15 09:28:39,014 INFO L290 TraceCheckUtils]: 7: Hoare triple {19957#true} ~cond := #in~cond; {19957#true} is VALID [2022-04-15 09:28:39,014 INFO L272 TraceCheckUtils]: 6: Hoare triple {19957#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {19957#true} is VALID [2022-04-15 09:28:39,014 INFO L290 TraceCheckUtils]: 5: Hoare triple {19957#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {19957#true} is VALID [2022-04-15 09:28:39,014 INFO L272 TraceCheckUtils]: 4: Hoare triple {19957#true} call #t~ret8 := main(); {19957#true} is VALID [2022-04-15 09:28:39,014 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {19957#true} {19957#true} #96#return; {19957#true} is VALID [2022-04-15 09:28:39,014 INFO L290 TraceCheckUtils]: 2: Hoare triple {19957#true} assume true; {19957#true} is VALID [2022-04-15 09:28:39,015 INFO L290 TraceCheckUtils]: 1: Hoare triple {19957#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);~counter~0 := 0; {19957#true} is VALID [2022-04-15 09:28:39,015 INFO L272 TraceCheckUtils]: 0: Hoare triple {19957#true} call ULTIMATE.init(); {19957#true} is VALID [2022-04-15 09:28:39,016 INFO L134 CoverageAnalysis]: Checked inductivity of 366 backedges. 26 proven. 28 refuted. 0 times theorem prover too weak. 312 trivial. 0 not checked. [2022-04-15 09:28:39,016 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:28:39,016 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [426484577] [2022-04-15 09:28:39,016 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:28:39,016 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1577108521] [2022-04-15 09:28:39,016 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1577108521] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:28:39,016 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:28:39,016 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 10] total 19 [2022-04-15 09:28:39,016 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:28:39,017 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [40016551] [2022-04-15 09:28:39,017 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [40016551] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:28:39,017 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:28:39,017 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [13] imperfect sequences [] total 13 [2022-04-15 09:28:39,017 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1233744876] [2022-04-15 09:28:39,017 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:28:39,017 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 11 states have internal predecessors, (32), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 6 states have call predecessors, (15), 5 states have call successors, (15) Word has length 100 [2022-04-15 09:28:39,017 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:28:39,017 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 13 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 11 states have internal predecessors, (32), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 6 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-15 09:28:39,412 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:28:39,412 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 13 states [2022-04-15 09:28:39,412 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:28:39,412 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 13 interpolants. [2022-04-15 09:28:39,413 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=49, Invalid=293, Unknown=0, NotChecked=0, Total=342 [2022-04-15 09:28:39,413 INFO L87 Difference]: Start difference. First operand 207 states and 245 transitions. Second operand has 13 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 11 states have internal predecessors, (32), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 6 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-15 09:28:49,623 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:28:49,623 INFO L93 Difference]: Finished difference Result 221 states and 258 transitions. [2022-04-15 09:28:49,623 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-15 09:28:49,624 INFO L78 Accepts]: Start accepts. Automaton has has 13 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 11 states have internal predecessors, (32), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 6 states have call predecessors, (15), 5 states have call successors, (15) Word has length 100 [2022-04-15 09:28:49,624 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:28:49,624 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 11 states have internal predecessors, (32), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 6 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-15 09:28:49,625 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 119 transitions. [2022-04-15 09:28:49,625 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 13 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 11 states have internal predecessors, (32), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 6 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-15 09:28:49,626 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 119 transitions. [2022-04-15 09:28:49,627 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 119 transitions. [2022-04-15 09:28:50,116 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 119 edges. 119 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:28:50,119 INFO L225 Difference]: With dead ends: 221 [2022-04-15 09:28:50,119 INFO L226 Difference]: Without dead ends: 206 [2022-04-15 09:28:50,120 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 207 GetRequests, 179 SyntacticMatches, 3 SemanticMatches, 25 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 44 ImplicationChecksByTransitivity, 8.5s TimeCoverageRelationStatistics Valid=95, Invalid=607, Unknown=0, NotChecked=0, Total=702 [2022-04-15 09:28:50,120 INFO L913 BasicCegarLoop]: 71 mSDtfsCounter, 48 mSDsluCounter, 399 mSDsCounter, 0 mSdLazyCounter, 574 mSolverCounterSat, 44 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 5.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 54 SdHoareTripleChecker+Valid, 470 SdHoareTripleChecker+Invalid, 618 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 44 IncrementalHoareTripleChecker+Valid, 574 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 5.7s IncrementalHoareTripleChecker+Time [2022-04-15 09:28:50,120 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [54 Valid, 470 Invalid, 618 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [44 Valid, 574 Invalid, 0 Unknown, 0 Unchecked, 5.7s Time] [2022-04-15 09:28:50,120 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 206 states. [2022-04-15 09:28:50,379 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 206 to 205. [2022-04-15 09:28:50,379 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:28:50,380 INFO L82 GeneralOperation]: Start isEquivalent. First operand 206 states. Second operand has 205 states, 136 states have (on average 1.1470588235294117) internal successors, (156), 144 states have internal predecessors, (156), 42 states have call successors, (42), 27 states have call predecessors, (42), 26 states have return successors, (38), 33 states have call predecessors, (38), 38 states have call successors, (38) [2022-04-15 09:28:50,380 INFO L74 IsIncluded]: Start isIncluded. First operand 206 states. Second operand has 205 states, 136 states have (on average 1.1470588235294117) internal successors, (156), 144 states have internal predecessors, (156), 42 states have call successors, (42), 27 states have call predecessors, (42), 26 states have return successors, (38), 33 states have call predecessors, (38), 38 states have call successors, (38) [2022-04-15 09:28:50,380 INFO L87 Difference]: Start difference. First operand 206 states. Second operand has 205 states, 136 states have (on average 1.1470588235294117) internal successors, (156), 144 states have internal predecessors, (156), 42 states have call successors, (42), 27 states have call predecessors, (42), 26 states have return successors, (38), 33 states have call predecessors, (38), 38 states have call successors, (38) [2022-04-15 09:28:50,383 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:28:50,383 INFO L93 Difference]: Finished difference Result 206 states and 237 transitions. [2022-04-15 09:28:50,384 INFO L276 IsEmpty]: Start isEmpty. Operand 206 states and 237 transitions. [2022-04-15 09:28:50,384 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:28:50,384 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:28:50,384 INFO L74 IsIncluded]: Start isIncluded. First operand has 205 states, 136 states have (on average 1.1470588235294117) internal successors, (156), 144 states have internal predecessors, (156), 42 states have call successors, (42), 27 states have call predecessors, (42), 26 states have return successors, (38), 33 states have call predecessors, (38), 38 states have call successors, (38) Second operand 206 states. [2022-04-15 09:28:50,385 INFO L87 Difference]: Start difference. First operand has 205 states, 136 states have (on average 1.1470588235294117) internal successors, (156), 144 states have internal predecessors, (156), 42 states have call successors, (42), 27 states have call predecessors, (42), 26 states have return successors, (38), 33 states have call predecessors, (38), 38 states have call successors, (38) Second operand 206 states. [2022-04-15 09:28:50,387 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:28:50,387 INFO L93 Difference]: Finished difference Result 206 states and 237 transitions. [2022-04-15 09:28:50,387 INFO L276 IsEmpty]: Start isEmpty. Operand 206 states and 237 transitions. [2022-04-15 09:28:50,388 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:28:50,388 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:28:50,388 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:28:50,388 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:28:50,388 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 205 states, 136 states have (on average 1.1470588235294117) internal successors, (156), 144 states have internal predecessors, (156), 42 states have call successors, (42), 27 states have call predecessors, (42), 26 states have return successors, (38), 33 states have call predecessors, (38), 38 states have call successors, (38) [2022-04-15 09:28:50,391 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 205 states to 205 states and 236 transitions. [2022-04-15 09:28:50,391 INFO L78 Accepts]: Start accepts. Automaton has 205 states and 236 transitions. Word has length 100 [2022-04-15 09:28:50,392 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:28:50,392 INFO L478 AbstractCegarLoop]: Abstraction has 205 states and 236 transitions. [2022-04-15 09:28:50,392 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 13 states, 13 states have (on average 2.4615384615384617) internal successors, (32), 11 states have internal predecessors, (32), 6 states have call successors, (17), 2 states have call predecessors, (17), 2 states have return successors, (15), 6 states have call predecessors, (15), 5 states have call successors, (15) [2022-04-15 09:28:50,392 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 205 states and 236 transitions. [2022-04-15 09:28:52,870 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 236 edges. 235 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 09:28:52,871 INFO L276 IsEmpty]: Start isEmpty. Operand 205 states and 236 transitions. [2022-04-15 09:28:52,871 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 101 [2022-04-15 09:28:52,871 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:28:52,871 INFO L499 BasicCegarLoop]: trace histogram [14, 13, 13, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:28:52,890 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 09:28:53,072 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 09:28:53,072 INFO L403 AbstractCegarLoop]: === Iteration 22 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:28:53,072 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:28:53,072 INFO L85 PathProgramCache]: Analyzing trace with hash -543991253, now seen corresponding path program 9 times [2022-04-15 09:28:53,072 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:28:53,073 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1277019878] [2022-04-15 09:29:02,113 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:29:02,113 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:29:02,113 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:29:02,114 INFO L85 PathProgramCache]: Analyzing trace with hash -543991253, now seen corresponding path program 10 times [2022-04-15 09:29:02,114 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:29:02,114 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2052493457] [2022-04-15 09:29:02,114 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:29:02,114 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:29:02,123 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:29:02,123 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [899536278] [2022-04-15 09:29:02,124 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-15 09:29:02,124 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:29:02,124 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:29:02,125 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 09:29:02,125 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 09:29:02,178 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-15 09:29:02,178 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:29:02,179 INFO L263 TraceCheckSpWp]: Trace formula consists of 255 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-15 09:29:02,196 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:29:02,198 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:29:02,656 INFO L272 TraceCheckUtils]: 0: Hoare triple {21855#true} call ULTIMATE.init(); {21855#true} is VALID [2022-04-15 09:29:02,656 INFO L290 TraceCheckUtils]: 1: Hoare triple {21855#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);~counter~0 := 0; {21863#(<= 0 ~counter~0)} is VALID [2022-04-15 09:29:02,657 INFO L290 TraceCheckUtils]: 2: Hoare triple {21863#(<= 0 ~counter~0)} assume true; {21863#(<= 0 ~counter~0)} is VALID [2022-04-15 09:29:02,657 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21863#(<= 0 ~counter~0)} {21855#true} #96#return; {21863#(<= 0 ~counter~0)} is VALID [2022-04-15 09:29:02,657 INFO L272 TraceCheckUtils]: 4: Hoare triple {21863#(<= 0 ~counter~0)} call #t~ret8 := main(); {21863#(<= 0 ~counter~0)} is VALID [2022-04-15 09:29:02,658 INFO L290 TraceCheckUtils]: 5: Hoare triple {21863#(<= 0 ~counter~0)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {21863#(<= 0 ~counter~0)} is VALID [2022-04-15 09:29:02,658 INFO L272 TraceCheckUtils]: 6: Hoare triple {21863#(<= 0 ~counter~0)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {21863#(<= 0 ~counter~0)} is VALID [2022-04-15 09:29:02,658 INFO L290 TraceCheckUtils]: 7: Hoare triple {21863#(<= 0 ~counter~0)} ~cond := #in~cond; {21863#(<= 0 ~counter~0)} is VALID [2022-04-15 09:29:02,658 INFO L290 TraceCheckUtils]: 8: Hoare triple {21863#(<= 0 ~counter~0)} assume !(0 == ~cond); {21863#(<= 0 ~counter~0)} is VALID [2022-04-15 09:29:02,659 INFO L290 TraceCheckUtils]: 9: Hoare triple {21863#(<= 0 ~counter~0)} assume true; {21863#(<= 0 ~counter~0)} is VALID [2022-04-15 09:29:02,659 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {21863#(<= 0 ~counter~0)} {21863#(<= 0 ~counter~0)} #80#return; {21863#(<= 0 ~counter~0)} is VALID [2022-04-15 09:29:02,659 INFO L290 TraceCheckUtils]: 11: Hoare triple {21863#(<= 0 ~counter~0)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {21863#(<= 0 ~counter~0)} is VALID [2022-04-15 09:29:02,660 INFO L290 TraceCheckUtils]: 12: Hoare triple {21863#(<= 0 ~counter~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21897#(<= 1 ~counter~0)} is VALID [2022-04-15 09:29:02,660 INFO L290 TraceCheckUtils]: 13: Hoare triple {21897#(<= 1 ~counter~0)} assume !!(#t~post6 < 5);havoc #t~post6; {21897#(<= 1 ~counter~0)} is VALID [2022-04-15 09:29:02,661 INFO L272 TraceCheckUtils]: 14: Hoare triple {21897#(<= 1 ~counter~0)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {21897#(<= 1 ~counter~0)} is VALID [2022-04-15 09:29:02,661 INFO L290 TraceCheckUtils]: 15: Hoare triple {21897#(<= 1 ~counter~0)} ~cond := #in~cond; {21897#(<= 1 ~counter~0)} is VALID [2022-04-15 09:29:02,661 INFO L290 TraceCheckUtils]: 16: Hoare triple {21897#(<= 1 ~counter~0)} assume !(0 == ~cond); {21897#(<= 1 ~counter~0)} is VALID [2022-04-15 09:29:02,661 INFO L290 TraceCheckUtils]: 17: Hoare triple {21897#(<= 1 ~counter~0)} assume true; {21897#(<= 1 ~counter~0)} is VALID [2022-04-15 09:29:02,662 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {21897#(<= 1 ~counter~0)} {21897#(<= 1 ~counter~0)} #82#return; {21897#(<= 1 ~counter~0)} is VALID [2022-04-15 09:29:02,662 INFO L272 TraceCheckUtils]: 19: Hoare triple {21897#(<= 1 ~counter~0)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {21897#(<= 1 ~counter~0)} is VALID [2022-04-15 09:29:02,662 INFO L290 TraceCheckUtils]: 20: Hoare triple {21897#(<= 1 ~counter~0)} ~cond := #in~cond; {21897#(<= 1 ~counter~0)} is VALID [2022-04-15 09:29:02,663 INFO L290 TraceCheckUtils]: 21: Hoare triple {21897#(<= 1 ~counter~0)} assume !(0 == ~cond); {21897#(<= 1 ~counter~0)} is VALID [2022-04-15 09:29:02,663 INFO L290 TraceCheckUtils]: 22: Hoare triple {21897#(<= 1 ~counter~0)} assume true; {21897#(<= 1 ~counter~0)} is VALID [2022-04-15 09:29:02,663 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {21897#(<= 1 ~counter~0)} {21897#(<= 1 ~counter~0)} #84#return; {21897#(<= 1 ~counter~0)} is VALID [2022-04-15 09:29:02,664 INFO L272 TraceCheckUtils]: 24: Hoare triple {21897#(<= 1 ~counter~0)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {21897#(<= 1 ~counter~0)} is VALID [2022-04-15 09:29:02,664 INFO L290 TraceCheckUtils]: 25: Hoare triple {21897#(<= 1 ~counter~0)} ~cond := #in~cond; {21897#(<= 1 ~counter~0)} is VALID [2022-04-15 09:29:02,664 INFO L290 TraceCheckUtils]: 26: Hoare triple {21897#(<= 1 ~counter~0)} assume !(0 == ~cond); {21897#(<= 1 ~counter~0)} is VALID [2022-04-15 09:29:02,664 INFO L290 TraceCheckUtils]: 27: Hoare triple {21897#(<= 1 ~counter~0)} assume true; {21897#(<= 1 ~counter~0)} is VALID [2022-04-15 09:29:02,665 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {21897#(<= 1 ~counter~0)} {21897#(<= 1 ~counter~0)} #86#return; {21897#(<= 1 ~counter~0)} is VALID [2022-04-15 09:29:02,665 INFO L290 TraceCheckUtils]: 29: Hoare triple {21897#(<= 1 ~counter~0)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {21897#(<= 1 ~counter~0)} is VALID [2022-04-15 09:29:02,666 INFO L290 TraceCheckUtils]: 30: Hoare triple {21897#(<= 1 ~counter~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21952#(<= 2 ~counter~0)} is VALID [2022-04-15 09:29:02,666 INFO L290 TraceCheckUtils]: 31: Hoare triple {21952#(<= 2 ~counter~0)} assume !!(#t~post6 < 5);havoc #t~post6; {21952#(<= 2 ~counter~0)} is VALID [2022-04-15 09:29:02,666 INFO L272 TraceCheckUtils]: 32: Hoare triple {21952#(<= 2 ~counter~0)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {21952#(<= 2 ~counter~0)} is VALID [2022-04-15 09:29:02,667 INFO L290 TraceCheckUtils]: 33: Hoare triple {21952#(<= 2 ~counter~0)} ~cond := #in~cond; {21952#(<= 2 ~counter~0)} is VALID [2022-04-15 09:29:02,667 INFO L290 TraceCheckUtils]: 34: Hoare triple {21952#(<= 2 ~counter~0)} assume !(0 == ~cond); {21952#(<= 2 ~counter~0)} is VALID [2022-04-15 09:29:02,667 INFO L290 TraceCheckUtils]: 35: Hoare triple {21952#(<= 2 ~counter~0)} assume true; {21952#(<= 2 ~counter~0)} is VALID [2022-04-15 09:29:02,667 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {21952#(<= 2 ~counter~0)} {21952#(<= 2 ~counter~0)} #82#return; {21952#(<= 2 ~counter~0)} is VALID [2022-04-15 09:29:02,668 INFO L272 TraceCheckUtils]: 37: Hoare triple {21952#(<= 2 ~counter~0)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {21952#(<= 2 ~counter~0)} is VALID [2022-04-15 09:29:02,668 INFO L290 TraceCheckUtils]: 38: Hoare triple {21952#(<= 2 ~counter~0)} ~cond := #in~cond; {21952#(<= 2 ~counter~0)} is VALID [2022-04-15 09:29:02,668 INFO L290 TraceCheckUtils]: 39: Hoare triple {21952#(<= 2 ~counter~0)} assume !(0 == ~cond); {21952#(<= 2 ~counter~0)} is VALID [2022-04-15 09:29:02,669 INFO L290 TraceCheckUtils]: 40: Hoare triple {21952#(<= 2 ~counter~0)} assume true; {21952#(<= 2 ~counter~0)} is VALID [2022-04-15 09:29:02,669 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {21952#(<= 2 ~counter~0)} {21952#(<= 2 ~counter~0)} #84#return; {21952#(<= 2 ~counter~0)} is VALID [2022-04-15 09:29:02,669 INFO L272 TraceCheckUtils]: 42: Hoare triple {21952#(<= 2 ~counter~0)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {21952#(<= 2 ~counter~0)} is VALID [2022-04-15 09:29:02,670 INFO L290 TraceCheckUtils]: 43: Hoare triple {21952#(<= 2 ~counter~0)} ~cond := #in~cond; {21952#(<= 2 ~counter~0)} is VALID [2022-04-15 09:29:02,670 INFO L290 TraceCheckUtils]: 44: Hoare triple {21952#(<= 2 ~counter~0)} assume !(0 == ~cond); {21952#(<= 2 ~counter~0)} is VALID [2022-04-15 09:29:02,670 INFO L290 TraceCheckUtils]: 45: Hoare triple {21952#(<= 2 ~counter~0)} assume true; {21952#(<= 2 ~counter~0)} is VALID [2022-04-15 09:29:02,671 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {21952#(<= 2 ~counter~0)} {21952#(<= 2 ~counter~0)} #86#return; {21952#(<= 2 ~counter~0)} is VALID [2022-04-15 09:29:02,671 INFO L290 TraceCheckUtils]: 47: Hoare triple {21952#(<= 2 ~counter~0)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {21952#(<= 2 ~counter~0)} is VALID [2022-04-15 09:29:02,672 INFO L290 TraceCheckUtils]: 48: Hoare triple {21952#(<= 2 ~counter~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22007#(<= 3 ~counter~0)} is VALID [2022-04-15 09:29:02,672 INFO L290 TraceCheckUtils]: 49: Hoare triple {22007#(<= 3 ~counter~0)} assume !!(#t~post6 < 5);havoc #t~post6; {22007#(<= 3 ~counter~0)} is VALID [2022-04-15 09:29:02,672 INFO L272 TraceCheckUtils]: 50: Hoare triple {22007#(<= 3 ~counter~0)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {22007#(<= 3 ~counter~0)} is VALID [2022-04-15 09:29:02,672 INFO L290 TraceCheckUtils]: 51: Hoare triple {22007#(<= 3 ~counter~0)} ~cond := #in~cond; {22007#(<= 3 ~counter~0)} is VALID [2022-04-15 09:29:02,673 INFO L290 TraceCheckUtils]: 52: Hoare triple {22007#(<= 3 ~counter~0)} assume !(0 == ~cond); {22007#(<= 3 ~counter~0)} is VALID [2022-04-15 09:29:02,673 INFO L290 TraceCheckUtils]: 53: Hoare triple {22007#(<= 3 ~counter~0)} assume true; {22007#(<= 3 ~counter~0)} is VALID [2022-04-15 09:29:02,673 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {22007#(<= 3 ~counter~0)} {22007#(<= 3 ~counter~0)} #82#return; {22007#(<= 3 ~counter~0)} is VALID [2022-04-15 09:29:02,674 INFO L272 TraceCheckUtils]: 55: Hoare triple {22007#(<= 3 ~counter~0)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {22007#(<= 3 ~counter~0)} is VALID [2022-04-15 09:29:02,674 INFO L290 TraceCheckUtils]: 56: Hoare triple {22007#(<= 3 ~counter~0)} ~cond := #in~cond; {22007#(<= 3 ~counter~0)} is VALID [2022-04-15 09:29:02,674 INFO L290 TraceCheckUtils]: 57: Hoare triple {22007#(<= 3 ~counter~0)} assume !(0 == ~cond); {22007#(<= 3 ~counter~0)} is VALID [2022-04-15 09:29:02,674 INFO L290 TraceCheckUtils]: 58: Hoare triple {22007#(<= 3 ~counter~0)} assume true; {22007#(<= 3 ~counter~0)} is VALID [2022-04-15 09:29:02,675 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {22007#(<= 3 ~counter~0)} {22007#(<= 3 ~counter~0)} #84#return; {22007#(<= 3 ~counter~0)} is VALID [2022-04-15 09:29:02,675 INFO L272 TraceCheckUtils]: 60: Hoare triple {22007#(<= 3 ~counter~0)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {22007#(<= 3 ~counter~0)} is VALID [2022-04-15 09:29:02,675 INFO L290 TraceCheckUtils]: 61: Hoare triple {22007#(<= 3 ~counter~0)} ~cond := #in~cond; {22007#(<= 3 ~counter~0)} is VALID [2022-04-15 09:29:02,676 INFO L290 TraceCheckUtils]: 62: Hoare triple {22007#(<= 3 ~counter~0)} assume !(0 == ~cond); {22007#(<= 3 ~counter~0)} is VALID [2022-04-15 09:29:02,676 INFO L290 TraceCheckUtils]: 63: Hoare triple {22007#(<= 3 ~counter~0)} assume true; {22007#(<= 3 ~counter~0)} is VALID [2022-04-15 09:29:02,676 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {22007#(<= 3 ~counter~0)} {22007#(<= 3 ~counter~0)} #86#return; {22007#(<= 3 ~counter~0)} is VALID [2022-04-15 09:29:02,677 INFO L290 TraceCheckUtils]: 65: Hoare triple {22007#(<= 3 ~counter~0)} assume !(~r~0 >= ~d~0); {22007#(<= 3 ~counter~0)} is VALID [2022-04-15 09:29:02,677 INFO L290 TraceCheckUtils]: 66: Hoare triple {22007#(<= 3 ~counter~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22062#(<= 4 ~counter~0)} is VALID [2022-04-15 09:29:02,678 INFO L290 TraceCheckUtils]: 67: Hoare triple {22062#(<= 4 ~counter~0)} assume !!(#t~post7 < 5);havoc #t~post7; {22062#(<= 4 ~counter~0)} is VALID [2022-04-15 09:29:02,678 INFO L272 TraceCheckUtils]: 68: Hoare triple {22062#(<= 4 ~counter~0)} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {22062#(<= 4 ~counter~0)} is VALID [2022-04-15 09:29:02,678 INFO L290 TraceCheckUtils]: 69: Hoare triple {22062#(<= 4 ~counter~0)} ~cond := #in~cond; {22062#(<= 4 ~counter~0)} is VALID [2022-04-15 09:29:02,679 INFO L290 TraceCheckUtils]: 70: Hoare triple {22062#(<= 4 ~counter~0)} assume !(0 == ~cond); {22062#(<= 4 ~counter~0)} is VALID [2022-04-15 09:29:02,679 INFO L290 TraceCheckUtils]: 71: Hoare triple {22062#(<= 4 ~counter~0)} assume true; {22062#(<= 4 ~counter~0)} is VALID [2022-04-15 09:29:02,680 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {22062#(<= 4 ~counter~0)} {22062#(<= 4 ~counter~0)} #88#return; {22062#(<= 4 ~counter~0)} is VALID [2022-04-15 09:29:02,680 INFO L272 TraceCheckUtils]: 73: Hoare triple {22062#(<= 4 ~counter~0)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {22062#(<= 4 ~counter~0)} is VALID [2022-04-15 09:29:02,680 INFO L290 TraceCheckUtils]: 74: Hoare triple {22062#(<= 4 ~counter~0)} ~cond := #in~cond; {22062#(<= 4 ~counter~0)} is VALID [2022-04-15 09:29:02,681 INFO L290 TraceCheckUtils]: 75: Hoare triple {22062#(<= 4 ~counter~0)} assume !(0 == ~cond); {22062#(<= 4 ~counter~0)} is VALID [2022-04-15 09:29:02,681 INFO L290 TraceCheckUtils]: 76: Hoare triple {22062#(<= 4 ~counter~0)} assume true; {22062#(<= 4 ~counter~0)} is VALID [2022-04-15 09:29:02,681 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {22062#(<= 4 ~counter~0)} {22062#(<= 4 ~counter~0)} #90#return; {22062#(<= 4 ~counter~0)} is VALID [2022-04-15 09:29:02,682 INFO L290 TraceCheckUtils]: 78: Hoare triple {22062#(<= 4 ~counter~0)} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {22062#(<= 4 ~counter~0)} is VALID [2022-04-15 09:29:02,682 INFO L290 TraceCheckUtils]: 79: Hoare triple {22062#(<= 4 ~counter~0)} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {22062#(<= 4 ~counter~0)} is VALID [2022-04-15 09:29:02,683 INFO L290 TraceCheckUtils]: 80: Hoare triple {22062#(<= 4 ~counter~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22105#(<= 5 ~counter~0)} is VALID [2022-04-15 09:29:02,683 INFO L290 TraceCheckUtils]: 81: Hoare triple {22105#(<= 5 ~counter~0)} assume !!(#t~post7 < 5);havoc #t~post7; {22105#(<= 5 ~counter~0)} is VALID [2022-04-15 09:29:02,683 INFO L272 TraceCheckUtils]: 82: Hoare triple {22105#(<= 5 ~counter~0)} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {22105#(<= 5 ~counter~0)} is VALID [2022-04-15 09:29:02,684 INFO L290 TraceCheckUtils]: 83: Hoare triple {22105#(<= 5 ~counter~0)} ~cond := #in~cond; {22105#(<= 5 ~counter~0)} is VALID [2022-04-15 09:29:02,684 INFO L290 TraceCheckUtils]: 84: Hoare triple {22105#(<= 5 ~counter~0)} assume !(0 == ~cond); {22105#(<= 5 ~counter~0)} is VALID [2022-04-15 09:29:02,684 INFO L290 TraceCheckUtils]: 85: Hoare triple {22105#(<= 5 ~counter~0)} assume true; {22105#(<= 5 ~counter~0)} is VALID [2022-04-15 09:29:02,684 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {22105#(<= 5 ~counter~0)} {22105#(<= 5 ~counter~0)} #88#return; {22105#(<= 5 ~counter~0)} is VALID [2022-04-15 09:29:02,685 INFO L272 TraceCheckUtils]: 87: Hoare triple {22105#(<= 5 ~counter~0)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {22105#(<= 5 ~counter~0)} is VALID [2022-04-15 09:29:02,685 INFO L290 TraceCheckUtils]: 88: Hoare triple {22105#(<= 5 ~counter~0)} ~cond := #in~cond; {22105#(<= 5 ~counter~0)} is VALID [2022-04-15 09:29:02,685 INFO L290 TraceCheckUtils]: 89: Hoare triple {22105#(<= 5 ~counter~0)} assume !(0 == ~cond); {22105#(<= 5 ~counter~0)} is VALID [2022-04-15 09:29:02,686 INFO L290 TraceCheckUtils]: 90: Hoare triple {22105#(<= 5 ~counter~0)} assume true; {22105#(<= 5 ~counter~0)} is VALID [2022-04-15 09:29:02,686 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {22105#(<= 5 ~counter~0)} {22105#(<= 5 ~counter~0)} #90#return; {22105#(<= 5 ~counter~0)} is VALID [2022-04-15 09:29:02,686 INFO L290 TraceCheckUtils]: 92: Hoare triple {22105#(<= 5 ~counter~0)} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {22105#(<= 5 ~counter~0)} is VALID [2022-04-15 09:29:02,686 INFO L290 TraceCheckUtils]: 93: Hoare triple {22105#(<= 5 ~counter~0)} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {22105#(<= 5 ~counter~0)} is VALID [2022-04-15 09:29:02,687 INFO L290 TraceCheckUtils]: 94: Hoare triple {22105#(<= 5 ~counter~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22148#(<= 5 |main_#t~post7|)} is VALID [2022-04-15 09:29:02,687 INFO L290 TraceCheckUtils]: 95: Hoare triple {22148#(<= 5 |main_#t~post7|)} assume !!(#t~post7 < 5);havoc #t~post7; {21856#false} is VALID [2022-04-15 09:29:02,687 INFO L272 TraceCheckUtils]: 96: Hoare triple {21856#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {21856#false} is VALID [2022-04-15 09:29:02,687 INFO L290 TraceCheckUtils]: 97: Hoare triple {21856#false} ~cond := #in~cond; {21856#false} is VALID [2022-04-15 09:29:02,687 INFO L290 TraceCheckUtils]: 98: Hoare triple {21856#false} assume 0 == ~cond; {21856#false} is VALID [2022-04-15 09:29:02,687 INFO L290 TraceCheckUtils]: 99: Hoare triple {21856#false} assume !false; {21856#false} is VALID [2022-04-15 09:29:02,688 INFO L134 CoverageAnalysis]: Checked inductivity of 368 backedges. 322 proven. 2 refuted. 0 times theorem prover too weak. 44 trivial. 0 not checked. [2022-04-15 09:29:02,688 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 09:29:03,049 INFO L290 TraceCheckUtils]: 99: Hoare triple {21856#false} assume !false; {21856#false} is VALID [2022-04-15 09:29:03,049 INFO L290 TraceCheckUtils]: 98: Hoare triple {21856#false} assume 0 == ~cond; {21856#false} is VALID [2022-04-15 09:29:03,049 INFO L290 TraceCheckUtils]: 97: Hoare triple {21856#false} ~cond := #in~cond; {21856#false} is VALID [2022-04-15 09:29:03,049 INFO L272 TraceCheckUtils]: 96: Hoare triple {21856#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {21856#false} is VALID [2022-04-15 09:29:03,049 INFO L290 TraceCheckUtils]: 95: Hoare triple {22148#(<= 5 |main_#t~post7|)} assume !!(#t~post7 < 5);havoc #t~post7; {21856#false} is VALID [2022-04-15 09:29:03,050 INFO L290 TraceCheckUtils]: 94: Hoare triple {22105#(<= 5 ~counter~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22148#(<= 5 |main_#t~post7|)} is VALID [2022-04-15 09:29:03,050 INFO L290 TraceCheckUtils]: 93: Hoare triple {22105#(<= 5 ~counter~0)} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {22105#(<= 5 ~counter~0)} is VALID [2022-04-15 09:29:03,050 INFO L290 TraceCheckUtils]: 92: Hoare triple {22105#(<= 5 ~counter~0)} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {22105#(<= 5 ~counter~0)} is VALID [2022-04-15 09:29:03,050 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {21855#true} {22105#(<= 5 ~counter~0)} #90#return; {22105#(<= 5 ~counter~0)} is VALID [2022-04-15 09:29:03,051 INFO L290 TraceCheckUtils]: 90: Hoare triple {21855#true} assume true; {21855#true} is VALID [2022-04-15 09:29:03,051 INFO L290 TraceCheckUtils]: 89: Hoare triple {21855#true} assume !(0 == ~cond); {21855#true} is VALID [2022-04-15 09:29:03,051 INFO L290 TraceCheckUtils]: 88: Hoare triple {21855#true} ~cond := #in~cond; {21855#true} is VALID [2022-04-15 09:29:03,051 INFO L272 TraceCheckUtils]: 87: Hoare triple {22105#(<= 5 ~counter~0)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {21855#true} is VALID [2022-04-15 09:29:03,051 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {21855#true} {22105#(<= 5 ~counter~0)} #88#return; {22105#(<= 5 ~counter~0)} is VALID [2022-04-15 09:29:03,051 INFO L290 TraceCheckUtils]: 85: Hoare triple {21855#true} assume true; {21855#true} is VALID [2022-04-15 09:29:03,051 INFO L290 TraceCheckUtils]: 84: Hoare triple {21855#true} assume !(0 == ~cond); {21855#true} is VALID [2022-04-15 09:29:03,051 INFO L290 TraceCheckUtils]: 83: Hoare triple {21855#true} ~cond := #in~cond; {21855#true} is VALID [2022-04-15 09:29:03,051 INFO L272 TraceCheckUtils]: 82: Hoare triple {22105#(<= 5 ~counter~0)} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {21855#true} is VALID [2022-04-15 09:29:03,052 INFO L290 TraceCheckUtils]: 81: Hoare triple {22105#(<= 5 ~counter~0)} assume !!(#t~post7 < 5);havoc #t~post7; {22105#(<= 5 ~counter~0)} is VALID [2022-04-15 09:29:03,052 INFO L290 TraceCheckUtils]: 80: Hoare triple {22062#(<= 4 ~counter~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22105#(<= 5 ~counter~0)} is VALID [2022-04-15 09:29:03,053 INFO L290 TraceCheckUtils]: 79: Hoare triple {22062#(<= 4 ~counter~0)} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {22062#(<= 4 ~counter~0)} is VALID [2022-04-15 09:29:03,053 INFO L290 TraceCheckUtils]: 78: Hoare triple {22062#(<= 4 ~counter~0)} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {22062#(<= 4 ~counter~0)} is VALID [2022-04-15 09:29:03,053 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {21855#true} {22062#(<= 4 ~counter~0)} #90#return; {22062#(<= 4 ~counter~0)} is VALID [2022-04-15 09:29:03,053 INFO L290 TraceCheckUtils]: 76: Hoare triple {21855#true} assume true; {21855#true} is VALID [2022-04-15 09:29:03,053 INFO L290 TraceCheckUtils]: 75: Hoare triple {21855#true} assume !(0 == ~cond); {21855#true} is VALID [2022-04-15 09:29:03,053 INFO L290 TraceCheckUtils]: 74: Hoare triple {21855#true} ~cond := #in~cond; {21855#true} is VALID [2022-04-15 09:29:03,054 INFO L272 TraceCheckUtils]: 73: Hoare triple {22062#(<= 4 ~counter~0)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {21855#true} is VALID [2022-04-15 09:29:03,054 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {21855#true} {22062#(<= 4 ~counter~0)} #88#return; {22062#(<= 4 ~counter~0)} is VALID [2022-04-15 09:29:03,054 INFO L290 TraceCheckUtils]: 71: Hoare triple {21855#true} assume true; {21855#true} is VALID [2022-04-15 09:29:03,054 INFO L290 TraceCheckUtils]: 70: Hoare triple {21855#true} assume !(0 == ~cond); {21855#true} is VALID [2022-04-15 09:29:03,054 INFO L290 TraceCheckUtils]: 69: Hoare triple {21855#true} ~cond := #in~cond; {21855#true} is VALID [2022-04-15 09:29:03,054 INFO L272 TraceCheckUtils]: 68: Hoare triple {22062#(<= 4 ~counter~0)} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {21855#true} is VALID [2022-04-15 09:29:03,054 INFO L290 TraceCheckUtils]: 67: Hoare triple {22062#(<= 4 ~counter~0)} assume !!(#t~post7 < 5);havoc #t~post7; {22062#(<= 4 ~counter~0)} is VALID [2022-04-15 09:29:03,055 INFO L290 TraceCheckUtils]: 66: Hoare triple {22007#(<= 3 ~counter~0)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22062#(<= 4 ~counter~0)} is VALID [2022-04-15 09:29:03,055 INFO L290 TraceCheckUtils]: 65: Hoare triple {22007#(<= 3 ~counter~0)} assume !(~r~0 >= ~d~0); {22007#(<= 3 ~counter~0)} is VALID [2022-04-15 09:29:03,056 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {21855#true} {22007#(<= 3 ~counter~0)} #86#return; {22007#(<= 3 ~counter~0)} is VALID [2022-04-15 09:29:03,056 INFO L290 TraceCheckUtils]: 63: Hoare triple {21855#true} assume true; {21855#true} is VALID [2022-04-15 09:29:03,056 INFO L290 TraceCheckUtils]: 62: Hoare triple {21855#true} assume !(0 == ~cond); {21855#true} is VALID [2022-04-15 09:29:03,056 INFO L290 TraceCheckUtils]: 61: Hoare triple {21855#true} ~cond := #in~cond; {21855#true} is VALID [2022-04-15 09:29:03,056 INFO L272 TraceCheckUtils]: 60: Hoare triple {22007#(<= 3 ~counter~0)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {21855#true} is VALID [2022-04-15 09:29:03,056 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {21855#true} {22007#(<= 3 ~counter~0)} #84#return; {22007#(<= 3 ~counter~0)} is VALID [2022-04-15 09:29:03,056 INFO L290 TraceCheckUtils]: 58: Hoare triple {21855#true} assume true; {21855#true} is VALID [2022-04-15 09:29:03,056 INFO L290 TraceCheckUtils]: 57: Hoare triple {21855#true} assume !(0 == ~cond); {21855#true} is VALID [2022-04-15 09:29:03,057 INFO L290 TraceCheckUtils]: 56: Hoare triple {21855#true} ~cond := #in~cond; {21855#true} is VALID [2022-04-15 09:29:03,057 INFO L272 TraceCheckUtils]: 55: Hoare triple {22007#(<= 3 ~counter~0)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {21855#true} is VALID [2022-04-15 09:29:03,057 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {21855#true} {22007#(<= 3 ~counter~0)} #82#return; {22007#(<= 3 ~counter~0)} is VALID [2022-04-15 09:29:03,057 INFO L290 TraceCheckUtils]: 53: Hoare triple {21855#true} assume true; {21855#true} is VALID [2022-04-15 09:29:03,057 INFO L290 TraceCheckUtils]: 52: Hoare triple {21855#true} assume !(0 == ~cond); {21855#true} is VALID [2022-04-15 09:29:03,057 INFO L290 TraceCheckUtils]: 51: Hoare triple {21855#true} ~cond := #in~cond; {21855#true} is VALID [2022-04-15 09:29:03,057 INFO L272 TraceCheckUtils]: 50: Hoare triple {22007#(<= 3 ~counter~0)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {21855#true} is VALID [2022-04-15 09:29:03,057 INFO L290 TraceCheckUtils]: 49: Hoare triple {22007#(<= 3 ~counter~0)} assume !!(#t~post6 < 5);havoc #t~post6; {22007#(<= 3 ~counter~0)} is VALID [2022-04-15 09:29:03,058 INFO L290 TraceCheckUtils]: 48: Hoare triple {21952#(<= 2 ~counter~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22007#(<= 3 ~counter~0)} is VALID [2022-04-15 09:29:03,058 INFO L290 TraceCheckUtils]: 47: Hoare triple {21952#(<= 2 ~counter~0)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {21952#(<= 2 ~counter~0)} is VALID [2022-04-15 09:29:03,059 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {21855#true} {21952#(<= 2 ~counter~0)} #86#return; {21952#(<= 2 ~counter~0)} is VALID [2022-04-15 09:29:03,059 INFO L290 TraceCheckUtils]: 45: Hoare triple {21855#true} assume true; {21855#true} is VALID [2022-04-15 09:29:03,059 INFO L290 TraceCheckUtils]: 44: Hoare triple {21855#true} assume !(0 == ~cond); {21855#true} is VALID [2022-04-15 09:29:03,059 INFO L290 TraceCheckUtils]: 43: Hoare triple {21855#true} ~cond := #in~cond; {21855#true} is VALID [2022-04-15 09:29:03,059 INFO L272 TraceCheckUtils]: 42: Hoare triple {21952#(<= 2 ~counter~0)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {21855#true} is VALID [2022-04-15 09:29:03,059 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {21855#true} {21952#(<= 2 ~counter~0)} #84#return; {21952#(<= 2 ~counter~0)} is VALID [2022-04-15 09:29:03,059 INFO L290 TraceCheckUtils]: 40: Hoare triple {21855#true} assume true; {21855#true} is VALID [2022-04-15 09:29:03,059 INFO L290 TraceCheckUtils]: 39: Hoare triple {21855#true} assume !(0 == ~cond); {21855#true} is VALID [2022-04-15 09:29:03,059 INFO L290 TraceCheckUtils]: 38: Hoare triple {21855#true} ~cond := #in~cond; {21855#true} is VALID [2022-04-15 09:29:03,059 INFO L272 TraceCheckUtils]: 37: Hoare triple {21952#(<= 2 ~counter~0)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {21855#true} is VALID [2022-04-15 09:29:03,060 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {21855#true} {21952#(<= 2 ~counter~0)} #82#return; {21952#(<= 2 ~counter~0)} is VALID [2022-04-15 09:29:03,060 INFO L290 TraceCheckUtils]: 35: Hoare triple {21855#true} assume true; {21855#true} is VALID [2022-04-15 09:29:03,060 INFO L290 TraceCheckUtils]: 34: Hoare triple {21855#true} assume !(0 == ~cond); {21855#true} is VALID [2022-04-15 09:29:03,060 INFO L290 TraceCheckUtils]: 33: Hoare triple {21855#true} ~cond := #in~cond; {21855#true} is VALID [2022-04-15 09:29:03,060 INFO L272 TraceCheckUtils]: 32: Hoare triple {21952#(<= 2 ~counter~0)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {21855#true} is VALID [2022-04-15 09:29:03,060 INFO L290 TraceCheckUtils]: 31: Hoare triple {21952#(<= 2 ~counter~0)} assume !!(#t~post6 < 5);havoc #t~post6; {21952#(<= 2 ~counter~0)} is VALID [2022-04-15 09:29:03,061 INFO L290 TraceCheckUtils]: 30: Hoare triple {21897#(<= 1 ~counter~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21952#(<= 2 ~counter~0)} is VALID [2022-04-15 09:29:03,061 INFO L290 TraceCheckUtils]: 29: Hoare triple {21897#(<= 1 ~counter~0)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {21897#(<= 1 ~counter~0)} is VALID [2022-04-15 09:29:03,062 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {21855#true} {21897#(<= 1 ~counter~0)} #86#return; {21897#(<= 1 ~counter~0)} is VALID [2022-04-15 09:29:03,062 INFO L290 TraceCheckUtils]: 27: Hoare triple {21855#true} assume true; {21855#true} is VALID [2022-04-15 09:29:03,062 INFO L290 TraceCheckUtils]: 26: Hoare triple {21855#true} assume !(0 == ~cond); {21855#true} is VALID [2022-04-15 09:29:03,062 INFO L290 TraceCheckUtils]: 25: Hoare triple {21855#true} ~cond := #in~cond; {21855#true} is VALID [2022-04-15 09:29:03,062 INFO L272 TraceCheckUtils]: 24: Hoare triple {21897#(<= 1 ~counter~0)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {21855#true} is VALID [2022-04-15 09:29:03,063 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {21855#true} {21897#(<= 1 ~counter~0)} #84#return; {21897#(<= 1 ~counter~0)} is VALID [2022-04-15 09:29:03,064 INFO L290 TraceCheckUtils]: 22: Hoare triple {21855#true} assume true; {21855#true} is VALID [2022-04-15 09:29:03,064 INFO L290 TraceCheckUtils]: 21: Hoare triple {21855#true} assume !(0 == ~cond); {21855#true} is VALID [2022-04-15 09:29:03,064 INFO L290 TraceCheckUtils]: 20: Hoare triple {21855#true} ~cond := #in~cond; {21855#true} is VALID [2022-04-15 09:29:03,064 INFO L272 TraceCheckUtils]: 19: Hoare triple {21897#(<= 1 ~counter~0)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {21855#true} is VALID [2022-04-15 09:29:03,064 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {21855#true} {21897#(<= 1 ~counter~0)} #82#return; {21897#(<= 1 ~counter~0)} is VALID [2022-04-15 09:29:03,064 INFO L290 TraceCheckUtils]: 17: Hoare triple {21855#true} assume true; {21855#true} is VALID [2022-04-15 09:29:03,064 INFO L290 TraceCheckUtils]: 16: Hoare triple {21855#true} assume !(0 == ~cond); {21855#true} is VALID [2022-04-15 09:29:03,064 INFO L290 TraceCheckUtils]: 15: Hoare triple {21855#true} ~cond := #in~cond; {21855#true} is VALID [2022-04-15 09:29:03,064 INFO L272 TraceCheckUtils]: 14: Hoare triple {21897#(<= 1 ~counter~0)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {21855#true} is VALID [2022-04-15 09:29:03,065 INFO L290 TraceCheckUtils]: 13: Hoare triple {21897#(<= 1 ~counter~0)} assume !!(#t~post6 < 5);havoc #t~post6; {21897#(<= 1 ~counter~0)} is VALID [2022-04-15 09:29:03,065 INFO L290 TraceCheckUtils]: 12: Hoare triple {21863#(<= 0 ~counter~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {21897#(<= 1 ~counter~0)} is VALID [2022-04-15 09:29:03,066 INFO L290 TraceCheckUtils]: 11: Hoare triple {21863#(<= 0 ~counter~0)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {21863#(<= 0 ~counter~0)} is VALID [2022-04-15 09:29:03,066 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {21855#true} {21863#(<= 0 ~counter~0)} #80#return; {21863#(<= 0 ~counter~0)} is VALID [2022-04-15 09:29:03,066 INFO L290 TraceCheckUtils]: 9: Hoare triple {21855#true} assume true; {21855#true} is VALID [2022-04-15 09:29:03,066 INFO L290 TraceCheckUtils]: 8: Hoare triple {21855#true} assume !(0 == ~cond); {21855#true} is VALID [2022-04-15 09:29:03,066 INFO L290 TraceCheckUtils]: 7: Hoare triple {21855#true} ~cond := #in~cond; {21855#true} is VALID [2022-04-15 09:29:03,066 INFO L272 TraceCheckUtils]: 6: Hoare triple {21863#(<= 0 ~counter~0)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {21855#true} is VALID [2022-04-15 09:29:03,066 INFO L290 TraceCheckUtils]: 5: Hoare triple {21863#(<= 0 ~counter~0)} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {21863#(<= 0 ~counter~0)} is VALID [2022-04-15 09:29:03,067 INFO L272 TraceCheckUtils]: 4: Hoare triple {21863#(<= 0 ~counter~0)} call #t~ret8 := main(); {21863#(<= 0 ~counter~0)} is VALID [2022-04-15 09:29:03,067 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {21863#(<= 0 ~counter~0)} {21855#true} #96#return; {21863#(<= 0 ~counter~0)} is VALID [2022-04-15 09:29:03,067 INFO L290 TraceCheckUtils]: 2: Hoare triple {21863#(<= 0 ~counter~0)} assume true; {21863#(<= 0 ~counter~0)} is VALID [2022-04-15 09:29:03,068 INFO L290 TraceCheckUtils]: 1: Hoare triple {21855#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);~counter~0 := 0; {21863#(<= 0 ~counter~0)} is VALID [2022-04-15 09:29:03,068 INFO L272 TraceCheckUtils]: 0: Hoare triple {21855#true} call ULTIMATE.init(); {21855#true} is VALID [2022-04-15 09:29:03,068 INFO L134 CoverageAnalysis]: Checked inductivity of 368 backedges. 54 proven. 2 refuted. 0 times theorem prover too weak. 312 trivial. 0 not checked. [2022-04-15 09:29:03,068 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:29:03,068 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2052493457] [2022-04-15 09:29:03,068 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:29:03,068 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [899536278] [2022-04-15 09:29:03,068 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [899536278] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 09:29:03,068 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 09:29:03,069 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 9 [2022-04-15 09:29:03,069 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:29:03,069 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1277019878] [2022-04-15 09:29:03,069 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1277019878] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:29:03,069 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:29:03,069 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-15 09:29:03,069 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [650091130] [2022-04-15 09:29:03,069 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:29:03,069 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 8 states have call successors, (17), 8 states have call predecessors, (17), 6 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) Word has length 100 [2022-04-15 09:29:03,070 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:29:03,070 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 8 states have call successors, (17), 8 states have call predecessors, (17), 6 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-15 09:29:03,150 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 76 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:29:03,151 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-15 09:29:03,151 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:29:03,151 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-15 09:29:03,151 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=30, Invalid=42, Unknown=0, NotChecked=0, Total=72 [2022-04-15 09:29:03,151 INFO L87 Difference]: Start difference. First operand 205 states and 236 transitions. Second operand has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 8 states have call successors, (17), 8 states have call predecessors, (17), 6 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-15 09:29:04,103 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:29:04,103 INFO L93 Difference]: Finished difference Result 234 states and 268 transitions. [2022-04-15 09:29:04,103 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-15 09:29:04,103 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 8 states have call successors, (17), 8 states have call predecessors, (17), 6 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) Word has length 100 [2022-04-15 09:29:04,104 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:29:04,104 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 8 states have call successors, (17), 8 states have call predecessors, (17), 6 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-15 09:29:04,105 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 122 transitions. [2022-04-15 09:29:04,105 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 8 states have call successors, (17), 8 states have call predecessors, (17), 6 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-15 09:29:04,106 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 122 transitions. [2022-04-15 09:29:04,106 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 122 transitions. [2022-04-15 09:29:04,253 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 122 edges. 122 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:29:04,261 INFO L225 Difference]: With dead ends: 234 [2022-04-15 09:29:04,262 INFO L226 Difference]: Without dead ends: 160 [2022-04-15 09:29:04,262 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 200 GetRequests, 191 SyntacticMatches, 1 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=39, Invalid=51, Unknown=0, NotChecked=0, Total=90 [2022-04-15 09:29:04,262 INFO L913 BasicCegarLoop]: 92 mSDtfsCounter, 41 mSDsluCounter, 142 mSDsCounter, 0 mSdLazyCounter, 78 mSolverCounterSat, 27 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 41 SdHoareTripleChecker+Valid, 234 SdHoareTripleChecker+Invalid, 105 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 27 IncrementalHoareTripleChecker+Valid, 78 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-04-15 09:29:04,263 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [41 Valid, 234 Invalid, 105 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [27 Valid, 78 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-04-15 09:29:04,263 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 160 states. [2022-04-15 09:29:04,541 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 160 to 158. [2022-04-15 09:29:04,541 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:29:04,541 INFO L82 GeneralOperation]: Start isEquivalent. First operand 160 states. Second operand has 158 states, 106 states have (on average 1.0566037735849056) internal successors, (112), 109 states have internal predecessors, (112), 28 states have call successors, (28), 24 states have call predecessors, (28), 23 states have return successors, (25), 24 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-15 09:29:04,542 INFO L74 IsIncluded]: Start isIncluded. First operand 160 states. Second operand has 158 states, 106 states have (on average 1.0566037735849056) internal successors, (112), 109 states have internal predecessors, (112), 28 states have call successors, (28), 24 states have call predecessors, (28), 23 states have return successors, (25), 24 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-15 09:29:04,542 INFO L87 Difference]: Start difference. First operand 160 states. Second operand has 158 states, 106 states have (on average 1.0566037735849056) internal successors, (112), 109 states have internal predecessors, (112), 28 states have call successors, (28), 24 states have call predecessors, (28), 23 states have return successors, (25), 24 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-15 09:29:04,543 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:29:04,543 INFO L93 Difference]: Finished difference Result 160 states and 167 transitions. [2022-04-15 09:29:04,544 INFO L276 IsEmpty]: Start isEmpty. Operand 160 states and 167 transitions. [2022-04-15 09:29:04,544 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:29:04,544 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:29:04,544 INFO L74 IsIncluded]: Start isIncluded. First operand has 158 states, 106 states have (on average 1.0566037735849056) internal successors, (112), 109 states have internal predecessors, (112), 28 states have call successors, (28), 24 states have call predecessors, (28), 23 states have return successors, (25), 24 states have call predecessors, (25), 25 states have call successors, (25) Second operand 160 states. [2022-04-15 09:29:04,544 INFO L87 Difference]: Start difference. First operand has 158 states, 106 states have (on average 1.0566037735849056) internal successors, (112), 109 states have internal predecessors, (112), 28 states have call successors, (28), 24 states have call predecessors, (28), 23 states have return successors, (25), 24 states have call predecessors, (25), 25 states have call successors, (25) Second operand 160 states. [2022-04-15 09:29:04,546 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:29:04,546 INFO L93 Difference]: Finished difference Result 160 states and 167 transitions. [2022-04-15 09:29:04,546 INFO L276 IsEmpty]: Start isEmpty. Operand 160 states and 167 transitions. [2022-04-15 09:29:04,546 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:29:04,546 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:29:04,546 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:29:04,546 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:29:04,546 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 158 states, 106 states have (on average 1.0566037735849056) internal successors, (112), 109 states have internal predecessors, (112), 28 states have call successors, (28), 24 states have call predecessors, (28), 23 states have return successors, (25), 24 states have call predecessors, (25), 25 states have call successors, (25) [2022-04-15 09:29:04,549 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 158 states to 158 states and 165 transitions. [2022-04-15 09:29:04,549 INFO L78 Accepts]: Start accepts. Automaton has 158 states and 165 transitions. Word has length 100 [2022-04-15 09:29:04,549 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:29:04,549 INFO L478 AbstractCegarLoop]: Abstraction has 158 states and 165 transitions. [2022-04-15 09:29:04,550 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 8 states have internal predecessors, (44), 8 states have call successors, (17), 8 states have call predecessors, (17), 6 states have return successors, (15), 6 states have call predecessors, (15), 7 states have call successors, (15) [2022-04-15 09:29:04,550 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 158 states and 165 transitions. [2022-04-15 09:29:04,880 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 165 edges. 165 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:29:04,880 INFO L276 IsEmpty]: Start isEmpty. Operand 158 states and 165 transitions. [2022-04-15 09:29:04,881 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 101 [2022-04-15 09:29:04,881 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:29:04,881 INFO L499 BasicCegarLoop]: trace histogram [14, 13, 13, 3, 3, 3, 3, 3, 3, 3, 3, 3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:29:04,897 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 09:29:05,081 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 09:29:05,081 INFO L403 AbstractCegarLoop]: === Iteration 23 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:29:05,082 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:29:05,082 INFO L85 PathProgramCache]: Analyzing trace with hash -123017305, now seen corresponding path program 1 times [2022-04-15 09:29:05,082 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:29:05,082 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1201505415] [2022-04-15 09:29:09,432 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:29:09,433 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:29:09,433 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:29:09,433 INFO L85 PathProgramCache]: Analyzing trace with hash -123017305, now seen corresponding path program 2 times [2022-04-15 09:29:09,433 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:29:09,433 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1772238413] [2022-04-15 09:29:09,433 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:29:09,433 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:29:09,448 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:29:09,448 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1190692669] [2022-04-15 09:29:09,448 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 09:29:09,448 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:29:09,448 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:29:09,449 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 09:29:09,450 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 09:29:09,499 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 09:29:09,499 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 09:29:09,500 INFO L263 TraceCheckSpWp]: Trace formula consists of 251 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-15 09:29:09,515 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 09:29:09,516 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 09:29:10,560 INFO L272 TraceCheckUtils]: 0: Hoare triple {23569#true} call ULTIMATE.init(); {23569#true} is VALID [2022-04-15 09:29:10,560 INFO L290 TraceCheckUtils]: 1: Hoare triple {23569#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);~counter~0 := 0; {23569#true} is VALID [2022-04-15 09:29:10,560 INFO L290 TraceCheckUtils]: 2: Hoare triple {23569#true} assume true; {23569#true} is VALID [2022-04-15 09:29:10,560 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {23569#true} {23569#true} #96#return; {23569#true} is VALID [2022-04-15 09:29:10,560 INFO L272 TraceCheckUtils]: 4: Hoare triple {23569#true} call #t~ret8 := main(); {23569#true} is VALID [2022-04-15 09:29:10,560 INFO L290 TraceCheckUtils]: 5: Hoare triple {23569#true} havoc ~A~0;havoc ~B~0;havoc ~r~0;havoc ~d~0;havoc ~p~0;havoc ~q~0;~A~0 := #t~nondet4;havoc #t~nondet4;~B~0 := #t~nondet5;havoc #t~nondet5; {23569#true} is VALID [2022-04-15 09:29:10,560 INFO L272 TraceCheckUtils]: 6: Hoare triple {23569#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {23569#true} is VALID [2022-04-15 09:29:10,561 INFO L290 TraceCheckUtils]: 7: Hoare triple {23569#true} ~cond := #in~cond; {23569#true} is VALID [2022-04-15 09:29:10,561 INFO L290 TraceCheckUtils]: 8: Hoare triple {23569#true} assume !(0 == ~cond); {23569#true} is VALID [2022-04-15 09:29:10,561 INFO L290 TraceCheckUtils]: 9: Hoare triple {23569#true} assume true; {23569#true} is VALID [2022-04-15 09:29:10,561 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {23569#true} {23569#true} #80#return; {23569#true} is VALID [2022-04-15 09:29:10,561 INFO L290 TraceCheckUtils]: 11: Hoare triple {23569#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {23569#true} is VALID [2022-04-15 09:29:10,561 INFO L290 TraceCheckUtils]: 12: Hoare triple {23569#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23569#true} is VALID [2022-04-15 09:29:10,561 INFO L290 TraceCheckUtils]: 13: Hoare triple {23569#true} assume !!(#t~post6 < 5);havoc #t~post6; {23569#true} is VALID [2022-04-15 09:29:10,561 INFO L272 TraceCheckUtils]: 14: Hoare triple {23569#true} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {23569#true} is VALID [2022-04-15 09:29:10,561 INFO L290 TraceCheckUtils]: 15: Hoare triple {23569#true} ~cond := #in~cond; {23569#true} is VALID [2022-04-15 09:29:10,561 INFO L290 TraceCheckUtils]: 16: Hoare triple {23569#true} assume !(0 == ~cond); {23569#true} is VALID [2022-04-15 09:29:10,561 INFO L290 TraceCheckUtils]: 17: Hoare triple {23569#true} assume true; {23569#true} is VALID [2022-04-15 09:29:10,561 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {23569#true} {23569#true} #82#return; {23569#true} is VALID [2022-04-15 09:29:10,561 INFO L272 TraceCheckUtils]: 19: Hoare triple {23569#true} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {23569#true} is VALID [2022-04-15 09:29:10,561 INFO L290 TraceCheckUtils]: 20: Hoare triple {23569#true} ~cond := #in~cond; {23569#true} is VALID [2022-04-15 09:29:10,561 INFO L290 TraceCheckUtils]: 21: Hoare triple {23569#true} assume !(0 == ~cond); {23569#true} is VALID [2022-04-15 09:29:10,561 INFO L290 TraceCheckUtils]: 22: Hoare triple {23569#true} assume true; {23569#true} is VALID [2022-04-15 09:29:10,561 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {23569#true} {23569#true} #84#return; {23569#true} is VALID [2022-04-15 09:29:10,561 INFO L272 TraceCheckUtils]: 24: Hoare triple {23569#true} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {23569#true} is VALID [2022-04-15 09:29:10,561 INFO L290 TraceCheckUtils]: 25: Hoare triple {23569#true} ~cond := #in~cond; {23569#true} is VALID [2022-04-15 09:29:10,562 INFO L290 TraceCheckUtils]: 26: Hoare triple {23569#true} assume !(0 == ~cond); {23569#true} is VALID [2022-04-15 09:29:10,562 INFO L290 TraceCheckUtils]: 27: Hoare triple {23569#true} assume true; {23569#true} is VALID [2022-04-15 09:29:10,562 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {23569#true} {23569#true} #86#return; {23569#true} is VALID [2022-04-15 09:29:10,562 INFO L290 TraceCheckUtils]: 29: Hoare triple {23569#true} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {23569#true} is VALID [2022-04-15 09:29:10,562 INFO L290 TraceCheckUtils]: 30: Hoare triple {23569#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23569#true} is VALID [2022-04-15 09:29:10,562 INFO L290 TraceCheckUtils]: 31: Hoare triple {23569#true} assume !!(#t~post6 < 5);havoc #t~post6; {23569#true} is VALID [2022-04-15 09:29:10,562 INFO L272 TraceCheckUtils]: 32: Hoare triple {23569#true} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {23569#true} is VALID [2022-04-15 09:29:10,562 INFO L290 TraceCheckUtils]: 33: Hoare triple {23569#true} ~cond := #in~cond; {23569#true} is VALID [2022-04-15 09:29:10,562 INFO L290 TraceCheckUtils]: 34: Hoare triple {23569#true} assume !(0 == ~cond); {23569#true} is VALID [2022-04-15 09:29:10,562 INFO L290 TraceCheckUtils]: 35: Hoare triple {23569#true} assume true; {23569#true} is VALID [2022-04-15 09:29:10,562 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {23569#true} {23569#true} #82#return; {23569#true} is VALID [2022-04-15 09:29:10,562 INFO L272 TraceCheckUtils]: 37: Hoare triple {23569#true} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {23569#true} is VALID [2022-04-15 09:29:10,562 INFO L290 TraceCheckUtils]: 38: Hoare triple {23569#true} ~cond := #in~cond; {23569#true} is VALID [2022-04-15 09:29:10,562 INFO L290 TraceCheckUtils]: 39: Hoare triple {23569#true} assume !(0 == ~cond); {23569#true} is VALID [2022-04-15 09:29:10,562 INFO L290 TraceCheckUtils]: 40: Hoare triple {23569#true} assume true; {23569#true} is VALID [2022-04-15 09:29:10,562 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {23569#true} {23569#true} #84#return; {23569#true} is VALID [2022-04-15 09:29:10,562 INFO L272 TraceCheckUtils]: 42: Hoare triple {23569#true} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {23569#true} is VALID [2022-04-15 09:29:10,562 INFO L290 TraceCheckUtils]: 43: Hoare triple {23569#true} ~cond := #in~cond; {23569#true} is VALID [2022-04-15 09:29:10,562 INFO L290 TraceCheckUtils]: 44: Hoare triple {23569#true} assume !(0 == ~cond); {23569#true} is VALID [2022-04-15 09:29:10,563 INFO L290 TraceCheckUtils]: 45: Hoare triple {23569#true} assume true; {23569#true} is VALID [2022-04-15 09:29:10,563 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {23569#true} {23569#true} #86#return; {23569#true} is VALID [2022-04-15 09:29:10,564 INFO L290 TraceCheckUtils]: 47: Hoare triple {23569#true} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {23715#(<= (div (- main_~d~0) (- 2)) main_~r~0)} is VALID [2022-04-15 09:29:10,564 INFO L290 TraceCheckUtils]: 48: Hoare triple {23715#(<= (div (- main_~d~0) (- 2)) main_~r~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {23715#(<= (div (- main_~d~0) (- 2)) main_~r~0)} is VALID [2022-04-15 09:29:10,565 INFO L290 TraceCheckUtils]: 49: Hoare triple {23715#(<= (div (- main_~d~0) (- 2)) main_~r~0)} assume !!(#t~post6 < 5);havoc #t~post6; {23715#(<= (div (- main_~d~0) (- 2)) main_~r~0)} is VALID [2022-04-15 09:29:10,565 INFO L272 TraceCheckUtils]: 50: Hoare triple {23715#(<= (div (- main_~d~0) (- 2)) main_~r~0)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {23569#true} is VALID [2022-04-15 09:29:10,565 INFO L290 TraceCheckUtils]: 51: Hoare triple {23569#true} ~cond := #in~cond; {23569#true} is VALID [2022-04-15 09:29:10,565 INFO L290 TraceCheckUtils]: 52: Hoare triple {23569#true} assume !(0 == ~cond); {23569#true} is VALID [2022-04-15 09:29:10,565 INFO L290 TraceCheckUtils]: 53: Hoare triple {23569#true} assume true; {23569#true} is VALID [2022-04-15 09:29:10,565 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {23569#true} {23715#(<= (div (- main_~d~0) (- 2)) main_~r~0)} #82#return; {23715#(<= (div (- main_~d~0) (- 2)) main_~r~0)} is VALID [2022-04-15 09:29:10,565 INFO L272 TraceCheckUtils]: 55: Hoare triple {23715#(<= (div (- main_~d~0) (- 2)) main_~r~0)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {23569#true} is VALID [2022-04-15 09:29:10,565 INFO L290 TraceCheckUtils]: 56: Hoare triple {23569#true} ~cond := #in~cond; {23569#true} is VALID [2022-04-15 09:29:10,565 INFO L290 TraceCheckUtils]: 57: Hoare triple {23569#true} assume !(0 == ~cond); {23569#true} is VALID [2022-04-15 09:29:10,565 INFO L290 TraceCheckUtils]: 58: Hoare triple {23569#true} assume true; {23569#true} is VALID [2022-04-15 09:29:10,566 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {23569#true} {23715#(<= (div (- main_~d~0) (- 2)) main_~r~0)} #84#return; {23715#(<= (div (- main_~d~0) (- 2)) main_~r~0)} is VALID [2022-04-15 09:29:10,566 INFO L272 TraceCheckUtils]: 60: Hoare triple {23715#(<= (div (- main_~d~0) (- 2)) main_~r~0)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {23569#true} is VALID [2022-04-15 09:29:10,566 INFO L290 TraceCheckUtils]: 61: Hoare triple {23569#true} ~cond := #in~cond; {23569#true} is VALID [2022-04-15 09:29:10,566 INFO L290 TraceCheckUtils]: 62: Hoare triple {23569#true} assume !(0 == ~cond); {23569#true} is VALID [2022-04-15 09:29:10,566 INFO L290 TraceCheckUtils]: 63: Hoare triple {23569#true} assume true; {23569#true} is VALID [2022-04-15 09:29:10,566 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {23569#true} {23715#(<= (div (- main_~d~0) (- 2)) main_~r~0)} #86#return; {23715#(<= (div (- main_~d~0) (- 2)) main_~r~0)} is VALID [2022-04-15 09:29:10,567 INFO L290 TraceCheckUtils]: 65: Hoare triple {23715#(<= (div (- main_~d~0) (- 2)) main_~r~0)} assume !(~r~0 >= ~d~0); {23770#(and (not (<= main_~d~0 main_~r~0)) (<= (div (- main_~d~0) (- 2)) main_~r~0))} is VALID [2022-04-15 09:29:10,567 INFO L290 TraceCheckUtils]: 66: Hoare triple {23770#(and (not (<= main_~d~0 main_~r~0)) (<= (div (- main_~d~0) (- 2)) main_~r~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {23770#(and (not (<= main_~d~0 main_~r~0)) (<= (div (- main_~d~0) (- 2)) main_~r~0))} is VALID [2022-04-15 09:29:10,568 INFO L290 TraceCheckUtils]: 67: Hoare triple {23770#(and (not (<= main_~d~0 main_~r~0)) (<= (div (- main_~d~0) (- 2)) main_~r~0))} assume !!(#t~post7 < 5);havoc #t~post7; {23770#(and (not (<= main_~d~0 main_~r~0)) (<= (div (- main_~d~0) (- 2)) main_~r~0))} is VALID [2022-04-15 09:29:10,568 INFO L272 TraceCheckUtils]: 68: Hoare triple {23770#(and (not (<= main_~d~0 main_~r~0)) (<= (div (- main_~d~0) (- 2)) main_~r~0))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {23569#true} is VALID [2022-04-15 09:29:10,568 INFO L290 TraceCheckUtils]: 69: Hoare triple {23569#true} ~cond := #in~cond; {23569#true} is VALID [2022-04-15 09:29:10,568 INFO L290 TraceCheckUtils]: 70: Hoare triple {23569#true} assume !(0 == ~cond); {23569#true} is VALID [2022-04-15 09:29:10,568 INFO L290 TraceCheckUtils]: 71: Hoare triple {23569#true} assume true; {23569#true} is VALID [2022-04-15 09:29:10,568 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {23569#true} {23770#(and (not (<= main_~d~0 main_~r~0)) (<= (div (- main_~d~0) (- 2)) main_~r~0))} #88#return; {23770#(and (not (<= main_~d~0 main_~r~0)) (<= (div (- main_~d~0) (- 2)) main_~r~0))} is VALID [2022-04-15 09:29:10,568 INFO L272 TraceCheckUtils]: 73: Hoare triple {23770#(and (not (<= main_~d~0 main_~r~0)) (<= (div (- main_~d~0) (- 2)) main_~r~0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {23569#true} is VALID [2022-04-15 09:29:10,568 INFO L290 TraceCheckUtils]: 74: Hoare triple {23569#true} ~cond := #in~cond; {23569#true} is VALID [2022-04-15 09:29:10,568 INFO L290 TraceCheckUtils]: 75: Hoare triple {23569#true} assume !(0 == ~cond); {23569#true} is VALID [2022-04-15 09:29:10,569 INFO L290 TraceCheckUtils]: 76: Hoare triple {23569#true} assume true; {23569#true} is VALID [2022-04-15 09:29:10,569 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {23569#true} {23770#(and (not (<= main_~d~0 main_~r~0)) (<= (div (- main_~d~0) (- 2)) main_~r~0))} #90#return; {23770#(and (not (<= main_~d~0 main_~r~0)) (<= (div (- main_~d~0) (- 2)) main_~r~0))} is VALID [2022-04-15 09:29:10,571 INFO L290 TraceCheckUtils]: 78: Hoare triple {23770#(and (not (<= main_~d~0 main_~r~0)) (<= (div (- main_~d~0) (- 2)) main_~r~0))} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {23810#(and (< (div (+ (- 1) (* (- 1) main_~r~0)) (- 2)) (+ main_~r~0 1)) (<= main_~d~0 main_~r~0))} is VALID [2022-04-15 09:29:10,571 INFO L290 TraceCheckUtils]: 79: Hoare triple {23810#(and (< (div (+ (- 1) (* (- 1) main_~r~0)) (- 2)) (+ main_~r~0 1)) (<= main_~d~0 main_~r~0))} assume !(~r~0 >= ~d~0); {23570#false} is VALID [2022-04-15 09:29:10,571 INFO L290 TraceCheckUtils]: 80: Hoare triple {23570#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {23570#false} is VALID [2022-04-15 09:29:10,572 INFO L290 TraceCheckUtils]: 81: Hoare triple {23570#false} assume !!(#t~post7 < 5);havoc #t~post7; {23570#false} is VALID [2022-04-15 09:29:10,572 INFO L272 TraceCheckUtils]: 82: Hoare triple {23570#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {23570#false} is VALID [2022-04-15 09:29:10,572 INFO L290 TraceCheckUtils]: 83: Hoare triple {23570#false} ~cond := #in~cond; {23570#false} is VALID [2022-04-15 09:29:10,572 INFO L290 TraceCheckUtils]: 84: Hoare triple {23570#false} assume !(0 == ~cond); {23570#false} is VALID [2022-04-15 09:29:10,572 INFO L290 TraceCheckUtils]: 85: Hoare triple {23570#false} assume true; {23570#false} is VALID [2022-04-15 09:29:10,572 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {23570#false} {23570#false} #88#return; {23570#false} is VALID [2022-04-15 09:29:10,572 INFO L272 TraceCheckUtils]: 87: Hoare triple {23570#false} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {23570#false} is VALID [2022-04-15 09:29:10,572 INFO L290 TraceCheckUtils]: 88: Hoare triple {23570#false} ~cond := #in~cond; {23570#false} is VALID [2022-04-15 09:29:10,572 INFO L290 TraceCheckUtils]: 89: Hoare triple {23570#false} assume !(0 == ~cond); {23570#false} is VALID [2022-04-15 09:29:10,572 INFO L290 TraceCheckUtils]: 90: Hoare triple {23570#false} assume true; {23570#false} is VALID [2022-04-15 09:29:10,572 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {23570#false} {23570#false} #90#return; {23570#false} is VALID [2022-04-15 09:29:10,572 INFO L290 TraceCheckUtils]: 92: Hoare triple {23570#false} assume !!(1 != ~p~0);~d~0 := (if ~d~0 < 0 && 0 != ~d~0 % 2 then 1 + ~d~0 / 2 else ~d~0 / 2);~p~0 := (if ~p~0 < 0 && 0 != ~p~0 % 2 then 1 + ~p~0 / 2 else ~p~0 / 2); {23570#false} is VALID [2022-04-15 09:29:10,572 INFO L290 TraceCheckUtils]: 93: Hoare triple {23570#false} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {23570#false} is VALID [2022-04-15 09:29:10,572 INFO L290 TraceCheckUtils]: 94: Hoare triple {23570#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {23570#false} is VALID [2022-04-15 09:29:10,572 INFO L290 TraceCheckUtils]: 95: Hoare triple {23570#false} assume !(#t~post7 < 5);havoc #t~post7; {23570#false} is VALID [2022-04-15 09:29:10,572 INFO L272 TraceCheckUtils]: 96: Hoare triple {23570#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {23570#false} is VALID [2022-04-15 09:29:10,572 INFO L290 TraceCheckUtils]: 97: Hoare triple {23570#false} ~cond := #in~cond; {23570#false} is VALID [2022-04-15 09:29:10,573 INFO L290 TraceCheckUtils]: 98: Hoare triple {23570#false} assume 0 == ~cond; {23570#false} is VALID [2022-04-15 09:29:10,573 INFO L290 TraceCheckUtils]: 99: Hoare triple {23570#false} assume !false; {23570#false} is VALID [2022-04-15 09:29:10,573 INFO L134 CoverageAnalysis]: Checked inductivity of 366 backedges. 130 proven. 0 refuted. 0 times theorem prover too weak. 236 trivial. 0 not checked. [2022-04-15 09:29:10,573 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 09:29:10,573 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 09:29:10,573 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1772238413] [2022-04-15 09:29:10,573 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 09:29:10,573 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1190692669] [2022-04-15 09:29:10,573 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1190692669] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:29:10,573 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:29:10,573 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 09:29:10,574 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 09:29:10,574 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1201505415] [2022-04-15 09:29:10,574 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1201505415] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 09:29:10,574 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 09:29:10,574 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 09:29:10,574 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [771028730] [2022-04-15 09:29:10,574 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 09:29:10,574 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 6.2) internal successors, (31), 5 states have internal predecessors, (31), 4 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) Word has length 100 [2022-04-15 09:29:10,574 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 09:29:10,574 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 6.2) internal successors, (31), 5 states have internal predecessors, (31), 4 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-15 09:29:10,641 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:29:10,641 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 09:29:10,641 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 09:29:10,642 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 09:29:10,642 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-04-15 09:29:10,642 INFO L87 Difference]: Start difference. First operand 158 states and 165 transitions. Second operand has 5 states, 5 states have (on average 6.2) internal successors, (31), 5 states have internal predecessors, (31), 4 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-15 09:29:11,398 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:29:11,399 INFO L93 Difference]: Finished difference Result 177 states and 184 transitions. [2022-04-15 09:29:11,399 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 09:29:11,399 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 6.2) internal successors, (31), 5 states have internal predecessors, (31), 4 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) Word has length 100 [2022-04-15 09:29:11,399 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 09:29:11,399 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 6.2) internal successors, (31), 5 states have internal predecessors, (31), 4 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-15 09:29:11,400 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 77 transitions. [2022-04-15 09:29:11,400 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 6.2) internal successors, (31), 5 states have internal predecessors, (31), 4 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-15 09:29:11,400 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 77 transitions. [2022-04-15 09:29:11,401 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 77 transitions. [2022-04-15 09:29:11,525 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:29:11,527 INFO L225 Difference]: With dead ends: 177 [2022-04-15 09:29:11,527 INFO L226 Difference]: Without dead ends: 132 [2022-04-15 09:29:11,527 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 99 GetRequests, 96 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-04-15 09:29:11,528 INFO L913 BasicCegarLoop]: 51 mSDtfsCounter, 7 mSDsluCounter, 61 mSDsCounter, 0 mSdLazyCounter, 49 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 9 SdHoareTripleChecker+Valid, 112 SdHoareTripleChecker+Invalid, 52 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 49 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 09:29:11,528 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [9 Valid, 112 Invalid, 52 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 49 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 09:29:11,528 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 132 states. [2022-04-15 09:29:11,756 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 132 to 127. [2022-04-15 09:29:11,756 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 09:29:11,757 INFO L82 GeneralOperation]: Start isEquivalent. First operand 132 states. Second operand has 127 states, 84 states have (on average 1.0476190476190477) internal successors, (88), 86 states have internal predecessors, (88), 23 states have call successors, (23), 20 states have call predecessors, (23), 19 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-15 09:29:11,757 INFO L74 IsIncluded]: Start isIncluded. First operand 132 states. Second operand has 127 states, 84 states have (on average 1.0476190476190477) internal successors, (88), 86 states have internal predecessors, (88), 23 states have call successors, (23), 20 states have call predecessors, (23), 19 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-15 09:29:11,757 INFO L87 Difference]: Start difference. First operand 132 states. Second operand has 127 states, 84 states have (on average 1.0476190476190477) internal successors, (88), 86 states have internal predecessors, (88), 23 states have call successors, (23), 20 states have call predecessors, (23), 19 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-15 09:29:11,758 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:29:11,759 INFO L93 Difference]: Finished difference Result 132 states and 138 transitions. [2022-04-15 09:29:11,759 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 138 transitions. [2022-04-15 09:29:11,766 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:29:11,766 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:29:11,766 INFO L74 IsIncluded]: Start isIncluded. First operand has 127 states, 84 states have (on average 1.0476190476190477) internal successors, (88), 86 states have internal predecessors, (88), 23 states have call successors, (23), 20 states have call predecessors, (23), 19 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 132 states. [2022-04-15 09:29:11,766 INFO L87 Difference]: Start difference. First operand has 127 states, 84 states have (on average 1.0476190476190477) internal successors, (88), 86 states have internal predecessors, (88), 23 states have call successors, (23), 20 states have call predecessors, (23), 19 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) Second operand 132 states. [2022-04-15 09:29:11,768 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 09:29:11,768 INFO L93 Difference]: Finished difference Result 132 states and 138 transitions. [2022-04-15 09:29:11,769 INFO L276 IsEmpty]: Start isEmpty. Operand 132 states and 138 transitions. [2022-04-15 09:29:11,769 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 09:29:11,769 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 09:29:11,769 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 09:29:11,769 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 09:29:11,769 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 127 states, 84 states have (on average 1.0476190476190477) internal successors, (88), 86 states have internal predecessors, (88), 23 states have call successors, (23), 20 states have call predecessors, (23), 19 states have return successors, (21), 20 states have call predecessors, (21), 21 states have call successors, (21) [2022-04-15 09:29:11,771 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 127 states to 127 states and 132 transitions. [2022-04-15 09:29:11,772 INFO L78 Accepts]: Start accepts. Automaton has 127 states and 132 transitions. Word has length 100 [2022-04-15 09:29:11,772 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 09:29:11,772 INFO L478 AbstractCegarLoop]: Abstraction has 127 states and 132 transitions. [2022-04-15 09:29:11,772 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 6.2) internal successors, (31), 5 states have internal predecessors, (31), 4 states have call successors, (14), 2 states have call predecessors, (14), 2 states have return successors, (12), 4 states have call predecessors, (12), 4 states have call successors, (12) [2022-04-15 09:29:11,772 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 127 states and 132 transitions. [2022-04-15 09:29:12,058 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 132 edges. 132 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 09:29:12,058 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 132 transitions. [2022-04-15 09:29:12,059 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 105 [2022-04-15 09:29:12,059 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 09:29:12,059 INFO L499 BasicCegarLoop]: trace histogram [15, 14, 14, 4, 4, 4, 4, 4, 4, 4, 4, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 09:29:12,076 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 09:29:12,261 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 09:29:12,262 INFO L403 AbstractCegarLoop]: === Iteration 24 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 09:29:12,262 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 09:29:12,262 INFO L85 PathProgramCache]: Analyzing trace with hash -392782949, now seen corresponding path program 7 times [2022-04-15 09:29:12,262 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 09:29:12,262 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1410477515] [2022-04-15 09:29:21,658 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 09:29:21,658 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-15 09:29:21,658 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 09:29:21,658 INFO L85 PathProgramCache]: Analyzing trace with hash -392782949, now seen corresponding path program 8 times [2022-04-15 09:29:21,658 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 09:29:21,658 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [530306754] [2022-04-15 09:29:21,658 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 09:29:21,659 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 09:29:21,668 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 09:29:21,668 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1515993333] [2022-04-15 09:29:21,668 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 09:29:21,668 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 09:29:21,668 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 09:29:21,669 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 09:29:21,670 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 09:29:21,713 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 09:29:21,713 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-04-15 09:29:21,713 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-04-15 09:29:21,732 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-04-15 09:29:21,774 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-04-15 09:29:21,774 INFO L130 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found a feasible trace [2022-04-15 09:29:21,774 INFO L618 BasicCegarLoop]: Counterexample is feasible [2022-04-15 09:29:21,776 INFO L788 garLoopResultBuilder]: Registering result UNSAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-04-15 09:29:21,797 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (22)] Forceful destruction successful, exit code 0 [2022-04-15 09:29:21,994 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 09:29:21,996 INFO L719 BasicCegarLoop]: Path program histogram: [10, 8, 8, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2] [2022-04-15 09:29:21,999 INFO L177 ceAbstractionStarter]: Computing trace abstraction results [2022-04-15 09:29:22,012 WARN L170 areAnnotationChecker]: reach_errorENTRY has no Hoare annotation [2022-04-15 09:29:22,012 WARN L170 areAnnotationChecker]: ULTIMATE.initENTRY has no Hoare annotation [2022-04-15 09:29:22,012 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-04-15 09:29:22,012 WARN L170 areAnnotationChecker]: ULTIMATE.startENTRY has no Hoare annotation [2022-04-15 09:29:22,012 WARN L170 areAnnotationChecker]: assume_abort_if_notENTRY has no Hoare annotation [2022-04-15 09:29:22,012 WARN L170 areAnnotationChecker]: mainENTRY has no Hoare annotation [2022-04-15 09:29:22,012 WARN L170 areAnnotationChecker]: __VERIFIER_assertENTRY has no Hoare annotation [2022-04-15 09:29:22,012 WARN L170 areAnnotationChecker]: reach_errorFINAL has no Hoare annotation [2022-04-15 09:29:22,012 WARN L170 areAnnotationChecker]: ULTIMATE.initFINAL has no Hoare annotation [2022-04-15 09:29:22,012 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-04-15 09:29:22,012 WARN L170 areAnnotationChecker]: L-1 has no Hoare annotation [2022-04-15 09:29:22,012 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-15 09:29:22,012 WARN L170 areAnnotationChecker]: L12 has no Hoare annotation [2022-04-15 09:29:22,012 WARN L170 areAnnotationChecker]: L28 has no Hoare annotation [2022-04-15 09:29:22,012 WARN L170 areAnnotationChecker]: L28 has no Hoare annotation [2022-04-15 09:29:22,012 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-15 09:29:22,012 WARN L170 areAnnotationChecker]: L15 has no Hoare annotation [2022-04-15 09:29:22,012 WARN L170 areAnnotationChecker]: ULTIMATE.initEXIT has no Hoare annotation [2022-04-15 09:29:22,012 WARN L170 areAnnotationChecker]: ULTIMATE.startFINAL has no Hoare annotation [2022-04-15 09:29:22,012 WARN L170 areAnnotationChecker]: L12-2 has no Hoare annotation [2022-04-15 09:29:22,012 WARN L170 areAnnotationChecker]: L28-1 has no Hoare annotation [2022-04-15 09:29:22,012 WARN L170 areAnnotationChecker]: L16 has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: L16 has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: L15-2 has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: assume_abort_if_notEXIT has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: L35-3 has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: L35-3 has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: __VERIFIER_assertEXIT has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: L53-2 has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: L53-2 has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: L35-1 has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: L35-1 has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: L36-1 has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: L36-1 has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: L37 has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: L37 has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: L38 has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: L38 has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: L46-1 has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: L46-1 has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: L47 has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: L47 has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: L59 has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: L59 has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: L60 has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: L45-2 has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: L45-2 has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: L45 has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: L45 has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: L36 has no Hoare annotation [2022-04-15 09:29:22,013 WARN L170 areAnnotationChecker]: L36 has no Hoare annotation [2022-04-15 09:29:22,014 WARN L170 areAnnotationChecker]: L53 has no Hoare annotation [2022-04-15 09:29:22,014 WARN L170 areAnnotationChecker]: L53 has no Hoare annotation [2022-04-15 09:29:22,014 WARN L170 areAnnotationChecker]: mainFINAL has no Hoare annotation [2022-04-15 09:29:22,014 WARN L170 areAnnotationChecker]: L46 has no Hoare annotation [2022-04-15 09:29:22,014 WARN L170 areAnnotationChecker]: L46 has no Hoare annotation [2022-04-15 09:29:22,014 WARN L170 areAnnotationChecker]: mainEXIT has no Hoare annotation [2022-04-15 09:29:22,014 INFO L163 areAnnotationChecker]: CFG has 0 edges. 0 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. 0 times interpolants missing. [2022-04-15 09:29:22,015 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 15.04 09:29:22 BoogieIcfgContainer [2022-04-15 09:29:22,015 INFO L132 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2022-04-15 09:29:22,015 INFO L158 Benchmark]: Toolchain (without parser) took 673527.04ms. Allocated memory was 186.6MB in the beginning and 240.1MB in the end (delta: 53.5MB). Free memory was 138.1MB in the beginning and 173.7MB in the end (delta: -35.6MB). Peak memory consumption was 18.6MB. Max. memory is 8.0GB. [2022-04-15 09:29:22,016 INFO L158 Benchmark]: CDTParser took 0.09ms. Allocated memory is still 186.6MB. Free memory is still 154.2MB. There was no memory consumed. Max. memory is 8.0GB. [2022-04-15 09:29:22,016 INFO L158 Benchmark]: CACSL2BoogieTranslator took 171.60ms. Allocated memory is still 186.6MB. Free memory was 137.8MB in the beginning and 163.4MB in the end (delta: -25.6MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-15 09:29:22,016 INFO L158 Benchmark]: Boogie Preprocessor took 39.44ms. Allocated memory is still 186.6MB. Free memory was 163.4MB in the beginning and 162.1MB in the end (delta: 1.3MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. [2022-04-15 09:29:22,016 INFO L158 Benchmark]: RCFGBuilder took 257.15ms. Allocated memory is still 186.6MB. Free memory was 162.1MB in the beginning and 150.6MB in the end (delta: 11.5MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. [2022-04-15 09:29:22,016 INFO L158 Benchmark]: TraceAbstraction took 673055.02ms. Allocated memory was 186.6MB in the beginning and 240.1MB in the end (delta: 53.5MB). Free memory was 149.8MB in the beginning and 173.7MB in the end (delta: -23.9MB). Peak memory consumption was 30.3MB. Max. memory is 8.0GB. [2022-04-15 09:29:22,016 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.09ms. Allocated memory is still 186.6MB. Free memory is still 154.2MB. There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 171.60ms. Allocated memory is still 186.6MB. Free memory was 137.8MB in the beginning and 163.4MB in the end (delta: -25.6MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * Boogie Preprocessor took 39.44ms. Allocated memory is still 186.6MB. Free memory was 163.4MB in the beginning and 162.1MB in the end (delta: 1.3MB). Peak memory consumption was 1.0MB. Max. memory is 8.0GB. * RCFGBuilder took 257.15ms. Allocated memory is still 186.6MB. Free memory was 162.1MB in the beginning and 150.6MB in the end (delta: 11.5MB). Peak memory consumption was 11.5MB. Max. memory is 8.0GB. * TraceAbstraction took 673055.02ms. Allocated memory was 186.6MB in the beginning and 240.1MB in the end (delta: 53.5MB). Free memory was 149.8MB in the beginning and 173.7MB in the end (delta: -23.9MB). Peak memory consumption was 30.3MB. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - CounterExampleResult [Line: 17]: a call to reach_error is reachable a call to reach_error is reachable We found a FailurePath: [L22] int counter = 0; [L24] unsigned int A, B; [L25] long long r, d, p, q; [L26] A = __VERIFIER_nondet_uint() [L27] B = __VERIFIER_nondet_uint() [L28] CALL assume_abort_if_not(B >= 1) [L12] COND FALSE !(!cond) [L28] RET assume_abort_if_not(B >= 1) [L30] r = A [L31] d = B [L32] p = 1 [L33] q = 0 [L35] EXPR counter++ [L35] COND TRUE counter++<5 [L36] CALL __VERIFIER_assert(q == 0) [L15] COND FALSE !(!(cond)) [L36] RET __VERIFIER_assert(q == 0) [L37] CALL __VERIFIER_assert(r == A) [L15] COND FALSE !(!(cond)) [L37] RET __VERIFIER_assert(r == A) [L38] CALL __VERIFIER_assert(d == B * p) [L15] COND FALSE !(!(cond)) [L38] RET __VERIFIER_assert(d == B * p) [L39] COND FALSE !(!(r >= d)) [L41] d = 2 * d [L42] p = 2 * p [L35] EXPR counter++ [L35] COND TRUE counter++<5 [L36] CALL __VERIFIER_assert(q == 0) [L15] COND FALSE !(!(cond)) [L36] RET __VERIFIER_assert(q == 0) [L37] CALL __VERIFIER_assert(r == A) [L15] COND FALSE !(!(cond)) [L37] RET __VERIFIER_assert(r == A) [L38] CALL __VERIFIER_assert(d == B * p) [L15] COND FALSE !(!(cond)) [L38] RET __VERIFIER_assert(d == B * p) [L39] COND FALSE !(!(r >= d)) [L41] d = 2 * d [L42] p = 2 * p [L35] EXPR counter++ [L35] COND TRUE counter++<5 [L36] CALL __VERIFIER_assert(q == 0) [L15] COND FALSE !(!(cond)) [L36] RET __VERIFIER_assert(q == 0) [L37] CALL __VERIFIER_assert(r == A) [L15] COND FALSE !(!(cond)) [L37] RET __VERIFIER_assert(r == A) [L38] CALL __VERIFIER_assert(d == B * p) [L15] COND FALSE !(!(cond)) [L38] RET __VERIFIER_assert(d == B * p) [L39] COND FALSE !(!(r >= d)) [L41] d = 2 * d [L42] p = 2 * p [L35] EXPR counter++ [L35] COND TRUE counter++<5 [L36] CALL __VERIFIER_assert(q == 0) [L15] COND FALSE !(!(cond)) [L36] RET __VERIFIER_assert(q == 0) [L37] CALL __VERIFIER_assert(r == A) [L15] COND FALSE !(!(cond)) [L37] RET __VERIFIER_assert(r == A) [L38] CALL __VERIFIER_assert(d == B * p) [L15] COND FALSE !(!(cond)) [L38] RET __VERIFIER_assert(d == B * p) [L39] COND TRUE !(r >= d) [L45] EXPR counter++ [L45] COND TRUE counter++<5 [L46] CALL __VERIFIER_assert(A == q*B + r) [L15] COND FALSE !(!(cond)) [L46] RET __VERIFIER_assert(A == q*B + r) [L47] CALL __VERIFIER_assert(d == B*p) [L15] COND FALSE !(!(cond)) [L47] RET __VERIFIER_assert(d == B*p) [L49] COND FALSE !(!(p != 1)) [L51] d = d / 2 [L52] p = p / 2 [L53] COND TRUE r >= d [L54] r = r - d [L55] q = q + p [L45] EXPR counter++ [L45] COND FALSE !(counter++<5) [L59] CALL __VERIFIER_assert(A == d*q + r) [L15] COND TRUE !(cond) [L17] reach_error() - StatisticsResult: Ultimate Automizer benchmark data CFG has 6 procedures, 40 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 673.0s, OverallIterations: 24, TraceHistogramMax: 15, PathProgramHistogramMax: 10, EmptinessCheckTime: 0.0s, AutomataDifference: 44.0s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, PartialOrderReductionTime: 0.0s, HoareTripleCheckerStatistics: 1 mSolverCounterUnknown, 514 SdHoareTripleChecker+Valid, 13.8s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 446 mSDsluCounter, 3941 SdHoareTripleChecker+Invalid, 13.7s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 5 IncrementalHoareTripleChecker+Unchecked, 2815 mSDsCounter, 303 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 2592 IncrementalHoareTripleChecker+Invalid, 2901 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 303 mSolverCounterUnsat, 1126 mSDtfsCounter, 2592 mSolverCounterSat, 0.1s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 2541 GetRequests, 2316 SyntacticMatches, 21 SemanticMatches, 204 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 347 ImplicationChecksByTransitivity, 51.8s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=207occurred in iteration=20, InterpolantAutomatonStates: 177, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 2.7s AutomataMinimizationTime, 23 MinimizatonAttempts, 51 StatesRemovedByMinimization, 15 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: No data available, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available RESULT: Ultimate proved your program to be incorrect! [2022-04-15 09:29:22,221 WARN L435 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forcibly destroying the process [2022-04-15 09:29:22,240 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 137 Received shutdown request...