/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_unwindbound10.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-34549b5 [2022-04-08 06:17:08,368 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-08 06:17:08,369 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-08 06:17:08,422 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-08 06:17:08,423 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-08 06:17:08,429 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-08 06:17:08,431 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-08 06:17:08,433 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-08 06:17:08,435 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-08 06:17:08,438 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-08 06:17:08,439 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-08 06:17:08,440 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-08 06:17:08,440 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-08 06:17:08,441 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-08 06:17:08,447 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-08 06:17:08,450 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-08 06:17:08,450 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-08 06:17:08,450 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-08 06:17:08,456 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-08 06:17:08,489 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-08 06:17:08,491 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-08 06:17:08,492 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-08 06:17:08,492 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-08 06:17:08,493 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-08 06:17:08,494 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-08 06:17:08,498 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-08 06:17:08,499 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-08 06:17:08,499 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-08 06:17:08,499 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-08 06:17:08,499 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-08 06:17:08,500 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-08 06:17:08,501 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-08 06:17:08,502 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-08 06:17:08,502 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-08 06:17:08,502 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-08 06:17:08,503 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-08 06:17:08,503 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-08 06:17:08,503 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-08 06:17:08,504 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-08 06:17:08,504 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-08 06:17:08,504 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-08 06:17:08,505 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-08 06:17:08,506 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf [2022-04-08 06:17:08,528 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-08 06:17:08,529 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-08 06:17:08,530 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-08 06:17:08,530 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-08 06:17:08,530 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-08 06:17:08,530 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-08 06:17:08,530 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-08 06:17:08,530 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-08 06:17:08,530 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-08 06:17:08,531 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-08 06:17:08,531 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-08 06:17:08,531 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-08 06:17:08,531 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-08 06:17:08,531 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-08 06:17:08,531 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-08 06:17:08,531 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-08 06:17:08,531 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-08 06:17:08,532 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-08 06:17:08,532 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 06:17:08,532 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-08 06:17:08,532 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-08 06:17:08,532 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-08 06:17:08,532 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-08 06:17:08,532 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-08 06:17:08,532 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-08 06:17:08,532 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-08 06:17:08,854 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-08 06:17:08,893 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-08 06:17:08,894 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-08 06:17:08,895 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-08 06:17:08,895 INFO L275 PluginConnector]: CDTParser initialized [2022-04-08 06:17:08,896 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/hard-ll_unwindbound10.c [2022-04-08 06:17:08,987 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4c784a935/8797fa9beb06457686dc0472a3568ec0/FLAG7f1fd7657 [2022-04-08 06:17:09,449 INFO L306 CDTParser]: Found 1 translation units. [2022-04-08 06:17:09,450 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/hard-ll_unwindbound10.c [2022-04-08 06:17:09,455 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4c784a935/8797fa9beb06457686dc0472a3568ec0/FLAG7f1fd7657 [2022-04-08 06:17:09,469 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/4c784a935/8797fa9beb06457686dc0472a3568ec0 [2022-04-08 06:17:09,471 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-08 06:17:09,472 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-08 06:17:09,474 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-08 06:17:09,474 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-08 06:17:09,476 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-08 06:17:09,477 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 06:17:09" (1/1) ... [2022-04-08 06:17:09,478 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5ce58fd6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:17:09, skipping insertion in model container [2022-04-08 06:17:09,478 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 08.04 06:17:09" (1/1) ... [2022-04-08 06:17:09,483 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-08 06:17:09,507 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-08 06:17:09,668 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_unwindbound10.c[538,551] [2022-04-08 06:17:09,691 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 06:17:09,696 INFO L203 MainTranslator]: Completed pre-run [2022-04-08 06:17:09,730 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_unwindbound10.c[538,551] [2022-04-08 06:17:09,754 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-08 06:17:09,782 INFO L208 MainTranslator]: Completed translation [2022-04-08 06:17:09,782 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:17:09 WrapperNode [2022-04-08 06:17:09,783 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-08 06:17:09,783 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-08 06:17:09,784 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-08 06:17:09,784 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-08 06:17:09,791 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:17:09" (1/1) ... [2022-04-08 06:17:09,791 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:17:09" (1/1) ... [2022-04-08 06:17:09,802 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:17:09" (1/1) ... [2022-04-08 06:17:09,802 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:17:09" (1/1) ... [2022-04-08 06:17:09,807 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:17:09" (1/1) ... [2022-04-08 06:17:09,809 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:17:09" (1/1) ... [2022-04-08 06:17:09,810 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:17:09" (1/1) ... [2022-04-08 06:17:09,832 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-08 06:17:09,833 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-08 06:17:09,833 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-08 06:17:09,833 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-08 06:17:09,834 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:17:09" (1/1) ... [2022-04-08 06:17:09,850 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-08 06:17:09,858 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:17:09,894 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-08 06:17:09,905 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-08 06:17:09,956 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-08 06:17:09,956 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-08 06:17:09,956 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-08 06:17:09,956 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-08 06:17:09,956 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-08 06:17:09,956 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-08 06:17:09,956 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-08 06:17:09,957 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-08 06:17:09,957 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-08 06:17:09,957 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-08 06:17:09,957 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_uint [2022-04-08 06:17:09,957 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-08 06:17:09,957 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-08 06:17:09,957 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-08 06:17:09,957 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-08 06:17:09,957 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-08 06:17:09,957 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-08 06:17:09,957 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-08 06:17:09,957 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-08 06:17:09,957 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-08 06:17:10,040 INFO L234 CfgBuilder]: Building ICFG [2022-04-08 06:17:10,042 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-08 06:17:10,324 INFO L275 CfgBuilder]: Performing block encoding [2022-04-08 06:17:10,341 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-08 06:17:10,341 INFO L299 CfgBuilder]: Removed 2 assume(true) statements. [2022-04-08 06:17:10,342 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 06:17:10 BoogieIcfgContainer [2022-04-08 06:17:10,342 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-08 06:17:10,344 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-08 06:17:10,344 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-08 06:17:10,350 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-08 06:17:10,351 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 08.04 06:17:09" (1/3) ... [2022-04-08 06:17:10,351 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@76c4c63f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 06:17:10, skipping insertion in model container [2022-04-08 06:17:10,351 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 08.04 06:17:09" (2/3) ... [2022-04-08 06:17:10,351 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@76c4c63f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 08.04 06:17:10, skipping insertion in model container [2022-04-08 06:17:10,352 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 08.04 06:17:10" (3/3) ... [2022-04-08 06:17:10,352 INFO L111 eAbstractionObserver]: Analyzing ICFG hard-ll_unwindbound10.c [2022-04-08 06:17:10,355 INFO L203 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-08 06:17:10,355 INFO L162 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-08 06:17:10,443 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-08 06:17:10,473 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-08 06:17:10,474 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-08 06:17:10,496 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-08 06:17:10,500 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-08 06:17:10,500 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:17:10,501 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-08 06:17:10,501 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:17:10,505 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:17:10,505 INFO L85 PathProgramCache]: Analyzing trace with hash 1191571617, now seen corresponding path program 1 times [2022-04-08 06:17:10,512 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:17:10,514 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1918880823] [2022-04-08 06:17:10,524 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:17:10,524 INFO L85 PathProgramCache]: Analyzing trace with hash 1191571617, now seen corresponding path program 2 times [2022-04-08 06:17:10,526 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:17:10,527 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [838820025] [2022-04-08 06:17:10,527 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:17:10,527 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:17:10,620 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:17:10,683 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 06:17:10,691 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:17:10,708 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-08 06:17:10,708 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume true; {40#true} is VALID [2022-04-08 06:17:10,708 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {40#true} {40#true} #96#return; {40#true} is VALID [2022-04-08 06:17:10,709 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-08 06:17:10,714 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:17:10,722 INFO L290 TraceCheckUtils]: 0: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-08 06:17:10,723 INFO L290 TraceCheckUtils]: 1: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-08 06:17:10,723 INFO L290 TraceCheckUtils]: 2: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-08 06:17:10,723 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {41#false} {40#true} #80#return; {41#false} is VALID [2022-04-08 06:17:10,724 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-08 06:17:10,725 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-08 06:17:10,725 INFO L290 TraceCheckUtils]: 2: Hoare triple {40#true} assume true; {40#true} is VALID [2022-04-08 06:17:10,725 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {40#true} {40#true} #96#return; {40#true} is VALID [2022-04-08 06:17:10,726 INFO L272 TraceCheckUtils]: 4: Hoare triple {40#true} call #t~ret8 := main(); {40#true} is VALID [2022-04-08 06:17:10,726 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-08 06:17:10,726 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-08 06:17:10,727 INFO L290 TraceCheckUtils]: 7: Hoare triple {40#true} ~cond := #in~cond; {40#true} is VALID [2022-04-08 06:17:10,728 INFO L290 TraceCheckUtils]: 8: Hoare triple {40#true} assume 0 == ~cond;assume false; {41#false} is VALID [2022-04-08 06:17:10,728 INFO L290 TraceCheckUtils]: 9: Hoare triple {41#false} assume true; {41#false} is VALID [2022-04-08 06:17:10,728 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {41#false} {40#true} #80#return; {41#false} is VALID [2022-04-08 06:17:10,729 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-08 06:17:10,729 INFO L290 TraceCheckUtils]: 12: Hoare triple {41#false} assume !true; {41#false} is VALID [2022-04-08 06:17:10,729 INFO L290 TraceCheckUtils]: 13: Hoare triple {41#false} assume !true; {41#false} is VALID [2022-04-08 06:17:10,729 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-08 06:17:10,730 INFO L290 TraceCheckUtils]: 15: Hoare triple {41#false} ~cond := #in~cond; {41#false} is VALID [2022-04-08 06:17:10,730 INFO L290 TraceCheckUtils]: 16: Hoare triple {41#false} assume 0 == ~cond; {41#false} is VALID [2022-04-08 06:17:10,730 INFO L290 TraceCheckUtils]: 17: Hoare triple {41#false} assume !false; {41#false} is VALID [2022-04-08 06:17:10,730 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-08 06:17:10,730 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:17:10,731 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [838820025] [2022-04-08 06:17:10,732 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [838820025] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:17:10,732 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:17:10,732 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 06:17:10,734 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:17:10,735 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1918880823] [2022-04-08 06:17:10,735 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1918880823] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:17:10,735 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:17:10,735 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-08 06:17:10,735 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1085635807] [2022-04-08 06:17:10,736 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:17:10,740 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-08 06:17:10,741 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:17:10,743 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-08 06:17:10,770 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-08 06:17:10,770 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-08 06:17:10,770 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:17:10,789 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-08 06:17:10,790 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-08 06:17:10,793 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-08 06:17:10,973 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:10,973 INFO L93 Difference]: Finished difference Result 66 states and 101 transitions. [2022-04-08 06:17:10,973 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-08 06:17:10,974 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-08 06:17:10,974 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:17:10,975 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-08 06:17:10,987 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 101 transitions. [2022-04-08 06:17:10,987 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-08 06:17:10,997 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 101 transitions. [2022-04-08 06:17:10,997 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 101 transitions. [2022-04-08 06:17:11,089 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-08 06:17:11,097 INFO L225 Difference]: With dead ends: 66 [2022-04-08 06:17:11,097 INFO L226 Difference]: Without dead ends: 33 [2022-04-08 06:17:11,100 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-08 06:17:11,102 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-08 06:17:11,103 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-08 06:17:11,129 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 33 states. [2022-04-08 06:17:11,143 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 33 to 32. [2022-04-08 06:17:11,144 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:17:11,145 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-08 06:17:11,145 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-08 06:17:11,146 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-08 06:17:11,150 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:11,150 INFO L93 Difference]: Finished difference Result 33 states and 43 transitions. [2022-04-08 06:17:11,150 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 43 transitions. [2022-04-08 06:17:11,151 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:17:11,151 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:17:11,152 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-08 06:17:11,153 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-08 06:17:11,159 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:11,161 INFO L93 Difference]: Finished difference Result 33 states and 43 transitions. [2022-04-08 06:17:11,161 INFO L276 IsEmpty]: Start isEmpty. Operand 33 states and 43 transitions. [2022-04-08 06:17:11,165 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:17:11,165 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:17:11,165 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:17:11,165 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:17:11,166 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-08 06:17:11,168 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 42 transitions. [2022-04-08 06:17:11,170 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 42 transitions. Word has length 18 [2022-04-08 06:17:11,170 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:17:11,170 INFO L478 AbstractCegarLoop]: Abstraction has 32 states and 42 transitions. [2022-04-08 06:17:11,170 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-08 06:17:11,170 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 32 states and 42 transitions. [2022-04-08 06:17:11,209 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-08 06:17:11,209 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 42 transitions. [2022-04-08 06:17:11,209 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-08 06:17:11,209 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:17:11,210 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-08 06:17:11,210 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-08 06:17:11,210 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:17:11,212 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:17:11,212 INFO L85 PathProgramCache]: Analyzing trace with hash 336486197, now seen corresponding path program 1 times [2022-04-08 06:17:11,213 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:17:11,213 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1462702513] [2022-04-08 06:17:11,220 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:17:11,221 INFO L85 PathProgramCache]: Analyzing trace with hash 336486197, now seen corresponding path program 2 times [2022-04-08 06:17:11,221 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:17:11,221 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1060820151] [2022-04-08 06:17:11,221 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:17:11,221 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:17:11,246 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:17:11,313 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 06:17:11,316 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:17:11,329 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-08 06:17:11,329 INFO L290 TraceCheckUtils]: 1: Hoare triple {314#true} assume true; {314#true} is VALID [2022-04-08 06:17:11,329 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {314#true} {314#true} #96#return; {314#true} is VALID [2022-04-08 06:17:11,330 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-08 06:17:11,333 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:17:11,338 INFO L290 TraceCheckUtils]: 0: Hoare triple {314#true} ~cond := #in~cond; {314#true} is VALID [2022-04-08 06:17:11,338 INFO L290 TraceCheckUtils]: 1: Hoare triple {314#true} assume !(0 == ~cond); {314#true} is VALID [2022-04-08 06:17:11,338 INFO L290 TraceCheckUtils]: 2: Hoare triple {314#true} assume true; {314#true} is VALID [2022-04-08 06:17:11,339 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {314#true} {314#true} #80#return; {314#true} is VALID [2022-04-08 06:17:11,339 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-08 06:17:11,340 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-08 06:17:11,340 INFO L290 TraceCheckUtils]: 2: Hoare triple {314#true} assume true; {314#true} is VALID [2022-04-08 06:17:11,340 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {314#true} {314#true} #96#return; {314#true} is VALID [2022-04-08 06:17:11,340 INFO L272 TraceCheckUtils]: 4: Hoare triple {314#true} call #t~ret8 := main(); {314#true} is VALID [2022-04-08 06:17:11,340 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-08 06:17:11,340 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-08 06:17:11,341 INFO L290 TraceCheckUtils]: 7: Hoare triple {314#true} ~cond := #in~cond; {314#true} is VALID [2022-04-08 06:17:11,341 INFO L290 TraceCheckUtils]: 8: Hoare triple {314#true} assume !(0 == ~cond); {314#true} is VALID [2022-04-08 06:17:11,342 INFO L290 TraceCheckUtils]: 9: Hoare triple {314#true} assume true; {314#true} is VALID [2022-04-08 06:17:11,342 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {314#true} {314#true} #80#return; {314#true} is VALID [2022-04-08 06:17:11,342 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-08 06:17:11,343 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-08 06:17:11,343 INFO L290 TraceCheckUtils]: 13: Hoare triple {323#(= main_~q~0 0)} assume !!(#t~post6 < 10);havoc #t~post6; {323#(= main_~q~0 0)} is VALID [2022-04-08 06:17:11,344 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-08 06:17:11,344 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-08 06:17:11,347 INFO L290 TraceCheckUtils]: 16: Hoare triple {325#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {315#false} is VALID [2022-04-08 06:17:11,347 INFO L290 TraceCheckUtils]: 17: Hoare triple {315#false} assume !false; {315#false} is VALID [2022-04-08 06:17:11,348 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-08 06:17:11,348 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:17:11,350 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1060820151] [2022-04-08 06:17:11,350 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1060820151] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:17:11,351 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:17:11,351 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 06:17:11,352 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:17:11,352 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1462702513] [2022-04-08 06:17:11,353 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1462702513] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:17:11,353 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:17:11,353 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 06:17:11,353 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1646036982] [2022-04-08 06:17:11,353 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:17:11,354 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-08 06:17:11,355 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:17:11,355 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-08 06:17:11,368 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-08 06:17:11,369 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 06:17:11,369 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:17:11,369 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 06:17:11,370 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-08 06:17:11,370 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-08 06:17:11,810 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:11,810 INFO L93 Difference]: Finished difference Result 47 states and 62 transitions. [2022-04-08 06:17:11,810 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 06:17:11,810 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-08 06:17:11,811 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:17:11,811 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-08 06:17:11,813 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 62 transitions. [2022-04-08 06:17:11,814 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-08 06:17:11,816 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 62 transitions. [2022-04-08 06:17:11,816 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 62 transitions. [2022-04-08 06:17:11,902 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-08 06:17:11,904 INFO L225 Difference]: With dead ends: 47 [2022-04-08 06:17:11,904 INFO L226 Difference]: Without dead ends: 45 [2022-04-08 06:17:11,905 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-08 06:17:11,907 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.2s IncrementalHoareTripleChecker+Time [2022-04-08 06:17:11,907 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.2s Time] [2022-04-08 06:17:11,909 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 45 states. [2022-04-08 06:17:11,917 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 45 to 36. [2022-04-08 06:17:11,917 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:17:11,918 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-08 06:17:11,918 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-08 06:17:11,928 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-08 06:17:11,935 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:11,935 INFO L93 Difference]: Finished difference Result 45 states and 60 transitions. [2022-04-08 06:17:11,935 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 60 transitions. [2022-04-08 06:17:11,940 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:17:11,940 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:17:11,941 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-08 06:17:11,941 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-08 06:17:11,946 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:11,946 INFO L93 Difference]: Finished difference Result 45 states and 60 transitions. [2022-04-08 06:17:11,946 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 60 transitions. [2022-04-08 06:17:11,947 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:17:11,947 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:17:11,947 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:17:11,947 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:17:11,947 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-08 06:17:11,948 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 36 states to 36 states and 45 transitions. [2022-04-08 06:17:11,948 INFO L78 Accepts]: Start accepts. Automaton has 36 states and 45 transitions. Word has length 18 [2022-04-08 06:17:11,949 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:17:11,949 INFO L478 AbstractCegarLoop]: Abstraction has 36 states and 45 transitions. [2022-04-08 06:17:11,949 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-08 06:17:11,949 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 36 states and 45 transitions. [2022-04-08 06:17:12,012 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-08 06:17:12,013 INFO L276 IsEmpty]: Start isEmpty. Operand 36 states and 45 transitions. [2022-04-08 06:17:12,013 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 21 [2022-04-08 06:17:12,013 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:17:12,013 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-08 06:17:12,013 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2022-04-08 06:17:12,014 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:17:12,014 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:17:12,014 INFO L85 PathProgramCache]: Analyzing trace with hash -1819267188, now seen corresponding path program 1 times [2022-04-08 06:17:12,014 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:17:12,014 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1524837669] [2022-04-08 06:17:12,014 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:17:12,015 INFO L85 PathProgramCache]: Analyzing trace with hash -1819267188, now seen corresponding path program 2 times [2022-04-08 06:17:12,015 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:17:12,015 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1850434243] [2022-04-08 06:17:12,015 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:17:12,015 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:17:12,030 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:17:12,030 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2101679303] [2022-04-08 06:17:12,031 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:17:12,031 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:17:12,031 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:17:12,071 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-08 06:17:12,103 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-08 06:17:12,113 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-08 06:17:12,113 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:17:12,114 INFO L263 TraceCheckSpWp]: Trace formula consists of 87 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-08 06:17:12,138 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:17:12,143 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:17:12,498 INFO L272 TraceCheckUtils]: 0: Hoare triple {593#true} call ULTIMATE.init(); {593#true} is VALID [2022-04-08 06:17:12,499 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-08 06:17:12,500 INFO L290 TraceCheckUtils]: 2: Hoare triple {601#(<= ~counter~0 0)} assume true; {601#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:12,501 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {601#(<= ~counter~0 0)} {593#true} #96#return; {601#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:12,502 INFO L272 TraceCheckUtils]: 4: Hoare triple {601#(<= ~counter~0 0)} call #t~ret8 := main(); {601#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:12,502 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-08 06:17:12,502 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-08 06:17:12,503 INFO L290 TraceCheckUtils]: 7: Hoare triple {601#(<= ~counter~0 0)} ~cond := #in~cond; {601#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:12,503 INFO L290 TraceCheckUtils]: 8: Hoare triple {601#(<= ~counter~0 0)} assume !(0 == ~cond); {601#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:12,504 INFO L290 TraceCheckUtils]: 9: Hoare triple {601#(<= ~counter~0 0)} assume true; {601#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:12,504 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {601#(<= ~counter~0 0)} {601#(<= ~counter~0 0)} #80#return; {601#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:12,504 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-08 06:17:12,505 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-08 06:17:12,505 INFO L290 TraceCheckUtils]: 13: Hoare triple {635#(<= |main_#t~post6| 0)} assume !(#t~post6 < 10);havoc #t~post6; {594#false} is VALID [2022-04-08 06:17:12,505 INFO L290 TraceCheckUtils]: 14: Hoare triple {594#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {594#false} is VALID [2022-04-08 06:17:12,506 INFO L290 TraceCheckUtils]: 15: Hoare triple {594#false} assume !(#t~post7 < 10);havoc #t~post7; {594#false} is VALID [2022-04-08 06:17:12,506 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-08 06:17:12,506 INFO L290 TraceCheckUtils]: 17: Hoare triple {594#false} ~cond := #in~cond; {594#false} is VALID [2022-04-08 06:17:12,506 INFO L290 TraceCheckUtils]: 18: Hoare triple {594#false} assume 0 == ~cond; {594#false} is VALID [2022-04-08 06:17:12,506 INFO L290 TraceCheckUtils]: 19: Hoare triple {594#false} assume !false; {594#false} is VALID [2022-04-08 06:17:12,506 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-08 06:17:12,506 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 06:17:12,507 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:17:12,507 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1850434243] [2022-04-08 06:17:12,507 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:17:12,507 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2101679303] [2022-04-08 06:17:12,507 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2101679303] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:17:12,507 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:17:12,507 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 06:17:12,508 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:17:12,508 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1524837669] [2022-04-08 06:17:12,508 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1524837669] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:17:12,508 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:17:12,508 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-08 06:17:12,508 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1454716654] [2022-04-08 06:17:12,508 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:17:12,509 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-08 06:17:12,509 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:17:12,509 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-08 06:17:12,537 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-08 06:17:12,537 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-08 06:17:12,537 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:17:12,537 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-08 06:17:12,537 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-08 06:17:12,538 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-08 06:17:12,679 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:12,679 INFO L93 Difference]: Finished difference Result 52 states and 67 transitions. [2022-04-08 06:17:12,679 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-08 06:17:12,679 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-08 06:17:12,680 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:17:12,680 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-08 06:17:12,683 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 64 transitions. [2022-04-08 06:17:12,683 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-08 06:17:12,685 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 64 transitions. [2022-04-08 06:17:12,685 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 64 transitions. [2022-04-08 06:17:12,750 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-08 06:17:12,753 INFO L225 Difference]: With dead ends: 52 [2022-04-08 06:17:12,753 INFO L226 Difference]: Without dead ends: 38 [2022-04-08 06:17:12,753 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-08 06:17:12,757 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-08 06:17:12,762 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-08 06:17:12,763 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 38 states. [2022-04-08 06:17:12,791 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 38 to 38. [2022-04-08 06:17:12,791 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:17:12,792 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-08 06:17:12,792 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-08 06:17:12,793 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-08 06:17:12,794 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:12,794 INFO L93 Difference]: Finished difference Result 38 states and 47 transitions. [2022-04-08 06:17:12,794 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 47 transitions. [2022-04-08 06:17:12,794 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:17:12,794 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:17:12,795 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-08 06:17:12,795 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-08 06:17:12,798 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:12,798 INFO L93 Difference]: Finished difference Result 38 states and 47 transitions. [2022-04-08 06:17:12,799 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 47 transitions. [2022-04-08 06:17:12,799 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:17:12,799 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:17:12,799 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:17:12,799 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:17:12,799 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-08 06:17:12,801 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 38 states to 38 states and 47 transitions. [2022-04-08 06:17:12,801 INFO L78 Accepts]: Start accepts. Automaton has 38 states and 47 transitions. Word has length 20 [2022-04-08 06:17:12,801 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:17:12,801 INFO L478 AbstractCegarLoop]: Abstraction has 38 states and 47 transitions. [2022-04-08 06:17:12,801 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-08 06:17:12,801 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 38 states and 47 transitions. [2022-04-08 06:17:12,856 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-08 06:17:12,856 INFO L276 IsEmpty]: Start isEmpty. Operand 38 states and 47 transitions. [2022-04-08 06:17:12,856 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-04-08 06:17:12,857 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:17:12,857 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-08 06:17:12,887 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-08 06:17:13,073 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-08 06:17:13,073 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:17:13,074 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:17:13,074 INFO L85 PathProgramCache]: Analyzing trace with hash -784889968, now seen corresponding path program 1 times [2022-04-08 06:17:13,074 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:17:13,074 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1502058164] [2022-04-08 06:17:13,074 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:17:13,075 INFO L85 PathProgramCache]: Analyzing trace with hash -784889968, now seen corresponding path program 2 times [2022-04-08 06:17:13,075 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:17:13,075 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [519726987] [2022-04-08 06:17:13,075 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:17:13,075 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:17:13,089 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:17:13,194 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-08 06:17:13,196 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:17:13,201 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-08 06:17:13,201 INFO L290 TraceCheckUtils]: 1: Hoare triple {912#true} assume true; {912#true} is VALID [2022-04-08 06:17:13,201 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {912#true} {912#true} #96#return; {912#true} is VALID [2022-04-08 06:17:13,201 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-08 06:17:13,204 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:17:13,212 INFO L290 TraceCheckUtils]: 0: Hoare triple {912#true} ~cond := #in~cond; {912#true} is VALID [2022-04-08 06:17:13,212 INFO L290 TraceCheckUtils]: 1: Hoare triple {912#true} assume !(0 == ~cond); {912#true} is VALID [2022-04-08 06:17:13,212 INFO L290 TraceCheckUtils]: 2: Hoare triple {912#true} assume true; {912#true} is VALID [2022-04-08 06:17:13,212 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {912#true} {912#true} #80#return; {912#true} is VALID [2022-04-08 06:17:13,213 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 14 [2022-04-08 06:17:13,215 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:17:13,220 INFO L290 TraceCheckUtils]: 0: Hoare triple {912#true} ~cond := #in~cond; {912#true} is VALID [2022-04-08 06:17:13,220 INFO L290 TraceCheckUtils]: 1: Hoare triple {912#true} assume !(0 == ~cond); {912#true} is VALID [2022-04-08 06:17:13,220 INFO L290 TraceCheckUtils]: 2: Hoare triple {912#true} assume true; {912#true} is VALID [2022-04-08 06:17:13,221 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-08 06:17:13,222 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-08 06:17:13,222 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-08 06:17:13,222 INFO L290 TraceCheckUtils]: 2: Hoare triple {912#true} assume true; {912#true} is VALID [2022-04-08 06:17:13,222 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {912#true} {912#true} #96#return; {912#true} is VALID [2022-04-08 06:17:13,222 INFO L272 TraceCheckUtils]: 4: Hoare triple {912#true} call #t~ret8 := main(); {912#true} is VALID [2022-04-08 06:17:13,222 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-08 06:17:13,223 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-08 06:17:13,223 INFO L290 TraceCheckUtils]: 7: Hoare triple {912#true} ~cond := #in~cond; {912#true} is VALID [2022-04-08 06:17:13,223 INFO L290 TraceCheckUtils]: 8: Hoare triple {912#true} assume !(0 == ~cond); {912#true} is VALID [2022-04-08 06:17:13,223 INFO L290 TraceCheckUtils]: 9: Hoare triple {912#true} assume true; {912#true} is VALID [2022-04-08 06:17:13,223 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {912#true} {912#true} #80#return; {912#true} is VALID [2022-04-08 06:17:13,239 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-08 06:17:13,240 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-08 06:17:13,240 INFO L290 TraceCheckUtils]: 13: Hoare triple {921#(= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296)))} assume !!(#t~post6 < 10);havoc #t~post6; {921#(= main_~A~0 (+ main_~r~0 (* (div main_~A~0 4294967296) 4294967296)))} is VALID [2022-04-08 06:17:13,241 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-08 06:17:13,241 INFO L290 TraceCheckUtils]: 15: Hoare triple {912#true} ~cond := #in~cond; {912#true} is VALID [2022-04-08 06:17:13,241 INFO L290 TraceCheckUtils]: 16: Hoare triple {912#true} assume !(0 == ~cond); {912#true} is VALID [2022-04-08 06:17:13,241 INFO L290 TraceCheckUtils]: 17: Hoare triple {912#true} assume true; {912#true} is VALID [2022-04-08 06:17:13,242 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-08 06:17:13,242 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-08 06:17:13,245 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-08 06:17:13,245 INFO L290 TraceCheckUtils]: 21: Hoare triple {927#(not (= __VERIFIER_assert_~cond 0))} assume 0 == ~cond; {913#false} is VALID [2022-04-08 06:17:13,245 INFO L290 TraceCheckUtils]: 22: Hoare triple {913#false} assume !false; {913#false} is VALID [2022-04-08 06:17:13,245 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-08 06:17:13,245 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:17:13,246 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [519726987] [2022-04-08 06:17:13,246 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [519726987] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:17:13,246 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:17:13,246 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 06:17:13,246 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:17:13,246 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1502058164] [2022-04-08 06:17:13,246 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1502058164] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:17:13,246 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:17:13,246 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 06:17:13,246 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1650609660] [2022-04-08 06:17:13,246 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:17:13,247 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-08 06:17:13,247 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:17:13,247 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-08 06:17:13,264 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-08 06:17:13,264 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 06:17:13,264 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:17:13,265 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 06:17:13,265 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=9, Invalid=21, Unknown=0, NotChecked=0, Total=30 [2022-04-08 06:17:13,265 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-08 06:17:13,683 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:13,683 INFO L93 Difference]: Finished difference Result 52 states and 66 transitions. [2022-04-08 06:17:13,684 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 06:17:13,685 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-08 06:17:13,685 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:17:13,685 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-08 06:17:13,686 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 62 transitions. [2022-04-08 06:17:13,686 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-08 06:17:13,687 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 62 transitions. [2022-04-08 06:17:13,687 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 62 transitions. [2022-04-08 06:17:13,791 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-08 06:17:13,792 INFO L225 Difference]: With dead ends: 52 [2022-04-08 06:17:13,792 INFO L226 Difference]: Without dead ends: 50 [2022-04-08 06:17:13,792 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-08 06:17:13,793 INFO L913 BasicCegarLoop]: 39 mSDtfsCounter, 23 mSDsluCounter, 44 mSDsCounter, 0 mSdLazyCounter, 112 mSolverCounterSat, 14 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s 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.2s IncrementalHoareTripleChecker+Time [2022-04-08 06:17:13,793 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.2s Time] [2022-04-08 06:17:13,793 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2022-04-08 06:17:13,809 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 42. [2022-04-08 06:17:13,810 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:17:13,810 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-08 06:17:13,810 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-08 06:17:13,810 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-08 06:17:13,812 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:13,812 INFO L93 Difference]: Finished difference Result 50 states and 64 transitions. [2022-04-08 06:17:13,812 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 64 transitions. [2022-04-08 06:17:13,812 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:17:13,813 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:17:13,813 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-08 06:17:13,813 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-08 06:17:13,814 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:13,814 INFO L93 Difference]: Finished difference Result 50 states and 64 transitions. [2022-04-08 06:17:13,814 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 64 transitions. [2022-04-08 06:17:13,815 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:17:13,815 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:17:13,815 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:17:13,815 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:17:13,816 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-08 06:17:13,817 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 42 states to 42 states and 50 transitions. [2022-04-08 06:17:13,817 INFO L78 Accepts]: Start accepts. Automaton has 42 states and 50 transitions. Word has length 23 [2022-04-08 06:17:13,817 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:17:13,817 INFO L478 AbstractCegarLoop]: Abstraction has 42 states and 50 transitions. [2022-04-08 06:17:13,818 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-08 06:17:13,818 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 42 states and 50 transitions. [2022-04-08 06:17:13,884 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-08 06:17:13,884 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 50 transitions. [2022-04-08 06:17:13,885 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-08 06:17:13,885 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:17:13,885 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-08 06:17:13,885 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3 [2022-04-08 06:17:13,885 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:17:13,885 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:17:13,886 INFO L85 PathProgramCache]: Analyzing trace with hash -1024624683, now seen corresponding path program 1 times [2022-04-08 06:17:13,886 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:17:13,886 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1439227438] [2022-04-08 06:17:13,889 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:17:13,889 INFO L85 PathProgramCache]: Analyzing trace with hash -1024624683, now seen corresponding path program 2 times [2022-04-08 06:17:13,889 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:17:13,889 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1266130875] [2022-04-08 06:17:13,889 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:17:13,890 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:17:13,913 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:17:13,913 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [920499274] [2022-04-08 06:17:13,913 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:17:13,913 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:17:13,913 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:17:13,927 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-08 06:17:13,947 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-08 06:17:14,022 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:17:14,022 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:17:14,023 INFO L263 TraceCheckSpWp]: Trace formula consists of 100 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 06:17:14,030 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:17:14,033 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:17:14,154 INFO L272 TraceCheckUtils]: 0: Hoare triple {1227#true} call ULTIMATE.init(); {1227#true} is VALID [2022-04-08 06:17:14,154 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-08 06:17:14,154 INFO L290 TraceCheckUtils]: 2: Hoare triple {1227#true} assume true; {1227#true} is VALID [2022-04-08 06:17:14,155 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1227#true} {1227#true} #96#return; {1227#true} is VALID [2022-04-08 06:17:14,155 INFO L272 TraceCheckUtils]: 4: Hoare triple {1227#true} call #t~ret8 := main(); {1227#true} is VALID [2022-04-08 06:17:14,155 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-08 06:17:14,155 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-08 06:17:14,155 INFO L290 TraceCheckUtils]: 7: Hoare triple {1227#true} ~cond := #in~cond; {1227#true} is VALID [2022-04-08 06:17:14,155 INFO L290 TraceCheckUtils]: 8: Hoare triple {1227#true} assume !(0 == ~cond); {1227#true} is VALID [2022-04-08 06:17:14,155 INFO L290 TraceCheckUtils]: 9: Hoare triple {1227#true} assume true; {1227#true} is VALID [2022-04-08 06:17:14,155 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1227#true} {1227#true} #80#return; {1227#true} is VALID [2022-04-08 06:17:14,156 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-08 06:17:14,156 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-08 06:17:14,157 INFO L290 TraceCheckUtils]: 13: Hoare triple {1265#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {1265#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-08 06:17:14,157 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-08 06:17:14,157 INFO L290 TraceCheckUtils]: 15: Hoare triple {1227#true} ~cond := #in~cond; {1227#true} is VALID [2022-04-08 06:17:14,157 INFO L290 TraceCheckUtils]: 16: Hoare triple {1227#true} assume !(0 == ~cond); {1227#true} is VALID [2022-04-08 06:17:14,157 INFO L290 TraceCheckUtils]: 17: Hoare triple {1227#true} assume true; {1227#true} is VALID [2022-04-08 06:17:14,158 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-08 06:17:14,158 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-08 06:17:14,158 INFO L290 TraceCheckUtils]: 20: Hoare triple {1227#true} ~cond := #in~cond; {1227#true} is VALID [2022-04-08 06:17:14,158 INFO L290 TraceCheckUtils]: 21: Hoare triple {1227#true} assume !(0 == ~cond); {1227#true} is VALID [2022-04-08 06:17:14,158 INFO L290 TraceCheckUtils]: 22: Hoare triple {1227#true} assume true; {1227#true} is VALID [2022-04-08 06:17:14,159 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-08 06:17:14,160 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-08 06:17:14,160 INFO L290 TraceCheckUtils]: 25: Hoare triple {1305#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1309#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:17:14,160 INFO L290 TraceCheckUtils]: 26: Hoare triple {1309#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1228#false} is VALID [2022-04-08 06:17:14,160 INFO L290 TraceCheckUtils]: 27: Hoare triple {1228#false} assume !false; {1228#false} is VALID [2022-04-08 06:17:14,161 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-08 06:17:14,161 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 06:17:14,161 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:17:14,161 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1266130875] [2022-04-08 06:17:14,161 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:17:14,161 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [920499274] [2022-04-08 06:17:14,161 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [920499274] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:17:14,161 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:17:14,161 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 06:17:14,161 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:17:14,162 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1439227438] [2022-04-08 06:17:14,162 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1439227438] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:17:14,162 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:17:14,162 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 06:17:14,162 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1518172063] [2022-04-08 06:17:14,162 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:17:14,162 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-08 06:17:14,162 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:17:14,163 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-08 06:17:14,179 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-08 06:17:14,179 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 06:17:14,179 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:17:14,180 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 06:17:14,180 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 06:17:14,180 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-08 06:17:14,361 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:14,361 INFO L93 Difference]: Finished difference Result 71 states and 93 transitions. [2022-04-08 06:17:14,361 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 06:17:14,361 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-08 06:17:14,362 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:17:14,362 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-08 06:17:14,363 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 87 transitions. [2022-04-08 06:17:14,363 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-08 06:17:14,364 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 87 transitions. [2022-04-08 06:17:14,365 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 87 transitions. [2022-04-08 06:17:14,429 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-08 06:17:14,430 INFO L225 Difference]: With dead ends: 71 [2022-04-08 06:17:14,430 INFO L226 Difference]: Without dead ends: 56 [2022-04-08 06:17:14,431 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-08 06:17:14,431 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-08 06:17:14,431 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-08 06:17:14,432 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 56 states. [2022-04-08 06:17:14,447 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 56 to 56. [2022-04-08 06:17:14,447 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:17:14,447 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-08 06:17:14,448 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-08 06:17:14,448 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-08 06:17:14,450 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:14,450 INFO L93 Difference]: Finished difference Result 56 states and 70 transitions. [2022-04-08 06:17:14,450 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 70 transitions. [2022-04-08 06:17:14,450 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:17:14,450 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:17:14,450 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-08 06:17:14,451 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-08 06:17:14,452 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:14,452 INFO L93 Difference]: Finished difference Result 56 states and 70 transitions. [2022-04-08 06:17:14,453 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 70 transitions. [2022-04-08 06:17:14,453 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:17:14,453 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:17:14,453 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:17:14,453 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:17:14,453 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-08 06:17:14,455 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 56 states to 56 states and 70 transitions. [2022-04-08 06:17:14,455 INFO L78 Accepts]: Start accepts. Automaton has 56 states and 70 transitions. Word has length 28 [2022-04-08 06:17:14,455 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:17:14,455 INFO L478 AbstractCegarLoop]: Abstraction has 56 states and 70 transitions. [2022-04-08 06:17:14,455 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-08 06:17:14,455 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 56 states and 70 transitions. [2022-04-08 06:17:14,520 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-08 06:17:14,520 INFO L276 IsEmpty]: Start isEmpty. Operand 56 states and 70 transitions. [2022-04-08 06:17:14,521 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-08 06:17:14,521 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:17:14,521 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-08 06:17:14,540 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-08 06:17:14,738 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-08 06:17:14,738 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:17:14,738 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:17:14,739 INFO L85 PathProgramCache]: Analyzing trace with hash 1301357193, now seen corresponding path program 1 times [2022-04-08 06:17:14,739 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:17:14,739 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1073499352] [2022-04-08 06:17:14,739 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:17:14,739 INFO L85 PathProgramCache]: Analyzing trace with hash 1301357193, now seen corresponding path program 2 times [2022-04-08 06:17:14,739 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:17:14,739 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1882258663] [2022-04-08 06:17:14,739 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:17:14,740 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:17:14,751 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:17:14,751 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [610717696] [2022-04-08 06:17:14,751 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:17:14,751 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:17:14,752 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:17:14,752 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-08 06:17:14,754 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-08 06:17:14,795 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:17:14,795 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:17:14,796 INFO L263 TraceCheckSpWp]: Trace formula consists of 115 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 06:17:14,804 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:17:14,805 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:17:14,957 INFO L272 TraceCheckUtils]: 0: Hoare triple {1683#true} call ULTIMATE.init(); {1683#true} is VALID [2022-04-08 06:17:14,958 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-08 06:17:14,958 INFO L290 TraceCheckUtils]: 2: Hoare triple {1691#(<= ~counter~0 0)} assume true; {1691#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:14,958 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1691#(<= ~counter~0 0)} {1683#true} #96#return; {1691#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:14,959 INFO L272 TraceCheckUtils]: 4: Hoare triple {1691#(<= ~counter~0 0)} call #t~ret8 := main(); {1691#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:14,959 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-08 06:17:14,959 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-08 06:17:14,960 INFO L290 TraceCheckUtils]: 7: Hoare triple {1691#(<= ~counter~0 0)} ~cond := #in~cond; {1691#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:14,960 INFO L290 TraceCheckUtils]: 8: Hoare triple {1691#(<= ~counter~0 0)} assume !(0 == ~cond); {1691#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:14,960 INFO L290 TraceCheckUtils]: 9: Hoare triple {1691#(<= ~counter~0 0)} assume true; {1691#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:14,961 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1691#(<= ~counter~0 0)} {1691#(<= ~counter~0 0)} #80#return; {1691#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:14,961 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-08 06:17:14,961 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-08 06:17:14,962 INFO L290 TraceCheckUtils]: 13: Hoare triple {1725#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {1725#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:14,962 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-08 06:17:14,962 INFO L290 TraceCheckUtils]: 15: Hoare triple {1725#(<= ~counter~0 1)} ~cond := #in~cond; {1725#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:14,963 INFO L290 TraceCheckUtils]: 16: Hoare triple {1725#(<= ~counter~0 1)} assume !(0 == ~cond); {1725#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:14,963 INFO L290 TraceCheckUtils]: 17: Hoare triple {1725#(<= ~counter~0 1)} assume true; {1725#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:14,963 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1725#(<= ~counter~0 1)} {1725#(<= ~counter~0 1)} #82#return; {1725#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:14,964 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-08 06:17:14,964 INFO L290 TraceCheckUtils]: 20: Hoare triple {1725#(<= ~counter~0 1)} ~cond := #in~cond; {1725#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:14,964 INFO L290 TraceCheckUtils]: 21: Hoare triple {1725#(<= ~counter~0 1)} assume !(0 == ~cond); {1725#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:14,965 INFO L290 TraceCheckUtils]: 22: Hoare triple {1725#(<= ~counter~0 1)} assume true; {1725#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:14,965 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {1725#(<= ~counter~0 1)} {1725#(<= ~counter~0 1)} #84#return; {1725#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:14,966 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-08 06:17:14,966 INFO L290 TraceCheckUtils]: 25: Hoare triple {1725#(<= ~counter~0 1)} ~cond := #in~cond; {1725#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:14,966 INFO L290 TraceCheckUtils]: 26: Hoare triple {1725#(<= ~counter~0 1)} assume !(0 == ~cond); {1725#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:14,966 INFO L290 TraceCheckUtils]: 27: Hoare triple {1725#(<= ~counter~0 1)} assume true; {1725#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:14,967 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {1725#(<= ~counter~0 1)} {1725#(<= ~counter~0 1)} #86#return; {1725#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:14,967 INFO L290 TraceCheckUtils]: 29: Hoare triple {1725#(<= ~counter~0 1)} assume !(~r~0 >= ~d~0); {1725#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:14,968 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-08 06:17:14,968 INFO L290 TraceCheckUtils]: 31: Hoare triple {1780#(<= |main_#t~post7| 1)} assume !(#t~post7 < 10);havoc #t~post7; {1684#false} is VALID [2022-04-08 06:17:14,968 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-08 06:17:14,968 INFO L290 TraceCheckUtils]: 33: Hoare triple {1684#false} ~cond := #in~cond; {1684#false} is VALID [2022-04-08 06:17:14,968 INFO L290 TraceCheckUtils]: 34: Hoare triple {1684#false} assume 0 == ~cond; {1684#false} is VALID [2022-04-08 06:17:14,968 INFO L290 TraceCheckUtils]: 35: Hoare triple {1684#false} assume !false; {1684#false} is VALID [2022-04-08 06:17:14,969 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-08 06:17:14,969 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 06:17:14,969 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:17:14,969 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1882258663] [2022-04-08 06:17:14,969 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:17:14,969 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [610717696] [2022-04-08 06:17:14,969 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [610717696] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:17:14,969 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:17:14,969 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 06:17:14,969 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:17:14,970 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1073499352] [2022-04-08 06:17:14,970 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1073499352] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:17:14,970 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:17:14,970 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 06:17:14,970 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [671618611] [2022-04-08 06:17:14,970 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:17:14,970 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-08 06:17:14,970 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:17:14,971 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-08 06:17:14,989 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-08 06:17:14,989 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 06:17:14,989 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:17:14,990 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 06:17:14,990 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-04-08 06:17:14,990 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-08 06:17:15,105 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:15,105 INFO L93 Difference]: Finished difference Result 76 states and 86 transitions. [2022-04-08 06:17:15,105 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 06:17:15,105 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-08 06:17:15,106 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:17:15,106 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-08 06:17:15,107 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-08 06:17:15,107 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-08 06:17:15,108 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 65 transitions. [2022-04-08 06:17:15,108 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 65 transitions. [2022-04-08 06:17:15,157 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-08 06:17:15,159 INFO L225 Difference]: With dead ends: 76 [2022-04-08 06:17:15,159 INFO L226 Difference]: Without dead ends: 69 [2022-04-08 06:17:15,159 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-08 06:17:15,160 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-08 06:17:15,160 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-08 06:17:15,160 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 69 states. [2022-04-08 06:17:15,187 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 69 to 68. [2022-04-08 06:17:15,187 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:17:15,188 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-08 06:17:15,188 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-08 06:17:15,188 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-08 06:17:15,190 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:15,190 INFO L93 Difference]: Finished difference Result 69 states and 79 transitions. [2022-04-08 06:17:15,190 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 79 transitions. [2022-04-08 06:17:15,190 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:17:15,191 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:17:15,191 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-08 06:17:15,199 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-08 06:17:15,201 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:15,201 INFO L93 Difference]: Finished difference Result 69 states and 79 transitions. [2022-04-08 06:17:15,201 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 79 transitions. [2022-04-08 06:17:15,201 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:17:15,201 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:17:15,201 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:17:15,202 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:17:15,202 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-08 06:17:15,203 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 78 transitions. [2022-04-08 06:17:15,203 INFO L78 Accepts]: Start accepts. Automaton has 68 states and 78 transitions. Word has length 36 [2022-04-08 06:17:15,204 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:17:15,204 INFO L478 AbstractCegarLoop]: Abstraction has 68 states and 78 transitions. [2022-04-08 06:17:15,204 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-08 06:17:15,204 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 68 states and 78 transitions. [2022-04-08 06:17:15,277 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-08 06:17:15,277 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 78 transitions. [2022-04-08 06:17:15,277 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 37 [2022-04-08 06:17:15,278 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:17:15,278 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-08 06:17:15,303 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-08 06:17:15,494 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-08 06:17:15,495 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:17:15,495 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:17:15,495 INFO L85 PathProgramCache]: Analyzing trace with hash 1303085071, now seen corresponding path program 1 times [2022-04-08 06:17:15,495 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:17:15,495 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [103663059] [2022-04-08 06:17:15,495 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-08 06:17:15,496 INFO L85 PathProgramCache]: Analyzing trace with hash 1303085071, now seen corresponding path program 2 times [2022-04-08 06:17:15,496 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:17:15,496 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [348168772] [2022-04-08 06:17:15,496 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:17:15,496 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:17:15,505 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:17:15,505 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [834523913] [2022-04-08 06:17:15,505 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:17:15,505 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:17:15,505 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:17:15,511 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-08 06:17:15,581 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-08 06:17:15,589 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:17:15,589 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:17:15,590 INFO L263 TraceCheckSpWp]: Trace formula consists of 115 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 06:17:15,599 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:17:15,600 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:17:15,742 INFO L272 TraceCheckUtils]: 0: Hoare triple {2221#true} call ULTIMATE.init(); {2221#true} is VALID [2022-04-08 06:17:15,742 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-08 06:17:15,742 INFO L290 TraceCheckUtils]: 2: Hoare triple {2221#true} assume true; {2221#true} is VALID [2022-04-08 06:17:15,742 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2221#true} {2221#true} #96#return; {2221#true} is VALID [2022-04-08 06:17:15,742 INFO L272 TraceCheckUtils]: 4: Hoare triple {2221#true} call #t~ret8 := main(); {2221#true} is VALID [2022-04-08 06:17:15,742 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-08 06:17:15,743 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-08 06:17:15,744 INFO L290 TraceCheckUtils]: 7: Hoare triple {2221#true} ~cond := #in~cond; {2221#true} is VALID [2022-04-08 06:17:15,744 INFO L290 TraceCheckUtils]: 8: Hoare triple {2221#true} assume !(0 == ~cond); {2221#true} is VALID [2022-04-08 06:17:15,744 INFO L290 TraceCheckUtils]: 9: Hoare triple {2221#true} assume true; {2221#true} is VALID [2022-04-08 06:17:15,745 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2221#true} {2221#true} #80#return; {2221#true} is VALID [2022-04-08 06:17:15,746 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-08 06:17:15,746 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-08 06:17:15,748 INFO L290 TraceCheckUtils]: 13: Hoare triple {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 10);havoc #t~post6; {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 06:17:15,748 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-08 06:17:15,748 INFO L290 TraceCheckUtils]: 15: Hoare triple {2221#true} ~cond := #in~cond; {2221#true} is VALID [2022-04-08 06:17:15,749 INFO L290 TraceCheckUtils]: 16: Hoare triple {2221#true} assume !(0 == ~cond); {2221#true} is VALID [2022-04-08 06:17:15,749 INFO L290 TraceCheckUtils]: 17: Hoare triple {2221#true} assume true; {2221#true} is VALID [2022-04-08 06:17:15,749 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-08 06:17:15,750 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-08 06:17:15,750 INFO L290 TraceCheckUtils]: 20: Hoare triple {2221#true} ~cond := #in~cond; {2221#true} is VALID [2022-04-08 06:17:15,750 INFO L290 TraceCheckUtils]: 21: Hoare triple {2221#true} assume !(0 == ~cond); {2221#true} is VALID [2022-04-08 06:17:15,750 INFO L290 TraceCheckUtils]: 22: Hoare triple {2221#true} assume true; {2221#true} is VALID [2022-04-08 06:17:15,750 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-08 06:17:15,750 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-08 06:17:15,751 INFO L290 TraceCheckUtils]: 25: Hoare triple {2221#true} ~cond := #in~cond; {2221#true} is VALID [2022-04-08 06:17:15,751 INFO L290 TraceCheckUtils]: 26: Hoare triple {2221#true} assume !(0 == ~cond); {2221#true} is VALID [2022-04-08 06:17:15,751 INFO L290 TraceCheckUtils]: 27: Hoare triple {2221#true} assume true; {2221#true} is VALID [2022-04-08 06:17:15,751 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-08 06:17:15,754 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-08 06:17:15,755 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-08 06:17:15,755 INFO L290 TraceCheckUtils]: 31: Hoare triple {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} assume !!(#t~post7 < 10);havoc #t~post7; {2259#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 06:17:15,756 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-08 06:17:15,757 INFO L290 TraceCheckUtils]: 33: Hoare triple {2323#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2327#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:17:15,757 INFO L290 TraceCheckUtils]: 34: Hoare triple {2327#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2222#false} is VALID [2022-04-08 06:17:15,757 INFO L290 TraceCheckUtils]: 35: Hoare triple {2222#false} assume !false; {2222#false} is VALID [2022-04-08 06:17:15,758 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-08 06:17:15,758 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-08 06:17:15,758 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:17:15,758 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [348168772] [2022-04-08 06:17:15,758 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:17:15,758 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [834523913] [2022-04-08 06:17:15,758 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [834523913] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:17:15,758 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:17:15,758 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 06:17:15,758 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:17:15,759 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [103663059] [2022-04-08 06:17:15,759 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [103663059] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:17:15,759 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:17:15,759 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 06:17:15,759 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1137342443] [2022-04-08 06:17:15,759 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:17:15,759 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-08 06:17:15,759 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:17:15,759 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-08 06:17:15,782 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-08 06:17:15,783 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 06:17:15,783 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:17:15,783 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 06:17:15,784 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-08 06:17:15,784 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-08 06:17:16,003 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:16,003 INFO L93 Difference]: Finished difference Result 82 states and 97 transitions. [2022-04-08 06:17:16,003 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 06:17:16,004 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-08 06:17:16,004 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:17:16,004 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-08 06:17:16,005 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 61 transitions. [2022-04-08 06:17:16,005 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-08 06:17:16,006 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 61 transitions. [2022-04-08 06:17:16,006 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 61 transitions. [2022-04-08 06:17:16,053 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-08 06:17:16,054 INFO L225 Difference]: With dead ends: 82 [2022-04-08 06:17:16,054 INFO L226 Difference]: Without dead ends: 70 [2022-04-08 06:17:16,055 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-08 06:17:16,055 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-08 06:17:16,055 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-08 06:17:16,056 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 70 states. [2022-04-08 06:17:16,098 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 70 to 69. [2022-04-08 06:17:16,098 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:17:16,099 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-08 06:17:16,099 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-08 06:17:16,099 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-08 06:17:16,101 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:16,101 INFO L93 Difference]: Finished difference Result 70 states and 83 transitions. [2022-04-08 06:17:16,101 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 83 transitions. [2022-04-08 06:17:16,101 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:17:16,101 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:17:16,101 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-08 06:17:16,102 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-08 06:17:16,103 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:16,103 INFO L93 Difference]: Finished difference Result 70 states and 83 transitions. [2022-04-08 06:17:16,103 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 83 transitions. [2022-04-08 06:17:16,104 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:17:16,104 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:17:16,104 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:17:16,104 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:17:16,104 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-08 06:17:16,105 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 69 states to 69 states and 82 transitions. [2022-04-08 06:17:16,106 INFO L78 Accepts]: Start accepts. Automaton has 69 states and 82 transitions. Word has length 36 [2022-04-08 06:17:16,106 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:17:16,106 INFO L478 AbstractCegarLoop]: Abstraction has 69 states and 82 transitions. [2022-04-08 06:17:16,106 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-08 06:17:16,106 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 69 states and 82 transitions. [2022-04-08 06:17:16,182 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-08 06:17:16,183 INFO L276 IsEmpty]: Start isEmpty. Operand 69 states and 82 transitions. [2022-04-08 06:17:16,183 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-04-08 06:17:16,183 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:17:16,183 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-08 06:17:16,202 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-04-08 06:17:16,399 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-08 06:17:16,399 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:17:16,399 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:17:16,400 INFO L85 PathProgramCache]: Analyzing trace with hash 817878903, now seen corresponding path program 1 times [2022-04-08 06:17:16,400 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:17:16,400 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [59629350] [2022-04-08 06:17:22,461 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-08 06:17:22,461 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-08 06:17:22,462 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 06:17:22,462 INFO L85 PathProgramCache]: Analyzing trace with hash 817878903, now seen corresponding path program 2 times [2022-04-08 06:17:22,462 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:17:22,462 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1815841067] [2022-04-08 06:17:22,462 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:17:22,462 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:17:22,498 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:17:22,498 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [949719169] [2022-04-08 06:17:22,498 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:17:22,498 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:17:22,498 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:17:22,499 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-08 06:17:22,539 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-08 06:17:22,583 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:17:22,583 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:17:22,584 INFO L263 TraceCheckSpWp]: Trace formula consists of 133 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-08 06:17:22,593 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:17:22,594 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:17:22,804 INFO L272 TraceCheckUtils]: 0: Hoare triple {2777#true} call ULTIMATE.init(); {2777#true} is VALID [2022-04-08 06:17:22,807 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-08 06:17:22,807 INFO L290 TraceCheckUtils]: 2: Hoare triple {2785#(<= ~counter~0 0)} assume true; {2785#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:22,808 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2785#(<= ~counter~0 0)} {2777#true} #96#return; {2785#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:22,808 INFO L272 TraceCheckUtils]: 4: Hoare triple {2785#(<= ~counter~0 0)} call #t~ret8 := main(); {2785#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:22,808 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-08 06:17:22,809 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-08 06:17:22,809 INFO L290 TraceCheckUtils]: 7: Hoare triple {2785#(<= ~counter~0 0)} ~cond := #in~cond; {2785#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:22,809 INFO L290 TraceCheckUtils]: 8: Hoare triple {2785#(<= ~counter~0 0)} assume !(0 == ~cond); {2785#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:22,810 INFO L290 TraceCheckUtils]: 9: Hoare triple {2785#(<= ~counter~0 0)} assume true; {2785#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:22,810 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2785#(<= ~counter~0 0)} {2785#(<= ~counter~0 0)} #80#return; {2785#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:22,811 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-08 06:17:22,811 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-08 06:17:22,811 INFO L290 TraceCheckUtils]: 13: Hoare triple {2819#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {2819#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:22,812 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-08 06:17:22,812 INFO L290 TraceCheckUtils]: 15: Hoare triple {2819#(<= ~counter~0 1)} ~cond := #in~cond; {2819#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:22,812 INFO L290 TraceCheckUtils]: 16: Hoare triple {2819#(<= ~counter~0 1)} assume !(0 == ~cond); {2819#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:22,813 INFO L290 TraceCheckUtils]: 17: Hoare triple {2819#(<= ~counter~0 1)} assume true; {2819#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:22,813 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2819#(<= ~counter~0 1)} {2819#(<= ~counter~0 1)} #82#return; {2819#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:22,814 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-08 06:17:22,814 INFO L290 TraceCheckUtils]: 20: Hoare triple {2819#(<= ~counter~0 1)} ~cond := #in~cond; {2819#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:22,814 INFO L290 TraceCheckUtils]: 21: Hoare triple {2819#(<= ~counter~0 1)} assume !(0 == ~cond); {2819#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:22,815 INFO L290 TraceCheckUtils]: 22: Hoare triple {2819#(<= ~counter~0 1)} assume true; {2819#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:22,815 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2819#(<= ~counter~0 1)} {2819#(<= ~counter~0 1)} #84#return; {2819#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:22,816 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-08 06:17:22,816 INFO L290 TraceCheckUtils]: 25: Hoare triple {2819#(<= ~counter~0 1)} ~cond := #in~cond; {2819#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:22,817 INFO L290 TraceCheckUtils]: 26: Hoare triple {2819#(<= ~counter~0 1)} assume !(0 == ~cond); {2819#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:22,817 INFO L290 TraceCheckUtils]: 27: Hoare triple {2819#(<= ~counter~0 1)} assume true; {2819#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:22,817 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2819#(<= ~counter~0 1)} {2819#(<= ~counter~0 1)} #86#return; {2819#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:22,818 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-08 06:17:22,818 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-08 06:17:22,818 INFO L290 TraceCheckUtils]: 31: Hoare triple {2874#(<= |main_#t~post6| 1)} assume !(#t~post6 < 10);havoc #t~post6; {2778#false} is VALID [2022-04-08 06:17:22,818 INFO L290 TraceCheckUtils]: 32: Hoare triple {2778#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2778#false} is VALID [2022-04-08 06:17:22,819 INFO L290 TraceCheckUtils]: 33: Hoare triple {2778#false} assume !(#t~post7 < 10);havoc #t~post7; {2778#false} is VALID [2022-04-08 06:17:22,819 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-08 06:17:22,823 INFO L290 TraceCheckUtils]: 35: Hoare triple {2778#false} ~cond := #in~cond; {2778#false} is VALID [2022-04-08 06:17:22,823 INFO L290 TraceCheckUtils]: 36: Hoare triple {2778#false} assume !(0 == ~cond); {2778#false} is VALID [2022-04-08 06:17:22,824 INFO L290 TraceCheckUtils]: 37: Hoare triple {2778#false} assume true; {2778#false} is VALID [2022-04-08 06:17:22,824 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {2778#false} {2778#false} #92#return; {2778#false} is VALID [2022-04-08 06:17:22,827 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-08 06:17:22,828 INFO L290 TraceCheckUtils]: 40: Hoare triple {2778#false} ~cond := #in~cond; {2778#false} is VALID [2022-04-08 06:17:22,828 INFO L290 TraceCheckUtils]: 41: Hoare triple {2778#false} assume 0 == ~cond; {2778#false} is VALID [2022-04-08 06:17:22,828 INFO L290 TraceCheckUtils]: 42: Hoare triple {2778#false} assume !false; {2778#false} is VALID [2022-04-08 06:17:22,831 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-08 06:17:22,831 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:17:23,074 INFO L290 TraceCheckUtils]: 42: Hoare triple {2778#false} assume !false; {2778#false} is VALID [2022-04-08 06:17:23,074 INFO L290 TraceCheckUtils]: 41: Hoare triple {2778#false} assume 0 == ~cond; {2778#false} is VALID [2022-04-08 06:17:23,075 INFO L290 TraceCheckUtils]: 40: Hoare triple {2778#false} ~cond := #in~cond; {2778#false} is VALID [2022-04-08 06:17:23,075 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-08 06:17:23,075 INFO L284 TraceCheckUtils]: 38: Hoare quadruple {2777#true} {2778#false} #92#return; {2778#false} is VALID [2022-04-08 06:17:23,075 INFO L290 TraceCheckUtils]: 37: Hoare triple {2777#true} assume true; {2777#true} is VALID [2022-04-08 06:17:23,076 INFO L290 TraceCheckUtils]: 36: Hoare triple {2777#true} assume !(0 == ~cond); {2777#true} is VALID [2022-04-08 06:17:23,076 INFO L290 TraceCheckUtils]: 35: Hoare triple {2777#true} ~cond := #in~cond; {2777#true} is VALID [2022-04-08 06:17:23,078 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-08 06:17:23,078 INFO L290 TraceCheckUtils]: 33: Hoare triple {2778#false} assume !(#t~post7 < 10);havoc #t~post7; {2778#false} is VALID [2022-04-08 06:17:23,078 INFO L290 TraceCheckUtils]: 32: Hoare triple {2778#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {2778#false} is VALID [2022-04-08 06:17:23,078 INFO L290 TraceCheckUtils]: 31: Hoare triple {2944#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {2778#false} is VALID [2022-04-08 06:17:23,079 INFO L290 TraceCheckUtils]: 30: Hoare triple {2948#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2944#(< |main_#t~post6| 10)} is VALID [2022-04-08 06:17:23,079 INFO L290 TraceCheckUtils]: 29: Hoare triple {2948#(< ~counter~0 10)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {2948#(< ~counter~0 10)} is VALID [2022-04-08 06:17:23,080 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {2777#true} {2948#(< ~counter~0 10)} #86#return; {2948#(< ~counter~0 10)} is VALID [2022-04-08 06:17:23,080 INFO L290 TraceCheckUtils]: 27: Hoare triple {2777#true} assume true; {2777#true} is VALID [2022-04-08 06:17:23,080 INFO L290 TraceCheckUtils]: 26: Hoare triple {2777#true} assume !(0 == ~cond); {2777#true} is VALID [2022-04-08 06:17:23,080 INFO L290 TraceCheckUtils]: 25: Hoare triple {2777#true} ~cond := #in~cond; {2777#true} is VALID [2022-04-08 06:17:23,080 INFO L272 TraceCheckUtils]: 24: Hoare triple {2948#(< ~counter~0 10)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {2777#true} is VALID [2022-04-08 06:17:23,081 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {2777#true} {2948#(< ~counter~0 10)} #84#return; {2948#(< ~counter~0 10)} is VALID [2022-04-08 06:17:23,081 INFO L290 TraceCheckUtils]: 22: Hoare triple {2777#true} assume true; {2777#true} is VALID [2022-04-08 06:17:23,081 INFO L290 TraceCheckUtils]: 21: Hoare triple {2777#true} assume !(0 == ~cond); {2777#true} is VALID [2022-04-08 06:17:23,081 INFO L290 TraceCheckUtils]: 20: Hoare triple {2777#true} ~cond := #in~cond; {2777#true} is VALID [2022-04-08 06:17:23,081 INFO L272 TraceCheckUtils]: 19: Hoare triple {2948#(< ~counter~0 10)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {2777#true} is VALID [2022-04-08 06:17:23,081 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2777#true} {2948#(< ~counter~0 10)} #82#return; {2948#(< ~counter~0 10)} is VALID [2022-04-08 06:17:23,081 INFO L290 TraceCheckUtils]: 17: Hoare triple {2777#true} assume true; {2777#true} is VALID [2022-04-08 06:17:23,081 INFO L290 TraceCheckUtils]: 16: Hoare triple {2777#true} assume !(0 == ~cond); {2777#true} is VALID [2022-04-08 06:17:23,082 INFO L290 TraceCheckUtils]: 15: Hoare triple {2777#true} ~cond := #in~cond; {2777#true} is VALID [2022-04-08 06:17:23,082 INFO L272 TraceCheckUtils]: 14: Hoare triple {2948#(< ~counter~0 10)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {2777#true} is VALID [2022-04-08 06:17:23,082 INFO L290 TraceCheckUtils]: 13: Hoare triple {2948#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {2948#(< ~counter~0 10)} is VALID [2022-04-08 06:17:23,082 INFO L290 TraceCheckUtils]: 12: Hoare triple {3003#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2948#(< ~counter~0 10)} is VALID [2022-04-08 06:17:23,083 INFO L290 TraceCheckUtils]: 11: Hoare triple {3003#(< ~counter~0 9)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {3003#(< ~counter~0 9)} is VALID [2022-04-08 06:17:23,083 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2777#true} {3003#(< ~counter~0 9)} #80#return; {3003#(< ~counter~0 9)} is VALID [2022-04-08 06:17:23,083 INFO L290 TraceCheckUtils]: 9: Hoare triple {2777#true} assume true; {2777#true} is VALID [2022-04-08 06:17:23,083 INFO L290 TraceCheckUtils]: 8: Hoare triple {2777#true} assume !(0 == ~cond); {2777#true} is VALID [2022-04-08 06:17:23,083 INFO L290 TraceCheckUtils]: 7: Hoare triple {2777#true} ~cond := #in~cond; {2777#true} is VALID [2022-04-08 06:17:23,083 INFO L272 TraceCheckUtils]: 6: Hoare triple {3003#(< ~counter~0 9)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {2777#true} is VALID [2022-04-08 06:17:23,084 INFO L290 TraceCheckUtils]: 5: Hoare triple {3003#(< ~counter~0 9)} 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 9)} is VALID [2022-04-08 06:17:23,084 INFO L272 TraceCheckUtils]: 4: Hoare triple {3003#(< ~counter~0 9)} call #t~ret8 := main(); {3003#(< ~counter~0 9)} is VALID [2022-04-08 06:17:23,084 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3003#(< ~counter~0 9)} {2777#true} #96#return; {3003#(< ~counter~0 9)} is VALID [2022-04-08 06:17:23,084 INFO L290 TraceCheckUtils]: 2: Hoare triple {3003#(< ~counter~0 9)} assume true; {3003#(< ~counter~0 9)} is VALID [2022-04-08 06:17:23,085 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 9)} is VALID [2022-04-08 06:17:23,085 INFO L272 TraceCheckUtils]: 0: Hoare triple {2777#true} call ULTIMATE.init(); {2777#true} is VALID [2022-04-08 06:17:23,087 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-08 06:17:23,087 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:17:23,087 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1815841067] [2022-04-08 06:17:23,087 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:17:23,087 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [949719169] [2022-04-08 06:17:23,087 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [949719169] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:17:23,087 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:17:23,087 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-08 06:17:23,088 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:17:23,088 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [59629350] [2022-04-08 06:17:23,088 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [59629350] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:17:23,088 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:17:23,088 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 06:17:23,088 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [230958408] [2022-04-08 06:17:23,088 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:17:23,088 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-08 06:17:23,088 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:17:23,089 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-08 06:17:23,113 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-08 06:17:23,113 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 06:17:23,113 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:17:23,114 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 06:17:23,114 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-08 06:17:23,114 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-08 06:17:23,280 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:23,280 INFO L93 Difference]: Finished difference Result 96 states and 120 transitions. [2022-04-08 06:17:23,280 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 06:17:23,280 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-08 06:17:23,280 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:17:23,280 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-08 06:17:23,281 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 76 transitions. [2022-04-08 06:17:23,281 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-08 06:17:23,282 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 76 transitions. [2022-04-08 06:17:23,282 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 76 transitions. [2022-04-08 06:17:23,335 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-08 06:17:23,336 INFO L225 Difference]: With dead ends: 96 [2022-04-08 06:17:23,336 INFO L226 Difference]: Without dead ends: 71 [2022-04-08 06:17:23,337 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-08 06:17:23,337 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-08 06:17:23,338 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-08 06:17:23,338 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 71 states. [2022-04-08 06:17:23,393 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 71 to 71. [2022-04-08 06:17:23,393 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:17:23,394 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-08 06:17:23,398 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-08 06:17:23,399 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-08 06:17:23,401 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:23,402 INFO L93 Difference]: Finished difference Result 71 states and 84 transitions. [2022-04-08 06:17:23,402 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 84 transitions. [2022-04-08 06:17:23,402 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:17:23,402 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:17:23,402 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-08 06:17:23,413 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-08 06:17:23,415 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:23,415 INFO L93 Difference]: Finished difference Result 71 states and 84 transitions. [2022-04-08 06:17:23,415 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 84 transitions. [2022-04-08 06:17:23,416 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:17:23,416 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:17:23,416 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:17:23,416 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:17:23,416 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-08 06:17:23,418 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 71 states to 71 states and 84 transitions. [2022-04-08 06:17:23,418 INFO L78 Accepts]: Start accepts. Automaton has 71 states and 84 transitions. Word has length 43 [2022-04-08 06:17:23,418 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:17:23,418 INFO L478 AbstractCegarLoop]: Abstraction has 71 states and 84 transitions. [2022-04-08 06:17:23,418 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-08 06:17:23,418 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 71 states and 84 transitions. [2022-04-08 06:17:23,538 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-08 06:17:23,538 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 84 transitions. [2022-04-08 06:17:23,539 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 47 [2022-04-08 06:17:23,539 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:17:23,539 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-08 06:17:23,568 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-08 06:17:23,739 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-08 06:17:23,740 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:17:23,740 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:17:23,740 INFO L85 PathProgramCache]: Analyzing trace with hash 1861890039, now seen corresponding path program 1 times [2022-04-08 06:17:23,740 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:17:23,740 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [590508449] [2022-04-08 06:17:33,578 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-08 06:17:33,578 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-08 06:17:33,578 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 06:17:33,579 INFO L85 PathProgramCache]: Analyzing trace with hash 1861890039, now seen corresponding path program 2 times [2022-04-08 06:17:33,579 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:17:33,579 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [211623368] [2022-04-08 06:17:33,579 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:17:33,579 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:17:33,591 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:17:33,592 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [278740448] [2022-04-08 06:17:33,592 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:17:33,592 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:17:33,592 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:17:33,603 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-08 06:17:33,651 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-08 06:17:33,708 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:17:33,708 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:17:33,709 INFO L263 TraceCheckSpWp]: Trace formula consists of 137 conjuncts, 16 conjunts are in the unsatisfiable core [2022-04-08 06:17:33,722 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:17:33,723 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:17:34,576 INFO L272 TraceCheckUtils]: 0: Hoare triple {3520#true} call ULTIMATE.init(); {3520#true} is VALID [2022-04-08 06:17:34,576 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-08 06:17:34,577 INFO L290 TraceCheckUtils]: 2: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-08 06:17:34,577 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3520#true} {3520#true} #96#return; {3520#true} is VALID [2022-04-08 06:17:34,577 INFO L272 TraceCheckUtils]: 4: Hoare triple {3520#true} call #t~ret8 := main(); {3520#true} is VALID [2022-04-08 06:17:34,577 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-08 06:17:34,577 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-08 06:17:34,577 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-08 06:17:34,578 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-08 06:17:34,578 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-08 06:17:34,579 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-08 06:17:34,579 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-08 06:17:34,580 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-08 06:17:34,580 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 < 10);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-08 06:17:34,580 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-08 06:17:34,581 INFO L290 TraceCheckUtils]: 15: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-08 06:17:34,582 INFO L290 TraceCheckUtils]: 16: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-08 06:17:34,582 INFO L290 TraceCheckUtils]: 17: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-08 06:17:34,582 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-08 06:17:34,583 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-08 06:17:34,583 INFO L290 TraceCheckUtils]: 20: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-08 06:17:34,583 INFO L290 TraceCheckUtils]: 21: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-08 06:17:34,583 INFO L290 TraceCheckUtils]: 22: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-08 06:17:34,583 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-08 06:17:34,584 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-08 06:17:34,584 INFO L290 TraceCheckUtils]: 25: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-08 06:17:34,584 INFO L290 TraceCheckUtils]: 26: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-08 06:17:34,584 INFO L290 TraceCheckUtils]: 27: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-08 06:17:34,584 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-08 06:17:34,585 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-08 06:17:34,586 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-08 06:17:34,586 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 < 10);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-08 06:17:34,586 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-08 06:17:34,586 INFO L290 TraceCheckUtils]: 33: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-08 06:17:34,586 INFO L290 TraceCheckUtils]: 34: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-08 06:17:34,586 INFO L290 TraceCheckUtils]: 35: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-08 06:17:34,587 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-08 06:17:34,587 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-08 06:17:34,587 INFO L290 TraceCheckUtils]: 38: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-08 06:17:34,587 INFO L290 TraceCheckUtils]: 39: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-08 06:17:34,587 INFO L290 TraceCheckUtils]: 40: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-08 06:17:34,588 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-08 06:17:34,588 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-08 06:17:34,589 INFO L290 TraceCheckUtils]: 43: Hoare triple {3656#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3660#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:17:34,589 INFO L290 TraceCheckUtils]: 44: Hoare triple {3660#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3521#false} is VALID [2022-04-08 06:17:34,589 INFO L290 TraceCheckUtils]: 45: Hoare triple {3521#false} assume !false; {3521#false} is VALID [2022-04-08 06:17:34,590 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-08 06:17:34,590 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:17:34,884 INFO L290 TraceCheckUtils]: 45: Hoare triple {3521#false} assume !false; {3521#false} is VALID [2022-04-08 06:17:34,885 INFO L290 TraceCheckUtils]: 44: Hoare triple {3660#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {3521#false} is VALID [2022-04-08 06:17:34,885 INFO L290 TraceCheckUtils]: 43: Hoare triple {3656#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3660#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:17:34,885 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-08 06:17:34,886 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-08 06:17:34,886 INFO L290 TraceCheckUtils]: 40: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-08 06:17:34,886 INFO L290 TraceCheckUtils]: 39: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-08 06:17:34,886 INFO L290 TraceCheckUtils]: 38: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-08 06:17:34,886 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-08 06:17:34,887 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-08 06:17:34,887 INFO L290 TraceCheckUtils]: 35: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-08 06:17:34,887 INFO L290 TraceCheckUtils]: 34: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-08 06:17:34,887 INFO L290 TraceCheckUtils]: 33: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-08 06:17:34,887 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-08 06:17:34,888 INFO L290 TraceCheckUtils]: 31: Hoare triple {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} assume !!(#t~post6 < 10);havoc #t~post6; {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:17:34,888 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-08 06:17:34,900 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-08 06:17:34,901 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-08 06:17:34,901 INFO L290 TraceCheckUtils]: 27: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-08 06:17:34,901 INFO L290 TraceCheckUtils]: 26: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-08 06:17:34,901 INFO L290 TraceCheckUtils]: 25: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-08 06:17:34,901 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-08 06:17:34,902 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-08 06:17:34,902 INFO L290 TraceCheckUtils]: 22: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-08 06:17:34,902 INFO L290 TraceCheckUtils]: 21: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-08 06:17:34,902 INFO L290 TraceCheckUtils]: 20: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-08 06:17:34,902 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-08 06:17:34,903 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-08 06:17:34,903 INFO L290 TraceCheckUtils]: 17: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-08 06:17:34,903 INFO L290 TraceCheckUtils]: 16: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-08 06:17:34,903 INFO L290 TraceCheckUtils]: 15: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-08 06:17:34,903 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-08 06:17:34,904 INFO L290 TraceCheckUtils]: 13: Hoare triple {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} assume !!(#t~post6 < 10);havoc #t~post6; {3676#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:17:34,905 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-08 06:17:34,906 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-08 06:17:34,906 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3520#true} {3520#true} #80#return; {3520#true} is VALID [2022-04-08 06:17:34,906 INFO L290 TraceCheckUtils]: 9: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-08 06:17:34,906 INFO L290 TraceCheckUtils]: 8: Hoare triple {3520#true} assume !(0 == ~cond); {3520#true} is VALID [2022-04-08 06:17:34,906 INFO L290 TraceCheckUtils]: 7: Hoare triple {3520#true} ~cond := #in~cond; {3520#true} is VALID [2022-04-08 06:17:34,906 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-08 06:17:34,906 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-08 06:17:34,906 INFO L272 TraceCheckUtils]: 4: Hoare triple {3520#true} call #t~ret8 := main(); {3520#true} is VALID [2022-04-08 06:17:34,906 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3520#true} {3520#true} #96#return; {3520#true} is VALID [2022-04-08 06:17:34,906 INFO L290 TraceCheckUtils]: 2: Hoare triple {3520#true} assume true; {3520#true} is VALID [2022-04-08 06:17:34,906 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-08 06:17:34,906 INFO L272 TraceCheckUtils]: 0: Hoare triple {3520#true} call ULTIMATE.init(); {3520#true} is VALID [2022-04-08 06:17:34,907 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-08 06:17:34,907 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:17:34,907 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [211623368] [2022-04-08 06:17:34,907 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:17:34,907 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [278740448] [2022-04-08 06:17:34,907 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [278740448] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-08 06:17:34,907 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-08 06:17:34,907 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [9] total 10 [2022-04-08 06:17:34,907 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:17:34,907 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [590508449] [2022-04-08 06:17:34,907 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [590508449] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:17:34,908 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:17:34,908 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-08 06:17:34,908 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [30824425] [2022-04-08 06:17:34,908 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:17:34,908 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-08 06:17:34,908 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:17:34,908 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-08 06:17:34,926 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-08 06:17:34,927 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-08 06:17:34,927 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:17:34,927 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-08 06:17:34,927 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=21, Invalid=69, Unknown=0, NotChecked=0, Total=90 [2022-04-08 06:17:34,927 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-08 06:17:35,346 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:35,346 INFO L93 Difference]: Finished difference Result 84 states and 101 transitions. [2022-04-08 06:17:35,346 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-08 06:17:35,346 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-08 06:17:35,347 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:17:35,347 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-08 06:17:35,348 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 59 transitions. [2022-04-08 06:17:35,348 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-08 06:17:35,348 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 59 transitions. [2022-04-08 06:17:35,348 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 59 transitions. [2022-04-08 06:17:35,386 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-08 06:17:35,388 INFO L225 Difference]: With dead ends: 84 [2022-04-08 06:17:35,388 INFO L226 Difference]: Without dead ends: 82 [2022-04-08 06:17:35,388 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-08 06:17:35,388 INFO L913 BasicCegarLoop]: 40 mSDtfsCounter, 11 mSDsluCounter, 85 mSDsCounter, 0 mSdLazyCounter, 48 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s 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.2s IncrementalHoareTripleChecker+Time [2022-04-08 06:17:35,389 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.2s Time] [2022-04-08 06:17:35,389 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 82 states. [2022-04-08 06:17:35,460 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 82 to 79. [2022-04-08 06:17:35,460 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:17:35,460 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-08 06:17:35,462 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-08 06:17:35,462 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-08 06:17:35,469 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:35,469 INFO L93 Difference]: Finished difference Result 82 states and 99 transitions. [2022-04-08 06:17:35,469 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 99 transitions. [2022-04-08 06:17:35,470 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:17:35,470 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:17:35,470 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-08 06:17:35,470 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-08 06:17:35,473 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:35,473 INFO L93 Difference]: Finished difference Result 82 states and 99 transitions. [2022-04-08 06:17:35,473 INFO L276 IsEmpty]: Start isEmpty. Operand 82 states and 99 transitions. [2022-04-08 06:17:35,473 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:17:35,473 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:17:35,473 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:17:35,473 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:17:35,473 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-08 06:17:35,474 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 79 states to 79 states and 94 transitions. [2022-04-08 06:17:35,475 INFO L78 Accepts]: Start accepts. Automaton has 79 states and 94 transitions. Word has length 46 [2022-04-08 06:17:35,475 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:17:35,475 INFO L478 AbstractCegarLoop]: Abstraction has 79 states and 94 transitions. [2022-04-08 06:17:35,475 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-08 06:17:35,475 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 79 states and 94 transitions. [2022-04-08 06:17:35,554 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-08 06:17:35,554 INFO L276 IsEmpty]: Start isEmpty. Operand 79 states and 94 transitions. [2022-04-08 06:17:35,555 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 60 [2022-04-08 06:17:35,555 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:17:35,556 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-08 06:17:35,572 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-08 06:17:35,772 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-08 06:17:35,781 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:17:35,782 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:17:35,782 INFO L85 PathProgramCache]: Analyzing trace with hash 967982746, now seen corresponding path program 1 times [2022-04-08 06:17:35,782 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:17:35,782 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1174967577] [2022-04-08 06:17:44,677 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-08 06:17:44,678 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-08 06:17:44,678 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 06:17:44,678 INFO L85 PathProgramCache]: Analyzing trace with hash 967982746, now seen corresponding path program 2 times [2022-04-08 06:17:44,678 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:17:44,678 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [830390144] [2022-04-08 06:17:44,678 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:17:44,678 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:17:44,690 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:17:44,691 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1718556298] [2022-04-08 06:17:44,691 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:17:44,691 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:17:44,691 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:17:44,699 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-08 06:17:44,700 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-08 06:17:44,739 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:17:44,739 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:17:44,740 INFO L263 TraceCheckSpWp]: Trace formula consists of 161 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 06:17:44,751 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:17:44,755 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:17:45,028 INFO L272 TraceCheckUtils]: 0: Hoare triple {4297#true} call ULTIMATE.init(); {4297#true} is VALID [2022-04-08 06:17:45,029 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-08 06:17:45,029 INFO L290 TraceCheckUtils]: 2: Hoare triple {4305#(<= ~counter~0 0)} assume true; {4305#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:45,029 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4305#(<= ~counter~0 0)} {4297#true} #96#return; {4305#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:45,030 INFO L272 TraceCheckUtils]: 4: Hoare triple {4305#(<= ~counter~0 0)} call #t~ret8 := main(); {4305#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:45,030 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-08 06:17:45,031 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-08 06:17:45,031 INFO L290 TraceCheckUtils]: 7: Hoare triple {4305#(<= ~counter~0 0)} ~cond := #in~cond; {4305#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:45,031 INFO L290 TraceCheckUtils]: 8: Hoare triple {4305#(<= ~counter~0 0)} assume !(0 == ~cond); {4305#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:45,031 INFO L290 TraceCheckUtils]: 9: Hoare triple {4305#(<= ~counter~0 0)} assume true; {4305#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:45,032 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4305#(<= ~counter~0 0)} {4305#(<= ~counter~0 0)} #80#return; {4305#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:45,032 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-08 06:17:45,033 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-08 06:17:45,033 INFO L290 TraceCheckUtils]: 13: Hoare triple {4339#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {4339#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:45,034 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-08 06:17:45,034 INFO L290 TraceCheckUtils]: 15: Hoare triple {4339#(<= ~counter~0 1)} ~cond := #in~cond; {4339#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:45,034 INFO L290 TraceCheckUtils]: 16: Hoare triple {4339#(<= ~counter~0 1)} assume !(0 == ~cond); {4339#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:45,034 INFO L290 TraceCheckUtils]: 17: Hoare triple {4339#(<= ~counter~0 1)} assume true; {4339#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:45,035 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4339#(<= ~counter~0 1)} {4339#(<= ~counter~0 1)} #82#return; {4339#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:45,035 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-08 06:17:45,036 INFO L290 TraceCheckUtils]: 20: Hoare triple {4339#(<= ~counter~0 1)} ~cond := #in~cond; {4339#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:45,036 INFO L290 TraceCheckUtils]: 21: Hoare triple {4339#(<= ~counter~0 1)} assume !(0 == ~cond); {4339#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:45,036 INFO L290 TraceCheckUtils]: 22: Hoare triple {4339#(<= ~counter~0 1)} assume true; {4339#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:45,037 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4339#(<= ~counter~0 1)} {4339#(<= ~counter~0 1)} #84#return; {4339#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:45,037 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-08 06:17:45,038 INFO L290 TraceCheckUtils]: 25: Hoare triple {4339#(<= ~counter~0 1)} ~cond := #in~cond; {4339#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:45,038 INFO L290 TraceCheckUtils]: 26: Hoare triple {4339#(<= ~counter~0 1)} assume !(0 == ~cond); {4339#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:45,038 INFO L290 TraceCheckUtils]: 27: Hoare triple {4339#(<= ~counter~0 1)} assume true; {4339#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:45,039 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {4339#(<= ~counter~0 1)} {4339#(<= ~counter~0 1)} #86#return; {4339#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:45,043 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-08 06:17:45,044 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-08 06:17:45,044 INFO L290 TraceCheckUtils]: 31: Hoare triple {4394#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {4394#(<= ~counter~0 2)} is VALID [2022-04-08 06:17:45,044 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-08 06:17:45,045 INFO L290 TraceCheckUtils]: 33: Hoare triple {4394#(<= ~counter~0 2)} ~cond := #in~cond; {4394#(<= ~counter~0 2)} is VALID [2022-04-08 06:17:45,045 INFO L290 TraceCheckUtils]: 34: Hoare triple {4394#(<= ~counter~0 2)} assume !(0 == ~cond); {4394#(<= ~counter~0 2)} is VALID [2022-04-08 06:17:45,045 INFO L290 TraceCheckUtils]: 35: Hoare triple {4394#(<= ~counter~0 2)} assume true; {4394#(<= ~counter~0 2)} is VALID [2022-04-08 06:17:45,046 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {4394#(<= ~counter~0 2)} {4394#(<= ~counter~0 2)} #82#return; {4394#(<= ~counter~0 2)} is VALID [2022-04-08 06:17:45,046 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-08 06:17:45,047 INFO L290 TraceCheckUtils]: 38: Hoare triple {4394#(<= ~counter~0 2)} ~cond := #in~cond; {4394#(<= ~counter~0 2)} is VALID [2022-04-08 06:17:45,047 INFO L290 TraceCheckUtils]: 39: Hoare triple {4394#(<= ~counter~0 2)} assume !(0 == ~cond); {4394#(<= ~counter~0 2)} is VALID [2022-04-08 06:17:45,047 INFO L290 TraceCheckUtils]: 40: Hoare triple {4394#(<= ~counter~0 2)} assume true; {4394#(<= ~counter~0 2)} is VALID [2022-04-08 06:17:45,048 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {4394#(<= ~counter~0 2)} {4394#(<= ~counter~0 2)} #84#return; {4394#(<= ~counter~0 2)} is VALID [2022-04-08 06:17:45,048 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-08 06:17:45,048 INFO L290 TraceCheckUtils]: 43: Hoare triple {4394#(<= ~counter~0 2)} ~cond := #in~cond; {4394#(<= ~counter~0 2)} is VALID [2022-04-08 06:17:45,049 INFO L290 TraceCheckUtils]: 44: Hoare triple {4394#(<= ~counter~0 2)} assume !(0 == ~cond); {4394#(<= ~counter~0 2)} is VALID [2022-04-08 06:17:45,049 INFO L290 TraceCheckUtils]: 45: Hoare triple {4394#(<= ~counter~0 2)} assume true; {4394#(<= ~counter~0 2)} is VALID [2022-04-08 06:17:45,050 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {4394#(<= ~counter~0 2)} {4394#(<= ~counter~0 2)} #86#return; {4394#(<= ~counter~0 2)} is VALID [2022-04-08 06:17:45,050 INFO L290 TraceCheckUtils]: 47: Hoare triple {4394#(<= ~counter~0 2)} assume !(~r~0 >= ~d~0); {4394#(<= ~counter~0 2)} is VALID [2022-04-08 06:17:45,050 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-08 06:17:45,051 INFO L290 TraceCheckUtils]: 49: Hoare triple {4449#(<= |main_#t~post7| 2)} assume !(#t~post7 < 10);havoc #t~post7; {4298#false} is VALID [2022-04-08 06:17:45,051 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-08 06:17:45,051 INFO L290 TraceCheckUtils]: 51: Hoare triple {4298#false} ~cond := #in~cond; {4298#false} is VALID [2022-04-08 06:17:45,051 INFO L290 TraceCheckUtils]: 52: Hoare triple {4298#false} assume !(0 == ~cond); {4298#false} is VALID [2022-04-08 06:17:45,051 INFO L290 TraceCheckUtils]: 53: Hoare triple {4298#false} assume true; {4298#false} is VALID [2022-04-08 06:17:45,051 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {4298#false} {4298#false} #92#return; {4298#false} is VALID [2022-04-08 06:17:45,051 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-08 06:17:45,051 INFO L290 TraceCheckUtils]: 56: Hoare triple {4298#false} ~cond := #in~cond; {4298#false} is VALID [2022-04-08 06:17:45,051 INFO L290 TraceCheckUtils]: 57: Hoare triple {4298#false} assume 0 == ~cond; {4298#false} is VALID [2022-04-08 06:17:45,051 INFO L290 TraceCheckUtils]: 58: Hoare triple {4298#false} assume !false; {4298#false} is VALID [2022-04-08 06:17:45,052 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-08 06:17:45,052 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:17:45,309 INFO L290 TraceCheckUtils]: 58: Hoare triple {4298#false} assume !false; {4298#false} is VALID [2022-04-08 06:17:45,309 INFO L290 TraceCheckUtils]: 57: Hoare triple {4298#false} assume 0 == ~cond; {4298#false} is VALID [2022-04-08 06:17:45,310 INFO L290 TraceCheckUtils]: 56: Hoare triple {4298#false} ~cond := #in~cond; {4298#false} is VALID [2022-04-08 06:17:45,310 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-08 06:17:45,310 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {4297#true} {4298#false} #92#return; {4298#false} is VALID [2022-04-08 06:17:45,310 INFO L290 TraceCheckUtils]: 53: Hoare triple {4297#true} assume true; {4297#true} is VALID [2022-04-08 06:17:45,310 INFO L290 TraceCheckUtils]: 52: Hoare triple {4297#true} assume !(0 == ~cond); {4297#true} is VALID [2022-04-08 06:17:45,310 INFO L290 TraceCheckUtils]: 51: Hoare triple {4297#true} ~cond := #in~cond; {4297#true} is VALID [2022-04-08 06:17:45,310 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-08 06:17:45,310 INFO L290 TraceCheckUtils]: 49: Hoare triple {4507#(< |main_#t~post7| 10)} assume !(#t~post7 < 10);havoc #t~post7; {4298#false} is VALID [2022-04-08 06:17:45,311 INFO L290 TraceCheckUtils]: 48: Hoare triple {4511#(< ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {4507#(< |main_#t~post7| 10)} is VALID [2022-04-08 06:17:45,311 INFO L290 TraceCheckUtils]: 47: Hoare triple {4511#(< ~counter~0 10)} assume !(~r~0 >= ~d~0); {4511#(< ~counter~0 10)} is VALID [2022-04-08 06:17:45,312 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {4297#true} {4511#(< ~counter~0 10)} #86#return; {4511#(< ~counter~0 10)} is VALID [2022-04-08 06:17:45,312 INFO L290 TraceCheckUtils]: 45: Hoare triple {4297#true} assume true; {4297#true} is VALID [2022-04-08 06:17:45,312 INFO L290 TraceCheckUtils]: 44: Hoare triple {4297#true} assume !(0 == ~cond); {4297#true} is VALID [2022-04-08 06:17:45,312 INFO L290 TraceCheckUtils]: 43: Hoare triple {4297#true} ~cond := #in~cond; {4297#true} is VALID [2022-04-08 06:17:45,312 INFO L272 TraceCheckUtils]: 42: Hoare triple {4511#(< ~counter~0 10)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {4297#true} is VALID [2022-04-08 06:17:45,312 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {4297#true} {4511#(< ~counter~0 10)} #84#return; {4511#(< ~counter~0 10)} is VALID [2022-04-08 06:17:45,312 INFO L290 TraceCheckUtils]: 40: Hoare triple {4297#true} assume true; {4297#true} is VALID [2022-04-08 06:17:45,313 INFO L290 TraceCheckUtils]: 39: Hoare triple {4297#true} assume !(0 == ~cond); {4297#true} is VALID [2022-04-08 06:17:45,313 INFO L290 TraceCheckUtils]: 38: Hoare triple {4297#true} ~cond := #in~cond; {4297#true} is VALID [2022-04-08 06:17:45,313 INFO L272 TraceCheckUtils]: 37: Hoare triple {4511#(< ~counter~0 10)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {4297#true} is VALID [2022-04-08 06:17:45,313 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {4297#true} {4511#(< ~counter~0 10)} #82#return; {4511#(< ~counter~0 10)} is VALID [2022-04-08 06:17:45,313 INFO L290 TraceCheckUtils]: 35: Hoare triple {4297#true} assume true; {4297#true} is VALID [2022-04-08 06:17:45,313 INFO L290 TraceCheckUtils]: 34: Hoare triple {4297#true} assume !(0 == ~cond); {4297#true} is VALID [2022-04-08 06:17:45,313 INFO L290 TraceCheckUtils]: 33: Hoare triple {4297#true} ~cond := #in~cond; {4297#true} is VALID [2022-04-08 06:17:45,313 INFO L272 TraceCheckUtils]: 32: Hoare triple {4511#(< ~counter~0 10)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {4297#true} is VALID [2022-04-08 06:17:45,314 INFO L290 TraceCheckUtils]: 31: Hoare triple {4511#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {4511#(< ~counter~0 10)} is VALID [2022-04-08 06:17:45,314 INFO L290 TraceCheckUtils]: 30: Hoare triple {4566#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4511#(< ~counter~0 10)} is VALID [2022-04-08 06:17:45,314 INFO L290 TraceCheckUtils]: 29: Hoare triple {4566#(< ~counter~0 9)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {4566#(< ~counter~0 9)} is VALID [2022-04-08 06:17:45,315 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {4297#true} {4566#(< ~counter~0 9)} #86#return; {4566#(< ~counter~0 9)} is VALID [2022-04-08 06:17:45,315 INFO L290 TraceCheckUtils]: 27: Hoare triple {4297#true} assume true; {4297#true} is VALID [2022-04-08 06:17:45,315 INFO L290 TraceCheckUtils]: 26: Hoare triple {4297#true} assume !(0 == ~cond); {4297#true} is VALID [2022-04-08 06:17:45,315 INFO L290 TraceCheckUtils]: 25: Hoare triple {4297#true} ~cond := #in~cond; {4297#true} is VALID [2022-04-08 06:17:45,315 INFO L272 TraceCheckUtils]: 24: Hoare triple {4566#(< ~counter~0 9)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {4297#true} is VALID [2022-04-08 06:17:45,316 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {4297#true} {4566#(< ~counter~0 9)} #84#return; {4566#(< ~counter~0 9)} is VALID [2022-04-08 06:17:45,316 INFO L290 TraceCheckUtils]: 22: Hoare triple {4297#true} assume true; {4297#true} is VALID [2022-04-08 06:17:45,316 INFO L290 TraceCheckUtils]: 21: Hoare triple {4297#true} assume !(0 == ~cond); {4297#true} is VALID [2022-04-08 06:17:45,316 INFO L290 TraceCheckUtils]: 20: Hoare triple {4297#true} ~cond := #in~cond; {4297#true} is VALID [2022-04-08 06:17:45,316 INFO L272 TraceCheckUtils]: 19: Hoare triple {4566#(< ~counter~0 9)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {4297#true} is VALID [2022-04-08 06:17:45,316 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {4297#true} {4566#(< ~counter~0 9)} #82#return; {4566#(< ~counter~0 9)} is VALID [2022-04-08 06:17:45,317 INFO L290 TraceCheckUtils]: 17: Hoare triple {4297#true} assume true; {4297#true} is VALID [2022-04-08 06:17:45,317 INFO L290 TraceCheckUtils]: 16: Hoare triple {4297#true} assume !(0 == ~cond); {4297#true} is VALID [2022-04-08 06:17:45,317 INFO L290 TraceCheckUtils]: 15: Hoare triple {4297#true} ~cond := #in~cond; {4297#true} is VALID [2022-04-08 06:17:45,317 INFO L272 TraceCheckUtils]: 14: Hoare triple {4566#(< ~counter~0 9)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {4297#true} is VALID [2022-04-08 06:17:45,317 INFO L290 TraceCheckUtils]: 13: Hoare triple {4566#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {4566#(< ~counter~0 9)} is VALID [2022-04-08 06:17:45,317 INFO L290 TraceCheckUtils]: 12: Hoare triple {4621#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {4566#(< ~counter~0 9)} is VALID [2022-04-08 06:17:45,318 INFO L290 TraceCheckUtils]: 11: Hoare triple {4621#(< ~counter~0 8)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {4621#(< ~counter~0 8)} is VALID [2022-04-08 06:17:45,318 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4297#true} {4621#(< ~counter~0 8)} #80#return; {4621#(< ~counter~0 8)} is VALID [2022-04-08 06:17:45,318 INFO L290 TraceCheckUtils]: 9: Hoare triple {4297#true} assume true; {4297#true} is VALID [2022-04-08 06:17:45,318 INFO L290 TraceCheckUtils]: 8: Hoare triple {4297#true} assume !(0 == ~cond); {4297#true} is VALID [2022-04-08 06:17:45,318 INFO L290 TraceCheckUtils]: 7: Hoare triple {4297#true} ~cond := #in~cond; {4297#true} is VALID [2022-04-08 06:17:45,319 INFO L272 TraceCheckUtils]: 6: Hoare triple {4621#(< ~counter~0 8)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {4297#true} is VALID [2022-04-08 06:17:45,319 INFO L290 TraceCheckUtils]: 5: Hoare triple {4621#(< ~counter~0 8)} 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; {4621#(< ~counter~0 8)} is VALID [2022-04-08 06:17:45,319 INFO L272 TraceCheckUtils]: 4: Hoare triple {4621#(< ~counter~0 8)} call #t~ret8 := main(); {4621#(< ~counter~0 8)} is VALID [2022-04-08 06:17:45,319 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4621#(< ~counter~0 8)} {4297#true} #96#return; {4621#(< ~counter~0 8)} is VALID [2022-04-08 06:17:45,320 INFO L290 TraceCheckUtils]: 2: Hoare triple {4621#(< ~counter~0 8)} assume true; {4621#(< ~counter~0 8)} is VALID [2022-04-08 06:17:45,320 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; {4621#(< ~counter~0 8)} is VALID [2022-04-08 06:17:45,320 INFO L272 TraceCheckUtils]: 0: Hoare triple {4297#true} call ULTIMATE.init(); {4297#true} is VALID [2022-04-08 06:17:45,320 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-08 06:17:45,321 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:17:45,321 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [830390144] [2022-04-08 06:17:45,321 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:17:45,321 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1718556298] [2022-04-08 06:17:45,321 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1718556298] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:17:45,321 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:17:45,321 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-08 06:17:45,321 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:17:45,321 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1174967577] [2022-04-08 06:17:45,321 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1174967577] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:17:45,321 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:17:45,321 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 06:17:45,321 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [710459979] [2022-04-08 06:17:45,322 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:17:45,322 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-08 06:17:45,322 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:17:45,322 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-08 06:17:45,354 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-08 06:17:45,354 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 06:17:45,355 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:17:45,355 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 06:17:45,355 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-08 06:17:45,355 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-08 06:17:45,579 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:45,580 INFO L93 Difference]: Finished difference Result 110 states and 126 transitions. [2022-04-08 06:17:45,580 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-08 06:17:45,580 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-08 06:17:45,580 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:17:45,580 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-08 06:17:45,581 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 79 transitions. [2022-04-08 06:17:45,581 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-08 06:17:45,582 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 79 transitions. [2022-04-08 06:17:45,582 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 79 transitions. [2022-04-08 06:17:45,664 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-08 06:17:45,665 INFO L225 Difference]: With dead ends: 110 [2022-04-08 06:17:45,665 INFO L226 Difference]: Without dead ends: 98 [2022-04-08 06:17:45,666 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 117 GetRequests, 109 SyntacticMatches, 0 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 7 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-08 06:17:45,666 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-08 06:17:45,666 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-08 06:17:45,667 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 98 states. [2022-04-08 06:17:45,742 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 98 to 97. [2022-04-08 06:17:45,742 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:17:45,742 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-08 06:17:45,743 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-08 06:17:45,743 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-08 06:17:45,747 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:45,747 INFO L93 Difference]: Finished difference Result 98 states and 114 transitions. [2022-04-08 06:17:45,747 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 114 transitions. [2022-04-08 06:17:45,748 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:17:45,748 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:17:45,748 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-08 06:17:45,748 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-08 06:17:45,749 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:45,749 INFO L93 Difference]: Finished difference Result 98 states and 114 transitions. [2022-04-08 06:17:45,750 INFO L276 IsEmpty]: Start isEmpty. Operand 98 states and 114 transitions. [2022-04-08 06:17:45,750 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:17:45,750 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:17:45,750 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:17:45,750 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:17:45,750 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-08 06:17:45,752 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 97 states to 97 states and 113 transitions. [2022-04-08 06:17:45,752 INFO L78 Accepts]: Start accepts. Automaton has 97 states and 113 transitions. Word has length 59 [2022-04-08 06:17:45,752 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:17:45,752 INFO L478 AbstractCegarLoop]: Abstraction has 97 states and 113 transitions. [2022-04-08 06:17:45,752 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-08 06:17:45,752 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 97 states and 113 transitions. [2022-04-08 06:17:45,869 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-08 06:17:45,869 INFO L276 IsEmpty]: Start isEmpty. Operand 97 states and 113 transitions. [2022-04-08 06:17:45,869 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 62 [2022-04-08 06:17:45,869 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:17:45,870 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-08 06:17:45,886 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-08 06:17:46,070 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-08 06:17:46,071 INFO L403 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:17:46,071 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:17:46,071 INFO L85 PathProgramCache]: Analyzing trace with hash 940283669, now seen corresponding path program 3 times [2022-04-08 06:17:46,071 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:17:46,071 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1426783826] [2022-04-08 06:17:52,368 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-08 06:17:52,368 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-08 06:17:52,368 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 06:17:52,369 INFO L85 PathProgramCache]: Analyzing trace with hash 940283669, now seen corresponding path program 4 times [2022-04-08 06:17:52,369 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:17:52,369 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [665283605] [2022-04-08 06:17:52,369 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:17:52,369 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:17:52,402 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:17:52,403 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1461161336] [2022-04-08 06:17:52,403 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 06:17:52,403 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:17:52,403 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:17:52,414 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-08 06:17:52,451 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-08 06:17:52,476 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 06:17:52,476 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:17:52,477 INFO L263 TraceCheckSpWp]: Trace formula consists of 170 conjuncts, 9 conjunts are in the unsatisfiable core [2022-04-08 06:17:52,489 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:17:52,492 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:17:52,769 INFO L272 TraceCheckUtils]: 0: Hoare triple {5270#true} call ULTIMATE.init(); {5270#true} is VALID [2022-04-08 06:17:52,770 INFO L290 TraceCheckUtils]: 1: Hoare triple {5270#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; {5278#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:52,770 INFO L290 TraceCheckUtils]: 2: Hoare triple {5278#(<= ~counter~0 0)} assume true; {5278#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:52,771 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5278#(<= ~counter~0 0)} {5270#true} #96#return; {5278#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:52,771 INFO L272 TraceCheckUtils]: 4: Hoare triple {5278#(<= ~counter~0 0)} call #t~ret8 := main(); {5278#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:52,771 INFO L290 TraceCheckUtils]: 5: Hoare triple {5278#(<= ~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; {5278#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:52,772 INFO L272 TraceCheckUtils]: 6: Hoare triple {5278#(<= ~counter~0 0)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {5278#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:52,772 INFO L290 TraceCheckUtils]: 7: Hoare triple {5278#(<= ~counter~0 0)} ~cond := #in~cond; {5278#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:52,772 INFO L290 TraceCheckUtils]: 8: Hoare triple {5278#(<= ~counter~0 0)} assume !(0 == ~cond); {5278#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:52,773 INFO L290 TraceCheckUtils]: 9: Hoare triple {5278#(<= ~counter~0 0)} assume true; {5278#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:52,773 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5278#(<= ~counter~0 0)} {5278#(<= ~counter~0 0)} #80#return; {5278#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:52,773 INFO L290 TraceCheckUtils]: 11: Hoare triple {5278#(<= ~counter~0 0)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {5278#(<= ~counter~0 0)} is VALID [2022-04-08 06:17:52,774 INFO L290 TraceCheckUtils]: 12: Hoare triple {5278#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5312#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:52,774 INFO L290 TraceCheckUtils]: 13: Hoare triple {5312#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {5312#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:52,775 INFO L272 TraceCheckUtils]: 14: Hoare triple {5312#(<= ~counter~0 1)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {5312#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:52,775 INFO L290 TraceCheckUtils]: 15: Hoare triple {5312#(<= ~counter~0 1)} ~cond := #in~cond; {5312#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:52,775 INFO L290 TraceCheckUtils]: 16: Hoare triple {5312#(<= ~counter~0 1)} assume !(0 == ~cond); {5312#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:52,775 INFO L290 TraceCheckUtils]: 17: Hoare triple {5312#(<= ~counter~0 1)} assume true; {5312#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:52,776 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {5312#(<= ~counter~0 1)} {5312#(<= ~counter~0 1)} #82#return; {5312#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:52,776 INFO L272 TraceCheckUtils]: 19: Hoare triple {5312#(<= ~counter~0 1)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {5312#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:52,776 INFO L290 TraceCheckUtils]: 20: Hoare triple {5312#(<= ~counter~0 1)} ~cond := #in~cond; {5312#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:52,777 INFO L290 TraceCheckUtils]: 21: Hoare triple {5312#(<= ~counter~0 1)} assume !(0 == ~cond); {5312#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:52,777 INFO L290 TraceCheckUtils]: 22: Hoare triple {5312#(<= ~counter~0 1)} assume true; {5312#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:52,777 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {5312#(<= ~counter~0 1)} {5312#(<= ~counter~0 1)} #84#return; {5312#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:52,778 INFO L272 TraceCheckUtils]: 24: Hoare triple {5312#(<= ~counter~0 1)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {5312#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:52,778 INFO L290 TraceCheckUtils]: 25: Hoare triple {5312#(<= ~counter~0 1)} ~cond := #in~cond; {5312#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:52,778 INFO L290 TraceCheckUtils]: 26: Hoare triple {5312#(<= ~counter~0 1)} assume !(0 == ~cond); {5312#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:52,779 INFO L290 TraceCheckUtils]: 27: Hoare triple {5312#(<= ~counter~0 1)} assume true; {5312#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:52,779 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {5312#(<= ~counter~0 1)} {5312#(<= ~counter~0 1)} #86#return; {5312#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:52,780 INFO L290 TraceCheckUtils]: 29: Hoare triple {5312#(<= ~counter~0 1)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {5312#(<= ~counter~0 1)} is VALID [2022-04-08 06:17:52,780 INFO L290 TraceCheckUtils]: 30: Hoare triple {5312#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5367#(<= ~counter~0 2)} is VALID [2022-04-08 06:17:52,780 INFO L290 TraceCheckUtils]: 31: Hoare triple {5367#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {5367#(<= ~counter~0 2)} is VALID [2022-04-08 06:17:52,781 INFO L272 TraceCheckUtils]: 32: Hoare triple {5367#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {5367#(<= ~counter~0 2)} is VALID [2022-04-08 06:17:52,781 INFO L290 TraceCheckUtils]: 33: Hoare triple {5367#(<= ~counter~0 2)} ~cond := #in~cond; {5367#(<= ~counter~0 2)} is VALID [2022-04-08 06:17:52,781 INFO L290 TraceCheckUtils]: 34: Hoare triple {5367#(<= ~counter~0 2)} assume !(0 == ~cond); {5367#(<= ~counter~0 2)} is VALID [2022-04-08 06:17:52,782 INFO L290 TraceCheckUtils]: 35: Hoare triple {5367#(<= ~counter~0 2)} assume true; {5367#(<= ~counter~0 2)} is VALID [2022-04-08 06:17:52,782 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {5367#(<= ~counter~0 2)} {5367#(<= ~counter~0 2)} #82#return; {5367#(<= ~counter~0 2)} is VALID [2022-04-08 06:17:52,783 INFO L272 TraceCheckUtils]: 37: Hoare triple {5367#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {5367#(<= ~counter~0 2)} is VALID [2022-04-08 06:17:52,783 INFO L290 TraceCheckUtils]: 38: Hoare triple {5367#(<= ~counter~0 2)} ~cond := #in~cond; {5367#(<= ~counter~0 2)} is VALID [2022-04-08 06:17:52,783 INFO L290 TraceCheckUtils]: 39: Hoare triple {5367#(<= ~counter~0 2)} assume !(0 == ~cond); {5367#(<= ~counter~0 2)} is VALID [2022-04-08 06:17:52,784 INFO L290 TraceCheckUtils]: 40: Hoare triple {5367#(<= ~counter~0 2)} assume true; {5367#(<= ~counter~0 2)} is VALID [2022-04-08 06:17:52,784 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {5367#(<= ~counter~0 2)} {5367#(<= ~counter~0 2)} #84#return; {5367#(<= ~counter~0 2)} is VALID [2022-04-08 06:17:52,785 INFO L272 TraceCheckUtils]: 42: Hoare triple {5367#(<= ~counter~0 2)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {5367#(<= ~counter~0 2)} is VALID [2022-04-08 06:17:52,785 INFO L290 TraceCheckUtils]: 43: Hoare triple {5367#(<= ~counter~0 2)} ~cond := #in~cond; {5367#(<= ~counter~0 2)} is VALID [2022-04-08 06:17:52,785 INFO L290 TraceCheckUtils]: 44: Hoare triple {5367#(<= ~counter~0 2)} assume !(0 == ~cond); {5367#(<= ~counter~0 2)} is VALID [2022-04-08 06:17:52,786 INFO L290 TraceCheckUtils]: 45: Hoare triple {5367#(<= ~counter~0 2)} assume true; {5367#(<= ~counter~0 2)} is VALID [2022-04-08 06:17:52,786 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {5367#(<= ~counter~0 2)} {5367#(<= ~counter~0 2)} #86#return; {5367#(<= ~counter~0 2)} is VALID [2022-04-08 06:17:52,787 INFO L290 TraceCheckUtils]: 47: Hoare triple {5367#(<= ~counter~0 2)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {5367#(<= ~counter~0 2)} is VALID [2022-04-08 06:17:52,787 INFO L290 TraceCheckUtils]: 48: Hoare triple {5367#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5422#(<= |main_#t~post6| 2)} is VALID [2022-04-08 06:17:52,787 INFO L290 TraceCheckUtils]: 49: Hoare triple {5422#(<= |main_#t~post6| 2)} assume !(#t~post6 < 10);havoc #t~post6; {5271#false} is VALID [2022-04-08 06:17:52,787 INFO L290 TraceCheckUtils]: 50: Hoare triple {5271#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5271#false} is VALID [2022-04-08 06:17:52,788 INFO L290 TraceCheckUtils]: 51: Hoare triple {5271#false} assume !(#t~post7 < 10);havoc #t~post7; {5271#false} is VALID [2022-04-08 06:17:52,788 INFO L272 TraceCheckUtils]: 52: Hoare triple {5271#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {5271#false} is VALID [2022-04-08 06:17:52,788 INFO L290 TraceCheckUtils]: 53: Hoare triple {5271#false} ~cond := #in~cond; {5271#false} is VALID [2022-04-08 06:17:52,788 INFO L290 TraceCheckUtils]: 54: Hoare triple {5271#false} assume !(0 == ~cond); {5271#false} is VALID [2022-04-08 06:17:52,788 INFO L290 TraceCheckUtils]: 55: Hoare triple {5271#false} assume true; {5271#false} is VALID [2022-04-08 06:17:52,788 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {5271#false} {5271#false} #92#return; {5271#false} is VALID [2022-04-08 06:17:52,788 INFO L272 TraceCheckUtils]: 57: Hoare triple {5271#false} call __VERIFIER_assert((if ~B~0 % 4294967296 == ~d~0 then 1 else 0)); {5271#false} is VALID [2022-04-08 06:17:52,788 INFO L290 TraceCheckUtils]: 58: Hoare triple {5271#false} ~cond := #in~cond; {5271#false} is VALID [2022-04-08 06:17:52,788 INFO L290 TraceCheckUtils]: 59: Hoare triple {5271#false} assume 0 == ~cond; {5271#false} is VALID [2022-04-08 06:17:52,788 INFO L290 TraceCheckUtils]: 60: Hoare triple {5271#false} assume !false; {5271#false} is VALID [2022-04-08 06:17:52,788 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-08 06:17:52,789 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:17:53,062 INFO L290 TraceCheckUtils]: 60: Hoare triple {5271#false} assume !false; {5271#false} is VALID [2022-04-08 06:17:53,062 INFO L290 TraceCheckUtils]: 59: Hoare triple {5271#false} assume 0 == ~cond; {5271#false} is VALID [2022-04-08 06:17:53,062 INFO L290 TraceCheckUtils]: 58: Hoare triple {5271#false} ~cond := #in~cond; {5271#false} is VALID [2022-04-08 06:17:53,062 INFO L272 TraceCheckUtils]: 57: Hoare triple {5271#false} call __VERIFIER_assert((if ~B~0 % 4294967296 == ~d~0 then 1 else 0)); {5271#false} is VALID [2022-04-08 06:17:53,062 INFO L284 TraceCheckUtils]: 56: Hoare quadruple {5270#true} {5271#false} #92#return; {5271#false} is VALID [2022-04-08 06:17:53,062 INFO L290 TraceCheckUtils]: 55: Hoare triple {5270#true} assume true; {5270#true} is VALID [2022-04-08 06:17:53,063 INFO L290 TraceCheckUtils]: 54: Hoare triple {5270#true} assume !(0 == ~cond); {5270#true} is VALID [2022-04-08 06:17:53,063 INFO L290 TraceCheckUtils]: 53: Hoare triple {5270#true} ~cond := #in~cond; {5270#true} is VALID [2022-04-08 06:17:53,063 INFO L272 TraceCheckUtils]: 52: Hoare triple {5271#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {5270#true} is VALID [2022-04-08 06:17:53,063 INFO L290 TraceCheckUtils]: 51: Hoare triple {5271#false} assume !(#t~post7 < 10);havoc #t~post7; {5271#false} is VALID [2022-04-08 06:17:53,063 INFO L290 TraceCheckUtils]: 50: Hoare triple {5271#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {5271#false} is VALID [2022-04-08 06:17:53,063 INFO L290 TraceCheckUtils]: 49: Hoare triple {5492#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {5271#false} is VALID [2022-04-08 06:17:53,063 INFO L290 TraceCheckUtils]: 48: Hoare triple {5496#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5492#(< |main_#t~post6| 10)} is VALID [2022-04-08 06:17:53,064 INFO L290 TraceCheckUtils]: 47: Hoare triple {5496#(< ~counter~0 10)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {5496#(< ~counter~0 10)} is VALID [2022-04-08 06:17:53,064 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {5270#true} {5496#(< ~counter~0 10)} #86#return; {5496#(< ~counter~0 10)} is VALID [2022-04-08 06:17:53,064 INFO L290 TraceCheckUtils]: 45: Hoare triple {5270#true} assume true; {5270#true} is VALID [2022-04-08 06:17:53,064 INFO L290 TraceCheckUtils]: 44: Hoare triple {5270#true} assume !(0 == ~cond); {5270#true} is VALID [2022-04-08 06:17:53,065 INFO L290 TraceCheckUtils]: 43: Hoare triple {5270#true} ~cond := #in~cond; {5270#true} is VALID [2022-04-08 06:17:53,065 INFO L272 TraceCheckUtils]: 42: Hoare triple {5496#(< ~counter~0 10)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {5270#true} is VALID [2022-04-08 06:17:53,065 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {5270#true} {5496#(< ~counter~0 10)} #84#return; {5496#(< ~counter~0 10)} is VALID [2022-04-08 06:17:53,065 INFO L290 TraceCheckUtils]: 40: Hoare triple {5270#true} assume true; {5270#true} is VALID [2022-04-08 06:17:53,065 INFO L290 TraceCheckUtils]: 39: Hoare triple {5270#true} assume !(0 == ~cond); {5270#true} is VALID [2022-04-08 06:17:53,065 INFO L290 TraceCheckUtils]: 38: Hoare triple {5270#true} ~cond := #in~cond; {5270#true} is VALID [2022-04-08 06:17:53,065 INFO L272 TraceCheckUtils]: 37: Hoare triple {5496#(< ~counter~0 10)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {5270#true} is VALID [2022-04-08 06:17:53,066 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {5270#true} {5496#(< ~counter~0 10)} #82#return; {5496#(< ~counter~0 10)} is VALID [2022-04-08 06:17:53,066 INFO L290 TraceCheckUtils]: 35: Hoare triple {5270#true} assume true; {5270#true} is VALID [2022-04-08 06:17:53,066 INFO L290 TraceCheckUtils]: 34: Hoare triple {5270#true} assume !(0 == ~cond); {5270#true} is VALID [2022-04-08 06:17:53,066 INFO L290 TraceCheckUtils]: 33: Hoare triple {5270#true} ~cond := #in~cond; {5270#true} is VALID [2022-04-08 06:17:53,066 INFO L272 TraceCheckUtils]: 32: Hoare triple {5496#(< ~counter~0 10)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {5270#true} is VALID [2022-04-08 06:17:53,066 INFO L290 TraceCheckUtils]: 31: Hoare triple {5496#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {5496#(< ~counter~0 10)} is VALID [2022-04-08 06:17:53,067 INFO L290 TraceCheckUtils]: 30: Hoare triple {5551#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5496#(< ~counter~0 10)} is VALID [2022-04-08 06:17:53,067 INFO L290 TraceCheckUtils]: 29: Hoare triple {5551#(< ~counter~0 9)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {5551#(< ~counter~0 9)} is VALID [2022-04-08 06:17:53,068 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {5270#true} {5551#(< ~counter~0 9)} #86#return; {5551#(< ~counter~0 9)} is VALID [2022-04-08 06:17:53,068 INFO L290 TraceCheckUtils]: 27: Hoare triple {5270#true} assume true; {5270#true} is VALID [2022-04-08 06:17:53,068 INFO L290 TraceCheckUtils]: 26: Hoare triple {5270#true} assume !(0 == ~cond); {5270#true} is VALID [2022-04-08 06:17:53,068 INFO L290 TraceCheckUtils]: 25: Hoare triple {5270#true} ~cond := #in~cond; {5270#true} is VALID [2022-04-08 06:17:53,068 INFO L272 TraceCheckUtils]: 24: Hoare triple {5551#(< ~counter~0 9)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {5270#true} is VALID [2022-04-08 06:17:53,068 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {5270#true} {5551#(< ~counter~0 9)} #84#return; {5551#(< ~counter~0 9)} is VALID [2022-04-08 06:17:53,068 INFO L290 TraceCheckUtils]: 22: Hoare triple {5270#true} assume true; {5270#true} is VALID [2022-04-08 06:17:53,069 INFO L290 TraceCheckUtils]: 21: Hoare triple {5270#true} assume !(0 == ~cond); {5270#true} is VALID [2022-04-08 06:17:53,069 INFO L290 TraceCheckUtils]: 20: Hoare triple {5270#true} ~cond := #in~cond; {5270#true} is VALID [2022-04-08 06:17:53,069 INFO L272 TraceCheckUtils]: 19: Hoare triple {5551#(< ~counter~0 9)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {5270#true} is VALID [2022-04-08 06:17:53,069 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {5270#true} {5551#(< ~counter~0 9)} #82#return; {5551#(< ~counter~0 9)} is VALID [2022-04-08 06:17:53,069 INFO L290 TraceCheckUtils]: 17: Hoare triple {5270#true} assume true; {5270#true} is VALID [2022-04-08 06:17:53,069 INFO L290 TraceCheckUtils]: 16: Hoare triple {5270#true} assume !(0 == ~cond); {5270#true} is VALID [2022-04-08 06:17:53,069 INFO L290 TraceCheckUtils]: 15: Hoare triple {5270#true} ~cond := #in~cond; {5270#true} is VALID [2022-04-08 06:17:53,069 INFO L272 TraceCheckUtils]: 14: Hoare triple {5551#(< ~counter~0 9)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {5270#true} is VALID [2022-04-08 06:17:53,070 INFO L290 TraceCheckUtils]: 13: Hoare triple {5551#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {5551#(< ~counter~0 9)} is VALID [2022-04-08 06:17:53,070 INFO L290 TraceCheckUtils]: 12: Hoare triple {5606#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {5551#(< ~counter~0 9)} is VALID [2022-04-08 06:17:53,070 INFO L290 TraceCheckUtils]: 11: Hoare triple {5606#(< ~counter~0 8)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {5606#(< ~counter~0 8)} is VALID [2022-04-08 06:17:53,071 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {5270#true} {5606#(< ~counter~0 8)} #80#return; {5606#(< ~counter~0 8)} is VALID [2022-04-08 06:17:53,071 INFO L290 TraceCheckUtils]: 9: Hoare triple {5270#true} assume true; {5270#true} is VALID [2022-04-08 06:17:53,071 INFO L290 TraceCheckUtils]: 8: Hoare triple {5270#true} assume !(0 == ~cond); {5270#true} is VALID [2022-04-08 06:17:53,071 INFO L290 TraceCheckUtils]: 7: Hoare triple {5270#true} ~cond := #in~cond; {5270#true} is VALID [2022-04-08 06:17:53,071 INFO L272 TraceCheckUtils]: 6: Hoare triple {5606#(< ~counter~0 8)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {5270#true} is VALID [2022-04-08 06:17:53,071 INFO L290 TraceCheckUtils]: 5: Hoare triple {5606#(< ~counter~0 8)} 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; {5606#(< ~counter~0 8)} is VALID [2022-04-08 06:17:53,072 INFO L272 TraceCheckUtils]: 4: Hoare triple {5606#(< ~counter~0 8)} call #t~ret8 := main(); {5606#(< ~counter~0 8)} is VALID [2022-04-08 06:17:53,072 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {5606#(< ~counter~0 8)} {5270#true} #96#return; {5606#(< ~counter~0 8)} is VALID [2022-04-08 06:17:53,072 INFO L290 TraceCheckUtils]: 2: Hoare triple {5606#(< ~counter~0 8)} assume true; {5606#(< ~counter~0 8)} is VALID [2022-04-08 06:17:53,073 INFO L290 TraceCheckUtils]: 1: Hoare triple {5270#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; {5606#(< ~counter~0 8)} is VALID [2022-04-08 06:17:53,073 INFO L272 TraceCheckUtils]: 0: Hoare triple {5270#true} call ULTIMATE.init(); {5270#true} is VALID [2022-04-08 06:17:53,074 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-08 06:17:53,074 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:17:53,074 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [665283605] [2022-04-08 06:17:53,074 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:17:53,074 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1461161336] [2022-04-08 06:17:53,074 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1461161336] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:17:53,074 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:17:53,074 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 10 [2022-04-08 06:17:53,075 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:17:53,075 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1426783826] [2022-04-08 06:17:53,075 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1426783826] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:17:53,075 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:17:53,075 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [] total 6 [2022-04-08 06:17:53,075 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [801754987] [2022-04-08 06:17:53,075 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:17:53,075 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-08 06:17:53,076 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:17:53,076 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-08 06:17:53,110 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-08 06:17:53,110 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-04-08 06:17:53,111 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:17:53,111 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-04-08 06:17:53,111 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=57, Unknown=0, NotChecked=0, Total=90 [2022-04-08 06:17:53,111 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-08 06:17:53,325 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:53,325 INFO L93 Difference]: Finished difference Result 132 states and 161 transitions. [2022-04-08 06:17:53,325 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 06:17:53,325 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-08 06:17:53,325 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:17:53,325 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-08 06:17:53,326 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 90 transitions. [2022-04-08 06:17:53,327 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-08 06:17:53,327 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 90 transitions. [2022-04-08 06:17:53,327 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 90 transitions. [2022-04-08 06:17:53,390 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-08 06:17:53,392 INFO L225 Difference]: With dead ends: 132 [2022-04-08 06:17:53,392 INFO L226 Difference]: Without dead ends: 99 [2022-04-08 06:17:53,392 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 123 GetRequests, 113 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=51, Invalid=81, Unknown=0, NotChecked=0, Total=132 [2022-04-08 06:17:53,393 INFO L913 BasicCegarLoop]: 45 mSDtfsCounter, 7 mSDsluCounter, 101 mSDsCounter, 0 mSdLazyCounter, 27 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 7 SdHoareTripleChecker+Valid, 146 SdHoareTripleChecker+Invalid, 32 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 27 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 06:17:53,393 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [7 Valid, 146 Invalid, 32 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 27 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 06:17:53,393 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 99 states. [2022-04-08 06:17:53,457 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 99 to 99. [2022-04-08 06:17:53,458 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:17:53,458 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-08 06:17:53,459 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-08 06:17:53,460 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-08 06:17:53,462 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:53,462 INFO L93 Difference]: Finished difference Result 99 states and 115 transitions. [2022-04-08 06:17:53,462 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 115 transitions. [2022-04-08 06:17:53,462 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:17:53,462 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:17:53,462 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-08 06:17:53,463 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-08 06:17:53,465 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:17:53,465 INFO L93 Difference]: Finished difference Result 99 states and 115 transitions. [2022-04-08 06:17:53,465 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 115 transitions. [2022-04-08 06:17:53,465 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:17:53,465 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:17:53,465 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:17:53,465 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:17:53,475 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-08 06:17:53,477 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 99 states to 99 states and 115 transitions. [2022-04-08 06:17:53,477 INFO L78 Accepts]: Start accepts. Automaton has 99 states and 115 transitions. Word has length 61 [2022-04-08 06:17:53,477 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:17:53,477 INFO L478 AbstractCegarLoop]: Abstraction has 99 states and 115 transitions. [2022-04-08 06:17:53,478 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-08 06:17:53,478 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 99 states and 115 transitions. [2022-04-08 06:17:53,594 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-08 06:17:53,594 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 115 transitions. [2022-04-08 06:17:53,595 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 69 [2022-04-08 06:17:53,595 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:17:53,595 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-08 06:17:53,628 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-08 06:17:53,795 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-08 06:17:53,796 INFO L403 AbstractCegarLoop]: === Iteration 12 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:17:53,796 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:17:53,796 INFO L85 PathProgramCache]: Analyzing trace with hash 1140868055, now seen corresponding path program 1 times [2022-04-08 06:17:53,796 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:17:53,796 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [801908447] [2022-04-08 06:18:03,367 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-08 06:18:03,367 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-08 06:18:03,367 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 06:18:03,367 INFO L85 PathProgramCache]: Analyzing trace with hash 1140868055, now seen corresponding path program 2 times [2022-04-08 06:18:03,367 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:18:03,367 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [860042804] [2022-04-08 06:18:03,368 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:18:03,368 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:18:03,392 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:18:03,392 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1358738966] [2022-04-08 06:18:03,393 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:18:03,393 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:18:03,393 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:18:03,402 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-08 06:18:03,403 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-08 06:18:03,449 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:18:03,449 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:18:03,450 INFO L263 TraceCheckSpWp]: Trace formula consists of 185 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-08 06:18:03,462 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:18:03,465 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:18:03,764 INFO L272 TraceCheckUtils]: 0: Hoare triple {6309#true} call ULTIMATE.init(); {6309#true} is VALID [2022-04-08 06:18:03,765 INFO L290 TraceCheckUtils]: 1: Hoare triple {6309#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; {6317#(<= ~counter~0 0)} is VALID [2022-04-08 06:18:03,765 INFO L290 TraceCheckUtils]: 2: Hoare triple {6317#(<= ~counter~0 0)} assume true; {6317#(<= ~counter~0 0)} is VALID [2022-04-08 06:18:03,765 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6317#(<= ~counter~0 0)} {6309#true} #96#return; {6317#(<= ~counter~0 0)} is VALID [2022-04-08 06:18:03,766 INFO L272 TraceCheckUtils]: 4: Hoare triple {6317#(<= ~counter~0 0)} call #t~ret8 := main(); {6317#(<= ~counter~0 0)} is VALID [2022-04-08 06:18:03,766 INFO L290 TraceCheckUtils]: 5: Hoare triple {6317#(<= ~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; {6317#(<= ~counter~0 0)} is VALID [2022-04-08 06:18:03,767 INFO L272 TraceCheckUtils]: 6: Hoare triple {6317#(<= ~counter~0 0)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {6317#(<= ~counter~0 0)} is VALID [2022-04-08 06:18:03,767 INFO L290 TraceCheckUtils]: 7: Hoare triple {6317#(<= ~counter~0 0)} ~cond := #in~cond; {6317#(<= ~counter~0 0)} is VALID [2022-04-08 06:18:03,767 INFO L290 TraceCheckUtils]: 8: Hoare triple {6317#(<= ~counter~0 0)} assume !(0 == ~cond); {6317#(<= ~counter~0 0)} is VALID [2022-04-08 06:18:03,767 INFO L290 TraceCheckUtils]: 9: Hoare triple {6317#(<= ~counter~0 0)} assume true; {6317#(<= ~counter~0 0)} is VALID [2022-04-08 06:18:03,768 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6317#(<= ~counter~0 0)} {6317#(<= ~counter~0 0)} #80#return; {6317#(<= ~counter~0 0)} is VALID [2022-04-08 06:18:03,768 INFO L290 TraceCheckUtils]: 11: Hoare triple {6317#(<= ~counter~0 0)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {6317#(<= ~counter~0 0)} is VALID [2022-04-08 06:18:03,769 INFO L290 TraceCheckUtils]: 12: Hoare triple {6317#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6351#(<= ~counter~0 1)} is VALID [2022-04-08 06:18:03,769 INFO L290 TraceCheckUtils]: 13: Hoare triple {6351#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {6351#(<= ~counter~0 1)} is VALID [2022-04-08 06:18:03,769 INFO L272 TraceCheckUtils]: 14: Hoare triple {6351#(<= ~counter~0 1)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {6351#(<= ~counter~0 1)} is VALID [2022-04-08 06:18:03,770 INFO L290 TraceCheckUtils]: 15: Hoare triple {6351#(<= ~counter~0 1)} ~cond := #in~cond; {6351#(<= ~counter~0 1)} is VALID [2022-04-08 06:18:03,770 INFO L290 TraceCheckUtils]: 16: Hoare triple {6351#(<= ~counter~0 1)} assume !(0 == ~cond); {6351#(<= ~counter~0 1)} is VALID [2022-04-08 06:18:03,770 INFO L290 TraceCheckUtils]: 17: Hoare triple {6351#(<= ~counter~0 1)} assume true; {6351#(<= ~counter~0 1)} is VALID [2022-04-08 06:18:03,771 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {6351#(<= ~counter~0 1)} {6351#(<= ~counter~0 1)} #82#return; {6351#(<= ~counter~0 1)} is VALID [2022-04-08 06:18:03,771 INFO L272 TraceCheckUtils]: 19: Hoare triple {6351#(<= ~counter~0 1)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {6351#(<= ~counter~0 1)} is VALID [2022-04-08 06:18:03,772 INFO L290 TraceCheckUtils]: 20: Hoare triple {6351#(<= ~counter~0 1)} ~cond := #in~cond; {6351#(<= ~counter~0 1)} is VALID [2022-04-08 06:18:03,772 INFO L290 TraceCheckUtils]: 21: Hoare triple {6351#(<= ~counter~0 1)} assume !(0 == ~cond); {6351#(<= ~counter~0 1)} is VALID [2022-04-08 06:18:03,772 INFO L290 TraceCheckUtils]: 22: Hoare triple {6351#(<= ~counter~0 1)} assume true; {6351#(<= ~counter~0 1)} is VALID [2022-04-08 06:18:03,773 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {6351#(<= ~counter~0 1)} {6351#(<= ~counter~0 1)} #84#return; {6351#(<= ~counter~0 1)} is VALID [2022-04-08 06:18:03,773 INFO L272 TraceCheckUtils]: 24: Hoare triple {6351#(<= ~counter~0 1)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {6351#(<= ~counter~0 1)} is VALID [2022-04-08 06:18:03,774 INFO L290 TraceCheckUtils]: 25: Hoare triple {6351#(<= ~counter~0 1)} ~cond := #in~cond; {6351#(<= ~counter~0 1)} is VALID [2022-04-08 06:18:03,774 INFO L290 TraceCheckUtils]: 26: Hoare triple {6351#(<= ~counter~0 1)} assume !(0 == ~cond); {6351#(<= ~counter~0 1)} is VALID [2022-04-08 06:18:03,774 INFO L290 TraceCheckUtils]: 27: Hoare triple {6351#(<= ~counter~0 1)} assume true; {6351#(<= ~counter~0 1)} is VALID [2022-04-08 06:18:03,775 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {6351#(<= ~counter~0 1)} {6351#(<= ~counter~0 1)} #86#return; {6351#(<= ~counter~0 1)} is VALID [2022-04-08 06:18:03,775 INFO L290 TraceCheckUtils]: 29: Hoare triple {6351#(<= ~counter~0 1)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {6351#(<= ~counter~0 1)} is VALID [2022-04-08 06:18:03,775 INFO L290 TraceCheckUtils]: 30: Hoare triple {6351#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6406#(<= ~counter~0 2)} is VALID [2022-04-08 06:18:03,776 INFO L290 TraceCheckUtils]: 31: Hoare triple {6406#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {6406#(<= ~counter~0 2)} is VALID [2022-04-08 06:18:03,776 INFO L272 TraceCheckUtils]: 32: Hoare triple {6406#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {6406#(<= ~counter~0 2)} is VALID [2022-04-08 06:18:03,776 INFO L290 TraceCheckUtils]: 33: Hoare triple {6406#(<= ~counter~0 2)} ~cond := #in~cond; {6406#(<= ~counter~0 2)} is VALID [2022-04-08 06:18:03,777 INFO L290 TraceCheckUtils]: 34: Hoare triple {6406#(<= ~counter~0 2)} assume !(0 == ~cond); {6406#(<= ~counter~0 2)} is VALID [2022-04-08 06:18:03,777 INFO L290 TraceCheckUtils]: 35: Hoare triple {6406#(<= ~counter~0 2)} assume true; {6406#(<= ~counter~0 2)} is VALID [2022-04-08 06:18:03,777 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {6406#(<= ~counter~0 2)} {6406#(<= ~counter~0 2)} #82#return; {6406#(<= ~counter~0 2)} is VALID [2022-04-08 06:18:03,778 INFO L272 TraceCheckUtils]: 37: Hoare triple {6406#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {6406#(<= ~counter~0 2)} is VALID [2022-04-08 06:18:03,778 INFO L290 TraceCheckUtils]: 38: Hoare triple {6406#(<= ~counter~0 2)} ~cond := #in~cond; {6406#(<= ~counter~0 2)} is VALID [2022-04-08 06:18:03,778 INFO L290 TraceCheckUtils]: 39: Hoare triple {6406#(<= ~counter~0 2)} assume !(0 == ~cond); {6406#(<= ~counter~0 2)} is VALID [2022-04-08 06:18:03,779 INFO L290 TraceCheckUtils]: 40: Hoare triple {6406#(<= ~counter~0 2)} assume true; {6406#(<= ~counter~0 2)} is VALID [2022-04-08 06:18:03,779 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {6406#(<= ~counter~0 2)} {6406#(<= ~counter~0 2)} #84#return; {6406#(<= ~counter~0 2)} is VALID [2022-04-08 06:18:03,780 INFO L272 TraceCheckUtils]: 42: Hoare triple {6406#(<= ~counter~0 2)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {6406#(<= ~counter~0 2)} is VALID [2022-04-08 06:18:03,780 INFO L290 TraceCheckUtils]: 43: Hoare triple {6406#(<= ~counter~0 2)} ~cond := #in~cond; {6406#(<= ~counter~0 2)} is VALID [2022-04-08 06:18:03,780 INFO L290 TraceCheckUtils]: 44: Hoare triple {6406#(<= ~counter~0 2)} assume !(0 == ~cond); {6406#(<= ~counter~0 2)} is VALID [2022-04-08 06:18:03,781 INFO L290 TraceCheckUtils]: 45: Hoare triple {6406#(<= ~counter~0 2)} assume true; {6406#(<= ~counter~0 2)} is VALID [2022-04-08 06:18:03,781 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {6406#(<= ~counter~0 2)} {6406#(<= ~counter~0 2)} #86#return; {6406#(<= ~counter~0 2)} is VALID [2022-04-08 06:18:03,781 INFO L290 TraceCheckUtils]: 47: Hoare triple {6406#(<= ~counter~0 2)} assume !(~r~0 >= ~d~0); {6406#(<= ~counter~0 2)} is VALID [2022-04-08 06:18:03,782 INFO L290 TraceCheckUtils]: 48: Hoare triple {6406#(<= ~counter~0 2)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6461#(<= ~counter~0 3)} is VALID [2022-04-08 06:18:03,800 INFO L290 TraceCheckUtils]: 49: Hoare triple {6461#(<= ~counter~0 3)} assume !!(#t~post7 < 10);havoc #t~post7; {6461#(<= ~counter~0 3)} is VALID [2022-04-08 06:18:03,803 INFO L272 TraceCheckUtils]: 50: Hoare triple {6461#(<= ~counter~0 3)} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {6461#(<= ~counter~0 3)} is VALID [2022-04-08 06:18:03,803 INFO L290 TraceCheckUtils]: 51: Hoare triple {6461#(<= ~counter~0 3)} ~cond := #in~cond; {6461#(<= ~counter~0 3)} is VALID [2022-04-08 06:18:03,803 INFO L290 TraceCheckUtils]: 52: Hoare triple {6461#(<= ~counter~0 3)} assume !(0 == ~cond); {6461#(<= ~counter~0 3)} is VALID [2022-04-08 06:18:03,804 INFO L290 TraceCheckUtils]: 53: Hoare triple {6461#(<= ~counter~0 3)} assume true; {6461#(<= ~counter~0 3)} is VALID [2022-04-08 06:18:03,804 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {6461#(<= ~counter~0 3)} {6461#(<= ~counter~0 3)} #88#return; {6461#(<= ~counter~0 3)} is VALID [2022-04-08 06:18:03,805 INFO L272 TraceCheckUtils]: 55: Hoare triple {6461#(<= ~counter~0 3)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {6461#(<= ~counter~0 3)} is VALID [2022-04-08 06:18:03,805 INFO L290 TraceCheckUtils]: 56: Hoare triple {6461#(<= ~counter~0 3)} ~cond := #in~cond; {6461#(<= ~counter~0 3)} is VALID [2022-04-08 06:18:03,805 INFO L290 TraceCheckUtils]: 57: Hoare triple {6461#(<= ~counter~0 3)} assume !(0 == ~cond); {6461#(<= ~counter~0 3)} is VALID [2022-04-08 06:18:03,805 INFO L290 TraceCheckUtils]: 58: Hoare triple {6461#(<= ~counter~0 3)} assume true; {6461#(<= ~counter~0 3)} is VALID [2022-04-08 06:18:03,806 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {6461#(<= ~counter~0 3)} {6461#(<= ~counter~0 3)} #90#return; {6461#(<= ~counter~0 3)} is VALID [2022-04-08 06:18:03,806 INFO L290 TraceCheckUtils]: 60: Hoare triple {6461#(<= ~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); {6461#(<= ~counter~0 3)} is VALID [2022-04-08 06:18:03,807 INFO L290 TraceCheckUtils]: 61: Hoare triple {6461#(<= ~counter~0 3)} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {6461#(<= ~counter~0 3)} is VALID [2022-04-08 06:18:03,807 INFO L290 TraceCheckUtils]: 62: Hoare triple {6461#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6504#(<= |main_#t~post7| 3)} is VALID [2022-04-08 06:18:03,807 INFO L290 TraceCheckUtils]: 63: Hoare triple {6504#(<= |main_#t~post7| 3)} assume !(#t~post7 < 10);havoc #t~post7; {6310#false} is VALID [2022-04-08 06:18:03,807 INFO L272 TraceCheckUtils]: 64: Hoare triple {6310#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {6310#false} is VALID [2022-04-08 06:18:03,807 INFO L290 TraceCheckUtils]: 65: Hoare triple {6310#false} ~cond := #in~cond; {6310#false} is VALID [2022-04-08 06:18:03,807 INFO L290 TraceCheckUtils]: 66: Hoare triple {6310#false} assume 0 == ~cond; {6310#false} is VALID [2022-04-08 06:18:03,808 INFO L290 TraceCheckUtils]: 67: Hoare triple {6310#false} assume !false; {6310#false} is VALID [2022-04-08 06:18:03,808 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-08 06:18:03,808 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:18:04,121 INFO L290 TraceCheckUtils]: 67: Hoare triple {6310#false} assume !false; {6310#false} is VALID [2022-04-08 06:18:04,121 INFO L290 TraceCheckUtils]: 66: Hoare triple {6310#false} assume 0 == ~cond; {6310#false} is VALID [2022-04-08 06:18:04,121 INFO L290 TraceCheckUtils]: 65: Hoare triple {6310#false} ~cond := #in~cond; {6310#false} is VALID [2022-04-08 06:18:04,121 INFO L272 TraceCheckUtils]: 64: Hoare triple {6310#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {6310#false} is VALID [2022-04-08 06:18:04,121 INFO L290 TraceCheckUtils]: 63: Hoare triple {6532#(< |main_#t~post7| 10)} assume !(#t~post7 < 10);havoc #t~post7; {6310#false} is VALID [2022-04-08 06:18:04,122 INFO L290 TraceCheckUtils]: 62: Hoare triple {6536#(< ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6532#(< |main_#t~post7| 10)} is VALID [2022-04-08 06:18:04,122 INFO L290 TraceCheckUtils]: 61: Hoare triple {6536#(< ~counter~0 10)} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {6536#(< ~counter~0 10)} is VALID [2022-04-08 06:18:04,123 INFO L290 TraceCheckUtils]: 60: Hoare triple {6536#(< ~counter~0 10)} 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); {6536#(< ~counter~0 10)} is VALID [2022-04-08 06:18:04,123 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {6309#true} {6536#(< ~counter~0 10)} #90#return; {6536#(< ~counter~0 10)} is VALID [2022-04-08 06:18:04,123 INFO L290 TraceCheckUtils]: 58: Hoare triple {6309#true} assume true; {6309#true} is VALID [2022-04-08 06:18:04,123 INFO L290 TraceCheckUtils]: 57: Hoare triple {6309#true} assume !(0 == ~cond); {6309#true} is VALID [2022-04-08 06:18:04,123 INFO L290 TraceCheckUtils]: 56: Hoare triple {6309#true} ~cond := #in~cond; {6309#true} is VALID [2022-04-08 06:18:04,123 INFO L272 TraceCheckUtils]: 55: Hoare triple {6536#(< ~counter~0 10)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {6309#true} is VALID [2022-04-08 06:18:04,124 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {6309#true} {6536#(< ~counter~0 10)} #88#return; {6536#(< ~counter~0 10)} is VALID [2022-04-08 06:18:04,124 INFO L290 TraceCheckUtils]: 53: Hoare triple {6309#true} assume true; {6309#true} is VALID [2022-04-08 06:18:04,124 INFO L290 TraceCheckUtils]: 52: Hoare triple {6309#true} assume !(0 == ~cond); {6309#true} is VALID [2022-04-08 06:18:04,124 INFO L290 TraceCheckUtils]: 51: Hoare triple {6309#true} ~cond := #in~cond; {6309#true} is VALID [2022-04-08 06:18:04,124 INFO L272 TraceCheckUtils]: 50: Hoare triple {6536#(< ~counter~0 10)} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {6309#true} is VALID [2022-04-08 06:18:04,125 INFO L290 TraceCheckUtils]: 49: Hoare triple {6536#(< ~counter~0 10)} assume !!(#t~post7 < 10);havoc #t~post7; {6536#(< ~counter~0 10)} is VALID [2022-04-08 06:18:04,125 INFO L290 TraceCheckUtils]: 48: Hoare triple {6579#(< ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {6536#(< ~counter~0 10)} is VALID [2022-04-08 06:18:04,126 INFO L290 TraceCheckUtils]: 47: Hoare triple {6579#(< ~counter~0 9)} assume !(~r~0 >= ~d~0); {6579#(< ~counter~0 9)} is VALID [2022-04-08 06:18:04,126 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {6309#true} {6579#(< ~counter~0 9)} #86#return; {6579#(< ~counter~0 9)} is VALID [2022-04-08 06:18:04,126 INFO L290 TraceCheckUtils]: 45: Hoare triple {6309#true} assume true; {6309#true} is VALID [2022-04-08 06:18:04,126 INFO L290 TraceCheckUtils]: 44: Hoare triple {6309#true} assume !(0 == ~cond); {6309#true} is VALID [2022-04-08 06:18:04,126 INFO L290 TraceCheckUtils]: 43: Hoare triple {6309#true} ~cond := #in~cond; {6309#true} is VALID [2022-04-08 06:18:04,126 INFO L272 TraceCheckUtils]: 42: Hoare triple {6579#(< ~counter~0 9)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {6309#true} is VALID [2022-04-08 06:18:04,127 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {6309#true} {6579#(< ~counter~0 9)} #84#return; {6579#(< ~counter~0 9)} is VALID [2022-04-08 06:18:04,127 INFO L290 TraceCheckUtils]: 40: Hoare triple {6309#true} assume true; {6309#true} is VALID [2022-04-08 06:18:04,127 INFO L290 TraceCheckUtils]: 39: Hoare triple {6309#true} assume !(0 == ~cond); {6309#true} is VALID [2022-04-08 06:18:04,127 INFO L290 TraceCheckUtils]: 38: Hoare triple {6309#true} ~cond := #in~cond; {6309#true} is VALID [2022-04-08 06:18:04,127 INFO L272 TraceCheckUtils]: 37: Hoare triple {6579#(< ~counter~0 9)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {6309#true} is VALID [2022-04-08 06:18:04,128 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {6309#true} {6579#(< ~counter~0 9)} #82#return; {6579#(< ~counter~0 9)} is VALID [2022-04-08 06:18:04,128 INFO L290 TraceCheckUtils]: 35: Hoare triple {6309#true} assume true; {6309#true} is VALID [2022-04-08 06:18:04,128 INFO L290 TraceCheckUtils]: 34: Hoare triple {6309#true} assume !(0 == ~cond); {6309#true} is VALID [2022-04-08 06:18:04,128 INFO L290 TraceCheckUtils]: 33: Hoare triple {6309#true} ~cond := #in~cond; {6309#true} is VALID [2022-04-08 06:18:04,128 INFO L272 TraceCheckUtils]: 32: Hoare triple {6579#(< ~counter~0 9)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {6309#true} is VALID [2022-04-08 06:18:04,128 INFO L290 TraceCheckUtils]: 31: Hoare triple {6579#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {6579#(< ~counter~0 9)} is VALID [2022-04-08 06:18:04,129 INFO L290 TraceCheckUtils]: 30: Hoare triple {6634#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6579#(< ~counter~0 9)} is VALID [2022-04-08 06:18:04,129 INFO L290 TraceCheckUtils]: 29: Hoare triple {6634#(< ~counter~0 8)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {6634#(< ~counter~0 8)} is VALID [2022-04-08 06:18:04,130 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {6309#true} {6634#(< ~counter~0 8)} #86#return; {6634#(< ~counter~0 8)} is VALID [2022-04-08 06:18:04,130 INFO L290 TraceCheckUtils]: 27: Hoare triple {6309#true} assume true; {6309#true} is VALID [2022-04-08 06:18:04,130 INFO L290 TraceCheckUtils]: 26: Hoare triple {6309#true} assume !(0 == ~cond); {6309#true} is VALID [2022-04-08 06:18:04,130 INFO L290 TraceCheckUtils]: 25: Hoare triple {6309#true} ~cond := #in~cond; {6309#true} is VALID [2022-04-08 06:18:04,130 INFO L272 TraceCheckUtils]: 24: Hoare triple {6634#(< ~counter~0 8)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {6309#true} is VALID [2022-04-08 06:18:04,130 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {6309#true} {6634#(< ~counter~0 8)} #84#return; {6634#(< ~counter~0 8)} is VALID [2022-04-08 06:18:04,130 INFO L290 TraceCheckUtils]: 22: Hoare triple {6309#true} assume true; {6309#true} is VALID [2022-04-08 06:18:04,131 INFO L290 TraceCheckUtils]: 21: Hoare triple {6309#true} assume !(0 == ~cond); {6309#true} is VALID [2022-04-08 06:18:04,131 INFO L290 TraceCheckUtils]: 20: Hoare triple {6309#true} ~cond := #in~cond; {6309#true} is VALID [2022-04-08 06:18:04,131 INFO L272 TraceCheckUtils]: 19: Hoare triple {6634#(< ~counter~0 8)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {6309#true} is VALID [2022-04-08 06:18:04,131 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {6309#true} {6634#(< ~counter~0 8)} #82#return; {6634#(< ~counter~0 8)} is VALID [2022-04-08 06:18:04,131 INFO L290 TraceCheckUtils]: 17: Hoare triple {6309#true} assume true; {6309#true} is VALID [2022-04-08 06:18:04,131 INFO L290 TraceCheckUtils]: 16: Hoare triple {6309#true} assume !(0 == ~cond); {6309#true} is VALID [2022-04-08 06:18:04,131 INFO L290 TraceCheckUtils]: 15: Hoare triple {6309#true} ~cond := #in~cond; {6309#true} is VALID [2022-04-08 06:18:04,131 INFO L272 TraceCheckUtils]: 14: Hoare triple {6634#(< ~counter~0 8)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {6309#true} is VALID [2022-04-08 06:18:04,132 INFO L290 TraceCheckUtils]: 13: Hoare triple {6634#(< ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {6634#(< ~counter~0 8)} is VALID [2022-04-08 06:18:04,132 INFO L290 TraceCheckUtils]: 12: Hoare triple {6689#(< ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {6634#(< ~counter~0 8)} is VALID [2022-04-08 06:18:04,140 INFO L290 TraceCheckUtils]: 11: Hoare triple {6689#(< ~counter~0 7)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {6689#(< ~counter~0 7)} is VALID [2022-04-08 06:18:04,140 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {6309#true} {6689#(< ~counter~0 7)} #80#return; {6689#(< ~counter~0 7)} is VALID [2022-04-08 06:18:04,140 INFO L290 TraceCheckUtils]: 9: Hoare triple {6309#true} assume true; {6309#true} is VALID [2022-04-08 06:18:04,140 INFO L290 TraceCheckUtils]: 8: Hoare triple {6309#true} assume !(0 == ~cond); {6309#true} is VALID [2022-04-08 06:18:04,140 INFO L290 TraceCheckUtils]: 7: Hoare triple {6309#true} ~cond := #in~cond; {6309#true} is VALID [2022-04-08 06:18:04,140 INFO L272 TraceCheckUtils]: 6: Hoare triple {6689#(< ~counter~0 7)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {6309#true} is VALID [2022-04-08 06:18:04,141 INFO L290 TraceCheckUtils]: 5: Hoare triple {6689#(< ~counter~0 7)} 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; {6689#(< ~counter~0 7)} is VALID [2022-04-08 06:18:04,141 INFO L272 TraceCheckUtils]: 4: Hoare triple {6689#(< ~counter~0 7)} call #t~ret8 := main(); {6689#(< ~counter~0 7)} is VALID [2022-04-08 06:18:04,141 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {6689#(< ~counter~0 7)} {6309#true} #96#return; {6689#(< ~counter~0 7)} is VALID [2022-04-08 06:18:04,142 INFO L290 TraceCheckUtils]: 2: Hoare triple {6689#(< ~counter~0 7)} assume true; {6689#(< ~counter~0 7)} is VALID [2022-04-08 06:18:04,142 INFO L290 TraceCheckUtils]: 1: Hoare triple {6309#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; {6689#(< ~counter~0 7)} is VALID [2022-04-08 06:18:04,142 INFO L272 TraceCheckUtils]: 0: Hoare triple {6309#true} call ULTIMATE.init(); {6309#true} is VALID [2022-04-08 06:18:04,143 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-08 06:18:04,143 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:18:04,143 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [860042804] [2022-04-08 06:18:04,143 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:18:04,143 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1358738966] [2022-04-08 06:18:04,143 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1358738966] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:18:04,143 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:18:04,143 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-08 06:18:04,143 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:18:04,143 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [801908447] [2022-04-08 06:18:04,143 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [801908447] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:18:04,143 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:18:04,143 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-08 06:18:04,144 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1870818881] [2022-04-08 06:18:04,144 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:18:04,144 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-08 06:18:04,144 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:18:04,144 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-08 06:18:04,187 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-08 06:18:04,187 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-08 06:18:04,187 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:18:04,188 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-08 06:18:04,188 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=82, Unknown=0, NotChecked=0, Total=132 [2022-04-08 06:18:04,188 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-08 06:18:04,503 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:18:04,503 INFO L93 Difference]: Finished difference Result 151 states and 174 transitions. [2022-04-08 06:18:04,503 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 06:18:04,503 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-08 06:18:04,504 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:18:04,504 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-08 06:18:04,506 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 107 transitions. [2022-04-08 06:18:04,506 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-08 06:18:04,507 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 107 transitions. [2022-04-08 06:18:04,507 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 107 transitions. [2022-04-08 06:18:04,579 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-08 06:18:04,581 INFO L225 Difference]: With dead ends: 151 [2022-04-08 06:18:04,581 INFO L226 Difference]: Without dead ends: 136 [2022-04-08 06:18:04,582 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 136 GetRequests, 125 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=59, Invalid=97, Unknown=0, NotChecked=0, Total=156 [2022-04-08 06:18:04,582 INFO L913 BasicCegarLoop]: 53 mSDtfsCounter, 41 mSDsluCounter, 121 mSDsCounter, 0 mSdLazyCounter, 55 mSolverCounterSat, 30 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 41 SdHoareTripleChecker+Valid, 174 SdHoareTripleChecker+Invalid, 85 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 30 IncrementalHoareTripleChecker+Valid, 55 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 06:18:04,582 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [41 Valid, 174 Invalid, 85 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [30 Valid, 55 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 06:18:04,582 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 136 states. [2022-04-08 06:18:04,685 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 136 to 133. [2022-04-08 06:18:04,685 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:18:04,689 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-08 06:18:04,689 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-08 06:18:04,689 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-08 06:18:04,699 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:18:04,700 INFO L93 Difference]: Finished difference Result 136 states and 156 transitions. [2022-04-08 06:18:04,700 INFO L276 IsEmpty]: Start isEmpty. Operand 136 states and 156 transitions. [2022-04-08 06:18:04,700 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:18:04,700 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:18:04,700 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-08 06:18:04,701 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-08 06:18:04,706 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:18:04,706 INFO L93 Difference]: Finished difference Result 136 states and 156 transitions. [2022-04-08 06:18:04,706 INFO L276 IsEmpty]: Start isEmpty. Operand 136 states and 156 transitions. [2022-04-08 06:18:04,706 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:18:04,706 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:18:04,706 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:18:04,706 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:18:04,706 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-08 06:18:04,717 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 133 states to 133 states and 154 transitions. [2022-04-08 06:18:04,717 INFO L78 Accepts]: Start accepts. Automaton has 133 states and 154 transitions. Word has length 68 [2022-04-08 06:18:04,717 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:18:04,717 INFO L478 AbstractCegarLoop]: Abstraction has 133 states and 154 transitions. [2022-04-08 06:18:04,717 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-08 06:18:04,717 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 133 states and 154 transitions. [2022-04-08 06:18:04,878 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-08 06:18:04,879 INFO L276 IsEmpty]: Start isEmpty. Operand 133 states and 154 transitions. [2022-04-08 06:18:04,879 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 69 [2022-04-08 06:18:04,879 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:18:04,879 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-08 06:18:04,897 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-04-08 06:18:05,079 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-08 06:18:05,080 INFO L403 AbstractCegarLoop]: === Iteration 13 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:18:05,080 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:18:05,080 INFO L85 PathProgramCache]: Analyzing trace with hash 1142595933, now seen corresponding path program 1 times [2022-04-08 06:18:05,080 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:18:05,080 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [566035750] [2022-04-08 06:18:10,770 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-08 06:18:10,770 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-08 06:18:10,770 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 06:18:10,770 INFO L85 PathProgramCache]: Analyzing trace with hash 1142595933, now seen corresponding path program 2 times [2022-04-08 06:18:10,771 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:18:10,771 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1603820754] [2022-04-08 06:18:10,771 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:18:10,771 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:18:10,790 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:18:10,790 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1116502831] [2022-04-08 06:18:10,790 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:18:10,790 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:18:10,791 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:18:10,802 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-08 06:18:10,821 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-08 06:18:10,848 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:18:10,849 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:18:10,849 INFO L263 TraceCheckSpWp]: Trace formula consists of 185 conjuncts, 25 conjunts are in the unsatisfiable core [2022-04-08 06:18:10,859 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:18:10,863 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:18:14,651 INFO L272 TraceCheckUtils]: 0: Hoare triple {7570#true} call ULTIMATE.init(); {7570#true} is VALID [2022-04-08 06:18:14,651 INFO L290 TraceCheckUtils]: 1: Hoare triple {7570#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; {7570#true} is VALID [2022-04-08 06:18:14,651 INFO L290 TraceCheckUtils]: 2: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-08 06:18:14,651 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7570#true} {7570#true} #96#return; {7570#true} is VALID [2022-04-08 06:18:14,651 INFO L272 TraceCheckUtils]: 4: Hoare triple {7570#true} call #t~ret8 := main(); {7570#true} is VALID [2022-04-08 06:18:14,651 INFO L290 TraceCheckUtils]: 5: Hoare triple {7570#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; {7570#true} is VALID [2022-04-08 06:18:14,651 INFO L272 TraceCheckUtils]: 6: Hoare triple {7570#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {7570#true} is VALID [2022-04-08 06:18:14,651 INFO L290 TraceCheckUtils]: 7: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-08 06:18:14,651 INFO L290 TraceCheckUtils]: 8: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-08 06:18:14,651 INFO L290 TraceCheckUtils]: 9: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-08 06:18:14,652 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7570#true} {7570#true} #80#return; {7570#true} is VALID [2022-04-08 06:18:14,652 INFO L290 TraceCheckUtils]: 11: Hoare triple {7570#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {7608#(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-08 06:18:14,652 INFO L290 TraceCheckUtils]: 12: Hoare triple {7608#(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; {7608#(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-08 06:18:14,652 INFO L290 TraceCheckUtils]: 13: Hoare triple {7608#(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 < 10);havoc #t~post6; {7608#(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-08 06:18:14,653 INFO L272 TraceCheckUtils]: 14: Hoare triple {7608#(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)); {7570#true} is VALID [2022-04-08 06:18:14,653 INFO L290 TraceCheckUtils]: 15: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-08 06:18:14,653 INFO L290 TraceCheckUtils]: 16: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-08 06:18:14,653 INFO L290 TraceCheckUtils]: 17: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-08 06:18:14,654 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {7570#true} {7608#(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; {7608#(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-08 06:18:14,654 INFO L272 TraceCheckUtils]: 19: Hoare triple {7608#(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)); {7570#true} is VALID [2022-04-08 06:18:14,654 INFO L290 TraceCheckUtils]: 20: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-08 06:18:14,654 INFO L290 TraceCheckUtils]: 21: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-08 06:18:14,654 INFO L290 TraceCheckUtils]: 22: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-08 06:18:14,654 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {7570#true} {7608#(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; {7608#(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-08 06:18:14,654 INFO L272 TraceCheckUtils]: 24: Hoare triple {7608#(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)); {7570#true} is VALID [2022-04-08 06:18:14,654 INFO L290 TraceCheckUtils]: 25: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-08 06:18:14,655 INFO L290 TraceCheckUtils]: 26: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-08 06:18:14,655 INFO L290 TraceCheckUtils]: 27: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-08 06:18:14,655 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {7570#true} {7608#(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; {7608#(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-08 06:18:14,656 INFO L290 TraceCheckUtils]: 29: Hoare triple {7608#(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; {7663#(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-08 06:18:14,656 INFO L290 TraceCheckUtils]: 30: Hoare triple {7663#(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; {7663#(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-08 06:18:14,656 INFO L290 TraceCheckUtils]: 31: Hoare triple {7663#(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 < 10);havoc #t~post6; {7663#(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-08 06:18:14,656 INFO L272 TraceCheckUtils]: 32: Hoare triple {7663#(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)); {7570#true} is VALID [2022-04-08 06:18:14,657 INFO L290 TraceCheckUtils]: 33: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-08 06:18:14,657 INFO L290 TraceCheckUtils]: 34: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-08 06:18:14,657 INFO L290 TraceCheckUtils]: 35: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-08 06:18:14,657 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {7570#true} {7663#(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; {7663#(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-08 06:18:14,657 INFO L272 TraceCheckUtils]: 37: Hoare triple {7663#(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)); {7570#true} is VALID [2022-04-08 06:18:14,657 INFO L290 TraceCheckUtils]: 38: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-08 06:18:14,657 INFO L290 TraceCheckUtils]: 39: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-08 06:18:14,657 INFO L290 TraceCheckUtils]: 40: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-08 06:18:14,658 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {7570#true} {7663#(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; {7663#(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-08 06:18:14,658 INFO L272 TraceCheckUtils]: 42: Hoare triple {7663#(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)); {7570#true} is VALID [2022-04-08 06:18:14,658 INFO L290 TraceCheckUtils]: 43: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-08 06:18:14,658 INFO L290 TraceCheckUtils]: 44: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-08 06:18:14,658 INFO L290 TraceCheckUtils]: 45: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-08 06:18:14,659 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {7570#true} {7663#(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; {7663#(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-08 06:18:14,659 INFO L290 TraceCheckUtils]: 47: Hoare triple {7663#(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); {7718#(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-08 06:18:14,659 INFO L290 TraceCheckUtils]: 48: Hoare triple {7718#(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; {7718#(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-08 06:18:14,660 INFO L290 TraceCheckUtils]: 49: Hoare triple {7718#(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 < 10);havoc #t~post7; {7718#(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-08 06:18:14,660 INFO L272 TraceCheckUtils]: 50: Hoare triple {7718#(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)); {7570#true} is VALID [2022-04-08 06:18:14,660 INFO L290 TraceCheckUtils]: 51: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-08 06:18:14,660 INFO L290 TraceCheckUtils]: 52: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-08 06:18:14,660 INFO L290 TraceCheckUtils]: 53: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-08 06:18:14,660 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {7570#true} {7718#(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; {7718#(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-08 06:18:14,660 INFO L272 TraceCheckUtils]: 55: Hoare triple {7718#(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)); {7570#true} is VALID [2022-04-08 06:18:14,660 INFO L290 TraceCheckUtils]: 56: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-08 06:18:14,661 INFO L290 TraceCheckUtils]: 57: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-08 06:18:14,661 INFO L290 TraceCheckUtils]: 58: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-08 06:18:14,661 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {7570#true} {7718#(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; {7718#(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-08 06:18:14,662 INFO L290 TraceCheckUtils]: 60: Hoare triple {7718#(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); {7758#(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-08 06:18:14,663 INFO L290 TraceCheckUtils]: 61: Hoare triple {7758#(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; {7762#(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-08 06:18:14,663 INFO L290 TraceCheckUtils]: 62: Hoare triple {7762#(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; {7762#(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-08 06:18:14,664 INFO L290 TraceCheckUtils]: 63: Hoare triple {7762#(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 < 10);havoc #t~post7; {7762#(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-08 06:18:14,664 INFO L272 TraceCheckUtils]: 64: Hoare triple {7762#(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)); {7772#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:18:14,664 INFO L290 TraceCheckUtils]: 65: Hoare triple {7772#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7776#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:18:14,664 INFO L290 TraceCheckUtils]: 66: Hoare triple {7776#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7571#false} is VALID [2022-04-08 06:18:14,665 INFO L290 TraceCheckUtils]: 67: Hoare triple {7571#false} assume !false; {7571#false} is VALID [2022-04-08 06:18:14,665 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-08 06:18:14,665 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:18:21,673 INFO L290 TraceCheckUtils]: 67: Hoare triple {7571#false} assume !false; {7571#false} is VALID [2022-04-08 06:18:21,674 INFO L290 TraceCheckUtils]: 66: Hoare triple {7776#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {7571#false} is VALID [2022-04-08 06:18:21,674 INFO L290 TraceCheckUtils]: 65: Hoare triple {7772#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {7776#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:18:21,675 INFO L272 TraceCheckUtils]: 64: Hoare triple {7792#(= (+ 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)); {7772#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:18:21,675 INFO L290 TraceCheckUtils]: 63: Hoare triple {7792#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} assume !!(#t~post7 < 10);havoc #t~post7; {7792#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} is VALID [2022-04-08 06:18:21,676 INFO L290 TraceCheckUtils]: 62: Hoare triple {7792#(= (+ 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; {7792#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} is VALID [2022-04-08 06:18:21,677 INFO L290 TraceCheckUtils]: 61: Hoare triple {7802#(= (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; {7792#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} is VALID [2022-04-08 06:18:21,688 INFO L290 TraceCheckUtils]: 60: Hoare triple {7806#(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); {7802#(= (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-08 06:18:21,689 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {7570#true} {7806#(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; {7806#(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-08 06:18:21,689 INFO L290 TraceCheckUtils]: 58: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-08 06:18:21,689 INFO L290 TraceCheckUtils]: 57: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-08 06:18:21,689 INFO L290 TraceCheckUtils]: 56: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-08 06:18:21,689 INFO L272 TraceCheckUtils]: 55: Hoare triple {7806#(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)); {7570#true} is VALID [2022-04-08 06:18:21,690 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {7570#true} {7806#(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; {7806#(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-08 06:18:21,690 INFO L290 TraceCheckUtils]: 53: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-08 06:18:21,690 INFO L290 TraceCheckUtils]: 52: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-08 06:18:21,690 INFO L290 TraceCheckUtils]: 51: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-08 06:18:21,690 INFO L272 TraceCheckUtils]: 50: Hoare triple {7806#(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)); {7570#true} is VALID [2022-04-08 06:18:21,691 INFO L290 TraceCheckUtils]: 49: Hoare triple {7806#(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 < 10);havoc #t~post7; {7806#(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-08 06:18:21,692 INFO L290 TraceCheckUtils]: 48: Hoare triple {7806#(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; {7806#(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-08 06:18:21,693 INFO L290 TraceCheckUtils]: 47: Hoare triple {7846#(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); {7806#(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-08 06:18:21,693 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {7570#true} {7846#(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; {7846#(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-08 06:18:21,694 INFO L290 TraceCheckUtils]: 45: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-08 06:18:21,694 INFO L290 TraceCheckUtils]: 44: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-08 06:18:21,694 INFO L290 TraceCheckUtils]: 43: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-08 06:18:21,694 INFO L272 TraceCheckUtils]: 42: Hoare triple {7846#(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)); {7570#true} is VALID [2022-04-08 06:18:21,694 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {7570#true} {7846#(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; {7846#(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-08 06:18:21,694 INFO L290 TraceCheckUtils]: 40: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-08 06:18:21,694 INFO L290 TraceCheckUtils]: 39: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-08 06:18:21,695 INFO L290 TraceCheckUtils]: 38: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-08 06:18:21,695 INFO L272 TraceCheckUtils]: 37: Hoare triple {7846#(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)); {7570#true} is VALID [2022-04-08 06:18:21,695 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {7570#true} {7846#(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; {7846#(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-08 06:18:21,695 INFO L290 TraceCheckUtils]: 35: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-08 06:18:21,695 INFO L290 TraceCheckUtils]: 34: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-08 06:18:21,695 INFO L290 TraceCheckUtils]: 33: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-08 06:18:21,696 INFO L272 TraceCheckUtils]: 32: Hoare triple {7846#(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)); {7570#true} is VALID [2022-04-08 06:18:21,697 INFO L290 TraceCheckUtils]: 31: Hoare triple {7846#(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 < 10);havoc #t~post6; {7846#(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-08 06:18:21,698 INFO L290 TraceCheckUtils]: 30: Hoare triple {7846#(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; {7846#(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-08 06:18:21,701 INFO L290 TraceCheckUtils]: 29: Hoare triple {7901#(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; {7846#(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-08 06:18:21,701 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {7570#true} {7901#(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; {7901#(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-08 06:18:21,702 INFO L290 TraceCheckUtils]: 27: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-08 06:18:21,702 INFO L290 TraceCheckUtils]: 26: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-08 06:18:21,702 INFO L290 TraceCheckUtils]: 25: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-08 06:18:21,702 INFO L272 TraceCheckUtils]: 24: Hoare triple {7901#(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)); {7570#true} is VALID [2022-04-08 06:18:21,702 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {7570#true} {7901#(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; {7901#(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-08 06:18:21,702 INFO L290 TraceCheckUtils]: 22: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-08 06:18:21,703 INFO L290 TraceCheckUtils]: 21: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-08 06:18:21,703 INFO L290 TraceCheckUtils]: 20: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-08 06:18:21,703 INFO L272 TraceCheckUtils]: 19: Hoare triple {7901#(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)); {7570#true} is VALID [2022-04-08 06:18:21,703 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {7570#true} {7901#(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; {7901#(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-08 06:18:21,703 INFO L290 TraceCheckUtils]: 17: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-08 06:18:21,703 INFO L290 TraceCheckUtils]: 16: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-08 06:18:21,703 INFO L290 TraceCheckUtils]: 15: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-08 06:18:21,704 INFO L272 TraceCheckUtils]: 14: Hoare triple {7901#(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)); {7570#true} is VALID [2022-04-08 06:18:21,704 INFO L290 TraceCheckUtils]: 13: Hoare triple {7901#(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 < 10);havoc #t~post6; {7901#(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-08 06:18:21,704 INFO L290 TraceCheckUtils]: 12: Hoare triple {7901#(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; {7901#(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-08 06:18:21,706 INFO L290 TraceCheckUtils]: 11: Hoare triple {7570#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {7901#(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-08 06:18:21,706 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {7570#true} {7570#true} #80#return; {7570#true} is VALID [2022-04-08 06:18:21,706 INFO L290 TraceCheckUtils]: 9: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-08 06:18:21,706 INFO L290 TraceCheckUtils]: 8: Hoare triple {7570#true} assume !(0 == ~cond); {7570#true} is VALID [2022-04-08 06:18:21,706 INFO L290 TraceCheckUtils]: 7: Hoare triple {7570#true} ~cond := #in~cond; {7570#true} is VALID [2022-04-08 06:18:21,706 INFO L272 TraceCheckUtils]: 6: Hoare triple {7570#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {7570#true} is VALID [2022-04-08 06:18:21,706 INFO L290 TraceCheckUtils]: 5: Hoare triple {7570#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; {7570#true} is VALID [2022-04-08 06:18:21,706 INFO L272 TraceCheckUtils]: 4: Hoare triple {7570#true} call #t~ret8 := main(); {7570#true} is VALID [2022-04-08 06:18:21,706 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {7570#true} {7570#true} #96#return; {7570#true} is VALID [2022-04-08 06:18:21,706 INFO L290 TraceCheckUtils]: 2: Hoare triple {7570#true} assume true; {7570#true} is VALID [2022-04-08 06:18:21,706 INFO L290 TraceCheckUtils]: 1: Hoare triple {7570#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; {7570#true} is VALID [2022-04-08 06:18:21,706 INFO L272 TraceCheckUtils]: 0: Hoare triple {7570#true} call ULTIMATE.init(); {7570#true} is VALID [2022-04-08 06:18:21,707 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-08 06:18:21,707 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:18:21,707 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1603820754] [2022-04-08 06:18:21,707 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:18:21,707 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1116502831] [2022-04-08 06:18:21,707 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1116502831] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:18:21,707 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:18:21,707 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 14 [2022-04-08 06:18:21,708 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:18:21,708 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [566035750] [2022-04-08 06:18:21,708 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [566035750] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:18:21,708 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:18:21,708 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 06:18:21,708 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1652847770] [2022-04-08 06:18:21,708 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:18:21,708 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-08 06:18:21,708 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:18:21,709 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-08 06:18:21,742 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-08 06:18:21,742 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-08 06:18:21,742 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:18:21,742 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-08 06:18:21,742 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=47, Invalid=135, Unknown=0, NotChecked=0, Total=182 [2022-04-08 06:18:21,742 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-08 06:18:22,503 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:18:22,504 INFO L93 Difference]: Finished difference Result 178 states and 213 transitions. [2022-04-08 06:18:22,504 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 06:18:22,504 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-08 06:18:22,504 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:18:22,504 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-08 06:18:22,505 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 108 transitions. [2022-04-08 06:18:22,505 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-08 06:18:22,506 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 108 transitions. [2022-04-08 06:18:22,506 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 108 transitions. [2022-04-08 06:18:22,599 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-08 06:18:22,601 INFO L225 Difference]: With dead ends: 178 [2022-04-08 06:18:22,601 INFO L226 Difference]: Without dead ends: 143 [2022-04-08 06:18:22,602 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 136 GetRequests, 122 SyntacticMatches, 1 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 36 ImplicationChecksByTransitivity, 1.0s TimeCoverageRelationStatistics Valid=51, Invalid=159, Unknown=0, NotChecked=0, Total=210 [2022-04-08 06:18:22,602 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-08 06:18:22,602 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-08 06:18:22,602 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 143 states. [2022-04-08 06:18:22,714 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 143 to 141. [2022-04-08 06:18:22,714 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:18:22,714 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-08 06:18:22,715 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-08 06:18:22,715 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-08 06:18:22,717 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:18:22,717 INFO L93 Difference]: Finished difference Result 143 states and 165 transitions. [2022-04-08 06:18:22,717 INFO L276 IsEmpty]: Start isEmpty. Operand 143 states and 165 transitions. [2022-04-08 06:18:22,718 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:18:22,718 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:18:22,718 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-08 06:18:22,718 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-08 06:18:22,720 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:18:22,720 INFO L93 Difference]: Finished difference Result 143 states and 165 transitions. [2022-04-08 06:18:22,720 INFO L276 IsEmpty]: Start isEmpty. Operand 143 states and 165 transitions. [2022-04-08 06:18:22,721 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:18:22,721 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:18:22,721 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:18:22,721 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:18:22,721 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-08 06:18:22,723 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 141 states to 141 states and 162 transitions. [2022-04-08 06:18:22,723 INFO L78 Accepts]: Start accepts. Automaton has 141 states and 162 transitions. Word has length 68 [2022-04-08 06:18:22,723 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:18:22,723 INFO L478 AbstractCegarLoop]: Abstraction has 141 states and 162 transitions. [2022-04-08 06:18:22,723 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-08 06:18:22,724 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 141 states and 162 transitions. [2022-04-08 06:18:22,911 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-08 06:18:22,911 INFO L276 IsEmpty]: Start isEmpty. Operand 141 states and 162 transitions. [2022-04-08 06:18:22,911 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 74 [2022-04-08 06:18:22,911 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:18:22,912 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-08 06:18:22,931 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-08 06:18:23,115 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-08 06:18:23,115 INFO L403 AbstractCegarLoop]: === Iteration 14 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:18:23,116 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:18:23,116 INFO L85 PathProgramCache]: Analyzing trace with hash -1390565976, now seen corresponding path program 3 times [2022-04-08 06:18:23,116 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:18:23,116 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [870726323] [2022-04-08 06:18:28,464 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-08 06:18:28,464 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-08 06:18:28,464 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 06:18:28,464 INFO L85 PathProgramCache]: Analyzing trace with hash -1390565976, now seen corresponding path program 4 times [2022-04-08 06:18:28,465 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:18:28,465 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [804098101] [2022-04-08 06:18:28,465 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:18:28,465 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:18:28,480 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:18:28,481 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2048015176] [2022-04-08 06:18:28,481 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 06:18:28,481 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:18:28,481 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:18:28,495 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-08 06:18:28,501 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-08 06:18:28,577 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 06:18:28,577 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:18:28,578 INFO L263 TraceCheckSpWp]: Trace formula consists of 194 conjuncts, 17 conjunts are in the unsatisfiable core [2022-04-08 06:18:28,590 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:18:28,592 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:18:29,560 INFO L272 TraceCheckUtils]: 0: Hoare triple {8917#true} call ULTIMATE.init(); {8917#true} is VALID [2022-04-08 06:18:29,561 INFO L290 TraceCheckUtils]: 1: Hoare triple {8917#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; {8917#true} is VALID [2022-04-08 06:18:29,561 INFO L290 TraceCheckUtils]: 2: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-08 06:18:29,561 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8917#true} {8917#true} #96#return; {8917#true} is VALID [2022-04-08 06:18:29,561 INFO L272 TraceCheckUtils]: 4: Hoare triple {8917#true} call #t~ret8 := main(); {8917#true} is VALID [2022-04-08 06:18:29,561 INFO L290 TraceCheckUtils]: 5: Hoare triple {8917#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; {8917#true} is VALID [2022-04-08 06:18:29,561 INFO L272 TraceCheckUtils]: 6: Hoare triple {8917#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {8917#true} is VALID [2022-04-08 06:18:29,561 INFO L290 TraceCheckUtils]: 7: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-08 06:18:29,561 INFO L290 TraceCheckUtils]: 8: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-08 06:18:29,561 INFO L290 TraceCheckUtils]: 9: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-08 06:18:29,561 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8917#true} {8917#true} #80#return; {8917#true} is VALID [2022-04-08 06:18:29,562 INFO L290 TraceCheckUtils]: 11: Hoare triple {8917#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {8955#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-08 06:18:29,562 INFO L290 TraceCheckUtils]: 12: Hoare triple {8955#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {8955#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-08 06:18:29,562 INFO L290 TraceCheckUtils]: 13: Hoare triple {8955#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {8955#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-08 06:18:29,563 INFO L272 TraceCheckUtils]: 14: Hoare triple {8955#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {8917#true} is VALID [2022-04-08 06:18:29,563 INFO L290 TraceCheckUtils]: 15: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-08 06:18:29,563 INFO L290 TraceCheckUtils]: 16: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-08 06:18:29,563 INFO L290 TraceCheckUtils]: 17: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-08 06:18:29,563 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {8917#true} {8955#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #82#return; {8955#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-08 06:18:29,563 INFO L272 TraceCheckUtils]: 19: Hoare triple {8955#(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)); {8917#true} is VALID [2022-04-08 06:18:29,563 INFO L290 TraceCheckUtils]: 20: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-08 06:18:29,564 INFO L290 TraceCheckUtils]: 21: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-08 06:18:29,564 INFO L290 TraceCheckUtils]: 22: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-08 06:18:29,564 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {8917#true} {8955#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #84#return; {8955#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-08 06:18:29,564 INFO L272 TraceCheckUtils]: 24: Hoare triple {8955#(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)); {8917#true} is VALID [2022-04-08 06:18:29,564 INFO L290 TraceCheckUtils]: 25: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-08 06:18:29,564 INFO L290 TraceCheckUtils]: 26: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-08 06:18:29,564 INFO L290 TraceCheckUtils]: 27: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-08 06:18:29,565 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {8917#true} {8955#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #86#return; {8955#(and (= main_~d~0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-08 06:18:29,566 INFO L290 TraceCheckUtils]: 29: Hoare triple {8955#(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; {9010#(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-08 06:18:29,566 INFO L290 TraceCheckUtils]: 30: Hoare triple {9010#(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; {9010#(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-08 06:18:29,566 INFO L290 TraceCheckUtils]: 31: Hoare triple {9010#(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 < 10);havoc #t~post6; {9010#(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-08 06:18:29,566 INFO L272 TraceCheckUtils]: 32: Hoare triple {9010#(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)); {8917#true} is VALID [2022-04-08 06:18:29,567 INFO L290 TraceCheckUtils]: 33: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-08 06:18:29,567 INFO L290 TraceCheckUtils]: 34: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-08 06:18:29,567 INFO L290 TraceCheckUtils]: 35: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-08 06:18:29,567 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8917#true} {9010#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} #82#return; {9010#(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-08 06:18:29,567 INFO L272 TraceCheckUtils]: 37: Hoare triple {9010#(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)); {8917#true} is VALID [2022-04-08 06:18:29,567 INFO L290 TraceCheckUtils]: 38: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-08 06:18:29,567 INFO L290 TraceCheckUtils]: 39: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-08 06:18:29,567 INFO L290 TraceCheckUtils]: 40: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-08 06:18:29,568 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {8917#true} {9010#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} #84#return; {9010#(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-08 06:18:29,568 INFO L272 TraceCheckUtils]: 42: Hoare triple {9010#(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)); {8917#true} is VALID [2022-04-08 06:18:29,568 INFO L290 TraceCheckUtils]: 43: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-08 06:18:29,568 INFO L290 TraceCheckUtils]: 44: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-08 06:18:29,568 INFO L290 TraceCheckUtils]: 45: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-08 06:18:29,569 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {8917#true} {9010#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= (mod main_~B~0 4294967296) main_~r~0))} #86#return; {9010#(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-08 06:18:29,569 INFO L290 TraceCheckUtils]: 47: Hoare triple {9010#(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); {9065#(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-08 06:18:29,570 INFO L290 TraceCheckUtils]: 48: Hoare triple {9065#(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; {9065#(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-08 06:18:29,570 INFO L290 TraceCheckUtils]: 49: Hoare triple {9065#(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 < 10);havoc #t~post7; {9065#(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-08 06:18:29,570 INFO L272 TraceCheckUtils]: 50: Hoare triple {9065#(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)); {8917#true} is VALID [2022-04-08 06:18:29,570 INFO L290 TraceCheckUtils]: 51: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-08 06:18:29,571 INFO L290 TraceCheckUtils]: 52: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-08 06:18:29,571 INFO L290 TraceCheckUtils]: 53: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-08 06:18:29,571 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {8917#true} {9065#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (< (mod main_~B~0 4294967296) main_~d~0))} #88#return; {9065#(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-08 06:18:29,571 INFO L272 TraceCheckUtils]: 55: Hoare triple {9065#(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)); {8917#true} is VALID [2022-04-08 06:18:29,571 INFO L290 TraceCheckUtils]: 56: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-08 06:18:29,571 INFO L290 TraceCheckUtils]: 57: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-08 06:18:29,571 INFO L290 TraceCheckUtils]: 58: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-08 06:18:29,573 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {8917#true} {9065#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (< (mod main_~B~0 4294967296) main_~d~0))} #90#return; {9065#(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-08 06:18:29,573 INFO L290 TraceCheckUtils]: 60: Hoare triple {9065#(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); {9105#(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-08 06:18:29,574 INFO L290 TraceCheckUtils]: 61: Hoare triple {9105#(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; {9105#(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-08 06:18:29,574 INFO L290 TraceCheckUtils]: 62: Hoare triple {9105#(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; {9105#(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-08 06:18:29,575 INFO L290 TraceCheckUtils]: 63: Hoare triple {9105#(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 < 10);havoc #t~post7; {9105#(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-08 06:18:29,575 INFO L272 TraceCheckUtils]: 64: Hoare triple {9105#(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)); {8917#true} is VALID [2022-04-08 06:18:29,575 INFO L290 TraceCheckUtils]: 65: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-08 06:18:29,575 INFO L290 TraceCheckUtils]: 66: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-08 06:18:29,575 INFO L290 TraceCheckUtils]: 67: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-08 06:18:29,576 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {8917#true} {9105#(and (= main_~d~0 (div (* 2 (mod main_~B~0 4294967296)) 2)) (< 0 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #88#return; {9105#(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-08 06:18:29,576 INFO L272 TraceCheckUtils]: 69: Hoare triple {9105#(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)); {9133#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:18:29,576 INFO L290 TraceCheckUtils]: 70: Hoare triple {9133#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {9137#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:18:29,577 INFO L290 TraceCheckUtils]: 71: Hoare triple {9137#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8918#false} is VALID [2022-04-08 06:18:29,577 INFO L290 TraceCheckUtils]: 72: Hoare triple {8918#false} assume !false; {8918#false} is VALID [2022-04-08 06:18:29,577 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-08 06:18:29,577 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:18:37,691 INFO L290 TraceCheckUtils]: 72: Hoare triple {8918#false} assume !false; {8918#false} is VALID [2022-04-08 06:18:37,692 INFO L290 TraceCheckUtils]: 71: Hoare triple {9137#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {8918#false} is VALID [2022-04-08 06:18:37,692 INFO L290 TraceCheckUtils]: 70: Hoare triple {9133#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {9137#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:18:37,693 INFO L272 TraceCheckUtils]: 69: Hoare triple {9153#(= 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)); {9133#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:18:37,693 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {8917#true} {9153#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} #88#return; {9153#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:18:37,693 INFO L290 TraceCheckUtils]: 67: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-08 06:18:37,693 INFO L290 TraceCheckUtils]: 66: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-08 06:18:37,694 INFO L290 TraceCheckUtils]: 65: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-08 06:18:37,694 INFO L272 TraceCheckUtils]: 64: Hoare triple {9153#(= 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)); {8917#true} is VALID [2022-04-08 06:18:37,694 INFO L290 TraceCheckUtils]: 63: Hoare triple {9153#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} assume !!(#t~post7 < 10);havoc #t~post7; {9153#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:18:37,694 INFO L290 TraceCheckUtils]: 62: Hoare triple {9153#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {9153#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:18:37,694 INFO L290 TraceCheckUtils]: 61: Hoare triple {9153#(= 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; {9153#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:18:37,706 INFO L290 TraceCheckUtils]: 60: Hoare triple {9181#(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); {9153#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:18:37,707 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {8917#true} {9181#(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; {9181#(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-08 06:18:37,707 INFO L290 TraceCheckUtils]: 58: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-08 06:18:37,707 INFO L290 TraceCheckUtils]: 57: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-08 06:18:37,707 INFO L290 TraceCheckUtils]: 56: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-08 06:18:37,707 INFO L272 TraceCheckUtils]: 55: Hoare triple {9181#(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)); {8917#true} is VALID [2022-04-08 06:18:37,708 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {8917#true} {9181#(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; {9181#(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-08 06:18:37,708 INFO L290 TraceCheckUtils]: 53: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-08 06:18:37,709 INFO L290 TraceCheckUtils]: 52: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-08 06:18:37,709 INFO L290 TraceCheckUtils]: 51: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-08 06:18:37,709 INFO L272 TraceCheckUtils]: 50: Hoare triple {9181#(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)); {8917#true} is VALID [2022-04-08 06:18:37,712 INFO L290 TraceCheckUtils]: 49: Hoare triple {9181#(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 < 10);havoc #t~post7; {9181#(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-08 06:18:37,713 INFO L290 TraceCheckUtils]: 48: Hoare triple {9181#(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; {9181#(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-08 06:18:37,714 INFO L290 TraceCheckUtils]: 47: Hoare triple {9221#(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); {9181#(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-08 06:18:37,714 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {8917#true} {9221#(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; {9221#(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-08 06:18:37,714 INFO L290 TraceCheckUtils]: 45: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-08 06:18:37,715 INFO L290 TraceCheckUtils]: 44: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-08 06:18:37,715 INFO L290 TraceCheckUtils]: 43: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-08 06:18:37,715 INFO L272 TraceCheckUtils]: 42: Hoare triple {9221#(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)); {8917#true} is VALID [2022-04-08 06:18:37,715 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {8917#true} {9221#(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; {9221#(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-08 06:18:37,715 INFO L290 TraceCheckUtils]: 40: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-08 06:18:37,736 INFO L290 TraceCheckUtils]: 39: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-08 06:18:37,736 INFO L290 TraceCheckUtils]: 38: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-08 06:18:37,736 INFO L272 TraceCheckUtils]: 37: Hoare triple {9221#(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)); {8917#true} is VALID [2022-04-08 06:18:37,737 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {8917#true} {9221#(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; {9221#(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-08 06:18:37,737 INFO L290 TraceCheckUtils]: 35: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-08 06:18:37,737 INFO L290 TraceCheckUtils]: 34: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-08 06:18:37,737 INFO L290 TraceCheckUtils]: 33: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-08 06:18:37,738 INFO L272 TraceCheckUtils]: 32: Hoare triple {9221#(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)); {8917#true} is VALID [2022-04-08 06:18:37,739 INFO L290 TraceCheckUtils]: 31: Hoare triple {9221#(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 < 10);havoc #t~post6; {9221#(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-08 06:18:37,740 INFO L290 TraceCheckUtils]: 30: Hoare triple {9221#(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; {9221#(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-08 06:18:37,743 INFO L290 TraceCheckUtils]: 29: Hoare triple {9276#(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; {9221#(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-08 06:18:37,745 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {8917#true} {9276#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #86#return; {9276#(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-08 06:18:37,745 INFO L290 TraceCheckUtils]: 27: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-08 06:18:37,745 INFO L290 TraceCheckUtils]: 26: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-08 06:18:37,745 INFO L290 TraceCheckUtils]: 25: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-08 06:18:37,745 INFO L272 TraceCheckUtils]: 24: Hoare triple {9276#(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)); {8917#true} is VALID [2022-04-08 06:18:37,748 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {8917#true} {9276#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #84#return; {9276#(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-08 06:18:37,748 INFO L290 TraceCheckUtils]: 22: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-08 06:18:37,748 INFO L290 TraceCheckUtils]: 21: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-08 06:18:37,748 INFO L290 TraceCheckUtils]: 20: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-08 06:18:37,748 INFO L272 TraceCheckUtils]: 19: Hoare triple {9276#(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)); {8917#true} is VALID [2022-04-08 06:18:37,749 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {8917#true} {9276#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #82#return; {9276#(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-08 06:18:37,749 INFO L290 TraceCheckUtils]: 17: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-08 06:18:37,749 INFO L290 TraceCheckUtils]: 16: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-08 06:18:37,749 INFO L290 TraceCheckUtils]: 15: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-08 06:18:37,749 INFO L272 TraceCheckUtils]: 14: Hoare triple {9276#(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)); {8917#true} is VALID [2022-04-08 06:18:37,750 INFO L290 TraceCheckUtils]: 13: Hoare triple {9276#(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 < 10);havoc #t~post6; {9276#(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-08 06:18:37,750 INFO L290 TraceCheckUtils]: 12: Hoare triple {9276#(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; {9276#(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-08 06:18:37,750 INFO L290 TraceCheckUtils]: 11: Hoare triple {8917#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {9276#(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-08 06:18:37,750 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {8917#true} {8917#true} #80#return; {8917#true} is VALID [2022-04-08 06:18:37,750 INFO L290 TraceCheckUtils]: 9: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-08 06:18:37,751 INFO L290 TraceCheckUtils]: 8: Hoare triple {8917#true} assume !(0 == ~cond); {8917#true} is VALID [2022-04-08 06:18:37,751 INFO L290 TraceCheckUtils]: 7: Hoare triple {8917#true} ~cond := #in~cond; {8917#true} is VALID [2022-04-08 06:18:37,751 INFO L272 TraceCheckUtils]: 6: Hoare triple {8917#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {8917#true} is VALID [2022-04-08 06:18:37,751 INFO L290 TraceCheckUtils]: 5: Hoare triple {8917#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; {8917#true} is VALID [2022-04-08 06:18:37,751 INFO L272 TraceCheckUtils]: 4: Hoare triple {8917#true} call #t~ret8 := main(); {8917#true} is VALID [2022-04-08 06:18:37,751 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {8917#true} {8917#true} #96#return; {8917#true} is VALID [2022-04-08 06:18:37,751 INFO L290 TraceCheckUtils]: 2: Hoare triple {8917#true} assume true; {8917#true} is VALID [2022-04-08 06:18:37,751 INFO L290 TraceCheckUtils]: 1: Hoare triple {8917#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; {8917#true} is VALID [2022-04-08 06:18:37,751 INFO L272 TraceCheckUtils]: 0: Hoare triple {8917#true} call ULTIMATE.init(); {8917#true} is VALID [2022-04-08 06:18:37,752 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-08 06:18:37,752 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:18:37,752 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [804098101] [2022-04-08 06:18:37,752 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:18:37,752 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2048015176] [2022-04-08 06:18:37,752 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2048015176] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:18:37,752 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:18:37,752 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 12 [2022-04-08 06:18:37,752 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:18:37,752 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [870726323] [2022-04-08 06:18:37,752 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [870726323] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:18:37,753 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:18:37,753 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 06:18:37,753 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [21800895] [2022-04-08 06:18:37,753 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:18:37,753 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-08 06:18:37,753 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:18:37,753 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-08 06:18:37,788 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-08 06:18:37,789 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 06:18:37,789 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:18:37,789 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 06:18:37,791 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=36, Invalid=96, Unknown=0, NotChecked=0, Total=132 [2022-04-08 06:18:37,791 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-08 06:18:38,685 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:18:38,685 INFO L93 Difference]: Finished difference Result 168 states and 197 transitions. [2022-04-08 06:18:38,685 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-08 06:18:38,685 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-08 06:18:38,685 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:18:38,687 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-08 06:18:38,688 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 103 transitions. [2022-04-08 06:18:38,688 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-08 06:18:38,690 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 103 transitions. [2022-04-08 06:18:38,690 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 103 transitions. [2022-04-08 06:18:38,803 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-08 06:18:38,806 INFO L225 Difference]: With dead ends: 168 [2022-04-08 06:18:38,806 INFO L226 Difference]: Without dead ends: 143 [2022-04-08 06:18:38,806 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-08 06:18:38,806 INFO L913 BasicCegarLoop]: 55 mSDtfsCounter, 12 mSDsluCounter, 205 mSDsCounter, 0 mSdLazyCounter, 171 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s 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.2s IncrementalHoareTripleChecker+Time [2022-04-08 06:18:38,807 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.2s Time] [2022-04-08 06:18:38,807 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 143 states. [2022-04-08 06:18:38,927 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 143 to 143. [2022-04-08 06:18:38,927 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:18:38,928 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-08 06:18:38,929 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-08 06:18:38,929 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-08 06:18:38,932 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:18:38,932 INFO L93 Difference]: Finished difference Result 143 states and 160 transitions. [2022-04-08 06:18:38,933 INFO L276 IsEmpty]: Start isEmpty. Operand 143 states and 160 transitions. [2022-04-08 06:18:38,935 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:18:38,935 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:18:38,936 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-08 06:18:38,936 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-08 06:18:38,942 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:18:38,943 INFO L93 Difference]: Finished difference Result 143 states and 160 transitions. [2022-04-08 06:18:38,943 INFO L276 IsEmpty]: Start isEmpty. Operand 143 states and 160 transitions. [2022-04-08 06:18:38,946 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:18:38,946 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:18:38,946 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:18:38,946 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:18:38,954 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-08 06:18:38,957 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 143 states to 143 states and 160 transitions. [2022-04-08 06:18:38,957 INFO L78 Accepts]: Start accepts. Automaton has 143 states and 160 transitions. Word has length 73 [2022-04-08 06:18:38,958 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:18:38,959 INFO L478 AbstractCegarLoop]: Abstraction has 143 states and 160 transitions. [2022-04-08 06:18:38,959 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-08 06:18:38,959 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 143 states and 160 transitions. [2022-04-08 06:18:39,133 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-08 06:18:39,133 INFO L276 IsEmpty]: Start isEmpty. Operand 143 states and 160 transitions. [2022-04-08 06:18:39,134 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 80 [2022-04-08 06:18:39,134 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:18:39,134 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-08 06:18:39,157 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-08 06:18:39,334 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-08 06:18:39,335 INFO L403 AbstractCegarLoop]: === Iteration 15 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:18:39,335 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:18:39,335 INFO L85 PathProgramCache]: Analyzing trace with hash 1792978632, now seen corresponding path program 1 times [2022-04-08 06:18:39,335 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:18:39,335 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [192644062] [2022-04-08 06:18:45,908 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-08 06:18:45,908 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-08 06:18:45,908 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 06:18:45,909 INFO L85 PathProgramCache]: Analyzing trace with hash 1792978632, now seen corresponding path program 2 times [2022-04-08 06:18:45,909 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:18:45,909 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [874812028] [2022-04-08 06:18:45,909 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:18:45,909 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:18:45,925 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:18:45,925 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1078660942] [2022-04-08 06:18:45,925 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:18:45,925 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:18:45,925 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:18:45,931 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-08 06:18:45,932 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-08 06:18:46,030 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:18:46,030 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:18:46,031 INFO L263 TraceCheckSpWp]: Trace formula consists of 205 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-08 06:18:46,044 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:18:46,045 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:19:17,987 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 06:19:23,094 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 06:19:35,279 INFO L272 TraceCheckUtils]: 0: Hoare triple {10278#true} call ULTIMATE.init(); {10278#true} is VALID [2022-04-08 06:19:35,280 INFO L290 TraceCheckUtils]: 1: Hoare triple {10278#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; {10278#true} is VALID [2022-04-08 06:19:35,280 INFO L290 TraceCheckUtils]: 2: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-08 06:19:35,280 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10278#true} {10278#true} #96#return; {10278#true} is VALID [2022-04-08 06:19:35,280 INFO L272 TraceCheckUtils]: 4: Hoare triple {10278#true} call #t~ret8 := main(); {10278#true} is VALID [2022-04-08 06:19:35,280 INFO L290 TraceCheckUtils]: 5: Hoare triple {10278#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; {10278#true} is VALID [2022-04-08 06:19:35,280 INFO L272 TraceCheckUtils]: 6: Hoare triple {10278#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {10278#true} is VALID [2022-04-08 06:19:35,280 INFO L290 TraceCheckUtils]: 7: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-08 06:19:35,280 INFO L290 TraceCheckUtils]: 8: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-08 06:19:35,280 INFO L290 TraceCheckUtils]: 9: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-08 06:19:35,280 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10278#true} {10278#true} #80#return; {10278#true} is VALID [2022-04-08 06:19:35,281 INFO L290 TraceCheckUtils]: 11: Hoare triple {10278#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:19:35,281 INFO L290 TraceCheckUtils]: 12: Hoare triple {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:19:35,282 INFO L290 TraceCheckUtils]: 13: Hoare triple {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} assume !!(#t~post6 < 10);havoc #t~post6; {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:19:35,282 INFO L272 TraceCheckUtils]: 14: Hoare triple {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {10278#true} is VALID [2022-04-08 06:19:35,282 INFO L290 TraceCheckUtils]: 15: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-08 06:19:35,282 INFO L290 TraceCheckUtils]: 16: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-08 06:19:35,282 INFO L290 TraceCheckUtils]: 17: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-08 06:19:35,282 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {10278#true} {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #82#return; {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:19:35,282 INFO L272 TraceCheckUtils]: 19: Hoare triple {10316#(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)); {10278#true} is VALID [2022-04-08 06:19:35,282 INFO L290 TraceCheckUtils]: 20: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-08 06:19:35,283 INFO L290 TraceCheckUtils]: 21: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-08 06:19:35,283 INFO L290 TraceCheckUtils]: 22: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-08 06:19:35,283 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {10278#true} {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #84#return; {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:19:35,283 INFO L272 TraceCheckUtils]: 24: Hoare triple {10316#(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)); {10278#true} is VALID [2022-04-08 06:19:35,283 INFO L290 TraceCheckUtils]: 25: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-08 06:19:35,283 INFO L290 TraceCheckUtils]: 26: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-08 06:19:35,283 INFO L290 TraceCheckUtils]: 27: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-08 06:19:35,284 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {10278#true} {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #86#return; {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:19:35,284 INFO L290 TraceCheckUtils]: 29: Hoare triple {10316#(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; {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:19:35,285 INFO L290 TraceCheckUtils]: 30: Hoare triple {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:19:35,285 INFO L290 TraceCheckUtils]: 31: Hoare triple {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} assume !!(#t~post6 < 10);havoc #t~post6; {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:19:35,285 INFO L272 TraceCheckUtils]: 32: Hoare triple {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {10278#true} is VALID [2022-04-08 06:19:35,285 INFO L290 TraceCheckUtils]: 33: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-08 06:19:35,285 INFO L290 TraceCheckUtils]: 34: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-08 06:19:35,286 INFO L290 TraceCheckUtils]: 35: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-08 06:19:35,286 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {10278#true} {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #82#return; {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:19:35,286 INFO L272 TraceCheckUtils]: 37: Hoare triple {10316#(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)); {10278#true} is VALID [2022-04-08 06:19:35,286 INFO L290 TraceCheckUtils]: 38: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-08 06:19:35,286 INFO L290 TraceCheckUtils]: 39: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-08 06:19:35,286 INFO L290 TraceCheckUtils]: 40: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-08 06:19:35,287 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {10278#true} {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #84#return; {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:19:35,287 INFO L272 TraceCheckUtils]: 42: Hoare triple {10316#(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)); {10278#true} is VALID [2022-04-08 06:19:35,287 INFO L290 TraceCheckUtils]: 43: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-08 06:19:35,287 INFO L290 TraceCheckUtils]: 44: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-08 06:19:35,287 INFO L290 TraceCheckUtils]: 45: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-08 06:19:35,288 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {10278#true} {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #86#return; {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:19:35,288 INFO L290 TraceCheckUtils]: 47: Hoare triple {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} assume !(~r~0 >= ~d~0); {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:19:35,289 INFO L290 TraceCheckUtils]: 48: Hoare triple {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:19:35,289 INFO L290 TraceCheckUtils]: 49: Hoare triple {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} assume !!(#t~post7 < 10);havoc #t~post7; {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:19:35,289 INFO L272 TraceCheckUtils]: 50: Hoare triple {10316#(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)); {10278#true} is VALID [2022-04-08 06:19:35,289 INFO L290 TraceCheckUtils]: 51: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-08 06:19:35,289 INFO L290 TraceCheckUtils]: 52: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-08 06:19:35,289 INFO L290 TraceCheckUtils]: 53: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-08 06:19:35,290 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {10278#true} {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #88#return; {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:19:35,290 INFO L272 TraceCheckUtils]: 55: Hoare triple {10316#(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)); {10278#true} is VALID [2022-04-08 06:19:35,290 INFO L290 TraceCheckUtils]: 56: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-08 06:19:35,290 INFO L290 TraceCheckUtils]: 57: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-08 06:19:35,290 INFO L290 TraceCheckUtils]: 58: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-08 06:19:35,291 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {10278#true} {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} #90#return; {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:19:35,307 INFO L290 TraceCheckUtils]: 60: Hoare triple {10316#(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); {10316#(and (= main_~q~0 0) (<= (mod main_~A~0 4294967296) main_~r~0))} is VALID [2022-04-08 06:19:35,309 INFO L290 TraceCheckUtils]: 61: Hoare triple {10316#(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; {10467#(and (= main_~q~0 main_~p~0) (<= (mod main_~A~0 4294967296) (+ main_~d~0 main_~r~0)))} is VALID [2022-04-08 06:19:35,309 INFO L290 TraceCheckUtils]: 62: Hoare triple {10467#(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; {10467#(and (= main_~q~0 main_~p~0) (<= (mod main_~A~0 4294967296) (+ main_~d~0 main_~r~0)))} is VALID [2022-04-08 06:19:35,310 INFO L290 TraceCheckUtils]: 63: Hoare triple {10467#(and (= main_~q~0 main_~p~0) (<= (mod main_~A~0 4294967296) (+ main_~d~0 main_~r~0)))} assume !!(#t~post7 < 10);havoc #t~post7; {10467#(and (= main_~q~0 main_~p~0) (<= (mod main_~A~0 4294967296) (+ main_~d~0 main_~r~0)))} is VALID [2022-04-08 06:19:35,310 INFO L272 TraceCheckUtils]: 64: Hoare triple {10467#(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)); {10278#true} is VALID [2022-04-08 06:19:35,310 INFO L290 TraceCheckUtils]: 65: Hoare triple {10278#true} ~cond := #in~cond; {10480#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:19:35,311 INFO L290 TraceCheckUtils]: 66: Hoare triple {10480#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {10484#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:19:35,311 INFO L290 TraceCheckUtils]: 67: Hoare triple {10484#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {10484#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:19:35,312 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {10484#(not (= |__VERIFIER_assert_#in~cond| 0))} {10467#(and (= main_~q~0 main_~p~0) (<= (mod main_~A~0 4294967296) (+ main_~d~0 main_~r~0)))} #88#return; {10491#(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-08 06:19:35,312 INFO L272 TraceCheckUtils]: 69: Hoare triple {10491#(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)); {10278#true} is VALID [2022-04-08 06:19:35,312 INFO L290 TraceCheckUtils]: 70: Hoare triple {10278#true} ~cond := #in~cond; {10480#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:19:35,313 INFO L290 TraceCheckUtils]: 71: Hoare triple {10480#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {10484#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:19:35,313 INFO L290 TraceCheckUtils]: 72: Hoare triple {10484#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {10484#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:19:37,341 WARN L284 TraceCheckUtils]: 73: Hoare quadruple {10484#(not (= |__VERIFIER_assert_#in~cond| 0))} {10491#(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; {10507#(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-08 06:19:37,342 INFO L290 TraceCheckUtils]: 74: Hoare triple {10507#(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); {10511#(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-08 06:19:37,367 INFO L272 TraceCheckUtils]: 75: Hoare triple {10511#(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)); {10515#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:19:37,367 INFO L290 TraceCheckUtils]: 76: Hoare triple {10515#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10519#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:19:37,368 INFO L290 TraceCheckUtils]: 77: Hoare triple {10519#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10279#false} is VALID [2022-04-08 06:19:37,368 INFO L290 TraceCheckUtils]: 78: Hoare triple {10279#false} assume !false; {10279#false} is VALID [2022-04-08 06:19:37,368 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-08 06:19:37,368 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:20:24,800 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 06:20:28,209 WARN L907 QuantifierPusher]: no eliminatee completely removed, nonetheless the elimination was considered successful [2022-04-08 06:20:56,098 INFO L290 TraceCheckUtils]: 78: Hoare triple {10279#false} assume !false; {10279#false} is VALID [2022-04-08 06:20:56,099 INFO L290 TraceCheckUtils]: 77: Hoare triple {10519#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {10279#false} is VALID [2022-04-08 06:20:56,099 INFO L290 TraceCheckUtils]: 76: Hoare triple {10515#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {10519#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:20:56,100 INFO L272 TraceCheckUtils]: 75: Hoare triple {10535#(= (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)); {10515#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:20:56,100 INFO L290 TraceCheckUtils]: 74: Hoare triple {10539#(or (= (mod main_~A~0 4294967296) (+ (* main_~d~0 main_~q~0) main_~r~0)) (not (= main_~p~0 1)))} assume !(1 != ~p~0); {10535#(= (mod main_~A~0 4294967296) (+ (* main_~d~0 main_~q~0) main_~r~0))} is VALID [2022-04-08 06:20:56,116 INFO L284 TraceCheckUtils]: 73: Hoare quadruple {10484#(not (= |__VERIFIER_assert_#in~cond| 0))} {10543#(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; {10539#(or (= (mod main_~A~0 4294967296) (+ (* main_~d~0 main_~q~0) main_~r~0)) (not (= main_~p~0 1)))} is VALID [2022-04-08 06:20:56,116 INFO L290 TraceCheckUtils]: 72: Hoare triple {10484#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {10484#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:20:56,116 INFO L290 TraceCheckUtils]: 71: Hoare triple {10553#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {10484#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:20:56,117 INFO L290 TraceCheckUtils]: 70: Hoare triple {10278#true} ~cond := #in~cond; {10553#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 06:20:56,117 INFO L272 TraceCheckUtils]: 69: Hoare triple {10543#(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)); {10278#true} is VALID [2022-04-08 06:20:56,119 INFO L284 TraceCheckUtils]: 68: Hoare quadruple {10484#(not (= |__VERIFIER_assert_#in~cond| 0))} {10278#true} #88#return; {10543#(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-08 06:20:56,119 INFO L290 TraceCheckUtils]: 67: Hoare triple {10484#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {10484#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:20:56,120 INFO L290 TraceCheckUtils]: 66: Hoare triple {10553#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {10484#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:20:56,120 INFO L290 TraceCheckUtils]: 65: Hoare triple {10278#true} ~cond := #in~cond; {10553#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 06:20:56,120 INFO L272 TraceCheckUtils]: 64: Hoare triple {10278#true} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {10278#true} is VALID [2022-04-08 06:20:56,120 INFO L290 TraceCheckUtils]: 63: Hoare triple {10278#true} assume !!(#t~post7 < 10);havoc #t~post7; {10278#true} is VALID [2022-04-08 06:20:56,120 INFO L290 TraceCheckUtils]: 62: Hoare triple {10278#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10278#true} is VALID [2022-04-08 06:20:56,120 INFO L290 TraceCheckUtils]: 61: Hoare triple {10278#true} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {10278#true} is VALID [2022-04-08 06:20:56,120 INFO L290 TraceCheckUtils]: 60: Hoare triple {10278#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); {10278#true} is VALID [2022-04-08 06:20:56,121 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {10278#true} {10278#true} #90#return; {10278#true} is VALID [2022-04-08 06:20:56,121 INFO L290 TraceCheckUtils]: 58: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-08 06:20:56,121 INFO L290 TraceCheckUtils]: 57: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-08 06:20:56,121 INFO L290 TraceCheckUtils]: 56: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-08 06:20:56,121 INFO L272 TraceCheckUtils]: 55: Hoare triple {10278#true} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {10278#true} is VALID [2022-04-08 06:20:56,121 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {10278#true} {10278#true} #88#return; {10278#true} is VALID [2022-04-08 06:20:56,121 INFO L290 TraceCheckUtils]: 53: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-08 06:20:56,121 INFO L290 TraceCheckUtils]: 52: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-08 06:20:56,121 INFO L290 TraceCheckUtils]: 51: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-08 06:20:56,121 INFO L272 TraceCheckUtils]: 50: Hoare triple {10278#true} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {10278#true} is VALID [2022-04-08 06:20:56,121 INFO L290 TraceCheckUtils]: 49: Hoare triple {10278#true} assume !!(#t~post7 < 10);havoc #t~post7; {10278#true} is VALID [2022-04-08 06:20:56,121 INFO L290 TraceCheckUtils]: 48: Hoare triple {10278#true} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {10278#true} is VALID [2022-04-08 06:20:56,121 INFO L290 TraceCheckUtils]: 47: Hoare triple {10278#true} assume !(~r~0 >= ~d~0); {10278#true} is VALID [2022-04-08 06:20:56,121 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {10278#true} {10278#true} #86#return; {10278#true} is VALID [2022-04-08 06:20:56,122 INFO L290 TraceCheckUtils]: 45: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-08 06:20:56,122 INFO L290 TraceCheckUtils]: 44: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-08 06:20:56,122 INFO L290 TraceCheckUtils]: 43: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-08 06:20:56,122 INFO L272 TraceCheckUtils]: 42: Hoare triple {10278#true} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {10278#true} is VALID [2022-04-08 06:20:56,122 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {10278#true} {10278#true} #84#return; {10278#true} is VALID [2022-04-08 06:20:56,122 INFO L290 TraceCheckUtils]: 40: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-08 06:20:56,122 INFO L290 TraceCheckUtils]: 39: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-08 06:20:56,122 INFO L290 TraceCheckUtils]: 38: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-08 06:20:56,122 INFO L272 TraceCheckUtils]: 37: Hoare triple {10278#true} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {10278#true} is VALID [2022-04-08 06:20:56,122 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {10278#true} {10278#true} #82#return; {10278#true} is VALID [2022-04-08 06:20:56,122 INFO L290 TraceCheckUtils]: 35: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-08 06:20:56,122 INFO L290 TraceCheckUtils]: 34: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-08 06:20:56,122 INFO L290 TraceCheckUtils]: 33: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-08 06:20:56,122 INFO L272 TraceCheckUtils]: 32: Hoare triple {10278#true} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {10278#true} is VALID [2022-04-08 06:20:56,123 INFO L290 TraceCheckUtils]: 31: Hoare triple {10278#true} assume !!(#t~post6 < 10);havoc #t~post6; {10278#true} is VALID [2022-04-08 06:20:56,123 INFO L290 TraceCheckUtils]: 30: Hoare triple {10278#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10278#true} is VALID [2022-04-08 06:20:56,123 INFO L290 TraceCheckUtils]: 29: Hoare triple {10278#true} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {10278#true} is VALID [2022-04-08 06:20:56,123 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {10278#true} {10278#true} #86#return; {10278#true} is VALID [2022-04-08 06:20:56,123 INFO L290 TraceCheckUtils]: 27: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-08 06:20:56,123 INFO L290 TraceCheckUtils]: 26: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-08 06:20:56,123 INFO L290 TraceCheckUtils]: 25: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-08 06:20:56,123 INFO L272 TraceCheckUtils]: 24: Hoare triple {10278#true} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {10278#true} is VALID [2022-04-08 06:20:56,123 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {10278#true} {10278#true} #84#return; {10278#true} is VALID [2022-04-08 06:20:56,123 INFO L290 TraceCheckUtils]: 22: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-08 06:20:56,123 INFO L290 TraceCheckUtils]: 21: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-08 06:20:56,123 INFO L290 TraceCheckUtils]: 20: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-08 06:20:56,123 INFO L272 TraceCheckUtils]: 19: Hoare triple {10278#true} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {10278#true} is VALID [2022-04-08 06:20:56,123 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {10278#true} {10278#true} #82#return; {10278#true} is VALID [2022-04-08 06:20:56,124 INFO L290 TraceCheckUtils]: 17: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-08 06:20:56,124 INFO L290 TraceCheckUtils]: 16: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-08 06:20:56,124 INFO L290 TraceCheckUtils]: 15: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-08 06:20:56,124 INFO L272 TraceCheckUtils]: 14: Hoare triple {10278#true} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {10278#true} is VALID [2022-04-08 06:20:56,124 INFO L290 TraceCheckUtils]: 13: Hoare triple {10278#true} assume !!(#t~post6 < 10);havoc #t~post6; {10278#true} is VALID [2022-04-08 06:20:56,124 INFO L290 TraceCheckUtils]: 12: Hoare triple {10278#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {10278#true} is VALID [2022-04-08 06:20:56,124 INFO L290 TraceCheckUtils]: 11: Hoare triple {10278#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {10278#true} is VALID [2022-04-08 06:20:56,124 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {10278#true} {10278#true} #80#return; {10278#true} is VALID [2022-04-08 06:20:56,124 INFO L290 TraceCheckUtils]: 9: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-08 06:20:56,124 INFO L290 TraceCheckUtils]: 8: Hoare triple {10278#true} assume !(0 == ~cond); {10278#true} is VALID [2022-04-08 06:20:56,124 INFO L290 TraceCheckUtils]: 7: Hoare triple {10278#true} ~cond := #in~cond; {10278#true} is VALID [2022-04-08 06:20:56,124 INFO L272 TraceCheckUtils]: 6: Hoare triple {10278#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {10278#true} is VALID [2022-04-08 06:20:56,124 INFO L290 TraceCheckUtils]: 5: Hoare triple {10278#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; {10278#true} is VALID [2022-04-08 06:20:56,124 INFO L272 TraceCheckUtils]: 4: Hoare triple {10278#true} call #t~ret8 := main(); {10278#true} is VALID [2022-04-08 06:20:56,124 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {10278#true} {10278#true} #96#return; {10278#true} is VALID [2022-04-08 06:20:56,125 INFO L290 TraceCheckUtils]: 2: Hoare triple {10278#true} assume true; {10278#true} is VALID [2022-04-08 06:20:56,125 INFO L290 TraceCheckUtils]: 1: Hoare triple {10278#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; {10278#true} is VALID [2022-04-08 06:20:56,125 INFO L272 TraceCheckUtils]: 0: Hoare triple {10278#true} call ULTIMATE.init(); {10278#true} is VALID [2022-04-08 06:20:56,125 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-08 06:20:56,125 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:20:56,125 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [874812028] [2022-04-08 06:20:56,125 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:20:56,125 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1078660942] [2022-04-08 06:20:56,125 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1078660942] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:20:56,125 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:20:56,126 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 9] total 15 [2022-04-08 06:20:56,126 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:20:56,126 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [192644062] [2022-04-08 06:20:56,126 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [192644062] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:20:56,126 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:20:56,126 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-08 06:20:56,126 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [539438559] [2022-04-08 06:20:56,126 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:20:56,126 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-08 06:20:56,127 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:20:56,127 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-08 06:20:58,175 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-08 06:20:58,176 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-08 06:20:58,176 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:20:58,176 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-08 06:20:58,176 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=42, Invalid=168, Unknown=0, NotChecked=0, Total=210 [2022-04-08 06:20:58,176 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-08 06:21:04,797 WARN L232 SmtUtils]: Spent 5.37s 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-08 06:21:05,321 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:21:05,321 INFO L93 Difference]: Finished difference Result 159 states and 181 transitions. [2022-04-08 06:21:05,321 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-08 06:21:05,322 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-08 06:21:05,322 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:21:05,322 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-08 06:21:05,324 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 76 transitions. [2022-04-08 06:21:05,324 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-08 06:21:05,325 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 76 transitions. [2022-04-08 06:21:05,325 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 76 transitions. [2022-04-08 06:21:07,416 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-08 06:21:07,418 INFO L225 Difference]: With dead ends: 159 [2022-04-08 06:21:07,418 INFO L226 Difference]: Without dead ends: 129 [2022-04-08 06:21:07,419 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 160 GetRequests, 143 SyntacticMatches, 1 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 34 ImplicationChecksByTransitivity, 6.4s TimeCoverageRelationStatistics Valid=62, Invalid=244, Unknown=0, NotChecked=0, Total=306 [2022-04-08 06:21:07,419 INFO L913 BasicCegarLoop]: 38 mSDtfsCounter, 16 mSDsluCounter, 183 mSDsCounter, 0 mSdLazyCounter, 269 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 21 SdHoareTripleChecker+Valid, 221 SdHoareTripleChecker+Invalid, 276 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 269 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 5 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-04-08 06:21:07,419 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [21 Valid, 221 Invalid, 276 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 269 Invalid, 0 Unknown, 5 Unchecked, 0.7s Time] [2022-04-08 06:21:07,419 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 129 states. [2022-04-08 06:21:07,519 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 129 to 125. [2022-04-08 06:21:07,520 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:21:07,520 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-08 06:21:07,520 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-08 06:21:07,520 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-08 06:21:07,523 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:21:07,523 INFO L93 Difference]: Finished difference Result 129 states and 150 transitions. [2022-04-08 06:21:07,523 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 150 transitions. [2022-04-08 06:21:07,523 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:21:07,523 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:21:07,523 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-08 06:21:07,524 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-08 06:21:07,525 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:21:07,526 INFO L93 Difference]: Finished difference Result 129 states and 150 transitions. [2022-04-08 06:21:07,526 INFO L276 IsEmpty]: Start isEmpty. Operand 129 states and 150 transitions. [2022-04-08 06:21:07,526 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:21:07,526 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:21:07,526 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:21:07,526 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:21:07,526 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-08 06:21:07,528 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 125 states to 125 states and 145 transitions. [2022-04-08 06:21:07,528 INFO L78 Accepts]: Start accepts. Automaton has 125 states and 145 transitions. Word has length 79 [2022-04-08 06:21:07,528 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:21:07,529 INFO L478 AbstractCegarLoop]: Abstraction has 125 states and 145 transitions. [2022-04-08 06:21:07,529 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-08 06:21:07,529 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 125 states and 145 transitions. [2022-04-08 06:21:09,698 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-08 06:21:09,698 INFO L276 IsEmpty]: Start isEmpty. Operand 125 states and 145 transitions. [2022-04-08 06:21:09,698 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 80 [2022-04-08 06:21:09,698 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:21:09,698 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-08 06:21:09,715 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-08 06:21:09,911 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-08 06:21:09,912 INFO L403 AbstractCegarLoop]: === Iteration 16 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:21:09,912 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:21:09,912 INFO L85 PathProgramCache]: Analyzing trace with hash 816704307, now seen corresponding path program 5 times [2022-04-08 06:21:09,912 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:21:09,912 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1704593625] [2022-04-08 06:21:16,202 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-08 06:21:16,202 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-08 06:21:16,202 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 06:21:16,202 INFO L85 PathProgramCache]: Analyzing trace with hash 816704307, now seen corresponding path program 6 times [2022-04-08 06:21:16,202 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:21:16,202 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2099467102] [2022-04-08 06:21:16,202 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:21:16,202 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:21:16,211 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:21:16,211 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1428626237] [2022-04-08 06:21:16,211 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 06:21:16,211 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:21:16,212 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:21:16,230 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-08 06:21:16,231 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-08 06:21:16,278 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 6 check-sat command(s) [2022-04-08 06:21:16,278 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:21:16,279 INFO L263 TraceCheckSpWp]: Trace formula consists of 207 conjuncts, 11 conjunts are in the unsatisfiable core [2022-04-08 06:21:16,292 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:21:16,293 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:21:16,614 INFO L272 TraceCheckUtils]: 0: Hoare triple {11598#true} call ULTIMATE.init(); {11598#true} is VALID [2022-04-08 06:21:16,614 INFO L290 TraceCheckUtils]: 1: Hoare triple {11598#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; {11606#(<= ~counter~0 0)} is VALID [2022-04-08 06:21:16,614 INFO L290 TraceCheckUtils]: 2: Hoare triple {11606#(<= ~counter~0 0)} assume true; {11606#(<= ~counter~0 0)} is VALID [2022-04-08 06:21:16,615 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {11606#(<= ~counter~0 0)} {11598#true} #96#return; {11606#(<= ~counter~0 0)} is VALID [2022-04-08 06:21:16,615 INFO L272 TraceCheckUtils]: 4: Hoare triple {11606#(<= ~counter~0 0)} call #t~ret8 := main(); {11606#(<= ~counter~0 0)} is VALID [2022-04-08 06:21:16,615 INFO L290 TraceCheckUtils]: 5: Hoare triple {11606#(<= ~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; {11606#(<= ~counter~0 0)} is VALID [2022-04-08 06:21:16,616 INFO L272 TraceCheckUtils]: 6: Hoare triple {11606#(<= ~counter~0 0)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {11606#(<= ~counter~0 0)} is VALID [2022-04-08 06:21:16,619 INFO L290 TraceCheckUtils]: 7: Hoare triple {11606#(<= ~counter~0 0)} ~cond := #in~cond; {11606#(<= ~counter~0 0)} is VALID [2022-04-08 06:21:16,619 INFO L290 TraceCheckUtils]: 8: Hoare triple {11606#(<= ~counter~0 0)} assume !(0 == ~cond); {11606#(<= ~counter~0 0)} is VALID [2022-04-08 06:21:16,620 INFO L290 TraceCheckUtils]: 9: Hoare triple {11606#(<= ~counter~0 0)} assume true; {11606#(<= ~counter~0 0)} is VALID [2022-04-08 06:21:16,620 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11606#(<= ~counter~0 0)} {11606#(<= ~counter~0 0)} #80#return; {11606#(<= ~counter~0 0)} is VALID [2022-04-08 06:21:16,620 INFO L290 TraceCheckUtils]: 11: Hoare triple {11606#(<= ~counter~0 0)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {11606#(<= ~counter~0 0)} is VALID [2022-04-08 06:21:16,621 INFO L290 TraceCheckUtils]: 12: Hoare triple {11606#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11640#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:16,621 INFO L290 TraceCheckUtils]: 13: Hoare triple {11640#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {11640#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:16,622 INFO L272 TraceCheckUtils]: 14: Hoare triple {11640#(<= ~counter~0 1)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {11640#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:16,628 INFO L290 TraceCheckUtils]: 15: Hoare triple {11640#(<= ~counter~0 1)} ~cond := #in~cond; {11640#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:16,628 INFO L290 TraceCheckUtils]: 16: Hoare triple {11640#(<= ~counter~0 1)} assume !(0 == ~cond); {11640#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:16,628 INFO L290 TraceCheckUtils]: 17: Hoare triple {11640#(<= ~counter~0 1)} assume true; {11640#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:16,628 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {11640#(<= ~counter~0 1)} {11640#(<= ~counter~0 1)} #82#return; {11640#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:16,629 INFO L272 TraceCheckUtils]: 19: Hoare triple {11640#(<= ~counter~0 1)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {11640#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:16,629 INFO L290 TraceCheckUtils]: 20: Hoare triple {11640#(<= ~counter~0 1)} ~cond := #in~cond; {11640#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:16,629 INFO L290 TraceCheckUtils]: 21: Hoare triple {11640#(<= ~counter~0 1)} assume !(0 == ~cond); {11640#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:16,629 INFO L290 TraceCheckUtils]: 22: Hoare triple {11640#(<= ~counter~0 1)} assume true; {11640#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:16,630 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {11640#(<= ~counter~0 1)} {11640#(<= ~counter~0 1)} #84#return; {11640#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:16,630 INFO L272 TraceCheckUtils]: 24: Hoare triple {11640#(<= ~counter~0 1)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {11640#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:16,630 INFO L290 TraceCheckUtils]: 25: Hoare triple {11640#(<= ~counter~0 1)} ~cond := #in~cond; {11640#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:16,631 INFO L290 TraceCheckUtils]: 26: Hoare triple {11640#(<= ~counter~0 1)} assume !(0 == ~cond); {11640#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:16,631 INFO L290 TraceCheckUtils]: 27: Hoare triple {11640#(<= ~counter~0 1)} assume true; {11640#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:16,631 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {11640#(<= ~counter~0 1)} {11640#(<= ~counter~0 1)} #86#return; {11640#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:16,631 INFO L290 TraceCheckUtils]: 29: Hoare triple {11640#(<= ~counter~0 1)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {11640#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:16,632 INFO L290 TraceCheckUtils]: 30: Hoare triple {11640#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11695#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:16,632 INFO L290 TraceCheckUtils]: 31: Hoare triple {11695#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {11695#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:16,633 INFO L272 TraceCheckUtils]: 32: Hoare triple {11695#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {11695#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:16,633 INFO L290 TraceCheckUtils]: 33: Hoare triple {11695#(<= ~counter~0 2)} ~cond := #in~cond; {11695#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:16,633 INFO L290 TraceCheckUtils]: 34: Hoare triple {11695#(<= ~counter~0 2)} assume !(0 == ~cond); {11695#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:16,633 INFO L290 TraceCheckUtils]: 35: Hoare triple {11695#(<= ~counter~0 2)} assume true; {11695#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:16,634 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {11695#(<= ~counter~0 2)} {11695#(<= ~counter~0 2)} #82#return; {11695#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:16,634 INFO L272 TraceCheckUtils]: 37: Hoare triple {11695#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {11695#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:16,634 INFO L290 TraceCheckUtils]: 38: Hoare triple {11695#(<= ~counter~0 2)} ~cond := #in~cond; {11695#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:16,635 INFO L290 TraceCheckUtils]: 39: Hoare triple {11695#(<= ~counter~0 2)} assume !(0 == ~cond); {11695#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:16,635 INFO L290 TraceCheckUtils]: 40: Hoare triple {11695#(<= ~counter~0 2)} assume true; {11695#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:16,636 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {11695#(<= ~counter~0 2)} {11695#(<= ~counter~0 2)} #84#return; {11695#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:16,636 INFO L272 TraceCheckUtils]: 42: Hoare triple {11695#(<= ~counter~0 2)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {11695#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:16,636 INFO L290 TraceCheckUtils]: 43: Hoare triple {11695#(<= ~counter~0 2)} ~cond := #in~cond; {11695#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:16,636 INFO L290 TraceCheckUtils]: 44: Hoare triple {11695#(<= ~counter~0 2)} assume !(0 == ~cond); {11695#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:16,637 INFO L290 TraceCheckUtils]: 45: Hoare triple {11695#(<= ~counter~0 2)} assume true; {11695#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:16,637 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {11695#(<= ~counter~0 2)} {11695#(<= ~counter~0 2)} #86#return; {11695#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:16,637 INFO L290 TraceCheckUtils]: 47: Hoare triple {11695#(<= ~counter~0 2)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {11695#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:16,638 INFO L290 TraceCheckUtils]: 48: Hoare triple {11695#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11750#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:16,638 INFO L290 TraceCheckUtils]: 49: Hoare triple {11750#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {11750#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:16,638 INFO L272 TraceCheckUtils]: 50: Hoare triple {11750#(<= ~counter~0 3)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {11750#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:16,638 INFO L290 TraceCheckUtils]: 51: Hoare triple {11750#(<= ~counter~0 3)} ~cond := #in~cond; {11750#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:16,639 INFO L290 TraceCheckUtils]: 52: Hoare triple {11750#(<= ~counter~0 3)} assume !(0 == ~cond); {11750#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:16,639 INFO L290 TraceCheckUtils]: 53: Hoare triple {11750#(<= ~counter~0 3)} assume true; {11750#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:16,639 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {11750#(<= ~counter~0 3)} {11750#(<= ~counter~0 3)} #82#return; {11750#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:16,640 INFO L272 TraceCheckUtils]: 55: Hoare triple {11750#(<= ~counter~0 3)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {11750#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:16,640 INFO L290 TraceCheckUtils]: 56: Hoare triple {11750#(<= ~counter~0 3)} ~cond := #in~cond; {11750#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:16,640 INFO L290 TraceCheckUtils]: 57: Hoare triple {11750#(<= ~counter~0 3)} assume !(0 == ~cond); {11750#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:16,640 INFO L290 TraceCheckUtils]: 58: Hoare triple {11750#(<= ~counter~0 3)} assume true; {11750#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:16,641 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {11750#(<= ~counter~0 3)} {11750#(<= ~counter~0 3)} #84#return; {11750#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:16,641 INFO L272 TraceCheckUtils]: 60: Hoare triple {11750#(<= ~counter~0 3)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {11750#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:16,641 INFO L290 TraceCheckUtils]: 61: Hoare triple {11750#(<= ~counter~0 3)} ~cond := #in~cond; {11750#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:16,641 INFO L290 TraceCheckUtils]: 62: Hoare triple {11750#(<= ~counter~0 3)} assume !(0 == ~cond); {11750#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:16,642 INFO L290 TraceCheckUtils]: 63: Hoare triple {11750#(<= ~counter~0 3)} assume true; {11750#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:16,642 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {11750#(<= ~counter~0 3)} {11750#(<= ~counter~0 3)} #86#return; {11750#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:16,642 INFO L290 TraceCheckUtils]: 65: Hoare triple {11750#(<= ~counter~0 3)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {11750#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:16,642 INFO L290 TraceCheckUtils]: 66: Hoare triple {11750#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11805#(<= |main_#t~post6| 3)} is VALID [2022-04-08 06:21:16,643 INFO L290 TraceCheckUtils]: 67: Hoare triple {11805#(<= |main_#t~post6| 3)} assume !(#t~post6 < 10);havoc #t~post6; {11599#false} is VALID [2022-04-08 06:21:16,643 INFO L290 TraceCheckUtils]: 68: Hoare triple {11599#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11599#false} is VALID [2022-04-08 06:21:16,643 INFO L290 TraceCheckUtils]: 69: Hoare triple {11599#false} assume !(#t~post7 < 10);havoc #t~post7; {11599#false} is VALID [2022-04-08 06:21:16,643 INFO L272 TraceCheckUtils]: 70: Hoare triple {11599#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {11599#false} is VALID [2022-04-08 06:21:16,643 INFO L290 TraceCheckUtils]: 71: Hoare triple {11599#false} ~cond := #in~cond; {11599#false} is VALID [2022-04-08 06:21:16,643 INFO L290 TraceCheckUtils]: 72: Hoare triple {11599#false} assume !(0 == ~cond); {11599#false} is VALID [2022-04-08 06:21:16,643 INFO L290 TraceCheckUtils]: 73: Hoare triple {11599#false} assume true; {11599#false} is VALID [2022-04-08 06:21:16,643 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {11599#false} {11599#false} #92#return; {11599#false} is VALID [2022-04-08 06:21:16,644 INFO L272 TraceCheckUtils]: 75: Hoare triple {11599#false} call __VERIFIER_assert((if ~B~0 % 4294967296 == ~d~0 then 1 else 0)); {11599#false} is VALID [2022-04-08 06:21:16,644 INFO L290 TraceCheckUtils]: 76: Hoare triple {11599#false} ~cond := #in~cond; {11599#false} is VALID [2022-04-08 06:21:16,644 INFO L290 TraceCheckUtils]: 77: Hoare triple {11599#false} assume 0 == ~cond; {11599#false} is VALID [2022-04-08 06:21:16,644 INFO L290 TraceCheckUtils]: 78: Hoare triple {11599#false} assume !false; {11599#false} is VALID [2022-04-08 06:21:16,644 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-08 06:21:16,644 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:21:16,946 INFO L290 TraceCheckUtils]: 78: Hoare triple {11599#false} assume !false; {11599#false} is VALID [2022-04-08 06:21:16,947 INFO L290 TraceCheckUtils]: 77: Hoare triple {11599#false} assume 0 == ~cond; {11599#false} is VALID [2022-04-08 06:21:16,947 INFO L290 TraceCheckUtils]: 76: Hoare triple {11599#false} ~cond := #in~cond; {11599#false} is VALID [2022-04-08 06:21:16,947 INFO L272 TraceCheckUtils]: 75: Hoare triple {11599#false} call __VERIFIER_assert((if ~B~0 % 4294967296 == ~d~0 then 1 else 0)); {11599#false} is VALID [2022-04-08 06:21:16,947 INFO L284 TraceCheckUtils]: 74: Hoare quadruple {11598#true} {11599#false} #92#return; {11599#false} is VALID [2022-04-08 06:21:16,947 INFO L290 TraceCheckUtils]: 73: Hoare triple {11598#true} assume true; {11598#true} is VALID [2022-04-08 06:21:16,947 INFO L290 TraceCheckUtils]: 72: Hoare triple {11598#true} assume !(0 == ~cond); {11598#true} is VALID [2022-04-08 06:21:16,947 INFO L290 TraceCheckUtils]: 71: Hoare triple {11598#true} ~cond := #in~cond; {11598#true} is VALID [2022-04-08 06:21:16,947 INFO L272 TraceCheckUtils]: 70: Hoare triple {11599#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {11598#true} is VALID [2022-04-08 06:21:16,947 INFO L290 TraceCheckUtils]: 69: Hoare triple {11599#false} assume !(#t~post7 < 10);havoc #t~post7; {11599#false} is VALID [2022-04-08 06:21:16,947 INFO L290 TraceCheckUtils]: 68: Hoare triple {11599#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {11599#false} is VALID [2022-04-08 06:21:16,948 INFO L290 TraceCheckUtils]: 67: Hoare triple {11875#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {11599#false} is VALID [2022-04-08 06:21:16,948 INFO L290 TraceCheckUtils]: 66: Hoare triple {11879#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11875#(< |main_#t~post6| 10)} is VALID [2022-04-08 06:21:16,948 INFO L290 TraceCheckUtils]: 65: Hoare triple {11879#(< ~counter~0 10)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {11879#(< ~counter~0 10)} is VALID [2022-04-08 06:21:16,948 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {11598#true} {11879#(< ~counter~0 10)} #86#return; {11879#(< ~counter~0 10)} is VALID [2022-04-08 06:21:16,949 INFO L290 TraceCheckUtils]: 63: Hoare triple {11598#true} assume true; {11598#true} is VALID [2022-04-08 06:21:16,949 INFO L290 TraceCheckUtils]: 62: Hoare triple {11598#true} assume !(0 == ~cond); {11598#true} is VALID [2022-04-08 06:21:16,949 INFO L290 TraceCheckUtils]: 61: Hoare triple {11598#true} ~cond := #in~cond; {11598#true} is VALID [2022-04-08 06:21:16,949 INFO L272 TraceCheckUtils]: 60: Hoare triple {11879#(< ~counter~0 10)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {11598#true} is VALID [2022-04-08 06:21:16,949 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {11598#true} {11879#(< ~counter~0 10)} #84#return; {11879#(< ~counter~0 10)} is VALID [2022-04-08 06:21:16,949 INFO L290 TraceCheckUtils]: 58: Hoare triple {11598#true} assume true; {11598#true} is VALID [2022-04-08 06:21:16,949 INFO L290 TraceCheckUtils]: 57: Hoare triple {11598#true} assume !(0 == ~cond); {11598#true} is VALID [2022-04-08 06:21:16,949 INFO L290 TraceCheckUtils]: 56: Hoare triple {11598#true} ~cond := #in~cond; {11598#true} is VALID [2022-04-08 06:21:16,949 INFO L272 TraceCheckUtils]: 55: Hoare triple {11879#(< ~counter~0 10)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {11598#true} is VALID [2022-04-08 06:21:16,950 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {11598#true} {11879#(< ~counter~0 10)} #82#return; {11879#(< ~counter~0 10)} is VALID [2022-04-08 06:21:16,950 INFO L290 TraceCheckUtils]: 53: Hoare triple {11598#true} assume true; {11598#true} is VALID [2022-04-08 06:21:16,950 INFO L290 TraceCheckUtils]: 52: Hoare triple {11598#true} assume !(0 == ~cond); {11598#true} is VALID [2022-04-08 06:21:16,950 INFO L290 TraceCheckUtils]: 51: Hoare triple {11598#true} ~cond := #in~cond; {11598#true} is VALID [2022-04-08 06:21:16,950 INFO L272 TraceCheckUtils]: 50: Hoare triple {11879#(< ~counter~0 10)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {11598#true} is VALID [2022-04-08 06:21:16,950 INFO L290 TraceCheckUtils]: 49: Hoare triple {11879#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {11879#(< ~counter~0 10)} is VALID [2022-04-08 06:21:16,951 INFO L290 TraceCheckUtils]: 48: Hoare triple {11934#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11879#(< ~counter~0 10)} is VALID [2022-04-08 06:21:16,951 INFO L290 TraceCheckUtils]: 47: Hoare triple {11934#(< ~counter~0 9)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {11934#(< ~counter~0 9)} is VALID [2022-04-08 06:21:16,951 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {11598#true} {11934#(< ~counter~0 9)} #86#return; {11934#(< ~counter~0 9)} is VALID [2022-04-08 06:21:16,951 INFO L290 TraceCheckUtils]: 45: Hoare triple {11598#true} assume true; {11598#true} is VALID [2022-04-08 06:21:16,951 INFO L290 TraceCheckUtils]: 44: Hoare triple {11598#true} assume !(0 == ~cond); {11598#true} is VALID [2022-04-08 06:21:16,951 INFO L290 TraceCheckUtils]: 43: Hoare triple {11598#true} ~cond := #in~cond; {11598#true} is VALID [2022-04-08 06:21:16,952 INFO L272 TraceCheckUtils]: 42: Hoare triple {11934#(< ~counter~0 9)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {11598#true} is VALID [2022-04-08 06:21:16,952 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {11598#true} {11934#(< ~counter~0 9)} #84#return; {11934#(< ~counter~0 9)} is VALID [2022-04-08 06:21:16,952 INFO L290 TraceCheckUtils]: 40: Hoare triple {11598#true} assume true; {11598#true} is VALID [2022-04-08 06:21:16,952 INFO L290 TraceCheckUtils]: 39: Hoare triple {11598#true} assume !(0 == ~cond); {11598#true} is VALID [2022-04-08 06:21:16,952 INFO L290 TraceCheckUtils]: 38: Hoare triple {11598#true} ~cond := #in~cond; {11598#true} is VALID [2022-04-08 06:21:16,952 INFO L272 TraceCheckUtils]: 37: Hoare triple {11934#(< ~counter~0 9)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {11598#true} is VALID [2022-04-08 06:21:16,977 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {11598#true} {11934#(< ~counter~0 9)} #82#return; {11934#(< ~counter~0 9)} is VALID [2022-04-08 06:21:16,978 INFO L290 TraceCheckUtils]: 35: Hoare triple {11598#true} assume true; {11598#true} is VALID [2022-04-08 06:21:16,978 INFO L290 TraceCheckUtils]: 34: Hoare triple {11598#true} assume !(0 == ~cond); {11598#true} is VALID [2022-04-08 06:21:16,978 INFO L290 TraceCheckUtils]: 33: Hoare triple {11598#true} ~cond := #in~cond; {11598#true} is VALID [2022-04-08 06:21:16,978 INFO L272 TraceCheckUtils]: 32: Hoare triple {11934#(< ~counter~0 9)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {11598#true} is VALID [2022-04-08 06:21:16,978 INFO L290 TraceCheckUtils]: 31: Hoare triple {11934#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {11934#(< ~counter~0 9)} is VALID [2022-04-08 06:21:16,979 INFO L290 TraceCheckUtils]: 30: Hoare triple {11989#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11934#(< ~counter~0 9)} is VALID [2022-04-08 06:21:16,979 INFO L290 TraceCheckUtils]: 29: Hoare triple {11989#(< ~counter~0 8)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {11989#(< ~counter~0 8)} is VALID [2022-04-08 06:21:16,979 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {11598#true} {11989#(< ~counter~0 8)} #86#return; {11989#(< ~counter~0 8)} is VALID [2022-04-08 06:21:16,979 INFO L290 TraceCheckUtils]: 27: Hoare triple {11598#true} assume true; {11598#true} is VALID [2022-04-08 06:21:16,979 INFO L290 TraceCheckUtils]: 26: Hoare triple {11598#true} assume !(0 == ~cond); {11598#true} is VALID [2022-04-08 06:21:16,979 INFO L290 TraceCheckUtils]: 25: Hoare triple {11598#true} ~cond := #in~cond; {11598#true} is VALID [2022-04-08 06:21:16,979 INFO L272 TraceCheckUtils]: 24: Hoare triple {11989#(< ~counter~0 8)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {11598#true} is VALID [2022-04-08 06:21:16,980 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {11598#true} {11989#(< ~counter~0 8)} #84#return; {11989#(< ~counter~0 8)} is VALID [2022-04-08 06:21:16,980 INFO L290 TraceCheckUtils]: 22: Hoare triple {11598#true} assume true; {11598#true} is VALID [2022-04-08 06:21:16,980 INFO L290 TraceCheckUtils]: 21: Hoare triple {11598#true} assume !(0 == ~cond); {11598#true} is VALID [2022-04-08 06:21:16,980 INFO L290 TraceCheckUtils]: 20: Hoare triple {11598#true} ~cond := #in~cond; {11598#true} is VALID [2022-04-08 06:21:16,980 INFO L272 TraceCheckUtils]: 19: Hoare triple {11989#(< ~counter~0 8)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {11598#true} is VALID [2022-04-08 06:21:16,980 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {11598#true} {11989#(< ~counter~0 8)} #82#return; {11989#(< ~counter~0 8)} is VALID [2022-04-08 06:21:16,980 INFO L290 TraceCheckUtils]: 17: Hoare triple {11598#true} assume true; {11598#true} is VALID [2022-04-08 06:21:16,980 INFO L290 TraceCheckUtils]: 16: Hoare triple {11598#true} assume !(0 == ~cond); {11598#true} is VALID [2022-04-08 06:21:16,981 INFO L290 TraceCheckUtils]: 15: Hoare triple {11598#true} ~cond := #in~cond; {11598#true} is VALID [2022-04-08 06:21:16,981 INFO L272 TraceCheckUtils]: 14: Hoare triple {11989#(< ~counter~0 8)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {11598#true} is VALID [2022-04-08 06:21:16,981 INFO L290 TraceCheckUtils]: 13: Hoare triple {11989#(< ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {11989#(< ~counter~0 8)} is VALID [2022-04-08 06:21:16,981 INFO L290 TraceCheckUtils]: 12: Hoare triple {12044#(< ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {11989#(< ~counter~0 8)} is VALID [2022-04-08 06:21:16,981 INFO L290 TraceCheckUtils]: 11: Hoare triple {12044#(< ~counter~0 7)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {12044#(< ~counter~0 7)} is VALID [2022-04-08 06:21:16,982 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {11598#true} {12044#(< ~counter~0 7)} #80#return; {12044#(< ~counter~0 7)} is VALID [2022-04-08 06:21:16,982 INFO L290 TraceCheckUtils]: 9: Hoare triple {11598#true} assume true; {11598#true} is VALID [2022-04-08 06:21:16,982 INFO L290 TraceCheckUtils]: 8: Hoare triple {11598#true} assume !(0 == ~cond); {11598#true} is VALID [2022-04-08 06:21:16,982 INFO L290 TraceCheckUtils]: 7: Hoare triple {11598#true} ~cond := #in~cond; {11598#true} is VALID [2022-04-08 06:21:16,982 INFO L272 TraceCheckUtils]: 6: Hoare triple {12044#(< ~counter~0 7)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {11598#true} is VALID [2022-04-08 06:21:16,982 INFO L290 TraceCheckUtils]: 5: Hoare triple {12044#(< ~counter~0 7)} 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; {12044#(< ~counter~0 7)} is VALID [2022-04-08 06:21:16,983 INFO L272 TraceCheckUtils]: 4: Hoare triple {12044#(< ~counter~0 7)} call #t~ret8 := main(); {12044#(< ~counter~0 7)} is VALID [2022-04-08 06:21:16,983 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12044#(< ~counter~0 7)} {11598#true} #96#return; {12044#(< ~counter~0 7)} is VALID [2022-04-08 06:21:16,983 INFO L290 TraceCheckUtils]: 2: Hoare triple {12044#(< ~counter~0 7)} assume true; {12044#(< ~counter~0 7)} is VALID [2022-04-08 06:21:16,983 INFO L290 TraceCheckUtils]: 1: Hoare triple {11598#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; {12044#(< ~counter~0 7)} is VALID [2022-04-08 06:21:16,984 INFO L272 TraceCheckUtils]: 0: Hoare triple {11598#true} call ULTIMATE.init(); {11598#true} is VALID [2022-04-08 06:21:16,984 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-08 06:21:16,984 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:21:16,984 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2099467102] [2022-04-08 06:21:16,984 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:21:16,984 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1428626237] [2022-04-08 06:21:16,984 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1428626237] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:21:16,984 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:21:16,984 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 12 [2022-04-08 06:21:16,985 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:21:16,985 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1704593625] [2022-04-08 06:21:16,985 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1704593625] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:21:16,985 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:21:16,985 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-08 06:21:16,985 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1296149715] [2022-04-08 06:21:16,985 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:21:16,985 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-08 06:21:16,986 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:21:16,986 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-08 06:21:17,026 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-08 06:21:17,026 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-08 06:21:17,026 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:21:17,026 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-08 06:21:17,026 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=50, Invalid=82, Unknown=0, NotChecked=0, Total=132 [2022-04-08 06:21:17,027 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-08 06:21:17,328 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:21:17,328 INFO L93 Difference]: Finished difference Result 170 states and 207 transitions. [2022-04-08 06:21:17,328 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-08 06:21:17,328 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-08 06:21:17,328 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:21:17,329 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-08 06:21:17,331 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 102 transitions. [2022-04-08 06:21:17,331 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-08 06:21:17,333 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 102 transitions. [2022-04-08 06:21:17,333 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 102 transitions. [2022-04-08 06:21:17,418 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-08 06:21:17,420 INFO L225 Difference]: With dead ends: 170 [2022-04-08 06:21:17,420 INFO L226 Difference]: Without dead ends: 127 [2022-04-08 06:21:17,421 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 160 GetRequests, 147 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=83, Invalid=127, Unknown=0, NotChecked=0, Total=210 [2022-04-08 06:21:17,421 INFO L913 BasicCegarLoop]: 48 mSDtfsCounter, 7 mSDsluCounter, 129 mSDsCounter, 0 mSdLazyCounter, 39 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 7 SdHoareTripleChecker+Valid, 177 SdHoareTripleChecker+Invalid, 44 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 39 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-08 06:21:17,421 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [7 Valid, 177 Invalid, 44 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 39 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-08 06:21:17,421 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 127 states. [2022-04-08 06:21:17,531 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 127 to 127. [2022-04-08 06:21:17,531 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:21:17,532 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-08 06:21:17,532 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-08 06:21:17,532 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-08 06:21:17,535 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:21:17,535 INFO L93 Difference]: Finished difference Result 127 states and 147 transitions. [2022-04-08 06:21:17,535 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 147 transitions. [2022-04-08 06:21:17,535 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:21:17,535 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:21:17,536 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-08 06:21:17,536 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-08 06:21:17,538 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:21:17,538 INFO L93 Difference]: Finished difference Result 127 states and 147 transitions. [2022-04-08 06:21:17,538 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 147 transitions. [2022-04-08 06:21:17,538 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:21:17,538 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:21:17,538 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:21:17,538 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:21:17,538 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-08 06:21:17,552 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 127 states to 127 states and 147 transitions. [2022-04-08 06:21:17,552 INFO L78 Accepts]: Start accepts. Automaton has 127 states and 147 transitions. Word has length 79 [2022-04-08 06:21:17,552 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:21:17,552 INFO L478 AbstractCegarLoop]: Abstraction has 127 states and 147 transitions. [2022-04-08 06:21:17,552 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-08 06:21:17,553 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 127 states and 147 transitions. [2022-04-08 06:21:19,728 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-08 06:21:19,728 INFO L276 IsEmpty]: Start isEmpty. Operand 127 states and 147 transitions. [2022-04-08 06:21:19,729 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 87 [2022-04-08 06:21:19,729 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:21:19,729 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-08 06:21:19,747 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (14)] Forceful destruction successful, exit code 0 [2022-04-08 06:21:19,929 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-08 06:21:19,929 INFO L403 AbstractCegarLoop]: === Iteration 17 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:21:19,929 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:21:19,930 INFO L85 PathProgramCache]: Analyzing trace with hash -1069895175, now seen corresponding path program 3 times [2022-04-08 06:21:19,930 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:21:19,930 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [430785938] [2022-04-08 06:21:28,403 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-08 06:21:28,403 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-08 06:21:28,403 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 06:21:28,404 INFO L85 PathProgramCache]: Analyzing trace with hash -1069895175, now seen corresponding path program 4 times [2022-04-08 06:21:28,404 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:21:28,404 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [366560204] [2022-04-08 06:21:28,404 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:21:28,404 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:21:28,428 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:21:28,428 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [385891515] [2022-04-08 06:21:28,428 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 06:21:28,428 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:21:28,428 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:21:28,440 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-08 06:21:28,441 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-08 06:21:28,485 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 06:21:28,486 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:21:28,486 INFO L263 TraceCheckSpWp]: Trace formula consists of 222 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-08 06:21:28,504 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:21:28,505 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:21:28,862 INFO L272 TraceCheckUtils]: 0: Hoare triple {12937#true} call ULTIMATE.init(); {12937#true} is VALID [2022-04-08 06:21:28,862 INFO L290 TraceCheckUtils]: 1: Hoare triple {12937#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; {12945#(<= ~counter~0 0)} is VALID [2022-04-08 06:21:28,863 INFO L290 TraceCheckUtils]: 2: Hoare triple {12945#(<= ~counter~0 0)} assume true; {12945#(<= ~counter~0 0)} is VALID [2022-04-08 06:21:28,863 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {12945#(<= ~counter~0 0)} {12937#true} #96#return; {12945#(<= ~counter~0 0)} is VALID [2022-04-08 06:21:28,863 INFO L272 TraceCheckUtils]: 4: Hoare triple {12945#(<= ~counter~0 0)} call #t~ret8 := main(); {12945#(<= ~counter~0 0)} is VALID [2022-04-08 06:21:28,864 INFO L290 TraceCheckUtils]: 5: Hoare triple {12945#(<= ~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; {12945#(<= ~counter~0 0)} is VALID [2022-04-08 06:21:28,864 INFO L272 TraceCheckUtils]: 6: Hoare triple {12945#(<= ~counter~0 0)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {12945#(<= ~counter~0 0)} is VALID [2022-04-08 06:21:28,864 INFO L290 TraceCheckUtils]: 7: Hoare triple {12945#(<= ~counter~0 0)} ~cond := #in~cond; {12945#(<= ~counter~0 0)} is VALID [2022-04-08 06:21:28,865 INFO L290 TraceCheckUtils]: 8: Hoare triple {12945#(<= ~counter~0 0)} assume !(0 == ~cond); {12945#(<= ~counter~0 0)} is VALID [2022-04-08 06:21:28,865 INFO L290 TraceCheckUtils]: 9: Hoare triple {12945#(<= ~counter~0 0)} assume true; {12945#(<= ~counter~0 0)} is VALID [2022-04-08 06:21:28,865 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12945#(<= ~counter~0 0)} {12945#(<= ~counter~0 0)} #80#return; {12945#(<= ~counter~0 0)} is VALID [2022-04-08 06:21:28,866 INFO L290 TraceCheckUtils]: 11: Hoare triple {12945#(<= ~counter~0 0)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {12945#(<= ~counter~0 0)} is VALID [2022-04-08 06:21:28,866 INFO L290 TraceCheckUtils]: 12: Hoare triple {12945#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {12979#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:28,867 INFO L290 TraceCheckUtils]: 13: Hoare triple {12979#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {12979#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:28,867 INFO L272 TraceCheckUtils]: 14: Hoare triple {12979#(<= ~counter~0 1)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {12979#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:28,867 INFO L290 TraceCheckUtils]: 15: Hoare triple {12979#(<= ~counter~0 1)} ~cond := #in~cond; {12979#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:28,868 INFO L290 TraceCheckUtils]: 16: Hoare triple {12979#(<= ~counter~0 1)} assume !(0 == ~cond); {12979#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:28,868 INFO L290 TraceCheckUtils]: 17: Hoare triple {12979#(<= ~counter~0 1)} assume true; {12979#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:28,868 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {12979#(<= ~counter~0 1)} {12979#(<= ~counter~0 1)} #82#return; {12979#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:28,869 INFO L272 TraceCheckUtils]: 19: Hoare triple {12979#(<= ~counter~0 1)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {12979#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:28,869 INFO L290 TraceCheckUtils]: 20: Hoare triple {12979#(<= ~counter~0 1)} ~cond := #in~cond; {12979#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:28,869 INFO L290 TraceCheckUtils]: 21: Hoare triple {12979#(<= ~counter~0 1)} assume !(0 == ~cond); {12979#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:28,870 INFO L290 TraceCheckUtils]: 22: Hoare triple {12979#(<= ~counter~0 1)} assume true; {12979#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:28,870 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {12979#(<= ~counter~0 1)} {12979#(<= ~counter~0 1)} #84#return; {12979#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:28,871 INFO L272 TraceCheckUtils]: 24: Hoare triple {12979#(<= ~counter~0 1)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {12979#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:28,871 INFO L290 TraceCheckUtils]: 25: Hoare triple {12979#(<= ~counter~0 1)} ~cond := #in~cond; {12979#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:28,871 INFO L290 TraceCheckUtils]: 26: Hoare triple {12979#(<= ~counter~0 1)} assume !(0 == ~cond); {12979#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:28,872 INFO L290 TraceCheckUtils]: 27: Hoare triple {12979#(<= ~counter~0 1)} assume true; {12979#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:28,872 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {12979#(<= ~counter~0 1)} {12979#(<= ~counter~0 1)} #86#return; {12979#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:28,872 INFO L290 TraceCheckUtils]: 29: Hoare triple {12979#(<= ~counter~0 1)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {12979#(<= ~counter~0 1)} is VALID [2022-04-08 06:21:28,873 INFO L290 TraceCheckUtils]: 30: Hoare triple {12979#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13034#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:28,873 INFO L290 TraceCheckUtils]: 31: Hoare triple {13034#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {13034#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:28,874 INFO L272 TraceCheckUtils]: 32: Hoare triple {13034#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {13034#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:28,874 INFO L290 TraceCheckUtils]: 33: Hoare triple {13034#(<= ~counter~0 2)} ~cond := #in~cond; {13034#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:28,874 INFO L290 TraceCheckUtils]: 34: Hoare triple {13034#(<= ~counter~0 2)} assume !(0 == ~cond); {13034#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:28,874 INFO L290 TraceCheckUtils]: 35: Hoare triple {13034#(<= ~counter~0 2)} assume true; {13034#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:28,875 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {13034#(<= ~counter~0 2)} {13034#(<= ~counter~0 2)} #82#return; {13034#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:28,875 INFO L272 TraceCheckUtils]: 37: Hoare triple {13034#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {13034#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:28,876 INFO L290 TraceCheckUtils]: 38: Hoare triple {13034#(<= ~counter~0 2)} ~cond := #in~cond; {13034#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:28,876 INFO L290 TraceCheckUtils]: 39: Hoare triple {13034#(<= ~counter~0 2)} assume !(0 == ~cond); {13034#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:28,876 INFO L290 TraceCheckUtils]: 40: Hoare triple {13034#(<= ~counter~0 2)} assume true; {13034#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:28,877 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {13034#(<= ~counter~0 2)} {13034#(<= ~counter~0 2)} #84#return; {13034#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:28,877 INFO L272 TraceCheckUtils]: 42: Hoare triple {13034#(<= ~counter~0 2)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {13034#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:28,877 INFO L290 TraceCheckUtils]: 43: Hoare triple {13034#(<= ~counter~0 2)} ~cond := #in~cond; {13034#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:28,878 INFO L290 TraceCheckUtils]: 44: Hoare triple {13034#(<= ~counter~0 2)} assume !(0 == ~cond); {13034#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:28,878 INFO L290 TraceCheckUtils]: 45: Hoare triple {13034#(<= ~counter~0 2)} assume true; {13034#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:28,878 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {13034#(<= ~counter~0 2)} {13034#(<= ~counter~0 2)} #86#return; {13034#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:28,879 INFO L290 TraceCheckUtils]: 47: Hoare triple {13034#(<= ~counter~0 2)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {13034#(<= ~counter~0 2)} is VALID [2022-04-08 06:21:28,879 INFO L290 TraceCheckUtils]: 48: Hoare triple {13034#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13089#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:28,879 INFO L290 TraceCheckUtils]: 49: Hoare triple {13089#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {13089#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:28,880 INFO L272 TraceCheckUtils]: 50: Hoare triple {13089#(<= ~counter~0 3)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {13089#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:28,880 INFO L290 TraceCheckUtils]: 51: Hoare triple {13089#(<= ~counter~0 3)} ~cond := #in~cond; {13089#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:28,880 INFO L290 TraceCheckUtils]: 52: Hoare triple {13089#(<= ~counter~0 3)} assume !(0 == ~cond); {13089#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:28,881 INFO L290 TraceCheckUtils]: 53: Hoare triple {13089#(<= ~counter~0 3)} assume true; {13089#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:28,881 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {13089#(<= ~counter~0 3)} {13089#(<= ~counter~0 3)} #82#return; {13089#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:28,882 INFO L272 TraceCheckUtils]: 55: Hoare triple {13089#(<= ~counter~0 3)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {13089#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:28,882 INFO L290 TraceCheckUtils]: 56: Hoare triple {13089#(<= ~counter~0 3)} ~cond := #in~cond; {13089#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:28,882 INFO L290 TraceCheckUtils]: 57: Hoare triple {13089#(<= ~counter~0 3)} assume !(0 == ~cond); {13089#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:28,882 INFO L290 TraceCheckUtils]: 58: Hoare triple {13089#(<= ~counter~0 3)} assume true; {13089#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:28,883 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {13089#(<= ~counter~0 3)} {13089#(<= ~counter~0 3)} #84#return; {13089#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:28,883 INFO L272 TraceCheckUtils]: 60: Hoare triple {13089#(<= ~counter~0 3)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {13089#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:28,884 INFO L290 TraceCheckUtils]: 61: Hoare triple {13089#(<= ~counter~0 3)} ~cond := #in~cond; {13089#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:28,884 INFO L290 TraceCheckUtils]: 62: Hoare triple {13089#(<= ~counter~0 3)} assume !(0 == ~cond); {13089#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:28,884 INFO L290 TraceCheckUtils]: 63: Hoare triple {13089#(<= ~counter~0 3)} assume true; {13089#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:28,885 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {13089#(<= ~counter~0 3)} {13089#(<= ~counter~0 3)} #86#return; {13089#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:28,885 INFO L290 TraceCheckUtils]: 65: Hoare triple {13089#(<= ~counter~0 3)} assume !(~r~0 >= ~d~0); {13089#(<= ~counter~0 3)} is VALID [2022-04-08 06:21:28,885 INFO L290 TraceCheckUtils]: 66: Hoare triple {13089#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {13144#(<= ~counter~0 4)} is VALID [2022-04-08 06:21:28,886 INFO L290 TraceCheckUtils]: 67: Hoare triple {13144#(<= ~counter~0 4)} assume !!(#t~post7 < 10);havoc #t~post7; {13144#(<= ~counter~0 4)} is VALID [2022-04-08 06:21:28,886 INFO L272 TraceCheckUtils]: 68: Hoare triple {13144#(<= ~counter~0 4)} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {13144#(<= ~counter~0 4)} is VALID [2022-04-08 06:21:28,887 INFO L290 TraceCheckUtils]: 69: Hoare triple {13144#(<= ~counter~0 4)} ~cond := #in~cond; {13144#(<= ~counter~0 4)} is VALID [2022-04-08 06:21:28,887 INFO L290 TraceCheckUtils]: 70: Hoare triple {13144#(<= ~counter~0 4)} assume !(0 == ~cond); {13144#(<= ~counter~0 4)} is VALID [2022-04-08 06:21:28,887 INFO L290 TraceCheckUtils]: 71: Hoare triple {13144#(<= ~counter~0 4)} assume true; {13144#(<= ~counter~0 4)} is VALID [2022-04-08 06:21:28,888 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {13144#(<= ~counter~0 4)} {13144#(<= ~counter~0 4)} #88#return; {13144#(<= ~counter~0 4)} is VALID [2022-04-08 06:21:28,888 INFO L272 TraceCheckUtils]: 73: Hoare triple {13144#(<= ~counter~0 4)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {13144#(<= ~counter~0 4)} is VALID [2022-04-08 06:21:28,888 INFO L290 TraceCheckUtils]: 74: Hoare triple {13144#(<= ~counter~0 4)} ~cond := #in~cond; {13144#(<= ~counter~0 4)} is VALID [2022-04-08 06:21:28,889 INFO L290 TraceCheckUtils]: 75: Hoare triple {13144#(<= ~counter~0 4)} assume !(0 == ~cond); {13144#(<= ~counter~0 4)} is VALID [2022-04-08 06:21:28,889 INFO L290 TraceCheckUtils]: 76: Hoare triple {13144#(<= ~counter~0 4)} assume true; {13144#(<= ~counter~0 4)} is VALID [2022-04-08 06:21:28,889 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {13144#(<= ~counter~0 4)} {13144#(<= ~counter~0 4)} #90#return; {13144#(<= ~counter~0 4)} is VALID [2022-04-08 06:21:28,890 INFO L290 TraceCheckUtils]: 78: Hoare triple {13144#(<= ~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); {13144#(<= ~counter~0 4)} is VALID [2022-04-08 06:21:28,890 INFO L290 TraceCheckUtils]: 79: Hoare triple {13144#(<= ~counter~0 4)} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {13144#(<= ~counter~0 4)} is VALID [2022-04-08 06:21:28,890 INFO L290 TraceCheckUtils]: 80: Hoare triple {13144#(<= ~counter~0 4)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {13187#(<= |main_#t~post7| 4)} is VALID [2022-04-08 06:21:28,891 INFO L290 TraceCheckUtils]: 81: Hoare triple {13187#(<= |main_#t~post7| 4)} assume !(#t~post7 < 10);havoc #t~post7; {12938#false} is VALID [2022-04-08 06:21:28,891 INFO L272 TraceCheckUtils]: 82: Hoare triple {12938#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {12938#false} is VALID [2022-04-08 06:21:28,891 INFO L290 TraceCheckUtils]: 83: Hoare triple {12938#false} ~cond := #in~cond; {12938#false} is VALID [2022-04-08 06:21:28,891 INFO L290 TraceCheckUtils]: 84: Hoare triple {12938#false} assume 0 == ~cond; {12938#false} is VALID [2022-04-08 06:21:28,891 INFO L290 TraceCheckUtils]: 85: Hoare triple {12938#false} assume !false; {12938#false} is VALID [2022-04-08 06:21:28,891 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-08 06:21:28,891 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:21:29,229 INFO L290 TraceCheckUtils]: 85: Hoare triple {12938#false} assume !false; {12938#false} is VALID [2022-04-08 06:21:29,230 INFO L290 TraceCheckUtils]: 84: Hoare triple {12938#false} assume 0 == ~cond; {12938#false} is VALID [2022-04-08 06:21:29,230 INFO L290 TraceCheckUtils]: 83: Hoare triple {12938#false} ~cond := #in~cond; {12938#false} is VALID [2022-04-08 06:21:29,230 INFO L272 TraceCheckUtils]: 82: Hoare triple {12938#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {12938#false} is VALID [2022-04-08 06:21:29,230 INFO L290 TraceCheckUtils]: 81: Hoare triple {13215#(< |main_#t~post7| 10)} assume !(#t~post7 < 10);havoc #t~post7; {12938#false} is VALID [2022-04-08 06:21:29,230 INFO L290 TraceCheckUtils]: 80: Hoare triple {13219#(< ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {13215#(< |main_#t~post7| 10)} is VALID [2022-04-08 06:21:29,231 INFO L290 TraceCheckUtils]: 79: Hoare triple {13219#(< ~counter~0 10)} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {13219#(< ~counter~0 10)} is VALID [2022-04-08 06:21:29,231 INFO L290 TraceCheckUtils]: 78: Hoare triple {13219#(< ~counter~0 10)} 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); {13219#(< ~counter~0 10)} is VALID [2022-04-08 06:21:29,231 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {12937#true} {13219#(< ~counter~0 10)} #90#return; {13219#(< ~counter~0 10)} is VALID [2022-04-08 06:21:29,231 INFO L290 TraceCheckUtils]: 76: Hoare triple {12937#true} assume true; {12937#true} is VALID [2022-04-08 06:21:29,231 INFO L290 TraceCheckUtils]: 75: Hoare triple {12937#true} assume !(0 == ~cond); {12937#true} is VALID [2022-04-08 06:21:29,232 INFO L290 TraceCheckUtils]: 74: Hoare triple {12937#true} ~cond := #in~cond; {12937#true} is VALID [2022-04-08 06:21:29,232 INFO L272 TraceCheckUtils]: 73: Hoare triple {13219#(< ~counter~0 10)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {12937#true} is VALID [2022-04-08 06:21:29,232 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {12937#true} {13219#(< ~counter~0 10)} #88#return; {13219#(< ~counter~0 10)} is VALID [2022-04-08 06:21:29,232 INFO L290 TraceCheckUtils]: 71: Hoare triple {12937#true} assume true; {12937#true} is VALID [2022-04-08 06:21:29,232 INFO L290 TraceCheckUtils]: 70: Hoare triple {12937#true} assume !(0 == ~cond); {12937#true} is VALID [2022-04-08 06:21:29,232 INFO L290 TraceCheckUtils]: 69: Hoare triple {12937#true} ~cond := #in~cond; {12937#true} is VALID [2022-04-08 06:21:29,232 INFO L272 TraceCheckUtils]: 68: Hoare triple {13219#(< ~counter~0 10)} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {12937#true} is VALID [2022-04-08 06:21:29,233 INFO L290 TraceCheckUtils]: 67: Hoare triple {13219#(< ~counter~0 10)} assume !!(#t~post7 < 10);havoc #t~post7; {13219#(< ~counter~0 10)} is VALID [2022-04-08 06:21:29,233 INFO L290 TraceCheckUtils]: 66: Hoare triple {13262#(< ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {13219#(< ~counter~0 10)} is VALID [2022-04-08 06:21:29,233 INFO L290 TraceCheckUtils]: 65: Hoare triple {13262#(< ~counter~0 9)} assume !(~r~0 >= ~d~0); {13262#(< ~counter~0 9)} is VALID [2022-04-08 06:21:29,234 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {12937#true} {13262#(< ~counter~0 9)} #86#return; {13262#(< ~counter~0 9)} is VALID [2022-04-08 06:21:29,234 INFO L290 TraceCheckUtils]: 63: Hoare triple {12937#true} assume true; {12937#true} is VALID [2022-04-08 06:21:29,234 INFO L290 TraceCheckUtils]: 62: Hoare triple {12937#true} assume !(0 == ~cond); {12937#true} is VALID [2022-04-08 06:21:29,234 INFO L290 TraceCheckUtils]: 61: Hoare triple {12937#true} ~cond := #in~cond; {12937#true} is VALID [2022-04-08 06:21:29,234 INFO L272 TraceCheckUtils]: 60: Hoare triple {13262#(< ~counter~0 9)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {12937#true} is VALID [2022-04-08 06:21:29,234 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {12937#true} {13262#(< ~counter~0 9)} #84#return; {13262#(< ~counter~0 9)} is VALID [2022-04-08 06:21:29,234 INFO L290 TraceCheckUtils]: 58: Hoare triple {12937#true} assume true; {12937#true} is VALID [2022-04-08 06:21:29,235 INFO L290 TraceCheckUtils]: 57: Hoare triple {12937#true} assume !(0 == ~cond); {12937#true} is VALID [2022-04-08 06:21:29,235 INFO L290 TraceCheckUtils]: 56: Hoare triple {12937#true} ~cond := #in~cond; {12937#true} is VALID [2022-04-08 06:21:29,235 INFO L272 TraceCheckUtils]: 55: Hoare triple {13262#(< ~counter~0 9)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {12937#true} is VALID [2022-04-08 06:21:29,235 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {12937#true} {13262#(< ~counter~0 9)} #82#return; {13262#(< ~counter~0 9)} is VALID [2022-04-08 06:21:29,235 INFO L290 TraceCheckUtils]: 53: Hoare triple {12937#true} assume true; {12937#true} is VALID [2022-04-08 06:21:29,235 INFO L290 TraceCheckUtils]: 52: Hoare triple {12937#true} assume !(0 == ~cond); {12937#true} is VALID [2022-04-08 06:21:29,235 INFO L290 TraceCheckUtils]: 51: Hoare triple {12937#true} ~cond := #in~cond; {12937#true} is VALID [2022-04-08 06:21:29,235 INFO L272 TraceCheckUtils]: 50: Hoare triple {13262#(< ~counter~0 9)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {12937#true} is VALID [2022-04-08 06:21:29,236 INFO L290 TraceCheckUtils]: 49: Hoare triple {13262#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {13262#(< ~counter~0 9)} is VALID [2022-04-08 06:21:29,236 INFO L290 TraceCheckUtils]: 48: Hoare triple {13317#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13262#(< ~counter~0 9)} is VALID [2022-04-08 06:21:29,236 INFO L290 TraceCheckUtils]: 47: Hoare triple {13317#(< ~counter~0 8)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {13317#(< ~counter~0 8)} is VALID [2022-04-08 06:21:29,237 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {12937#true} {13317#(< ~counter~0 8)} #86#return; {13317#(< ~counter~0 8)} is VALID [2022-04-08 06:21:29,237 INFO L290 TraceCheckUtils]: 45: Hoare triple {12937#true} assume true; {12937#true} is VALID [2022-04-08 06:21:29,237 INFO L290 TraceCheckUtils]: 44: Hoare triple {12937#true} assume !(0 == ~cond); {12937#true} is VALID [2022-04-08 06:21:29,237 INFO L290 TraceCheckUtils]: 43: Hoare triple {12937#true} ~cond := #in~cond; {12937#true} is VALID [2022-04-08 06:21:29,237 INFO L272 TraceCheckUtils]: 42: Hoare triple {13317#(< ~counter~0 8)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {12937#true} is VALID [2022-04-08 06:21:29,237 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {12937#true} {13317#(< ~counter~0 8)} #84#return; {13317#(< ~counter~0 8)} is VALID [2022-04-08 06:21:29,237 INFO L290 TraceCheckUtils]: 40: Hoare triple {12937#true} assume true; {12937#true} is VALID [2022-04-08 06:21:29,237 INFO L290 TraceCheckUtils]: 39: Hoare triple {12937#true} assume !(0 == ~cond); {12937#true} is VALID [2022-04-08 06:21:29,238 INFO L290 TraceCheckUtils]: 38: Hoare triple {12937#true} ~cond := #in~cond; {12937#true} is VALID [2022-04-08 06:21:29,238 INFO L272 TraceCheckUtils]: 37: Hoare triple {13317#(< ~counter~0 8)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {12937#true} is VALID [2022-04-08 06:21:29,238 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {12937#true} {13317#(< ~counter~0 8)} #82#return; {13317#(< ~counter~0 8)} is VALID [2022-04-08 06:21:29,238 INFO L290 TraceCheckUtils]: 35: Hoare triple {12937#true} assume true; {12937#true} is VALID [2022-04-08 06:21:29,238 INFO L290 TraceCheckUtils]: 34: Hoare triple {12937#true} assume !(0 == ~cond); {12937#true} is VALID [2022-04-08 06:21:29,238 INFO L290 TraceCheckUtils]: 33: Hoare triple {12937#true} ~cond := #in~cond; {12937#true} is VALID [2022-04-08 06:21:29,238 INFO L272 TraceCheckUtils]: 32: Hoare triple {13317#(< ~counter~0 8)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {12937#true} is VALID [2022-04-08 06:21:29,239 INFO L290 TraceCheckUtils]: 31: Hoare triple {13317#(< ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {13317#(< ~counter~0 8)} is VALID [2022-04-08 06:21:29,239 INFO L290 TraceCheckUtils]: 30: Hoare triple {13372#(< ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13317#(< ~counter~0 8)} is VALID [2022-04-08 06:21:29,239 INFO L290 TraceCheckUtils]: 29: Hoare triple {13372#(< ~counter~0 7)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {13372#(< ~counter~0 7)} is VALID [2022-04-08 06:21:29,240 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {12937#true} {13372#(< ~counter~0 7)} #86#return; {13372#(< ~counter~0 7)} is VALID [2022-04-08 06:21:29,240 INFO L290 TraceCheckUtils]: 27: Hoare triple {12937#true} assume true; {12937#true} is VALID [2022-04-08 06:21:29,240 INFO L290 TraceCheckUtils]: 26: Hoare triple {12937#true} assume !(0 == ~cond); {12937#true} is VALID [2022-04-08 06:21:29,240 INFO L290 TraceCheckUtils]: 25: Hoare triple {12937#true} ~cond := #in~cond; {12937#true} is VALID [2022-04-08 06:21:29,240 INFO L272 TraceCheckUtils]: 24: Hoare triple {13372#(< ~counter~0 7)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {12937#true} is VALID [2022-04-08 06:21:29,240 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {12937#true} {13372#(< ~counter~0 7)} #84#return; {13372#(< ~counter~0 7)} is VALID [2022-04-08 06:21:29,240 INFO L290 TraceCheckUtils]: 22: Hoare triple {12937#true} assume true; {12937#true} is VALID [2022-04-08 06:21:29,240 INFO L290 TraceCheckUtils]: 21: Hoare triple {12937#true} assume !(0 == ~cond); {12937#true} is VALID [2022-04-08 06:21:29,241 INFO L290 TraceCheckUtils]: 20: Hoare triple {12937#true} ~cond := #in~cond; {12937#true} is VALID [2022-04-08 06:21:29,241 INFO L272 TraceCheckUtils]: 19: Hoare triple {13372#(< ~counter~0 7)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {12937#true} is VALID [2022-04-08 06:21:29,242 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {12937#true} {13372#(< ~counter~0 7)} #82#return; {13372#(< ~counter~0 7)} is VALID [2022-04-08 06:21:29,242 INFO L290 TraceCheckUtils]: 17: Hoare triple {12937#true} assume true; {12937#true} is VALID [2022-04-08 06:21:29,242 INFO L290 TraceCheckUtils]: 16: Hoare triple {12937#true} assume !(0 == ~cond); {12937#true} is VALID [2022-04-08 06:21:29,243 INFO L290 TraceCheckUtils]: 15: Hoare triple {12937#true} ~cond := #in~cond; {12937#true} is VALID [2022-04-08 06:21:29,243 INFO L272 TraceCheckUtils]: 14: Hoare triple {13372#(< ~counter~0 7)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {12937#true} is VALID [2022-04-08 06:21:29,243 INFO L290 TraceCheckUtils]: 13: Hoare triple {13372#(< ~counter~0 7)} assume !!(#t~post6 < 10);havoc #t~post6; {13372#(< ~counter~0 7)} is VALID [2022-04-08 06:21:29,243 INFO L290 TraceCheckUtils]: 12: Hoare triple {13427#(< ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {13372#(< ~counter~0 7)} is VALID [2022-04-08 06:21:29,246 INFO L290 TraceCheckUtils]: 11: Hoare triple {13427#(< ~counter~0 6)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {13427#(< ~counter~0 6)} is VALID [2022-04-08 06:21:29,246 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {12937#true} {13427#(< ~counter~0 6)} #80#return; {13427#(< ~counter~0 6)} is VALID [2022-04-08 06:21:29,247 INFO L290 TraceCheckUtils]: 9: Hoare triple {12937#true} assume true; {12937#true} is VALID [2022-04-08 06:21:29,247 INFO L290 TraceCheckUtils]: 8: Hoare triple {12937#true} assume !(0 == ~cond); {12937#true} is VALID [2022-04-08 06:21:29,247 INFO L290 TraceCheckUtils]: 7: Hoare triple {12937#true} ~cond := #in~cond; {12937#true} is VALID [2022-04-08 06:21:29,247 INFO L272 TraceCheckUtils]: 6: Hoare triple {13427#(< ~counter~0 6)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {12937#true} is VALID [2022-04-08 06:21:29,247 INFO L290 TraceCheckUtils]: 5: Hoare triple {13427#(< ~counter~0 6)} 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; {13427#(< ~counter~0 6)} is VALID [2022-04-08 06:21:29,247 INFO L272 TraceCheckUtils]: 4: Hoare triple {13427#(< ~counter~0 6)} call #t~ret8 := main(); {13427#(< ~counter~0 6)} is VALID [2022-04-08 06:21:29,248 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {13427#(< ~counter~0 6)} {12937#true} #96#return; {13427#(< ~counter~0 6)} is VALID [2022-04-08 06:21:29,248 INFO L290 TraceCheckUtils]: 2: Hoare triple {13427#(< ~counter~0 6)} assume true; {13427#(< ~counter~0 6)} is VALID [2022-04-08 06:21:29,248 INFO L290 TraceCheckUtils]: 1: Hoare triple {12937#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; {13427#(< ~counter~0 6)} is VALID [2022-04-08 06:21:29,249 INFO L272 TraceCheckUtils]: 0: Hoare triple {12937#true} call ULTIMATE.init(); {12937#true} is VALID [2022-04-08 06:21:29,249 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-08 06:21:29,249 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:21:29,249 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [366560204] [2022-04-08 06:21:29,249 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:21:29,249 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [385891515] [2022-04-08 06:21:29,249 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [385891515] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:21:29,249 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:21:29,249 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-08 06:21:29,249 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:21:29,250 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [430785938] [2022-04-08 06:21:29,250 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [430785938] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:21:29,250 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:21:29,250 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 06:21:29,250 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [53448374] [2022-04-08 06:21:29,250 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:21:29,250 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-08 06:21:29,250 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:21:29,250 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-08 06:21:29,302 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-08 06:21:29,302 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 06:21:29,302 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:21:29,302 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 06:21:29,303 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-08 06:21:29,303 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-08 06:21:29,758 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:21:29,758 INFO L93 Difference]: Finished difference Result 179 states and 206 transitions. [2022-04-08 06:21:29,758 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-08 06:21:29,758 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-08 06:21:29,758 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:21:29,758 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-08 06:21:29,760 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 119 transitions. [2022-04-08 06:21:29,760 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-08 06:21:29,762 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 119 transitions. [2022-04-08 06:21:29,762 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 119 transitions. [2022-04-08 06:21:29,856 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-08 06:21:29,858 INFO L225 Difference]: With dead ends: 179 [2022-04-08 06:21:29,859 INFO L226 Difference]: Without dead ends: 164 [2022-04-08 06:21:29,859 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 172 GetRequests, 159 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=81, Invalid=129, Unknown=0, NotChecked=0, Total=210 [2022-04-08 06:21:29,860 INFO L913 BasicCegarLoop]: 56 mSDtfsCounter, 50 mSDsluCounter, 129 mSDsCounter, 0 mSdLazyCounter, 65 mSolverCounterSat, 42 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 50 SdHoareTripleChecker+Valid, 185 SdHoareTripleChecker+Invalid, 107 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 42 IncrementalHoareTripleChecker+Valid, 65 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 06:21:29,860 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [50 Valid, 185 Invalid, 107 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [42 Valid, 65 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 06:21:29,861 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 164 states. [2022-04-08 06:21:29,990 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 164 to 161. [2022-04-08 06:21:29,990 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:21:29,990 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-08 06:21:29,991 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-08 06:21:29,991 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-08 06:21:29,995 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:21:29,995 INFO L93 Difference]: Finished difference Result 164 states and 188 transitions. [2022-04-08 06:21:29,995 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 188 transitions. [2022-04-08 06:21:29,996 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:21:29,996 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:21:29,996 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-08 06:21:29,996 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-08 06:21:29,998 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:21:29,999 INFO L93 Difference]: Finished difference Result 164 states and 188 transitions. [2022-04-08 06:21:29,999 INFO L276 IsEmpty]: Start isEmpty. Operand 164 states and 188 transitions. [2022-04-08 06:21:29,999 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:21:29,999 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:21:29,999 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:21:29,999 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:21:29,999 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-08 06:21:30,004 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 161 states to 161 states and 186 transitions. [2022-04-08 06:21:30,005 INFO L78 Accepts]: Start accepts. Automaton has 161 states and 186 transitions. Word has length 86 [2022-04-08 06:21:30,005 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:21:30,005 INFO L478 AbstractCegarLoop]: Abstraction has 161 states and 186 transitions. [2022-04-08 06:21:30,005 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-08 06:21:30,005 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 161 states and 186 transitions. [2022-04-08 06:21:32,226 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-08 06:21:32,226 INFO L276 IsEmpty]: Start isEmpty. Operand 161 states and 186 transitions. [2022-04-08 06:21:32,227 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 87 [2022-04-08 06:21:32,227 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:21:32,227 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-08 06:21:32,262 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (15)] Forceful destruction successful, exit code 0 [2022-04-08 06:21:32,443 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-08 06:21:32,443 INFO L403 AbstractCegarLoop]: === Iteration 18 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:21:32,444 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:21:32,444 INFO L85 PathProgramCache]: Analyzing trace with hash -1068167297, now seen corresponding path program 5 times [2022-04-08 06:21:32,444 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:21:32,444 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1002404215] [2022-04-08 06:21:38,221 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-08 06:21:38,222 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-08 06:21:38,222 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 06:21:38,222 INFO L85 PathProgramCache]: Analyzing trace with hash -1068167297, now seen corresponding path program 6 times [2022-04-08 06:21:38,222 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:21:38,222 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1992493434] [2022-04-08 06:21:38,222 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:21:38,222 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:21:38,247 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:21:38,247 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1488431888] [2022-04-08 06:21:38,247 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 06:21:38,247 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:21:38,247 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:21:38,248 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-08 06:21:38,249 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-08 06:21:38,316 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 4 check-sat command(s) [2022-04-08 06:21:38,317 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:21:38,318 INFO L263 TraceCheckSpWp]: Trace formula consists of 152 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-08 06:21:38,334 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:21:38,336 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:22:56,926 INFO L272 TraceCheckUtils]: 0: Hoare triple {14476#true} call ULTIMATE.init(); {14476#true} is VALID [2022-04-08 06:22:56,926 INFO L290 TraceCheckUtils]: 1: Hoare triple {14476#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; {14476#true} is VALID [2022-04-08 06:22:56,927 INFO L290 TraceCheckUtils]: 2: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-08 06:22:56,927 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14476#true} {14476#true} #96#return; {14476#true} is VALID [2022-04-08 06:22:56,927 INFO L272 TraceCheckUtils]: 4: Hoare triple {14476#true} call #t~ret8 := main(); {14476#true} is VALID [2022-04-08 06:22:56,927 INFO L290 TraceCheckUtils]: 5: Hoare triple {14476#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; {14476#true} is VALID [2022-04-08 06:22:56,927 INFO L272 TraceCheckUtils]: 6: Hoare triple {14476#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {14476#true} is VALID [2022-04-08 06:22:56,927 INFO L290 TraceCheckUtils]: 7: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-08 06:22:56,927 INFO L290 TraceCheckUtils]: 8: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-08 06:22:56,927 INFO L290 TraceCheckUtils]: 9: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-08 06:22:56,927 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14476#true} {14476#true} #80#return; {14476#true} is VALID [2022-04-08 06:22:56,928 INFO L290 TraceCheckUtils]: 11: Hoare triple {14476#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 06:22:56,928 INFO L290 TraceCheckUtils]: 12: Hoare triple {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 06:22:56,928 INFO L290 TraceCheckUtils]: 13: Hoare triple {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 10);havoc #t~post6; {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 06:22:56,928 INFO L272 TraceCheckUtils]: 14: Hoare triple {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {14476#true} is VALID [2022-04-08 06:22:56,928 INFO L290 TraceCheckUtils]: 15: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-08 06:22:56,928 INFO L290 TraceCheckUtils]: 16: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-08 06:22:56,928 INFO L290 TraceCheckUtils]: 17: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-08 06:22:56,929 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {14476#true} {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #82#return; {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 06:22:56,929 INFO L272 TraceCheckUtils]: 19: Hoare triple {14514#(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)); {14476#true} is VALID [2022-04-08 06:22:56,929 INFO L290 TraceCheckUtils]: 20: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-08 06:22:56,929 INFO L290 TraceCheckUtils]: 21: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-08 06:22:56,929 INFO L290 TraceCheckUtils]: 22: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-08 06:22:56,930 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {14476#true} {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #84#return; {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 06:22:56,930 INFO L272 TraceCheckUtils]: 24: Hoare triple {14514#(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)); {14476#true} is VALID [2022-04-08 06:22:56,930 INFO L290 TraceCheckUtils]: 25: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-08 06:22:56,930 INFO L290 TraceCheckUtils]: 26: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-08 06:22:56,930 INFO L290 TraceCheckUtils]: 27: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-08 06:22:56,930 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {14476#true} {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #86#return; {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 06:22:56,931 INFO L290 TraceCheckUtils]: 29: Hoare triple {14514#(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; {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 06:22:56,931 INFO L290 TraceCheckUtils]: 30: Hoare triple {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 06:22:56,931 INFO L290 TraceCheckUtils]: 31: Hoare triple {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} assume !!(#t~post6 < 10);havoc #t~post6; {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 06:22:56,931 INFO L272 TraceCheckUtils]: 32: Hoare triple {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {14476#true} is VALID [2022-04-08 06:22:56,931 INFO L290 TraceCheckUtils]: 33: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-08 06:22:56,931 INFO L290 TraceCheckUtils]: 34: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-08 06:22:56,931 INFO L290 TraceCheckUtils]: 35: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-08 06:22:56,932 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {14476#true} {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #82#return; {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 06:22:56,932 INFO L272 TraceCheckUtils]: 37: Hoare triple {14514#(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)); {14476#true} is VALID [2022-04-08 06:22:56,932 INFO L290 TraceCheckUtils]: 38: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-08 06:22:56,932 INFO L290 TraceCheckUtils]: 39: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-08 06:22:56,932 INFO L290 TraceCheckUtils]: 40: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-08 06:22:56,932 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {14476#true} {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #84#return; {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 06:22:56,933 INFO L272 TraceCheckUtils]: 42: Hoare triple {14514#(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)); {14476#true} is VALID [2022-04-08 06:22:56,933 INFO L290 TraceCheckUtils]: 43: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-08 06:22:56,933 INFO L290 TraceCheckUtils]: 44: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-08 06:22:56,933 INFO L290 TraceCheckUtils]: 45: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-08 06:22:56,933 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {14476#true} {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} #86#return; {14514#(and (= (mod main_~A~0 4294967296) main_~r~0) (= main_~q~0 0))} is VALID [2022-04-08 06:22:56,934 INFO L290 TraceCheckUtils]: 47: Hoare triple {14514#(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; {14623#(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-08 06:22:56,935 INFO L290 TraceCheckUtils]: 48: Hoare triple {14623#(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; {14623#(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-08 06:22:56,935 INFO L290 TraceCheckUtils]: 49: Hoare triple {14623#(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 < 10);havoc #t~post6; {14623#(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-08 06:22:56,935 INFO L272 TraceCheckUtils]: 50: Hoare triple {14623#(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)); {14476#true} is VALID [2022-04-08 06:22:56,935 INFO L290 TraceCheckUtils]: 51: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-08 06:22:56,935 INFO L290 TraceCheckUtils]: 52: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-08 06:22:56,935 INFO L290 TraceCheckUtils]: 53: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-08 06:22:56,936 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {14476#true} {14623#(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; {14623#(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-08 06:22:56,936 INFO L272 TraceCheckUtils]: 55: Hoare triple {14623#(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)); {14476#true} is VALID [2022-04-08 06:22:56,936 INFO L290 TraceCheckUtils]: 56: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-08 06:22:56,936 INFO L290 TraceCheckUtils]: 57: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-08 06:22:56,936 INFO L290 TraceCheckUtils]: 58: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-08 06:22:56,936 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {14476#true} {14623#(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; {14623#(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-08 06:22:56,936 INFO L272 TraceCheckUtils]: 60: Hoare triple {14623#(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)); {14476#true} is VALID [2022-04-08 06:22:56,937 INFO L290 TraceCheckUtils]: 61: Hoare triple {14476#true} ~cond := #in~cond; {14666#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:22:56,937 INFO L290 TraceCheckUtils]: 62: Hoare triple {14666#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {14670#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:22:56,937 INFO L290 TraceCheckUtils]: 63: Hoare triple {14670#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {14670#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:22:56,938 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {14670#(not (= |__VERIFIER_assert_#in~cond| 0))} {14623#(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; {14677#(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-08 06:22:56,938 INFO L290 TraceCheckUtils]: 65: Hoare triple {14677#(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); {14677#(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-08 06:22:56,938 INFO L290 TraceCheckUtils]: 66: Hoare triple {14677#(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; {14677#(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-08 06:22:56,939 INFO L290 TraceCheckUtils]: 67: Hoare triple {14677#(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 < 10);havoc #t~post7; {14677#(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-08 06:22:56,939 INFO L272 TraceCheckUtils]: 68: Hoare triple {14677#(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)); {14476#true} is VALID [2022-04-08 06:22:56,939 INFO L290 TraceCheckUtils]: 69: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-08 06:22:56,939 INFO L290 TraceCheckUtils]: 70: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-08 06:22:56,939 INFO L290 TraceCheckUtils]: 71: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-08 06:22:56,940 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {14476#true} {14677#(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; {14677#(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-08 06:22:56,940 INFO L272 TraceCheckUtils]: 73: Hoare triple {14677#(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)); {14476#true} is VALID [2022-04-08 06:22:56,940 INFO L290 TraceCheckUtils]: 74: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-08 06:22:56,940 INFO L290 TraceCheckUtils]: 75: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-08 06:22:56,940 INFO L290 TraceCheckUtils]: 76: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-08 06:22:56,940 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {14476#true} {14677#(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; {14677#(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-08 06:22:56,944 INFO L290 TraceCheckUtils]: 78: Hoare triple {14677#(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); {14720#(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-08 06:22:56,946 INFO L290 TraceCheckUtils]: 79: Hoare triple {14720#(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; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:22:56,947 INFO L290 TraceCheckUtils]: 80: Hoare triple {14724#(= (+ (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; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:22:56,947 INFO L290 TraceCheckUtils]: 81: Hoare triple {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} assume !!(#t~post7 < 10);havoc #t~post7; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:22:56,947 INFO L272 TraceCheckUtils]: 82: Hoare triple {14724#(= (+ (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)); {14734#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:22:56,948 INFO L290 TraceCheckUtils]: 83: Hoare triple {14734#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {14738#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:22:56,948 INFO L290 TraceCheckUtils]: 84: Hoare triple {14738#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {14477#false} is VALID [2022-04-08 06:22:56,948 INFO L290 TraceCheckUtils]: 85: Hoare triple {14477#false} assume !false; {14477#false} is VALID [2022-04-08 06:22:56,948 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-08 06:22:56,948 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:23:21,195 WARN L855 $PredicateComparison]: unable to prove that (let ((.cse13 (mod c_main_~B~0 4294967296))) (or (let ((.cse2 (= (mod c_main_~p~0 2) 0)) (.cse12 (div c_main_~p~0 2))) (let ((.cse1 (* (+ c_main_~q~0 .cse12 1) .cse13)) (.cse3 (* (+ c_main_~q~0 .cse12) .cse13)) (.cse4 (not .cse2)) (.cse5 (mod c_main_~A~0 4294967296)) (.cse6 (div c_main_~d~0 2)) (.cse7 (* (- 1) c_main_~r~0)) (.cse9 (< c_main_~d~0 0)) (.cse8 (= (mod c_main_~d~0 2) 0))) (and (or (let ((.cse0 (+ .cse5 .cse6 .cse7 1))) (and (or (= .cse0 .cse1) .cse2) (or (= .cse0 .cse3) .cse4))) .cse8 (not .cse9)) (or (let ((.cse10 (+ .cse5 .cse6 .cse7)) (.cse11 (< c_main_~p~0 0))) (and (or (= .cse10 .cse1) .cse2 (not .cse11)) (or (= .cse10 .cse3) (and .cse4 .cse11)))) (and .cse9 (not .cse8)))))) (not (= c_main_~d~0 (* c_main_~p~0 .cse13))))) is different from true [2022-04-08 06:24:33,337 INFO L290 TraceCheckUtils]: 85: Hoare triple {14477#false} assume !false; {14477#false} is VALID [2022-04-08 06:24:33,338 INFO L290 TraceCheckUtils]: 84: Hoare triple {14738#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {14477#false} is VALID [2022-04-08 06:24:33,338 INFO L290 TraceCheckUtils]: 83: Hoare triple {14734#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {14738#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:24:33,339 INFO L272 TraceCheckUtils]: 82: Hoare triple {14724#(= (+ (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)); {14734#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:24:33,339 INFO L290 TraceCheckUtils]: 81: Hoare triple {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} assume !!(#t~post7 < 10);havoc #t~post7; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:24:33,339 INFO L290 TraceCheckUtils]: 80: Hoare triple {14724#(= (+ (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; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:24:33,342 INFO L290 TraceCheckUtils]: 79: Hoare triple {14763#(= (* (+ 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; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:24:33,354 INFO L290 TraceCheckUtils]: 78: Hoare triple {14767#(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); {14763#(= (* (+ 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-08 06:24:33,355 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {14476#true} {14767#(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; {14767#(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-08 06:24:33,355 INFO L290 TraceCheckUtils]: 76: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-08 06:24:33,355 INFO L290 TraceCheckUtils]: 75: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-08 06:24:33,355 INFO L290 TraceCheckUtils]: 74: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-08 06:24:33,355 INFO L272 TraceCheckUtils]: 73: Hoare triple {14767#(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)); {14476#true} is VALID [2022-04-08 06:24:33,356 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {14476#true} {14767#(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; {14767#(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-08 06:24:33,356 INFO L290 TraceCheckUtils]: 71: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-08 06:24:33,356 INFO L290 TraceCheckUtils]: 70: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-08 06:24:33,356 INFO L290 TraceCheckUtils]: 69: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-08 06:24:33,356 INFO L272 TraceCheckUtils]: 68: Hoare triple {14767#(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)); {14476#true} is VALID [2022-04-08 06:24:33,357 INFO L290 TraceCheckUtils]: 67: Hoare triple {14767#(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 < 10);havoc #t~post7; {14767#(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-08 06:24:33,358 INFO L290 TraceCheckUtils]: 66: Hoare triple {14767#(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; {14767#(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-08 06:24:33,359 INFO L290 TraceCheckUtils]: 65: Hoare triple {14767#(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); {14767#(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-08 06:24:33,362 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {14670#(not (= |__VERIFIER_assert_#in~cond| 0))} {14810#(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; {14767#(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-08 06:24:33,362 INFO L290 TraceCheckUtils]: 63: Hoare triple {14670#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {14670#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:24:33,362 INFO L290 TraceCheckUtils]: 62: Hoare triple {14820#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {14670#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-08 06:24:33,363 INFO L290 TraceCheckUtils]: 61: Hoare triple {14476#true} ~cond := #in~cond; {14820#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-08 06:24:33,363 INFO L272 TraceCheckUtils]: 60: Hoare triple {14810#(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)); {14476#true} is VALID [2022-04-08 06:24:33,363 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {14476#true} {14810#(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; {14810#(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-08 06:24:33,363 INFO L290 TraceCheckUtils]: 58: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-08 06:24:33,363 INFO L290 TraceCheckUtils]: 57: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-08 06:24:33,363 INFO L290 TraceCheckUtils]: 56: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-08 06:24:33,364 INFO L272 TraceCheckUtils]: 55: Hoare triple {14810#(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)); {14476#true} is VALID [2022-04-08 06:24:33,364 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {14476#true} {14810#(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; {14810#(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-08 06:24:33,364 INFO L290 TraceCheckUtils]: 53: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-08 06:24:33,364 INFO L290 TraceCheckUtils]: 52: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-08 06:24:33,364 INFO L290 TraceCheckUtils]: 51: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-08 06:24:33,364 INFO L272 TraceCheckUtils]: 50: Hoare triple {14810#(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)); {14476#true} is VALID [2022-04-08 06:24:33,366 INFO L290 TraceCheckUtils]: 49: Hoare triple {14810#(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 < 10);havoc #t~post6; {14810#(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-08 06:24:33,367 INFO L290 TraceCheckUtils]: 48: Hoare triple {14810#(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; {14810#(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-08 06:24:33,371 INFO L290 TraceCheckUtils]: 47: Hoare triple {14724#(= (+ (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; {14810#(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-08 06:24:33,372 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {14476#true} {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} #86#return; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:24:33,372 INFO L290 TraceCheckUtils]: 45: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-08 06:24:33,372 INFO L290 TraceCheckUtils]: 44: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-08 06:24:33,372 INFO L290 TraceCheckUtils]: 43: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-08 06:24:33,372 INFO L272 TraceCheckUtils]: 42: Hoare triple {14724#(= (+ (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)); {14476#true} is VALID [2022-04-08 06:24:33,372 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {14476#true} {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} #84#return; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:24:33,372 INFO L290 TraceCheckUtils]: 40: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-08 06:24:33,373 INFO L290 TraceCheckUtils]: 39: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-08 06:24:33,373 INFO L290 TraceCheckUtils]: 38: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-08 06:24:33,373 INFO L272 TraceCheckUtils]: 37: Hoare triple {14724#(= (+ (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)); {14476#true} is VALID [2022-04-08 06:24:33,373 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {14476#true} {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} #82#return; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:24:33,373 INFO L290 TraceCheckUtils]: 35: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-08 06:24:33,373 INFO L290 TraceCheckUtils]: 34: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-08 06:24:33,373 INFO L290 TraceCheckUtils]: 33: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-08 06:24:33,373 INFO L272 TraceCheckUtils]: 32: Hoare triple {14724#(= (+ (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)); {14476#true} is VALID [2022-04-08 06:24:33,374 INFO L290 TraceCheckUtils]: 31: Hoare triple {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} assume !!(#t~post6 < 10);havoc #t~post6; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:24:33,374 INFO L290 TraceCheckUtils]: 30: Hoare triple {14724#(= (+ (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; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:24:33,374 INFO L290 TraceCheckUtils]: 29: Hoare triple {14724#(= (+ (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; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:24:33,375 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {14476#true} {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} #86#return; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:24:33,375 INFO L290 TraceCheckUtils]: 27: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-08 06:24:33,375 INFO L290 TraceCheckUtils]: 26: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-08 06:24:33,375 INFO L290 TraceCheckUtils]: 25: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-08 06:24:33,375 INFO L272 TraceCheckUtils]: 24: Hoare triple {14724#(= (+ (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)); {14476#true} is VALID [2022-04-08 06:24:33,376 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {14476#true} {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} #84#return; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:24:33,376 INFO L290 TraceCheckUtils]: 22: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-08 06:24:33,376 INFO L290 TraceCheckUtils]: 21: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-08 06:24:33,376 INFO L290 TraceCheckUtils]: 20: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-08 06:24:33,376 INFO L272 TraceCheckUtils]: 19: Hoare triple {14724#(= (+ (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)); {14476#true} is VALID [2022-04-08 06:24:33,385 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {14476#true} {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} #82#return; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:24:33,385 INFO L290 TraceCheckUtils]: 17: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-08 06:24:33,385 INFO L290 TraceCheckUtils]: 16: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-08 06:24:33,385 INFO L290 TraceCheckUtils]: 15: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-08 06:24:33,385 INFO L272 TraceCheckUtils]: 14: Hoare triple {14724#(= (+ (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)); {14476#true} is VALID [2022-04-08 06:24:33,385 INFO L290 TraceCheckUtils]: 13: Hoare triple {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} assume !!(#t~post6 < 10);havoc #t~post6; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:24:33,386 INFO L290 TraceCheckUtils]: 12: Hoare triple {14724#(= (+ (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; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:24:33,386 INFO L290 TraceCheckUtils]: 11: Hoare triple {14476#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {14724#(= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (* main_~q~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:24:33,386 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {14476#true} {14476#true} #80#return; {14476#true} is VALID [2022-04-08 06:24:33,386 INFO L290 TraceCheckUtils]: 9: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-08 06:24:33,386 INFO L290 TraceCheckUtils]: 8: Hoare triple {14476#true} assume !(0 == ~cond); {14476#true} is VALID [2022-04-08 06:24:33,386 INFO L290 TraceCheckUtils]: 7: Hoare triple {14476#true} ~cond := #in~cond; {14476#true} is VALID [2022-04-08 06:24:33,386 INFO L272 TraceCheckUtils]: 6: Hoare triple {14476#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {14476#true} is VALID [2022-04-08 06:24:33,386 INFO L290 TraceCheckUtils]: 5: Hoare triple {14476#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; {14476#true} is VALID [2022-04-08 06:24:33,386 INFO L272 TraceCheckUtils]: 4: Hoare triple {14476#true} call #t~ret8 := main(); {14476#true} is VALID [2022-04-08 06:24:33,387 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {14476#true} {14476#true} #96#return; {14476#true} is VALID [2022-04-08 06:24:33,387 INFO L290 TraceCheckUtils]: 2: Hoare triple {14476#true} assume true; {14476#true} is VALID [2022-04-08 06:24:33,387 INFO L290 TraceCheckUtils]: 1: Hoare triple {14476#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; {14476#true} is VALID [2022-04-08 06:24:33,387 INFO L272 TraceCheckUtils]: 0: Hoare triple {14476#true} call ULTIMATE.init(); {14476#true} is VALID [2022-04-08 06:24:33,387 INFO L134 CoverageAnalysis]: Checked inductivity of 263 backedges. 45 proven. 12 refuted. 0 times theorem prover too weak. 196 trivial. 10 not checked. [2022-04-08 06:24:33,387 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:24:33,387 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1992493434] [2022-04-08 06:24:33,387 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:24:33,388 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1488431888] [2022-04-08 06:24:33,388 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1488431888] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:24:33,388 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:24:33,388 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 10] total 15 [2022-04-08 06:24:33,388 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:24:33,388 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1002404215] [2022-04-08 06:24:33,388 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1002404215] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:24:33,388 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:24:33,388 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-08 06:24:33,388 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1906765594] [2022-04-08 06:24:33,388 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:24:33,389 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-08 06:24:33,389 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:24:33,389 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-08 06:24:33,444 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-08 06:24:33,445 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-08 06:24:33,445 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:24:33,445 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-08 06:24:33,445 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=43, Invalid=142, Unknown=1, NotChecked=24, Total=210 [2022-04-08 06:24:33,445 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-08 06:24:35,091 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.36s for a HTC check with result INVALID. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=true, quantifiers [] [2022-04-08 06:24:39,144 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-08 06:24:41,463 WARN L534 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, Int], hasArrays=false, hasNonlinArith=false, quantifiers [] [2022-04-08 06:24:41,505 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:24:41,506 INFO L93 Difference]: Finished difference Result 200 states and 235 transitions. [2022-04-08 06:24:41,506 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-08 06:24:41,506 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-08 06:24:41,506 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:24:41,506 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-08 06:24:41,507 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 109 transitions. [2022-04-08 06:24:41,507 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-08 06:24:41,508 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 109 transitions. [2022-04-08 06:24:41,508 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 109 transitions. [2022-04-08 06:24:41,661 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-08 06:24:41,664 INFO L225 Difference]: With dead ends: 200 [2022-04-08 06:24:41,664 INFO L226 Difference]: Without dead ends: 180 [2022-04-08 06:24:41,664 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 173 GetRequests, 155 SyntacticMatches, 3 SemanticMatches, 15 ConstructedPredicates, 1 IntricatePredicates, 0 DeprecatedPredicates, 68 ImplicationChecksByTransitivity, 4.7s TimeCoverageRelationStatistics Valid=56, Invalid=187, Unknown=1, NotChecked=28, Total=272 [2022-04-08 06:24:41,665 INFO L913 BasicCegarLoop]: 38 mSDtfsCounter, 41 mSDsluCounter, 119 mSDsCounter, 0 mSdLazyCounter, 225 mSolverCounterSat, 39 mSolverCounterUnsat, 2 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 6.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 55 SdHoareTripleChecker+Valid, 157 SdHoareTripleChecker+Invalid, 266 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 39 IncrementalHoareTripleChecker+Valid, 225 IncrementalHoareTripleChecker+Invalid, 2 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 6.6s IncrementalHoareTripleChecker+Time [2022-04-08 06:24:41,665 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [55 Valid, 157 Invalid, 266 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [39 Valid, 225 Invalid, 2 Unknown, 0 Unchecked, 6.6s Time] [2022-04-08 06:24:41,665 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 180 states. [2022-04-08 06:24:41,824 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 180 to 173. [2022-04-08 06:24:41,824 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:24:41,824 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-08 06:24:41,824 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-08 06:24:41,825 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-08 06:24:41,827 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:24:41,827 INFO L93 Difference]: Finished difference Result 180 states and 213 transitions. [2022-04-08 06:24:41,827 INFO L276 IsEmpty]: Start isEmpty. Operand 180 states and 213 transitions. [2022-04-08 06:24:41,828 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:24:41,828 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:24:41,828 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-08 06:24:41,828 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-08 06:24:41,832 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:24:41,832 INFO L93 Difference]: Finished difference Result 180 states and 213 transitions. [2022-04-08 06:24:41,832 INFO L276 IsEmpty]: Start isEmpty. Operand 180 states and 213 transitions. [2022-04-08 06:24:41,833 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:24:41,833 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:24:41,833 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:24:41,833 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:24:41,833 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-08 06:24:41,836 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 173 states to 173 states and 203 transitions. [2022-04-08 06:24:41,836 INFO L78 Accepts]: Start accepts. Automaton has 173 states and 203 transitions. Word has length 86 [2022-04-08 06:24:41,837 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:24:41,837 INFO L478 AbstractCegarLoop]: Abstraction has 173 states and 203 transitions. [2022-04-08 06:24:41,837 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-08 06:24:41,837 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 173 states and 203 transitions. [2022-04-08 06:24:44,129 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-08 06:24:44,129 INFO L276 IsEmpty]: Start isEmpty. Operand 173 states and 203 transitions. [2022-04-08 06:24:44,130 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 92 [2022-04-08 06:24:44,130 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:24:44,131 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-08 06:24:44,146 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (16)] Ended with exit code 0 [2022-04-08 06:24:44,331 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-08 06:24:44,331 INFO L403 AbstractCegarLoop]: === Iteration 19 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:24:44,331 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:24:44,331 INFO L85 PathProgramCache]: Analyzing trace with hash -1271087930, now seen corresponding path program 7 times [2022-04-08 06:24:44,332 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:24:44,332 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [201768247] [2022-04-08 06:24:49,385 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-08 06:24:49,385 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-08 06:24:49,385 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 06:24:49,385 INFO L85 PathProgramCache]: Analyzing trace with hash -1271087930, now seen corresponding path program 8 times [2022-04-08 06:24:49,385 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:24:49,385 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1903687352] [2022-04-08 06:24:49,385 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:24:49,385 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:24:49,396 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:24:49,396 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1721731451] [2022-04-08 06:24:49,397 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:24:49,397 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:24:49,397 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:24:49,397 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-08 06:24:49,399 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-08 06:24:49,448 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:24:49,449 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:24:49,449 INFO L263 TraceCheckSpWp]: Trace formula consists of 231 conjuncts, 26 conjunts are in the unsatisfiable core [2022-04-08 06:24:49,466 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:24:49,468 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:24:51,182 INFO L272 TraceCheckUtils]: 0: Hoare triple {16116#true} call ULTIMATE.init(); {16116#true} is VALID [2022-04-08 06:24:51,182 INFO L290 TraceCheckUtils]: 1: Hoare triple {16116#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; {16116#true} is VALID [2022-04-08 06:24:51,182 INFO L290 TraceCheckUtils]: 2: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-08 06:24:51,182 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16116#true} {16116#true} #96#return; {16116#true} is VALID [2022-04-08 06:24:51,182 INFO L272 TraceCheckUtils]: 4: Hoare triple {16116#true} call #t~ret8 := main(); {16116#true} is VALID [2022-04-08 06:24:51,182 INFO L290 TraceCheckUtils]: 5: Hoare triple {16116#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; {16116#true} is VALID [2022-04-08 06:24:51,182 INFO L272 TraceCheckUtils]: 6: Hoare triple {16116#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {16116#true} is VALID [2022-04-08 06:24:51,183 INFO L290 TraceCheckUtils]: 7: Hoare triple {16116#true} ~cond := #in~cond; {16142#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-08 06:24:51,183 INFO L290 TraceCheckUtils]: 8: Hoare triple {16142#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {16146#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:24:51,183 INFO L290 TraceCheckUtils]: 9: Hoare triple {16146#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {16146#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-08 06:24:51,184 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16146#(not (= |assume_abort_if_not_#in~cond| 0))} {16116#true} #80#return; {16153#(<= 1 (mod main_~B~0 4294967296))} is VALID [2022-04-08 06:24:51,185 INFO L290 TraceCheckUtils]: 11: Hoare triple {16153#(<= 1 (mod main_~B~0 4294967296))} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {16157#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-08 06:24:51,185 INFO L290 TraceCheckUtils]: 12: Hoare triple {16157#(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; {16157#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-08 06:24:51,186 INFO L290 TraceCheckUtils]: 13: Hoare triple {16157#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} assume !!(#t~post6 < 10);havoc #t~post6; {16157#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-08 06:24:51,186 INFO L272 TraceCheckUtils]: 14: Hoare triple {16157#(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)); {16116#true} is VALID [2022-04-08 06:24:51,186 INFO L290 TraceCheckUtils]: 15: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-08 06:24:51,186 INFO L290 TraceCheckUtils]: 16: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-08 06:24:51,186 INFO L290 TraceCheckUtils]: 17: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-08 06:24:51,186 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {16116#true} {16157#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #82#return; {16157#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-08 06:24:51,186 INFO L272 TraceCheckUtils]: 19: Hoare triple {16157#(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)); {16116#true} is VALID [2022-04-08 06:24:51,187 INFO L290 TraceCheckUtils]: 20: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-08 06:24:51,187 INFO L290 TraceCheckUtils]: 21: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-08 06:24:51,187 INFO L290 TraceCheckUtils]: 22: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-08 06:24:51,187 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {16116#true} {16157#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #84#return; {16157#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-08 06:24:51,187 INFO L272 TraceCheckUtils]: 24: Hoare triple {16157#(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)); {16116#true} is VALID [2022-04-08 06:24:51,187 INFO L290 TraceCheckUtils]: 25: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-08 06:24:51,187 INFO L290 TraceCheckUtils]: 26: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-08 06:24:51,187 INFO L290 TraceCheckUtils]: 27: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-08 06:24:51,188 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {16116#true} {16157#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} #86#return; {16157#(and (= main_~d~0 (mod main_~B~0 4294967296)) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 1))} is VALID [2022-04-08 06:24:51,189 INFO L290 TraceCheckUtils]: 29: Hoare triple {16157#(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; {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:24:51,189 INFO L290 TraceCheckUtils]: 30: Hoare triple {16212#(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; {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:24:51,190 INFO L290 TraceCheckUtils]: 31: Hoare triple {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} assume !!(#t~post6 < 10);havoc #t~post6; {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:24:51,190 INFO L272 TraceCheckUtils]: 32: Hoare triple {16212#(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)); {16116#true} is VALID [2022-04-08 06:24:51,190 INFO L290 TraceCheckUtils]: 33: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-08 06:24:51,190 INFO L290 TraceCheckUtils]: 34: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-08 06:24:51,190 INFO L290 TraceCheckUtils]: 35: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-08 06:24:51,191 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {16116#true} {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} #82#return; {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:24:51,191 INFO L272 TraceCheckUtils]: 37: Hoare triple {16212#(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)); {16116#true} is VALID [2022-04-08 06:24:51,191 INFO L290 TraceCheckUtils]: 38: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-08 06:24:51,191 INFO L290 TraceCheckUtils]: 39: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-08 06:24:51,191 INFO L290 TraceCheckUtils]: 40: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-08 06:24:51,191 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {16116#true} {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} #84#return; {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:24:51,192 INFO L272 TraceCheckUtils]: 42: Hoare triple {16212#(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)); {16116#true} is VALID [2022-04-08 06:24:51,192 INFO L290 TraceCheckUtils]: 43: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-08 06:24:51,192 INFO L290 TraceCheckUtils]: 44: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-08 06:24:51,192 INFO L290 TraceCheckUtils]: 45: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-08 06:24:51,192 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {16116#true} {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} #86#return; {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:24:51,193 INFO L290 TraceCheckUtils]: 47: Hoare triple {16212#(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; {16267#(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-08 06:24:51,193 INFO L290 TraceCheckUtils]: 48: Hoare triple {16267#(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; {16267#(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-08 06:24:51,196 INFO L290 TraceCheckUtils]: 49: Hoare triple {16267#(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 < 10);havoc #t~post6; {16267#(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-08 06:24:51,196 INFO L272 TraceCheckUtils]: 50: Hoare triple {16267#(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)); {16116#true} is VALID [2022-04-08 06:24:51,196 INFO L290 TraceCheckUtils]: 51: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-08 06:24:51,196 INFO L290 TraceCheckUtils]: 52: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-08 06:24:51,197 INFO L290 TraceCheckUtils]: 53: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-08 06:24:51,199 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {16116#true} {16267#(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; {16267#(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-08 06:24:51,199 INFO L272 TraceCheckUtils]: 55: Hoare triple {16267#(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)); {16116#true} is VALID [2022-04-08 06:24:51,200 INFO L290 TraceCheckUtils]: 56: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-08 06:24:51,200 INFO L290 TraceCheckUtils]: 57: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-08 06:24:51,200 INFO L290 TraceCheckUtils]: 58: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-08 06:24:51,200 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {16116#true} {16267#(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; {16267#(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-08 06:24:51,200 INFO L272 TraceCheckUtils]: 60: Hoare triple {16267#(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)); {16116#true} is VALID [2022-04-08 06:24:51,200 INFO L290 TraceCheckUtils]: 61: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-08 06:24:51,200 INFO L290 TraceCheckUtils]: 62: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-08 06:24:51,200 INFO L290 TraceCheckUtils]: 63: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-08 06:24:51,201 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {16116#true} {16267#(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; {16267#(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-08 06:24:51,201 INFO L290 TraceCheckUtils]: 65: Hoare triple {16267#(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); {16322#(and (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} is VALID [2022-04-08 06:24:51,202 INFO L290 TraceCheckUtils]: 66: Hoare triple {16322#(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; {16322#(and (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} is VALID [2022-04-08 06:24:51,202 INFO L290 TraceCheckUtils]: 67: Hoare triple {16322#(and (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} assume !!(#t~post7 < 10);havoc #t~post7; {16322#(and (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} is VALID [2022-04-08 06:24:51,202 INFO L272 TraceCheckUtils]: 68: Hoare triple {16322#(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)); {16116#true} is VALID [2022-04-08 06:24:51,202 INFO L290 TraceCheckUtils]: 69: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-08 06:24:51,202 INFO L290 TraceCheckUtils]: 70: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-08 06:24:51,202 INFO L290 TraceCheckUtils]: 71: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-08 06:24:51,203 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {16116#true} {16322#(and (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} #88#return; {16322#(and (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} is VALID [2022-04-08 06:24:51,203 INFO L272 TraceCheckUtils]: 73: Hoare triple {16322#(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)); {16116#true} is VALID [2022-04-08 06:24:51,203 INFO L290 TraceCheckUtils]: 74: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-08 06:24:51,203 INFO L290 TraceCheckUtils]: 75: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-08 06:24:51,203 INFO L290 TraceCheckUtils]: 76: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-08 06:24:51,204 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {16116#true} {16322#(and (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} #90#return; {16322#(and (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (<= 1 (mod main_~B~0 4294967296)) (= main_~p~0 4))} is VALID [2022-04-08 06:24:51,205 INFO L290 TraceCheckUtils]: 78: Hoare triple {16322#(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); {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:24:51,206 INFO L290 TraceCheckUtils]: 79: Hoare triple {16212#(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; {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:24:51,210 INFO L290 TraceCheckUtils]: 80: Hoare triple {16212#(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; {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:24:51,220 INFO L290 TraceCheckUtils]: 81: Hoare triple {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} assume !!(#t~post7 < 10);havoc #t~post7; {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:24:51,220 INFO L272 TraceCheckUtils]: 82: Hoare triple {16212#(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)); {16116#true} is VALID [2022-04-08 06:24:51,221 INFO L290 TraceCheckUtils]: 83: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-08 06:24:51,221 INFO L290 TraceCheckUtils]: 84: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-08 06:24:51,221 INFO L290 TraceCheckUtils]: 85: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-08 06:24:51,221 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {16116#true} {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} #88#return; {16212#(and (= main_~d~0 (* 2 (mod main_~B~0 4294967296))) (= main_~p~0 2) (<= 1 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:24:51,222 INFO L272 TraceCheckUtils]: 87: Hoare triple {16212#(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)); {16389#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:24:51,222 INFO L290 TraceCheckUtils]: 88: Hoare triple {16389#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {16393#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:24:51,223 INFO L290 TraceCheckUtils]: 89: Hoare triple {16393#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {16117#false} is VALID [2022-04-08 06:24:51,223 INFO L290 TraceCheckUtils]: 90: Hoare triple {16117#false} assume !false; {16117#false} is VALID [2022-04-08 06:24:51,223 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-08 06:24:51,223 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:25:00,488 INFO L290 TraceCheckUtils]: 90: Hoare triple {16117#false} assume !false; {16117#false} is VALID [2022-04-08 06:25:00,488 INFO L290 TraceCheckUtils]: 89: Hoare triple {16393#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {16117#false} is VALID [2022-04-08 06:25:00,489 INFO L290 TraceCheckUtils]: 88: Hoare triple {16389#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {16393#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:25:00,489 INFO L272 TraceCheckUtils]: 87: Hoare triple {16409#(= 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)); {16389#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:25:00,490 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {16116#true} {16409#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} #88#return; {16409#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:25:00,490 INFO L290 TraceCheckUtils]: 85: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-08 06:25:00,490 INFO L290 TraceCheckUtils]: 84: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-08 06:25:00,490 INFO L290 TraceCheckUtils]: 83: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-08 06:25:00,490 INFO L272 TraceCheckUtils]: 82: Hoare triple {16409#(= 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)); {16116#true} is VALID [2022-04-08 06:25:00,490 INFO L290 TraceCheckUtils]: 81: Hoare triple {16409#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} assume !!(#t~post7 < 10);havoc #t~post7; {16409#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:25:00,490 INFO L290 TraceCheckUtils]: 80: Hoare triple {16409#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {16409#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:25:00,491 INFO L290 TraceCheckUtils]: 79: Hoare triple {16409#(= 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; {16409#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:25:00,505 INFO L290 TraceCheckUtils]: 78: Hoare triple {16437#(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); {16409#(= main_~d~0 (* main_~p~0 (mod main_~B~0 4294967296)))} is VALID [2022-04-08 06:25:00,506 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {16116#true} {16437#(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; {16437#(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-08 06:25:00,506 INFO L290 TraceCheckUtils]: 76: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-08 06:25:00,506 INFO L290 TraceCheckUtils]: 75: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-08 06:25:00,506 INFO L290 TraceCheckUtils]: 74: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-08 06:25:00,506 INFO L272 TraceCheckUtils]: 73: Hoare triple {16437#(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)); {16116#true} is VALID [2022-04-08 06:25:00,507 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {16116#true} {16437#(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; {16437#(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-08 06:25:00,507 INFO L290 TraceCheckUtils]: 71: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-08 06:25:00,507 INFO L290 TraceCheckUtils]: 70: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-08 06:25:00,507 INFO L290 TraceCheckUtils]: 69: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-08 06:25:00,507 INFO L272 TraceCheckUtils]: 68: Hoare triple {16437#(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)); {16116#true} is VALID [2022-04-08 06:25:00,508 INFO L290 TraceCheckUtils]: 67: Hoare triple {16437#(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 < 10);havoc #t~post7; {16437#(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-08 06:25:00,509 INFO L290 TraceCheckUtils]: 66: Hoare triple {16437#(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; {16437#(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-08 06:25:00,510 INFO L290 TraceCheckUtils]: 65: Hoare triple {16477#(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); {16437#(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-08 06:25:00,510 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {16116#true} {16477#(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; {16477#(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-08 06:25:00,510 INFO L290 TraceCheckUtils]: 63: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-08 06:25:00,511 INFO L290 TraceCheckUtils]: 62: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-08 06:25:00,511 INFO L290 TraceCheckUtils]: 61: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-08 06:25:00,511 INFO L272 TraceCheckUtils]: 60: Hoare triple {16477#(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)); {16116#true} is VALID [2022-04-08 06:25:00,511 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {16116#true} {16477#(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; {16477#(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-08 06:25:00,511 INFO L290 TraceCheckUtils]: 58: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-08 06:25:00,511 INFO L290 TraceCheckUtils]: 57: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-08 06:25:00,511 INFO L290 TraceCheckUtils]: 56: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-08 06:25:00,512 INFO L272 TraceCheckUtils]: 55: Hoare triple {16477#(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)); {16116#true} is VALID [2022-04-08 06:25:00,512 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {16116#true} {16477#(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; {16477#(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-08 06:25:00,512 INFO L290 TraceCheckUtils]: 53: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-08 06:25:00,512 INFO L290 TraceCheckUtils]: 52: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-08 06:25:00,512 INFO L290 TraceCheckUtils]: 51: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-08 06:25:00,512 INFO L272 TraceCheckUtils]: 50: Hoare triple {16477#(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)); {16116#true} is VALID [2022-04-08 06:25:00,513 INFO L290 TraceCheckUtils]: 49: Hoare triple {16477#(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 < 10);havoc #t~post6; {16477#(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-08 06:25:00,514 INFO L290 TraceCheckUtils]: 48: Hoare triple {16477#(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; {16477#(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-08 06:25:00,517 INFO L290 TraceCheckUtils]: 47: Hoare triple {16532#(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; {16477#(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-08 06:25:00,518 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {16116#true} {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #86#return; {16532#(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-08 06:25:00,518 INFO L290 TraceCheckUtils]: 45: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-08 06:25:00,518 INFO L290 TraceCheckUtils]: 44: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-08 06:25:00,518 INFO L290 TraceCheckUtils]: 43: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-08 06:25:00,518 INFO L272 TraceCheckUtils]: 42: Hoare triple {16532#(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)); {16116#true} is VALID [2022-04-08 06:25:00,518 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {16116#true} {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #84#return; {16532#(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-08 06:25:00,519 INFO L290 TraceCheckUtils]: 40: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-08 06:25:00,519 INFO L290 TraceCheckUtils]: 39: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-08 06:25:00,519 INFO L290 TraceCheckUtils]: 38: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-08 06:25:00,519 INFO L272 TraceCheckUtils]: 37: Hoare triple {16532#(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)); {16116#true} is VALID [2022-04-08 06:25:00,519 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {16116#true} {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #82#return; {16532#(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-08 06:25:00,519 INFO L290 TraceCheckUtils]: 35: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-08 06:25:00,519 INFO L290 TraceCheckUtils]: 34: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-08 06:25:00,519 INFO L290 TraceCheckUtils]: 33: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-08 06:25:00,520 INFO L272 TraceCheckUtils]: 32: Hoare triple {16532#(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)); {16116#true} is VALID [2022-04-08 06:25:00,520 INFO L290 TraceCheckUtils]: 31: Hoare triple {16532#(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 < 10);havoc #t~post6; {16532#(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-08 06:25:00,520 INFO L290 TraceCheckUtils]: 30: Hoare triple {16532#(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; {16532#(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-08 06:25:00,522 INFO L290 TraceCheckUtils]: 29: Hoare triple {16532#(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; {16532#(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-08 06:25:00,522 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {16116#true} {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #86#return; {16532#(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-08 06:25:00,522 INFO L290 TraceCheckUtils]: 27: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-08 06:25:00,522 INFO L290 TraceCheckUtils]: 26: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-08 06:25:00,522 INFO L290 TraceCheckUtils]: 25: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-08 06:25:00,522 INFO L272 TraceCheckUtils]: 24: Hoare triple {16532#(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)); {16116#true} is VALID [2022-04-08 06:25:00,523 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {16116#true} {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #84#return; {16532#(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-08 06:25:00,523 INFO L290 TraceCheckUtils]: 22: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-08 06:25:00,523 INFO L290 TraceCheckUtils]: 21: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-08 06:25:00,523 INFO L290 TraceCheckUtils]: 20: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-08 06:25:00,523 INFO L272 TraceCheckUtils]: 19: Hoare triple {16532#(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)); {16116#true} is VALID [2022-04-08 06:25:00,524 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {16116#true} {16532#(or (<= main_~d~0 0) (= (div (* main_~d~0 2) 2) (* (div (* main_~p~0 2) 2) (mod main_~B~0 4294967296))))} #82#return; {16532#(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-08 06:25:00,524 INFO L290 TraceCheckUtils]: 17: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-08 06:25:00,524 INFO L290 TraceCheckUtils]: 16: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-08 06:25:00,524 INFO L290 TraceCheckUtils]: 15: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-08 06:25:00,524 INFO L272 TraceCheckUtils]: 14: Hoare triple {16532#(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)); {16116#true} is VALID [2022-04-08 06:25:00,524 INFO L290 TraceCheckUtils]: 13: Hoare triple {16532#(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 < 10);havoc #t~post6; {16532#(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-08 06:25:00,525 INFO L290 TraceCheckUtils]: 12: Hoare triple {16532#(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; {16532#(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-08 06:25:00,525 INFO L290 TraceCheckUtils]: 11: Hoare triple {16116#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {16532#(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-08 06:25:00,525 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {16116#true} {16116#true} #80#return; {16116#true} is VALID [2022-04-08 06:25:00,525 INFO L290 TraceCheckUtils]: 9: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-08 06:25:00,525 INFO L290 TraceCheckUtils]: 8: Hoare triple {16116#true} assume !(0 == ~cond); {16116#true} is VALID [2022-04-08 06:25:00,525 INFO L290 TraceCheckUtils]: 7: Hoare triple {16116#true} ~cond := #in~cond; {16116#true} is VALID [2022-04-08 06:25:00,526 INFO L272 TraceCheckUtils]: 6: Hoare triple {16116#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {16116#true} is VALID [2022-04-08 06:25:00,526 INFO L290 TraceCheckUtils]: 5: Hoare triple {16116#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; {16116#true} is VALID [2022-04-08 06:25:00,526 INFO L272 TraceCheckUtils]: 4: Hoare triple {16116#true} call #t~ret8 := main(); {16116#true} is VALID [2022-04-08 06:25:00,526 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {16116#true} {16116#true} #96#return; {16116#true} is VALID [2022-04-08 06:25:00,526 INFO L290 TraceCheckUtils]: 2: Hoare triple {16116#true} assume true; {16116#true} is VALID [2022-04-08 06:25:00,526 INFO L290 TraceCheckUtils]: 1: Hoare triple {16116#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; {16116#true} is VALID [2022-04-08 06:25:00,526 INFO L272 TraceCheckUtils]: 0: Hoare triple {16116#true} call ULTIMATE.init(); {16116#true} is VALID [2022-04-08 06:25:00,526 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-08 06:25:00,527 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:25:00,527 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1903687352] [2022-04-08 06:25:00,527 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:25:00,527 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1721731451] [2022-04-08 06:25:00,527 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1721731451] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:25:00,527 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:25:00,527 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 8] total 15 [2022-04-08 06:25:00,527 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:25:00,527 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [201768247] [2022-04-08 06:25:00,527 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [201768247] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:25:00,527 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:25:00,527 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [11] imperfect sequences [] total 11 [2022-04-08 06:25:00,527 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [882192968] [2022-04-08 06:25:00,527 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:25:00,528 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-08 06:25:00,528 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:25:00,528 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-08 06:25:00,578 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-08 06:25:00,578 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-04-08 06:25:00,578 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:25:00,579 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-04-08 06:25:00,579 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=48, Invalid=162, Unknown=0, NotChecked=0, Total=210 [2022-04-08 06:25:00,579 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-08 06:25:02,337 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:25:02,338 INFO L93 Difference]: Finished difference Result 257 states and 325 transitions. [2022-04-08 06:25:02,338 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-08 06:25:02,338 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-08 06:25:02,338 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:25:02,338 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-08 06:25:02,352 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 124 transitions. [2022-04-08 06:25:02,353 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-08 06:25:02,354 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 124 transitions. [2022-04-08 06:25:02,355 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 124 transitions. [2022-04-08 06:25:02,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-08 06:25:02,454 INFO L225 Difference]: With dead ends: 257 [2022-04-08 06:25:02,454 INFO L226 Difference]: Without dead ends: 205 [2022-04-08 06:25:02,454 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 183 GetRequests, 165 SyntacticMatches, 3 SemanticMatches, 15 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 48 ImplicationChecksByTransitivity, 1.3s TimeCoverageRelationStatistics Valid=56, Invalid=216, Unknown=0, NotChecked=0, Total=272 [2022-04-08 06:25:02,454 INFO L913 BasicCegarLoop]: 64 mSDtfsCounter, 48 mSDsluCounter, 252 mSDsCounter, 0 mSdLazyCounter, 287 mSolverCounterSat, 34 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 60 SdHoareTripleChecker+Valid, 316 SdHoareTripleChecker+Invalid, 321 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 34 IncrementalHoareTripleChecker+Valid, 287 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-04-08 06:25:02,455 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [60 Valid, 316 Invalid, 321 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [34 Valid, 287 Invalid, 0 Unknown, 0 Unchecked, 0.6s Time] [2022-04-08 06:25:02,455 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 205 states. [2022-04-08 06:25:02,677 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 205 to 205. [2022-04-08 06:25:02,677 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:25:02,678 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-08 06:25:02,678 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-08 06:25:02,678 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-08 06:25:02,682 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:25:02,682 INFO L93 Difference]: Finished difference Result 205 states and 243 transitions. [2022-04-08 06:25:02,682 INFO L276 IsEmpty]: Start isEmpty. Operand 205 states and 243 transitions. [2022-04-08 06:25:02,683 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:25:02,683 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:25:02,683 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-08 06:25:02,683 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-08 06:25:02,688 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:25:02,688 INFO L93 Difference]: Finished difference Result 205 states and 243 transitions. [2022-04-08 06:25:02,688 INFO L276 IsEmpty]: Start isEmpty. Operand 205 states and 243 transitions. [2022-04-08 06:25:02,688 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:25:02,688 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:25:02,688 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:25:02,688 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:25:02,689 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-08 06:25:02,693 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 205 states to 205 states and 243 transitions. [2022-04-08 06:25:02,694 INFO L78 Accepts]: Start accepts. Automaton has 205 states and 243 transitions. Word has length 91 [2022-04-08 06:25:02,694 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:25:02,694 INFO L478 AbstractCegarLoop]: Abstraction has 205 states and 243 transitions. [2022-04-08 06:25:02,694 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-08 06:25:02,694 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 205 states and 243 transitions. [2022-04-08 06:25:05,016 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-08 06:25:05,016 INFO L276 IsEmpty]: Start isEmpty. Operand 205 states and 243 transitions. [2022-04-08 06:25:05,017 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 98 [2022-04-08 06:25:05,017 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:25:05,017 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-08 06:25:05,037 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (17)] Ended with exit code 0 [2022-04-08 06:25:05,233 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-08 06:25:05,234 INFO L403 AbstractCegarLoop]: === Iteration 20 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:25:05,234 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:25:05,234 INFO L85 PathProgramCache]: Analyzing trace with hash 114996177, now seen corresponding path program 7 times [2022-04-08 06:25:05,234 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:25:05,234 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [202984684] [2022-04-08 06:25:11,268 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-08 06:25:11,268 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-08 06:25:11,268 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 06:25:11,268 INFO L85 PathProgramCache]: Analyzing trace with hash 114996177, now seen corresponding path program 8 times [2022-04-08 06:25:11,269 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:25:11,269 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2071887963] [2022-04-08 06:25:11,269 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:25:11,269 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:25:11,282 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:25:11,282 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2116981650] [2022-04-08 06:25:11,282 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-08 06:25:11,282 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:25:11,282 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:25:11,286 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-08 06:25:11,287 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-08 06:25:11,336 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-08 06:25:11,336 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:25:11,337 INFO L263 TraceCheckSpWp]: Trace formula consists of 244 conjuncts, 13 conjunts are in the unsatisfiable core [2022-04-08 06:25:11,353 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:25:11,354 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:25:11,670 INFO L272 TraceCheckUtils]: 0: Hoare triple {18014#true} call ULTIMATE.init(); {18014#true} is VALID [2022-04-08 06:25:11,670 INFO L290 TraceCheckUtils]: 1: Hoare triple {18014#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; {18022#(<= ~counter~0 0)} is VALID [2022-04-08 06:25:11,671 INFO L290 TraceCheckUtils]: 2: Hoare triple {18022#(<= ~counter~0 0)} assume true; {18022#(<= ~counter~0 0)} is VALID [2022-04-08 06:25:11,671 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18022#(<= ~counter~0 0)} {18014#true} #96#return; {18022#(<= ~counter~0 0)} is VALID [2022-04-08 06:25:11,671 INFO L272 TraceCheckUtils]: 4: Hoare triple {18022#(<= ~counter~0 0)} call #t~ret8 := main(); {18022#(<= ~counter~0 0)} is VALID [2022-04-08 06:25:11,671 INFO L290 TraceCheckUtils]: 5: Hoare triple {18022#(<= ~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; {18022#(<= ~counter~0 0)} is VALID [2022-04-08 06:25:11,672 INFO L272 TraceCheckUtils]: 6: Hoare triple {18022#(<= ~counter~0 0)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {18022#(<= ~counter~0 0)} is VALID [2022-04-08 06:25:11,672 INFO L290 TraceCheckUtils]: 7: Hoare triple {18022#(<= ~counter~0 0)} ~cond := #in~cond; {18022#(<= ~counter~0 0)} is VALID [2022-04-08 06:25:11,672 INFO L290 TraceCheckUtils]: 8: Hoare triple {18022#(<= ~counter~0 0)} assume !(0 == ~cond); {18022#(<= ~counter~0 0)} is VALID [2022-04-08 06:25:11,672 INFO L290 TraceCheckUtils]: 9: Hoare triple {18022#(<= ~counter~0 0)} assume true; {18022#(<= ~counter~0 0)} is VALID [2022-04-08 06:25:11,673 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18022#(<= ~counter~0 0)} {18022#(<= ~counter~0 0)} #80#return; {18022#(<= ~counter~0 0)} is VALID [2022-04-08 06:25:11,673 INFO L290 TraceCheckUtils]: 11: Hoare triple {18022#(<= ~counter~0 0)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {18022#(<= ~counter~0 0)} is VALID [2022-04-08 06:25:11,674 INFO L290 TraceCheckUtils]: 12: Hoare triple {18022#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18056#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:11,674 INFO L290 TraceCheckUtils]: 13: Hoare triple {18056#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {18056#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:11,674 INFO L272 TraceCheckUtils]: 14: Hoare triple {18056#(<= ~counter~0 1)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {18056#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:11,675 INFO L290 TraceCheckUtils]: 15: Hoare triple {18056#(<= ~counter~0 1)} ~cond := #in~cond; {18056#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:11,675 INFO L290 TraceCheckUtils]: 16: Hoare triple {18056#(<= ~counter~0 1)} assume !(0 == ~cond); {18056#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:11,675 INFO L290 TraceCheckUtils]: 17: Hoare triple {18056#(<= ~counter~0 1)} assume true; {18056#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:11,675 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {18056#(<= ~counter~0 1)} {18056#(<= ~counter~0 1)} #82#return; {18056#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:11,676 INFO L272 TraceCheckUtils]: 19: Hoare triple {18056#(<= ~counter~0 1)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {18056#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:11,676 INFO L290 TraceCheckUtils]: 20: Hoare triple {18056#(<= ~counter~0 1)} ~cond := #in~cond; {18056#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:11,676 INFO L290 TraceCheckUtils]: 21: Hoare triple {18056#(<= ~counter~0 1)} assume !(0 == ~cond); {18056#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:11,676 INFO L290 TraceCheckUtils]: 22: Hoare triple {18056#(<= ~counter~0 1)} assume true; {18056#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:11,677 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {18056#(<= ~counter~0 1)} {18056#(<= ~counter~0 1)} #84#return; {18056#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:11,677 INFO L272 TraceCheckUtils]: 24: Hoare triple {18056#(<= ~counter~0 1)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {18056#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:11,677 INFO L290 TraceCheckUtils]: 25: Hoare triple {18056#(<= ~counter~0 1)} ~cond := #in~cond; {18056#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:11,678 INFO L290 TraceCheckUtils]: 26: Hoare triple {18056#(<= ~counter~0 1)} assume !(0 == ~cond); {18056#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:11,678 INFO L290 TraceCheckUtils]: 27: Hoare triple {18056#(<= ~counter~0 1)} assume true; {18056#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:11,678 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {18056#(<= ~counter~0 1)} {18056#(<= ~counter~0 1)} #86#return; {18056#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:11,679 INFO L290 TraceCheckUtils]: 29: Hoare triple {18056#(<= ~counter~0 1)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {18056#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:11,679 INFO L290 TraceCheckUtils]: 30: Hoare triple {18056#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18111#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:11,679 INFO L290 TraceCheckUtils]: 31: Hoare triple {18111#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {18111#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:11,680 INFO L272 TraceCheckUtils]: 32: Hoare triple {18111#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {18111#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:11,680 INFO L290 TraceCheckUtils]: 33: Hoare triple {18111#(<= ~counter~0 2)} ~cond := #in~cond; {18111#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:11,680 INFO L290 TraceCheckUtils]: 34: Hoare triple {18111#(<= ~counter~0 2)} assume !(0 == ~cond); {18111#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:11,680 INFO L290 TraceCheckUtils]: 35: Hoare triple {18111#(<= ~counter~0 2)} assume true; {18111#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:11,681 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {18111#(<= ~counter~0 2)} {18111#(<= ~counter~0 2)} #82#return; {18111#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:11,681 INFO L272 TraceCheckUtils]: 37: Hoare triple {18111#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {18111#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:11,681 INFO L290 TraceCheckUtils]: 38: Hoare triple {18111#(<= ~counter~0 2)} ~cond := #in~cond; {18111#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:11,682 INFO L290 TraceCheckUtils]: 39: Hoare triple {18111#(<= ~counter~0 2)} assume !(0 == ~cond); {18111#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:11,682 INFO L290 TraceCheckUtils]: 40: Hoare triple {18111#(<= ~counter~0 2)} assume true; {18111#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:11,682 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {18111#(<= ~counter~0 2)} {18111#(<= ~counter~0 2)} #84#return; {18111#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:11,683 INFO L272 TraceCheckUtils]: 42: Hoare triple {18111#(<= ~counter~0 2)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {18111#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:11,683 INFO L290 TraceCheckUtils]: 43: Hoare triple {18111#(<= ~counter~0 2)} ~cond := #in~cond; {18111#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:11,683 INFO L290 TraceCheckUtils]: 44: Hoare triple {18111#(<= ~counter~0 2)} assume !(0 == ~cond); {18111#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:11,683 INFO L290 TraceCheckUtils]: 45: Hoare triple {18111#(<= ~counter~0 2)} assume true; {18111#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:11,684 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {18111#(<= ~counter~0 2)} {18111#(<= ~counter~0 2)} #86#return; {18111#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:11,684 INFO L290 TraceCheckUtils]: 47: Hoare triple {18111#(<= ~counter~0 2)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {18111#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:11,684 INFO L290 TraceCheckUtils]: 48: Hoare triple {18111#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18166#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:11,685 INFO L290 TraceCheckUtils]: 49: Hoare triple {18166#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {18166#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:11,685 INFO L272 TraceCheckUtils]: 50: Hoare triple {18166#(<= ~counter~0 3)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {18166#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:11,685 INFO L290 TraceCheckUtils]: 51: Hoare triple {18166#(<= ~counter~0 3)} ~cond := #in~cond; {18166#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:11,685 INFO L290 TraceCheckUtils]: 52: Hoare triple {18166#(<= ~counter~0 3)} assume !(0 == ~cond); {18166#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:11,686 INFO L290 TraceCheckUtils]: 53: Hoare triple {18166#(<= ~counter~0 3)} assume true; {18166#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:11,686 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {18166#(<= ~counter~0 3)} {18166#(<= ~counter~0 3)} #82#return; {18166#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:11,686 INFO L272 TraceCheckUtils]: 55: Hoare triple {18166#(<= ~counter~0 3)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {18166#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:11,687 INFO L290 TraceCheckUtils]: 56: Hoare triple {18166#(<= ~counter~0 3)} ~cond := #in~cond; {18166#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:11,687 INFO L290 TraceCheckUtils]: 57: Hoare triple {18166#(<= ~counter~0 3)} assume !(0 == ~cond); {18166#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:11,687 INFO L290 TraceCheckUtils]: 58: Hoare triple {18166#(<= ~counter~0 3)} assume true; {18166#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:11,688 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {18166#(<= ~counter~0 3)} {18166#(<= ~counter~0 3)} #84#return; {18166#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:11,688 INFO L272 TraceCheckUtils]: 60: Hoare triple {18166#(<= ~counter~0 3)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {18166#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:11,688 INFO L290 TraceCheckUtils]: 61: Hoare triple {18166#(<= ~counter~0 3)} ~cond := #in~cond; {18166#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:11,688 INFO L290 TraceCheckUtils]: 62: Hoare triple {18166#(<= ~counter~0 3)} assume !(0 == ~cond); {18166#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:11,689 INFO L290 TraceCheckUtils]: 63: Hoare triple {18166#(<= ~counter~0 3)} assume true; {18166#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:11,689 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {18166#(<= ~counter~0 3)} {18166#(<= ~counter~0 3)} #86#return; {18166#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:11,689 INFO L290 TraceCheckUtils]: 65: Hoare triple {18166#(<= ~counter~0 3)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {18166#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:11,690 INFO L290 TraceCheckUtils]: 66: Hoare triple {18166#(<= ~counter~0 3)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18221#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:11,690 INFO L290 TraceCheckUtils]: 67: Hoare triple {18221#(<= ~counter~0 4)} assume !!(#t~post6 < 10);havoc #t~post6; {18221#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:11,690 INFO L272 TraceCheckUtils]: 68: Hoare triple {18221#(<= ~counter~0 4)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {18221#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:11,691 INFO L290 TraceCheckUtils]: 69: Hoare triple {18221#(<= ~counter~0 4)} ~cond := #in~cond; {18221#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:11,691 INFO L290 TraceCheckUtils]: 70: Hoare triple {18221#(<= ~counter~0 4)} assume !(0 == ~cond); {18221#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:11,691 INFO L290 TraceCheckUtils]: 71: Hoare triple {18221#(<= ~counter~0 4)} assume true; {18221#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:11,691 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {18221#(<= ~counter~0 4)} {18221#(<= ~counter~0 4)} #82#return; {18221#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:11,692 INFO L272 TraceCheckUtils]: 73: Hoare triple {18221#(<= ~counter~0 4)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {18221#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:11,692 INFO L290 TraceCheckUtils]: 74: Hoare triple {18221#(<= ~counter~0 4)} ~cond := #in~cond; {18221#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:11,692 INFO L290 TraceCheckUtils]: 75: Hoare triple {18221#(<= ~counter~0 4)} assume !(0 == ~cond); {18221#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:11,693 INFO L290 TraceCheckUtils]: 76: Hoare triple {18221#(<= ~counter~0 4)} assume true; {18221#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:11,693 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {18221#(<= ~counter~0 4)} {18221#(<= ~counter~0 4)} #84#return; {18221#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:11,693 INFO L272 TraceCheckUtils]: 78: Hoare triple {18221#(<= ~counter~0 4)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {18221#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:11,694 INFO L290 TraceCheckUtils]: 79: Hoare triple {18221#(<= ~counter~0 4)} ~cond := #in~cond; {18221#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:11,694 INFO L290 TraceCheckUtils]: 80: Hoare triple {18221#(<= ~counter~0 4)} assume !(0 == ~cond); {18221#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:11,694 INFO L290 TraceCheckUtils]: 81: Hoare triple {18221#(<= ~counter~0 4)} assume true; {18221#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:11,694 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {18221#(<= ~counter~0 4)} {18221#(<= ~counter~0 4)} #86#return; {18221#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:11,695 INFO L290 TraceCheckUtils]: 83: Hoare triple {18221#(<= ~counter~0 4)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {18221#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:11,695 INFO L290 TraceCheckUtils]: 84: Hoare triple {18221#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18276#(<= |main_#t~post6| 4)} is VALID [2022-04-08 06:25:11,695 INFO L290 TraceCheckUtils]: 85: Hoare triple {18276#(<= |main_#t~post6| 4)} assume !(#t~post6 < 10);havoc #t~post6; {18015#false} is VALID [2022-04-08 06:25:11,695 INFO L290 TraceCheckUtils]: 86: Hoare triple {18015#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18015#false} is VALID [2022-04-08 06:25:11,695 INFO L290 TraceCheckUtils]: 87: Hoare triple {18015#false} assume !(#t~post7 < 10);havoc #t~post7; {18015#false} is VALID [2022-04-08 06:25:11,696 INFO L272 TraceCheckUtils]: 88: Hoare triple {18015#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {18015#false} is VALID [2022-04-08 06:25:11,696 INFO L290 TraceCheckUtils]: 89: Hoare triple {18015#false} ~cond := #in~cond; {18015#false} is VALID [2022-04-08 06:25:11,696 INFO L290 TraceCheckUtils]: 90: Hoare triple {18015#false} assume !(0 == ~cond); {18015#false} is VALID [2022-04-08 06:25:11,696 INFO L290 TraceCheckUtils]: 91: Hoare triple {18015#false} assume true; {18015#false} is VALID [2022-04-08 06:25:11,696 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {18015#false} {18015#false} #92#return; {18015#false} is VALID [2022-04-08 06:25:11,696 INFO L272 TraceCheckUtils]: 93: Hoare triple {18015#false} call __VERIFIER_assert((if ~B~0 % 4294967296 == ~d~0 then 1 else 0)); {18015#false} is VALID [2022-04-08 06:25:11,696 INFO L290 TraceCheckUtils]: 94: Hoare triple {18015#false} ~cond := #in~cond; {18015#false} is VALID [2022-04-08 06:25:11,696 INFO L290 TraceCheckUtils]: 95: Hoare triple {18015#false} assume 0 == ~cond; {18015#false} is VALID [2022-04-08 06:25:11,696 INFO L290 TraceCheckUtils]: 96: Hoare triple {18015#false} assume !false; {18015#false} is VALID [2022-04-08 06:25:11,696 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-08 06:25:11,697 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:25:12,037 INFO L290 TraceCheckUtils]: 96: Hoare triple {18015#false} assume !false; {18015#false} is VALID [2022-04-08 06:25:12,038 INFO L290 TraceCheckUtils]: 95: Hoare triple {18015#false} assume 0 == ~cond; {18015#false} is VALID [2022-04-08 06:25:12,038 INFO L290 TraceCheckUtils]: 94: Hoare triple {18015#false} ~cond := #in~cond; {18015#false} is VALID [2022-04-08 06:25:12,038 INFO L272 TraceCheckUtils]: 93: Hoare triple {18015#false} call __VERIFIER_assert((if ~B~0 % 4294967296 == ~d~0 then 1 else 0)); {18015#false} is VALID [2022-04-08 06:25:12,038 INFO L284 TraceCheckUtils]: 92: Hoare quadruple {18014#true} {18015#false} #92#return; {18015#false} is VALID [2022-04-08 06:25:12,038 INFO L290 TraceCheckUtils]: 91: Hoare triple {18014#true} assume true; {18014#true} is VALID [2022-04-08 06:25:12,038 INFO L290 TraceCheckUtils]: 90: Hoare triple {18014#true} assume !(0 == ~cond); {18014#true} is VALID [2022-04-08 06:25:12,038 INFO L290 TraceCheckUtils]: 89: Hoare triple {18014#true} ~cond := #in~cond; {18014#true} is VALID [2022-04-08 06:25:12,038 INFO L272 TraceCheckUtils]: 88: Hoare triple {18015#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {18014#true} is VALID [2022-04-08 06:25:12,038 INFO L290 TraceCheckUtils]: 87: Hoare triple {18015#false} assume !(#t~post7 < 10);havoc #t~post7; {18015#false} is VALID [2022-04-08 06:25:12,038 INFO L290 TraceCheckUtils]: 86: Hoare triple {18015#false} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {18015#false} is VALID [2022-04-08 06:25:12,039 INFO L290 TraceCheckUtils]: 85: Hoare triple {18346#(< |main_#t~post6| 10)} assume !(#t~post6 < 10);havoc #t~post6; {18015#false} is VALID [2022-04-08 06:25:12,039 INFO L290 TraceCheckUtils]: 84: Hoare triple {18350#(< ~counter~0 10)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18346#(< |main_#t~post6| 10)} is VALID [2022-04-08 06:25:12,039 INFO L290 TraceCheckUtils]: 83: Hoare triple {18350#(< ~counter~0 10)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {18350#(< ~counter~0 10)} is VALID [2022-04-08 06:25:12,040 INFO L284 TraceCheckUtils]: 82: Hoare quadruple {18014#true} {18350#(< ~counter~0 10)} #86#return; {18350#(< ~counter~0 10)} is VALID [2022-04-08 06:25:12,040 INFO L290 TraceCheckUtils]: 81: Hoare triple {18014#true} assume true; {18014#true} is VALID [2022-04-08 06:25:12,040 INFO L290 TraceCheckUtils]: 80: Hoare triple {18014#true} assume !(0 == ~cond); {18014#true} is VALID [2022-04-08 06:25:12,040 INFO L290 TraceCheckUtils]: 79: Hoare triple {18014#true} ~cond := #in~cond; {18014#true} is VALID [2022-04-08 06:25:12,040 INFO L272 TraceCheckUtils]: 78: Hoare triple {18350#(< ~counter~0 10)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {18014#true} is VALID [2022-04-08 06:25:12,040 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {18014#true} {18350#(< ~counter~0 10)} #84#return; {18350#(< ~counter~0 10)} is VALID [2022-04-08 06:25:12,040 INFO L290 TraceCheckUtils]: 76: Hoare triple {18014#true} assume true; {18014#true} is VALID [2022-04-08 06:25:12,040 INFO L290 TraceCheckUtils]: 75: Hoare triple {18014#true} assume !(0 == ~cond); {18014#true} is VALID [2022-04-08 06:25:12,040 INFO L290 TraceCheckUtils]: 74: Hoare triple {18014#true} ~cond := #in~cond; {18014#true} is VALID [2022-04-08 06:25:12,040 INFO L272 TraceCheckUtils]: 73: Hoare triple {18350#(< ~counter~0 10)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {18014#true} is VALID [2022-04-08 06:25:12,041 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {18014#true} {18350#(< ~counter~0 10)} #82#return; {18350#(< ~counter~0 10)} is VALID [2022-04-08 06:25:12,041 INFO L290 TraceCheckUtils]: 71: Hoare triple {18014#true} assume true; {18014#true} is VALID [2022-04-08 06:25:12,041 INFO L290 TraceCheckUtils]: 70: Hoare triple {18014#true} assume !(0 == ~cond); {18014#true} is VALID [2022-04-08 06:25:12,041 INFO L290 TraceCheckUtils]: 69: Hoare triple {18014#true} ~cond := #in~cond; {18014#true} is VALID [2022-04-08 06:25:12,041 INFO L272 TraceCheckUtils]: 68: Hoare triple {18350#(< ~counter~0 10)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {18014#true} is VALID [2022-04-08 06:25:12,041 INFO L290 TraceCheckUtils]: 67: Hoare triple {18350#(< ~counter~0 10)} assume !!(#t~post6 < 10);havoc #t~post6; {18350#(< ~counter~0 10)} is VALID [2022-04-08 06:25:12,042 INFO L290 TraceCheckUtils]: 66: Hoare triple {18405#(< ~counter~0 9)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18350#(< ~counter~0 10)} is VALID [2022-04-08 06:25:12,042 INFO L290 TraceCheckUtils]: 65: Hoare triple {18405#(< ~counter~0 9)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {18405#(< ~counter~0 9)} is VALID [2022-04-08 06:25:12,042 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {18014#true} {18405#(< ~counter~0 9)} #86#return; {18405#(< ~counter~0 9)} is VALID [2022-04-08 06:25:12,043 INFO L290 TraceCheckUtils]: 63: Hoare triple {18014#true} assume true; {18014#true} is VALID [2022-04-08 06:25:12,043 INFO L290 TraceCheckUtils]: 62: Hoare triple {18014#true} assume !(0 == ~cond); {18014#true} is VALID [2022-04-08 06:25:12,043 INFO L290 TraceCheckUtils]: 61: Hoare triple {18014#true} ~cond := #in~cond; {18014#true} is VALID [2022-04-08 06:25:12,043 INFO L272 TraceCheckUtils]: 60: Hoare triple {18405#(< ~counter~0 9)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {18014#true} is VALID [2022-04-08 06:25:12,043 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {18014#true} {18405#(< ~counter~0 9)} #84#return; {18405#(< ~counter~0 9)} is VALID [2022-04-08 06:25:12,043 INFO L290 TraceCheckUtils]: 58: Hoare triple {18014#true} assume true; {18014#true} is VALID [2022-04-08 06:25:12,043 INFO L290 TraceCheckUtils]: 57: Hoare triple {18014#true} assume !(0 == ~cond); {18014#true} is VALID [2022-04-08 06:25:12,043 INFO L290 TraceCheckUtils]: 56: Hoare triple {18014#true} ~cond := #in~cond; {18014#true} is VALID [2022-04-08 06:25:12,043 INFO L272 TraceCheckUtils]: 55: Hoare triple {18405#(< ~counter~0 9)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {18014#true} is VALID [2022-04-08 06:25:12,044 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {18014#true} {18405#(< ~counter~0 9)} #82#return; {18405#(< ~counter~0 9)} is VALID [2022-04-08 06:25:12,044 INFO L290 TraceCheckUtils]: 53: Hoare triple {18014#true} assume true; {18014#true} is VALID [2022-04-08 06:25:12,044 INFO L290 TraceCheckUtils]: 52: Hoare triple {18014#true} assume !(0 == ~cond); {18014#true} is VALID [2022-04-08 06:25:12,044 INFO L290 TraceCheckUtils]: 51: Hoare triple {18014#true} ~cond := #in~cond; {18014#true} is VALID [2022-04-08 06:25:12,044 INFO L272 TraceCheckUtils]: 50: Hoare triple {18405#(< ~counter~0 9)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {18014#true} is VALID [2022-04-08 06:25:12,044 INFO L290 TraceCheckUtils]: 49: Hoare triple {18405#(< ~counter~0 9)} assume !!(#t~post6 < 10);havoc #t~post6; {18405#(< ~counter~0 9)} is VALID [2022-04-08 06:25:12,045 INFO L290 TraceCheckUtils]: 48: Hoare triple {18460#(< ~counter~0 8)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18405#(< ~counter~0 9)} is VALID [2022-04-08 06:25:12,045 INFO L290 TraceCheckUtils]: 47: Hoare triple {18460#(< ~counter~0 8)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {18460#(< ~counter~0 8)} is VALID [2022-04-08 06:25:12,045 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {18014#true} {18460#(< ~counter~0 8)} #86#return; {18460#(< ~counter~0 8)} is VALID [2022-04-08 06:25:12,045 INFO L290 TraceCheckUtils]: 45: Hoare triple {18014#true} assume true; {18014#true} is VALID [2022-04-08 06:25:12,045 INFO L290 TraceCheckUtils]: 44: Hoare triple {18014#true} assume !(0 == ~cond); {18014#true} is VALID [2022-04-08 06:25:12,045 INFO L290 TraceCheckUtils]: 43: Hoare triple {18014#true} ~cond := #in~cond; {18014#true} is VALID [2022-04-08 06:25:12,045 INFO L272 TraceCheckUtils]: 42: Hoare triple {18460#(< ~counter~0 8)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {18014#true} is VALID [2022-04-08 06:25:12,046 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {18014#true} {18460#(< ~counter~0 8)} #84#return; {18460#(< ~counter~0 8)} is VALID [2022-04-08 06:25:12,046 INFO L290 TraceCheckUtils]: 40: Hoare triple {18014#true} assume true; {18014#true} is VALID [2022-04-08 06:25:12,046 INFO L290 TraceCheckUtils]: 39: Hoare triple {18014#true} assume !(0 == ~cond); {18014#true} is VALID [2022-04-08 06:25:12,046 INFO L290 TraceCheckUtils]: 38: Hoare triple {18014#true} ~cond := #in~cond; {18014#true} is VALID [2022-04-08 06:25:12,046 INFO L272 TraceCheckUtils]: 37: Hoare triple {18460#(< ~counter~0 8)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {18014#true} is VALID [2022-04-08 06:25:12,046 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {18014#true} {18460#(< ~counter~0 8)} #82#return; {18460#(< ~counter~0 8)} is VALID [2022-04-08 06:25:12,046 INFO L290 TraceCheckUtils]: 35: Hoare triple {18014#true} assume true; {18014#true} is VALID [2022-04-08 06:25:12,046 INFO L290 TraceCheckUtils]: 34: Hoare triple {18014#true} assume !(0 == ~cond); {18014#true} is VALID [2022-04-08 06:25:12,047 INFO L290 TraceCheckUtils]: 33: Hoare triple {18014#true} ~cond := #in~cond; {18014#true} is VALID [2022-04-08 06:25:12,047 INFO L272 TraceCheckUtils]: 32: Hoare triple {18460#(< ~counter~0 8)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {18014#true} is VALID [2022-04-08 06:25:12,047 INFO L290 TraceCheckUtils]: 31: Hoare triple {18460#(< ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {18460#(< ~counter~0 8)} is VALID [2022-04-08 06:25:12,051 INFO L290 TraceCheckUtils]: 30: Hoare triple {18515#(< ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18460#(< ~counter~0 8)} is VALID [2022-04-08 06:25:12,051 INFO L290 TraceCheckUtils]: 29: Hoare triple {18515#(< ~counter~0 7)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {18515#(< ~counter~0 7)} is VALID [2022-04-08 06:25:12,051 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {18014#true} {18515#(< ~counter~0 7)} #86#return; {18515#(< ~counter~0 7)} is VALID [2022-04-08 06:25:12,051 INFO L290 TraceCheckUtils]: 27: Hoare triple {18014#true} assume true; {18014#true} is VALID [2022-04-08 06:25:12,051 INFO L290 TraceCheckUtils]: 26: Hoare triple {18014#true} assume !(0 == ~cond); {18014#true} is VALID [2022-04-08 06:25:12,051 INFO L290 TraceCheckUtils]: 25: Hoare triple {18014#true} ~cond := #in~cond; {18014#true} is VALID [2022-04-08 06:25:12,051 INFO L272 TraceCheckUtils]: 24: Hoare triple {18515#(< ~counter~0 7)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {18014#true} is VALID [2022-04-08 06:25:12,052 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {18014#true} {18515#(< ~counter~0 7)} #84#return; {18515#(< ~counter~0 7)} is VALID [2022-04-08 06:25:12,052 INFO L290 TraceCheckUtils]: 22: Hoare triple {18014#true} assume true; {18014#true} is VALID [2022-04-08 06:25:12,054 INFO L290 TraceCheckUtils]: 21: Hoare triple {18014#true} assume !(0 == ~cond); {18014#true} is VALID [2022-04-08 06:25:12,054 INFO L290 TraceCheckUtils]: 20: Hoare triple {18014#true} ~cond := #in~cond; {18014#true} is VALID [2022-04-08 06:25:12,054 INFO L272 TraceCheckUtils]: 19: Hoare triple {18515#(< ~counter~0 7)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {18014#true} is VALID [2022-04-08 06:25:12,054 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {18014#true} {18515#(< ~counter~0 7)} #82#return; {18515#(< ~counter~0 7)} is VALID [2022-04-08 06:25:12,054 INFO L290 TraceCheckUtils]: 17: Hoare triple {18014#true} assume true; {18014#true} is VALID [2022-04-08 06:25:12,054 INFO L290 TraceCheckUtils]: 16: Hoare triple {18014#true} assume !(0 == ~cond); {18014#true} is VALID [2022-04-08 06:25:12,054 INFO L290 TraceCheckUtils]: 15: Hoare triple {18014#true} ~cond := #in~cond; {18014#true} is VALID [2022-04-08 06:25:12,054 INFO L272 TraceCheckUtils]: 14: Hoare triple {18515#(< ~counter~0 7)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {18014#true} is VALID [2022-04-08 06:25:12,055 INFO L290 TraceCheckUtils]: 13: Hoare triple {18515#(< ~counter~0 7)} assume !!(#t~post6 < 10);havoc #t~post6; {18515#(< ~counter~0 7)} is VALID [2022-04-08 06:25:12,055 INFO L290 TraceCheckUtils]: 12: Hoare triple {18570#(< ~counter~0 6)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {18515#(< ~counter~0 7)} is VALID [2022-04-08 06:25:12,056 INFO L290 TraceCheckUtils]: 11: Hoare triple {18570#(< ~counter~0 6)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {18570#(< ~counter~0 6)} is VALID [2022-04-08 06:25:12,056 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {18014#true} {18570#(< ~counter~0 6)} #80#return; {18570#(< ~counter~0 6)} is VALID [2022-04-08 06:25:12,056 INFO L290 TraceCheckUtils]: 9: Hoare triple {18014#true} assume true; {18014#true} is VALID [2022-04-08 06:25:12,056 INFO L290 TraceCheckUtils]: 8: Hoare triple {18014#true} assume !(0 == ~cond); {18014#true} is VALID [2022-04-08 06:25:12,056 INFO L290 TraceCheckUtils]: 7: Hoare triple {18014#true} ~cond := #in~cond; {18014#true} is VALID [2022-04-08 06:25:12,056 INFO L272 TraceCheckUtils]: 6: Hoare triple {18570#(< ~counter~0 6)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {18014#true} is VALID [2022-04-08 06:25:12,057 INFO L290 TraceCheckUtils]: 5: Hoare triple {18570#(< ~counter~0 6)} 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; {18570#(< ~counter~0 6)} is VALID [2022-04-08 06:25:12,057 INFO L272 TraceCheckUtils]: 4: Hoare triple {18570#(< ~counter~0 6)} call #t~ret8 := main(); {18570#(< ~counter~0 6)} is VALID [2022-04-08 06:25:12,057 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {18570#(< ~counter~0 6)} {18014#true} #96#return; {18570#(< ~counter~0 6)} is VALID [2022-04-08 06:25:12,058 INFO L290 TraceCheckUtils]: 2: Hoare triple {18570#(< ~counter~0 6)} assume true; {18570#(< ~counter~0 6)} is VALID [2022-04-08 06:25:12,058 INFO L290 TraceCheckUtils]: 1: Hoare triple {18014#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; {18570#(< ~counter~0 6)} is VALID [2022-04-08 06:25:12,058 INFO L272 TraceCheckUtils]: 0: Hoare triple {18014#true} call ULTIMATE.init(); {18014#true} is VALID [2022-04-08 06:25:12,058 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-08 06:25:12,059 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:25:12,059 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2071887963] [2022-04-08 06:25:12,059 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:25:12,059 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2116981650] [2022-04-08 06:25:12,059 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2116981650] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:25:12,059 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:25:12,059 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 14 [2022-04-08 06:25:12,059 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:25:12,059 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [202984684] [2022-04-08 06:25:12,059 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [202984684] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:25:12,059 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:25:12,059 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [8] imperfect sequences [] total 8 [2022-04-08 06:25:12,059 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2011863735] [2022-04-08 06:25:12,059 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:25:12,060 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-08 06:25:12,060 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:25:12,060 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-08 06:25:12,124 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-08 06:25:12,124 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-04-08 06:25:12,124 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:25:12,124 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-04-08 06:25:12,124 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-08 06:25:12,124 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-08 06:25:12,762 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:25:12,762 INFO L93 Difference]: Finished difference Result 266 states and 328 transitions. [2022-04-08 06:25:12,762 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-08 06:25:12,762 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-08 06:25:12,763 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:25:12,763 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-08 06:25:12,764 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 124 transitions. [2022-04-08 06:25:12,764 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-08 06:25:12,766 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 124 transitions. [2022-04-08 06:25:12,766 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 124 transitions. [2022-04-08 06:25:12,866 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-08 06:25:12,869 INFO L225 Difference]: With dead ends: 266 [2022-04-08 06:25:12,869 INFO L226 Difference]: Without dead ends: 207 [2022-04-08 06:25:12,870 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 197 GetRequests, 181 SyntacticMatches, 0 SemanticMatches, 16 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 19 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=123, Invalid=183, Unknown=0, NotChecked=0, Total=306 [2022-04-08 06:25:12,870 INFO L913 BasicCegarLoop]: 53 mSDtfsCounter, 22 mSDsluCounter, 153 mSDsCounter, 0 mSdLazyCounter, 69 mSolverCounterSat, 11 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 22 SdHoareTripleChecker+Valid, 206 SdHoareTripleChecker+Invalid, 80 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 11 IncrementalHoareTripleChecker+Valid, 69 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-08 06:25:12,870 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [22 Valid, 206 Invalid, 80 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [11 Valid, 69 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-08 06:25:12,870 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 207 states. [2022-04-08 06:25:13,121 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 207 to 207. [2022-04-08 06:25:13,121 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:25:13,123 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-08 06:25:13,123 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-08 06:25:13,125 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-08 06:25:13,129 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:25:13,129 INFO L93 Difference]: Finished difference Result 207 states and 245 transitions. [2022-04-08 06:25:13,130 INFO L276 IsEmpty]: Start isEmpty. Operand 207 states and 245 transitions. [2022-04-08 06:25:13,130 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:25:13,130 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:25:13,130 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-08 06:25:13,130 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-08 06:25:13,135 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:25:13,135 INFO L93 Difference]: Finished difference Result 207 states and 245 transitions. [2022-04-08 06:25:13,135 INFO L276 IsEmpty]: Start isEmpty. Operand 207 states and 245 transitions. [2022-04-08 06:25:13,136 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:25:13,136 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:25:13,136 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:25:13,136 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:25:13,136 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-08 06:25:13,141 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 207 states to 207 states and 245 transitions. [2022-04-08 06:25:13,141 INFO L78 Accepts]: Start accepts. Automaton has 207 states and 245 transitions. Word has length 97 [2022-04-08 06:25:13,141 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:25:13,141 INFO L478 AbstractCegarLoop]: Abstraction has 207 states and 245 transitions. [2022-04-08 06:25:13,141 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-08 06:25:13,141 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 207 states and 245 transitions. [2022-04-08 06:25:15,484 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-08 06:25:15,484 INFO L276 IsEmpty]: Start isEmpty. Operand 207 states and 245 transitions. [2022-04-08 06:25:15,485 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 101 [2022-04-08 06:25:15,485 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:25:15,485 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-08 06:25:15,501 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (18)] Forceful destruction successful, exit code 0 [2022-04-08 06:25:15,699 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-08 06:25:15,699 INFO L403 AbstractCegarLoop]: === Iteration 21 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:25:15,699 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:25:15,699 INFO L85 PathProgramCache]: Analyzing trace with hash -545719131, now seen corresponding path program 5 times [2022-04-08 06:25:15,700 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:25:15,700 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [734332496] [2022-04-08 06:25:22,132 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-08 06:25:22,133 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-08 06:25:22,133 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 06:25:22,133 INFO L85 PathProgramCache]: Analyzing trace with hash -545719131, now seen corresponding path program 6 times [2022-04-08 06:25:22,133 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:25:22,133 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1886192933] [2022-04-08 06:25:22,133 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:25:22,133 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:25:22,152 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:25:22,152 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1309686400] [2022-04-08 06:25:22,152 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 06:25:22,152 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:25:22,152 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:25:22,153 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-08 06:25:22,154 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-08 06:25:22,290 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 7 check-sat command(s) [2022-04-08 06:25:22,290 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:25:22,291 INFO L263 TraceCheckSpWp]: Trace formula consists of 237 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-08 06:25:22,308 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:25:22,309 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:25:22,698 INFO L272 TraceCheckUtils]: 0: Hoare triple {19977#true} call ULTIMATE.init(); {19977#true} is VALID [2022-04-08 06:25:22,699 INFO L290 TraceCheckUtils]: 1: Hoare triple {19977#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; {19985#(<= ~counter~0 0)} is VALID [2022-04-08 06:25:22,699 INFO L290 TraceCheckUtils]: 2: Hoare triple {19985#(<= ~counter~0 0)} assume true; {19985#(<= ~counter~0 0)} is VALID [2022-04-08 06:25:22,699 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {19985#(<= ~counter~0 0)} {19977#true} #96#return; {19985#(<= ~counter~0 0)} is VALID [2022-04-08 06:25:22,700 INFO L272 TraceCheckUtils]: 4: Hoare triple {19985#(<= ~counter~0 0)} call #t~ret8 := main(); {19985#(<= ~counter~0 0)} is VALID [2022-04-08 06:25:22,700 INFO L290 TraceCheckUtils]: 5: Hoare triple {19985#(<= ~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; {19985#(<= ~counter~0 0)} is VALID [2022-04-08 06:25:22,700 INFO L272 TraceCheckUtils]: 6: Hoare triple {19985#(<= ~counter~0 0)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {19985#(<= ~counter~0 0)} is VALID [2022-04-08 06:25:22,701 INFO L290 TraceCheckUtils]: 7: Hoare triple {19985#(<= ~counter~0 0)} ~cond := #in~cond; {19985#(<= ~counter~0 0)} is VALID [2022-04-08 06:25:22,701 INFO L290 TraceCheckUtils]: 8: Hoare triple {19985#(<= ~counter~0 0)} assume !(0 == ~cond); {19985#(<= ~counter~0 0)} is VALID [2022-04-08 06:25:22,701 INFO L290 TraceCheckUtils]: 9: Hoare triple {19985#(<= ~counter~0 0)} assume true; {19985#(<= ~counter~0 0)} is VALID [2022-04-08 06:25:22,702 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {19985#(<= ~counter~0 0)} {19985#(<= ~counter~0 0)} #80#return; {19985#(<= ~counter~0 0)} is VALID [2022-04-08 06:25:22,702 INFO L290 TraceCheckUtils]: 11: Hoare triple {19985#(<= ~counter~0 0)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {19985#(<= ~counter~0 0)} is VALID [2022-04-08 06:25:22,703 INFO L290 TraceCheckUtils]: 12: Hoare triple {19985#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20019#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:22,703 INFO L290 TraceCheckUtils]: 13: Hoare triple {20019#(<= ~counter~0 1)} assume !!(#t~post6 < 10);havoc #t~post6; {20019#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:22,703 INFO L272 TraceCheckUtils]: 14: Hoare triple {20019#(<= ~counter~0 1)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {20019#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:22,704 INFO L290 TraceCheckUtils]: 15: Hoare triple {20019#(<= ~counter~0 1)} ~cond := #in~cond; {20019#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:22,704 INFO L290 TraceCheckUtils]: 16: Hoare triple {20019#(<= ~counter~0 1)} assume !(0 == ~cond); {20019#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:22,704 INFO L290 TraceCheckUtils]: 17: Hoare triple {20019#(<= ~counter~0 1)} assume true; {20019#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:22,704 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {20019#(<= ~counter~0 1)} {20019#(<= ~counter~0 1)} #82#return; {20019#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:22,705 INFO L272 TraceCheckUtils]: 19: Hoare triple {20019#(<= ~counter~0 1)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {20019#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:22,705 INFO L290 TraceCheckUtils]: 20: Hoare triple {20019#(<= ~counter~0 1)} ~cond := #in~cond; {20019#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:22,705 INFO L290 TraceCheckUtils]: 21: Hoare triple {20019#(<= ~counter~0 1)} assume !(0 == ~cond); {20019#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:22,706 INFO L290 TraceCheckUtils]: 22: Hoare triple {20019#(<= ~counter~0 1)} assume true; {20019#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:22,706 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {20019#(<= ~counter~0 1)} {20019#(<= ~counter~0 1)} #84#return; {20019#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:22,707 INFO L272 TraceCheckUtils]: 24: Hoare triple {20019#(<= ~counter~0 1)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {20019#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:22,707 INFO L290 TraceCheckUtils]: 25: Hoare triple {20019#(<= ~counter~0 1)} ~cond := #in~cond; {20019#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:22,707 INFO L290 TraceCheckUtils]: 26: Hoare triple {20019#(<= ~counter~0 1)} assume !(0 == ~cond); {20019#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:22,707 INFO L290 TraceCheckUtils]: 27: Hoare triple {20019#(<= ~counter~0 1)} assume true; {20019#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:22,708 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {20019#(<= ~counter~0 1)} {20019#(<= ~counter~0 1)} #86#return; {20019#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:22,708 INFO L290 TraceCheckUtils]: 29: Hoare triple {20019#(<= ~counter~0 1)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {20019#(<= ~counter~0 1)} is VALID [2022-04-08 06:25:22,709 INFO L290 TraceCheckUtils]: 30: Hoare triple {20019#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20074#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:22,709 INFO L290 TraceCheckUtils]: 31: Hoare triple {20074#(<= ~counter~0 2)} assume !!(#t~post6 < 10);havoc #t~post6; {20074#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:22,709 INFO L272 TraceCheckUtils]: 32: Hoare triple {20074#(<= ~counter~0 2)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {20074#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:22,710 INFO L290 TraceCheckUtils]: 33: Hoare triple {20074#(<= ~counter~0 2)} ~cond := #in~cond; {20074#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:22,710 INFO L290 TraceCheckUtils]: 34: Hoare triple {20074#(<= ~counter~0 2)} assume !(0 == ~cond); {20074#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:22,710 INFO L290 TraceCheckUtils]: 35: Hoare triple {20074#(<= ~counter~0 2)} assume true; {20074#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:22,710 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {20074#(<= ~counter~0 2)} {20074#(<= ~counter~0 2)} #82#return; {20074#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:22,711 INFO L272 TraceCheckUtils]: 37: Hoare triple {20074#(<= ~counter~0 2)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {20074#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:22,711 INFO L290 TraceCheckUtils]: 38: Hoare triple {20074#(<= ~counter~0 2)} ~cond := #in~cond; {20074#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:22,711 INFO L290 TraceCheckUtils]: 39: Hoare triple {20074#(<= ~counter~0 2)} assume !(0 == ~cond); {20074#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:22,712 INFO L290 TraceCheckUtils]: 40: Hoare triple {20074#(<= ~counter~0 2)} assume true; {20074#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:22,712 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {20074#(<= ~counter~0 2)} {20074#(<= ~counter~0 2)} #84#return; {20074#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:22,713 INFO L272 TraceCheckUtils]: 42: Hoare triple {20074#(<= ~counter~0 2)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {20074#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:22,713 INFO L290 TraceCheckUtils]: 43: Hoare triple {20074#(<= ~counter~0 2)} ~cond := #in~cond; {20074#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:22,713 INFO L290 TraceCheckUtils]: 44: Hoare triple {20074#(<= ~counter~0 2)} assume !(0 == ~cond); {20074#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:22,713 INFO L290 TraceCheckUtils]: 45: Hoare triple {20074#(<= ~counter~0 2)} assume true; {20074#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:22,714 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {20074#(<= ~counter~0 2)} {20074#(<= ~counter~0 2)} #86#return; {20074#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:22,714 INFO L290 TraceCheckUtils]: 47: Hoare triple {20074#(<= ~counter~0 2)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {20074#(<= ~counter~0 2)} is VALID [2022-04-08 06:25:22,715 INFO L290 TraceCheckUtils]: 48: Hoare triple {20074#(<= ~counter~0 2)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20129#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:22,715 INFO L290 TraceCheckUtils]: 49: Hoare triple {20129#(<= ~counter~0 3)} assume !!(#t~post6 < 10);havoc #t~post6; {20129#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:22,715 INFO L272 TraceCheckUtils]: 50: Hoare triple {20129#(<= ~counter~0 3)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {20129#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:22,716 INFO L290 TraceCheckUtils]: 51: Hoare triple {20129#(<= ~counter~0 3)} ~cond := #in~cond; {20129#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:22,716 INFO L290 TraceCheckUtils]: 52: Hoare triple {20129#(<= ~counter~0 3)} assume !(0 == ~cond); {20129#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:22,716 INFO L290 TraceCheckUtils]: 53: Hoare triple {20129#(<= ~counter~0 3)} assume true; {20129#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:22,716 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {20129#(<= ~counter~0 3)} {20129#(<= ~counter~0 3)} #82#return; {20129#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:22,717 INFO L272 TraceCheckUtils]: 55: Hoare triple {20129#(<= ~counter~0 3)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {20129#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:22,717 INFO L290 TraceCheckUtils]: 56: Hoare triple {20129#(<= ~counter~0 3)} ~cond := #in~cond; {20129#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:22,717 INFO L290 TraceCheckUtils]: 57: Hoare triple {20129#(<= ~counter~0 3)} assume !(0 == ~cond); {20129#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:22,718 INFO L290 TraceCheckUtils]: 58: Hoare triple {20129#(<= ~counter~0 3)} assume true; {20129#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:22,718 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {20129#(<= ~counter~0 3)} {20129#(<= ~counter~0 3)} #84#return; {20129#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:22,719 INFO L272 TraceCheckUtils]: 60: Hoare triple {20129#(<= ~counter~0 3)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {20129#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:22,719 INFO L290 TraceCheckUtils]: 61: Hoare triple {20129#(<= ~counter~0 3)} ~cond := #in~cond; {20129#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:22,720 INFO L290 TraceCheckUtils]: 62: Hoare triple {20129#(<= ~counter~0 3)} assume !(0 == ~cond); {20129#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:22,720 INFO L290 TraceCheckUtils]: 63: Hoare triple {20129#(<= ~counter~0 3)} assume true; {20129#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:22,720 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {20129#(<= ~counter~0 3)} {20129#(<= ~counter~0 3)} #86#return; {20129#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:22,721 INFO L290 TraceCheckUtils]: 65: Hoare triple {20129#(<= ~counter~0 3)} assume !(~r~0 >= ~d~0); {20129#(<= ~counter~0 3)} is VALID [2022-04-08 06:25:22,721 INFO L290 TraceCheckUtils]: 66: Hoare triple {20129#(<= ~counter~0 3)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20184#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:22,721 INFO L290 TraceCheckUtils]: 67: Hoare triple {20184#(<= ~counter~0 4)} assume !!(#t~post7 < 10);havoc #t~post7; {20184#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:22,722 INFO L272 TraceCheckUtils]: 68: Hoare triple {20184#(<= ~counter~0 4)} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {20184#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:22,722 INFO L290 TraceCheckUtils]: 69: Hoare triple {20184#(<= ~counter~0 4)} ~cond := #in~cond; {20184#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:22,723 INFO L290 TraceCheckUtils]: 70: Hoare triple {20184#(<= ~counter~0 4)} assume !(0 == ~cond); {20184#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:22,723 INFO L290 TraceCheckUtils]: 71: Hoare triple {20184#(<= ~counter~0 4)} assume true; {20184#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:22,723 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {20184#(<= ~counter~0 4)} {20184#(<= ~counter~0 4)} #88#return; {20184#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:22,724 INFO L272 TraceCheckUtils]: 73: Hoare triple {20184#(<= ~counter~0 4)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {20184#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:22,724 INFO L290 TraceCheckUtils]: 74: Hoare triple {20184#(<= ~counter~0 4)} ~cond := #in~cond; {20184#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:22,724 INFO L290 TraceCheckUtils]: 75: Hoare triple {20184#(<= ~counter~0 4)} assume !(0 == ~cond); {20184#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:22,725 INFO L290 TraceCheckUtils]: 76: Hoare triple {20184#(<= ~counter~0 4)} assume true; {20184#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:22,725 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {20184#(<= ~counter~0 4)} {20184#(<= ~counter~0 4)} #90#return; {20184#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:22,725 INFO L290 TraceCheckUtils]: 78: Hoare triple {20184#(<= ~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); {20184#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:22,739 INFO L290 TraceCheckUtils]: 79: Hoare triple {20184#(<= ~counter~0 4)} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {20184#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:22,740 INFO L290 TraceCheckUtils]: 80: Hoare triple {20184#(<= ~counter~0 4)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20227#(<= ~counter~0 5)} is VALID [2022-04-08 06:25:22,740 INFO L290 TraceCheckUtils]: 81: Hoare triple {20227#(<= ~counter~0 5)} assume !!(#t~post7 < 10);havoc #t~post7; {20227#(<= ~counter~0 5)} is VALID [2022-04-08 06:25:22,740 INFO L272 TraceCheckUtils]: 82: Hoare triple {20227#(<= ~counter~0 5)} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {20227#(<= ~counter~0 5)} is VALID [2022-04-08 06:25:22,741 INFO L290 TraceCheckUtils]: 83: Hoare triple {20227#(<= ~counter~0 5)} ~cond := #in~cond; {20227#(<= ~counter~0 5)} is VALID [2022-04-08 06:25:22,741 INFO L290 TraceCheckUtils]: 84: Hoare triple {20227#(<= ~counter~0 5)} assume !(0 == ~cond); {20227#(<= ~counter~0 5)} is VALID [2022-04-08 06:25:22,741 INFO L290 TraceCheckUtils]: 85: Hoare triple {20227#(<= ~counter~0 5)} assume true; {20227#(<= ~counter~0 5)} is VALID [2022-04-08 06:25:22,742 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {20227#(<= ~counter~0 5)} {20227#(<= ~counter~0 5)} #88#return; {20227#(<= ~counter~0 5)} is VALID [2022-04-08 06:25:22,742 INFO L272 TraceCheckUtils]: 87: Hoare triple {20227#(<= ~counter~0 5)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {20227#(<= ~counter~0 5)} is VALID [2022-04-08 06:25:22,742 INFO L290 TraceCheckUtils]: 88: Hoare triple {20227#(<= ~counter~0 5)} ~cond := #in~cond; {20227#(<= ~counter~0 5)} is VALID [2022-04-08 06:25:22,743 INFO L290 TraceCheckUtils]: 89: Hoare triple {20227#(<= ~counter~0 5)} assume !(0 == ~cond); {20227#(<= ~counter~0 5)} is VALID [2022-04-08 06:25:22,743 INFO L290 TraceCheckUtils]: 90: Hoare triple {20227#(<= ~counter~0 5)} assume true; {20227#(<= ~counter~0 5)} is VALID [2022-04-08 06:25:22,743 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {20227#(<= ~counter~0 5)} {20227#(<= ~counter~0 5)} #90#return; {20227#(<= ~counter~0 5)} is VALID [2022-04-08 06:25:22,744 INFO L290 TraceCheckUtils]: 92: Hoare triple {20227#(<= ~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); {20227#(<= ~counter~0 5)} is VALID [2022-04-08 06:25:22,744 INFO L290 TraceCheckUtils]: 93: Hoare triple {20227#(<= ~counter~0 5)} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {20227#(<= ~counter~0 5)} is VALID [2022-04-08 06:25:22,744 INFO L290 TraceCheckUtils]: 94: Hoare triple {20227#(<= ~counter~0 5)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20270#(<= |main_#t~post7| 5)} is VALID [2022-04-08 06:25:22,745 INFO L290 TraceCheckUtils]: 95: Hoare triple {20270#(<= |main_#t~post7| 5)} assume !(#t~post7 < 10);havoc #t~post7; {19978#false} is VALID [2022-04-08 06:25:22,745 INFO L272 TraceCheckUtils]: 96: Hoare triple {19978#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {19978#false} is VALID [2022-04-08 06:25:22,745 INFO L290 TraceCheckUtils]: 97: Hoare triple {19978#false} ~cond := #in~cond; {19978#false} is VALID [2022-04-08 06:25:22,745 INFO L290 TraceCheckUtils]: 98: Hoare triple {19978#false} assume 0 == ~cond; {19978#false} is VALID [2022-04-08 06:25:22,745 INFO L290 TraceCheckUtils]: 99: Hoare triple {19978#false} assume !false; {19978#false} is VALID [2022-04-08 06:25:22,745 INFO L134 CoverageAnalysis]: Checked inductivity of 366 backedges. 26 proven. 296 refuted. 0 times theorem prover too weak. 44 trivial. 0 not checked. [2022-04-08 06:25:22,745 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:25:23,164 INFO L290 TraceCheckUtils]: 99: Hoare triple {19978#false} assume !false; {19978#false} is VALID [2022-04-08 06:25:23,164 INFO L290 TraceCheckUtils]: 98: Hoare triple {19978#false} assume 0 == ~cond; {19978#false} is VALID [2022-04-08 06:25:23,164 INFO L290 TraceCheckUtils]: 97: Hoare triple {19978#false} ~cond := #in~cond; {19978#false} is VALID [2022-04-08 06:25:23,164 INFO L272 TraceCheckUtils]: 96: Hoare triple {19978#false} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~d~0 * ~q~0 + ~r~0 then 1 else 0)); {19978#false} is VALID [2022-04-08 06:25:23,165 INFO L290 TraceCheckUtils]: 95: Hoare triple {20298#(< |main_#t~post7| 10)} assume !(#t~post7 < 10);havoc #t~post7; {19978#false} is VALID [2022-04-08 06:25:23,165 INFO L290 TraceCheckUtils]: 94: Hoare triple {20302#(< ~counter~0 10)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20298#(< |main_#t~post7| 10)} is VALID [2022-04-08 06:25:23,165 INFO L290 TraceCheckUtils]: 93: Hoare triple {20302#(< ~counter~0 10)} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {20302#(< ~counter~0 10)} is VALID [2022-04-08 06:25:23,166 INFO L290 TraceCheckUtils]: 92: Hoare triple {20302#(< ~counter~0 10)} 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); {20302#(< ~counter~0 10)} is VALID [2022-04-08 06:25:23,166 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {19977#true} {20302#(< ~counter~0 10)} #90#return; {20302#(< ~counter~0 10)} is VALID [2022-04-08 06:25:23,166 INFO L290 TraceCheckUtils]: 90: Hoare triple {19977#true} assume true; {19977#true} is VALID [2022-04-08 06:25:23,166 INFO L290 TraceCheckUtils]: 89: Hoare triple {19977#true} assume !(0 == ~cond); {19977#true} is VALID [2022-04-08 06:25:23,166 INFO L290 TraceCheckUtils]: 88: Hoare triple {19977#true} ~cond := #in~cond; {19977#true} is VALID [2022-04-08 06:25:23,166 INFO L272 TraceCheckUtils]: 87: Hoare triple {20302#(< ~counter~0 10)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {19977#true} is VALID [2022-04-08 06:25:23,167 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {19977#true} {20302#(< ~counter~0 10)} #88#return; {20302#(< ~counter~0 10)} is VALID [2022-04-08 06:25:23,167 INFO L290 TraceCheckUtils]: 85: Hoare triple {19977#true} assume true; {19977#true} is VALID [2022-04-08 06:25:23,167 INFO L290 TraceCheckUtils]: 84: Hoare triple {19977#true} assume !(0 == ~cond); {19977#true} is VALID [2022-04-08 06:25:23,167 INFO L290 TraceCheckUtils]: 83: Hoare triple {19977#true} ~cond := #in~cond; {19977#true} is VALID [2022-04-08 06:25:23,167 INFO L272 TraceCheckUtils]: 82: Hoare triple {20302#(< ~counter~0 10)} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {19977#true} is VALID [2022-04-08 06:25:23,167 INFO L290 TraceCheckUtils]: 81: Hoare triple {20302#(< ~counter~0 10)} assume !!(#t~post7 < 10);havoc #t~post7; {20302#(< ~counter~0 10)} is VALID [2022-04-08 06:25:23,168 INFO L290 TraceCheckUtils]: 80: Hoare triple {20345#(< ~counter~0 9)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20302#(< ~counter~0 10)} is VALID [2022-04-08 06:25:23,168 INFO L290 TraceCheckUtils]: 79: Hoare triple {20345#(< ~counter~0 9)} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {20345#(< ~counter~0 9)} is VALID [2022-04-08 06:25:23,169 INFO L290 TraceCheckUtils]: 78: Hoare triple {20345#(< ~counter~0 9)} 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); {20345#(< ~counter~0 9)} is VALID [2022-04-08 06:25:23,169 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {19977#true} {20345#(< ~counter~0 9)} #90#return; {20345#(< ~counter~0 9)} is VALID [2022-04-08 06:25:23,169 INFO L290 TraceCheckUtils]: 76: Hoare triple {19977#true} assume true; {19977#true} is VALID [2022-04-08 06:25:23,169 INFO L290 TraceCheckUtils]: 75: Hoare triple {19977#true} assume !(0 == ~cond); {19977#true} is VALID [2022-04-08 06:25:23,169 INFO L290 TraceCheckUtils]: 74: Hoare triple {19977#true} ~cond := #in~cond; {19977#true} is VALID [2022-04-08 06:25:23,169 INFO L272 TraceCheckUtils]: 73: Hoare triple {20345#(< ~counter~0 9)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {19977#true} is VALID [2022-04-08 06:25:23,170 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {19977#true} {20345#(< ~counter~0 9)} #88#return; {20345#(< ~counter~0 9)} is VALID [2022-04-08 06:25:23,170 INFO L290 TraceCheckUtils]: 71: Hoare triple {19977#true} assume true; {19977#true} is VALID [2022-04-08 06:25:23,170 INFO L290 TraceCheckUtils]: 70: Hoare triple {19977#true} assume !(0 == ~cond); {19977#true} is VALID [2022-04-08 06:25:23,170 INFO L290 TraceCheckUtils]: 69: Hoare triple {19977#true} ~cond := #in~cond; {19977#true} is VALID [2022-04-08 06:25:23,170 INFO L272 TraceCheckUtils]: 68: Hoare triple {20345#(< ~counter~0 9)} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {19977#true} is VALID [2022-04-08 06:25:23,170 INFO L290 TraceCheckUtils]: 67: Hoare triple {20345#(< ~counter~0 9)} assume !!(#t~post7 < 10);havoc #t~post7; {20345#(< ~counter~0 9)} is VALID [2022-04-08 06:25:23,171 INFO L290 TraceCheckUtils]: 66: Hoare triple {20388#(< ~counter~0 8)} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {20345#(< ~counter~0 9)} is VALID [2022-04-08 06:25:23,171 INFO L290 TraceCheckUtils]: 65: Hoare triple {20388#(< ~counter~0 8)} assume !(~r~0 >= ~d~0); {20388#(< ~counter~0 8)} is VALID [2022-04-08 06:25:23,172 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {19977#true} {20388#(< ~counter~0 8)} #86#return; {20388#(< ~counter~0 8)} is VALID [2022-04-08 06:25:23,172 INFO L290 TraceCheckUtils]: 63: Hoare triple {19977#true} assume true; {19977#true} is VALID [2022-04-08 06:25:23,172 INFO L290 TraceCheckUtils]: 62: Hoare triple {19977#true} assume !(0 == ~cond); {19977#true} is VALID [2022-04-08 06:25:23,172 INFO L290 TraceCheckUtils]: 61: Hoare triple {19977#true} ~cond := #in~cond; {19977#true} is VALID [2022-04-08 06:25:23,172 INFO L272 TraceCheckUtils]: 60: Hoare triple {20388#(< ~counter~0 8)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {19977#true} is VALID [2022-04-08 06:25:23,172 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {19977#true} {20388#(< ~counter~0 8)} #84#return; {20388#(< ~counter~0 8)} is VALID [2022-04-08 06:25:23,172 INFO L290 TraceCheckUtils]: 58: Hoare triple {19977#true} assume true; {19977#true} is VALID [2022-04-08 06:25:23,173 INFO L290 TraceCheckUtils]: 57: Hoare triple {19977#true} assume !(0 == ~cond); {19977#true} is VALID [2022-04-08 06:25:23,173 INFO L290 TraceCheckUtils]: 56: Hoare triple {19977#true} ~cond := #in~cond; {19977#true} is VALID [2022-04-08 06:25:23,173 INFO L272 TraceCheckUtils]: 55: Hoare triple {20388#(< ~counter~0 8)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {19977#true} is VALID [2022-04-08 06:25:23,173 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {19977#true} {20388#(< ~counter~0 8)} #82#return; {20388#(< ~counter~0 8)} is VALID [2022-04-08 06:25:23,173 INFO L290 TraceCheckUtils]: 53: Hoare triple {19977#true} assume true; {19977#true} is VALID [2022-04-08 06:25:23,173 INFO L290 TraceCheckUtils]: 52: Hoare triple {19977#true} assume !(0 == ~cond); {19977#true} is VALID [2022-04-08 06:25:23,173 INFO L290 TraceCheckUtils]: 51: Hoare triple {19977#true} ~cond := #in~cond; {19977#true} is VALID [2022-04-08 06:25:23,173 INFO L272 TraceCheckUtils]: 50: Hoare triple {20388#(< ~counter~0 8)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {19977#true} is VALID [2022-04-08 06:25:23,174 INFO L290 TraceCheckUtils]: 49: Hoare triple {20388#(< ~counter~0 8)} assume !!(#t~post6 < 10);havoc #t~post6; {20388#(< ~counter~0 8)} is VALID [2022-04-08 06:25:23,174 INFO L290 TraceCheckUtils]: 48: Hoare triple {20443#(< ~counter~0 7)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20388#(< ~counter~0 8)} is VALID [2022-04-08 06:25:23,174 INFO L290 TraceCheckUtils]: 47: Hoare triple {20443#(< ~counter~0 7)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {20443#(< ~counter~0 7)} is VALID [2022-04-08 06:25:23,175 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {19977#true} {20443#(< ~counter~0 7)} #86#return; {20443#(< ~counter~0 7)} is VALID [2022-04-08 06:25:23,175 INFO L290 TraceCheckUtils]: 45: Hoare triple {19977#true} assume true; {19977#true} is VALID [2022-04-08 06:25:23,175 INFO L290 TraceCheckUtils]: 44: Hoare triple {19977#true} assume !(0 == ~cond); {19977#true} is VALID [2022-04-08 06:25:23,175 INFO L290 TraceCheckUtils]: 43: Hoare triple {19977#true} ~cond := #in~cond; {19977#true} is VALID [2022-04-08 06:25:23,175 INFO L272 TraceCheckUtils]: 42: Hoare triple {20443#(< ~counter~0 7)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {19977#true} is VALID [2022-04-08 06:25:23,176 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {19977#true} {20443#(< ~counter~0 7)} #84#return; {20443#(< ~counter~0 7)} is VALID [2022-04-08 06:25:23,176 INFO L290 TraceCheckUtils]: 40: Hoare triple {19977#true} assume true; {19977#true} is VALID [2022-04-08 06:25:23,176 INFO L290 TraceCheckUtils]: 39: Hoare triple {19977#true} assume !(0 == ~cond); {19977#true} is VALID [2022-04-08 06:25:23,176 INFO L290 TraceCheckUtils]: 38: Hoare triple {19977#true} ~cond := #in~cond; {19977#true} is VALID [2022-04-08 06:25:23,176 INFO L272 TraceCheckUtils]: 37: Hoare triple {20443#(< ~counter~0 7)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {19977#true} is VALID [2022-04-08 06:25:23,176 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {19977#true} {20443#(< ~counter~0 7)} #82#return; {20443#(< ~counter~0 7)} is VALID [2022-04-08 06:25:23,176 INFO L290 TraceCheckUtils]: 35: Hoare triple {19977#true} assume true; {19977#true} is VALID [2022-04-08 06:25:23,176 INFO L290 TraceCheckUtils]: 34: Hoare triple {19977#true} assume !(0 == ~cond); {19977#true} is VALID [2022-04-08 06:25:23,176 INFO L290 TraceCheckUtils]: 33: Hoare triple {19977#true} ~cond := #in~cond; {19977#true} is VALID [2022-04-08 06:25:23,176 INFO L272 TraceCheckUtils]: 32: Hoare triple {20443#(< ~counter~0 7)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {19977#true} is VALID [2022-04-08 06:25:23,177 INFO L290 TraceCheckUtils]: 31: Hoare triple {20443#(< ~counter~0 7)} assume !!(#t~post6 < 10);havoc #t~post6; {20443#(< ~counter~0 7)} is VALID [2022-04-08 06:25:23,177 INFO L290 TraceCheckUtils]: 30: Hoare triple {20227#(<= ~counter~0 5)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20443#(< ~counter~0 7)} is VALID [2022-04-08 06:25:23,177 INFO L290 TraceCheckUtils]: 29: Hoare triple {20227#(<= ~counter~0 5)} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {20227#(<= ~counter~0 5)} is VALID [2022-04-08 06:25:23,178 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {19977#true} {20227#(<= ~counter~0 5)} #86#return; {20227#(<= ~counter~0 5)} is VALID [2022-04-08 06:25:23,178 INFO L290 TraceCheckUtils]: 27: Hoare triple {19977#true} assume true; {19977#true} is VALID [2022-04-08 06:25:23,178 INFO L290 TraceCheckUtils]: 26: Hoare triple {19977#true} assume !(0 == ~cond); {19977#true} is VALID [2022-04-08 06:25:23,178 INFO L290 TraceCheckUtils]: 25: Hoare triple {19977#true} ~cond := #in~cond; {19977#true} is VALID [2022-04-08 06:25:23,178 INFO L272 TraceCheckUtils]: 24: Hoare triple {20227#(<= ~counter~0 5)} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {19977#true} is VALID [2022-04-08 06:25:23,179 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {19977#true} {20227#(<= ~counter~0 5)} #84#return; {20227#(<= ~counter~0 5)} is VALID [2022-04-08 06:25:23,179 INFO L290 TraceCheckUtils]: 22: Hoare triple {19977#true} assume true; {19977#true} is VALID [2022-04-08 06:25:23,179 INFO L290 TraceCheckUtils]: 21: Hoare triple {19977#true} assume !(0 == ~cond); {19977#true} is VALID [2022-04-08 06:25:23,179 INFO L290 TraceCheckUtils]: 20: Hoare triple {19977#true} ~cond := #in~cond; {19977#true} is VALID [2022-04-08 06:25:23,179 INFO L272 TraceCheckUtils]: 19: Hoare triple {20227#(<= ~counter~0 5)} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {19977#true} is VALID [2022-04-08 06:25:23,179 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {19977#true} {20227#(<= ~counter~0 5)} #82#return; {20227#(<= ~counter~0 5)} is VALID [2022-04-08 06:25:23,179 INFO L290 TraceCheckUtils]: 17: Hoare triple {19977#true} assume true; {19977#true} is VALID [2022-04-08 06:25:23,179 INFO L290 TraceCheckUtils]: 16: Hoare triple {19977#true} assume !(0 == ~cond); {19977#true} is VALID [2022-04-08 06:25:23,180 INFO L290 TraceCheckUtils]: 15: Hoare triple {19977#true} ~cond := #in~cond; {19977#true} is VALID [2022-04-08 06:25:23,180 INFO L272 TraceCheckUtils]: 14: Hoare triple {20227#(<= ~counter~0 5)} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {19977#true} is VALID [2022-04-08 06:25:23,180 INFO L290 TraceCheckUtils]: 13: Hoare triple {20227#(<= ~counter~0 5)} assume !!(#t~post6 < 10);havoc #t~post6; {20227#(<= ~counter~0 5)} is VALID [2022-04-08 06:25:23,180 INFO L290 TraceCheckUtils]: 12: Hoare triple {20184#(<= ~counter~0 4)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {20227#(<= ~counter~0 5)} is VALID [2022-04-08 06:25:23,181 INFO L290 TraceCheckUtils]: 11: Hoare triple {20184#(<= ~counter~0 4)} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {20184#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:23,181 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {19977#true} {20184#(<= ~counter~0 4)} #80#return; {20184#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:23,181 INFO L290 TraceCheckUtils]: 9: Hoare triple {19977#true} assume true; {19977#true} is VALID [2022-04-08 06:25:23,181 INFO L290 TraceCheckUtils]: 8: Hoare triple {19977#true} assume !(0 == ~cond); {19977#true} is VALID [2022-04-08 06:25:23,181 INFO L290 TraceCheckUtils]: 7: Hoare triple {19977#true} ~cond := #in~cond; {19977#true} is VALID [2022-04-08 06:25:23,181 INFO L272 TraceCheckUtils]: 6: Hoare triple {20184#(<= ~counter~0 4)} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {19977#true} is VALID [2022-04-08 06:25:23,182 INFO L290 TraceCheckUtils]: 5: Hoare triple {20184#(<= ~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; {20184#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:23,182 INFO L272 TraceCheckUtils]: 4: Hoare triple {20184#(<= ~counter~0 4)} call #t~ret8 := main(); {20184#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:23,182 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {20184#(<= ~counter~0 4)} {19977#true} #96#return; {20184#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:23,182 INFO L290 TraceCheckUtils]: 2: Hoare triple {20184#(<= ~counter~0 4)} assume true; {20184#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:23,183 INFO L290 TraceCheckUtils]: 1: Hoare triple {19977#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; {20184#(<= ~counter~0 4)} is VALID [2022-04-08 06:25:23,183 INFO L272 TraceCheckUtils]: 0: Hoare triple {19977#true} call ULTIMATE.init(); {19977#true} is VALID [2022-04-08 06:25:23,183 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-08 06:25:23,183 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:25:23,183 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1886192933] [2022-04-08 06:25:23,183 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:25:23,184 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1309686400] [2022-04-08 06:25:23,184 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1309686400] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:25:23,184 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:25:23,184 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 9] total 14 [2022-04-08 06:25:23,184 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:25:23,184 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [734332496] [2022-04-08 06:25:23,184 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [734332496] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:25:23,184 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:25:23,184 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-08 06:25:23,184 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [455659266] [2022-04-08 06:25:23,184 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:25:23,185 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-08 06:25:23,185 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:25:23,185 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-08 06:25:23,247 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-08 06:25:23,247 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-08 06:25:23,247 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:25:23,247 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-08 06:25:23,247 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=71, Invalid=111, Unknown=0, NotChecked=0, Total=182 [2022-04-08 06:25:23,247 INFO L87 Difference]: Start difference. First operand 207 states and 245 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-08 06:25:24,190 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:25:24,190 INFO L93 Difference]: Finished difference Result 260 states and 302 transitions. [2022-04-08 06:25:24,190 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-04-08 06:25:24,190 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-08 06:25:24,190 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:25:24,191 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-08 06:25:24,192 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 135 transitions. [2022-04-08 06:25:24,192 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-08 06:25:24,194 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 135 transitions. [2022-04-08 06:25:24,194 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 11 states and 135 transitions. [2022-04-08 06:25:24,360 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 135 edges. 135 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:25:24,363 INFO L225 Difference]: With dead ends: 260 [2022-04-08 06:25:24,364 INFO L226 Difference]: Without dead ends: 246 [2022-04-08 06:25:24,364 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 201 GetRequests, 186 SyntacticMatches, 1 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 19 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=91, Invalid=149, Unknown=0, NotChecked=0, Total=240 [2022-04-08 06:25:24,365 INFO L913 BasicCegarLoop]: 58 mSDtfsCounter, 42 mSDsluCounter, 158 mSDsCounter, 0 mSdLazyCounter, 98 mSolverCounterSat, 33 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 42 SdHoareTripleChecker+Valid, 216 SdHoareTripleChecker+Invalid, 131 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 33 IncrementalHoareTripleChecker+Valid, 98 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-08 06:25:24,365 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [42 Valid, 216 Invalid, 131 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [33 Valid, 98 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-08 06:25:24,365 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 246 states. [2022-04-08 06:25:24,614 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 246 to 245. [2022-04-08 06:25:24,615 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:25:24,615 INFO L82 GeneralOperation]: Start isEquivalent. First operand 246 states. Second operand has 245 states, 163 states have (on average 1.1349693251533743) internal successors, (185), 172 states have internal predecessors, (185), 50 states have call successors, (50), 32 states have call predecessors, (50), 31 states have return successors, (46), 40 states have call predecessors, (46), 46 states have call successors, (46) [2022-04-08 06:25:24,615 INFO L74 IsIncluded]: Start isIncluded. First operand 246 states. Second operand has 245 states, 163 states have (on average 1.1349693251533743) internal successors, (185), 172 states have internal predecessors, (185), 50 states have call successors, (50), 32 states have call predecessors, (50), 31 states have return successors, (46), 40 states have call predecessors, (46), 46 states have call successors, (46) [2022-04-08 06:25:24,616 INFO L87 Difference]: Start difference. First operand 246 states. Second operand has 245 states, 163 states have (on average 1.1349693251533743) internal successors, (185), 172 states have internal predecessors, (185), 50 states have call successors, (50), 32 states have call predecessors, (50), 31 states have return successors, (46), 40 states have call predecessors, (46), 46 states have call successors, (46) [2022-04-08 06:25:24,620 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:25:24,621 INFO L93 Difference]: Finished difference Result 246 states and 282 transitions. [2022-04-08 06:25:24,621 INFO L276 IsEmpty]: Start isEmpty. Operand 246 states and 282 transitions. [2022-04-08 06:25:24,621 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:25:24,621 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:25:24,622 INFO L74 IsIncluded]: Start isIncluded. First operand has 245 states, 163 states have (on average 1.1349693251533743) internal successors, (185), 172 states have internal predecessors, (185), 50 states have call successors, (50), 32 states have call predecessors, (50), 31 states have return successors, (46), 40 states have call predecessors, (46), 46 states have call successors, (46) Second operand 246 states. [2022-04-08 06:25:24,622 INFO L87 Difference]: Start difference. First operand has 245 states, 163 states have (on average 1.1349693251533743) internal successors, (185), 172 states have internal predecessors, (185), 50 states have call successors, (50), 32 states have call predecessors, (50), 31 states have return successors, (46), 40 states have call predecessors, (46), 46 states have call successors, (46) Second operand 246 states. [2022-04-08 06:25:24,626 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:25:24,626 INFO L93 Difference]: Finished difference Result 246 states and 282 transitions. [2022-04-08 06:25:24,626 INFO L276 IsEmpty]: Start isEmpty. Operand 246 states and 282 transitions. [2022-04-08 06:25:24,627 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:25:24,627 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:25:24,627 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:25:24,627 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:25:24,627 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 245 states, 163 states have (on average 1.1349693251533743) internal successors, (185), 172 states have internal predecessors, (185), 50 states have call successors, (50), 32 states have call predecessors, (50), 31 states have return successors, (46), 40 states have call predecessors, (46), 46 states have call successors, (46) [2022-04-08 06:25:24,632 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 245 states to 245 states and 281 transitions. [2022-04-08 06:25:24,632 INFO L78 Accepts]: Start accepts. Automaton has 245 states and 281 transitions. Word has length 100 [2022-04-08 06:25:24,632 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:25:24,632 INFO L478 AbstractCegarLoop]: Abstraction has 245 states and 281 transitions. [2022-04-08 06:25:24,632 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-08 06:25:24,632 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 245 states and 281 transitions. [2022-04-08 06:25:27,138 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 281 edges. 280 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 06:25:27,138 INFO L276 IsEmpty]: Start isEmpty. Operand 245 states and 281 transitions. [2022-04-08 06:25:27,138 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 101 [2022-04-08 06:25:27,139 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:25:27,139 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-08 06:25:27,156 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (19)] Ended with exit code 0 [2022-04-08 06:25:27,339 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-08 06:25:27,339 INFO L403 AbstractCegarLoop]: === Iteration 22 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:25:27,339 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:25:27,340 INFO L85 PathProgramCache]: Analyzing trace with hash -543991253, now seen corresponding path program 9 times [2022-04-08 06:25:27,340 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:25:27,340 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1071342733] [2022-04-08 06:25:35,713 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-08 06:25:35,713 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-08 06:25:35,713 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 06:25:35,713 INFO L85 PathProgramCache]: Analyzing trace with hash -543991253, now seen corresponding path program 10 times [2022-04-08 06:25:35,713 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:25:35,713 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [115077610] [2022-04-08 06:25:35,713 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:25:35,713 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:25:35,722 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:25:35,722 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1684486491] [2022-04-08 06:25:35,722 INFO L93 rtionOrderModulation]: Changing assertion order to TERMS_WITH_SMALL_CONSTANTS_FIRST [2022-04-08 06:25:35,723 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:25:35,723 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:25:35,723 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-08 06:25:35,759 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-08 06:25:35,794 INFO L228 tOrderPrioritization]: Assert order TERMS_WITH_SMALL_CONSTANTS_FIRST issued 0 check-sat command(s) [2022-04-08 06:25:35,794 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:25:35,795 INFO L263 TraceCheckSpWp]: Trace formula consists of 255 conjuncts, 37 conjunts are in the unsatisfiable core [2022-04-08 06:25:35,821 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:25:35,825 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-08 06:25:41,804 INFO L272 TraceCheckUtils]: 0: Hoare triple {22096#true} call ULTIMATE.init(); {22096#true} is VALID [2022-04-08 06:25:41,804 INFO L290 TraceCheckUtils]: 1: Hoare triple {22096#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; {22096#true} is VALID [2022-04-08 06:25:41,804 INFO L290 TraceCheckUtils]: 2: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-08 06:25:41,804 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {22096#true} {22096#true} #96#return; {22096#true} is VALID [2022-04-08 06:25:41,804 INFO L272 TraceCheckUtils]: 4: Hoare triple {22096#true} call #t~ret8 := main(); {22096#true} is VALID [2022-04-08 06:25:41,804 INFO L290 TraceCheckUtils]: 5: Hoare triple {22096#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; {22096#true} is VALID [2022-04-08 06:25:41,804 INFO L272 TraceCheckUtils]: 6: Hoare triple {22096#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {22096#true} is VALID [2022-04-08 06:25:41,804 INFO L290 TraceCheckUtils]: 7: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-08 06:25:41,805 INFO L290 TraceCheckUtils]: 8: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-08 06:25:41,805 INFO L290 TraceCheckUtils]: 9: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-08 06:25:41,805 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {22096#true} {22096#true} #80#return; {22096#true} is VALID [2022-04-08 06:25:41,805 INFO L290 TraceCheckUtils]: 11: Hoare triple {22096#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {22134#(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-08 06:25:41,806 INFO L290 TraceCheckUtils]: 12: Hoare triple {22134#(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; {22134#(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-08 06:25:41,806 INFO L290 TraceCheckUtils]: 13: Hoare triple {22134#(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 < 10);havoc #t~post6; {22134#(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-08 06:25:41,806 INFO L272 TraceCheckUtils]: 14: Hoare triple {22134#(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)); {22096#true} is VALID [2022-04-08 06:25:41,806 INFO L290 TraceCheckUtils]: 15: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-08 06:25:41,806 INFO L290 TraceCheckUtils]: 16: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-08 06:25:41,806 INFO L290 TraceCheckUtils]: 17: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-08 06:25:41,807 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {22096#true} {22134#(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; {22134#(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-08 06:25:41,807 INFO L272 TraceCheckUtils]: 19: Hoare triple {22134#(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)); {22096#true} is VALID [2022-04-08 06:25:41,807 INFO L290 TraceCheckUtils]: 20: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-08 06:25:41,807 INFO L290 TraceCheckUtils]: 21: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-08 06:25:41,807 INFO L290 TraceCheckUtils]: 22: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-08 06:25:41,808 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {22096#true} {22134#(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; {22134#(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-08 06:25:41,808 INFO L272 TraceCheckUtils]: 24: Hoare triple {22134#(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)); {22096#true} is VALID [2022-04-08 06:25:41,808 INFO L290 TraceCheckUtils]: 25: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-08 06:25:41,808 INFO L290 TraceCheckUtils]: 26: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-08 06:25:41,808 INFO L290 TraceCheckUtils]: 27: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-08 06:25:41,808 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {22096#true} {22134#(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; {22134#(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-08 06:25:41,810 INFO L290 TraceCheckUtils]: 29: Hoare triple {22134#(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; {22189#(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))} is VALID [2022-04-08 06:25:41,810 INFO L290 TraceCheckUtils]: 30: Hoare triple {22189#(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))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22189#(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))} is VALID [2022-04-08 06:25:41,811 INFO L290 TraceCheckUtils]: 31: Hoare triple {22189#(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))} assume !!(#t~post6 < 10);havoc #t~post6; {22189#(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))} is VALID [2022-04-08 06:25:41,811 INFO L272 TraceCheckUtils]: 32: Hoare triple {22189#(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))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {22096#true} is VALID [2022-04-08 06:25:41,811 INFO L290 TraceCheckUtils]: 33: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-08 06:25:41,811 INFO L290 TraceCheckUtils]: 34: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-08 06:25:41,811 INFO L290 TraceCheckUtils]: 35: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-08 06:25:41,811 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {22096#true} {22189#(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))} #82#return; {22189#(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))} is VALID [2022-04-08 06:25:41,812 INFO L272 TraceCheckUtils]: 37: Hoare triple {22189#(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))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {22096#true} is VALID [2022-04-08 06:25:41,812 INFO L290 TraceCheckUtils]: 38: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-08 06:25:41,812 INFO L290 TraceCheckUtils]: 39: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-08 06:25:41,812 INFO L290 TraceCheckUtils]: 40: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-08 06:25:41,812 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {22096#true} {22189#(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))} #84#return; {22189#(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))} is VALID [2022-04-08 06:25:41,812 INFO L272 TraceCheckUtils]: 42: Hoare triple {22189#(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))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {22096#true} is VALID [2022-04-08 06:25:41,812 INFO L290 TraceCheckUtils]: 43: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-08 06:25:41,813 INFO L290 TraceCheckUtils]: 44: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-08 06:25:41,813 INFO L290 TraceCheckUtils]: 45: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-08 06:25:41,813 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {22096#true} {22189#(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))} #86#return; {22189#(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))} is VALID [2022-04-08 06:25:41,814 INFO L290 TraceCheckUtils]: 47: Hoare triple {22189#(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))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {22244#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (= main_~q~0 0) (= main_~p~0 4))} is VALID [2022-04-08 06:25:41,815 INFO L290 TraceCheckUtils]: 48: Hoare triple {22244#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (= main_~q~0 0) (= main_~p~0 4))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22244#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (= main_~q~0 0) (= main_~p~0 4))} is VALID [2022-04-08 06:25:41,815 INFO L290 TraceCheckUtils]: 49: Hoare triple {22244#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (= main_~q~0 0) (= main_~p~0 4))} assume !!(#t~post6 < 10);havoc #t~post6; {22244#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (= main_~q~0 0) (= main_~p~0 4))} is VALID [2022-04-08 06:25:41,815 INFO L272 TraceCheckUtils]: 50: Hoare triple {22244#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (= main_~q~0 0) (= main_~p~0 4))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {22096#true} is VALID [2022-04-08 06:25:41,815 INFO L290 TraceCheckUtils]: 51: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-08 06:25:41,815 INFO L290 TraceCheckUtils]: 52: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-08 06:25:41,815 INFO L290 TraceCheckUtils]: 53: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-08 06:25:41,816 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {22096#true} {22244#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (= main_~q~0 0) (= main_~p~0 4))} #82#return; {22244#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (= main_~q~0 0) (= main_~p~0 4))} is VALID [2022-04-08 06:25:41,816 INFO L272 TraceCheckUtils]: 55: Hoare triple {22244#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (= main_~q~0 0) (= main_~p~0 4))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {22096#true} is VALID [2022-04-08 06:25:41,816 INFO L290 TraceCheckUtils]: 56: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-08 06:25:41,816 INFO L290 TraceCheckUtils]: 57: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-08 06:25:41,816 INFO L290 TraceCheckUtils]: 58: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-08 06:25:41,817 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {22096#true} {22244#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (= main_~q~0 0) (= main_~p~0 4))} #84#return; {22244#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (= main_~q~0 0) (= main_~p~0 4))} is VALID [2022-04-08 06:25:41,817 INFO L272 TraceCheckUtils]: 60: Hoare triple {22244#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (= main_~q~0 0) (= main_~p~0 4))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {22096#true} is VALID [2022-04-08 06:25:41,817 INFO L290 TraceCheckUtils]: 61: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-08 06:25:41,817 INFO L290 TraceCheckUtils]: 62: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-08 06:25:41,817 INFO L290 TraceCheckUtils]: 63: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-08 06:25:41,817 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {22096#true} {22244#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (= main_~q~0 0) (= main_~p~0 4))} #86#return; {22244#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (= main_~q~0 0) (= main_~p~0 4))} is VALID [2022-04-08 06:25:41,818 INFO L290 TraceCheckUtils]: 65: Hoare triple {22244#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (= main_~q~0 0) (= main_~p~0 4))} assume !(~r~0 >= ~d~0); {22299#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (= main_~p~0 4))} is VALID [2022-04-08 06:25:41,818 INFO L290 TraceCheckUtils]: 66: Hoare triple {22299#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (= main_~p~0 4))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22299#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (= main_~p~0 4))} is VALID [2022-04-08 06:25:41,819 INFO L290 TraceCheckUtils]: 67: Hoare triple {22299#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (= main_~p~0 4))} assume !!(#t~post7 < 10);havoc #t~post7; {22299#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (= main_~p~0 4))} is VALID [2022-04-08 06:25:41,819 INFO L272 TraceCheckUtils]: 68: Hoare triple {22299#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (= main_~p~0 4))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {22096#true} is VALID [2022-04-08 06:25:41,819 INFO L290 TraceCheckUtils]: 69: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-08 06:25:41,819 INFO L290 TraceCheckUtils]: 70: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-08 06:25:41,819 INFO L290 TraceCheckUtils]: 71: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-08 06:25:41,820 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {22096#true} {22299#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (= main_~p~0 4))} #88#return; {22299#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (= main_~p~0 4))} is VALID [2022-04-08 06:25:41,820 INFO L272 TraceCheckUtils]: 73: Hoare triple {22299#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (= main_~p~0 4))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {22096#true} is VALID [2022-04-08 06:25:41,820 INFO L290 TraceCheckUtils]: 74: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-08 06:25:41,820 INFO L290 TraceCheckUtils]: 75: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-08 06:25:41,820 INFO L290 TraceCheckUtils]: 76: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-08 06:25:41,820 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {22096#true} {22299#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (= main_~p~0 4))} #90#return; {22299#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (= main_~p~0 4))} is VALID [2022-04-08 06:25:41,822 INFO L290 TraceCheckUtils]: 78: Hoare triple {22299#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= (* (mod main_~B~0 4294967296) 4) main_~d~0) (not (<= main_~d~0 main_~r~0)) (= main_~q~0 0) (= 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); {22339#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (div (* (mod main_~B~0 4294967296) 4) 2)) (= main_~p~0 2) (not (<= (* (mod main_~B~0 4294967296) 4) main_~r~0)) (= main_~q~0 0))} is VALID [2022-04-08 06:25:41,823 INFO L290 TraceCheckUtils]: 79: Hoare triple {22339#(and (<= (* 2 (mod main_~B~0 4294967296)) main_~r~0) (= (mod main_~A~0 4294967296) main_~r~0) (= main_~d~0 (div (* (mod main_~B~0 4294967296) 4) 2)) (= main_~p~0 2) (not (<= (* (mod main_~B~0 4294967296) 4) main_~r~0)) (= main_~q~0 0))} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {22343#(and (= main_~q~0 main_~p~0) (= main_~d~0 (div (* (mod main_~B~0 4294967296) 4) 2)) (not (<= (* (mod main_~B~0 4294967296) 4) (+ main_~d~0 main_~r~0))) (= main_~p~0 2) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (<= (* 2 (mod main_~B~0 4294967296)) (+ main_~d~0 main_~r~0)))} is VALID [2022-04-08 06:25:41,824 INFO L290 TraceCheckUtils]: 80: Hoare triple {22343#(and (= main_~q~0 main_~p~0) (= main_~d~0 (div (* (mod main_~B~0 4294967296) 4) 2)) (not (<= (* (mod main_~B~0 4294967296) 4) (+ main_~d~0 main_~r~0))) (= main_~p~0 2) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (<= (* 2 (mod main_~B~0 4294967296)) (+ main_~d~0 main_~r~0)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22343#(and (= main_~q~0 main_~p~0) (= main_~d~0 (div (* (mod main_~B~0 4294967296) 4) 2)) (not (<= (* (mod main_~B~0 4294967296) 4) (+ main_~d~0 main_~r~0))) (= main_~p~0 2) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (<= (* 2 (mod main_~B~0 4294967296)) (+ main_~d~0 main_~r~0)))} is VALID [2022-04-08 06:25:41,824 INFO L290 TraceCheckUtils]: 81: Hoare triple {22343#(and (= main_~q~0 main_~p~0) (= main_~d~0 (div (* (mod main_~B~0 4294967296) 4) 2)) (not (<= (* (mod main_~B~0 4294967296) 4) (+ main_~d~0 main_~r~0))) (= main_~p~0 2) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (<= (* 2 (mod main_~B~0 4294967296)) (+ main_~d~0 main_~r~0)))} assume !!(#t~post7 < 10);havoc #t~post7; {22343#(and (= main_~q~0 main_~p~0) (= main_~d~0 (div (* (mod main_~B~0 4294967296) 4) 2)) (not (<= (* (mod main_~B~0 4294967296) 4) (+ main_~d~0 main_~r~0))) (= main_~p~0 2) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (<= (* 2 (mod main_~B~0 4294967296)) (+ main_~d~0 main_~r~0)))} is VALID [2022-04-08 06:25:41,824 INFO L272 TraceCheckUtils]: 82: Hoare triple {22343#(and (= main_~q~0 main_~p~0) (= main_~d~0 (div (* (mod main_~B~0 4294967296) 4) 2)) (not (<= (* (mod main_~B~0 4294967296) 4) (+ main_~d~0 main_~r~0))) (= main_~p~0 2) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (<= (* 2 (mod main_~B~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)); {22096#true} is VALID [2022-04-08 06:25:41,824 INFO L290 TraceCheckUtils]: 83: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-08 06:25:41,825 INFO L290 TraceCheckUtils]: 84: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-08 06:25:41,825 INFO L290 TraceCheckUtils]: 85: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-08 06:25:41,825 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {22096#true} {22343#(and (= main_~q~0 main_~p~0) (= main_~d~0 (div (* (mod main_~B~0 4294967296) 4) 2)) (not (<= (* (mod main_~B~0 4294967296) 4) (+ main_~d~0 main_~r~0))) (= main_~p~0 2) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (<= (* 2 (mod main_~B~0 4294967296)) (+ main_~d~0 main_~r~0)))} #88#return; {22343#(and (= main_~q~0 main_~p~0) (= main_~d~0 (div (* (mod main_~B~0 4294967296) 4) 2)) (not (<= (* (mod main_~B~0 4294967296) 4) (+ main_~d~0 main_~r~0))) (= main_~p~0 2) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (<= (* 2 (mod main_~B~0 4294967296)) (+ main_~d~0 main_~r~0)))} is VALID [2022-04-08 06:25:41,825 INFO L272 TraceCheckUtils]: 87: Hoare triple {22343#(and (= main_~q~0 main_~p~0) (= main_~d~0 (div (* (mod main_~B~0 4294967296) 4) 2)) (not (<= (* (mod main_~B~0 4294967296) 4) (+ main_~d~0 main_~r~0))) (= main_~p~0 2) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (<= (* 2 (mod main_~B~0 4294967296)) (+ main_~d~0 main_~r~0)))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {22096#true} is VALID [2022-04-08 06:25:41,825 INFO L290 TraceCheckUtils]: 88: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-08 06:25:41,825 INFO L290 TraceCheckUtils]: 89: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-08 06:25:41,825 INFO L290 TraceCheckUtils]: 90: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-08 06:25:41,826 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {22096#true} {22343#(and (= main_~q~0 main_~p~0) (= main_~d~0 (div (* (mod main_~B~0 4294967296) 4) 2)) (not (<= (* (mod main_~B~0 4294967296) 4) (+ main_~d~0 main_~r~0))) (= main_~p~0 2) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (<= (* 2 (mod main_~B~0 4294967296)) (+ main_~d~0 main_~r~0)))} #90#return; {22343#(and (= main_~q~0 main_~p~0) (= main_~d~0 (div (* (mod main_~B~0 4294967296) 4) 2)) (not (<= (* (mod main_~B~0 4294967296) 4) (+ main_~d~0 main_~r~0))) (= main_~p~0 2) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (<= (* 2 (mod main_~B~0 4294967296)) (+ main_~d~0 main_~r~0)))} is VALID [2022-04-08 06:25:41,828 INFO L290 TraceCheckUtils]: 92: Hoare triple {22343#(and (= main_~q~0 main_~p~0) (= main_~d~0 (div (* (mod main_~B~0 4294967296) 4) 2)) (not (<= (* (mod main_~B~0 4294967296) 4) (+ main_~d~0 main_~r~0))) (= main_~p~0 2) (= (+ main_~d~0 main_~r~0) (mod main_~A~0 4294967296)) (<= (* 2 (mod main_~B~0 4294967296)) (+ main_~d~0 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); {22383#(and (= main_~p~0 (div main_~q~0 2)) (= main_~q~0 2) (not (<= (* (mod main_~B~0 4294967296) 4) (mod main_~A~0 4294967296))) (= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (div (* (mod main_~B~0 4294967296) 4) 2)) (= main_~d~0 (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2)) (<= (* 2 (mod main_~B~0 4294967296)) (mod main_~A~0 4294967296)))} is VALID [2022-04-08 06:25:41,829 INFO L290 TraceCheckUtils]: 93: Hoare triple {22383#(and (= main_~p~0 (div main_~q~0 2)) (= main_~q~0 2) (not (<= (* (mod main_~B~0 4294967296) 4) (mod main_~A~0 4294967296))) (= (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) (div (* (mod main_~B~0 4294967296) 4) 2)) (= main_~d~0 (div (+ (mod main_~A~0 4294967296) (* (- 1) main_~r~0)) 2)) (<= (* 2 (mod main_~B~0 4294967296)) (mod main_~A~0 4294967296)))} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {22387#(and (= main_~r~0 (+ (* (- 1) (div (* 2 (mod main_~B~0 4294967296)) 2)) (mod main_~A~0 4294967296) (* (- 2) (mod main_~B~0 4294967296)))) (not (<= (* (mod main_~B~0 4294967296) 4) (mod main_~A~0 4294967296))) (= (+ (- 2) main_~q~0) 1) (<= (* 2 (mod main_~B~0 4294967296)) (mod main_~A~0 4294967296)))} is VALID [2022-04-08 06:25:41,830 INFO L290 TraceCheckUtils]: 94: Hoare triple {22387#(and (= main_~r~0 (+ (* (- 1) (div (* 2 (mod main_~B~0 4294967296)) 2)) (mod main_~A~0 4294967296) (* (- 2) (mod main_~B~0 4294967296)))) (not (<= (* (mod main_~B~0 4294967296) 4) (mod main_~A~0 4294967296))) (= (+ (- 2) main_~q~0) 1) (<= (* 2 (mod main_~B~0 4294967296)) (mod main_~A~0 4294967296)))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22387#(and (= main_~r~0 (+ (* (- 1) (div (* 2 (mod main_~B~0 4294967296)) 2)) (mod main_~A~0 4294967296) (* (- 2) (mod main_~B~0 4294967296)))) (not (<= (* (mod main_~B~0 4294967296) 4) (mod main_~A~0 4294967296))) (= (+ (- 2) main_~q~0) 1) (<= (* 2 (mod main_~B~0 4294967296)) (mod main_~A~0 4294967296)))} is VALID [2022-04-08 06:25:41,830 INFO L290 TraceCheckUtils]: 95: Hoare triple {22387#(and (= main_~r~0 (+ (* (- 1) (div (* 2 (mod main_~B~0 4294967296)) 2)) (mod main_~A~0 4294967296) (* (- 2) (mod main_~B~0 4294967296)))) (not (<= (* (mod main_~B~0 4294967296) 4) (mod main_~A~0 4294967296))) (= (+ (- 2) main_~q~0) 1) (<= (* 2 (mod main_~B~0 4294967296)) (mod main_~A~0 4294967296)))} assume !!(#t~post7 < 10);havoc #t~post7; {22387#(and (= main_~r~0 (+ (* (- 1) (div (* 2 (mod main_~B~0 4294967296)) 2)) (mod main_~A~0 4294967296) (* (- 2) (mod main_~B~0 4294967296)))) (not (<= (* (mod main_~B~0 4294967296) 4) (mod main_~A~0 4294967296))) (= (+ (- 2) main_~q~0) 1) (<= (* 2 (mod main_~B~0 4294967296)) (mod main_~A~0 4294967296)))} is VALID [2022-04-08 06:25:41,831 INFO L272 TraceCheckUtils]: 96: Hoare triple {22387#(and (= main_~r~0 (+ (* (- 1) (div (* 2 (mod main_~B~0 4294967296)) 2)) (mod main_~A~0 4294967296) (* (- 2) (mod main_~B~0 4294967296)))) (not (<= (* (mod main_~B~0 4294967296) 4) (mod main_~A~0 4294967296))) (= (+ (- 2) main_~q~0) 1) (<= (* 2 (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)); {22397#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:25:41,831 INFO L290 TraceCheckUtils]: 97: Hoare triple {22397#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {22401#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:25:41,832 INFO L290 TraceCheckUtils]: 98: Hoare triple {22401#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {22097#false} is VALID [2022-04-08 06:25:41,832 INFO L290 TraceCheckUtils]: 99: Hoare triple {22097#false} assume !false; {22097#false} is VALID [2022-04-08 06:25:41,832 INFO L134 CoverageAnalysis]: Checked inductivity of 368 backedges. 26 proven. 30 refuted. 0 times theorem prover too weak. 312 trivial. 0 not checked. [2022-04-08 06:25:41,832 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-08 06:26:23,152 WARN L232 SmtUtils]: Spent 9.11s on a formula simplification that was a NOOP. DAG size: 142 (called from [L 360] de.uni_freiburg.informatik.ultimate.lib.modelcheckerutils.smt.predicates.PredicateUnifier.getOrConstructPredicate) [2022-04-08 06:27:04,250 INFO L290 TraceCheckUtils]: 99: Hoare triple {22097#false} assume !false; {22097#false} is VALID [2022-04-08 06:27:04,250 INFO L290 TraceCheckUtils]: 98: Hoare triple {22401#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {22097#false} is VALID [2022-04-08 06:27:04,251 INFO L290 TraceCheckUtils]: 97: Hoare triple {22397#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {22401#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-08 06:27:04,251 INFO L272 TraceCheckUtils]: 96: Hoare triple {22417#(= (+ 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)); {22397#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-08 06:27:04,252 INFO L290 TraceCheckUtils]: 95: Hoare triple {22417#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} assume !!(#t~post7 < 10);havoc #t~post7; {22417#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} is VALID [2022-04-08 06:27:04,252 INFO L290 TraceCheckUtils]: 94: Hoare triple {22417#(= (+ 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; {22417#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} is VALID [2022-04-08 06:27:04,255 INFO L290 TraceCheckUtils]: 93: Hoare triple {22427#(= (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; {22417#(= (+ main_~r~0 (* main_~q~0 (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296))} is VALID [2022-04-08 06:27:04,265 INFO L290 TraceCheckUtils]: 92: Hoare triple {22431#(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); {22427#(= (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-08 06:27:04,265 INFO L284 TraceCheckUtils]: 91: Hoare quadruple {22096#true} {22431#(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; {22431#(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-08 06:27:04,265 INFO L290 TraceCheckUtils]: 90: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-08 06:27:04,266 INFO L290 TraceCheckUtils]: 89: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-08 06:27:04,266 INFO L290 TraceCheckUtils]: 88: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-08 06:27:04,266 INFO L272 TraceCheckUtils]: 87: Hoare triple {22431#(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)); {22096#true} is VALID [2022-04-08 06:27:04,266 INFO L284 TraceCheckUtils]: 86: Hoare quadruple {22096#true} {22431#(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; {22431#(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-08 06:27:04,266 INFO L290 TraceCheckUtils]: 85: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-08 06:27:04,266 INFO L290 TraceCheckUtils]: 84: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-08 06:27:04,266 INFO L290 TraceCheckUtils]: 83: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-08 06:27:04,267 INFO L272 TraceCheckUtils]: 82: Hoare triple {22431#(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)); {22096#true} is VALID [2022-04-08 06:27:04,268 INFO L290 TraceCheckUtils]: 81: Hoare triple {22431#(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 < 10);havoc #t~post7; {22431#(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-08 06:27:04,269 INFO L290 TraceCheckUtils]: 80: Hoare triple {22431#(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; {22431#(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-08 06:27:04,283 INFO L290 TraceCheckUtils]: 79: Hoare triple {22471#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (= (+ (* (mod main_~B~0 4294967296) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)) (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod main_~p~0 2) 0)) (or (= (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 main_~p~0 (div main_~p~0 2)) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))))) (or (and (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (mod main_~B~0 4294967296) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)))) (= (mod main_~p~0 2) 0)) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 main_~p~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)))) (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0))))} assume ~r~0 >= ~d~0;~r~0 := ~r~0 - ~d~0;~q~0 := ~q~0 + ~p~0; {22431#(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-08 06:27:04,532 INFO L290 TraceCheckUtils]: 78: Hoare triple {22475#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 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)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 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) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (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) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (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)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 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) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (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 (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)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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)))))))))} 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); {22471#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (= (+ (* (mod main_~B~0 4294967296) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)) (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod main_~p~0 2) 0)) (or (= (+ (- 1) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 main_~p~0 (div main_~p~0 2)) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0))))) (or (and (or (not (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (mod main_~B~0 4294967296) (+ main_~q~0 main_~p~0 (div main_~p~0 2) 1)) (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)))) (= (mod main_~p~0 2) 0)) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) main_~d~0) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 main_~p~0 (div main_~p~0 2)) (mod main_~B~0 4294967296)))) (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)))) (and (not (= (mod main_~d~0 2) 0)) (< main_~d~0 0))))} is VALID [2022-04-08 06:27:04,533 INFO L284 TraceCheckUtils]: 77: Hoare quadruple {22096#true} {22475#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 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)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 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) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (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) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (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)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 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) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (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 (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)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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)))))))))} #90#return; {22475#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 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)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 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) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (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) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (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)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 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) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (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 (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)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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)))))))))} is VALID [2022-04-08 06:27:04,533 INFO L290 TraceCheckUtils]: 76: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-08 06:27:04,533 INFO L290 TraceCheckUtils]: 75: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-08 06:27:04,533 INFO L290 TraceCheckUtils]: 74: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-08 06:27:04,533 INFO L272 TraceCheckUtils]: 73: Hoare triple {22475#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 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)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 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) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (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) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (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)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 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) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (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 (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)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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)))))))))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {22096#true} is VALID [2022-04-08 06:27:04,534 INFO L284 TraceCheckUtils]: 72: Hoare quadruple {22096#true} {22475#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 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)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 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) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (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) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (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)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 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) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (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 (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)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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)))))))))} #88#return; {22475#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 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)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 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) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (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) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (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)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 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) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (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 (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)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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)))))))))} is VALID [2022-04-08 06:27:04,535 INFO L290 TraceCheckUtils]: 71: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-08 06:27:04,535 INFO L290 TraceCheckUtils]: 70: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-08 06:27:04,535 INFO L290 TraceCheckUtils]: 69: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-08 06:27:04,535 INFO L272 TraceCheckUtils]: 68: Hoare triple {22475#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 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)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 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) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (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) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (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)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 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) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (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 (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)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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)))))))))} call __VERIFIER_assert((if ~A~0 % 4294967296 == ~q~0 * (~B~0 % 4294967296) + ~r~0 then 1 else 0)); {22096#true} is VALID [2022-04-08 06:27:04,540 INFO L290 TraceCheckUtils]: 67: Hoare triple {22475#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 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)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 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) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (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) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (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)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 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) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (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 (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)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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)))))))))} assume !!(#t~post7 < 10);havoc #t~post7; {22475#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 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)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 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) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (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) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (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)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 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) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (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 (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)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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)))))))))} is VALID [2022-04-08 06:27:04,544 INFO L290 TraceCheckUtils]: 66: Hoare triple {22475#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 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)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 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) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (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) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (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)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 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) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (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 (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)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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)))))))))} #t~post7 := ~counter~0;~counter~0 := 1 + #t~post7; {22475#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 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)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 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) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (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) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (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)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 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) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (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 (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)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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)))))))))} is VALID [2022-04-08 06:27:04,547 INFO L290 TraceCheckUtils]: 65: Hoare triple {22515#(or (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 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)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 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) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (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) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (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)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 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) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (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 (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)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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))))))))) (<= main_~d~0 main_~r~0))} assume !(~r~0 >= ~d~0); {22475#(and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 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)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 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) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (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) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (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)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 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) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (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 (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)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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)))))))))} is VALID [2022-04-08 06:27:04,548 INFO L284 TraceCheckUtils]: 64: Hoare quadruple {22096#true} {22515#(or (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 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)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 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) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (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) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (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)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 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) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (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 (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)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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))))))))) (<= main_~d~0 main_~r~0))} #86#return; {22515#(or (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 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)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 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) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (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) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (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)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 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) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (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 (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)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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))))))))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-08 06:27:04,548 INFO L290 TraceCheckUtils]: 63: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-08 06:27:04,548 INFO L290 TraceCheckUtils]: 62: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-08 06:27:04,548 INFO L290 TraceCheckUtils]: 61: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-08 06:27:04,548 INFO L272 TraceCheckUtils]: 60: Hoare triple {22515#(or (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 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)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 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) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (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) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (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)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 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) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (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 (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)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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))))))))) (<= main_~d~0 main_~r~0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {22096#true} is VALID [2022-04-08 06:27:04,549 INFO L284 TraceCheckUtils]: 59: Hoare quadruple {22096#true} {22515#(or (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 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)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 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) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (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) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (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)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 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) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (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 (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)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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))))))))) (<= main_~d~0 main_~r~0))} #84#return; {22515#(or (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 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)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 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) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (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) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (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)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 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) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (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 (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)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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))))))))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-08 06:27:04,549 INFO L290 TraceCheckUtils]: 58: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-08 06:27:04,549 INFO L290 TraceCheckUtils]: 57: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-08 06:27:04,549 INFO L290 TraceCheckUtils]: 56: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-08 06:27:04,550 INFO L272 TraceCheckUtils]: 55: Hoare triple {22515#(or (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 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)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 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) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (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) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (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)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 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) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (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 (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)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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))))))))) (<= main_~d~0 main_~r~0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {22096#true} is VALID [2022-04-08 06:27:04,550 INFO L284 TraceCheckUtils]: 54: Hoare quadruple {22096#true} {22515#(or (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 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)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 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) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (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) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (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)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 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) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (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 (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)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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))))))))) (<= main_~d~0 main_~r~0))} #82#return; {22515#(or (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 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)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 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) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (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) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (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)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 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) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (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 (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)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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))))))))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-08 06:27:04,551 INFO L290 TraceCheckUtils]: 53: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-08 06:27:04,551 INFO L290 TraceCheckUtils]: 52: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-08 06:27:04,551 INFO L290 TraceCheckUtils]: 51: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-08 06:27:04,551 INFO L272 TraceCheckUtils]: 50: Hoare triple {22515#(or (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 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)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 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) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (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) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (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)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 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) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (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 (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)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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))))))))) (<= main_~d~0 main_~r~0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {22096#true} is VALID [2022-04-08 06:27:04,555 INFO L290 TraceCheckUtils]: 49: Hoare triple {22515#(or (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 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)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 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) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (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) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (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)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 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) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (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 (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)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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))))))))) (<= main_~d~0 main_~r~0))} assume !!(#t~post6 < 10);havoc #t~post6; {22515#(or (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 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)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 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) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (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) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (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)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 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) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (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 (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)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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))))))))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-08 06:27:04,559 INFO L290 TraceCheckUtils]: 48: Hoare triple {22515#(or (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 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)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 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) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (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) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (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)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 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) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (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 (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)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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))))))))) (<= main_~d~0 main_~r~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22515#(or (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 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)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 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) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (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) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (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)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 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) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (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 (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)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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))))))))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-08 06:27:04,604 INFO L290 TraceCheckUtils]: 47: Hoare triple {22570#(or (and (or (and (not (= (mod (div (* main_~p~0 2) 2) 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0))))) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0 1)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)))) (not (< main_~p~0 0)) (= (mod (div (* main_~p~0 2) 2) 2) 0))) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {22515#(or (and (or (not (< main_~d~0 0)) (= (mod main_~d~0 2) 0) (and (or (not (< main_~p~0 0)) (and (or (= 0 (mod (+ (div main_~d~0 2) 1) 2)) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 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)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod (+ (div main_~p~0 2) 1) 2) 0) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 2) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))))))) (or (and (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 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) 1) 2) 0)) (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (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) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))))) (not (= 0 (mod (+ (div main_~d~0 2) 1) 2))))) (= (mod main_~p~0 2) 0)) (or (and (not (= (mod main_~p~0 2) 0)) (< main_~p~0 0)) (and (or (and (or (= (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)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0))) (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (- 2) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2)))))) (= 0 (mod (+ (div main_~d~0 2) 1) 2))) (or (and (or (= (+ (- 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) 1) (mod main_~B~0 4294967296))) (mod main_~A~0 4294967296)) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))) (or (= (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div main_~d~0 2)) (* (- 1) (div (+ (div main_~d~0 2) 1) 2))) (mod main_~A~0 4294967296)) (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 (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)) (and (or (not (< (div main_~d~0 2) 0)) (and (or (= (mod main_~A~0 4294967296) (+ (- 1) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (not (< (div main_~p~0 2) 0)))) (= (mod (div main_~d~0 2) 2) 0)) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (and (< (div main_~p~0 2) 0) (not (= (mod (div main_~p~0 2) 2) 0))) (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))))) (or (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (div main_~p~0 2) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296)))) (= (mod (div main_~p~0 2) 2) 0) (not (< (div main_~p~0 2) 0))))))) (or (not (< main_~p~0 0)) (= (mod main_~p~0 2) 0) (and (or (not (< (div main_~d~0 2) 0)) (= (mod (div main_~d~0 2) 2) 0) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) (- 1) main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2))) (mod main_~A~0 4294967296)) (= (mod (+ (div main_~p~0 2) 1) 2) 0)))) (or (and (< (div main_~d~0 2) 0) (not (= (mod (div main_~d~0 2) 2) 0))) (and (or (not (= (mod (+ (div main_~p~0 2) 1) 2) 0)) (= (mod main_~A~0 4294967296) (+ main_~r~0 (* (- 1) (div (div main_~d~0 2) 2)) (* (- 1) (div main_~d~0 2)) (* (+ main_~q~0 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2) 1) (mod main_~B~0 4294967296))))) (or (= (mod main_~A~0 4294967296) (+ (* (+ main_~q~0 2 (div (+ (div main_~p~0 2) 1) 2) (div main_~p~0 2)) (mod main_~B~0 4294967296)) 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))))))))) (<= main_~d~0 main_~r~0))} is VALID [2022-04-08 06:27:04,605 INFO L284 TraceCheckUtils]: 46: Hoare quadruple {22096#true} {22570#(or (and (or (and (not (= (mod (div (* main_~p~0 2) 2) 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0))))) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0 1)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)))) (not (< main_~p~0 0)) (= (mod (div (* main_~p~0 2) 2) 2) 0))) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} #86#return; {22570#(or (and (or (and (not (= (mod (div (* main_~p~0 2) 2) 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0))))) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0 1)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)))) (not (< main_~p~0 0)) (= (mod (div (* main_~p~0 2) 2) 2) 0))) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-08 06:27:04,605 INFO L290 TraceCheckUtils]: 45: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-08 06:27:04,605 INFO L290 TraceCheckUtils]: 44: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-08 06:27:04,605 INFO L290 TraceCheckUtils]: 43: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-08 06:27:04,605 INFO L272 TraceCheckUtils]: 42: Hoare triple {22570#(or (and (or (and (not (= (mod (div (* main_~p~0 2) 2) 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0))))) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0 1)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)))) (not (< main_~p~0 0)) (= (mod (div (* main_~p~0 2) 2) 2) 0))) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {22096#true} is VALID [2022-04-08 06:27:04,605 INFO L284 TraceCheckUtils]: 41: Hoare quadruple {22096#true} {22570#(or (and (or (and (not (= (mod (div (* main_~p~0 2) 2) 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0))))) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0 1)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)))) (not (< main_~p~0 0)) (= (mod (div (* main_~p~0 2) 2) 2) 0))) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} #84#return; {22570#(or (and (or (and (not (= (mod (div (* main_~p~0 2) 2) 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0))))) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0 1)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)))) (not (< main_~p~0 0)) (= (mod (div (* main_~p~0 2) 2) 2) 0))) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-08 06:27:04,605 INFO L290 TraceCheckUtils]: 40: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-08 06:27:04,606 INFO L290 TraceCheckUtils]: 39: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-08 06:27:04,606 INFO L290 TraceCheckUtils]: 38: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-08 06:27:04,606 INFO L272 TraceCheckUtils]: 37: Hoare triple {22570#(or (and (or (and (not (= (mod (div (* main_~p~0 2) 2) 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0))))) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0 1)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)))) (not (< main_~p~0 0)) (= (mod (div (* main_~p~0 2) 2) 2) 0))) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {22096#true} is VALID [2022-04-08 06:27:04,606 INFO L284 TraceCheckUtils]: 36: Hoare quadruple {22096#true} {22570#(or (and (or (and (not (= (mod (div (* main_~p~0 2) 2) 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0))))) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0 1)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)))) (not (< main_~p~0 0)) (= (mod (div (* main_~p~0 2) 2) 2) 0))) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} #82#return; {22570#(or (and (or (and (not (= (mod (div (* main_~p~0 2) 2) 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0))))) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0 1)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)))) (not (< main_~p~0 0)) (= (mod (div (* main_~p~0 2) 2) 2) 0))) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-08 06:27:04,606 INFO L290 TraceCheckUtils]: 35: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-08 06:27:04,606 INFO L290 TraceCheckUtils]: 34: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-08 06:27:04,606 INFO L290 TraceCheckUtils]: 33: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-08 06:27:04,607 INFO L272 TraceCheckUtils]: 32: Hoare triple {22570#(or (and (or (and (not (= (mod (div (* main_~p~0 2) 2) 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0))))) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0 1)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)))) (not (< main_~p~0 0)) (= (mod (div (* main_~p~0 2) 2) 2) 0))) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {22096#true} is VALID [2022-04-08 06:27:04,607 INFO L290 TraceCheckUtils]: 31: Hoare triple {22570#(or (and (or (and (not (= (mod (div (* main_~p~0 2) 2) 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0))))) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0 1)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)))) (not (< main_~p~0 0)) (= (mod (div (* main_~p~0 2) 2) 2) 0))) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} assume !!(#t~post6 < 10);havoc #t~post6; {22570#(or (and (or (and (not (= (mod (div (* main_~p~0 2) 2) 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0))))) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0 1)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)))) (not (< main_~p~0 0)) (= (mod (div (* main_~p~0 2) 2) 2) 0))) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-08 06:27:04,608 INFO L290 TraceCheckUtils]: 30: Hoare triple {22570#(or (and (or (and (not (= (mod (div (* main_~p~0 2) 2) 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0))))) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0 1)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)))) (not (< main_~p~0 0)) (= (mod (div (* main_~p~0 2) 2) 2) 0))) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22570#(or (and (or (and (not (= (mod (div (* main_~p~0 2) 2) 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0))))) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0 1)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)))) (not (< main_~p~0 0)) (= (mod (div (* main_~p~0 2) 2) 2) 0))) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-08 06:27:04,611 INFO L290 TraceCheckUtils]: 29: Hoare triple {22625#(or (<= (* main_~d~0 4) main_~r~0) (not (<= (* main_~d~0 2) main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (div (* main_~d~0 4) 2) 2)) (* (- 1) (div (* main_~d~0 4) 2)) main_~r~0 (* (+ (div (* main_~p~0 4) 2) main_~q~0 (div (div (* main_~p~0 4) 2) 2)) (mod main_~B~0 4294967296)))))} assume !!(~r~0 >= ~d~0);~d~0 := 2 * ~d~0;~p~0 := 2 * ~p~0; {22570#(or (and (or (and (not (= (mod (div (* main_~p~0 2) 2) 2) 0)) (< main_~p~0 0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0))))) (or (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (* main_~d~0 2) 2)) (* (mod main_~B~0 4294967296) (+ (div (* main_~p~0 2) 2) (div (div (* main_~p~0 2) 2) 2) main_~q~0 1)) main_~r~0 (* (- 1) (div (div (* main_~d~0 2) 2) 2)))) (not (< main_~p~0 0)) (= (mod (div (* main_~p~0 2) 2) 2) 0))) (not (<= main_~d~0 main_~r~0)) (<= (* main_~d~0 2) main_~r~0))} is VALID [2022-04-08 06:27:04,612 INFO L284 TraceCheckUtils]: 28: Hoare quadruple {22096#true} {22625#(or (<= (* main_~d~0 4) main_~r~0) (not (<= (* main_~d~0 2) main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (div (* main_~d~0 4) 2) 2)) (* (- 1) (div (* main_~d~0 4) 2)) main_~r~0 (* (+ (div (* main_~p~0 4) 2) main_~q~0 (div (div (* main_~p~0 4) 2) 2)) (mod main_~B~0 4294967296)))))} #86#return; {22625#(or (<= (* main_~d~0 4) main_~r~0) (not (<= (* main_~d~0 2) main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (div (* main_~d~0 4) 2) 2)) (* (- 1) (div (* main_~d~0 4) 2)) main_~r~0 (* (+ (div (* main_~p~0 4) 2) main_~q~0 (div (div (* main_~p~0 4) 2) 2)) (mod main_~B~0 4294967296)))))} is VALID [2022-04-08 06:27:04,612 INFO L290 TraceCheckUtils]: 27: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-08 06:27:04,612 INFO L290 TraceCheckUtils]: 26: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-08 06:27:04,612 INFO L290 TraceCheckUtils]: 25: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-08 06:27:04,612 INFO L272 TraceCheckUtils]: 24: Hoare triple {22625#(or (<= (* main_~d~0 4) main_~r~0) (not (<= (* main_~d~0 2) main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (div (* main_~d~0 4) 2) 2)) (* (- 1) (div (* main_~d~0 4) 2)) main_~r~0 (* (+ (div (* main_~p~0 4) 2) main_~q~0 (div (div (* main_~p~0 4) 2) 2)) (mod main_~B~0 4294967296)))))} call __VERIFIER_assert((if ~d~0 == ~B~0 % 4294967296 * ~p~0 then 1 else 0)); {22096#true} is VALID [2022-04-08 06:27:04,613 INFO L284 TraceCheckUtils]: 23: Hoare quadruple {22096#true} {22625#(or (<= (* main_~d~0 4) main_~r~0) (not (<= (* main_~d~0 2) main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (div (* main_~d~0 4) 2) 2)) (* (- 1) (div (* main_~d~0 4) 2)) main_~r~0 (* (+ (div (* main_~p~0 4) 2) main_~q~0 (div (div (* main_~p~0 4) 2) 2)) (mod main_~B~0 4294967296)))))} #84#return; {22625#(or (<= (* main_~d~0 4) main_~r~0) (not (<= (* main_~d~0 2) main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (div (* main_~d~0 4) 2) 2)) (* (- 1) (div (* main_~d~0 4) 2)) main_~r~0 (* (+ (div (* main_~p~0 4) 2) main_~q~0 (div (div (* main_~p~0 4) 2) 2)) (mod main_~B~0 4294967296)))))} is VALID [2022-04-08 06:27:04,613 INFO L290 TraceCheckUtils]: 22: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-08 06:27:04,613 INFO L290 TraceCheckUtils]: 21: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-08 06:27:04,613 INFO L290 TraceCheckUtils]: 20: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-08 06:27:04,613 INFO L272 TraceCheckUtils]: 19: Hoare triple {22625#(or (<= (* main_~d~0 4) main_~r~0) (not (<= (* main_~d~0 2) main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (div (* main_~d~0 4) 2) 2)) (* (- 1) (div (* main_~d~0 4) 2)) main_~r~0 (* (+ (div (* main_~p~0 4) 2) main_~q~0 (div (div (* main_~p~0 4) 2) 2)) (mod main_~B~0 4294967296)))))} call __VERIFIER_assert((if ~r~0 == ~A~0 % 4294967296 then 1 else 0)); {22096#true} is VALID [2022-04-08 06:27:04,613 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {22096#true} {22625#(or (<= (* main_~d~0 4) main_~r~0) (not (<= (* main_~d~0 2) main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (div (* main_~d~0 4) 2) 2)) (* (- 1) (div (* main_~d~0 4) 2)) main_~r~0 (* (+ (div (* main_~p~0 4) 2) main_~q~0 (div (div (* main_~p~0 4) 2) 2)) (mod main_~B~0 4294967296)))))} #82#return; {22625#(or (<= (* main_~d~0 4) main_~r~0) (not (<= (* main_~d~0 2) main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (div (* main_~d~0 4) 2) 2)) (* (- 1) (div (* main_~d~0 4) 2)) main_~r~0 (* (+ (div (* main_~p~0 4) 2) main_~q~0 (div (div (* main_~p~0 4) 2) 2)) (mod main_~B~0 4294967296)))))} is VALID [2022-04-08 06:27:04,613 INFO L290 TraceCheckUtils]: 17: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-08 06:27:04,614 INFO L290 TraceCheckUtils]: 16: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-08 06:27:04,614 INFO L290 TraceCheckUtils]: 15: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-08 06:27:04,614 INFO L272 TraceCheckUtils]: 14: Hoare triple {22625#(or (<= (* main_~d~0 4) main_~r~0) (not (<= (* main_~d~0 2) main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (div (* main_~d~0 4) 2) 2)) (* (- 1) (div (* main_~d~0 4) 2)) main_~r~0 (* (+ (div (* main_~p~0 4) 2) main_~q~0 (div (div (* main_~p~0 4) 2) 2)) (mod main_~B~0 4294967296)))))} call __VERIFIER_assert((if 0 == ~q~0 then 1 else 0)); {22096#true} is VALID [2022-04-08 06:27:04,614 INFO L290 TraceCheckUtils]: 13: Hoare triple {22625#(or (<= (* main_~d~0 4) main_~r~0) (not (<= (* main_~d~0 2) main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (div (* main_~d~0 4) 2) 2)) (* (- 1) (div (* main_~d~0 4) 2)) main_~r~0 (* (+ (div (* main_~p~0 4) 2) main_~q~0 (div (div (* main_~p~0 4) 2) 2)) (mod main_~B~0 4294967296)))))} assume !!(#t~post6 < 10);havoc #t~post6; {22625#(or (<= (* main_~d~0 4) main_~r~0) (not (<= (* main_~d~0 2) main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (div (* main_~d~0 4) 2) 2)) (* (- 1) (div (* main_~d~0 4) 2)) main_~r~0 (* (+ (div (* main_~p~0 4) 2) main_~q~0 (div (div (* main_~p~0 4) 2) 2)) (mod main_~B~0 4294967296)))))} is VALID [2022-04-08 06:27:04,615 INFO L290 TraceCheckUtils]: 12: Hoare triple {22625#(or (<= (* main_~d~0 4) main_~r~0) (not (<= (* main_~d~0 2) main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (div (* main_~d~0 4) 2) 2)) (* (- 1) (div (* main_~d~0 4) 2)) main_~r~0 (* (+ (div (* main_~p~0 4) 2) main_~q~0 (div (div (* main_~p~0 4) 2) 2)) (mod main_~B~0 4294967296)))))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {22625#(or (<= (* main_~d~0 4) main_~r~0) (not (<= (* main_~d~0 2) main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (div (* main_~d~0 4) 2) 2)) (* (- 1) (div (* main_~d~0 4) 2)) main_~r~0 (* (+ (div (* main_~p~0 4) 2) main_~q~0 (div (div (* main_~p~0 4) 2) 2)) (mod main_~B~0 4294967296)))))} is VALID [2022-04-08 06:27:04,617 INFO L290 TraceCheckUtils]: 11: Hoare triple {22096#true} ~r~0 := ~A~0 % 4294967296;~d~0 := ~B~0 % 4294967296;~p~0 := 1;~q~0 := 0; {22625#(or (<= (* main_~d~0 4) main_~r~0) (not (<= (* main_~d~0 2) main_~r~0)) (= (mod main_~A~0 4294967296) (+ (* (- 1) (div (div (* main_~d~0 4) 2) 2)) (* (- 1) (div (* main_~d~0 4) 2)) main_~r~0 (* (+ (div (* main_~p~0 4) 2) main_~q~0 (div (div (* main_~p~0 4) 2) 2)) (mod main_~B~0 4294967296)))))} is VALID [2022-04-08 06:27:04,617 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {22096#true} {22096#true} #80#return; {22096#true} is VALID [2022-04-08 06:27:04,617 INFO L290 TraceCheckUtils]: 9: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-08 06:27:04,617 INFO L290 TraceCheckUtils]: 8: Hoare triple {22096#true} assume !(0 == ~cond); {22096#true} is VALID [2022-04-08 06:27:04,617 INFO L290 TraceCheckUtils]: 7: Hoare triple {22096#true} ~cond := #in~cond; {22096#true} is VALID [2022-04-08 06:27:04,617 INFO L272 TraceCheckUtils]: 6: Hoare triple {22096#true} call assume_abort_if_not((if ~B~0 % 4294967296 >= 1 then 1 else 0)); {22096#true} is VALID [2022-04-08 06:27:04,618 INFO L290 TraceCheckUtils]: 5: Hoare triple {22096#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; {22096#true} is VALID [2022-04-08 06:27:04,618 INFO L272 TraceCheckUtils]: 4: Hoare triple {22096#true} call #t~ret8 := main(); {22096#true} is VALID [2022-04-08 06:27:04,618 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {22096#true} {22096#true} #96#return; {22096#true} is VALID [2022-04-08 06:27:04,618 INFO L290 TraceCheckUtils]: 2: Hoare triple {22096#true} assume true; {22096#true} is VALID [2022-04-08 06:27:04,618 INFO L290 TraceCheckUtils]: 1: Hoare triple {22096#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; {22096#true} is VALID [2022-04-08 06:27:04,618 INFO L272 TraceCheckUtils]: 0: Hoare triple {22096#true} call ULTIMATE.init(); {22096#true} is VALID [2022-04-08 06:27:04,619 INFO L134 CoverageAnalysis]: Checked inductivity of 368 backedges. 26 proven. 30 refuted. 0 times theorem prover too weak. 312 trivial. 0 not checked. [2022-04-08 06:27:04,619 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-08 06:27:04,619 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [115077610] [2022-04-08 06:27:04,619 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-08 06:27:04,619 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1684486491] [2022-04-08 06:27:04,619 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1684486491] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-08 06:27:04,619 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-08 06:27:04,620 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 12] total 20 [2022-04-08 06:27:04,620 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-08 06:27:04,620 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1071342733] [2022-04-08 06:27:04,620 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1071342733] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-08 06:27:04,620 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-08 06:27:04,620 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-08 06:27:04,620 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [784240114] [2022-04-08 06:27:04,620 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-08 06:27:04,621 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 2.6666666666666665) internal successors, (32), 11 states have internal predecessors, (32), 7 states have call successors, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 6 states have call predecessors, (15), 6 states have call successors, (15) Word has length 100 [2022-04-08 06:27:04,621 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-08 06:27:04,621 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 2.6666666666666665) internal successors, (32), 11 states have internal predecessors, (32), 7 states have call successors, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 6 states have call predecessors, (15), 6 states have call successors, (15) [2022-04-08 06:27:04,706 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-08 06:27:04,706 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-08 06:27:04,706 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-08 06:27:04,707 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-08 06:27:04,707 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=83, Invalid=296, Unknown=1, NotChecked=0, Total=380 [2022-04-08 06:27:04,707 INFO L87 Difference]: Start difference. First operand 245 states and 281 transitions. Second operand has 12 states, 12 states have (on average 2.6666666666666665) internal successors, (32), 11 states have internal predecessors, (32), 7 states have call successors, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 6 states have call predecessors, (15), 6 states have call successors, (15) [2022-04-08 06:27:08,514 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:27:08,515 INFO L93 Difference]: Finished difference Result 270 states and 303 transitions. [2022-04-08 06:27:08,515 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-04-08 06:27:08,515 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 2.6666666666666665) internal successors, (32), 11 states have internal predecessors, (32), 7 states have call successors, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 6 states have call predecessors, (15), 6 states have call successors, (15) Word has length 100 [2022-04-08 06:27:08,515 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-08 06:27:08,515 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 2.6666666666666665) internal successors, (32), 11 states have internal predecessors, (32), 7 states have call successors, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 6 states have call predecessors, (15), 6 states have call successors, (15) [2022-04-08 06:27:08,516 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 121 transitions. [2022-04-08 06:27:08,517 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 2.6666666666666665) internal successors, (32), 11 states have internal predecessors, (32), 7 states have call successors, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 6 states have call predecessors, (15), 6 states have call successors, (15) [2022-04-08 06:27:08,518 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 121 transitions. [2022-04-08 06:27:08,518 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 12 states and 121 transitions. [2022-04-08 06:27:08,786 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 121 edges. 121 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-08 06:27:08,789 INFO L225 Difference]: With dead ends: 270 [2022-04-08 06:27:08,789 INFO L226 Difference]: Without dead ends: 233 [2022-04-08 06:27:08,790 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 200 GetRequests, 180 SyntacticMatches, 1 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 64 ImplicationChecksByTransitivity, 18.3s TimeCoverageRelationStatistics Valid=87, Invalid=332, Unknown=1, NotChecked=0, Total=420 [2022-04-08 06:27:08,790 INFO L913 BasicCegarLoop]: 59 mSDtfsCounter, 13 mSDsluCounter, 335 mSDsCounter, 0 mSdLazyCounter, 506 mSolverCounterSat, 20 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 394 SdHoareTripleChecker+Invalid, 526 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 20 IncrementalHoareTripleChecker+Valid, 506 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.8s IncrementalHoareTripleChecker+Time [2022-04-08 06:27:08,790 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [17 Valid, 394 Invalid, 526 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [20 Valid, 506 Invalid, 0 Unknown, 0 Unchecked, 1.8s Time] [2022-04-08 06:27:08,791 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 233 states. [2022-04-08 06:27:09,060 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 233 to 233. [2022-04-08 06:27:09,060 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-08 06:27:09,061 INFO L82 GeneralOperation]: Start isEquivalent. First operand 233 states. Second operand has 233 states, 155 states have (on average 1.1290322580645162) internal successors, (175), 162 states have internal predecessors, (175), 46 states have call successors, (46), 32 states have call predecessors, (46), 31 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-08 06:27:09,061 INFO L74 IsIncluded]: Start isIncluded. First operand 233 states. Second operand has 233 states, 155 states have (on average 1.1290322580645162) internal successors, (175), 162 states have internal predecessors, (175), 46 states have call successors, (46), 32 states have call predecessors, (46), 31 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-08 06:27:09,061 INFO L87 Difference]: Start difference. First operand 233 states. Second operand has 233 states, 155 states have (on average 1.1290322580645162) internal successors, (175), 162 states have internal predecessors, (175), 46 states have call successors, (46), 32 states have call predecessors, (46), 31 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-08 06:27:09,064 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:27:09,064 INFO L93 Difference]: Finished difference Result 233 states and 264 transitions. [2022-04-08 06:27:09,064 INFO L276 IsEmpty]: Start isEmpty. Operand 233 states and 264 transitions. [2022-04-08 06:27:09,065 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:27:09,065 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:27:09,065 INFO L74 IsIncluded]: Start isIncluded. First operand has 233 states, 155 states have (on average 1.1290322580645162) internal successors, (175), 162 states have internal predecessors, (175), 46 states have call successors, (46), 32 states have call predecessors, (46), 31 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) Second operand 233 states. [2022-04-08 06:27:09,065 INFO L87 Difference]: Start difference. First operand has 233 states, 155 states have (on average 1.1290322580645162) internal successors, (175), 162 states have internal predecessors, (175), 46 states have call successors, (46), 32 states have call predecessors, (46), 31 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) Second operand 233 states. [2022-04-08 06:27:09,069 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-08 06:27:09,069 INFO L93 Difference]: Finished difference Result 233 states and 264 transitions. [2022-04-08 06:27:09,069 INFO L276 IsEmpty]: Start isEmpty. Operand 233 states and 264 transitions. [2022-04-08 06:27:09,069 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-08 06:27:09,069 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-08 06:27:09,069 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-08 06:27:09,069 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-08 06:27:09,069 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 233 states, 155 states have (on average 1.1290322580645162) internal successors, (175), 162 states have internal predecessors, (175), 46 states have call successors, (46), 32 states have call predecessors, (46), 31 states have return successors, (43), 38 states have call predecessors, (43), 43 states have call successors, (43) [2022-04-08 06:27:09,073 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 233 states to 233 states and 264 transitions. [2022-04-08 06:27:09,073 INFO L78 Accepts]: Start accepts. Automaton has 233 states and 264 transitions. Word has length 100 [2022-04-08 06:27:09,073 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-08 06:27:09,073 INFO L478 AbstractCegarLoop]: Abstraction has 233 states and 264 transitions. [2022-04-08 06:27:09,073 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 2.6666666666666665) internal successors, (32), 11 states have internal predecessors, (32), 7 states have call successors, (17), 2 states have call predecessors, (17), 1 states have return successors, (15), 6 states have call predecessors, (15), 6 states have call successors, (15) [2022-04-08 06:27:09,073 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 233 states and 264 transitions. [2022-04-08 06:27:11,472 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 264 edges. 263 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-08 06:27:11,473 INFO L276 IsEmpty]: Start isEmpty. Operand 233 states and 264 transitions. [2022-04-08 06:27:11,473 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 110 [2022-04-08 06:27:11,473 INFO L491 BasicCegarLoop]: Found error trace [2022-04-08 06:27:11,473 INFO L499 BasicCegarLoop]: trace histogram [16, 15, 15, 4, 4, 4, 4, 4, 4, 4, 4, 3, 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-08 06:27:11,489 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-08 06:27:11,674 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-08 06:27:11,674 INFO L403 AbstractCegarLoop]: === Iteration 23 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-08 06:27:11,674 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-08 06:27:11,674 INFO L85 PathProgramCache]: Analyzing trace with hash 979077220, now seen corresponding path program 11 times [2022-04-08 06:27:11,675 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-08 06:27:11,675 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2128636445] [2022-04-08 06:27:17,499 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 0 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-08 06:27:17,499 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because UNSUPPORTED_EIGENVALUES [2022-04-08 06:27:17,499 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-08 06:27:17,500 INFO L85 PathProgramCache]: Analyzing trace with hash 979077220, now seen corresponding path program 12 times [2022-04-08 06:27:17,500 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-08 06:27:17,500 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [896014410] [2022-04-08 06:27:17,500 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-08 06:27:17,500 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-08 06:27:17,518 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-08 06:27:17,519 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1904041503] [2022-04-08 06:27:17,519 INFO L93 rtionOrderModulation]: Changing assertion order to MIX_INSIDE_OUTSIDE [2022-04-08 06:27:17,519 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-08 06:27:17,519 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-08 06:27:17,521 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-08 06:27:17,522 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-08 06:27:17,611 INFO L228 tOrderPrioritization]: Assert order MIX_INSIDE_OUTSIDE issued 5 check-sat command(s) [2022-04-08 06:27:17,611 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-08 06:27:17,612 INFO L263 TraceCheckSpWp]: Trace formula consists of 195 conjuncts, 45 conjunts are in the unsatisfiable core [2022-04-08 06:27:17,633 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-08 06:27:17,634 INFO L286 TraceCheckSpWp]: Computing forward predicates...